tnx-shared 5.1.174 → 5.1.178
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/bundles/tnx-shared.umd.js +1639 -160
- package/bundles/tnx-shared.umd.js.map +1 -1
- package/bundles/tnx-shared.umd.min.js +1 -1
- package/bundles/tnx-shared.umd.min.js.map +1 -1
- package/classes/base/tree-list-base.d.ts +125 -0
- package/classes/base/tree-list-base.d.ts.map +1 -0
- package/classes/public-function.d.ts +1 -1
- package/components/check-box-list/check-box-list.component.d.ts.map +1 -1
- package/components/crud/crud-form/crud-form.component.d.ts +4 -3
- package/components/crud/crud-form/crud-form.component.d.ts.map +1 -1
- package/components/crud/tree-table/tree-table.component.d.ts +71 -0
- package/components/crud/tree-table/tree-table.component.d.ts.map +1 -0
- package/components/crud/tree-table/tree-table.component.ngfactory.d.ts.map +1 -0
- package/components/crud/tree-table/tree-table.component.scss.shim.ngstyle.d.ts.map +1 -0
- package/components/tn-app-notification/tn-app-notification.component.d.ts +3 -3
- package/components/tn-app-notification/tn-app-notification.component.d.ts.map +1 -1
- package/configs/component-context.constant.d.ts +5 -0
- package/configs/component-context.constant.d.ts.map +1 -1
- package/directives/primeng/tn-table.directive.d.ts +9 -0
- package/directives/primeng/tn-table.directive.d.ts.map +1 -1
- package/esm2015/classes/base/tree-list-base.js +746 -0
- package/esm2015/components/chat/chat-box/chat-box.component.js +1 -1
- package/esm2015/components/chat/chat-send-message-box/chat-send-message-box.component.js +1 -1
- package/esm2015/components/check-box-list/check-box-list.component.js +60 -19
- package/esm2015/components/crud/crud-form/crud-form.component.js +6 -2
- package/esm2015/components/crud/tree-table/tree-table.component.js +377 -0
- package/esm2015/components/tn-app-notification/tn-app-notification.component.js +32 -22
- package/esm2015/configs/component-context.constant.js +6 -1
- package/esm2015/directives/primeng/tn-table.directive.js +44 -1
- package/esm2015/public-api.js +2 -1
- package/esm2015/services/base.service.js +11 -1
- package/esm2015/services/crud.service.js +1 -1
- package/esm2015/services/notification.service.js +5 -2
- package/esm2015/tnx-shared.js +119 -118
- package/esm2015/tnx-shared.module.js +5 -2
- package/fesm2015/tnx-shared.js +1243 -41
- package/fesm2015/tnx-shared.js.map +1 -1
- package/package.json +2 -2
- package/public-api.d.ts +1 -0
- package/public-api.d.ts.map +1 -1
- package/services/base.service.d.ts +2 -0
- package/services/base.service.d.ts.map +1 -1
- package/services/crud.service.d.ts.map +1 -1
- package/services/notification.service.d.ts +1 -0
- package/services/notification.service.d.ts.map +1 -1
- package/tnx-shared.d.ts +118 -117
- package/tnx-shared.d.ts.map +1 -1
- package/tnx-shared.metadata.json +1 -1
- package/tnx-shared.module.d.ts +3 -2
- package/tnx-shared.module.d.ts.map +1 -1
- package/tnx-shared.module.ngfactory.d.ts.map +1 -1
|
@@ -521,6 +521,11 @@
|
|
|
521
521
|
REFRESH_PERMISSION: 'REFRESH_PERMISSION',
|
|
522
522
|
SELECTED_OBJECT_CHANGED: 'SELECTED_OBJECT_CHANGED',
|
|
523
523
|
REFRESH_USER_PERMISSION: 'REFRESH_USER_PERMISSION',
|
|
524
|
+
};
|
|
525
|
+
ComCtxConstants.NOTIFICATION = {
|
|
526
|
+
NOTIFICATION_RELOAD: 'NOTIFICATION_RELOAD',
|
|
527
|
+
NOTIFICATION_CHANGE: 'NOTIFICATION_CHANGE',
|
|
528
|
+
NOTIFICATION_USER_CHANGE: 'NOTIFICATION_USER_CHANGE'
|
|
524
529
|
};
|
|
525
530
|
|
|
526
531
|
// ctr.prototype[propertyKey] = function (...args) {
|
|
@@ -6636,6 +6641,14 @@
|
|
|
6636
6641
|
this.convertValueFilterToOldBase(gridInfo.filters);
|
|
6637
6642
|
return this.postGridInfo(apiUrl, gridInfo);
|
|
6638
6643
|
};
|
|
6644
|
+
BaseService.prototype.baseGetTreeData = function (gridInfo, plusUrl) {
|
|
6645
|
+
if (plusUrl === void 0) { plusUrl = ''; }
|
|
6646
|
+
var apiUrl = 'GetTreeData';
|
|
6647
|
+
if (plusUrl != null && plusUrl != '') {
|
|
6648
|
+
apiUrl += '/' + plusUrl;
|
|
6649
|
+
}
|
|
6650
|
+
return this.postGridInfo(apiUrl, gridInfo);
|
|
6651
|
+
};
|
|
6639
6652
|
BaseService.prototype.convertValueFilterToOldBase = function (filters) {
|
|
6640
6653
|
var _this = this;
|
|
6641
6654
|
filters.forEach(function (filter) {
|
|
@@ -7244,6 +7257,9 @@
|
|
|
7244
7257
|
BaseService.prototype.updateDaDuyetQuyetDinh = function (id) {
|
|
7245
7258
|
return this.defaultPost(this.serviceUri + "/UpdateDaDuyetQuyetDinh/" + id, {});
|
|
7246
7259
|
};
|
|
7260
|
+
BaseService.prototype.updateMaPhanCapBase = function () {
|
|
7261
|
+
return this.defaultPost(this.serviceUri + "/UpdateMaPhanCapBase", {});
|
|
7262
|
+
};
|
|
7247
7263
|
return BaseService;
|
|
7248
7264
|
}());
|
|
7249
7265
|
|
|
@@ -15504,6 +15520,13 @@
|
|
|
15504
15520
|
});
|
|
15505
15521
|
});
|
|
15506
15522
|
};
|
|
15523
|
+
CrudFormComponent.prototype.handleDataSourceLoadComplete = function (control, parentPath, dataSource) {
|
|
15524
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
15525
|
+
return __generator(this, function (_d) {
|
|
15526
|
+
return [2 /*return*/];
|
|
15527
|
+
});
|
|
15528
|
+
});
|
|
15529
|
+
};
|
|
15507
15530
|
CrudFormComponent.prototype.handleDataSourceLoaded = function (control, parentPath, dataFromDropdown) {
|
|
15508
15531
|
return __awaiter(this, void 0, void 0, function () {
|
|
15509
15532
|
var parentNode, currentNode, eventData, _a_3;
|
|
@@ -26915,7 +26938,7 @@
|
|
|
26915
26938
|
selector: 'chat-box',
|
|
26916
26939
|
template: "<div class=\"dashboard\">\r\n <div class=\"chat\">\r\n <div class=\"group-info\">\r\n <a href=\"javascript:\">C\u00F3 {{peopleAll.length}} ng\u01B0\u1EDDi trong nh\u00F3m n\u00E0y</a>\r\n <div class=\"circleButton\" pTooltip=\"Xem to\u00E0n b\u1ED9 \u0111\u00EDnh k\u00E8m\" tooltipPosition=\"top\">\r\n <a href=\"javascript:\"><i class=\"far fa-images\"></i></a>\r\n </div>\r\n <div (click)=\"addPeople()\" class=\"circleButton\" pTooltip=\"Th\u00EAm m\u1EDBi ng\u01B0\u1EDDi v\u00E0o nh\u00F3m\" tooltipPosition=\"top\"\r\n disabled=\"true\">\r\n <a href=\"javascript:\"><i class=\"fas fa-user-plus\"></i></a>\r\n </div>\r\n </div>\r\n <ul #scrollMe [ngClass]=\"{'hasPin': model.pinnedMessage != null}\">\r\n <li *ngIf=\"model.pinnedMessage\" class=\"clearfix pin\" [ngClass]=\"{'message-from': true}\">\r\n <ng-container\r\n *ngTemplateOutlet=\"messageItem; context: { i : -1, item: model.pinnedMessage, isPinnedMessage: true}\">\r\n </ng-container>\r\n </li>\r\n <li *ngFor=\"let item of model.dataSource; let i = index; trackBy: trackByFunc\" class=\"clearfix\"\r\n [ngClass]=\"{ 'message-own': item.type == 'own'}\">\r\n <ng-container *ngTemplateOutlet=\"messageItem; context: { i : i, item: item}\">\r\n </ng-container>\r\n </li>\r\n </ul>\r\n <!-- <chat-send-message-box *ngIf=\"showSendMessageBox\"></chat-send-message-box>-->\r\n <div [ngClass]=\"{'visible2': model.scrolling, 'hidden2': !model.scrolling}\" class=\"scroll-to-bottom\">\r\n <span *ngIf=\"model.newMessageNotUpdatedCount > 0\" (click)=\"scrollToBottom(350, true, null)\">\r\n {{model.newMessageNotUpdatedCount <= 5 ? model.newMessageNotUpdatedCount : '5+' }} </span>\r\n <span (click)=\"scrollToBottom(350, true, null)\" *ngIf=\"model.newMessageNotUpdatedCount == 0\">\r\n <i class=\"fas fa-chevron-down\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<file-viewer *ngIf=\"fileViewerModel.showEditForm\" [parentContext]=\"context\" [parentModel]=\"model\"\r\n [model]=\"fileViewerModel\">\r\n</file-viewer>\r\n\r\n<ng-template #messageItem let-i=\"i\" let-isPinnedMessage=\"isPinnedMessage\" let-item=\"item\">\r\n <img *ngIf=\"item.isFirstMessageFlow && item.type != 'own' && !isPinnedMessage && item.avatar != null\" alt=\"\"\r\n class=\"chat-avatar\" src=\"{{getCurrentUserAvatar(item.avatar)}}\">\r\n <p *ngIf=\"(item.isFirstMessageFlow && item.type != 'own') && !isPinnedMessage\" class=\"message-created-by\">\r\n {{item.fullName}}\r\n </p>\r\n <span *ngIf=\"!hasAttachment(item)\">\r\n <!-- [class]=\"addClassToMessage(item, isPinnedMessage)\">-->\r\n <p *ngIf=\"!hasAttachment(item)\" class=\"message-content\">\r\n <i (click)=\"pinMessage(item)\" class=\"fas fa-thumbtack\" style=\"right: 0;\"></i>\r\n <i (click)=\"quickNote(item)\" class=\"fas fa-sticky-note\"></i>\r\n {{item.content}}\r\n </p>\r\n <p *ngIf=\"!isPinnedMessage && (item.isLastMessageFlow || !inTheSameTime(i, item, model.dataSource))\"\r\n class=\"message-created\" pTooltip=\"{{item.created | date:'dd/MM/yyyy HH:mm'}}\"\r\n tooltipPosition=\"{{item.type != 'own'?'right':'left'}}\">\r\n {{_crudService.renderDateTime(item.created)}}\r\n </p>\r\n <p *ngIf=\"isPinnedMessage\" class=\"message-created\">\r\n {{item.createdBy}} \u0111\u00E3 g\u1EEDi l\u00FAc {{item.created | date:'dd/MM/yyyy HH:mm'}}\r\n </p>\r\n </span>\r\n <ng-container *ngIf=\"hasAttachment(item)\">\r\n <ng-container *ngFor=\"let attachmentItem of item.attachments;let index=index\">\r\n <div class=\"file\"\r\n [ngClass]=\"{'first':item.isFirstMessageFlow && index == 0, 'middle':index > 0 || !item.isFirstMessageFlow, 'image' : attachmentItem.type == 'image'}\"\r\n [ngStyle]=\"{'width': model.img[i + 'width' + index]}\">\r\n <p class=\"attachment\">\r\n <span (mouseup)=\"onMouseUp($event)\" class=\"attachment-item\">\r\n <a *ngIf=\"attachmentItem.type != 'image'\" (click)=\"viewOrDownloadFile($event, attachmentItem)\">\r\n <i class=\"fas fa-paperclip\"></i>{{attachmentItem.fileName}}\r\n </a>\r\n <a *ngIf=\"attachmentItem.type == 'image'\" #aElement\r\n [ngClass]=\"{'hidden': !model.img[i + '' + index], 'visible':model.img[i + '' + index]}\"\r\n (click)=\"viewOrDownloadFile($event, attachmentItem)\">\r\n <img class=\"message-img\" (load)=\"loadImg($event, i, index)\"\r\n [src]=\"attachmentItem.url | secure | async\" />\r\n </a>\r\n </span>\r\n </p>\r\n <div style=\"clear: both\"></div>\r\n <p class=\"message-created\" pTooltip=\"{{item.created | date:'dd/MM/yyyy HH:mm'}}\"\r\n tooltipPosition=\"{{item.type != 'own'?'right':'left'}}\">\r\n {{_crudService.renderDateTime(item.created)}}\r\n </p>\r\n </div>\r\n <div style=\"clear: both\"></div>\r\n </ng-container>\r\n </ng-container>\r\n <after-view-checked *ngIf=\"model.dataSource.length == i + 1\" (loading)=\"scrollToBottom(0, false, item.sent)\">\r\n </after-view-checked>\r\n</ng-template>\r\n\r\n<!--<tn-dialog *ngIf=\"userPickerForm.show\" #dialog [styleClass]=\"'tn-form-dialog'\"-->\r\n<!-- [header]=\"'Th\u00EAm m\u1EDBi ng\u01B0\u1EDDi d\u00F9ng' | translate\" [popupSize]=\"userPickerForm.popupSize\"-->\r\n<!-- (onCancel)=\"userPickerForm.show = false\"-->\r\n<!-- (onHide)=\"userPickerForm.show = false\">-->\r\n<!-- <!– <congviec-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"formModel\"–>-->\r\n<!-- <!– (onSaved)=\"showDetailForm = false;crudList.reload()\" (onCancel)=\"_handleCancel($event)\"–>-->\r\n<!-- <!– (onAfterSaved)=\"onAfterSaved($event)\"></congviec-form>–>-->\r\n<!-- <user-picker-box #formBase [control]=\"userPickerControl\"-->\r\n<!-- [(ngModel)]=\"this.peopleAll\" [multiple]=\"userPickerControl.multiple\">-->\r\n<!-- </user-picker-box>-->\r\n<!--</tn-dialog>-->\r\n\r\n\r\n<!--<tn-dialog *ngIf=\"userPickerForm.show\" #dialog [styleClass]=\"'tn-form-dialog'\"-->\r\n<!-- [header]=\"'Th\u00EAm m\u1EDBi ng\u01B0\u1EDDi d\u00F9ng' | translate\" [popupSize]=\"userPickerForm.popupSize\" (onHide)=\"userPickerForm.show == false\">-->\r\n<!-- <!– <congviec-form #formBase [parentModel]=\"model\" [parentContext]=\"context\" [model]=\"formModel\"–>-->\r\n<!-- <!– (onSaved)=\"showDetailForm = false;crudList.reload()\" (onCancel)=\"_handleCancel($event)\"–>-->\r\n<!-- <!– (onAfterSaved)=\"onAfterSaved($event)\"></congviec-form>–>-->\r\n\r\n<!-- <!–<quick-add-form *ngIf=\"model.editFormModel.showQuickNoteForm\" [parentContext]=\"context\"–>-->\r\n<!-- <!– [parentModel]=\"context.data.noteDataModel\"></quick-add-form>–>-->\r\n<!--</tn-dialog>-->",
|
|
26917
26940
|
providers: [ComponentContextService, CheckControlVisibleService],
|
|
26918
|
-
styles: [".paging-advance{list-style:none;margin:3px 0;padding-left:0}.paging-advance li{line-height:30;padding-left:15px;width:150px}.paging-advance li.disabled{color:#bdbdbd;outline:none}.paging-advance li.disabled:hover{background:none;cursor:default}.paging-advance li:hover{background:red;cursor:pointer}.paging-advance-overlay .ui-overlaypanel-content{padding:0}.paging-advance-overlay.ui-overlaypanel-shifted:before{left:1.25em;margin-left:-10;right:auto}.paging-advance-overlay.ui-overlaypanel-shifted:after{left:1.25em;margin-left:-8px;right:auto}.chat-avatar{border:2px solid #eee;height:36px}", "@charset \"UTF-8\";@import url(D:\\Code\\git.dttt.vn\\5.1\\shared\\AppSharedV5\\node_modules\\@angular\\material\\prebuilt-themes\\indigo-pink.css);@import url(D:\\Code\\git.dttt.vn\\5.1\\shared\\AppSharedV5\\node_modules\\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-all,.flex.center-h{justify-content:center}.flex.center-all{align-items:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap}.tn-scroll-bar.bgWhite>div,.validate-item{background-color:#fff}.label-primary{background-color:#1ab394;padding:2px}.label-danger,.label-primary{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px}.label-danger{background-color:#ed5565;padding:2px 5px}.label-warning{background-color:#b8860b}.label-secondary,.label-warning{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.label-secondary{background-color:#a9a9a9}.label-done{background-color:#3b1ef7;border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{border:1px solid #eee;border-radius:5px;min-height:80px;overflow-x:hidden;overflow-y:hidden}.flexcolumn,.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{overflow:hidden;padding:60px 0 0}div.circleButton{border-radius:50%;display:inline-block;height:32px;line-height:32px;margin-bottom:4px;margin-top:4px;overflow:hidden;position:relative;text-align:center;transform:perspective(1px);width:32px}div.circleButton>a{line-height:32px;padding:0!important}div.circleButton>a>i{width:24px!important}div.circleButton:before{background:#e6e6e6;border-radius:50%;bottom:0;content:\"\";left:0;position:absolute;right:0;top:0;transform:scale(0);transition:all .3s cubic-bezier(.4,.34,.01,.97);z-index:-1}div.circleButton:hover:before{transform:scale(1)}.message-notice{background:#e0e0e0;text-align:center}.message-created-by{color:#888;font-size:.82em;font-weight:400;margin-bottom:3px;margin-left:45px;margin-top:5px}.message-created{color:#495057;display:inline-block;font-size:.82em;margin-bottom:0;margin-top:0}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-left:6px;padding-right:10px}.message-content{color:#000;line-height:20px;margin-bottom:6px;margin-top:3px;position:relative}.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{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background:#f1f1f1;border:1px solid #ccc;border-radius:8px;box-shadow:1px 2px 3px rgba(0,0,0,.06);float:left;height:84px;margin:8px;overflow:hidden;position:relative;text-align:center;user-select:none;width:84px}.attachment-list .attachment-item img{height:100%;width:100%}.attachment-list .attachment-item span{left:0;padding:5px;position:absolute;top:25px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{float:none;height:120px;margin-left:0;width:auto}.message-attachment{cursor:pointer;font-size:1.5em;margin:0 5px 0 0;position:relative}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{background:#495057;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;position:absolute;right:5px;top:5px}.attachment-list{background:#fff;bottom:51px;box-shadow:0 -2px 3px -3px rgba(0,0,0,.21176470588235294);display:none;height:100px;left:-15px;position:absolute;width:calc(100% + 30px)}.attachment-list.attached-file{display:block}.dashboard{margin-bottom:-15px;margin-top:-5px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{color:#555;white-space:nowrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{line-height:18px;padding-left:30px;text-align:justify;white-space:pre-wrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{left:20px;margin-top:3px;position:absolute}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{border:0;display:flex;margin:0;padding:0;text-align:left}.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{display:inline-block;height:100%;line-height:40px;text-align:center;width:40px}.dashboard .chat .new-message .message-emotion i{font-size:24px;line-height:inherit}.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{background-color:#f0e3fd;border:0;border-radius:2px 20px 20px 2px}.dashboard .chat ul li.message-from>.first,.dashboard .chat ul li.message-from>.middle{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{border-radius:2px 20px 20px 20px;margin-left:45px!important}.dashboard .chat ul li.message-from>img{border-radius:50%;margin-top:5px;position:absolute;width:36px}.dashboard .chat ul li.message-own>span{background-color:#def6f8;border:0;border-radius:20px 2px 2px 20px;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-left:0;padding-right:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-own>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:right}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-left:0;padding-right:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:left}.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;max-width:100%;padding:15px;transition:width .15s linear;width:220px}.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;margin:0;padding:0}.visible{opacity:1;transition:opacity .15s linear;visibility:visible}.hidden{opacity:0;transition:visibility 0s .1s,opacity .1s linear;visibility:hidden}.visible2{opacity:1;transition:opacity .35s linear;visibility:visible}.hidden2{opacity:0;transition:visibility 0s .3s,opacity .3s linear;visibility:hidden}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{bottom:6px;min-height:40px;padding-right:12px;position:-webkit-sticky;position:sticky;text-align:right}.dashboard .chat .scroll-to-bottom span{background:#495057;border:2px solid #fff;border-radius:50%;box-shadow:0 0 10px rgba(0,0,0,.34901960784313724);color:#fff;cursor:pointer;display:inline-block;font-size:20px;height:35px;line-height:35px;overflow:hidden;text-align:center;width:35px}.dashboard .chat .group-info{line-height:30px;margin:-10px;padding:5px 10px;top:0;z-index:99}.dashboard .chat .group-info,.dashboard .chat .pin{background:#fff;box-shadow:0 0 3px -1px rgba(0,0,0,.21176470588235294);position:-webkit-sticky;position:sticky}.dashboard .chat .pin{margin-bottom:10px;margin-left:-10px;top:40px;width:calc(100% + 20px);z-index:98}.dashboard .chat ul li.message-from.pin>span,.dashboard .chat ul li.message-own.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;cursor:pointer;font-size:11px}.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{padding:5px;position:absolute;right:-15px}.dashboard .chat .group-info .circleButton{float:right;margin-bottom:0;margin-top:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{box-shadow:none;outline:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml b,.normalHtml strong{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{border:1px solid #fff;border-radius:50%;height:40px;margin-top:-6px;width:40px}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;left:0!important;max-height:100%;min-height:unset!important;min-width:100%!important;top:0!important;width:100%!important}#image-view-list.image-gallery-2{background-color:rgba(0,0,0,.4);height:calc(100vh - 41px);margin:-14px auto 0;touch-action:none;width:100%}#image-view-list.image-gallery-2 .image-container{background-color:transparent;border:0;bottom:0;height:85%;margin:auto}#image-view-list.image-gallery-2 .image-container .iv-snap-view{bottom:20px;left:calc(50% - 75px);top:auto}#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.next,#image-view-list .material-icons.prev{display:none}#image-view-list .options-image-viewer{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;margin-right:37px;user-select:none}.mobile-image-viewer-close{color:#fff;cursor:pointer;font-size:x-large;height:42px;line-height:42px;padding-right:7px;padding-top:2px;position:absolute;right:0;text-align:center;top:0;vertical-align:middle;width:37px}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{background:#fff;border-radius:0 0 5px 5px;border-top:1px solid #e8e8e8;bottom:0;left:0;padding:8px 30px;position:absolute;text-align:right;width:100%}.box-function button{margin-left:5px}.quick-note-button-holder{bottom:40px;display:none;height:50px;position:absolute;right:50px;width:50px;z-index:99}.quick-note-button{background:#ffc107;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:2em;height:50px;line-height:50px;outline:none;text-align:center;width:50px}.quick-note-button:hover{color:#fff}.all-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{bottom:20px;display:none;left:20px;position:absolute;width:250px;z-index:98}.pinned-notes{background:transparent;display:block;outline:none;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{background-color:#fff1ac;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);font-size:.8rem;margin-bottom:10px;padding:0;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{background:#ffc003;border:1px solid #fff;border-radius:50%;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);color:#fff;cursor:pointer;height:25px;padding-top:5px;position:absolute;right:-15px;text-align:center;top:-15px;width:25px;z-index:1}.pinned-note-header-line{border:1px solid #fff;box-shadow:1px 1px 2px rgba(0,0,0,.4);height:calc(100% - 1rem);left:3px;margin-bottom:.5rem;margin-top:.5rem;max-height:20px;position:absolute;width:13px}.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{display:none;float:left;height:14px;margin-right:2px;opacity:.8;width:14px}.pinned-note-header-button-complete{display:none;padding-top:2px}.pinned-note-body{float:right;padding:.5rem .5rem .5rem 25px;width:100%}.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-complete,.pinned-note-body:hover .pinned-note-header-button-unpin{display:block}.pinned-note-line-title{color:#333;display:block;font-weight:700;padding-bottom:6px}.pinned-note-line{display:block}.view-port{border-radius:5px;box-shadow:0 0 0 9999px rgba(0,0,0,.5882352941176471);display:none;height:0;width:0;z-index:999}.view-port,.view-port-mask{background:transparent;position:absolute}.view-port-mask{display:block;height:100%;left:0;top:0;width:100%;z-index:9998}.tinymce-control{border:1px solid #ccc;display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;width:100%}.input-tab-trap{filter:alpha(opacity=0)!important;opacity:0!important;overflow:hidden!important;width:0!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}audio,audio:focus,video,video:focus{outline:none}.iv-image-view img.iv-image{-webkit-animation:fadein .5s;animation:fadein .5s;visibility:hidden!important}@-webkit-keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-bottom:0;padding-top: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{background-color:#007ad9;border:1px solid #007ad9;border-radius:3px;color:#fff;font-size:14px;transition:background-color .2s,box-shadow .2s}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;border-color:#116fbf;color:#fff}body .fc .fc-toolbar .fc-button:focus{box-shadow:0 0 0 .2em #8dcdff;outline:0 none;outline-offset:0}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-bottom-right-radius:3px;border-top-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-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-bottom-right-radius:3px;border-top-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.fc-axis,.fc-dayGridMonth-button,.fc-timeGridDay-button,.fc-timeGridWeek-button,.old-content{line-height:0;text-indent:-9999px}.fc-axis:after,.fc-dayGridMonth-button:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.new-content{display:block;line-height:normal;text-indent:0}.fc-dayGridMonth-button:after{content:\"Th\u00E1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\u1EA7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\u00E0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group button,.ui-fluid .button-group p-button{margin-right:.5em!important;text-align:left;width:auto}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-aborted,.base-status-approved,.base-status-completed,.base-status-create-new,.base-status-ended,.base-status-high,.base-status-immediately,.base-status-low,.base-status-medium,.base-status-on-conducting,.base-status-on-going,.base-status-pending,.base-status-rejected,.base-status-returned,.base-status-urgent{border-radius:.25em;color:#fff;font-size:.8em;padding:3px;text-align:center}.base-status-create-new{background-color:#f2f2f2;color:#666}.base-status-on-conducting,.base-status-on-going{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{background-color:#f2f2f2;color:#666}.base-status-high{background-color:#ffba01}.base-status-immediately,.base-status-urgent{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 dropdown,.crud-form tn-mask{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{display:block;margin-bottom:5px;padding-left:20px;position:relative}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";left:0;position:absolute;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 td,.table-sticky tr th{border:1px solid #eee!important;border-left:none!important;border-top:none!important}.table-sticky tr td:first-child,.table-sticky tr th:first-child{border-left:1px solid #eee!important}.table-sticky tr td:last-child,.table-sticky tr th: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 #fff!important}.table-sticky.fix-height tr:first-child th{position:-webkit-sticky;position:sticky;top:0;z-index:2}.container-flex{align-items:center;display:flex}.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-right:.5em;padding-top:.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{left:0;position:absolute;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{align-items:center;display:flex;justify-content: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:normal;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-family:cursive;font-weight:700}.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;display:flex;flex:1 1;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{height:100%;left:0;overflow:hidden;padding-top:.5em;position:absolute;top:0;width: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{height:26px;margin-left:0;max-width:200px;width:100%}.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{height:100%;overflow:auto;position:absolute;width:100%}.waiting-box{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.waiting-box .overlay{background-color:red;background-color:hsla(0,0%,42.7%,.5019607843137255);height:100%;width:100%}.waiting-box .content-loading{left:50%;position:absolute;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:normal}.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.ui-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.ui-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-left-arrow-icon,.tn-animated-right-arrow-icon{height:32px;position:relative;width:14px;z-index:10}.tn-animated-right-arrow-icon{-webkit-animation:arrowBounceToRight .8s ease-in-out infinite alternate;animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{-webkit-animation:arrowBounceToLeft .8s ease-in-out infinite alternate;animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon:after,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-right-arrow-icon:before{background-color:#88b0dd;content:\"\";display:block;height:20px;position:absolute;width:5px}.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)}@-webkit-keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@-webkit-keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}@keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}.pass{color:#49c949}.not-pass,.pass{margin:5px;text-align:center}.not-pass{color:red}"]
|
|
26941
|
+
styles: [".paging-advance{list-style:none;margin:3px 0;padding-left:0}.paging-advance li{line-height:30;padding-left:15px;width:150px}.paging-advance li.disabled{color:#bdbdbd;outline:none}.paging-advance li.disabled:hover{background:none;cursor:default}.paging-advance li:hover{background:red;cursor:pointer}.paging-advance-overlay .ui-overlaypanel-content{padding:0}.paging-advance-overlay.ui-overlaypanel-shifted:before{left:1.25em;margin-left:-10;right:auto}.paging-advance-overlay.ui-overlaypanel-shifted:after{left:1.25em;margin-left:-8px;right:auto}.chat-avatar{border:2px solid #eee;height:36px}", "@charset \"UTF-8\";@import url(D:\\Projects\\shared\\AppSharedV5\\node_modules\\@angular\\material\\prebuilt-themes\\indigo-pink.css);@import url(D:\\Projects\\shared\\AppSharedV5\\node_modules\\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-all,.flex.center-h{justify-content:center}.flex.center-all{align-items:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap}.tn-scroll-bar.bgWhite>div,.validate-item{background-color:#fff}.label-primary{background-color:#1ab394;padding:2px}.label-danger,.label-primary{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px}.label-danger{background-color:#ed5565;padding:2px 5px}.label-warning{background-color:#b8860b}.label-secondary,.label-warning{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.label-secondary{background-color:#a9a9a9}.label-done{background-color:#3b1ef7;border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{border:1px solid #eee;border-radius:5px;min-height:80px;overflow-x:hidden;overflow-y:hidden}.flexcolumn,.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{overflow:hidden;padding:60px 0 0}div.circleButton{border-radius:50%;display:inline-block;height:32px;line-height:32px;margin-bottom:4px;margin-top:4px;overflow:hidden;position:relative;text-align:center;transform:perspective(1px);width:32px}div.circleButton>a{line-height:32px;padding:0!important}div.circleButton>a>i{width:24px!important}div.circleButton:before{background:#e6e6e6;border-radius:50%;bottom:0;content:\"\";left:0;position:absolute;right:0;top:0;transform:scale(0);transition:all .3s cubic-bezier(.4,.34,.01,.97);z-index:-1}div.circleButton:hover:before{transform:scale(1)}.message-notice{background:#e0e0e0;text-align:center}.message-created-by{color:#888;font-size:.82em;font-weight:400;margin-bottom:3px;margin-left:45px;margin-top:5px}.message-created{color:#495057;display:inline-block;font-size:.82em;margin-bottom:0;margin-top:0}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-left:6px;padding-right:10px}.message-content{color:#000;line-height:20px;margin-bottom:6px;margin-top:3px;position:relative}.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{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background:#f1f1f1;border:1px solid #ccc;border-radius:8px;box-shadow:1px 2px 3px rgba(0,0,0,.06);float:left;height:84px;margin:8px;overflow:hidden;position:relative;text-align:center;user-select:none;width:84px}.attachment-list .attachment-item img{height:100%;width:100%}.attachment-list .attachment-item span{left:0;padding:5px;position:absolute;top:25px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{float:none;height:120px;margin-left:0;width:auto}.message-attachment{cursor:pointer;font-size:1.5em;margin:0 5px 0 0;position:relative}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{background:#495057;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;position:absolute;right:5px;top:5px}.attachment-list{background:#fff;bottom:51px;box-shadow:0 -2px 3px -3px rgba(0,0,0,.21176470588235294);display:none;height:100px;left:-15px;position:absolute;width:calc(100% + 30px)}.attachment-list.attached-file{display:block}.dashboard{margin-bottom:-15px;margin-top:-5px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{color:#555;white-space:nowrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{line-height:18px;padding-left:30px;text-align:justify;white-space:pre-wrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{left:20px;margin-top:3px;position:absolute}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{border:0;display:flex;margin:0;padding:0;text-align:left}.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{display:inline-block;height:100%;line-height:40px;text-align:center;width:40px}.dashboard .chat .new-message .message-emotion i{font-size:24px;line-height:inherit}.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{background-color:#f0e3fd;border:0;border-radius:2px 20px 20px 2px}.dashboard .chat ul li.message-from>.first,.dashboard .chat ul li.message-from>.middle{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{border-radius:2px 20px 20px 20px;margin-left:45px!important}.dashboard .chat ul li.message-from>img{border-radius:50%;margin-top:5px;position:absolute;width:36px}.dashboard .chat ul li.message-own>span{background-color:#def6f8;border:0;border-radius:20px 2px 2px 20px;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-left:0;padding-right:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-own>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:right}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-left:0;padding-right:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:left}.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;max-width:100%;padding:15px;transition:width .15s linear;width:220px}.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;margin:0;padding:0}.visible{opacity:1;transition:opacity .15s linear;visibility:visible}.hidden{opacity:0;transition:visibility 0s .1s,opacity .1s linear;visibility:hidden}.visible2{opacity:1;transition:opacity .35s linear;visibility:visible}.hidden2{opacity:0;transition:visibility 0s .3s,opacity .3s linear;visibility:hidden}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{bottom:6px;min-height:40px;padding-right:12px;position:-webkit-sticky;position:sticky;text-align:right}.dashboard .chat .scroll-to-bottom span{background:#495057;border:2px solid #fff;border-radius:50%;box-shadow:0 0 10px rgba(0,0,0,.34901960784313724);color:#fff;cursor:pointer;display:inline-block;font-size:20px;height:35px;line-height:35px;overflow:hidden;text-align:center;width:35px}.dashboard .chat .group-info{line-height:30px;margin:-10px;padding:5px 10px;top:0;z-index:99}.dashboard .chat .group-info,.dashboard .chat .pin{background:#fff;box-shadow:0 0 3px -1px rgba(0,0,0,.21176470588235294);position:-webkit-sticky;position:sticky}.dashboard .chat .pin{margin-bottom:10px;margin-left:-10px;top:40px;width:calc(100% + 20px);z-index:98}.dashboard .chat ul li.message-from.pin>span,.dashboard .chat ul li.message-own.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;cursor:pointer;font-size:11px}.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{padding:5px;position:absolute;right:-15px}.dashboard .chat .group-info .circleButton{float:right;margin-bottom:0;margin-top:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{box-shadow:none;outline:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml b,.normalHtml strong{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{border:1px solid #fff;border-radius:50%;height:40px;margin-top:-6px;width:40px}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;left:0!important;max-height:100%;min-height:unset!important;min-width:100%!important;top:0!important;width:100%!important}#image-view-list.image-gallery-2{background-color:rgba(0,0,0,.4);height:calc(100vh - 41px);margin:-14px auto 0;touch-action:none;width:100%}#image-view-list.image-gallery-2 .image-container{background-color:transparent;border:0;bottom:0;height:85%;margin:auto}#image-view-list.image-gallery-2 .image-container .iv-snap-view{bottom:20px;left:calc(50% - 75px);top:auto}#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.next,#image-view-list .material-icons.prev{display:none}#image-view-list .options-image-viewer{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;margin-right:37px;user-select:none}.mobile-image-viewer-close{color:#fff;cursor:pointer;font-size:x-large;height:42px;line-height:42px;padding-right:7px;padding-top:2px;position:absolute;right:0;text-align:center;top:0;vertical-align:middle;width:37px}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{background:#fff;border-radius:0 0 5px 5px;border-top:1px solid #e8e8e8;bottom:0;left:0;padding:8px 30px;position:absolute;text-align:right;width:100%}.box-function button{margin-left:5px}.quick-note-button-holder{bottom:40px;display:none;height:50px;position:absolute;right:50px;width:50px;z-index:99}.quick-note-button{background:#ffc107;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:2em;height:50px;line-height:50px;outline:none;text-align:center;width:50px}.quick-note-button:hover{color:#fff}.all-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{bottom:20px;display:none;left:20px;position:absolute;width:250px;z-index:98}.pinned-notes{background:transparent;display:block;outline:none;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{background-color:#fff1ac;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);font-size:.8rem;margin-bottom:10px;padding:0;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{background:#ffc003;border:1px solid #fff;border-radius:50%;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);color:#fff;cursor:pointer;height:25px;padding-top:5px;position:absolute;right:-15px;text-align:center;top:-15px;width:25px;z-index:1}.pinned-note-header-line{border:1px solid #fff;box-shadow:1px 1px 2px rgba(0,0,0,.4);height:calc(100% - 1rem);left:3px;margin-bottom:.5rem;margin-top:.5rem;max-height:20px;position:absolute;width:13px}.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{display:none;float:left;height:14px;margin-right:2px;opacity:.8;width:14px}.pinned-note-header-button-complete{display:none;padding-top:2px}.pinned-note-body{float:right;padding:.5rem .5rem .5rem 25px;width:100%}.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-complete,.pinned-note-body:hover .pinned-note-header-button-unpin{display:block}.pinned-note-line-title{color:#333;display:block;font-weight:700;padding-bottom:6px}.pinned-note-line{display:block}.view-port{border-radius:5px;box-shadow:0 0 0 9999px rgba(0,0,0,.5882352941176471);display:none;height:0;width:0;z-index:999}.view-port,.view-port-mask{background:transparent;position:absolute}.view-port-mask{display:block;height:100%;left:0;top:0;width:100%;z-index:9998}.tinymce-control{border:1px solid #ccc;display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;width:100%}.input-tab-trap{filter:alpha(opacity=0)!important;opacity:0!important;overflow:hidden!important;width:0!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}audio,audio:focus,video,video:focus{outline:none}.iv-image-view img.iv-image{-webkit-animation:fadein .5s;animation:fadein .5s;visibility:hidden!important}@-webkit-keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-bottom:0;padding-top: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{background-color:#007ad9;border:1px solid #007ad9;border-radius:3px;color:#fff;font-size:14px;transition:background-color .2s,box-shadow .2s}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;border-color:#116fbf;color:#fff}body .fc .fc-toolbar .fc-button:focus{box-shadow:0 0 0 .2em #8dcdff;outline:0 none;outline-offset:0}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-bottom-right-radius:3px;border-top-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-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-bottom-right-radius:3px;border-top-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.fc-axis,.fc-dayGridMonth-button,.fc-timeGridDay-button,.fc-timeGridWeek-button,.old-content{line-height:0;text-indent:-9999px}.fc-axis:after,.fc-dayGridMonth-button:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.new-content{display:block;line-height:normal;text-indent:0}.fc-dayGridMonth-button:after{content:\"Th\u00E1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\u1EA7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\u00E0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group button,.ui-fluid .button-group p-button{margin-right:.5em!important;text-align:left;width:auto}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-aborted,.base-status-approved,.base-status-completed,.base-status-create-new,.base-status-ended,.base-status-high,.base-status-immediately,.base-status-low,.base-status-medium,.base-status-on-conducting,.base-status-on-going,.base-status-pending,.base-status-rejected,.base-status-returned,.base-status-urgent{border-radius:.25em;color:#fff;font-size:.8em;padding:3px;text-align:center}.base-status-create-new{background-color:#f2f2f2;color:#666}.base-status-on-conducting,.base-status-on-going{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{background-color:#f2f2f2;color:#666}.base-status-high{background-color:#ffba01}.base-status-immediately,.base-status-urgent{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 dropdown,.crud-form tn-mask{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{display:block;margin-bottom:5px;padding-left:20px;position:relative}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";left:0;position:absolute;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 td,.table-sticky tr th{border:1px solid #eee!important;border-left:none!important;border-top:none!important}.table-sticky tr td:first-child,.table-sticky tr th:first-child{border-left:1px solid #eee!important}.table-sticky tr td:last-child,.table-sticky tr th: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 #fff!important}.table-sticky.fix-height tr:first-child th{position:-webkit-sticky;position:sticky;top:0;z-index:2}.container-flex{align-items:center;display:flex}.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-right:.5em;padding-top:.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{left:0;position:absolute;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{align-items:center;display:flex;justify-content: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:normal;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-family:cursive;font-weight:700}.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;display:flex;flex:1 1;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{height:100%;left:0;overflow:hidden;padding-top:.5em;position:absolute;top:0;width: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{height:26px;margin-left:0;max-width:200px;width:100%}.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{height:100%;overflow:auto;position:absolute;width:100%}.waiting-box{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.waiting-box .overlay{background-color:red;background-color:hsla(0,0%,42.7%,.5019607843137255);height:100%;width:100%}.waiting-box .content-loading{left:50%;position:absolute;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:normal}.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.ui-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.ui-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-left-arrow-icon,.tn-animated-right-arrow-icon{height:32px;position:relative;width:14px;z-index:10}.tn-animated-right-arrow-icon{-webkit-animation:arrowBounceToRight .8s ease-in-out infinite alternate;animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{-webkit-animation:arrowBounceToLeft .8s ease-in-out infinite alternate;animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon:after,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-right-arrow-icon:before{background-color:#88b0dd;content:\"\";display:block;height:20px;position:absolute;width:5px}.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)}@-webkit-keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@-webkit-keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}@keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}.pass{color:#49c949}.not-pass,.pass{margin:5px;text-align:center}.not-pass{color:red}"]
|
|
26919
26942
|
},] }
|
|
26920
26943
|
];
|
|
26921
26944
|
ChatBoxComponent.ctorParameters = function () { return [
|
|
@@ -27521,7 +27544,7 @@
|
|
|
27521
27544
|
selector: 'chat-send-message-box',
|
|
27522
27545
|
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",
|
|
27523
27546
|
providers: [ComponentContextService],
|
|
27524
|
-
styles: ["", "@charset \"UTF-8\";@import url(D:\\Code\\git.dttt.vn\\5.1\\shared\\AppSharedV5\\node_modules\\@angular\\material\\prebuilt-themes\\indigo-pink.css);@import url(D:\\Code\\git.dttt.vn\\5.1\\shared\\AppSharedV5\\node_modules\\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-all,.flex.center-h{justify-content:center}.flex.center-all{align-items:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap}.tn-scroll-bar.bgWhite>div,.validate-item{background-color:#fff}.label-primary{background-color:#1ab394;padding:2px}.label-danger,.label-primary{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px}.label-danger{background-color:#ed5565;padding:2px 5px}.label-warning{background-color:#b8860b}.label-secondary,.label-warning{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.label-secondary{background-color:#a9a9a9}.label-done{background-color:#3b1ef7;border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{border:1px solid #eee;border-radius:5px;min-height:80px;overflow-x:hidden;overflow-y:hidden}.flexcolumn,.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{overflow:hidden;padding:60px 0 0}div.circleButton{border-radius:50%;display:inline-block;height:32px;line-height:32px;margin-bottom:4px;margin-top:4px;overflow:hidden;position:relative;text-align:center;transform:perspective(1px);width:32px}div.circleButton>a{line-height:32px;padding:0!important}div.circleButton>a>i{width:24px!important}div.circleButton:before{background:#e6e6e6;border-radius:50%;bottom:0;content:\"\";left:0;position:absolute;right:0;top:0;transform:scale(0);transition:all .3s cubic-bezier(.4,.34,.01,.97);z-index:-1}div.circleButton:hover:before{transform:scale(1)}.message-notice{background:#e0e0e0;text-align:center}.message-created-by{color:#888;font-size:.82em;font-weight:400;margin-bottom:3px;margin-left:45px;margin-top:5px}.message-created{color:#495057;display:inline-block;font-size:.82em;margin-bottom:0;margin-top:0}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-left:6px;padding-right:10px}.message-content{color:#000;line-height:20px;margin-bottom:6px;margin-top:3px;position:relative}.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{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background:#f1f1f1;border:1px solid #ccc;border-radius:8px;box-shadow:1px 2px 3px rgba(0,0,0,.06);float:left;height:84px;margin:8px;overflow:hidden;position:relative;text-align:center;user-select:none;width:84px}.attachment-list .attachment-item img{height:100%;width:100%}.attachment-list .attachment-item span{left:0;padding:5px;position:absolute;top:25px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{float:none;height:120px;margin-left:0;width:auto}.message-attachment{cursor:pointer;font-size:1.5em;margin:0 5px 0 0;position:relative}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{background:#495057;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;position:absolute;right:5px;top:5px}.attachment-list{background:#fff;bottom:51px;box-shadow:0 -2px 3px -3px rgba(0,0,0,.21176470588235294);display:none;height:100px;left:-15px;position:absolute;width:calc(100% + 30px)}.attachment-list.attached-file{display:block}.dashboard{margin-bottom:-15px;margin-top:-5px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{color:#555;white-space:nowrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{line-height:18px;padding-left:30px;text-align:justify;white-space:pre-wrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{left:20px;margin-top:3px;position:absolute}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{border:0;display:flex;margin:0;padding:0;text-align:left}.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{display:inline-block;height:100%;line-height:40px;text-align:center;width:40px}.dashboard .chat .new-message .message-emotion i{font-size:24px;line-height:inherit}.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{background-color:#f0e3fd;border:0;border-radius:2px 20px 20px 2px}.dashboard .chat ul li.message-from>.first,.dashboard .chat ul li.message-from>.middle{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{border-radius:2px 20px 20px 20px;margin-left:45px!important}.dashboard .chat ul li.message-from>img{border-radius:50%;margin-top:5px;position:absolute;width:36px}.dashboard .chat ul li.message-own>span{background-color:#def6f8;border:0;border-radius:20px 2px 2px 20px;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-left:0;padding-right:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-own>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:right}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-left:0;padding-right:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:left}.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;max-width:100%;padding:15px;transition:width .15s linear;width:220px}.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;margin:0;padding:0}.visible{opacity:1;transition:opacity .15s linear;visibility:visible}.hidden{opacity:0;transition:visibility 0s .1s,opacity .1s linear;visibility:hidden}.visible2{opacity:1;transition:opacity .35s linear;visibility:visible}.hidden2{opacity:0;transition:visibility 0s .3s,opacity .3s linear;visibility:hidden}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{bottom:6px;min-height:40px;padding-right:12px;position:-webkit-sticky;position:sticky;text-align:right}.dashboard .chat .scroll-to-bottom span{background:#495057;border:2px solid #fff;border-radius:50%;box-shadow:0 0 10px rgba(0,0,0,.34901960784313724);color:#fff;cursor:pointer;display:inline-block;font-size:20px;height:35px;line-height:35px;overflow:hidden;text-align:center;width:35px}.dashboard .chat .group-info{line-height:30px;margin:-10px;padding:5px 10px;top:0;z-index:99}.dashboard .chat .group-info,.dashboard .chat .pin{background:#fff;box-shadow:0 0 3px -1px rgba(0,0,0,.21176470588235294);position:-webkit-sticky;position:sticky}.dashboard .chat .pin{margin-bottom:10px;margin-left:-10px;top:40px;width:calc(100% + 20px);z-index:98}.dashboard .chat ul li.message-from.pin>span,.dashboard .chat ul li.message-own.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;cursor:pointer;font-size:11px}.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{padding:5px;position:absolute;right:-15px}.dashboard .chat .group-info .circleButton{float:right;margin-bottom:0;margin-top:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{box-shadow:none;outline:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml b,.normalHtml strong{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{border:1px solid #fff;border-radius:50%;height:40px;margin-top:-6px;width:40px}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;left:0!important;max-height:100%;min-height:unset!important;min-width:100%!important;top:0!important;width:100%!important}#image-view-list.image-gallery-2{background-color:rgba(0,0,0,.4);height:calc(100vh - 41px);margin:-14px auto 0;touch-action:none;width:100%}#image-view-list.image-gallery-2 .image-container{background-color:transparent;border:0;bottom:0;height:85%;margin:auto}#image-view-list.image-gallery-2 .image-container .iv-snap-view{bottom:20px;left:calc(50% - 75px);top:auto}#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.next,#image-view-list .material-icons.prev{display:none}#image-view-list .options-image-viewer{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;margin-right:37px;user-select:none}.mobile-image-viewer-close{color:#fff;cursor:pointer;font-size:x-large;height:42px;line-height:42px;padding-right:7px;padding-top:2px;position:absolute;right:0;text-align:center;top:0;vertical-align:middle;width:37px}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{background:#fff;border-radius:0 0 5px 5px;border-top:1px solid #e8e8e8;bottom:0;left:0;padding:8px 30px;position:absolute;text-align:right;width:100%}.box-function button{margin-left:5px}.quick-note-button-holder{bottom:40px;display:none;height:50px;position:absolute;right:50px;width:50px;z-index:99}.quick-note-button{background:#ffc107;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:2em;height:50px;line-height:50px;outline:none;text-align:center;width:50px}.quick-note-button:hover{color:#fff}.all-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{bottom:20px;display:none;left:20px;position:absolute;width:250px;z-index:98}.pinned-notes{background:transparent;display:block;outline:none;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{background-color:#fff1ac;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);font-size:.8rem;margin-bottom:10px;padding:0;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{background:#ffc003;border:1px solid #fff;border-radius:50%;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);color:#fff;cursor:pointer;height:25px;padding-top:5px;position:absolute;right:-15px;text-align:center;top:-15px;width:25px;z-index:1}.pinned-note-header-line{border:1px solid #fff;box-shadow:1px 1px 2px rgba(0,0,0,.4);height:calc(100% - 1rem);left:3px;margin-bottom:.5rem;margin-top:.5rem;max-height:20px;position:absolute;width:13px}.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{display:none;float:left;height:14px;margin-right:2px;opacity:.8;width:14px}.pinned-note-header-button-complete{display:none;padding-top:2px}.pinned-note-body{float:right;padding:.5rem .5rem .5rem 25px;width:100%}.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-complete,.pinned-note-body:hover .pinned-note-header-button-unpin{display:block}.pinned-note-line-title{color:#333;display:block;font-weight:700;padding-bottom:6px}.pinned-note-line{display:block}.view-port{border-radius:5px;box-shadow:0 0 0 9999px rgba(0,0,0,.5882352941176471);display:none;height:0;width:0;z-index:999}.view-port,.view-port-mask{background:transparent;position:absolute}.view-port-mask{display:block;height:100%;left:0;top:0;width:100%;z-index:9998}.tinymce-control{border:1px solid #ccc;display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;width:100%}.input-tab-trap{filter:alpha(opacity=0)!important;opacity:0!important;overflow:hidden!important;width:0!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}audio,audio:focus,video,video:focus{outline:none}.iv-image-view img.iv-image{-webkit-animation:fadein .5s;animation:fadein .5s;visibility:hidden!important}@-webkit-keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-bottom:0;padding-top: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{background-color:#007ad9;border:1px solid #007ad9;border-radius:3px;color:#fff;font-size:14px;transition:background-color .2s,box-shadow .2s}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;border-color:#116fbf;color:#fff}body .fc .fc-toolbar .fc-button:focus{box-shadow:0 0 0 .2em #8dcdff;outline:0 none;outline-offset:0}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-bottom-right-radius:3px;border-top-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-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-bottom-right-radius:3px;border-top-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.fc-axis,.fc-dayGridMonth-button,.fc-timeGridDay-button,.fc-timeGridWeek-button,.old-content{line-height:0;text-indent:-9999px}.fc-axis:after,.fc-dayGridMonth-button:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.new-content{display:block;line-height:normal;text-indent:0}.fc-dayGridMonth-button:after{content:\"Th\u00E1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\u1EA7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\u00E0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group button,.ui-fluid .button-group p-button{margin-right:.5em!important;text-align:left;width:auto}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-aborted,.base-status-approved,.base-status-completed,.base-status-create-new,.base-status-ended,.base-status-high,.base-status-immediately,.base-status-low,.base-status-medium,.base-status-on-conducting,.base-status-on-going,.base-status-pending,.base-status-rejected,.base-status-returned,.base-status-urgent{border-radius:.25em;color:#fff;font-size:.8em;padding:3px;text-align:center}.base-status-create-new{background-color:#f2f2f2;color:#666}.base-status-on-conducting,.base-status-on-going{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{background-color:#f2f2f2;color:#666}.base-status-high{background-color:#ffba01}.base-status-immediately,.base-status-urgent{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 dropdown,.crud-form tn-mask{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{display:block;margin-bottom:5px;padding-left:20px;position:relative}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";left:0;position:absolute;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 td,.table-sticky tr th{border:1px solid #eee!important;border-left:none!important;border-top:none!important}.table-sticky tr td:first-child,.table-sticky tr th:first-child{border-left:1px solid #eee!important}.table-sticky tr td:last-child,.table-sticky tr th: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 #fff!important}.table-sticky.fix-height tr:first-child th{position:-webkit-sticky;position:sticky;top:0;z-index:2}.container-flex{align-items:center;display:flex}.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-right:.5em;padding-top:.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{left:0;position:absolute;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{align-items:center;display:flex;justify-content: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:normal;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-family:cursive;font-weight:700}.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;display:flex;flex:1 1;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{height:100%;left:0;overflow:hidden;padding-top:.5em;position:absolute;top:0;width: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{height:26px;margin-left:0;max-width:200px;width:100%}.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{height:100%;overflow:auto;position:absolute;width:100%}.waiting-box{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.waiting-box .overlay{background-color:red;background-color:hsla(0,0%,42.7%,.5019607843137255);height:100%;width:100%}.waiting-box .content-loading{left:50%;position:absolute;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:normal}.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.ui-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.ui-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-left-arrow-icon,.tn-animated-right-arrow-icon{height:32px;position:relative;width:14px;z-index:10}.tn-animated-right-arrow-icon{-webkit-animation:arrowBounceToRight .8s ease-in-out infinite alternate;animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{-webkit-animation:arrowBounceToLeft .8s ease-in-out infinite alternate;animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon:after,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-right-arrow-icon:before{background-color:#88b0dd;content:\"\";display:block;height:20px;position:absolute;width:5px}.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)}@-webkit-keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@-webkit-keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}@keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}.pass{color:#49c949}.not-pass,.pass{margin:5px;text-align:center}.not-pass{color:red}"]
|
|
27547
|
+
styles: ["", "@charset \"UTF-8\";@import url(D:\\Projects\\shared\\AppSharedV5\\node_modules\\@angular\\material\\prebuilt-themes\\indigo-pink.css);@import url(D:\\Projects\\shared\\AppSharedV5\\node_modules\\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-all,.flex.center-h{justify-content:center}.flex.center-all{align-items:center}.validate-item{color:#e00000;display:inline-block;font-size:.9em;white-space:nowrap}.tn-scroll-bar.bgWhite>div,.validate-item{background-color:#fff}.label-primary{background-color:#1ab394;padding:2px}.label-danger,.label-primary{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px}.label-danger{background-color:#ed5565;padding:2px 5px}.label-warning{background-color:#b8860b}.label-secondary,.label-warning{border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.label-secondary{background-color:#a9a9a9}.label-done{background-color:#3b1ef7;border-radius:.25em;color:#fff;display:inline-block;font-size:12px;margin-left:3px;margin-right:3px;min-width:60px;padding:2px}.text-navy{color:#1ab394!important}.text-danger{color:red!important}.fa-user-edit{font-size:14px}.flexcolumn{border:1px solid #eee;border-radius:5px;min-height:80px;overflow-x:hidden;overflow-y:hidden}.flexcolumn,.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{overflow:hidden;padding:60px 0 0}div.circleButton{border-radius:50%;display:inline-block;height:32px;line-height:32px;margin-bottom:4px;margin-top:4px;overflow:hidden;position:relative;text-align:center;transform:perspective(1px);width:32px}div.circleButton>a{line-height:32px;padding:0!important}div.circleButton>a>i{width:24px!important}div.circleButton:before{background:#e6e6e6;border-radius:50%;bottom:0;content:\"\";left:0;position:absolute;right:0;top:0;transform:scale(0);transition:all .3s cubic-bezier(.4,.34,.01,.97);z-index:-1}div.circleButton:hover:before{transform:scale(1)}.message-notice{background:#e0e0e0;text-align:center}.message-created-by{color:#888;font-size:.82em;font-weight:400;margin-bottom:3px;margin-left:45px;margin-top:5px}.message-created{color:#495057;display:inline-block;font-size:.82em;margin-bottom:0;margin-top:0}.message-own .message-created{padding-left:10px;padding-right:6px}.message-from .message-created{padding-left:6px;padding-right:10px}.message-content{color:#000;line-height:20px;margin-bottom:6px;margin-top:3px;position:relative}.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{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;background:#f1f1f1;border:1px solid #ccc;border-radius:8px;box-shadow:1px 2px 3px rgba(0,0,0,.06);float:left;height:84px;margin:8px;overflow:hidden;position:relative;text-align:center;user-select:none;width:84px}.attachment-list .attachment-item img{height:100%;width:100%}.attachment-list .attachment-item span{left:0;padding:5px;position:absolute;top:25px;width:100%;word-break:break-all}.clearfix{clear:both}.dashboard .chat ul li img.message-img{float:none;height:120px;margin-left:0;width:auto}.message-attachment{cursor:pointer;font-size:1.5em;margin:0 5px 0 0;position:relative}.hidden{display:none}.message-input{width:100%}.message-input label{font-size:1.2rem}.remove-file-attachment{background:#495057;border-radius:50%;color:#fff;cursor:pointer;font-size:20px;position:absolute;right:5px;top:5px}.attachment-list{background:#fff;bottom:51px;box-shadow:0 -2px 3px -3px rgba(0,0,0,.21176470588235294);display:none;height:100px;left:-15px;position:absolute;width:calc(100% + 30px)}.attachment-list.attached-file{display:block}.dashboard{margin-bottom:-15px;margin-top:-5px}.dashboard .timeline>.ui-g .ui-g-9 .event-text{color:#555;white-space:nowrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2{line-height:18px;padding-left:30px;text-align:justify;white-space:pre-wrap}.dashboard .timeline>.ui-g .ui-g-9 .event-text.event-text2 i{left:20px;margin-top:3px;position:absolute}.new-message{align-items:center;justify-content:center}.dashboard .chat .new-message{border:0;display:flex;margin:0;padding:0;text-align:left}.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{display:inline-block;height:100%;line-height:40px;text-align:center;width:40px}.dashboard .chat .new-message .message-emotion i{font-size:24px;line-height:inherit}.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{background-color:#f0e3fd;border:0;border-radius:2px 20px 20px 2px}.dashboard .chat ul li.message-from>.first,.dashboard .chat ul li.message-from>.middle{margin-left:45px!important}.dashboard .chat ul li.message-from>.last{border-radius:2px 20px 20px 20px;margin-left:45px!important}.dashboard .chat ul li.message-from>img{border-radius:50%;margin-top:5px;position:absolute;width:36px}.dashboard .chat ul li.message-own>span{background-color:#def6f8;border:0;border-radius:20px 2px 2px 20px;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-left:0;padding-right:0}.dashboard .chat ul li.message-own .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-own>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:right}.dashboard .chat ul li.message-from .attachment span.attachment-item{background-color:#f1f1f1!important;border:0!important;padding-left:0;padding-right:0}.dashboard .chat ul li.message-from .attachment span.attachment-item a{color:#555;cursor:pointer;display:inline-block;font-weight:700}.dashboard .chat ul li.message-from .attachment span.attachment-item a img{margin-right:0}.dashboard .chat ul li.message-from>div.file{background:#f1f1f1;border:1px solid #e4e4e4;border-radius:6px;display:inline-block;margin:1px;overflow:hidden;text-align:left}.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;max-width:100%;padding:15px;transition:width .15s linear;width:220px}.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;margin:0;padding:0}.visible{opacity:1;transition:opacity .15s linear;visibility:visible}.hidden{opacity:0;transition:visibility 0s .1s,opacity .1s linear;visibility:hidden}.visible2{opacity:1;transition:opacity .35s linear;visibility:visible}.hidden2{opacity:0;transition:visibility 0s .3s,opacity .3s linear;visibility:hidden}.dashboard .chat{position:relative}.dashboard .chat .scroll-to-bottom{bottom:6px;min-height:40px;padding-right:12px;position:-webkit-sticky;position:sticky;text-align:right}.dashboard .chat .scroll-to-bottom span{background:#495057;border:2px solid #fff;border-radius:50%;box-shadow:0 0 10px rgba(0,0,0,.34901960784313724);color:#fff;cursor:pointer;display:inline-block;font-size:20px;height:35px;line-height:35px;overflow:hidden;text-align:center;width:35px}.dashboard .chat .group-info{line-height:30px;margin:-10px;padding:5px 10px;top:0;z-index:99}.dashboard .chat .group-info,.dashboard .chat .pin{background:#fff;box-shadow:0 0 3px -1px rgba(0,0,0,.21176470588235294);position:-webkit-sticky;position:sticky}.dashboard .chat .pin{margin-bottom:10px;margin-left:-10px;top:40px;width:calc(100% + 20px);z-index:98}.dashboard .chat ul li.message-from.pin>span,.dashboard .chat ul li.message-own.pin>span{background-color:transparent}.dashboard .chat ul li.message-from.pin>span{margin-left:0}.dashboard .chat .message-content i{color:#495057;cursor:pointer;font-size:11px}.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{padding:5px;position:absolute;right:-15px}.dashboard .chat .group-info .circleButton{float:right;margin-bottom:0;margin-top:0}.dashboard .chat ul{margin-top:20px;padding:0}.dashboard .chat .new-message .message-input input.ui-inputtext:focus{box-shadow:none;outline:none}.dashboard .chat ul.hasPin{margin-top:10px}.dashboard .chat .group-info a{color:#495057}.normalHtml,.normalHtml b,.normalHtml strong{font-weight:400}.normalHtml{display:inline-block}.avatar-viewer .profile-image{border:1px solid #fff;border-radius:50%;height:40px;margin-top:-6px;width:40px}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;left:0!important;max-height:100%;min-height:unset!important;min-width:100%!important;top:0!important;width:100%!important}#image-view-list.image-gallery-2{background-color:rgba(0,0,0,.4);height:calc(100vh - 41px);margin:-14px auto 0;touch-action:none;width:100%}#image-view-list.image-gallery-2 .image-container{background-color:transparent;border:0;bottom:0;height:85%;margin:auto}#image-view-list.image-gallery-2 .image-container .iv-snap-view{bottom:20px;left:calc(50% - 75px);top:auto}#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.next,#image-view-list .material-icons.prev{display:none}#image-view-list .options-image-viewer{-moz-user-select:none;-ms-user-select:none;-webkit-user-select:none;margin-right:37px;user-select:none}.mobile-image-viewer-close{color:#fff;cursor:pointer;font-size:x-large;height:42px;line-height:42px;padding-right:7px;padding-top:2px;position:absolute;right:0;text-align:center;top:0;vertical-align:middle;width:37px}.mobile-image-viewer-close:hover{color:#feca37!important}.hide-holder{padding:0}.file-ex-name{word-break:break-all}.box-function{background:#fff;border-radius:0 0 5px 5px;border-top:1px solid #e8e8e8;bottom:0;left:0;padding:8px 30px;position:absolute;text-align:right;width:100%}.box-function button{margin-left:5px}.quick-note-button-holder{bottom:40px;display:none;height:50px;position:absolute;right:50px;width:50px;z-index:99}.quick-note-button{background:#ffc107;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:2em;height:50px;line-height:50px;outline:none;text-align:center;width:50px}.quick-note-button:hover{color:#fff}.all-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.all-note-button:hover{color:#fff}.setting-note-button{background:#ffd24b;border:2px solid #fff;border-radius:50%;box-shadow:0 2px 5px 0 #b9b9b9;color:#fff;display:block;font-size:1.5em;height:40px;line-height:40px;outline:none;position:absolute;right:5px;text-align:center;top:5px;transition:right;transition-duration:.16s;transition-timing-function:ease-in;width:40px;z-index:-1}.setting-note-button:hover{color:#fff}.pinned-notes-holder{bottom:20px;display:none;left:20px;position:absolute;width:250px;z-index:98}.pinned-notes{background:transparent;display:block;outline:none;padding:0}.pinned-notes-header{font-size:1rem;font-weight:700}.pinned-notes-setting{position:absolute;right:.5rem}.pinned-note{background-color:#fff1ac;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);font-size:.8rem;margin-bottom:10px;padding:0;position:relative}.pinned-note:last-child{margin-bottom:0}.pinned-notes-minimize-button{background:#ffc003;border:1px solid #fff;border-radius:50%;box-shadow:1px 2px 3px rgba(185,139,6,.6313725490196078);color:#fff;cursor:pointer;height:25px;padding-top:5px;position:absolute;right:-15px;text-align:center;top:-15px;width:25px;z-index:1}.pinned-note-header-line{border:1px solid #fff;box-shadow:1px 1px 2px rgba(0,0,0,.4);height:calc(100% - 1rem);left:3px;margin-bottom:.5rem;margin-top:.5rem;max-height:20px;position:absolute;width:13px}.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{display:none;float:left;height:14px;margin-right:2px;opacity:.8;width:14px}.pinned-note-header-button-complete{display:none;padding-top:2px}.pinned-note-body{float:right;padding:.5rem .5rem .5rem 25px;width:100%}.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-complete,.pinned-note-body:hover .pinned-note-header-button-unpin{display:block}.pinned-note-line-title{color:#333;display:block;font-weight:700;padding-bottom:6px}.pinned-note-line{display:block}.view-port{border-radius:5px;box-shadow:0 0 0 9999px rgba(0,0,0,.5882352941176471);display:none;height:0;width:0;z-index:999}.view-port,.view-port-mask{background:transparent;position:absolute}.view-port-mask{display:block;height:100%;left:0;top:0;width:100%;z-index:9998}.tinymce-control{border:1px solid #ccc;display:none;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;width:100%}.input-tab-trap{filter:alpha(opacity=0)!important;opacity:0!important;overflow:hidden!important;width:0!important}.color-value input{font-size:.8em;line-height:16px}.dialog-material.mobile{width:100%!important}audio,audio:focus,video,video:focus{outline:none}.iv-image-view img.iv-image{-webkit-animation:fadein .5s;animation:fadein .5s;visibility:hidden!important}@-webkit-keyframes fadein{0%{opacity:0}to{opacity:1}}@keyframes fadein{0%{opacity:0}to{opacity:1}}.iv-image-view img.iv-image.show{visibility:visible!important}.row-line{padding-bottom:0;padding-top: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{background-color:#007ad9;border:1px solid #007ad9;border-radius:3px;color:#fff;font-size:14px;transition:background-color .2s,box-shadow .2s}body .fc .fc-toolbar .fc-button:enabled:hover{background-color:#116fbf;border-color:#116fbf;color:#fff}body .fc .fc-toolbar .fc-button:focus{box-shadow:0 0 0 .2em #8dcdff;outline:0 none;outline-offset:0}body .fc .fc-toolbar .fc-button-group .fc-button{border-radius:0}body .fc .fc-toolbar .fc-button-group .fc-button:first-child{border-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-button-group .fc-button:last-child{border-bottom-right-radius:3px;border-top-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-bottom-left-radius:3px;border-top-left-radius:3px}body .fc .fc-toolbar .fc-right .fc-button:last-child{border-bottom-right-radius:3px;border-top-right-radius:3px}.fc-toolbar>*>:not(:first-child){margin-left:0}.fc-axis,.fc-dayGridMonth-button,.fc-timeGridDay-button,.fc-timeGridWeek-button,.old-content{line-height:0;text-indent:-9999px}.fc-axis:after,.fc-dayGridMonth-button:after,.fc-timeGridDay-button:after,.fc-timeGridWeek-button:after,.new-content{display:block;line-height:normal;text-indent:0}.fc-dayGridMonth-button:after{content:\"Th\u00E1ng\";padding:.2em}.fc-timeGridWeek-button:after{content:\"Tu\u1EA7n\";padding:.2em}.fc-timeGridDay-button:after{content:\"Ng\u00E0y\";padding:.2em}body .fc th{background-color:#f4f4f4;border:1px solid #c8c8c8;color:#333;padding:.571em 1em}.ui-fluid .button-group button,.ui-fluid .button-group p-button{margin-right:.5em!important;text-align:left;width:auto}.layout-wrapper .layout-menu-container{z-index:97}.base-status,.base-status-aborted,.base-status-approved,.base-status-completed,.base-status-create-new,.base-status-ended,.base-status-high,.base-status-immediately,.base-status-low,.base-status-medium,.base-status-on-conducting,.base-status-on-going,.base-status-pending,.base-status-rejected,.base-status-returned,.base-status-urgent{border-radius:.25em;color:#fff;font-size:.8em;padding:3px;text-align:center}.base-status-create-new{background-color:#f2f2f2;color:#666}.base-status-on-conducting,.base-status-on-going{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{background-color:#f2f2f2;color:#666}.base-status-high{background-color:#ffba01}.base-status-immediately,.base-status-urgent{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 dropdown,.crud-form tn-mask{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{display:block;margin-bottom:5px;padding-left:20px;position:relative}.crud-form.assessment .label-control.haveIndex:before{content:\" \" attr(label-index) \".\";left:0;position:absolute;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 td,.table-sticky tr th{border:1px solid #eee!important;border-left:none!important;border-top:none!important}.table-sticky tr td:first-child,.table-sticky tr th:first-child{border-left:1px solid #eee!important}.table-sticky tr td:last-child,.table-sticky tr th: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 #fff!important}.table-sticky.fix-height tr:first-child th{position:-webkit-sticky;position:sticky;top:0;z-index:2}.container-flex{align-items:center;display:flex}.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-right:.5em;padding-top:.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{left:0;position:absolute;top:0;width:100%}.container-control.no-label>span.label{display:none}.container-control.inline{display:inline-flex}.align-flex-center{align-items:center;display:flex;justify-content: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:normal;margin-right:1em}.tn-thumbnail{padding:.5rem}.tn-thumbnail.tn-thumbnail.tn-thumbnail{box-sizing:border-box}.fa-10:before{content:\"A+\";font-family:cursive;font-weight:700}.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;display:flex;flex:1 1;overflow:hidden;position:relative}.flex-container-main-content>div:last-child>div{height:100%;left:0;overflow:hidden;padding-top:.5em;position:absolute;top:0;width: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{height:26px;margin-left:0;max-width:200px;width:100%}.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{height:100%;overflow:auto;position:absolute;width:100%}.waiting-box{display:none;height:100%;left:0;position:fixed;top:0;width:100%;z-index:9999}.waiting-box .overlay{background-color:red;background-color:hsla(0,0%,42.7%,.5019607843137255);height:100%;width:100%}.waiting-box .content-loading{left:50%;position:absolute;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:normal}.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.ui-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.ui-state-highlight{background:#e3f2fd!important}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td{border-color:#fff}p-table.multi-check .p-datatable .p-datatable-tbody>tr.ui-state-highlight td .fix-sticky{background-color:#fff}.tn-animated-left-arrow-icon,.tn-animated-right-arrow-icon{height:32px;position:relative;width:14px;z-index:10}.tn-animated-right-arrow-icon{-webkit-animation:arrowBounceToRight .8s ease-in-out infinite alternate;animation:arrowBounceToRight .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon{-webkit-animation:arrowBounceToLeft .8s ease-in-out infinite alternate;animation:arrowBounceToLeft .8s ease-in-out infinite alternate}.tn-animated-left-arrow-icon:after,.tn-animated-left-arrow-icon:before,.tn-animated-right-arrow-icon:after,.tn-animated-right-arrow-icon:before{background-color:#88b0dd;content:\"\";display:block;height:20px;position:absolute;width:5px}.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)}@-webkit-keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@keyframes arrowBounceToLeft{0%{transform:translateX(-3px)}to{transform:translateX(3px)}}@-webkit-keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}@keyframes arrowBounceToRight{0%{transform:translateX(3px)}to{transform:translateX(-3px)}}.pass{color:#49c949}.not-pass,.pass{margin:5px;text-align:center}.not-pass{color:red}"]
|
|
27525
27548
|
},] }
|
|
27526
27549
|
];
|
|
27527
27550
|
ChatSendMessageBoxComponent.ctorParameters = function () { return [
|
|
@@ -27578,9 +27601,12 @@
|
|
|
27578
27601
|
CheckBoxListComponent.prototype.ngOnInit = function () {
|
|
27579
27602
|
this.fieldValue = this.control.valueField;
|
|
27580
27603
|
if (this.control.dataSource == null || this.control.dataSource.length == 0) {
|
|
27581
|
-
|
|
27582
|
-
|
|
27583
|
-
}
|
|
27604
|
+
this.bindDataSource(this.control.serviceUri, this.control.baseService);
|
|
27605
|
+
// if (this.control.serviceUri) {
|
|
27606
|
+
// }
|
|
27607
|
+
// else if(this.control.baseService) {
|
|
27608
|
+
//
|
|
27609
|
+
// }
|
|
27584
27610
|
}
|
|
27585
27611
|
else {
|
|
27586
27612
|
this.dataSourceInternal = this.control.dataSource;
|
|
@@ -27598,20 +27624,56 @@
|
|
|
27598
27624
|
this.classCheckBox += " p-col-" + this.control.pColClass;
|
|
27599
27625
|
}
|
|
27600
27626
|
};
|
|
27601
|
-
CheckBoxListComponent.prototype.bindDataSource = function () {
|
|
27627
|
+
CheckBoxListComponent.prototype.bindDataSource = function (serviceUri, baseService) {
|
|
27602
27628
|
var _this = this;
|
|
27603
|
-
|
|
27604
|
-
|
|
27605
|
-
|
|
27606
|
-
|
|
27607
|
-
|
|
27608
|
-
|
|
27609
|
-
|
|
27610
|
-
|
|
27611
|
-
|
|
27629
|
+
var _a, _b;
|
|
27630
|
+
if (baseService) {
|
|
27631
|
+
if (baseService instanceof BaseService) {
|
|
27632
|
+
var dropdownOptions = new DropdownOptions({
|
|
27633
|
+
displayField: (_a = this.control.displayField) !== null && _a !== void 0 ? _a : 'ten',
|
|
27634
|
+
valueField: (_b = this.control.valueField) !== null && _b !== void 0 ? _b : 'id',
|
|
27635
|
+
});
|
|
27636
|
+
baseService.getDataDropdown(dropdownOptions).then(function (res) {
|
|
27637
|
+
_this.dataSourceInternal = res;
|
|
27638
|
+
_this.gotData = true;
|
|
27639
|
+
if (_this.wroteValue)
|
|
27640
|
+
_this.fixValue();
|
|
27641
|
+
_this.onReady.emit(_this.control.field);
|
|
27642
|
+
}).catch(function (err) {
|
|
27643
|
+
_this.onReady.emit(_this.control.field);
|
|
27644
|
+
console.log(err);
|
|
27645
|
+
});
|
|
27612
27646
|
}
|
|
27613
|
-
|
|
27614
|
-
|
|
27647
|
+
else if (baseService instanceof MasterDataService) {
|
|
27648
|
+
baseService.getDropdown(this.control.groupCode).then(function (res) {
|
|
27649
|
+
// const displayField = this.control.displayField ?? 'id';
|
|
27650
|
+
// const valueField = this.control.valueField ?? 'code';
|
|
27651
|
+
_this.dataSourceInternal = res.map(function (item) {
|
|
27652
|
+
return { id: item.value, ten: item.label };
|
|
27653
|
+
});
|
|
27654
|
+
if (_this.wroteValue)
|
|
27655
|
+
_this.fixValue();
|
|
27656
|
+
_this.onReady.emit(_this.control.field);
|
|
27657
|
+
}).catch(function (err) {
|
|
27658
|
+
console.log(err);
|
|
27659
|
+
_this.onReady.emit(_this.control.field);
|
|
27660
|
+
});
|
|
27661
|
+
}
|
|
27662
|
+
}
|
|
27663
|
+
else if (serviceUri) {
|
|
27664
|
+
this._dropDownService.getDataSource(serviceUri).then(function (rs) {
|
|
27665
|
+
var arr = [];
|
|
27666
|
+
// for (let i = 0; i < rs.data.length; i++) {
|
|
27667
|
+
// arr.push({ label: rs.data[i][this.control.displayField], title: rs.data[i][this.control.displayField], value: rs.data[i][this.control.valueField] });
|
|
27668
|
+
// }
|
|
27669
|
+
_this.dataSourceInternal = rs.data;
|
|
27670
|
+
_this.gotData = true;
|
|
27671
|
+
if (_this.wroteValue) {
|
|
27672
|
+
_this.fixValue();
|
|
27673
|
+
}
|
|
27674
|
+
}, function (error) {
|
|
27675
|
+
});
|
|
27676
|
+
}
|
|
27615
27677
|
};
|
|
27616
27678
|
CheckBoxListComponent.prototype.change = function (event) {
|
|
27617
27679
|
var totalValue = __spread(this.selectedValue);
|
|
@@ -27679,8 +27741,8 @@
|
|
|
27679
27741
|
{
|
|
27680
27742
|
provide: forms.NG_VALUE_ACCESSOR,
|
|
27681
27743
|
useExisting: i0.forwardRef(function () { return CheckBoxListComponent; }),
|
|
27682
|
-
multi: true
|
|
27683
|
-
}
|
|
27744
|
+
multi: true,
|
|
27745
|
+
},
|
|
27684
27746
|
],
|
|
27685
27747
|
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}"]
|
|
27686
27748
|
},] }
|
|
@@ -32224,6 +32286,433 @@
|
|
|
32224
32286
|
onReady: [{ type: i0.Output }]
|
|
32225
32287
|
};
|
|
32226
32288
|
|
|
32289
|
+
var TreeTableComponent = /** @class */ (function (_super) {
|
|
32290
|
+
__extends(TreeTableComponent, _super);
|
|
32291
|
+
function TreeTableComponent(injector, _crudService) {
|
|
32292
|
+
var _this = _super.call(this, injector) || this;
|
|
32293
|
+
_this._crudService = _crudService;
|
|
32294
|
+
_this.model = new CrudListData();
|
|
32295
|
+
_this.setting = new CrudListSetting();
|
|
32296
|
+
_this.config = new CrudListConfig();
|
|
32297
|
+
_this._dataSource = [];
|
|
32298
|
+
_this.hiddenDelete = false;
|
|
32299
|
+
_this.hiddenEdit = false;
|
|
32300
|
+
_this.onReload = new i0.EventEmitter();
|
|
32301
|
+
_this.onAdd = new i0.EventEmitter();
|
|
32302
|
+
_this.onEdit = new i0.EventEmitter();
|
|
32303
|
+
_this.onView = new i0.EventEmitter();
|
|
32304
|
+
_this.onDelete = new i0.EventEmitter();
|
|
32305
|
+
_this.template = {};
|
|
32306
|
+
_this.cachedTransforms = {};
|
|
32307
|
+
return _this;
|
|
32308
|
+
}
|
|
32309
|
+
Object.defineProperty(TreeTableComponent.prototype, "dataSource", {
|
|
32310
|
+
get: function () {
|
|
32311
|
+
return this._dataSource;
|
|
32312
|
+
},
|
|
32313
|
+
set: function (value) {
|
|
32314
|
+
var dataSource = [];
|
|
32315
|
+
if (value) {
|
|
32316
|
+
dataSource = value;
|
|
32317
|
+
}
|
|
32318
|
+
this.processDataSource(dataSource);
|
|
32319
|
+
this._dataSource = dataSource;
|
|
32320
|
+
},
|
|
32321
|
+
enumerable: false,
|
|
32322
|
+
configurable: true
|
|
32323
|
+
});
|
|
32324
|
+
TreeTableComponent.prototype.ngOnInit = function () {
|
|
32325
|
+
this.getData();
|
|
32326
|
+
};
|
|
32327
|
+
TreeTableComponent.prototype.getData = function () {
|
|
32328
|
+
var infoGetData = this.getGridInfo();
|
|
32329
|
+
this.onReload.emit(infoGetData);
|
|
32330
|
+
};
|
|
32331
|
+
TreeTableComponent.prototype.processDataSource = function (dataSource) {
|
|
32332
|
+
var _this = this;
|
|
32333
|
+
if (!dataSource)
|
|
32334
|
+
return;
|
|
32335
|
+
dataSource.forEach(function (itemSource) {
|
|
32336
|
+
var source = itemSource.data;
|
|
32337
|
+
if (source.id == undefined) {
|
|
32338
|
+
source.id = _this._commonService.guid();
|
|
32339
|
+
}
|
|
32340
|
+
source.objStyleClass = {};
|
|
32341
|
+
if (!source.colSpan) {
|
|
32342
|
+
source.colSpan = {};
|
|
32343
|
+
}
|
|
32344
|
+
if (!source.rowSpan) {
|
|
32345
|
+
source.rowSpan = {};
|
|
32346
|
+
}
|
|
32347
|
+
if (!source.hidden) {
|
|
32348
|
+
source.hidden = {};
|
|
32349
|
+
}
|
|
32350
|
+
if (source.isNew) {
|
|
32351
|
+
source.objStyleClass.isNew = true;
|
|
32352
|
+
}
|
|
32353
|
+
if (source.isExpiring) {
|
|
32354
|
+
source.objStyleClass.expiring = true;
|
|
32355
|
+
}
|
|
32356
|
+
if (source.class) {
|
|
32357
|
+
source.class.split(' ').filter(function (p) { return p; }).forEach(function (cls) {
|
|
32358
|
+
source.objStyleClass[cls] = true;
|
|
32359
|
+
});
|
|
32360
|
+
}
|
|
32361
|
+
// this.setting.advanceData.fieldHasMaximumLength.forEach(_col => {
|
|
32362
|
+
// const col = <ColumnSchemaBase>_col;
|
|
32363
|
+
// const value = source[col.field];
|
|
32364
|
+
// if (value && value.substring && value.length > col.maxLengthDisplay) {
|
|
32365
|
+
// // sv: short value
|
|
32366
|
+
// source[`${col.field}__sv`] = `${value.substring(0, col.maxLengthDisplay)}`;
|
|
32367
|
+
// }
|
|
32368
|
+
// });
|
|
32369
|
+
// this.setting.advanceData.fieldHasMaximumWord.forEach(_col => {
|
|
32370
|
+
// const col = <ColumnSchemaBase>_col;
|
|
32371
|
+
// const valueShortWord = this.subWord(source[col.field], col.maxWordDisplay);
|
|
32372
|
+
// if (valueShortWord) {
|
|
32373
|
+
// // sv: short value
|
|
32374
|
+
// source[`${col.field}__sv`] = `${valueShortWord}`;
|
|
32375
|
+
// }
|
|
32376
|
+
// });
|
|
32377
|
+
_this.processDataSource(itemSource.children);
|
|
32378
|
+
});
|
|
32379
|
+
};
|
|
32380
|
+
TreeTableComponent.prototype.subWord = function (value, wordCount) {
|
|
32381
|
+
if (!value || !value.trim)
|
|
32382
|
+
return value;
|
|
32383
|
+
value = value.trim();
|
|
32384
|
+
var index = -1, beforeChar = 'a';
|
|
32385
|
+
for (var i = 0; i < value.length; i++) {
|
|
32386
|
+
if (value[i] == '' && beforeChar != '') {
|
|
32387
|
+
wordCount--;
|
|
32388
|
+
}
|
|
32389
|
+
beforeChar = value[i];
|
|
32390
|
+
if (wordCount == 0) {
|
|
32391
|
+
index = i;
|
|
32392
|
+
break;
|
|
32393
|
+
}
|
|
32394
|
+
}
|
|
32395
|
+
if (index > -1)
|
|
32396
|
+
return value.substring(0, index);
|
|
32397
|
+
return null;
|
|
32398
|
+
};
|
|
32399
|
+
TreeTableComponent.prototype.toggleShowFull = function (rowData, field) {
|
|
32400
|
+
rowData[field + '__showFull'] = !rowData[field + '__showFull'];
|
|
32401
|
+
};
|
|
32402
|
+
TreeTableComponent.prototype.reload = function (filter_custom, page) {
|
|
32403
|
+
if (page === void 0) { page = 1; }
|
|
32404
|
+
this.filter_custom = filter_custom;
|
|
32405
|
+
this.setting.pageSetting.page = page;
|
|
32406
|
+
this.getData();
|
|
32407
|
+
};
|
|
32408
|
+
TreeTableComponent.prototype.adjustPositionLoadingMask = function () {
|
|
32409
|
+
// if (this.interval) {
|
|
32410
|
+
// clearInterval(this.interval);
|
|
32411
|
+
// }
|
|
32412
|
+
// if (!this.model.loading) {
|
|
32413
|
+
// return;
|
|
32414
|
+
// }
|
|
32415
|
+
// this.interval = setInterval(f => {
|
|
32416
|
+
// const element = this.table.containerViewChild.nativeElement.querySelector('.p-datatable-loading-overlay');
|
|
32417
|
+
// if (element) {
|
|
32418
|
+
// const parent = element.closest('p-table');
|
|
32419
|
+
// if (parent) {
|
|
32420
|
+
// const nodeScrollBarContent = parent.parentNode;
|
|
32421
|
+
// if (!nodeScrollBarContent.classList.contains('ps-content')) {
|
|
32422
|
+
// return;
|
|
32423
|
+
// }
|
|
32424
|
+
// nodeScrollBarContent.parentNode.prepend(element);
|
|
32425
|
+
// }
|
|
32426
|
+
// const firstTh = element.parentNode.querySelector('p-table thead tr:first-child > th');
|
|
32427
|
+
// const firstThSize = firstTh.getBoundingClientRect();
|
|
32428
|
+
// const loadingIcon = element.querySelector('.p-datatable-loading-icon');
|
|
32429
|
+
// const fontSize = parseFloat(getComputedStyle(loadingIcon).fontSize);
|
|
32430
|
+
// const top = (firstThSize.height - fontSize) / 2;
|
|
32431
|
+
// const left = (firstThSize.width - fontSize) / 2;
|
|
32432
|
+
// loadingIcon.style.marginTop = `${top}px`;
|
|
32433
|
+
// loadingIcon.style.marginLeft = `${left}px`;
|
|
32434
|
+
// }
|
|
32435
|
+
// else {
|
|
32436
|
+
// this.adjustPositionLoadingMask();
|
|
32437
|
+
// }
|
|
32438
|
+
// }, 20);
|
|
32439
|
+
};
|
|
32440
|
+
TreeTableComponent.prototype.processBaseData = function () {
|
|
32441
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
32442
|
+
return __generator(this, function (_a) {
|
|
32443
|
+
switch (_a.label) {
|
|
32444
|
+
case 0: return [4 /*yield*/, this.preProcessData(this.model.dataSource)];
|
|
32445
|
+
case 1:
|
|
32446
|
+
_a.sent();
|
|
32447
|
+
return [2 /*return*/];
|
|
32448
|
+
}
|
|
32449
|
+
});
|
|
32450
|
+
});
|
|
32451
|
+
};
|
|
32452
|
+
TreeTableComponent.prototype.preProcessData = function (dataSource) {
|
|
32453
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
32454
|
+
var colHasPipe, _loop_1, this_1, colHasPipe_1, colHasPipe_1_1, col;
|
|
32455
|
+
var e_1, _a;
|
|
32456
|
+
return __generator(this, function (_b) {
|
|
32457
|
+
colHasPipe = this.setting.cols.filter(function (x) { return x.pipe; });
|
|
32458
|
+
_loop_1 = function (col) {
|
|
32459
|
+
var e_2, _a;
|
|
32460
|
+
var _loop_2 = function (item) {
|
|
32461
|
+
this_1.transform(col.pipe, col.asyncPipe, item[col.field]).then(function (rs) {
|
|
32462
|
+
item["pipe__" + col.field + " "] = rs;
|
|
32463
|
+
});
|
|
32464
|
+
};
|
|
32465
|
+
try {
|
|
32466
|
+
for (var dataSource_1 = (e_2 = void 0, __values(dataSource)), dataSource_1_1 = dataSource_1.next(); !dataSource_1_1.done; dataSource_1_1 = dataSource_1.next()) {
|
|
32467
|
+
var item = dataSource_1_1.value;
|
|
32468
|
+
_loop_2(item);
|
|
32469
|
+
}
|
|
32470
|
+
}
|
|
32471
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
32472
|
+
finally {
|
|
32473
|
+
try {
|
|
32474
|
+
if (dataSource_1_1 && !dataSource_1_1.done && (_a = dataSource_1.return)) _a.call(dataSource_1);
|
|
32475
|
+
}
|
|
32476
|
+
finally { if (e_2) throw e_2.error; }
|
|
32477
|
+
}
|
|
32478
|
+
};
|
|
32479
|
+
this_1 = this;
|
|
32480
|
+
try {
|
|
32481
|
+
for (colHasPipe_1 = __values(colHasPipe), colHasPipe_1_1 = colHasPipe_1.next(); !colHasPipe_1_1.done; colHasPipe_1_1 = colHasPipe_1.next()) {
|
|
32482
|
+
col = colHasPipe_1_1.value;
|
|
32483
|
+
_loop_1(col);
|
|
32484
|
+
}
|
|
32485
|
+
}
|
|
32486
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
32487
|
+
finally {
|
|
32488
|
+
try {
|
|
32489
|
+
if (colHasPipe_1_1 && !colHasPipe_1_1.done && (_a = colHasPipe_1.return)) _a.call(colHasPipe_1);
|
|
32490
|
+
}
|
|
32491
|
+
finally { if (e_1) throw e_1.error; }
|
|
32492
|
+
}
|
|
32493
|
+
return [2 /*return*/];
|
|
32494
|
+
});
|
|
32495
|
+
});
|
|
32496
|
+
};
|
|
32497
|
+
TreeTableComponent.prototype.transform = function (pipe, asyncPipe, value) {
|
|
32498
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
32499
|
+
var val, val;
|
|
32500
|
+
return __generator(this, function (_a) {
|
|
32501
|
+
switch (_a.label) {
|
|
32502
|
+
case 0:
|
|
32503
|
+
if (this.cachedTransforms[value]) {
|
|
32504
|
+
return [2 /*return*/, this.cachedTransforms[value]];
|
|
32505
|
+
}
|
|
32506
|
+
if (!asyncPipe) return [3 /*break*/, 2];
|
|
32507
|
+
return [4 /*yield*/, pipe.transform(value)];
|
|
32508
|
+
case 1:
|
|
32509
|
+
val = _a.sent();
|
|
32510
|
+
this.cachedTransforms[value] = val;
|
|
32511
|
+
return [2 /*return*/, val];
|
|
32512
|
+
case 2:
|
|
32513
|
+
val = pipe.transform(value);
|
|
32514
|
+
this.cachedTransforms[value] = val;
|
|
32515
|
+
return [2 /*return*/, val];
|
|
32516
|
+
}
|
|
32517
|
+
});
|
|
32518
|
+
});
|
|
32519
|
+
};
|
|
32520
|
+
TreeTableComponent.prototype.getGridInfo = function () {
|
|
32521
|
+
var gridInfo = new GridInfo({
|
|
32522
|
+
pageInfo: {
|
|
32523
|
+
page: this.setting.pageSetting.page,
|
|
32524
|
+
pageSize: this.setting.pageSetting.pageSize
|
|
32525
|
+
},
|
|
32526
|
+
filters: this.getFilters(),
|
|
32527
|
+
sorts: []
|
|
32528
|
+
});
|
|
32529
|
+
return gridInfo;
|
|
32530
|
+
};
|
|
32531
|
+
TreeTableComponent.prototype.getFilters = function () {
|
|
32532
|
+
var result = [];
|
|
32533
|
+
if (this.keyword) {
|
|
32534
|
+
result.push(this.newFilter('ten', exports.Operator.contain, this.keyword));
|
|
32535
|
+
}
|
|
32536
|
+
if (this.filter_custom && this.filter_custom.length) {
|
|
32537
|
+
result.push.apply(result, __spread(this.filter_custom));
|
|
32538
|
+
}
|
|
32539
|
+
return result;
|
|
32540
|
+
};
|
|
32541
|
+
TreeTableComponent.prototype.getContextCell = function (rowData, rowIndex, col, $this) {
|
|
32542
|
+
return {
|
|
32543
|
+
crudList: $this,
|
|
32544
|
+
rowData: rowData,
|
|
32545
|
+
rowIndex: rowIndex,
|
|
32546
|
+
col: col,
|
|
32547
|
+
field: col.field
|
|
32548
|
+
};
|
|
32549
|
+
};
|
|
32550
|
+
TreeTableComponent.prototype.disableEdit = function (rowData) {
|
|
32551
|
+
if (rowData.__disableEdit) {
|
|
32552
|
+
return true;
|
|
32553
|
+
}
|
|
32554
|
+
if (this.hiddenEdit) {
|
|
32555
|
+
return true;
|
|
32556
|
+
}
|
|
32557
|
+
if (rowData['metadataStatus'] && rowData['metadataStatus'] != '0') {
|
|
32558
|
+
return true;
|
|
32559
|
+
}
|
|
32560
|
+
return false;
|
|
32561
|
+
};
|
|
32562
|
+
TreeTableComponent.prototype.disableDelete = function (rowData) {
|
|
32563
|
+
if (rowData.__disableDelete) {
|
|
32564
|
+
return true;
|
|
32565
|
+
}
|
|
32566
|
+
if (this.hiddenDelete) {
|
|
32567
|
+
return true;
|
|
32568
|
+
}
|
|
32569
|
+
if (rowData['metadataStatus'] && rowData['metadataStatus'] != '0') {
|
|
32570
|
+
return true;
|
|
32571
|
+
}
|
|
32572
|
+
return false;
|
|
32573
|
+
};
|
|
32574
|
+
TreeTableComponent.prototype.findTemplate = function (templateName) {
|
|
32575
|
+
var item = this._commonService.findTemplateFromList(this.children, templateName);
|
|
32576
|
+
if (!item && this.templates) {
|
|
32577
|
+
item = this._commonService.findTemplateFromList(this.templates, templateName);
|
|
32578
|
+
}
|
|
32579
|
+
return item;
|
|
32580
|
+
};
|
|
32581
|
+
TreeTableComponent.prototype.hasTemplate = function (templateName) {
|
|
32582
|
+
if (this.template[templateName] === undefined) {
|
|
32583
|
+
this.template[templateName] = this.findTemplate(templateName);
|
|
32584
|
+
}
|
|
32585
|
+
return this.template[templateName] != null;
|
|
32586
|
+
};
|
|
32587
|
+
TreeTableComponent.prototype.getTemplate = function (templateName) {
|
|
32588
|
+
if (this.template[templateName] === undefined) {
|
|
32589
|
+
this.template[templateName] = this.findTemplate(templateName);
|
|
32590
|
+
}
|
|
32591
|
+
return this.template[templateName];
|
|
32592
|
+
};
|
|
32593
|
+
TreeTableComponent.prototype.getComponentByType = function (controlType) {
|
|
32594
|
+
// if (controlType == 'trangThaiV5') {
|
|
32595
|
+
// return this.templateTrangThaiV5;
|
|
32596
|
+
// }
|
|
32597
|
+
// if (controlType == '__viewHistory') {
|
|
32598
|
+
// return this.templateColViewHistory;
|
|
32599
|
+
// }
|
|
32600
|
+
return this.findTemplate(controlType);
|
|
32601
|
+
};
|
|
32602
|
+
TreeTableComponent.prototype.handleAdd = function (evt) {
|
|
32603
|
+
this.onAdd.emit(evt);
|
|
32604
|
+
};
|
|
32605
|
+
TreeTableComponent.prototype.handleView = function (rowData) {
|
|
32606
|
+
this.onView.emit(rowData);
|
|
32607
|
+
};
|
|
32608
|
+
TreeTableComponent.prototype.handleEdit = function (rowData) {
|
|
32609
|
+
this.onEdit.emit(rowData);
|
|
32610
|
+
};
|
|
32611
|
+
TreeTableComponent.prototype.handleDelete = function (rowData) {
|
|
32612
|
+
this.onDelete.emit(rowData);
|
|
32613
|
+
};
|
|
32614
|
+
TreeTableComponent.prototype.onNext = function (event) {
|
|
32615
|
+
this.setting.pageSetting.page = this.setting.pageSetting.page + 1;
|
|
32616
|
+
this.getData();
|
|
32617
|
+
this.scrollTop();
|
|
32618
|
+
};
|
|
32619
|
+
TreeTableComponent.prototype.onPrev = function (event) {
|
|
32620
|
+
if (this.setting.pageSetting.page > 1) {
|
|
32621
|
+
this.setting.pageSetting.page = this.setting.pageSetting.page - 1;
|
|
32622
|
+
}
|
|
32623
|
+
this.getData();
|
|
32624
|
+
this.scrollTop();
|
|
32625
|
+
};
|
|
32626
|
+
TreeTableComponent.prototype.onOldest = function (event) {
|
|
32627
|
+
this.setting.pageSetting.page = Math.ceil(this.model.total / this.setting.pageSetting.pageSize);
|
|
32628
|
+
this.getData();
|
|
32629
|
+
this.scrollTop();
|
|
32630
|
+
};
|
|
32631
|
+
TreeTableComponent.prototype.onLatest = function (event) {
|
|
32632
|
+
this.setting.pageSetting.page = 1;
|
|
32633
|
+
this.getData();
|
|
32634
|
+
this.scrollTop();
|
|
32635
|
+
};
|
|
32636
|
+
TreeTableComponent.prototype.savePageSize = function () {
|
|
32637
|
+
this.savePageSetting();
|
|
32638
|
+
};
|
|
32639
|
+
TreeTableComponent.prototype.savePageSetting = function () {
|
|
32640
|
+
var _this = this;
|
|
32641
|
+
var pathName = location.pathname;
|
|
32642
|
+
if (this.setting.settingKey) {
|
|
32643
|
+
pathName += '/' + this.setting.settingKey;
|
|
32644
|
+
}
|
|
32645
|
+
var pageSetting = [];
|
|
32646
|
+
var checkExist = false;
|
|
32647
|
+
var dataPageSetting = localStorage.getItem(ComCtxConstants.LOCALSTORAGE_KEY.PAGE_SETTING);
|
|
32648
|
+
if (dataPageSetting) {
|
|
32649
|
+
pageSetting = JSON.parse(dataPageSetting);
|
|
32650
|
+
pageSetting.forEach(function (element) {
|
|
32651
|
+
if (element.pathname === pathName) {
|
|
32652
|
+
element.pageSize = _this.setting.pageSetting.pageSize;
|
|
32653
|
+
checkExist = true;
|
|
32654
|
+
}
|
|
32655
|
+
});
|
|
32656
|
+
}
|
|
32657
|
+
if (!checkExist) {
|
|
32658
|
+
pageSetting.push({ pathname: pathName, pageSize: this.setting.pageSetting.pageSize });
|
|
32659
|
+
}
|
|
32660
|
+
localStorage.setItem(ComCtxConstants.LOCALSTORAGE_KEY.PAGE_SETTING, JSON.stringify(pageSetting));
|
|
32661
|
+
};
|
|
32662
|
+
TreeTableComponent.prototype.scrollTop = function () {
|
|
32663
|
+
var _this = this;
|
|
32664
|
+
setTimeout(function () {
|
|
32665
|
+
if (_this.scrollbar) {
|
|
32666
|
+
_this.scrollbar.scrollToTop(0, 0);
|
|
32667
|
+
}
|
|
32668
|
+
});
|
|
32669
|
+
};
|
|
32670
|
+
TreeTableComponent.prototype.scrollToBottom = function () {
|
|
32671
|
+
var _this = this;
|
|
32672
|
+
setTimeout(function () {
|
|
32673
|
+
if (_this.scrollbar) {
|
|
32674
|
+
_this.scrollbar.scrollToBottom(0, 0);
|
|
32675
|
+
}
|
|
32676
|
+
});
|
|
32677
|
+
};
|
|
32678
|
+
TreeTableComponent.prototype.handleDanhMaPC = function (evt) {
|
|
32679
|
+
var _this = this;
|
|
32680
|
+
this.setting.baseService.updateMaPhanCapBase()
|
|
32681
|
+
.then(function (res) { return _this.handleResponse(res, 'Đánh lại mã phân cấp thành công', function (f) {
|
|
32682
|
+
_this.reload();
|
|
32683
|
+
}); });
|
|
32684
|
+
};
|
|
32685
|
+
return TreeTableComponent;
|
|
32686
|
+
}(ComponentBase));
|
|
32687
|
+
TreeTableComponent.decorators = [
|
|
32688
|
+
{ type: i0.Component, args: [{
|
|
32689
|
+
selector: 'tn-tree-table',
|
|
32690
|
+
template: "<div class=\"custom-card card card-w-title tn-g-page-layout-1\">\r\n <div class=\"ui-helper-clearfix tn-g-page-layout-1__header-area\">\r\n <div class=\"p-grid ui-fluid custom-p-col page-title-area\">\r\n <div class=\"main-title p-col-8\">\r\n <h1>{{setting.title}}</h1>\r\n </div>\r\n <div class=\"p-col-4\">\r\n <paging-next-back-only [model]=\"model\" [setting]=\"setting\" (onOldest)=\"onOldest($event)\"\r\n (onNext)=\"onNext($event)\" (onPrev)=\"onPrev($event)\" (onLatest)=\"onLatest($event)\"\r\n (onChangeLimitPage)=\"savePageSize()\">\r\n </paging-next-back-only>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"p-grid crudListToolbar tn-g-page-layout-1__toolbar-area\">\r\n <div class=\"p-col-8 button-group function-topbar\">\r\n <button pButton pRipple type=\"button\" label=\"Th\u00EAm m\u1EDBi\" icon=\"pi pi-plus\" class=\"p-button-text\"\r\n (click)=\"handleAdd($event)\"></button>\r\n <button pButton pRipple type=\"button\" label=\"\u0110\u00E1nh l\u1EA1i m\u00E3 ph\u00E2n c\u1EA5p\" icon=\"pi pi-plus\" class=\"p-button-text\"\r\n (click)=\"handleDanhMaPC($event)\"></button>\r\n </div>\r\n <div class=\"p-col-4 p-inputgroup\">\r\n <input [placeholder]=\"'T\u00ECm ki\u1EBFm'\" [(ngModel)]=\"keyword\" pInputText type=\"text\" (change)=\"getData()\">\r\n <button pButton type=\"button\" class=\"btn-info btn-search\" label=\"T\u00ECm ki\u1EBFm\" (click)=\"getData()\"></button>\r\n </div>\r\n </div>\r\n <div class=\"tn-g-page-layout-1__table-area\">\r\n <tn-custom-scrollbar [showScrollHorizontal]=\"true\" class=\"--has-border\">\r\n <p-treeTable #treetable [value]=\"dataSource\" [columns]=\"setting.cols\" styleClass=\"treeOrganization\">\r\n <ng-template let-columns pTemplate=\"header\">\r\n <tr>\r\n <th style=\"width: 70px\" class=\"chkbox\">\r\n <button type=\"button\" pButton pRipple icon=\"pi pi-refresh\"\r\n class=\"p-button-rounded p-button-text btnReload\" pTooltip=\"L\u00E0m m\u1EDBi d\u1EEF li\u1EC7u\"\r\n tooltipPosition=\"top\" [disabled]=\"model.loading\" (click)=\"getData()\"></button>\r\n </th>\r\n <th *ngFor=\"let col of columns\" [ttSortableColumn]=\"col.field\" [style.width]=\"col.width\"\r\n [style.textAlign]=\"col.textAlign\" [className]=\"col.class\" [pTooltip]=\"col.fullLabel\"\r\n tooltipStyleClass=\"unset-width\" style=\"text-align: center;\">\r\n {{col.label}}\r\n <p-treeTableSortIcon [field]=\"col.field\"></p-treeTableSortIcon>\r\n </th>\r\n <th style=\"text-align: center; width: 8em\">\r\n Ch\u1EE9c n\u0103ng\r\n </th>\r\n </tr>\r\n </ng-template>\r\n <ng-template let-rowNode let-rowData=\"rowData\" let-index=\"index\" let-columns=\"columns\" pTemplate=\"body\">\r\n <tr [ttRow]=\"rowNode\">\r\n <td class=\"chkbox\"></td>\r\n <ng-container *ngFor=\"let col of columns; let i = index\">\r\n <ng-container\r\n *ngTemplateOutlet=\"contentTd; context: {$implicit: rowData, rowNode: rowNode, col: col, index: index, i: i}\">\r\n </ng-container>\r\n </ng-container>\r\n <td style=\"text-align: center; width: 8em;\">\r\n <div *ngIf=\"hasTemplate('function')\" class=\"p-toolbar-group-center button-group\">\r\n <ng-container [ngTemplateOutlet]=\"getTemplate('function')\"\r\n [ngTemplateOutletContext]=\"{rowData: rowData, rowIndex: index}\"></ng-container>\r\n <ng-container *ngTemplateOutlet=\"containerSticky\"></ng-container>\r\n </div>\r\n <div *ngIf=\"!hasTemplate('function')\" class=\"p-toolbar-group-center button-group\">\r\n <ng-container [ngTemplateOutletContext]=\"{rowData: rowData, rowIndex: index}\"\r\n [ngTemplateOutlet]=\"getTemplate('buttonBefore')\"></ng-container>\r\n <button *ngIf=\"!rowData.hiddenEdit\" type=\"button\" pButton pRipple\r\n pTooltip=\"{{'FORM.EDIT' | translate}}\" tooltipPosition=\"top\"\r\n [disabled]=\"disableEdit(rowData)\"\r\n class=\"p-button-rounded p-button-text p-button-info link-or-action\"\r\n icon=\"pi pi-pencil\" (click)=\"handleEdit(rowData)\"></button>\r\n <button *ngIf=\"!rowData.hiddenDelete\" type=\"button\" pButton pRipple\r\n [disabled]=\"disableDelete(rowData)\" pTooltip=\"{{'FORM.DELETE' | translate}}\"\r\n tooltipPosition=\"top\"\r\n class=\"p-button-rounded p-button-text p-button-danger link-or-action\"\r\n icon=\"pi pi-trash\" (click)=\"handleDelete(rowData)\"></button>\r\n <!-- <button *ngIf=\"this.menuButtons\" type=\"button\" pButton icon=\"pi pi-ellipsis-v\"\r\n class=\"link-or-action p-button-text p-button-info p-button-rounded\"\r\n pTooltip=\"Ch\u1EE9c n\u0103ng kh\u00E1c\" tooltipPosition=\"top\"\r\n (click)=\"showContextMenu($event, rowData)\"></button> -->\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-template>\r\n </p-treeTable>\r\n <div class=\"row-bottom-sticky\"></div>\r\n </tn-custom-scrollbar>\r\n </div>\r\n</div>\r\n\r\n<ng-template #contentTd let-rowData let-rowNode=\"rowNode\" let-col=\"col\" let-index=\"index\" let-i=\"i\">\r\n <td *ngIf=\"col && col.visible && col.field != 'function' && (!rowData.hidden || !rowData.hidden[col.field])\"\r\n [attr.colSpan]=\"rowData.colSpan && rowData.colSpan[col.field]\"\r\n [attr.rowSpan]=\"rowData.rowSpan && rowData.rowSpan[col.field]\" [ngStyle]=\"col.extendData.style\"\r\n [class]=\"col.cellClass\" [class.first-td]=\"i == 0\">\r\n <tn-treeTableToggler *ngIf=\"i == 0\" [rowNode]=\"rowNode\"></tn-treeTableToggler>\r\n <span *ngIf=\"col.pipe\">\r\n <!-- <span class=\"p-column-title\" [pTooltip]=\"col.fullLabel\" [escape]=\"false\"\r\n tooltipPosition=\"top\">{{col.label}}</span> -->\r\n {{rowData['pipe__' + col.field]}}\r\n </span>\r\n <span *ngIf=\"!col.pipe\">\r\n <!-- <span class=\"p-column-title\" [pTooltip]=\"col.fullLabel\" [escape]=\"false\"\r\n tooltipPosition=\"top\">{{col.label}}</span> -->\r\n <span *ngIf=\"setting.showEditLink && col.showEditLink\" [pTooltip]=\"config.tooltipView\" tooltipPosition=\"top\"\r\n class=\"link-or-action\">\r\n <a href=\"javascript:;\" (click)=\"handleView(rowData)\" [pTooltip]=\"config.tooltipView\"\r\n tooltipPosition=\"top\">\r\n <ng-container [ngTemplateOutlet]=\"contentCell\"\r\n [ngTemplateOutletContext]=\"getContextCell(rowData, index, col, this)\">\r\n </ng-container>\r\n </a>\r\n </span>\r\n <span *ngIf=\"!setting.showEditLink || !col.showEditLink\">\r\n <ng-container [ngTemplateOutlet]=\"contentCell\"\r\n [ngTemplateOutletContext]=\"getContextCell(rowData, index, col, this)\">\r\n </ng-container>\r\n </span>\r\n </span>\r\n <ng-container *ngTemplateOutlet=\"containerSticky\"></ng-container>\r\n </td>\r\n</ng-template>\r\n<ng-template #contentCell let-col=\"col\" let-rowData=\"rowData\" let-rowIndex=\"rowIndex\" let-field=\"field\"\r\n let-expanded=\"expanded\">\r\n <ng-container *ngIf=\"col.template\">\r\n <ng-container [ngTemplateOutlet]=\"col.template\"\r\n [ngTemplateOutletContext]=\"getContextCell(rowData, rowIndex, col, this)\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!col.template\">\r\n <ng-container [ngSwitch]=\"col.dataType\">\r\n <span *ngSwitchCase=\"'color'\" style=\"display:block;text-align:center;\">\r\n <div pTooltip=\"{{rowData[field]}}\" tooltipPosition=\"top\" [ngStyle]=\"{'background-color':rowData[field]}\"\r\n style=\"width:30px;height:30px;margin:0 auto;\"></div>\r\n </span>\r\n <span *ngSwitchCase=\"'icon'\" style=\"display:block;text-align:center;\">\r\n <i pTooltip=\"{{rowData[field]}}\" tooltipPosition=\"top\" style=\"text-align: center;\"\r\n [ngClass]=\"rowData[field]\"></i>\r\n </span>\r\n <span *ngSwitchCase=\"'date'\" pTooltip=\"{{rowData[field] | date:'dd/MM/yyyy'}}\" tooltipPosition=\"top\">\r\n {{_crudService.renderDate(rowData[field], col.format)}}\r\n </span>\r\n <span *ngSwitchCase=\"'datetime'\" pTooltip=\"{{rowData[field] | date:'dd/MM/yyyy HH:mm'}}\"\r\n tooltipPosition=\"top\">\r\n {{_crudService.renderDateTime(rowData[field], col.format)}}\r\n </span>\r\n <span *ngSwitchCase=\"'user'\" class=\"user\">\r\n {{rowData[field] | userFormat | async}}\r\n </span>\r\n <div *ngSwitchCase=\"'users'\" [innerHTML]=\"rowData[field] | usersFormat | async\">\r\n </div>\r\n <span *ngSwitchCase=\"'int'\">\r\n {{rowData[field]}}\r\n </span>\r\n <span *ngSwitchCase=\"'decimal'\">\r\n {{rowData[field]}}\r\n </span>\r\n <span *ngSwitchCase=\"'boolean'\">\r\n <p-checkbox class=\"boolean-data-type\" [(ngModel)]=\"rowData[field]\" binary=\"true\"\r\n [disabled]=\"col.disableCheckBox\">\r\n </p-checkbox>\r\n </span>\r\n <span *ngSwitchCase=\"'html'\">\r\n <div *ngIf=\"rowData[field]==null?'':rowData[field]\" [innerHTML]=\"rowData[field] | safeHtml\"></div>\r\n </span>\r\n <span *ngSwitchCase=\"'metadataStatus'\">\r\n <span *ngIf=\"rowData['rejectReason']\" class=\"label-danger\" [pTooltip]=\"rowData['rejectReason']\"\r\n tooltipStyleClass=\"unset-width\" [escape]=\"false\" tooltipPosition=\"top\">T\u1EEB ch\u1ED1i</span>\r\n <span *ngIf=\"rowData[field] == '0' && !rowData['rejectReason']\" class=\"label-secondary\">Ch\u01B0a\r\n duy\u1EC7t</span>\r\n <span *ngIf=\"rowData[field] == '1' && !rowData['rejectReason']\" class=\"label-warning\">Ch\u1EDD duy\u1EC7t</span>\r\n <span *ngIf=\"rowData[field] == '2'\" class=\"label-primary\">\u0110\u00E3 duy\u1EC7t</span>\r\n </span>\r\n <ng-container *ngSwitchCase=\"'string'\">\r\n <ng-container *ngTemplateOutlet=\"contentCellString; context: {$implicit: rowData, field: col.field}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchCase=\"null\">\r\n <ng-container *ngTemplateOutlet=\"contentCellString; context: {$implicit: rowData, field: col.field}\">\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngSwitchDefault>\r\n <ng-container [ngTemplateOutlet]=\"getComponentByType(col.dataType)\"\r\n [ngTemplateOutletContext]=\"getContextCell(rowData, rowIndex, col, this)\">\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n</ng-template>\r\n<ng-template #contentCellString let-rowData let-field=\"field\">\r\n <span>\r\n <!-- __sv: Short Value -->\r\n <ng-container *ngIf=\"rowData[field + '__sv']\">\r\n <ng-container *ngIf=\"!rowData[field + '__showFull']\">\r\n {{rowData[field + '__sv']}}\r\n <span class=\"toggle-showfull\" (click)=\"toggleShowFull(rowData, field)\" pTooltip=\"B\u1EA5m \u0111\u1EC3 xem th\u00EAm\"\r\n tooltipPosition=\"top\">[...]</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"rowData[field + '__showFull']\">\r\n {{rowData[field]}}\r\n <span class=\"toggle-showfull\" (click)=\"toggleShowFull(rowData, field)\">Thu g\u1ECDn</span>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!rowData[field + '__sv']\">\r\n {{rowData[field]}}\r\n </ng-container>\r\n </span>\r\n</ng-template>\r\n<ng-template #containerSticky>\r\n <span class=\"fix-sticky top\"></span>\r\n <span class=\"fix-sticky right\"></span>\r\n <!-- <span class=\"fix-sticky bottom\"></span> -->\r\n <span class=\"fix-sticky left\"></span>\r\n</ng-template>",
|
|
32691
|
+
styles: [""]
|
|
32692
|
+
},] }
|
|
32693
|
+
];
|
|
32694
|
+
TreeTableComponent.ctorParameters = function () { return [
|
|
32695
|
+
{ type: i0.Injector },
|
|
32696
|
+
{ type: CrudService }
|
|
32697
|
+
]; };
|
|
32698
|
+
TreeTableComponent.propDecorators = {
|
|
32699
|
+
treeTable: [{ type: i0.ViewChild, args: ['treetable',] }],
|
|
32700
|
+
scrollbar: [{ type: i0.ViewChild, args: ['scrollbar', { static: true },] }],
|
|
32701
|
+
children: [{ type: i0.ContentChildren, args: [i0.TemplateRef,] }],
|
|
32702
|
+
templates: [{ type: i0.Input }],
|
|
32703
|
+
model: [{ type: i0.Input }],
|
|
32704
|
+
setting: [{ type: i0.Input }],
|
|
32705
|
+
config: [{ type: i0.Input }],
|
|
32706
|
+
dataSource: [{ type: i0.Input }],
|
|
32707
|
+
hiddenDelete: [{ type: i0.Input }],
|
|
32708
|
+
hiddenEdit: [{ type: i0.Input }],
|
|
32709
|
+
onReload: [{ type: i0.Output }],
|
|
32710
|
+
onAdd: [{ type: i0.Output }],
|
|
32711
|
+
onEdit: [{ type: i0.Output }],
|
|
32712
|
+
onView: [{ type: i0.Output }],
|
|
32713
|
+
onDelete: [{ type: i0.Output }]
|
|
32714
|
+
};
|
|
32715
|
+
|
|
32227
32716
|
var TableDetailFormComponent = /** @class */ (function (_super) {
|
|
32228
32717
|
__extends(TableDetailFormComponent, _super);
|
|
32229
32718
|
function TableDetailFormComponent(injector) {
|
|
@@ -43666,6 +44155,9 @@
|
|
|
43666
44155
|
NotificationService.prototype.sendNotification = function (data) {
|
|
43667
44156
|
return this.defaultPost(this.serviceUri + "/InsertToManyUser/", data);
|
|
43668
44157
|
};
|
|
44158
|
+
NotificationService.prototype.sendNotificationMultiple = function (lstNotification) {
|
|
44159
|
+
return this.defaultPost(this.serviceUri + "/InsertMultiple", lstNotification);
|
|
44160
|
+
};
|
|
43669
44161
|
NotificationService.prototype.markReadById = function (id) {
|
|
43670
44162
|
return this.defaultPost(this.serviceUri + "/MarkReadById/" + id, {});
|
|
43671
44163
|
};
|
|
@@ -43673,7 +44165,7 @@
|
|
|
43673
44165
|
return this.defaultPost(this.serviceUri + "/MarkUnread/" + id, {});
|
|
43674
44166
|
};
|
|
43675
44167
|
NotificationService.prototype.markReadAllByUserCurrent = function () {
|
|
43676
|
-
return this.defaultPost(this.serviceUri + "/
|
|
44168
|
+
return this.defaultPost(this.serviceUri + "/MarkReadAllByCurrentUser", {});
|
|
43677
44169
|
};
|
|
43678
44170
|
return NotificationService;
|
|
43679
44171
|
}(BaseService));
|
|
@@ -44269,6 +44761,7 @@
|
|
|
44269
44761
|
_this._crudService = _crudService;
|
|
44270
44762
|
_this._notifierService = _notifierService;
|
|
44271
44763
|
_this._customRouterService = _customRouterService;
|
|
44764
|
+
_this.openMenu = new i0.EventEmitter();
|
|
44272
44765
|
_this.maxNotification = 10;
|
|
44273
44766
|
_this.totalUnRead = 0;
|
|
44274
44767
|
_this.bounceNoti = true;
|
|
@@ -44278,13 +44771,15 @@
|
|
|
44278
44771
|
_this.url = '';
|
|
44279
44772
|
_this.urldetail = '';
|
|
44280
44773
|
_this.notifications = [];
|
|
44281
|
-
_this.openMenu = new i0.EventEmitter();
|
|
44282
44774
|
_this.rootContext.subscribe('NOTIFICATION_CHANGE', function (rs) {
|
|
44283
44775
|
_this.refreshNotification();
|
|
44284
44776
|
});
|
|
44285
44777
|
_this._signalRService.start('NotificationHub', TopicReloadNotification, function (data) {
|
|
44286
44778
|
_this.refreshNotification();
|
|
44287
44779
|
});
|
|
44780
|
+
_this.rootContext.subscribe(ComCtxConstants.NOTIFICATION.NOTIFICATION_RELOAD, function (res) {
|
|
44781
|
+
_this.refreshNotification();
|
|
44782
|
+
});
|
|
44288
44783
|
_this.environment = _this._moduleConfigService.getConfig().environment;
|
|
44289
44784
|
return _this;
|
|
44290
44785
|
}
|
|
@@ -44354,13 +44849,24 @@
|
|
|
44354
44849
|
],
|
|
44355
44850
|
fields: ''
|
|
44356
44851
|
});
|
|
44357
|
-
|
|
44358
|
-
.
|
|
44359
|
-
|
|
44360
|
-
|
|
44361
|
-
|
|
44362
|
-
_this.
|
|
44363
|
-
|
|
44852
|
+
var readedFilters = [
|
|
44853
|
+
this.newFilter('userId', exports.Operator.equal, this.userId),
|
|
44854
|
+
this.newFilter('readedTime', exports.Operator.isNull, '1')
|
|
44855
|
+
];
|
|
44856
|
+
Promise.all([
|
|
44857
|
+
this._notificationService.getByGridRequest(gridInfo).then(function (res) { return _this.handleResponse(res, '', function (f) {
|
|
44858
|
+
_this.notifications = res.data;
|
|
44859
|
+
_this.totalUnRead = 0;
|
|
44860
|
+
_this.bounceNoti = true;
|
|
44861
|
+
_this.afterGetNotication();
|
|
44862
|
+
}); }),
|
|
44863
|
+
this._notificationService.getAll(readedFilters, 'readedTime').then(function (res) {
|
|
44864
|
+
if (res.success && res.data && res.data.length)
|
|
44865
|
+
_this.totalUnRead = res.totalRecord;
|
|
44866
|
+
else
|
|
44867
|
+
_this.totalUnRead = 0;
|
|
44868
|
+
})
|
|
44869
|
+
]);
|
|
44364
44870
|
};
|
|
44365
44871
|
TnAppNotificationComponent.prototype.afterGetNotication = function () {
|
|
44366
44872
|
var _this = this;
|
|
@@ -44382,18 +44888,20 @@
|
|
|
44382
44888
|
if (!rs)
|
|
44383
44889
|
return;
|
|
44384
44890
|
_this._notificationService.markReadAllByUserCurrent().then(function (rs) {
|
|
44385
|
-
|
|
44386
|
-
|
|
44387
|
-
});
|
|
44388
|
-
_this.rootContext.fireEvent(
|
|
44891
|
+
// this.notifications.forEach(element => {
|
|
44892
|
+
// element.readedTime = new Date();
|
|
44893
|
+
// });
|
|
44894
|
+
_this.rootContext.fireEvent(ComCtxConstants.NOTIFICATION.NOTIFICATION_RELOAD, true);
|
|
44389
44895
|
});
|
|
44390
44896
|
_this.totalUnRead = 0;
|
|
44391
44897
|
});
|
|
44392
44898
|
};
|
|
44393
44899
|
TnAppNotificationComponent.prototype.readById = function (data) {
|
|
44394
|
-
|
|
44395
|
-
|
|
44396
|
-
|
|
44900
|
+
var _this = this;
|
|
44901
|
+
data.readedTime = new Date();
|
|
44902
|
+
this._notificationService.markReadById(data.id).then(function (res) {
|
|
44903
|
+
_this.rootContext.fireEvent(ComCtxConstants.NOTIFICATION.NOTIFICATION_RELOAD);
|
|
44904
|
+
}).catch(function (err) { return _this._commonService.handleError(err, _this._injector); });
|
|
44397
44905
|
};
|
|
44398
44906
|
TnAppNotificationComponent.prototype.isHasAvatar = function (item) {
|
|
44399
44907
|
if (item.avatarId) {
|
|
@@ -44442,14 +44950,7 @@
|
|
|
44442
44950
|
this.bounceNoti = false;
|
|
44443
44951
|
};
|
|
44444
44952
|
TnAppNotificationComponent.prototype.handleClicked = function () {
|
|
44445
|
-
|
|
44446
|
-
var domain;
|
|
44447
|
-
return __generator(this, function (_a) {
|
|
44448
|
-
domain = this.environment.clientDomain.thongbaoDomain;
|
|
44449
|
-
window.open("" + domain);
|
|
44450
|
-
return [2 /*return*/];
|
|
44451
|
-
});
|
|
44452
|
-
});
|
|
44953
|
+
this._router.navigate(["user/managemant-notification"]);
|
|
44453
44954
|
};
|
|
44454
44955
|
return TnAppNotificationComponent;
|
|
44455
44956
|
}(ComponentBase));
|
|
@@ -52034,6 +52535,44 @@
|
|
|
52034
52535
|
]; };
|
|
52035
52536
|
TnSortIcon.propDecorators = {
|
|
52036
52537
|
field: [{ type: i0.Input }]
|
|
52538
|
+
};
|
|
52539
|
+
var TnTreeTableToggler = /** @class */ (function () {
|
|
52540
|
+
function TnTreeTableToggler(ttb) {
|
|
52541
|
+
this.ttb = ttb;
|
|
52542
|
+
this.tt = ttb.treeTable;
|
|
52543
|
+
}
|
|
52544
|
+
TnTreeTableToggler.prototype.onClick = function (event) {
|
|
52545
|
+
this.rowNode.node.expanded = !this.rowNode.node.expanded;
|
|
52546
|
+
if (this.rowNode.node.expanded) {
|
|
52547
|
+
this.tt.onNodeExpand.emit({
|
|
52548
|
+
originalEvent: event,
|
|
52549
|
+
node: this.rowNode.node
|
|
52550
|
+
});
|
|
52551
|
+
}
|
|
52552
|
+
else {
|
|
52553
|
+
this.tt.onNodeCollapse.emit({
|
|
52554
|
+
originalEvent: event,
|
|
52555
|
+
node: this.rowNode.node
|
|
52556
|
+
});
|
|
52557
|
+
}
|
|
52558
|
+
this.tt.updateSerializedValue();
|
|
52559
|
+
this.tt.tableService.onUIUpdate(this.tt.value);
|
|
52560
|
+
event.preventDefault();
|
|
52561
|
+
};
|
|
52562
|
+
return TnTreeTableToggler;
|
|
52563
|
+
}());
|
|
52564
|
+
TnTreeTableToggler.decorators = [
|
|
52565
|
+
{ type: i0.Component, args: [{
|
|
52566
|
+
selector: 'tn-treeTableToggler',
|
|
52567
|
+
template: "\n <button type=\"button\" class=\"p-treetable-toggler p-link\" (click)=\"onClick($event)\" tabindex=\"-1\" pRipple\n [style.visibility]=\"rowNode.node.leaf === false || (rowNode.node.children && rowNode.node.children.length) ? 'visible' : 'hidden'\" [style.marginLeft]=\"rowNode.level * 16 + 'px'\">\n <i [ngClass]=\"rowNode.node.expanded ? 'pi pi-fw pi-chevron-down' : 'pi pi-fw pi-chevron-right'\"></i>\n </button>\n ",
|
|
52568
|
+
encapsulation: i0.ViewEncapsulation.None
|
|
52569
|
+
},] }
|
|
52570
|
+
];
|
|
52571
|
+
TnTreeTableToggler.ctorParameters = function () { return [
|
|
52572
|
+
{ type: TreeTableComponent }
|
|
52573
|
+
]; };
|
|
52574
|
+
TnTreeTableToggler.propDecorators = {
|
|
52575
|
+
rowNode: [{ type: i0.Input }]
|
|
52037
52576
|
};
|
|
52038
52577
|
|
|
52039
52578
|
var TnTemplateDirective = /** @class */ (function () {
|
|
@@ -53819,6 +54358,7 @@
|
|
|
53819
54358
|
CoCauToChucPickerListComponent,
|
|
53820
54359
|
CrudFormComponent,
|
|
53821
54360
|
CrudListComponent,
|
|
54361
|
+
TreeTableComponent,
|
|
53822
54362
|
BaseCongViecTestComponent,
|
|
53823
54363
|
BaseCongViecComponent,
|
|
53824
54364
|
BaseCongViecFormComponent,
|
|
@@ -53908,6 +54448,7 @@
|
|
|
53908
54448
|
TnSortableColumnDirective,
|
|
53909
54449
|
TnTemplateDirective,
|
|
53910
54450
|
TnSortIcon,
|
|
54451
|
+
TnTreeTableToggler,
|
|
53911
54452
|
UserPickerComponent,
|
|
53912
54453
|
UserPickerBoxComponent,
|
|
53913
54454
|
AutocompleteDatasourceComponent,
|
|
@@ -54079,6 +54620,941 @@
|
|
|
54079
54620
|
return MultiTranslateHttpLoader;
|
|
54080
54621
|
}());
|
|
54081
54622
|
|
|
54623
|
+
var TreeListBase = /** @class */ (function (_super) {
|
|
54624
|
+
__extends(TreeListBase, _super);
|
|
54625
|
+
function TreeListBase(_injector) {
|
|
54626
|
+
var _this = _super.call(this, _injector) || this;
|
|
54627
|
+
_this.notConfigBaseServiceMessage = 'Chưa cấu hình CRUD base service';
|
|
54628
|
+
_this.environment = {};
|
|
54629
|
+
_this.setting = new CrudListSetting();
|
|
54630
|
+
_this.model = new CrudListData();
|
|
54631
|
+
_this.formModel = new CrudFormData();
|
|
54632
|
+
_this.scopeDataEdit = {};
|
|
54633
|
+
_this.showDetailForm = false;
|
|
54634
|
+
_this.countReady = 0;
|
|
54635
|
+
_this.hasCrudList = true;
|
|
54636
|
+
_this.customGetData = false;
|
|
54637
|
+
_this.readyToTrinhKy = false;
|
|
54638
|
+
_this.plusUrl = '';
|
|
54639
|
+
_this.fieldParent = 'idParent';
|
|
54640
|
+
_this.isCrudList = false;
|
|
54641
|
+
_this.levelOpen = 1;
|
|
54642
|
+
_this._notifierService = _this._injector.get(NotifierService);
|
|
54643
|
+
_this._activatedRoute = _this._injector.get(i3.ActivatedRoute);
|
|
54644
|
+
_this._router = _this._injector.get(i3.Router);
|
|
54645
|
+
_this._customRouterService = _this._injector.get(CustomRouterService);
|
|
54646
|
+
_this._listHelperService = _this._injector.get(ListHelperService);
|
|
54647
|
+
_this._commonService = _this._injector.get(CommonService);
|
|
54648
|
+
_this._translateService = _this._injector.get(i2.TranslateService);
|
|
54649
|
+
_this._exportService = _this._injector.get(ExportService);
|
|
54650
|
+
_this._crudService = _this._injector.get(CrudService);
|
|
54651
|
+
_this._datePipe = _this._injector.get(i2$1.DatePipe);
|
|
54652
|
+
_this._cd = _this._injector.get(i0.ChangeDetectorRef);
|
|
54653
|
+
_this._userService = _this._injector.get(UserService);
|
|
54654
|
+
_this._masterDataService = _this._injector.get(MasterDataService);
|
|
54655
|
+
_this._entityWorkflowSettingService = _this._injector.get(EntityWorkflowSettingService);
|
|
54656
|
+
_this._entityWorkflowHistoryService = _this._injector.get(EntityWorkflowHistoryService);
|
|
54657
|
+
_this._entityPermissionService = _this._injector.get(EntityPermissionService);
|
|
54658
|
+
_this._workflowSettingService = _this._injector.get(WorkflowSettingsService);
|
|
54659
|
+
_this._workflowPermissionDetailService = _this._injector.get(WorkflowPermissionDetailService);
|
|
54660
|
+
_this._stateMachinesService = _this._injector.get(StateMachinesService);
|
|
54661
|
+
_this._congViecServiceInBase = _this._injector.get(CongViecService);
|
|
54662
|
+
return _this;
|
|
54663
|
+
}
|
|
54664
|
+
Object.defineProperty(TreeListBase.prototype, "content", {
|
|
54665
|
+
set: function (content) {
|
|
54666
|
+
var beforeValue = this.crudList;
|
|
54667
|
+
if (content) {
|
|
54668
|
+
this.crudList = content;
|
|
54669
|
+
if (!beforeValue) {
|
|
54670
|
+
this.countReady++;
|
|
54671
|
+
if (this.countReady < 2) {
|
|
54672
|
+
return;
|
|
54673
|
+
}
|
|
54674
|
+
this.processData();
|
|
54675
|
+
}
|
|
54676
|
+
}
|
|
54677
|
+
},
|
|
54678
|
+
enumerable: false,
|
|
54679
|
+
configurable: true
|
|
54680
|
+
});
|
|
54681
|
+
TreeListBase.prototype.ngOnInit = function () {
|
|
54682
|
+
this.model.baseReady = false;
|
|
54683
|
+
if (this.setting.cols) {
|
|
54684
|
+
this.setting.cols = this.setting.cols.filter(function (q) { return !q.removeOnInit; });
|
|
54685
|
+
}
|
|
54686
|
+
this.mergeInfoToColumnSchema();
|
|
54687
|
+
this.generateFieldSearchText();
|
|
54688
|
+
if (!this.setting.baseService) {
|
|
54689
|
+
this._notifierService.showWarning(this.notConfigBaseServiceMessage);
|
|
54690
|
+
}
|
|
54691
|
+
else {
|
|
54692
|
+
if (!this.setting.hiddenSettingWorkflow
|
|
54693
|
+
|| !this.setting.hiddenSettingWorkflowNew) {
|
|
54694
|
+
this.setting.baseService.useWorkflow = true;
|
|
54695
|
+
}
|
|
54696
|
+
this.registerGlobalService(this.setting.baseService);
|
|
54697
|
+
}
|
|
54698
|
+
var moduleConfigService = this._injector.get(ModuleConfigService);
|
|
54699
|
+
this.environment = moduleConfigService.getConfig().environment;
|
|
54700
|
+
if (this.environment.clientDomain
|
|
54701
|
+
&& this.setting.baseService
|
|
54702
|
+
&& this.environment.clientDomain[this.setting.baseService.serviceCode]
|
|
54703
|
+
&& !this.setting.targetPath) {
|
|
54704
|
+
this.setting.targetPath = this.environment.clientDomain[this.setting.baseService.serviceCode] + "/" + this.setting.baseService.entityName.toLowerCase() + "/detail";
|
|
54705
|
+
}
|
|
54706
|
+
this.getMenuButtons = this.getMenuButtons.bind(this);
|
|
54707
|
+
};
|
|
54708
|
+
TreeListBase.prototype.registerGlobalService = function (service) {
|
|
54709
|
+
var key = service.getKeyWorkflowSetting();
|
|
54710
|
+
this._entityWorkflowSettingService.registerService(key, service);
|
|
54711
|
+
this._entityWorkflowHistoryService.registerService(key, service);
|
|
54712
|
+
this._entityPermissionService.registerService(key, service);
|
|
54713
|
+
this._workflowSettingService.registerService(key, service);
|
|
54714
|
+
};
|
|
54715
|
+
TreeListBase.prototype.loadItemFromQueryParam = function () {
|
|
54716
|
+
var _this = this;
|
|
54717
|
+
if (this.loadDetailFromQueryParam === undefined || this.loadDetailFromQueryParam === true) {
|
|
54718
|
+
var idInQueryString = null;
|
|
54719
|
+
var pid = null; // permission Id được người khác share
|
|
54720
|
+
if (this._activatedRoute.snapshot
|
|
54721
|
+
&& this._activatedRoute.snapshot.queryParams) {
|
|
54722
|
+
idInQueryString = this._activatedRoute.snapshot.queryParams.id || this._activatedRoute.snapshot.queryParams.entityKey;
|
|
54723
|
+
pid = this._activatedRoute.snapshot.queryParams.pid;
|
|
54724
|
+
}
|
|
54725
|
+
if (pid) {
|
|
54726
|
+
this.loadDetailPid(pid);
|
|
54727
|
+
}
|
|
54728
|
+
else if (idInQueryString) {
|
|
54729
|
+
// get detail data
|
|
54730
|
+
this.setting.baseService.getDetailWithPermission(idInQueryString)
|
|
54731
|
+
.then(function (res) {
|
|
54732
|
+
if (!res.data) {
|
|
54733
|
+
_this._notifierService.showWarning('Không tìm thấy bản ghi cần xem chi tiết');
|
|
54734
|
+
}
|
|
54735
|
+
if ((res.data.basePermission & exports.PermissionBase.EDIT) == exports.PermissionBase.EDIT
|
|
54736
|
+
|| (res.data.basePermission & exports.PermissionBase.READ) == exports.PermissionBase.READ) {
|
|
54737
|
+
_this._edit(res.data);
|
|
54738
|
+
}
|
|
54739
|
+
else {
|
|
54740
|
+
_this._notifierService.showWarning('Bạn không có quyền xem bản ghi');
|
|
54741
|
+
}
|
|
54742
|
+
}).catch(function (err) {
|
|
54743
|
+
console.error('error on get detail from querystring', err);
|
|
54744
|
+
_this._notifierService.showWarning('Không tìm thấy bản ghi cần xem chi tiết');
|
|
54745
|
+
});
|
|
54746
|
+
}
|
|
54747
|
+
}
|
|
54748
|
+
};
|
|
54749
|
+
TreeListBase.prototype.loadDetailPid = function (pid) {
|
|
54750
|
+
var _this = this;
|
|
54751
|
+
this.setting.baseService.getDetailByPid(pid)
|
|
54752
|
+
.then(function (res) { return _this.handleResponse(res, '', function (f) {
|
|
54753
|
+
if (!res.data) {
|
|
54754
|
+
_this._notifierService.showWarning('Không tìm thấy bản ghi cần xem chi tiết');
|
|
54755
|
+
}
|
|
54756
|
+
if ((res.data.basePermission & exports.PermissionBase.EDIT) == exports.PermissionBase.EDIT
|
|
54757
|
+
|| (res.data.basePermission & exports.PermissionBase.READ) == exports.PermissionBase.READ) {
|
|
54758
|
+
res.data.pid = pid;
|
|
54759
|
+
res.data.basePermissionByPid = res.data.basePermission;
|
|
54760
|
+
_this._edit(res.data);
|
|
54761
|
+
}
|
|
54762
|
+
else {
|
|
54763
|
+
_this._notifierService.showWarning('Bạn không có quyền xem bản ghi');
|
|
54764
|
+
}
|
|
54765
|
+
}); }).catch(function (err) {
|
|
54766
|
+
console.error('error on get detail from querystring', err);
|
|
54767
|
+
_this._notifierService.showWarning('Không tìm thấy bản ghi cần xem chi tiết');
|
|
54768
|
+
});
|
|
54769
|
+
};
|
|
54770
|
+
TreeListBase.prototype.ngAfterViewInit = function () {
|
|
54771
|
+
this.handleAfterViewInit();
|
|
54772
|
+
};
|
|
54773
|
+
TreeListBase.prototype.ngOnDestroy = function () {
|
|
54774
|
+
_super.prototype.ngOnDestroy.call(this);
|
|
54775
|
+
clearTimeout(this.loadingTimeout);
|
|
54776
|
+
};
|
|
54777
|
+
TreeListBase.prototype.handleAfterViewInit = function () {
|
|
54778
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54779
|
+
return __generator(this, function (_a) {
|
|
54780
|
+
this.countReady++;
|
|
54781
|
+
if (this.countReady > 1) {
|
|
54782
|
+
this.model.baseReady = true;
|
|
54783
|
+
this._triggerProcessData();
|
|
54784
|
+
}
|
|
54785
|
+
this.loadItemFromQueryParam();
|
|
54786
|
+
return [2 /*return*/];
|
|
54787
|
+
});
|
|
54788
|
+
});
|
|
54789
|
+
};
|
|
54790
|
+
TreeListBase.prototype.getMenuButtons = function (rowData) {
|
|
54791
|
+
this.rowDataCurrent = rowData;
|
|
54792
|
+
return [];
|
|
54793
|
+
};
|
|
54794
|
+
TreeListBase.prototype._add = function (evt) {
|
|
54795
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54796
|
+
var resultValidate;
|
|
54797
|
+
return __generator(this, function (_a) {
|
|
54798
|
+
switch (_a.label) {
|
|
54799
|
+
case 0: return [4 /*yield*/, this.validateAdd()];
|
|
54800
|
+
case 1:
|
|
54801
|
+
resultValidate = _a.sent();
|
|
54802
|
+
if (!resultValidate) {
|
|
54803
|
+
return [2 /*return*/];
|
|
54804
|
+
}
|
|
54805
|
+
this.formModel.data = {};
|
|
54806
|
+
this.formModel.formState = exports.FormState.ADD;
|
|
54807
|
+
return [4 /*yield*/, this.beforeAdd()];
|
|
54808
|
+
case 2:
|
|
54809
|
+
_a.sent();
|
|
54810
|
+
this.setting.popupHeader = "Th\u00EAm m\u1EDBi " + this.setting.objectName;
|
|
54811
|
+
this.setting.maskClass = null;
|
|
54812
|
+
this.showDetailForm = true;
|
|
54813
|
+
return [2 /*return*/];
|
|
54814
|
+
}
|
|
54815
|
+
});
|
|
54816
|
+
});
|
|
54817
|
+
};
|
|
54818
|
+
TreeListBase.prototype.validateAdd = function () {
|
|
54819
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54820
|
+
return __generator(this, function (_a) {
|
|
54821
|
+
return [2 /*return*/, true];
|
|
54822
|
+
});
|
|
54823
|
+
});
|
|
54824
|
+
};
|
|
54825
|
+
TreeListBase.prototype.beforeAdd = function () {
|
|
54826
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54827
|
+
return __generator(this, function (_a) {
|
|
54828
|
+
return [2 /*return*/];
|
|
54829
|
+
});
|
|
54830
|
+
});
|
|
54831
|
+
};
|
|
54832
|
+
TreeListBase.prototype._view = function (rowData) {
|
|
54833
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54834
|
+
return __generator(this, function (_a) {
|
|
54835
|
+
switch (_a.label) {
|
|
54836
|
+
case 0:
|
|
54837
|
+
if (!(rowData.basePermission & exports.PermissionBase.EDIT)) return [3 /*break*/, 1];
|
|
54838
|
+
this._edit(rowData);
|
|
54839
|
+
return [3 /*break*/, 4];
|
|
54840
|
+
case 1:
|
|
54841
|
+
this.formModel.formState = exports.FormState.VIEW;
|
|
54842
|
+
return [4 /*yield*/, this.beforeView()];
|
|
54843
|
+
case 2:
|
|
54844
|
+
_a.sent();
|
|
54845
|
+
this.setting.popupHeader = "Chi ti\u1EBFt " + this.setting.objectName;
|
|
54846
|
+
this.setting.maskClass = null;
|
|
54847
|
+
this.formModel.data = this.cloneData(rowData);
|
|
54848
|
+
return [4 /*yield*/, this.modifyViewModel(rowData)];
|
|
54849
|
+
case 3:
|
|
54850
|
+
_a.sent();
|
|
54851
|
+
this.showDetailForm = true;
|
|
54852
|
+
_a.label = 4;
|
|
54853
|
+
case 4: return [2 /*return*/];
|
|
54854
|
+
}
|
|
54855
|
+
});
|
|
54856
|
+
});
|
|
54857
|
+
};
|
|
54858
|
+
TreeListBase.prototype.beforeView = function () {
|
|
54859
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54860
|
+
return __generator(this, function (_a) {
|
|
54861
|
+
return [2 /*return*/];
|
|
54862
|
+
});
|
|
54863
|
+
});
|
|
54864
|
+
};
|
|
54865
|
+
TreeListBase.prototype.modifyViewModel = function (rowData) {
|
|
54866
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54867
|
+
return __generator(this, function (_a) {
|
|
54868
|
+
return [2 /*return*/];
|
|
54869
|
+
});
|
|
54870
|
+
});
|
|
54871
|
+
};
|
|
54872
|
+
TreeListBase.prototype._copyLinkMultiple = function () {
|
|
54873
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54874
|
+
var paths, _a, _b, item, _c, _d, e_1_1;
|
|
54875
|
+
var e_1, _e;
|
|
54876
|
+
return __generator(this, function (_f) {
|
|
54877
|
+
switch (_f.label) {
|
|
54878
|
+
case 0:
|
|
54879
|
+
paths = [];
|
|
54880
|
+
_f.label = 1;
|
|
54881
|
+
case 1:
|
|
54882
|
+
_f.trys.push([1, 6, 7, 8]);
|
|
54883
|
+
_a = __values(this.model.selectedItems), _b = _a.next();
|
|
54884
|
+
_f.label = 2;
|
|
54885
|
+
case 2:
|
|
54886
|
+
if (!!_b.done) return [3 /*break*/, 5];
|
|
54887
|
+
item = _b.value;
|
|
54888
|
+
_d = (_c = paths).push;
|
|
54889
|
+
return [4 /*yield*/, this.getCopyPath(this.setting, item)];
|
|
54890
|
+
case 3:
|
|
54891
|
+
_d.apply(_c, [_f.sent()]);
|
|
54892
|
+
_f.label = 4;
|
|
54893
|
+
case 4:
|
|
54894
|
+
_b = _a.next();
|
|
54895
|
+
return [3 /*break*/, 2];
|
|
54896
|
+
case 5: return [3 /*break*/, 8];
|
|
54897
|
+
case 6:
|
|
54898
|
+
e_1_1 = _f.sent();
|
|
54899
|
+
e_1 = { error: e_1_1 };
|
|
54900
|
+
return [3 /*break*/, 8];
|
|
54901
|
+
case 7:
|
|
54902
|
+
try {
|
|
54903
|
+
if (_b && !_b.done && (_e = _a.return)) _e.call(_a);
|
|
54904
|
+
}
|
|
54905
|
+
finally { if (e_1) throw e_1.error; }
|
|
54906
|
+
return [7 /*endfinally*/];
|
|
54907
|
+
case 8:
|
|
54908
|
+
this._commonService.copyByStorage(paths.join('\r\n'));
|
|
54909
|
+
this._notifierService.showSuccess('Đã sao chép các liên kết đã chọn');
|
|
54910
|
+
return [2 /*return*/];
|
|
54911
|
+
}
|
|
54912
|
+
});
|
|
54913
|
+
});
|
|
54914
|
+
};
|
|
54915
|
+
TreeListBase.prototype._copyLink = function (rowData) {
|
|
54916
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54917
|
+
var path;
|
|
54918
|
+
return __generator(this, function (_a) {
|
|
54919
|
+
switch (_a.label) {
|
|
54920
|
+
case 0: return [4 /*yield*/, this.getCopyPath(this.setting, rowData)];
|
|
54921
|
+
case 1:
|
|
54922
|
+
path = _a.sent();
|
|
54923
|
+
this._commonService.copyByStorage(path);
|
|
54924
|
+
this._notifierService.showSuccess('Đã sao chép liên kết');
|
|
54925
|
+
return [2 /*return*/];
|
|
54926
|
+
}
|
|
54927
|
+
});
|
|
54928
|
+
});
|
|
54929
|
+
};
|
|
54930
|
+
TreeListBase.prototype._edit = function (rowData, scopeDataEdit) {
|
|
54931
|
+
if (scopeDataEdit === void 0) { scopeDataEdit = {}; }
|
|
54932
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54933
|
+
var flashShow;
|
|
54934
|
+
return __generator(this, function (_a) {
|
|
54935
|
+
switch (_a.label) {
|
|
54936
|
+
case 0:
|
|
54937
|
+
flashShow = rowData[KeyFlashShow];
|
|
54938
|
+
delete rowData[KeyFlashShow];
|
|
54939
|
+
return [4 /*yield*/, this.beforeEdit()];
|
|
54940
|
+
case 1:
|
|
54941
|
+
_a.sent();
|
|
54942
|
+
this.formModel.formState = exports.FormState.EDIT;
|
|
54943
|
+
this.setting.popupHeader = "Chi ti\u1EBFt " + this.setting.objectName;
|
|
54944
|
+
this.setting.maskClass = flashShow ? 'hide' : null;
|
|
54945
|
+
this.scopeDataEdit = scopeDataEdit;
|
|
54946
|
+
this.formModel.data = this.cloneData(rowData);
|
|
54947
|
+
return [4 /*yield*/, this.modifyEditModel(rowData)];
|
|
54948
|
+
case 2:
|
|
54949
|
+
_a.sent();
|
|
54950
|
+
this.formModel.data[KeyFlashShow] = flashShow;
|
|
54951
|
+
this.showDetailForm = true;
|
|
54952
|
+
return [2 /*return*/];
|
|
54953
|
+
}
|
|
54954
|
+
});
|
|
54955
|
+
});
|
|
54956
|
+
};
|
|
54957
|
+
TreeListBase.prototype.beforeEdit = function () {
|
|
54958
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54959
|
+
return __generator(this, function (_a) {
|
|
54960
|
+
return [2 /*return*/];
|
|
54961
|
+
});
|
|
54962
|
+
});
|
|
54963
|
+
};
|
|
54964
|
+
TreeListBase.prototype.modifyEditModel = function (rowData) {
|
|
54965
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54966
|
+
return __generator(this, function (_a) {
|
|
54967
|
+
return [2 /*return*/];
|
|
54968
|
+
});
|
|
54969
|
+
});
|
|
54970
|
+
};
|
|
54971
|
+
TreeListBase.prototype.cloneData = function (rowData) {
|
|
54972
|
+
return {
|
|
54973
|
+
pid: rowData.pid,
|
|
54974
|
+
basePermissionByPid: rowData.basePermissionByPid,
|
|
54975
|
+
id: rowData[this.setting.entityKey],
|
|
54976
|
+
basePermission: rowData.basePermission
|
|
54977
|
+
};
|
|
54978
|
+
};
|
|
54979
|
+
TreeListBase.prototype.getPromiseDeleteItem = function (rowData) {
|
|
54980
|
+
return this.setting.baseService.delete(rowData.id);
|
|
54981
|
+
};
|
|
54982
|
+
TreeListBase.prototype._delete = function (rowData) {
|
|
54983
|
+
var _this = this;
|
|
54984
|
+
if (rowData.__disableDelete) {
|
|
54985
|
+
return;
|
|
54986
|
+
}
|
|
54987
|
+
this._notifierService.showDeleteConfirm().then(function (rs) {
|
|
54988
|
+
if (!rs) {
|
|
54989
|
+
return;
|
|
54990
|
+
}
|
|
54991
|
+
if (_this.setting.baseService) {
|
|
54992
|
+
_this.getPromiseDeleteItem(rowData)
|
|
54993
|
+
.then(function (response) {
|
|
54994
|
+
if (response.success) {
|
|
54995
|
+
if (_this.setting.showVersionButton) {
|
|
54996
|
+
_this.context.fireEvent(ComCtxConstants.COMMON.RELOAD_DATA_VERSION, {}, true);
|
|
54997
|
+
}
|
|
54998
|
+
else {
|
|
54999
|
+
_this._triggerProcessData();
|
|
55000
|
+
}
|
|
55001
|
+
_this._notifierService.showDeleteDataSuccess();
|
|
55002
|
+
}
|
|
55003
|
+
else {
|
|
55004
|
+
_this._notifierService.showWarningByResponse(response);
|
|
55005
|
+
}
|
|
55006
|
+
}, function (error) {
|
|
55007
|
+
_this._notifierService.showDeleteDataError();
|
|
55008
|
+
});
|
|
55009
|
+
}
|
|
55010
|
+
});
|
|
55011
|
+
};
|
|
55012
|
+
TreeListBase.prototype.getPromiseDeleteItems = function (items) {
|
|
55013
|
+
var ids = items.map(function (x) { return x.id; }).join(',');
|
|
55014
|
+
return this.setting.baseService.deleteMany(ids);
|
|
55015
|
+
};
|
|
55016
|
+
TreeListBase.prototype._deleteMultiple = function (items) {
|
|
55017
|
+
var _this = this;
|
|
55018
|
+
this._notifierService.showDeleteConfirm().then(function (rs) {
|
|
55019
|
+
if (!rs) {
|
|
55020
|
+
return;
|
|
55021
|
+
}
|
|
55022
|
+
if (_this.setting.baseService) {
|
|
55023
|
+
_this.getPromiseDeleteItems(items).then(function (response) {
|
|
55024
|
+
if (response.success) {
|
|
55025
|
+
_this._triggerProcessData();
|
|
55026
|
+
_this._notifierService.showDeleteDataSuccess();
|
|
55027
|
+
}
|
|
55028
|
+
else {
|
|
55029
|
+
_this._notifierService.showWarningByResponse(response);
|
|
55030
|
+
}
|
|
55031
|
+
});
|
|
55032
|
+
}
|
|
55033
|
+
});
|
|
55034
|
+
};
|
|
55035
|
+
TreeListBase.prototype.onBeforeCancel = function () {
|
|
55036
|
+
};
|
|
55037
|
+
TreeListBase.prototype._handleSaved = function () {
|
|
55038
|
+
this.showDetailForm = false;
|
|
55039
|
+
this._triggerProcessData();
|
|
55040
|
+
};
|
|
55041
|
+
TreeListBase.prototype._handleCancel = function ($event) {
|
|
55042
|
+
this.onBeforeCancel();
|
|
55043
|
+
this.showDetailForm = false;
|
|
55044
|
+
};
|
|
55045
|
+
TreeListBase.prototype.getEntityMetadata = function () {
|
|
55046
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55047
|
+
return __generator(this, function (_a) {
|
|
55048
|
+
try {
|
|
55049
|
+
// if (this._entityMetadataService) {
|
|
55050
|
+
// this.setting.entityMetadataSetting.data = this._entityMetadataService.getWf1Setting();
|
|
55051
|
+
// return;
|
|
55052
|
+
// } else {
|
|
55053
|
+
// this.setting.entityMetadataService = this._injector.get(EntityMetadataService);
|
|
55054
|
+
// this._entityMetadataService = this.setting.entityMetadataService;
|
|
55055
|
+
// await this._entityMetadataService.load(this._baseService, this.context, true); // force load để đọc từ csdl
|
|
55056
|
+
// this.setting.entityMetadataSetting.data = this._entityMetadataService.getWf1Setting();
|
|
55057
|
+
// }
|
|
55058
|
+
}
|
|
55059
|
+
catch (e) {
|
|
55060
|
+
console.error('Please include EntityMetadataService in provider of component');
|
|
55061
|
+
}
|
|
55062
|
+
return [2 /*return*/, null];
|
|
55063
|
+
});
|
|
55064
|
+
});
|
|
55065
|
+
};
|
|
55066
|
+
TreeListBase.prototype.reload = function () {
|
|
55067
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55068
|
+
return __generator(this, function (_a) {
|
|
55069
|
+
this.crudList.reload();
|
|
55070
|
+
return [2 /*return*/];
|
|
55071
|
+
});
|
|
55072
|
+
});
|
|
55073
|
+
};
|
|
55074
|
+
TreeListBase.prototype._triggerProcessData = function (gridInfo) {
|
|
55075
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55076
|
+
return __generator(this, function (_a) {
|
|
55077
|
+
switch (_a.label) {
|
|
55078
|
+
case 0: return [4 /*yield*/, this.processData(gridInfo)];
|
|
55079
|
+
case 1:
|
|
55080
|
+
_a.sent();
|
|
55081
|
+
return [2 /*return*/];
|
|
55082
|
+
}
|
|
55083
|
+
});
|
|
55084
|
+
});
|
|
55085
|
+
};
|
|
55086
|
+
TreeListBase.prototype.processData = function (gridInfo) {
|
|
55087
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55088
|
+
return __generator(this, function (_a) {
|
|
55089
|
+
this.readyToTrinhKy = false;
|
|
55090
|
+
if (this.hasCrudList) {
|
|
55091
|
+
if (!this.crudList) {
|
|
55092
|
+
return [2 /*return*/];
|
|
55093
|
+
}
|
|
55094
|
+
if (!gridInfo) {
|
|
55095
|
+
gridInfo = this.crudList.getGridInfo();
|
|
55096
|
+
}
|
|
55097
|
+
}
|
|
55098
|
+
else {
|
|
55099
|
+
if (!gridInfo) {
|
|
55100
|
+
gridInfo = new GridInfo({
|
|
55101
|
+
pageInfo: {
|
|
55102
|
+
page: 1,
|
|
55103
|
+
pageSize: 999
|
|
55104
|
+
},
|
|
55105
|
+
filters: [],
|
|
55106
|
+
sorts: []
|
|
55107
|
+
});
|
|
55108
|
+
}
|
|
55109
|
+
}
|
|
55110
|
+
this.getData(gridInfo);
|
|
55111
|
+
return [2 /*return*/];
|
|
55112
|
+
});
|
|
55113
|
+
});
|
|
55114
|
+
};
|
|
55115
|
+
TreeListBase.prototype.modifyGridInfo = function (gridInfo) {
|
|
55116
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55117
|
+
return __generator(this, function (_a) {
|
|
55118
|
+
return [2 /*return*/, true];
|
|
55119
|
+
});
|
|
55120
|
+
});
|
|
55121
|
+
};
|
|
55122
|
+
TreeListBase.prototype.getData = function (gridInfo) {
|
|
55123
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55124
|
+
var resultModify;
|
|
55125
|
+
var _this = this;
|
|
55126
|
+
return __generator(this, function (_a) {
|
|
55127
|
+
switch (_a.label) {
|
|
55128
|
+
case 0:
|
|
55129
|
+
if (!(this.setting.baseService && this.model.ready)) return [3 /*break*/, 2];
|
|
55130
|
+
this._markLoading();
|
|
55131
|
+
gridInfo.modifyFilter(WorkflowFieldStateCode, function (filter) {
|
|
55132
|
+
if (filter.value) {
|
|
55133
|
+
var hasNullValue_1 = false;
|
|
55134
|
+
var restValues_1 = [];
|
|
55135
|
+
JSON.parse(filter.value).forEach(function (value) {
|
|
55136
|
+
if (value === null) {
|
|
55137
|
+
hasNullValue_1 = true;
|
|
55138
|
+
}
|
|
55139
|
+
else {
|
|
55140
|
+
restValues_1.push(value);
|
|
55141
|
+
}
|
|
55142
|
+
});
|
|
55143
|
+
if (hasNullValue_1) {
|
|
55144
|
+
if (restValues_1.length == 0) {
|
|
55145
|
+
filter.operator = exports.Operator.isNull;
|
|
55146
|
+
return;
|
|
55147
|
+
}
|
|
55148
|
+
filter.logic = 'or';
|
|
55149
|
+
filter.field = null;
|
|
55150
|
+
filter.value = null;
|
|
55151
|
+
filter.operator = null;
|
|
55152
|
+
filter.filters = [
|
|
55153
|
+
_this.newFilter(WorkflowFieldStateCode, exports.Operator.isNull, ''),
|
|
55154
|
+
_this.newFilter(WorkflowFieldStateCode, exports.Operator.in, restValues_1)
|
|
55155
|
+
];
|
|
55156
|
+
}
|
|
55157
|
+
}
|
|
55158
|
+
});
|
|
55159
|
+
return [4 /*yield*/, this.modifyGridInfo(gridInfo)];
|
|
55160
|
+
case 1:
|
|
55161
|
+
resultModify = _a.sent();
|
|
55162
|
+
if (resultModify === false) {
|
|
55163
|
+
this.model.dataSource = [];
|
|
55164
|
+
this.model.total = 0;
|
|
55165
|
+
this.model.expandedRowKeys = {};
|
|
55166
|
+
this._unmarkLoading();
|
|
55167
|
+
return [2 /*return*/];
|
|
55168
|
+
}
|
|
55169
|
+
this.doGetRequest(gridInfo);
|
|
55170
|
+
_a.label = 2;
|
|
55171
|
+
case 2: return [2 /*return*/];
|
|
55172
|
+
}
|
|
55173
|
+
});
|
|
55174
|
+
});
|
|
55175
|
+
};
|
|
55176
|
+
TreeListBase.prototype._markLoading = function () {
|
|
55177
|
+
var _this = this;
|
|
55178
|
+
this.model.loading = true;
|
|
55179
|
+
if (this.crudList) {
|
|
55180
|
+
this.crudList.adjustPositionLoadingMask();
|
|
55181
|
+
}
|
|
55182
|
+
clearTimeout(this.loadingTimeout);
|
|
55183
|
+
this.loadingTimeout = setTimeout(function () {
|
|
55184
|
+
_this._notifierService.showWarning('Máy chủ phản hồi quá lâu, vui lòng kiểm tra lại đường truyền mạng!');
|
|
55185
|
+
_this.model.loading = false;
|
|
55186
|
+
}, 20000);
|
|
55187
|
+
};
|
|
55188
|
+
TreeListBase.prototype._handleReloaded = function (evt) {
|
|
55189
|
+
if (evt === void 0) { evt = null; }
|
|
55190
|
+
this._unmarkLoading();
|
|
55191
|
+
this.afterReloaded();
|
|
55192
|
+
};
|
|
55193
|
+
TreeListBase.prototype.afterReloaded = function () {
|
|
55194
|
+
return __awaiter(this, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
55195
|
+
return [2 /*return*/];
|
|
55196
|
+
}); });
|
|
55197
|
+
};
|
|
55198
|
+
TreeListBase.prototype._unmarkLoading = function () {
|
|
55199
|
+
clearTimeout(this.loadingTimeout);
|
|
55200
|
+
this.model.loading = false;
|
|
55201
|
+
};
|
|
55202
|
+
TreeListBase.prototype.fireDataLoaded = function (success) {
|
|
55203
|
+
if (success === void 0) { success = true; }
|
|
55204
|
+
if (success && this.crudList) {
|
|
55205
|
+
this.crudList.processBaseData();
|
|
55206
|
+
}
|
|
55207
|
+
this._unmarkLoading();
|
|
55208
|
+
};
|
|
55209
|
+
TreeListBase.prototype.getPromiseGetData = function (gridInfo) {
|
|
55210
|
+
return this.setting.baseService.baseGetTreeData(gridInfo, this.plusUrl);
|
|
55211
|
+
};
|
|
55212
|
+
TreeListBase.prototype.getDataCustom = function (gridInfo) {
|
|
55213
|
+
};
|
|
55214
|
+
TreeListBase.prototype.doGetRequest = function (gridInfo) {
|
|
55215
|
+
var _this = this;
|
|
55216
|
+
if (!this.customGetData) {
|
|
55217
|
+
if (this.setting.baseService) {
|
|
55218
|
+
this.getPromiseGetData(gridInfo)
|
|
55219
|
+
.then(function (response) { return __awaiter(_this, void 0, void 0, function () {
|
|
55220
|
+
return __generator(this, function (_a) {
|
|
55221
|
+
switch (_a.label) {
|
|
55222
|
+
case 0:
|
|
55223
|
+
if (!response.success) return [3 /*break*/, 2];
|
|
55224
|
+
return [4 /*yield*/, this.processGetData(response)];
|
|
55225
|
+
case 1:
|
|
55226
|
+
_a.sent();
|
|
55227
|
+
this.fireDataLoaded();
|
|
55228
|
+
return [3 /*break*/, 3];
|
|
55229
|
+
case 2:
|
|
55230
|
+
this._notifierService.showWarning(response.message);
|
|
55231
|
+
this.fireDataLoaded(false);
|
|
55232
|
+
_a.label = 3;
|
|
55233
|
+
case 3: return [2 /*return*/];
|
|
55234
|
+
}
|
|
55235
|
+
});
|
|
55236
|
+
}); }, function (error) {
|
|
55237
|
+
_this._notifierService.showHttpUnknowError();
|
|
55238
|
+
_this.fireDataLoaded(false);
|
|
55239
|
+
});
|
|
55240
|
+
}
|
|
55241
|
+
}
|
|
55242
|
+
else {
|
|
55243
|
+
this.getDataCustom(gridInfo);
|
|
55244
|
+
}
|
|
55245
|
+
};
|
|
55246
|
+
TreeListBase.prototype.processGetData = function (response) {
|
|
55247
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55248
|
+
var dataSource, resetSelectedItems;
|
|
55249
|
+
return __generator(this, function (_a) {
|
|
55250
|
+
switch (_a.label) {
|
|
55251
|
+
case 0:
|
|
55252
|
+
this.model.expandedRowKeys = {};
|
|
55253
|
+
this.model.total = response.totalRecord;
|
|
55254
|
+
if (!(response.data && response.data.length > 0)) return [3 /*break*/, 2];
|
|
55255
|
+
return [4 /*yield*/, this.beforeRenderDataSource(response.data)];
|
|
55256
|
+
case 1:
|
|
55257
|
+
_a.sent();
|
|
55258
|
+
_a.label = 2;
|
|
55259
|
+
case 2: return [4 /*yield*/, this.afterProcessDataInBase(response.data)];
|
|
55260
|
+
case 3:
|
|
55261
|
+
_a.sent();
|
|
55262
|
+
dataSource = [];
|
|
55263
|
+
this.createTreeData(response.data, dataSource);
|
|
55264
|
+
this.model.dataSource = dataSource;
|
|
55265
|
+
resetSelectedItems = this.model.selectedItems && this.model.selectedItems.length;
|
|
55266
|
+
if (resetSelectedItems) {
|
|
55267
|
+
this.model.selectedItems.length = 0;
|
|
55268
|
+
}
|
|
55269
|
+
return [4 /*yield*/, this.afterGetData()];
|
|
55270
|
+
case 4:
|
|
55271
|
+
_a.sent();
|
|
55272
|
+
this._getRefDataDropdown(this.model.dataSource);
|
|
55273
|
+
return [2 /*return*/];
|
|
55274
|
+
}
|
|
55275
|
+
});
|
|
55276
|
+
});
|
|
55277
|
+
};
|
|
55278
|
+
TreeListBase.prototype.beforeRenderDataSource = function (datasource) {
|
|
55279
|
+
return datasource;
|
|
55280
|
+
};
|
|
55281
|
+
TreeListBase.prototype.afterProcessDataInBase = function (dataSource) {
|
|
55282
|
+
if (dataSource === void 0) { dataSource = []; }
|
|
55283
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55284
|
+
return __generator(this, function (_a) {
|
|
55285
|
+
return [2 /*return*/];
|
|
55286
|
+
});
|
|
55287
|
+
});
|
|
55288
|
+
};
|
|
55289
|
+
TreeListBase.prototype.createTreeData = function (dataSource, result, level, idParent, lstIdParent) {
|
|
55290
|
+
var _this = this;
|
|
55291
|
+
if (level === void 0) { level = 1; }
|
|
55292
|
+
if (idParent === void 0) { idParent = null; }
|
|
55293
|
+
if (lstIdParent === void 0) { lstIdParent = []; }
|
|
55294
|
+
dataSource.forEach(function (item) {
|
|
55295
|
+
if (item[_this.fieldParent] != idParent)
|
|
55296
|
+
return;
|
|
55297
|
+
// Bị vòng lặp vô hạn
|
|
55298
|
+
if (lstIdParent.indexOf(item.id) > -1)
|
|
55299
|
+
return;
|
|
55300
|
+
var node = {
|
|
55301
|
+
data: item,
|
|
55302
|
+
label: item.ten,
|
|
55303
|
+
expanded: level <= _this.levelOpen,
|
|
55304
|
+
level: level,
|
|
55305
|
+
children: []
|
|
55306
|
+
};
|
|
55307
|
+
result.push(node);
|
|
55308
|
+
_this.createTreeData(dataSource, node.children, level + 1, node.data.id, __spread(lstIdParent, [item.id]));
|
|
55309
|
+
});
|
|
55310
|
+
return result;
|
|
55311
|
+
};
|
|
55312
|
+
TreeListBase.prototype.afterGetData = function () {
|
|
55313
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55314
|
+
return __generator(this, function (_a) {
|
|
55315
|
+
return [2 /*return*/];
|
|
55316
|
+
});
|
|
55317
|
+
});
|
|
55318
|
+
};
|
|
55319
|
+
TreeListBase.prototype._getRefDataDropdown = function (dataSource) {
|
|
55320
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
55321
|
+
var arrPromiseDontNeedWait, arrSchemaDontNeedWait, _loop_1, this_1, _a, _b, schema, e_2_1, arrRes_1;
|
|
55322
|
+
var e_2, _c;
|
|
55323
|
+
var _this = this;
|
|
55324
|
+
return __generator(this, function (_d) {
|
|
55325
|
+
switch (_d.label) {
|
|
55326
|
+
case 0:
|
|
55327
|
+
if (!(dataSource && dataSource.length > 0)) return [3 /*break*/, 12];
|
|
55328
|
+
if (!this.setting.advanceData.fieldNeedGetRef) return [3 /*break*/, 11];
|
|
55329
|
+
arrPromiseDontNeedWait = [];
|
|
55330
|
+
arrSchemaDontNeedWait = [];
|
|
55331
|
+
_loop_1 = function (schema) {
|
|
55332
|
+
var field, arrValue_1, promise, result, funcGetLabel_1;
|
|
55333
|
+
return __generator(this, function (_a) {
|
|
55334
|
+
switch (_a.label) {
|
|
55335
|
+
case 0:
|
|
55336
|
+
field = schema.field;
|
|
55337
|
+
if (!(schema[KeyFieldGetRefType] == exports.EnumGetRefType.SERVER)) return [3 /*break*/, 4];
|
|
55338
|
+
if (!(schema.forceGetData
|
|
55339
|
+
|| (this_1.setting.groupColumn && this_1.setting.groupColumn.rawColumn && this_1.setting.groupColumn.rawColumn.field == schema.field)
|
|
55340
|
+
|| this_1.setting.cols.some(function (item) { return item.field == 'str' + field && item.visible != false; }))) return [3 /*break*/, 3];
|
|
55341
|
+
arrValue_1 = [];
|
|
55342
|
+
dataSource.forEach(function (itemData) {
|
|
55343
|
+
var currentValue = itemData[field];
|
|
55344
|
+
if (currentValue != null) {
|
|
55345
|
+
if (schema.multiple) {
|
|
55346
|
+
var ids = currentValue;
|
|
55347
|
+
if (!Array.isArray(ids)) {
|
|
55348
|
+
ids = ids.split(',');
|
|
55349
|
+
}
|
|
55350
|
+
ids.forEach(function (id) {
|
|
55351
|
+
if (!id)
|
|
55352
|
+
return;
|
|
55353
|
+
if (!arrValue_1.some(function (p) { return p == id; })) {
|
|
55354
|
+
arrValue_1.push(id);
|
|
55355
|
+
}
|
|
55356
|
+
});
|
|
55357
|
+
}
|
|
55358
|
+
else if (!arrValue_1.some(function (p) { return p == currentValue; })) {
|
|
55359
|
+
arrValue_1.push(currentValue);
|
|
55360
|
+
}
|
|
55361
|
+
}
|
|
55362
|
+
});
|
|
55363
|
+
if (!(arrValue_1.length > 0)) return [3 /*break*/, 3];
|
|
55364
|
+
promise = null;
|
|
55365
|
+
if (schema.baseService instanceof MasterDataService) {
|
|
55366
|
+
promise = schema.baseService.getDataDropdown(schema.groupCode, arrValue_1, this_1.createDropdownOptions(schema));
|
|
55367
|
+
}
|
|
55368
|
+
else {
|
|
55369
|
+
promise = schema.baseService.getDataDropdownByFilter([this_1.newFilter(schema.valueField, exports.Operator.in, arrValue_1)], this_1.createDropdownOptions(schema));
|
|
55370
|
+
}
|
|
55371
|
+
if (!(schema.order != null)) return [3 /*break*/, 2];
|
|
55372
|
+
return [4 /*yield*/, promise];
|
|
55373
|
+
case 1:
|
|
55374
|
+
result = _a.sent();
|
|
55375
|
+
this_1.mergeRefDataToDatasource(dataSource, schema, result);
|
|
55376
|
+
return [3 /*break*/, 3];
|
|
55377
|
+
case 2:
|
|
55378
|
+
arrPromiseDontNeedWait.push(promise);
|
|
55379
|
+
arrSchemaDontNeedWait.push(schema);
|
|
55380
|
+
_a.label = 3;
|
|
55381
|
+
case 3: return [3 /*break*/, 5];
|
|
55382
|
+
case 4:
|
|
55383
|
+
funcGetLabel_1 = function (item) { return item[schema.displayFieldInGrid] || item['label']; };
|
|
55384
|
+
if (schema.funcGetLabel) {
|
|
55385
|
+
funcGetLabel_1 = schema.funcGetLabel;
|
|
55386
|
+
}
|
|
55387
|
+
dataSource.forEach(function (itemData) {
|
|
55388
|
+
var refItem = schema.dataSource.find(function (i) { return schema.funcCompare(i, itemData[field]); });
|
|
55389
|
+
if (refItem != null) {
|
|
55390
|
+
itemData['str' + field] = funcGetLabel_1(refItem);
|
|
55391
|
+
}
|
|
55392
|
+
});
|
|
55393
|
+
_a.label = 5;
|
|
55394
|
+
case 5: return [2 /*return*/];
|
|
55395
|
+
}
|
|
55396
|
+
});
|
|
55397
|
+
};
|
|
55398
|
+
this_1 = this;
|
|
55399
|
+
_d.label = 1;
|
|
55400
|
+
case 1:
|
|
55401
|
+
_d.trys.push([1, 6, 7, 8]);
|
|
55402
|
+
_a = __values(this.setting.advanceData.fieldNeedGetRef), _b = _a.next();
|
|
55403
|
+
_d.label = 2;
|
|
55404
|
+
case 2:
|
|
55405
|
+
if (!!_b.done) return [3 /*break*/, 5];
|
|
55406
|
+
schema = _b.value;
|
|
55407
|
+
return [5 /*yield**/, _loop_1(schema)];
|
|
55408
|
+
case 3:
|
|
55409
|
+
_d.sent();
|
|
55410
|
+
_d.label = 4;
|
|
55411
|
+
case 4:
|
|
55412
|
+
_b = _a.next();
|
|
55413
|
+
return [3 /*break*/, 2];
|
|
55414
|
+
case 5: return [3 /*break*/, 8];
|
|
55415
|
+
case 6:
|
|
55416
|
+
e_2_1 = _d.sent();
|
|
55417
|
+
e_2 = { error: e_2_1 };
|
|
55418
|
+
return [3 /*break*/, 8];
|
|
55419
|
+
case 7:
|
|
55420
|
+
try {
|
|
55421
|
+
if (_b && !_b.done && (_c = _a.return)) _c.call(_a);
|
|
55422
|
+
}
|
|
55423
|
+
finally { if (e_2) throw e_2.error; }
|
|
55424
|
+
return [7 /*endfinally*/];
|
|
55425
|
+
case 8:
|
|
55426
|
+
if (!(arrPromiseDontNeedWait.length > 0)) return [3 /*break*/, 10];
|
|
55427
|
+
return [4 /*yield*/, Promise.all(arrPromiseDontNeedWait)];
|
|
55428
|
+
case 9:
|
|
55429
|
+
arrRes_1 = _d.sent();
|
|
55430
|
+
arrSchemaDontNeedWait.forEach(function (schema, index) {
|
|
55431
|
+
_this.mergeRefDataToDatasource(dataSource, schema, arrRes_1[index]);
|
|
55432
|
+
});
|
|
55433
|
+
_d.label = 10;
|
|
55434
|
+
case 10:
|
|
55435
|
+
this.afterGetRefDataDropdown(null);
|
|
55436
|
+
this.readyToTrinhKy = true;
|
|
55437
|
+
return [3 /*break*/, 12];
|
|
55438
|
+
case 11:
|
|
55439
|
+
this.readyToTrinhKy = true;
|
|
55440
|
+
_d.label = 12;
|
|
55441
|
+
case 12: return [2 /*return*/];
|
|
55442
|
+
}
|
|
55443
|
+
});
|
|
55444
|
+
});
|
|
55445
|
+
};
|
|
55446
|
+
TreeListBase.prototype.mergeRefDataToDatasource = function (dataSource, schema, data) {
|
|
55447
|
+
var field = schema.field;
|
|
55448
|
+
var funcGetLabel = function (item) { return item[schema.displayFieldInGrid] || item['ten']; };
|
|
55449
|
+
if (schema.funcGetLabel) {
|
|
55450
|
+
funcGetLabel = schema.funcGetLabel;
|
|
55451
|
+
}
|
|
55452
|
+
var funcSetValueRow = function (rowItem, data) { };
|
|
55453
|
+
var funcGetRefDataRow = function (refItems) {
|
|
55454
|
+
return refItems.map(function (item) { return funcGetLabel(item); }).join(schema.separator + " ");
|
|
55455
|
+
};
|
|
55456
|
+
if (schema.funcSetValueRow) {
|
|
55457
|
+
funcSetValueRow = schema.funcSetValueRow;
|
|
55458
|
+
}
|
|
55459
|
+
if (schema.funcGetRefDataRow) {
|
|
55460
|
+
funcGetRefDataRow = schema.funcGetRefDataRow;
|
|
55461
|
+
}
|
|
55462
|
+
if (schema.multiple) {
|
|
55463
|
+
dataSource.forEach(function (itemData) {
|
|
55464
|
+
if (itemData[field] != null) {
|
|
55465
|
+
var ids_1 = itemData[field];
|
|
55466
|
+
if (!Array.isArray(ids_1)) {
|
|
55467
|
+
ids_1 = ids_1.split(',');
|
|
55468
|
+
}
|
|
55469
|
+
var refItems = data.filter(function (i) { return ids_1.some(function (q) { return schema.funcCompare(i, q); }); });
|
|
55470
|
+
if (refItems.length > 0) {
|
|
55471
|
+
itemData['str' + field] = funcGetRefDataRow(refItems);
|
|
55472
|
+
funcSetValueRow(itemData, refItems);
|
|
55473
|
+
}
|
|
55474
|
+
}
|
|
55475
|
+
});
|
|
55476
|
+
}
|
|
55477
|
+
else {
|
|
55478
|
+
dataSource.forEach(function (itemData) {
|
|
55479
|
+
if (itemData[field] != null) {
|
|
55480
|
+
var refItem = data.find(function (i) { return schema.funcCompare(i, itemData[field]); });
|
|
55481
|
+
if (refItem != null) {
|
|
55482
|
+
itemData['str' + field] = funcGetLabel(refItem);
|
|
55483
|
+
funcSetValueRow(itemData, refItem);
|
|
55484
|
+
}
|
|
55485
|
+
}
|
|
55486
|
+
});
|
|
55487
|
+
}
|
|
55488
|
+
this.afterGetRefDataDropdown(field);
|
|
55489
|
+
};
|
|
55490
|
+
TreeListBase.prototype.createDropdownOptions = function (schema) {
|
|
55491
|
+
return new DropdownOptions({
|
|
55492
|
+
displayField: schema.displayField,
|
|
55493
|
+
valueField: schema.valueField,
|
|
55494
|
+
fieldPlus: schema.fieldPlus,
|
|
55495
|
+
fieldTree: schema.fieldTree,
|
|
55496
|
+
fieldParentTreeItem: schema.fieldParentTreeItem,
|
|
55497
|
+
funcGetLabel: schema.funcGetLabel,
|
|
55498
|
+
sortField: schema.sortField,
|
|
55499
|
+
sortDir: schema.sortDir,
|
|
55500
|
+
callbackDataFinish: schema.callbackDataFinish
|
|
55501
|
+
});
|
|
55502
|
+
};
|
|
55503
|
+
TreeListBase.prototype.afterGetRefDataDropdown = function (field) {
|
|
55504
|
+
};
|
|
55505
|
+
TreeListBase.prototype.mergeInfoToColumnSchema = function () {
|
|
55506
|
+
var _this = this;
|
|
55507
|
+
this.setting.cols.forEach(function (col) {
|
|
55508
|
+
var columnModelSchema = _this.setting.modelSchemas.find(function (p) { return p.field == col.field; });
|
|
55509
|
+
if (columnModelSchema) {
|
|
55510
|
+
col.label = columnModelSchema.name;
|
|
55511
|
+
col.fullLabel = columnModelSchema.fullName;
|
|
55512
|
+
if (!col.displayFieldInGrid) {
|
|
55513
|
+
col.displayFieldInGrid = col.displayField;
|
|
55514
|
+
}
|
|
55515
|
+
if (!col.dataType) {
|
|
55516
|
+
col.dataType = _this.getDataType(columnModelSchema.dataType);
|
|
55517
|
+
}
|
|
55518
|
+
}
|
|
55519
|
+
});
|
|
55520
|
+
};
|
|
55521
|
+
TreeListBase.prototype.getDataType = function (type) {
|
|
55522
|
+
return type;
|
|
55523
|
+
};
|
|
55524
|
+
TreeListBase.prototype.generateFieldSearchText = function () {
|
|
55525
|
+
var _this = this;
|
|
55526
|
+
this.setting.cols.forEach(function (col) {
|
|
55527
|
+
if (col.fullTextSearch) {
|
|
55528
|
+
_this.setting.fieldSearchText.push(col.field);
|
|
55529
|
+
}
|
|
55530
|
+
});
|
|
55531
|
+
if (this.setting.fieldSearchText.length > 0) {
|
|
55532
|
+
var filters_1 = [];
|
|
55533
|
+
this.setting.fieldSearchText.forEach(function (field) {
|
|
55534
|
+
filters_1.push(new Filter({ field: field, operator: exports.Operator.contain, sourceField: '_k' }));
|
|
55535
|
+
});
|
|
55536
|
+
if (this.setting.filterTemplateAdvs) {
|
|
55537
|
+
this.setting.filterTemplateAdvs.splice(0, 0, new Filter({
|
|
55538
|
+
logic: 'or',
|
|
55539
|
+
filters: filters_1
|
|
55540
|
+
}));
|
|
55541
|
+
}
|
|
55542
|
+
}
|
|
55543
|
+
};
|
|
55544
|
+
return TreeListBase;
|
|
55545
|
+
}(ComponentBase));
|
|
55546
|
+
TreeListBase.decorators = [
|
|
55547
|
+
{ type: i0.Directive }
|
|
55548
|
+
];
|
|
55549
|
+
TreeListBase.ctorParameters = function () { return [
|
|
55550
|
+
{ type: i0.Injector }
|
|
55551
|
+
]; };
|
|
55552
|
+
TreeListBase.propDecorators = {
|
|
55553
|
+
content: [{ type: i0.ViewChild, args: [TreeTableComponent,] }],
|
|
55554
|
+
parentModel: [{ type: i0.Input }],
|
|
55555
|
+
loadDetailFromQueryParam: [{ type: i0.Input }]
|
|
55556
|
+
};
|
|
55557
|
+
|
|
54082
55558
|
var PermissionUtilsInterceptor = /** @class */ (function () {
|
|
54083
55559
|
function PermissionUtilsInterceptor(authenService, _moduleConfigService, _applicationContextService) {
|
|
54084
55560
|
this.authenService = authenService;
|
|
@@ -56209,6 +57685,7 @@
|
|
|
56209
57685
|
exports.TnReorderableRowDirective = TnReorderableRowDirective;
|
|
56210
57686
|
exports.TnSortIcon = TnSortIcon;
|
|
56211
57687
|
exports.TnSortableColumnDirective = TnSortableColumnDirective;
|
|
57688
|
+
exports.TnTreeTableToggler = TnTreeTableToggler;
|
|
56212
57689
|
exports.TnUser = TnUser;
|
|
56213
57690
|
exports.TnxSharedModule = TnxSharedModule;
|
|
56214
57691
|
exports.TopicReloadCongViecV5 = TopicReloadCongViecV5;
|
|
@@ -56217,6 +57694,7 @@
|
|
|
56217
57694
|
exports.TrangThaiMasterData = TrangThaiMasterData;
|
|
56218
57695
|
exports.TrangThais = TrangThais;
|
|
56219
57696
|
exports.TreeDataOption = TreeDataOption;
|
|
57697
|
+
exports.TreeListBase = TreeListBase;
|
|
56220
57698
|
exports.TrimCorrector = TrimCorrector;
|
|
56221
57699
|
exports.TrimEndCorrector = TrimEndCorrector;
|
|
56222
57700
|
exports.TrimStartCorrector = TrimStartCorrector;
|
|
@@ -56311,119 +57789,120 @@
|
|
|
56311
57789
|
exports.ɵ9 = ɵ9;
|
|
56312
57790
|
exports.ɵa = AddressComponent;
|
|
56313
57791
|
exports.ɵb = DropdownService;
|
|
56314
|
-
exports.ɵba =
|
|
56315
|
-
exports.ɵbb =
|
|
56316
|
-
exports.ɵbc =
|
|
56317
|
-
exports.ɵbd =
|
|
56318
|
-
exports.ɵbe =
|
|
56319
|
-
exports.ɵbf =
|
|
56320
|
-
exports.ɵbg =
|
|
56321
|
-
exports.ɵbh =
|
|
56322
|
-
exports.ɵbi =
|
|
56323
|
-
exports.ɵbj =
|
|
56324
|
-
exports.ɵbk =
|
|
56325
|
-
exports.ɵbl =
|
|
56326
|
-
exports.ɵbm =
|
|
56327
|
-
exports.ɵbn =
|
|
56328
|
-
exports.ɵbo =
|
|
56329
|
-
exports.ɵbp =
|
|
56330
|
-
exports.ɵbq =
|
|
56331
|
-
exports.ɵbr =
|
|
56332
|
-
exports.ɵbs =
|
|
56333
|
-
exports.ɵbt =
|
|
56334
|
-
exports.ɵbu =
|
|
56335
|
-
exports.ɵbv =
|
|
56336
|
-
exports.ɵbw =
|
|
56337
|
-
exports.ɵbx =
|
|
56338
|
-
exports.ɵby =
|
|
56339
|
-
exports.ɵbz =
|
|
57792
|
+
exports.ɵba = CongviecDinhkemService;
|
|
57793
|
+
exports.ɵbb = BaseCongviecDinhkemFormComponent;
|
|
57794
|
+
exports.ɵbc = DatetimePickerComponent;
|
|
57795
|
+
exports.ɵbd = DatetimePickerRangeComponent;
|
|
57796
|
+
exports.ɵbe = DynamicNodeComponent;
|
|
57797
|
+
exports.ɵbf = EntityPickerBoxComponent;
|
|
57798
|
+
exports.ɵbg = EntityPickerDataComponent;
|
|
57799
|
+
exports.ɵbh = EntityPickerSelectedComponent;
|
|
57800
|
+
exports.ɵbi = EntityPickerComponent;
|
|
57801
|
+
exports.ɵbj = EntityPickerDialogComponent;
|
|
57802
|
+
exports.ɵbk = EntityPermissionComponent;
|
|
57803
|
+
exports.ɵbl = DM_ChucVuService;
|
|
57804
|
+
exports.ɵbm = RoleService;
|
|
57805
|
+
exports.ɵbn = EntityPermissionService;
|
|
57806
|
+
exports.ɵbo = EquationEditorComponent;
|
|
57807
|
+
exports.ɵbp = MaskComponent;
|
|
57808
|
+
exports.ɵbq = NumberPickerRangeComponent;
|
|
57809
|
+
exports.ɵbr = PagingNextBackOnlyComponent;
|
|
57810
|
+
exports.ɵbs = RadioButtonListComponent;
|
|
57811
|
+
exports.ɵbt = VanBanPickerComponent;
|
|
57812
|
+
exports.ɵbu = VanBanDenService;
|
|
57813
|
+
exports.ɵbv = VanBanDiService;
|
|
57814
|
+
exports.ɵbw = VanBanPickerDialogComponent;
|
|
57815
|
+
exports.ɵbx = VanbanDiPickerComponent;
|
|
57816
|
+
exports.ɵby = VanbanDenPickerComponent;
|
|
57817
|
+
exports.ɵbz = CongViecPickerComponent;
|
|
56340
57818
|
exports.ɵc = EntityPickerService;
|
|
56341
|
-
exports.ɵca =
|
|
56342
|
-
exports.ɵcb =
|
|
56343
|
-
exports.ɵcc =
|
|
56344
|
-
exports.ɵcd =
|
|
56345
|
-
exports.ɵce =
|
|
56346
|
-
exports.ɵcf =
|
|
56347
|
-
exports.ɵcg =
|
|
56348
|
-
exports.ɵch =
|
|
56349
|
-
exports.ɵci =
|
|
56350
|
-
exports.ɵcj =
|
|
56351
|
-
exports.ɵck =
|
|
56352
|
-
exports.ɵcl =
|
|
56353
|
-
exports.ɵcm =
|
|
56354
|
-
exports.ɵcn =
|
|
56355
|
-
exports.ɵco =
|
|
56356
|
-
exports.ɵcp =
|
|
56357
|
-
exports.ɵcq =
|
|
56358
|
-
exports.ɵcr =
|
|
56359
|
-
exports.ɵcs =
|
|
56360
|
-
exports.ɵct =
|
|
56361
|
-
exports.ɵcu =
|
|
56362
|
-
exports.ɵcv =
|
|
56363
|
-
exports.ɵcw =
|
|
56364
|
-
exports.ɵcx =
|
|
56365
|
-
exports.ɵcy =
|
|
56366
|
-
exports.ɵcz =
|
|
57819
|
+
exports.ɵca = CongViecService$1;
|
|
57820
|
+
exports.ɵcb = TaskWorkflowHistoriesService;
|
|
57821
|
+
exports.ɵcc = SettingsComponent;
|
|
57822
|
+
exports.ɵcd = SettingsRowComponent;
|
|
57823
|
+
exports.ɵce = SettingsWorkflowComponent;
|
|
57824
|
+
exports.ɵcf = SettingsWorkflowNo1Component;
|
|
57825
|
+
exports.ɵcg = SimpleWorkflowFormComponent;
|
|
57826
|
+
exports.ɵch = ProcessWorkflowTargetComponent;
|
|
57827
|
+
exports.ɵci = DmChucVuService;
|
|
57828
|
+
exports.ɵcj = ChoYKienFormComponent;
|
|
57829
|
+
exports.ɵck = SplashComponentV1Component;
|
|
57830
|
+
exports.ɵcl = SplashComponentV2Component;
|
|
57831
|
+
exports.ɵcm = StateMachinesConnectionReceiverComponent;
|
|
57832
|
+
exports.ɵcn = StateMachinesConnectionReceiverConditionComponent;
|
|
57833
|
+
exports.ɵco = WorkflowSettingsService;
|
|
57834
|
+
exports.ɵcp = StateMachinesConnectionReceiverDepartmentComponent;
|
|
57835
|
+
exports.ɵcq = StateMachinesConnectionReceiverGroupComponent;
|
|
57836
|
+
exports.ɵcr = StateMachinesConnectionReceiverUserComponent;
|
|
57837
|
+
exports.ɵcs = StateMachinesConnectionReceiverRoleComponent;
|
|
57838
|
+
exports.ɵct = StateMachinesConnectionSenderComponent;
|
|
57839
|
+
exports.ɵcu = StartWorkflowComponent;
|
|
57840
|
+
exports.ɵcv = ShareLinkByPermissionComponent;
|
|
57841
|
+
exports.ɵcw = WorkflowSettingNewComponent;
|
|
57842
|
+
exports.ɵcx = PermissionSharingComponent;
|
|
57843
|
+
exports.ɵcy = WorkflowPermissionService;
|
|
57844
|
+
exports.ɵcz = TnDialogComponent;
|
|
56367
57845
|
exports.ɵd = ExceptionHandlerService;
|
|
56368
|
-
exports.ɵda =
|
|
56369
|
-
exports.ɵdb =
|
|
56370
|
-
exports.ɵdc =
|
|
56371
|
-
exports.ɵdd =
|
|
56372
|
-
exports.ɵde =
|
|
56373
|
-
exports.ɵdf =
|
|
56374
|
-
exports.ɵdg =
|
|
56375
|
-
exports.ɵdh =
|
|
56376
|
-
exports.ɵdi =
|
|
56377
|
-
exports.ɵdj =
|
|
56378
|
-
exports.ɵdk =
|
|
56379
|
-
exports.ɵdl =
|
|
56380
|
-
exports.ɵdm =
|
|
56381
|
-
exports.ɵdn =
|
|
56382
|
-
exports.ɵdo =
|
|
56383
|
-
exports.ɵdp =
|
|
56384
|
-
exports.ɵdq =
|
|
56385
|
-
exports.ɵdr =
|
|
56386
|
-
exports.ɵds =
|
|
56387
|
-
exports.ɵdt =
|
|
56388
|
-
exports.ɵdu =
|
|
56389
|
-
exports.ɵdv =
|
|
56390
|
-
exports.ɵdw =
|
|
56391
|
-
exports.ɵdx =
|
|
56392
|
-
exports.ɵdy =
|
|
56393
|
-
exports.ɵdz =
|
|
57846
|
+
exports.ɵda = TnColorPickerComponent;
|
|
57847
|
+
exports.ɵdb = TnTinymceComponent;
|
|
57848
|
+
exports.ɵdc = TnTabViewComponent;
|
|
57849
|
+
exports.ɵdd = TableDetailFormComponent;
|
|
57850
|
+
exports.ɵde = FileIconPipe;
|
|
57851
|
+
exports.ɵdf = FileSizePipe;
|
|
57852
|
+
exports.ɵdg = QuickAddFormComponent;
|
|
57853
|
+
exports.ɵdh = PreventShiftTabDirective;
|
|
57854
|
+
exports.ɵdi = TnTemplateDirective;
|
|
57855
|
+
exports.ɵdj = UserPickerComponent;
|
|
57856
|
+
exports.ɵdk = UserPickerBoxComponent;
|
|
57857
|
+
exports.ɵdl = CoCauToChucTestService;
|
|
57858
|
+
exports.ɵdm = TnAppHelpComponent;
|
|
57859
|
+
exports.ɵdn = PathNameService;
|
|
57860
|
+
exports.ɵdo = HelperCurrentPageComponent;
|
|
57861
|
+
exports.ɵdp = TnAppNotificationListComponent;
|
|
57862
|
+
exports.ɵdq = TnAppNotificationComponent;
|
|
57863
|
+
exports.ɵdr = MyDriveService;
|
|
57864
|
+
exports.ɵds = FileVersionService;
|
|
57865
|
+
exports.ɵdt = FileExplorerNewService;
|
|
57866
|
+
exports.ɵdu = FileManagerService;
|
|
57867
|
+
exports.ɵdv = FolderFormComponent;
|
|
57868
|
+
exports.ɵdw = FileFormComponent;
|
|
57869
|
+
exports.ɵdx = FileViewerComponent;
|
|
57870
|
+
exports.ɵdy = FileVersionListComponent;
|
|
57871
|
+
exports.ɵdz = WorkflowHistoryComponent;
|
|
56394
57872
|
exports.ɵe = CanBo_HoSoService;
|
|
56395
|
-
exports.ɵea =
|
|
56396
|
-
exports.ɵeb =
|
|
56397
|
-
exports.ɵec =
|
|
56398
|
-
exports.ɵed =
|
|
56399
|
-
exports.ɵee =
|
|
56400
|
-
exports.ɵef =
|
|
56401
|
-
exports.ɵeg =
|
|
56402
|
-
exports.ɵeh =
|
|
56403
|
-
exports.ɵei =
|
|
56404
|
-
exports.ɵej =
|
|
56405
|
-
exports.ɵek =
|
|
56406
|
-
exports.ɵel =
|
|
56407
|
-
exports.ɵem =
|
|
56408
|
-
exports.ɵen =
|
|
56409
|
-
exports.ɵeo =
|
|
56410
|
-
exports.ɵep =
|
|
56411
|
-
exports.ɵeq =
|
|
56412
|
-
exports.ɵer =
|
|
56413
|
-
exports.ɵes =
|
|
56414
|
-
exports.ɵet =
|
|
56415
|
-
exports.ɵeu =
|
|
56416
|
-
exports.ɵev =
|
|
56417
|
-
exports.ɵew =
|
|
56418
|
-
exports.ɵex =
|
|
56419
|
-
exports.ɵey =
|
|
56420
|
-
exports.ɵez =
|
|
57873
|
+
exports.ɵea = EntityWorkflowHistoryService;
|
|
57874
|
+
exports.ɵeb = WorkflowHistoryDialogComponent;
|
|
57875
|
+
exports.ɵec = WorkflowHistoryNewComponent;
|
|
57876
|
+
exports.ɵed = WorkflowSettingComponent;
|
|
57877
|
+
exports.ɵee = EntityWorkflowSettingService;
|
|
57878
|
+
exports.ɵef = WorkflowSettingDialogComponent;
|
|
57879
|
+
exports.ɵeg = WorkflowPermissionComponent;
|
|
57880
|
+
exports.ɵeh = WorkflowPermissionFormComponent;
|
|
57881
|
+
exports.ɵei = QrCodeGeneratorComponent;
|
|
57882
|
+
exports.ɵej = AccessDeniedV1Component;
|
|
57883
|
+
exports.ɵek = AddNewsComponent;
|
|
57884
|
+
exports.ɵel = ArticleService;
|
|
57885
|
+
exports.ɵem = NewsCategoryService;
|
|
57886
|
+
exports.ɵen = NotFoundComponent;
|
|
57887
|
+
exports.ɵeo = UniversalLinkProcessorComponent;
|
|
57888
|
+
exports.ɵep = SignatureDetailComponent;
|
|
57889
|
+
exports.ɵeq = ChatService;
|
|
57890
|
+
exports.ɵer = ContentsService;
|
|
57891
|
+
exports.ɵes = StatusExtendsService;
|
|
57892
|
+
exports.ɵet = MessageBoardService;
|
|
57893
|
+
exports.ɵeu = KySoSimDanhSachChuKyComponent;
|
|
57894
|
+
exports.ɵev = KySoSimChuKyUserService;
|
|
57895
|
+
exports.ɵew = FileKySoSimComponent;
|
|
57896
|
+
exports.ɵex = KySoSimSignPDFService;
|
|
57897
|
+
exports.ɵey = TaiLieuCuaToiComponent;
|
|
57898
|
+
exports.ɵez = KhaiThacTaiLieuDungChungComponent;
|
|
56421
57899
|
exports.ɵf = AfterViewCheckedComponent;
|
|
56422
|
-
exports.ɵfa =
|
|
56423
|
-
exports.ɵfb =
|
|
56424
|
-
exports.ɵfc =
|
|
56425
|
-
exports.ɵfd =
|
|
56426
|
-
exports.ɵfe =
|
|
57900
|
+
exports.ɵfa = DanhMucDungChungService;
|
|
57901
|
+
exports.ɵfb = CheckReadyComponent;
|
|
57902
|
+
exports.ɵfc = SendAccessTokenInterceptor;
|
|
57903
|
+
exports.ɵfd = LogInterceptor;
|
|
57904
|
+
exports.ɵfe = PermissionUtilsInterceptor;
|
|
57905
|
+
exports.ɵff = TraceInterceptor;
|
|
56427
57906
|
exports.ɵg = AdvanceSearchComponent;
|
|
56428
57907
|
exports.ɵh = AppRootMenuComponent;
|
|
56429
57908
|
exports.ɵi = AppTopBarComponent;
|
|
@@ -56436,14 +57915,14 @@
|
|
|
56436
57915
|
exports.ɵp = CheckBoxListComponent;
|
|
56437
57916
|
exports.ɵq = ReportQueueComponent;
|
|
56438
57917
|
exports.ɵr = CoCauToChucPickerListComponent;
|
|
56439
|
-
exports.ɵs =
|
|
56440
|
-
exports.ɵt =
|
|
56441
|
-
exports.ɵu =
|
|
56442
|
-
exports.ɵv =
|
|
56443
|
-
exports.ɵw =
|
|
56444
|
-
exports.ɵx =
|
|
56445
|
-
exports.ɵy =
|
|
56446
|
-
exports.ɵz =
|
|
57918
|
+
exports.ɵs = TreeTableComponent;
|
|
57919
|
+
exports.ɵt = BaseCongViecTestComponent;
|
|
57920
|
+
exports.ɵu = ProcessWorkflowFormComponent;
|
|
57921
|
+
exports.ɵv = BaseCauHinhWorkflowDetailComponent;
|
|
57922
|
+
exports.ɵw = BaseDmLoaiCongViecFormComponent;
|
|
57923
|
+
exports.ɵx = BaseDmLinhVucCongViecFormComponent;
|
|
57924
|
+
exports.ɵy = BaseDmPriorityFormComponent;
|
|
57925
|
+
exports.ɵz = BaseCongviecDinhkemComponent;
|
|
56447
57926
|
|
|
56448
57927
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
56449
57928
|
|