qms-angular 1.1.31 → 1.1.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/bundles/qms-angular.umd.js +680 -218
  2. package/bundles/qms-angular.umd.js.map +1 -1
  3. package/esm2015/lib/common/models/qms-flat-node.model.js +1 -1
  4. package/esm2015/lib/common/models/qms-tree-node.model.js +1 -1
  5. package/esm2015/lib/components/breadcrumb/breadcrumb.js +3 -2
  6. package/esm2015/lib/components/select-department/select-department.component.js +86 -5
  7. package/esm2015/lib/components/select-department-tree/model/department-paging.model.js +2 -1
  8. package/esm2015/lib/components/select-department-tree/model/department-search-result.model.js +1 -1
  9. package/esm2015/lib/components/select-department-tree/model/select-department-tree.config.js +5 -2
  10. package/esm2015/lib/components/select-department-tree/select-department-tree.component.js +314 -158
  11. package/esm2015/lib/components/select-department-tree/select-department-tree.module.js +4 -2
  12. package/esm2015/lib/model/en.js +3 -2
  13. package/esm2015/lib/model/no.js +3 -2
  14. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.js +11 -3
  15. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.js +12 -3
  16. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/save-template/save-template.component.js +13 -3
  17. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.js +13 -3
  18. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-fullscreen/qms-ckeditor-fullscreen.component.js +1 -1
  19. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.js +13 -4
  20. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.js +21 -10
  21. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-link-simple/qms-ckeditor-link-simple.component.js +17 -4
  22. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.js +14 -3
  23. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.js +15 -3
  24. package/esm2015/lib/qms-ckeditor-components/components/qms-ckeditor-tooltip/qms-ckeditor-tooltip.component.js +14 -4
  25. package/esm2015/lib/qms-ckeditor-components/qms-ckeditor.component.js +26 -13
  26. package/esm2015/lib/qms-ckeditor-components/services/qms-ckeditor-common.services.js +25 -0
  27. package/esm2015/qms-angular.js +10 -9
  28. package/fesm2015/qms-angular.js +577 -207
  29. package/fesm2015/qms-angular.js.map +1 -1
  30. package/lib/common/models/qms-flat-node.model.d.ts +2 -0
  31. package/lib/common/models/qms-tree-node.model.d.ts +2 -0
  32. package/lib/components/select-department/select-department.component.d.ts +50 -2
  33. package/lib/components/select-department-tree/model/department-search-result.model.d.ts +2 -1
  34. package/lib/components/select-department-tree/model/select-department-tree.config.d.ts +3 -0
  35. package/lib/components/select-department-tree/select-department-tree.component.d.ts +66 -24
  36. package/lib/model/en.d.ts +1 -0
  37. package/lib/model/no.d.ts +1 -0
  38. package/lib/qms-ckeditor-components/components/qms-ckeditor-about/qms-ckeditor-about.component.d.ts +4 -1
  39. package/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/qms-ckeditor-bpmn.component.d.ts +4 -1
  40. package/lib/qms-ckeditor-components/components/qms-ckeditor-bpmn/save-template/save-template.component.d.ts +4 -1
  41. package/lib/qms-ckeditor-components/components/qms-ckeditor-flowchart/qms-ckeditor-flowchart.component.d.ts +5 -1
  42. package/lib/qms-ckeditor-components/components/qms-ckeditor-imagemap/qms-ckeditor-imagemap.component.d.ts +4 -1
  43. package/lib/qms-ckeditor-components/components/qms-ckeditor-link/qms-ckeditor-link.component.d.ts +4 -1
  44. package/lib/qms-ckeditor-components/components/qms-ckeditor-link-simple/qms-ckeditor-link-simple.component.d.ts +5 -1
  45. package/lib/qms-ckeditor-components/components/qms-ckeditor-load-template/qms-ckeditor-load-template.component.d.ts +4 -1
  46. package/lib/qms-ckeditor-components/components/qms-ckeditor-template/qms-ckeditor-template.component.d.ts +4 -1
  47. package/lib/qms-ckeditor-components/components/qms-ckeditor-tooltip/qms-ckeditor-tooltip.component.d.ts +4 -1
  48. package/lib/qms-ckeditor-components/services/qms-ckeditor-common.services.d.ts +5 -0
  49. package/package.json +1 -1
  50. package/qms-angular.d.ts +9 -8
  51. package/qms-angular.metadata.json +1 -1
  52. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js +1 -1
  53. package/src/assets/qms-ckeditor-plugin/build/ckeditor.js.map +1 -1
  54. package/src/assets/qms-ckeditor-plugin/src/plugins/aboutckeditor/aboutckeditor.js +2 -1
  55. package/src/assets/qms-ckeditor-plugin/src/plugins/bpmn/bpmndialogcommand.js +2 -2
  56. package/src/assets/qms-ckeditor-plugin/src/plugins/common/qmsCKEditorEnum.js +2 -1
  57. package/src/assets/qms-ckeditor-plugin/src/plugins/common/qmsCKEditorService.js +18 -18
  58. package/src/assets/qms-ckeditor-plugin/src/plugins/flowchart/flowchartdialogcommand.js +2 -2
  59. package/src/assets/qms-ckeditor-plugin/src/plugins/fullscreen/qmsCKEditorFullscreenPlugin.js +3 -1
  60. package/src/assets/qms-ckeditor-plugin/src/plugins/imagemap/imagemapdialogcommand.js +1 -1
  61. package/src/assets/qms-ckeditor-plugin/src/plugins/link/linkdialogcommand.js +1 -1
  62. package/src/assets/qms-ckeditor-plugin/src/plugins/link/linkui.js +1 -0
  63. package/src/assets/qms-ckeditor-plugin/src/plugins/template/loadtemplatedialogcommand.js +1 -1
  64. package/src/assets/qms-ckeditor-plugin/src/plugins/template/templatedialogcommand.js +8 -3
  65. package/src/assets/qms-ckeditor-plugin/src/plugins/toggletoolbar/toggletoolbar.js +1 -1
  66. package/src/assets/qms-ckeditor-plugin/src/plugins/tooltip/tooltipdialogcommand.js +1 -1
  67. package/src/assets/qms-ckeditor-plugin/src/plugins/tooltip/tooltipui.js +1 -1
  68. package/src/assets/qms-ckeditor-plugin/src/plugins/video/videoupload/browsevideodialogcommand.js +1 -1
  69. package/src/lib/components/select-department/select-department.component.scss +25 -5
  70. package/src/lib/components/select-department-tree/select-department-tree.component.scss +382 -182
  71. package/src/lib/qms-ckeditor-components/qms-ckeditor.component.scss +3 -1
@@ -208,7 +208,8 @@
208
208
  "WORDS": "Words",
209
209
  "CHARACTERS": "Characters",
210
210
  "SELECT_VIDEO_FROM_ARCHIVE": "Select video from the archive",
211
- "SELECT_VIDEO_IMAGE": "Select video image"
211
+ "SELECT_VIDEO_IMAGE": "Select video image",
212
+ "DOCUMENT_HEADER": "Document information"
212
213
  },
213
214
  "ABOUT": {
214
215
  "ABOUT_CKEDITOR": "About CKEditor",
@@ -597,7 +598,8 @@
597
598
  "WORDS": "Ord",
598
599
  "CHARACTERS": "Tegn",
599
600
  "SELECT_VIDEO_FROM_ARCHIVE": "Velg video fra arkivet",
600
- "SELECT_VIDEO_IMAGE": "Velg videobilde"
601
+ "SELECT_VIDEO_IMAGE": "Velg videobilde",
602
+ "DOCUMENT_HEADER": "Dokumentinformasjon"
601
603
  },
602
604
  "ABOUT": {
603
605
  "ABOUT_CKEDITOR": "Om CKEditor",
@@ -5181,6 +5183,7 @@
5181
5183
  }
5182
5184
  };
5183
5185
  QMSBreadcrumb.prototype.buildBreadcrumb = function () {
5186
+ var _a;
5184
5187
  if (!this.isMobileType && this.ele.nativeElement.offsetWidth) {
5185
5188
  this.dropdownNodes = [];
5186
5189
  if (!this.maxLine || this.maxLine < 2) {
@@ -5191,7 +5194,7 @@
5191
5194
  }
5192
5195
  }
5193
5196
  //show number Items after 3 dot icon
5194
- if (+this.numDisplayItem && +this.numDisplayItem >= 2 && this.itemNodes.length >= 2) {
5197
+ if (+this.numDisplayItem && +this.numDisplayItem >= 2 && ((_a = this.itemNodes) === null || _a === void 0 ? void 0 : _a.length) >= 2) {
5195
5198
  this.dropdownNodes = [];
5196
5199
  this.dropdownNodes = this.itemNodes.slice(0, -this.numDisplayItem).reverse();
5197
5200
  this.itemNodes = __spreadArray(__spreadArray([], []), __read(this.itemNodes.slice(-this.numDisplayItem)));
@@ -9007,6 +9010,31 @@
9007
9010
  return QMSCKEditorLink;
9008
9011
  }());
9009
9012
 
9013
+ var QMSCKEditorCommonService = /** @class */ (function () {
9014
+ function QMSCKEditorCommonService() {
9015
+ }
9016
+ QMSCKEditorCommonService.prototype.getScrollTopCkeditor = function (ckeditor) {
9017
+ if (!ckeditor || !ckeditor.ui)
9018
+ return 0;
9019
+ return ckeditor.ui.getEditableElement().scrollTop;
9020
+ };
9021
+ QMSCKEditorCommonService.prototype.setScrollTopEditorContainer = function (ckeditor, scrollTop) {
9022
+ if (!ckeditor || !ckeditor.ui)
9023
+ return;
9024
+ setTimeout(function () {
9025
+ ckeditor.ui.getEditableElement().scrollTop = scrollTop;
9026
+ }, 200);
9027
+ };
9028
+ return QMSCKEditorCommonService;
9029
+ }());
9030
+ QMSCKEditorCommonService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function QMSCKEditorCommonService_Factory() { return new QMSCKEditorCommonService(); }, token: QMSCKEditorCommonService, providedIn: "root" });
9031
+ QMSCKEditorCommonService.decorators = [
9032
+ { type: i0.Injectable, args: [{
9033
+ providedIn: 'root'
9034
+ },] }
9035
+ ];
9036
+ QMSCKEditorCommonService.ctorParameters = function () { return []; };
9037
+
9010
9038
  exports.QMSCKEditorDocumentType = void 0;
9011
9039
  (function (QMSCKEditorDocumentType) {
9012
9040
  QMSCKEditorDocumentType[QMSCKEditorDocumentType["other"] = 0] = "other";
@@ -9418,12 +9446,13 @@
9418
9446
 
9419
9447
  var QMSCKEditorLinkComponent = /** @class */ (function (_super) {
9420
9448
  __extends(QMSCKEditorLinkComponent, _super);
9421
- function QMSCKEditorLinkComponent(cdr, dialog, translate, linkService, dialogRef, data) {
9449
+ function QMSCKEditorLinkComponent(cdr, dialog, translate, linkService, commonService, dialogRef, data) {
9422
9450
  var _this = _super.call(this) || this;
9423
9451
  _this.cdr = cdr;
9424
9452
  _this.dialog = dialog;
9425
9453
  _this.translate = translate;
9426
9454
  _this.linkService = linkService;
9455
+ _this.commonService = commonService;
9427
9456
  _this.dialogRef = dialogRef;
9428
9457
  _this.data = data;
9429
9458
  _this.linkFormGroup = new forms.FormGroup({
@@ -9494,7 +9523,9 @@
9494
9523
  this.cdr.detectChanges();
9495
9524
  };
9496
9525
  QMSCKEditorLinkComponent.prototype.onCloseDialog = function () {
9526
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
9497
9527
  this.dialogRef.close(null);
9528
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
9498
9529
  };
9499
9530
  QMSCKEditorLinkComponent.prototype.initLinkType = function () {
9500
9531
  if (this.linkTypes) {
@@ -9694,19 +9725,20 @@
9694
9725
  var id = 3;
9695
9726
  if (this.data.qmsckContentFields &&
9696
9727
  this.data.qmsckContentFields.length &&
9697
- this.data.qmsckIsGetAnchorMoreContent) {
9728
+ this.data.qmsckIsGetAnchorMoreContent &&
9729
+ this.selectedLinkType === exports.LinkType.anchorText) {
9698
9730
  this.data.qmsckContentFields.forEach(function (field) {
9699
9731
  if (field) {
9700
9732
  _this.getAnchor(field, id);
9701
9733
  }
9702
9734
  });
9703
9735
  }
9704
- else {
9705
- if (anchorDocument) {
9706
- anchorDocument.forEach(function (e) {
9736
+ if (this.selectedLinkType === exports.LinkType.anchorDocument && anchorDocument) {
9737
+ anchorDocument.forEach(function (e) {
9738
+ if (e) {
9707
9739
  _this.getAnchor(e, id);
9708
- });
9709
- }
9740
+ }
9741
+ });
9710
9742
  }
9711
9743
  this.anchors.push({
9712
9744
  value: 1,
@@ -9769,6 +9801,7 @@
9769
9801
  return isDisable;
9770
9802
  };
9771
9803
  QMSCKEditorLinkComponent.prototype.setLink = function () {
9804
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
9772
9805
  var link = new QMSCKEditorLink();
9773
9806
  link.typeId = this.selectedLinkType;
9774
9807
  link.targetId = this.selectedTarget;
@@ -9795,6 +9828,7 @@
9795
9828
  break;
9796
9829
  }
9797
9830
  this.dialogRef.close(link);
9831
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
9798
9832
  };
9799
9833
  QMSCKEditorLinkComponent.prototype.getUrlToSetProtocol = function () {
9800
9834
  if (!this.url.length) {
@@ -9841,7 +9875,7 @@
9841
9875
  QMSCKEditorLinkComponent.decorators = [
9842
9876
  { type: i0.Component, args: [{
9843
9877
  selector: "qms-ckeditor-link",
9844
- template: "<div id=\"qmsckeditor_link\" class=\"qmsckeditor qmsckeditor__link__container\">\r\n <div id=\"qmsckeditor_link_header\">\r\n <span id=\"qmsckeditor_link_header_001\" mat-icon-button class=\"qmsckeditor button__close\" (click)=\"onCloseDialog()\">\r\n <mat-icon>close</mat-icon>\r\n </span>\r\n <div id=\"qmsckeditor_link_header_002\" mat-dialog-content>\r\n <h2 id=\"qmsckeditor_link_header_001\">\r\n {{ LANG.QMSCKEDITOR.LINK }}\r\n </h2>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link_type\" class=\"row\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_TYPE }}</mat-label>\r\n <mat-select disableOptionCentering name=\"linkTypeList\" [(ngModel)]=\"selectedLinkType\"\r\n (ngModelChange)=\"onSelectedLinkType()\">\r\n <mat-option *ngFor=\"let link of linkTypes\" [value]=\"link.id\">\r\n {{ link.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div id=\"qmsckeditor_link_content\">\r\n <form [formGroup]=\"linkFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.url\">\r\n <div id=\"qmsckeditor_link_url\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_url_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.URL_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_url_001\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.TARGET }}</mat-label>\r\n <mat-select [(ngModel)]=\"selectedTarget\" formControlName=\"targetList\" disableOptionCentering>\r\n <mat-option *ngFor=\"let target of targets\" [value]=\"target.id\">\r\n {{ target.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_002\" class=\"row\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.PROTOCOL }}</mat-label>\r\n <mat-select [(ngModel)]=\"selectedProtocol\" formControlName=\"protocolList\" disableOptionCentering>\r\n <mat-option *ngFor=\"let protocol of protocols\" [value]=\"protocol.id\">\r\n {{ protocol.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_003\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_URL }}</mat-label>\r\n <input matInput [(ngModel)]=\"url\" name=\"url\" formControlName=\"url\"\r\n (ngModelChange)=\"getUrlToSetProtocol()\" />\r\n <mat-error *ngIf=\"linkFormGroup.get('url').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_004\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.TITLE }}</mat-label>\r\n <input matInput [(ngModel)]=\"advisoryTitle\" formControlName=\"advisoryTitle\" />\r\n <mat-error *ngIf=\"linkFormGroup.get('advisoryTitle').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_005\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-6 pl-3 ps-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"eHandbook(false, false)\">\r\n {{ LANG.QMSCKEDITOR.DOCUMENT_PROCESS }}\r\n </button>\r\n </div>\r\n <div class=\"col-6 pr-3 pe-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"attachment()\">\r\n {{ LANG.QMSCKEDITOR.ATTACHMENT }}\r\n </button>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"anchorTextFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.anchorText\">\r\n <div id=\"qmsckeditor_link_anchor_text\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_anchor_text_panel\" [expanded]=\"isExpanded\"\r\n (opened)=\"isExpanded = true\" (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.ANCHOR_TEXT_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_anchor_text_001\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.ANCHOR_BY_NAME }}</mat-label>\r\n <mat-select [(ngModel)]=\"anchorText\" formControlName=\"anchorText\">\r\n <mat-option *ngFor=\"let editorAnchor of editorAnchors\" [value]=\"editorAnchor.anchorValue\"\r\n disableOptionCentering>\r\n {{ editorAnchor.viewValue }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"\r\n anchorTextFormGroup.get('anchorText').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"emailFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.email\">\r\n <div id=\"qmsckeditor_link_email\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_email_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.EMAIL_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_email_001\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_ADDRESS }}</mat-label>\r\n <input matInput [(ngModel)]=\"emailAddress\" formControlName=\"emailAddress\" />\r\n <mat-error *ngIf=\"emailFormGroup.get('emailAddress').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_email_002\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_SUBJECT }}</mat-label>\r\n <input matInput [(ngModel)]=\"emailSubject\" formControlName=\"emailSubject\" />\r\n <mat-error *ngIf=\"emailFormGroup.get('emailSubject').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_email_003\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_BODY }}</mat-label>\r\n <textarea matInput [(ngModel)]=\"emailBody\" formControlName=\"emailBody\"></textarea>\r\n <mat-error *ngIf=\"emailFormGroup.get('emailBody').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"anchorDocFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.anchorDocument\">\r\n <div id=\"qmsckeditor_link_anchor_doc\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_email_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.EMAIL_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_anchor_doc_001\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-6 pl-3 ps-3\">\r\n <button class=\"cancel\" mat-flat-button (click)=\"eHandbook(true, true)\">\r\n {{ LANG.QMSCKEDITOR.HANDBOOK }}\r\n </button>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link_anchor_doc_002\" class=\"row mt-4\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.DOCUMENT }}</mat-label>\r\n <input matInput [(ngModel)]=\"anchorTitle\" formControlName=\"anchorTitle\" />\r\n <mat-error *ngIf=\"\r\n anchorDocFormGroup.get('anchorTitle').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_anchor_doc_003\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.ANCHOR_BY_NAME }}</mat-label>\r\n <mat-select [(ngModel)]=\"anchorByName\" formControlName=\"anchorByName\" disableOptionCentering>\r\n <mat-option *ngFor=\"let docAnchor of documentAnchors\" [value]=\"docAnchor.anchorValue\">\r\n {{ docAnchor.viewValue }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"\r\n anchorDocFormGroup.get('anchorByName').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n <div id=\"qmsckeditor_link_footer\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-12 mt-3 pl-3 pr-3 ps-3 pe-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"setLink()\" [disabled]=\"disableOkButton()\">\r\n {{ LANG.QMSCKEDITOR.OK }}\r\n </button>\r\n </div>\r\n </div>\r\n</div>",
9878
+ template: "<div id=\"qmsckeditor_link\" class=\"qmsckeditor qmsckeditor__link__container\">\r\n <div id=\"qmsckeditor_link_header\">\r\n <span id=\"qmsckeditor_link_header_001\" mat-icon-button class=\"qmsckeditor button__close\" (click)=\"onCloseDialog()\">\r\n <mat-icon>close</mat-icon>\r\n </span>\r\n <div id=\"qmsckeditor_link_header_002\" mat-dialog-content>\r\n <h2 id=\"qmsckeditor_link_header_001\">\r\n {{ LANG.QMSCKEDITOR.LINK }}\r\n </h2>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link_type\" class=\"row\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_TYPE }}</mat-label>\r\n <mat-select disableOptionCentering name=\"linkTypeList\" [(ngModel)]=\"selectedLinkType\"\r\n (ngModelChange)=\"onSelectedLinkType()\">\r\n <mat-option *ngFor=\"let link of linkTypes\" [value]=\"link.id\">\r\n {{ link.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n\r\n <div id=\"qmsckeditor_link_content\">\r\n <form [formGroup]=\"linkFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.url\">\r\n <div id=\"qmsckeditor_link_url\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_url_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.URL_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_url_001\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.TARGET }}</mat-label>\r\n <mat-select [(ngModel)]=\"selectedTarget\" formControlName=\"targetList\" disableOptionCentering>\r\n <mat-option *ngFor=\"let target of targets\" [value]=\"target.id\">\r\n {{ target.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_002\" class=\"row\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.PROTOCOL }}</mat-label>\r\n <mat-select [(ngModel)]=\"selectedProtocol\" formControlName=\"protocolList\" disableOptionCentering>\r\n <mat-option *ngFor=\"let protocol of protocols\" [value]=\"protocol.id\">\r\n {{ protocol.name }}\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_003\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_URL }}</mat-label>\r\n <input matInput [(ngModel)]=\"url\" name=\"url\" formControlName=\"url\"\r\n (ngModelChange)=\"getUrlToSetProtocol()\" />\r\n <mat-error *ngIf=\"linkFormGroup.get('url').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_004\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.TITLE }}</mat-label>\r\n <input matInput [(ngModel)]=\"advisoryTitle\" formControlName=\"advisoryTitle\" />\r\n <mat-error *ngIf=\"linkFormGroup.get('advisoryTitle').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_url_005\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-6 pl-3 ps-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"eHandbook(false, false)\">\r\n {{ LANG.QMSCKEDITOR.DOCUMENT_PROCESS }}\r\n </button>\r\n </div>\r\n <div class=\"col-6 pr-3 pe-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"attachment()\">\r\n {{ LANG.QMSCKEDITOR.ATTACHMENT }}\r\n </button>\r\n </div>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"anchorTextFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.anchorText\">\r\n <div id=\"qmsckeditor_link_anchor_text\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_anchor_text_panel\" [expanded]=\"isExpanded\"\r\n (opened)=\"isExpanded = true\" (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.ANCHOR_TEXT_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_anchor_text_001\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.ANCHOR_BY_NAME }}</mat-label>\r\n <mat-select [(ngModel)]=\"anchorText\" formControlName=\"anchorText\">\r\n <mat-option *ngFor=\"let editorAnchor of editorAnchors\" [value]=\"editorAnchor.anchorValue\"\r\n disableOptionCentering>\r\n {{ editorAnchor.viewValue }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"\r\n anchorTextFormGroup.get('anchorText').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"emailFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.email\">\r\n <div id=\"qmsckeditor_link_email\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_email_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.EMAIL_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_email_001\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_ADDRESS }}</mat-label>\r\n <input matInput [(ngModel)]=\"emailAddress\" formControlName=\"emailAddress\" />\r\n <mat-error *ngIf=\"emailFormGroup.get('emailAddress').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_email_002\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_SUBJECT }}</mat-label>\r\n <input matInput [(ngModel)]=\"emailSubject\" formControlName=\"emailSubject\" />\r\n <mat-error *ngIf=\"emailFormGroup.get('emailSubject').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_email_003\" class=\"row\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.EMAIL_BODY }}</mat-label>\r\n <textarea matInput [(ngModel)]=\"emailBody\" formControlName=\"emailBody\"></textarea>\r\n <mat-error *ngIf=\"emailFormGroup.get('emailBody').hasError('required')\" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n\r\n <form [formGroup]=\"anchorDocFormGroup\" class=\"qmsckeditor link__content height row\"\r\n *ngIf=\"selectedLinkType == LinkType.anchorDocument\">\r\n <div id=\"qmsckeditor_link_anchor_doc\" class=\"col-12 mt-1 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-expansion-panel id=\"qmsckeditor_link_email_panel\" [expanded]=\"isExpanded\" (opened)=\"isExpanded = true\"\r\n (closed)=\"isExpanded = false\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{ LANG.QMSCKEDITOR.DOCUMENT_HEADER }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <div id=\"qmsckeditor_link_anchor_doc_001\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-6 pl-3 ps-3\">\r\n <button class=\"cancel\" mat-flat-button (click)=\"eHandbook(true, true)\">\r\n {{ LANG.QMSCKEDITOR.HANDBOOK }}\r\n </button>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link_anchor_doc_002\" class=\"row mt-4\">\r\n <mat-form-field class=\"col-12 pl-3 pr-3 ps-3 pe-3\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.DOCUMENT }}</mat-label>\r\n <input matInput [(ngModel)]=\"anchorTitle\" formControlName=\"anchorTitle\" />\r\n <mat-error *ngIf=\"\r\n anchorDocFormGroup.get('anchorTitle').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n <div id=\"qmsckeditor_link_anchor_doc_003\" class=\"row mt-2\">\r\n <mat-form-field appearance=\"fill\" class=\"col-12 pl-3 pr-3 ps-3 pe-3\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.ANCHOR_BY_NAME }}</mat-label>\r\n <mat-select [(ngModel)]=\"anchorByName\" formControlName=\"anchorByName\" disableOptionCentering>\r\n <mat-option *ngFor=\"let docAnchor of documentAnchors\" [value]=\"docAnchor.anchorValue\">\r\n {{ docAnchor.viewValue }}\r\n </mat-option>\r\n </mat-select>\r\n <mat-error *ngIf=\"\r\n anchorDocFormGroup.get('anchorByName').hasError('required')\r\n \" class=\"mt5\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </mat-expansion-panel>\r\n </div>\r\n </form>\r\n </div>\r\n\r\n <div id=\"qmsckeditor_link_footer\" class=\"qmsckeditor button__groups row\">\r\n <div class=\"col-12 mt-3 pl-3 pr-3 ps-3 pe-3\">\r\n <button class=\"save\" mat-flat-button (click)=\"setLink()\" [disabled]=\"disableOkButton()\">\r\n {{ LANG.QMSCKEDITOR.OK }}\r\n </button>\r\n </div>\r\n </div>\r\n</div>",
9845
9879
  styles: [".mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt7{margin-top:7px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mt30{margin-top:30px!important}.mt40{margin-top:40px!important}.ml2{margin-left:2px!important}.ml3{margin-left:3px!important}.ml5{margin-left:5px!important}.ml15{margin-left:15px!important}.ml10{margin-left:10px!important}.ml12{margin-left:12px!important}.ml16{margin-left:16px!important}.ml-auto{margin-left:auto!important}.ml-25{margin-left:-25px!important}.mr5{margin-right:5px!important}.mr12{margin-right:12px!important}.mr15{margin-right:15px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.pt8{padding-top:8px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pt16{padding-top:16px!important}.pl15{padding-left:15px!important}.pl0{padding-left:0!important}.pr0{padding-right:0!important}.pr15{padding-right:15px!important}.fs12{font-size:12px}.fs14{font-size:14px!important}.fs16{font-size:16px!important}.fs22{font-size:22px!important}.fw500{font-weight:500!important}.italic-text{font-style:italic}.display-flex{display:flex}.qmsckeditor{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.qmsckeditor h2{font-size:20px;font-weight:400}.qmsckeditor .mat-dialog-content{padding:0}.qmsckeditor .mat-icon{color:#909497}.qmsckeditor__fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;overflow-y:auto;max-height:100vh;overflow-x:hidden}.qmsckeditor__cursor{cursor:pointer}.qmsckeditor__notallowed{cursor:not-allowed}.qmsckeditor.button__close,.qmsckeditor.button__done{float:right;top:-24px;right:-24px;cursor:pointer}.qmsckeditor.button__done{margin-right:20px}.qmsckeditor.button__done .mat-icon{color:#28a745;font-weight:700}.qmsckeditor.button__groups button{min-height:40px;width:100%;border-radius:4px;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px}.qmsckeditor.button__groups .save{background:#f8f9f9}.qmsckeditor.button__groups .save:hover{background:#e5e7e9}.qmsckeditor.button__groups .save:disabled{cursor:not-allowed}.qmsckeditor.button__groups .cancel{background:#f8f9f9}.qmsckeditor.button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.button__groups .cancel:disabled{cursor:not-allowed}.qmsckeditor.button__groups .delete{background:#f8f9f9}.qmsckeditor.button__groups .delete:hover{background:#e5e7e9}.qmsckeditor.button__groups .delete:disabled{cursor:not-allowed}.qmsckeditor.confirm__button__groups button{min-height:36px;border-radius:4px;width:auto;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px;padding-left:15px;padding-right:15px}.qmsckeditor.confirm__button__groups .confirm{background:#f8f9f9}.qmsckeditor.confirm__button__groups .confirm:hover{background:#e5e7e9}.qmsckeditor.confirm__button__groups .cancel{background:#f8f9f9}.qmsckeditor.confirm__button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.template-content.height{min-height:420px;max-height:520px;overflow:auto}.qmsckeditor.template-content.title{margin-left:-9px}.qmsckeditor.link__content.height{min-height:400px;max-height:520px}.qmsckeditor.card{margin-bottom:10px;min-height:60px;box-shadow:none;border:1px solid #e5e5e5}.qmsckeditor.card .title{font-weight:700}.qmsckeditor.card .content{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.qmsckeditor.card .material-icons{font-size:20px}.qmsckeditor.tooltip-content.height{min-height:400px;max-height:472px;overflow:auto}.qmsckeditor.save__as__template.height{height:125px}.ck-content .ck-horizontal-line,.ck-content .page-break{width:100%}.ck-content hr{background:#ccc}.ck-font-size-dropdown .ck-dropdown__panel ul{max-height:320px;overflow-y:auto}.ck-font-size-dropdown .ck-dropdown__panel ul li .ck-fontsize-option .ck-button__label{line-height:50px}.qmsckeditor__link__container textarea.mat-input-element{min-height:130px}"]
9846
9880
  },] }
9847
9881
  ];
@@ -9850,9 +9884,13 @@
9850
9884
  { type: dialog.MatDialog },
9851
9885
  { type: TranslateLibraryService },
9852
9886
  { type: QMSCKEditorLinkService },
9887
+ { type: QMSCKEditorCommonService },
9853
9888
  { type: dialog.MatDialogRef },
9854
9889
  { type: QMSCKEditorLink, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
9855
- ]; };
9890
+ ]; };
9891
+ QMSCKEditorLinkComponent.propDecorators = {
9892
+ ckEditor: [{ type: i0.Input }]
9893
+ };
9856
9894
 
9857
9895
  // @dynamic
9858
9896
  var QMSCKEditorInjector = /** @class */ (function () {
@@ -9967,12 +10005,13 @@
9967
10005
 
9968
10006
  var QMSCKEditorTemplateComponent = /** @class */ (function (_super) {
9969
10007
  __extends(QMSCKEditorTemplateComponent, _super);
9970
- function QMSCKEditorTemplateComponent(cdr, dialog, translate, templateService, dialogRef, data) {
10008
+ function QMSCKEditorTemplateComponent(cdr, dialog, translate, templateService, commonService, dialogRef, data) {
9971
10009
  var _this = _super.call(this) || this;
9972
10010
  _this.cdr = cdr;
9973
10011
  _this.dialog = dialog;
9974
10012
  _this.translate = translate;
9975
10013
  _this.templateService = templateService;
10014
+ _this.commonService = commonService;
9976
10015
  _this.dialogRef = dialogRef;
9977
10016
  _this.data = data;
9978
10017
  _this.templateFormGroup = new forms.FormGroup({
@@ -10004,7 +10043,9 @@
10004
10043
  this.cdr.detectChanges();
10005
10044
  };
10006
10045
  QMSCKEditorTemplateComponent.prototype.onCloseDialog = function () {
10046
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
10007
10047
  this.dialogRef.close();
10048
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
10008
10049
  };
10009
10050
  QMSCKEditorTemplateComponent.prototype.getTemplate = function () {
10010
10051
  var _this = this;
@@ -10121,7 +10162,9 @@
10121
10162
  });
10122
10163
  };
10123
10164
  QMSCKEditorTemplateComponent.prototype.cancelTemplate = function () {
10165
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
10124
10166
  this.dialogRef.close();
10167
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
10125
10168
  };
10126
10169
  QMSCKEditorTemplateComponent.prototype.updateTemplate = function () {
10127
10170
  var _this = this;
@@ -10131,7 +10174,9 @@
10131
10174
  .subscribe(function (result) {
10132
10175
  if (result) {
10133
10176
  if (_this.isEdit) {
10177
+ var scrollTop = _this.commonService.getScrollTopCkeditor(_this.ckEditor);
10134
10178
  _this.dialogRef.close(_this.template);
10179
+ _this.commonService.setScrollTopEditorContainer(_this.ckEditor, scrollTop);
10135
10180
  }
10136
10181
  else {
10137
10182
  var index = _this.templates.findIndex(function (x) {
@@ -10168,17 +10213,22 @@
10168
10213
  { type: dialog.MatDialog },
10169
10214
  { type: TranslateLibraryService },
10170
10215
  { type: QMSCKEditorTemplateService },
10216
+ { type: QMSCKEditorCommonService },
10171
10217
  { type: dialog.MatDialogRef },
10172
10218
  { type: QMSCKEditorTemplate, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
10173
- ]; };
10219
+ ]; };
10220
+ QMSCKEditorTemplateComponent.propDecorators = {
10221
+ ckEditor: [{ type: i0.Input }]
10222
+ };
10174
10223
 
10175
10224
  var QMSCKEditorLoadTemplateComponent = /** @class */ (function (_super) {
10176
10225
  __extends(QMSCKEditorLoadTemplateComponent, _super);
10177
- function QMSCKEditorLoadTemplateComponent(dialog, translate, templateService, dialogRef, data) {
10226
+ function QMSCKEditorLoadTemplateComponent(dialog, translate, templateService, commonService, dialogRef, data) {
10178
10227
  var _this = _super.call(this) || this;
10179
10228
  _this.dialog = dialog;
10180
10229
  _this.translate = translate;
10181
10230
  _this.templateService = templateService;
10231
+ _this.commonService = commonService;
10182
10232
  _this.dialogRef = dialogRef;
10183
10233
  _this.data = data;
10184
10234
  _this.templates = [];
@@ -10195,7 +10245,9 @@
10195
10245
  this.getTemplate();
10196
10246
  };
10197
10247
  QMSCKEditorLoadTemplateComponent.prototype.onCloseDialog = function () {
10248
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
10198
10249
  this.dialogRef.close();
10250
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
10199
10251
  };
10200
10252
  QMSCKEditorLoadTemplateComponent.prototype.getTemplate = function () {
10201
10253
  var _this = this;
@@ -10231,7 +10283,9 @@
10231
10283
  content: content,
10232
10284
  isReplace: _this.isReplace,
10233
10285
  };
10286
+ var scrollTop = _this.commonService.getScrollTopCkeditor(_this.ckEditor);
10234
10287
  _this.dialogRef.close(detail);
10288
+ _this.commonService.setScrollTopEditorContainer(_this.ckEditor, scrollTop);
10235
10289
  }
10236
10290
  });
10237
10291
  };
@@ -10250,6 +10304,7 @@
10250
10304
  data: data,
10251
10305
  disableClose: true
10252
10306
  });
10307
+ dialogTemplate.componentInstance.ckEditor = this.ckEditor;
10253
10308
  dialogTemplate
10254
10309
  .afterClosed()
10255
10310
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -10308,9 +10363,13 @@
10308
10363
  { type: dialog.MatDialog },
10309
10364
  { type: TranslateLibraryService },
10310
10365
  { type: QMSCKEditorTemplateService },
10366
+ { type: QMSCKEditorCommonService },
10311
10367
  { type: dialog.MatDialogRef },
10312
10368
  { type: String, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
10313
- ]; };
10369
+ ]; };
10370
+ QMSCKEditorLoadTemplateComponent.propDecorators = {
10371
+ ckEditor: [{ type: i0.Input }]
10372
+ };
10314
10373
 
10315
10374
  var QmsUploadAdapter = /** @class */ (function () {
10316
10375
  function QmsUploadAdapter(loader, config) {
@@ -14505,12 +14564,13 @@
14505
14564
 
14506
14565
  var SaveTemplateComponent = /** @class */ (function (_super) {
14507
14566
  __extends(SaveTemplateComponent, _super);
14508
- function SaveTemplateComponent(translate, bmpnService, bpmnApiService, flowchartService, dialogRef, data) {
14567
+ function SaveTemplateComponent(translate, bmpnService, bpmnApiService, flowchartService, commonService, dialogRef, data) {
14509
14568
  var _this = _super.call(this) || this;
14510
14569
  _this.translate = translate;
14511
14570
  _this.bmpnService = bmpnService;
14512
14571
  _this.bpmnApiService = bpmnApiService;
14513
14572
  _this.flowchartService = flowchartService;
14573
+ _this.commonService = commonService;
14514
14574
  _this.dialogRef = dialogRef;
14515
14575
  _this.data = data;
14516
14576
  _this.saveFormGroup = new forms.FormGroup({
@@ -14560,7 +14620,9 @@
14560
14620
  if (result) {
14561
14621
  QMSCKEditorToastService.success(_this.LANG.QMSCKEDITOR.SAVED);
14562
14622
  _this.flowchart.id = result;
14623
+ var scrollTop = _this.commonService.getScrollTopCkeditor(_this.ckEditor);
14563
14624
  _this.dialogRef.close(_this.flowchart);
14625
+ _this.commonService.setScrollTopEditorContainer(_this.ckEditor, scrollTop);
14564
14626
  }
14565
14627
  else {
14566
14628
  QMSCKEditorToastService.error(_this.LANG.QMSCKEDITOR.SAVE_FAILED);
@@ -14569,7 +14631,9 @@
14569
14631
  }
14570
14632
  };
14571
14633
  SaveTemplateComponent.prototype.onCloseDialog = function () {
14634
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
14572
14635
  this.dialogRef.close();
14636
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
14573
14637
  };
14574
14638
  return SaveTemplateComponent;
14575
14639
  }(QMSCKEditorBaseComponent));
@@ -14585,9 +14649,13 @@
14585
14649
  { type: BpmnService },
14586
14650
  { type: QMSCKEditorBpmnApiService },
14587
14651
  { type: QMSCKEditorFlowchartService },
14652
+ { type: QMSCKEditorCommonService },
14588
14653
  { type: dialog.MatDialogRef },
14589
14654
  { type: QMSCKEditorSaveAsTemplate, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
14590
- ]; };
14655
+ ]; };
14656
+ SaveTemplateComponent.propDecorators = {
14657
+ ckEditor: [{ type: i0.Input }]
14658
+ };
14591
14659
 
14592
14660
  var ShapeFlowChartConnectionType;
14593
14661
  (function (ShapeFlowChartConnectionType) {
@@ -14651,7 +14719,7 @@
14651
14719
  }());
14652
14720
  var QMSCKEditorBpmnComponent = /** @class */ (function (_super) {
14653
14721
  __extends(QMSCKEditorBpmnComponent, _super);
14654
- function QMSCKEditorBpmnComponent(dialog, translate, bpmnService, bpmnApiService, linkService, uploadService, dialogRef, data) {
14722
+ function QMSCKEditorBpmnComponent(dialog, translate, bpmnService, bpmnApiService, linkService, uploadService, commonService, dialogRef, data) {
14655
14723
  var _this = _super.call(this) || this;
14656
14724
  _this.dialog = dialog;
14657
14725
  _this.translate = translate;
@@ -14659,6 +14727,7 @@
14659
14727
  _this.bpmnApiService = bpmnApiService;
14660
14728
  _this.linkService = linkService;
14661
14729
  _this.uploadService = uploadService;
14730
+ _this.commonService = commonService;
14662
14731
  _this.dialogRef = dialogRef;
14663
14732
  _this.data = data;
14664
14733
  _this.expandedPanel = true;
@@ -14870,7 +14939,7 @@
14870
14939
  };
14871
14940
  QMSCKEditorBpmnComponent.prototype.onInsertImage = function () {
14872
14941
  return __awaiter(this, void 0, void 0, function () {
14873
- var graph, paper, clientRect, graphObject, id, imageContent, _b, file, relativeUrl, imagemap, result;
14942
+ var graph, paper, clientRect, graphObject, id, imageContent, _b, file, relativeUrl, imagemap, result, scrollTop;
14874
14943
  return __generator(this, function (_c) {
14875
14944
  switch (_c.label) {
14876
14945
  case 0:
@@ -14891,14 +14960,18 @@
14891
14960
  relativeUrl = _c.sent();
14892
14961
  imagemap = this.toImageMap(id, graphObject.cells, clientRect);
14893
14962
  result = { key: CKEditorEventConst.QMSCK_BPMN + "#" + id, values: relativeUrl, imagemap: imagemap };
14963
+ scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
14894
14964
  this.dialogRef.close(result);
14965
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
14895
14966
  return [2 /*return*/];
14896
14967
  }
14897
14968
  });
14898
14969
  });
14899
14970
  };
14900
14971
  QMSCKEditorBpmnComponent.prototype.onCloseDialog = function () {
14972
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
14901
14973
  this.dialogRef.close();
14974
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
14902
14975
  };
14903
14976
  QMSCKEditorBpmnComponent.prototype.removeLink = function () {
14904
14977
  var _this = this;
@@ -15103,6 +15176,7 @@
15103
15176
  data: data,
15104
15177
  disableClose: true
15105
15178
  });
15179
+ dialogTemplate.componentInstance.ckEditor = this.ckEditor;
15106
15180
  dialogTemplate
15107
15181
  .afterClosed()
15108
15182
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -15464,10 +15538,12 @@
15464
15538
  { type: QMSCKEditorBpmnApiService },
15465
15539
  { type: QMSCKEditorLinkService },
15466
15540
  { type: QMSCKEditorUploadService },
15541
+ { type: QMSCKEditorCommonService },
15467
15542
  { type: dialog.MatDialogRef },
15468
15543
  { type: QMSCKEditorBpmnData, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
15469
15544
  ]; };
15470
15545
  QMSCKEditorBpmnComponent.propDecorators = {
15546
+ ckEditor: [{ type: i0.Input }],
15471
15547
  onMessage: [{ type: i0.HostListener, args: ['window:message', ['$event'],] }]
15472
15548
  };
15473
15549
 
@@ -17473,7 +17549,7 @@
17473
17549
 
17474
17550
  var QMSCKEditorImageMapComponent = /** @class */ (function (_super) {
17475
17551
  __extends(QMSCKEditorImageMapComponent, _super);
17476
- function QMSCKEditorImageMapComponent(renderer, cdr, dialog, translate, linkService, dialogRef, data, iconRegistry, sanitizer) {
17552
+ function QMSCKEditorImageMapComponent(renderer, cdr, dialog, translate, linkService, dialogRef, commonService, data, iconRegistry, sanitizer) {
17477
17553
  var _this = _super.call(this) || this;
17478
17554
  _this.renderer = renderer;
17479
17555
  _this.cdr = cdr;
@@ -17481,6 +17557,7 @@
17481
17557
  _this.translate = translate;
17482
17558
  _this.linkService = linkService;
17483
17559
  _this.dialogRef = dialogRef;
17560
+ _this.commonService = commonService;
17484
17561
  _this.data = data;
17485
17562
  _this.linkTypes = [];
17486
17563
  _this.targets = [];
@@ -17781,7 +17858,9 @@
17781
17858
  this.cdr.detectChanges();
17782
17859
  };
17783
17860
  QMSCKEditorImageMapComponent.prototype.onCloseDialog = function () {
17861
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
17784
17862
  this.dialogRef.close();
17863
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
17785
17864
  };
17786
17865
  QMSCKEditorImageMapComponent.prototype.onModeChange = function (e) {
17787
17866
  this.selectedMode = e.value;
@@ -17956,10 +18035,13 @@
17956
18035
  var data = this.myImageMap.getMapJson();
17957
18036
  data.imageHeight = this.naturalImageHeight;
17958
18037
  data.imageWidth = this.naturalImageWidth;
18038
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
17959
18039
  this.dialogRef.close(data);
18040
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
17960
18041
  };
17961
18042
  QMSCKEditorImageMapComponent.prototype.cancel = function () {
17962
- this.dialogRef.close();
18043
+ //this.dialogRef.close();
18044
+ this.onCloseDialog();
17963
18045
  };
17964
18046
  return QMSCKEditorImageMapComponent;
17965
18047
  }(QMSCKEditorBaseComponent));
@@ -17977,11 +18059,13 @@
17977
18059
  { type: TranslateLibraryService },
17978
18060
  { type: QMSCKEditorLinkService },
17979
18061
  { type: dialog.MatDialogRef },
18062
+ { type: QMSCKEditorCommonService },
17980
18063
  { type: QMSCKEditorImageMap, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] },
17981
18064
  { type: icon.MatIconRegistry },
17982
18065
  { type: platformBrowser.DomSanitizer }
17983
18066
  ]; };
17984
18067
  QMSCKEditorImageMapComponent.propDecorators = {
18068
+ ckEditor: [{ type: i0.Input }],
17985
18069
  myImageRef: [{ type: i0.ViewChild, args: ['myImage',] }],
17986
18070
  myStatusRef: [{ type: i0.ViewChild, args: ['myStatus',] }]
17987
18071
  };
@@ -17996,11 +18080,12 @@
17996
18080
 
17997
18081
  var QMSCKEditorTooltipComponent = /** @class */ (function (_super) {
17998
18082
  __extends(QMSCKEditorTooltipComponent, _super);
17999
- function QMSCKEditorTooltipComponent(cdr, translate, dialogRef, data) {
18083
+ function QMSCKEditorTooltipComponent(cdr, translate, dialogRef, commonService, data) {
18000
18084
  var _this = _super.call(this) || this;
18001
18085
  _this.cdr = cdr;
18002
18086
  _this.translate = translate;
18003
18087
  _this.dialogRef = dialogRef;
18088
+ _this.commonService = commonService;
18004
18089
  _this.data = data;
18005
18090
  _this.tooltipFormGroup = new forms.FormGroup({
18006
18091
  title: new forms.FormControl('', [forms.Validators.required]),
@@ -18023,7 +18108,9 @@
18023
18108
  this.cdr.detectChanges();
18024
18109
  };
18025
18110
  QMSCKEditorTooltipComponent.prototype.onCloseDialog = function () {
18111
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
18026
18112
  this.dialogRef.close();
18113
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
18027
18114
  };
18028
18115
  QMSCKEditorTooltipComponent.prototype.getOutputContent = function (content) {
18029
18116
  this.tooltip.content = content;
@@ -18046,10 +18133,12 @@
18046
18133
  var tooltip = new QMSCKEditorTooltip();
18047
18134
  tooltip.content = this.tooltip.content;
18048
18135
  tooltip.text = this.tooltip.text;
18136
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
18049
18137
  this.dialogRef.close(tooltip);
18138
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
18050
18139
  };
18051
18140
  QMSCKEditorTooltipComponent.prototype.cancelTooltip = function () {
18052
- this.dialogRef.close();
18141
+ this.onCloseDialog();
18053
18142
  };
18054
18143
  return QMSCKEditorTooltipComponent;
18055
18144
  }(QMSCKEditorBaseComponent));
@@ -18064,15 +18153,20 @@
18064
18153
  { type: i0.ChangeDetectorRef },
18065
18154
  { type: TranslateLibraryService },
18066
18155
  { type: dialog.MatDialogRef },
18156
+ { type: QMSCKEditorCommonService },
18067
18157
  { type: QMSCKEditorTooltip, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
18068
- ]; };
18158
+ ]; };
18159
+ QMSCKEditorTooltipComponent.propDecorators = {
18160
+ ckEditor: [{ type: i0.Input }]
18161
+ };
18069
18162
 
18070
18163
  var QMSCKEditorAboutComponent = /** @class */ (function (_super) {
18071
18164
  __extends(QMSCKEditorAboutComponent, _super);
18072
- function QMSCKEditorAboutComponent(translate, dialogRef, data) {
18165
+ function QMSCKEditorAboutComponent(translate, dialogRef, commonService, data) {
18073
18166
  var _this = _super.call(this) || this;
18074
18167
  _this.translate = translate;
18075
18168
  _this.dialogRef = dialogRef;
18169
+ _this.commonService = commonService;
18076
18170
  _this.data = data;
18077
18171
  _this.currentVersion = data;
18078
18172
  return _this;
@@ -18087,7 +18181,9 @@
18087
18181
  this.currentYear = new Date().getFullYear();
18088
18182
  };
18089
18183
  QMSCKEditorAboutComponent.prototype.onCloseDialog = function () {
18184
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
18090
18185
  this.dialogRef.close();
18186
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
18091
18187
  };
18092
18188
  return QMSCKEditorAboutComponent;
18093
18189
  }(QMSCKEditorBaseComponent));
@@ -18101,8 +18197,12 @@
18101
18197
  QMSCKEditorAboutComponent.ctorParameters = function () { return [
18102
18198
  { type: TranslateLibraryService },
18103
18199
  { type: dialog.MatDialogRef },
18200
+ { type: QMSCKEditorCommonService },
18104
18201
  { type: String, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
18105
- ]; };
18202
+ ]; };
18203
+ QMSCKEditorAboutComponent.propDecorators = {
18204
+ ckEditor: [{ type: i0.Input }]
18205
+ };
18106
18206
 
18107
18207
  /*! Rappid v3.3.0 - HTML5 Diagramming Framework
18108
18208
 
@@ -24131,19 +24231,21 @@
24131
24231
 
24132
24232
  var QMSCKEditorFlowchartComponent = /** @class */ (function (_super) {
24133
24233
  __extends(QMSCKEditorFlowchartComponent, _super);
24134
- function QMSCKEditorFlowchartComponent(dialog, element, translate, flowchartService, uploadService, dialogRef, data) {
24234
+ function QMSCKEditorFlowchartComponent(dialog, element, translate, flowchartService, uploadService, commonService, dialogRef, data) {
24135
24235
  var _this = _super.call(this) || this;
24136
24236
  _this.dialog = dialog;
24137
24237
  _this.element = element;
24138
24238
  _this.translate = translate;
24139
24239
  _this.flowchartService = flowchartService;
24140
24240
  _this.uploadService = uploadService;
24241
+ _this.commonService = commonService;
24141
24242
  _this.dialogRef = dialogRef;
24142
24243
  _this.data = data;
24143
24244
  _this.jsonContent = '';
24144
24245
  _this.id = '';
24145
24246
  _this.flowchart = new QMSCKEditorFlowchart();
24146
24247
  _this.flowchartTemplates = [];
24248
+ _this.ckEditorContainer = document.getElementsByClassName("ck-editor__editable");
24147
24249
  _this.id = data;
24148
24250
  return _this;
24149
24251
  }
@@ -24334,7 +24436,7 @@
24334
24436
  };
24335
24437
  QMSCKEditorFlowchartComponent.prototype.onInsertImage = function () {
24336
24438
  return __awaiter(this, void 0, void 0, function () {
24337
- var id, imageContent, file, relativeUrl, result;
24439
+ var id, imageContent, file, relativeUrl, result, scrollTop;
24338
24440
  return __generator(this, function (_a) {
24339
24441
  switch (_a.label) {
24340
24442
  case 0: return [4 /*yield*/, this.saveImageContent()];
@@ -24348,7 +24450,9 @@
24348
24450
  case 3:
24349
24451
  relativeUrl = _a.sent();
24350
24452
  result = { key: CKEditorEventConst.QMSCK_FLOWCHART + "#" + id, values: relativeUrl };
24453
+ scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
24351
24454
  this.dialogRef.close(result);
24455
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
24352
24456
  return [2 /*return*/];
24353
24457
  }
24354
24458
  });
@@ -24416,6 +24520,7 @@
24416
24520
  data: data,
24417
24521
  disableClose: true
24418
24522
  });
24523
+ dialogTemplate.componentInstance.ckEditor = this.ckEditor;
24419
24524
  dialogTemplate
24420
24525
  .afterClosed()
24421
24526
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24455,7 +24560,9 @@
24455
24560
  });
24456
24561
  };
24457
24562
  QMSCKEditorFlowchartComponent.prototype.onCloseDialog = function () {
24563
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
24458
24564
  this.dialogRef.close();
24565
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
24459
24566
  };
24460
24567
  return QMSCKEditorFlowchartComponent;
24461
24568
  }(QMSCKEditorBaseComponent));
@@ -24472,19 +24579,22 @@
24472
24579
  { type: TranslateLibraryService },
24473
24580
  { type: QMSCKEditorFlowchartService },
24474
24581
  { type: QMSCKEditorUploadService },
24582
+ { type: QMSCKEditorCommonService },
24475
24583
  { type: dialog.MatDialogRef },
24476
24584
  { type: String, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
24477
24585
  ]; };
24478
24586
  QMSCKEditorFlowchartComponent.propDecorators = {
24587
+ ckEditor: [{ type: i0.Input }],
24479
24588
  onMessage: [{ type: i0.HostListener, args: ['window:message', ['$event'],] }]
24480
24589
  };
24481
24590
 
24482
24591
  var QmsCkeditorLinkSimpleComponent = /** @class */ (function (_super) {
24483
24592
  __extends(QmsCkeditorLinkSimpleComponent, _super);
24484
- function QmsCkeditorLinkSimpleComponent(dialogRef, translate, data) {
24593
+ function QmsCkeditorLinkSimpleComponent(dialogRef, translate, commonService, data) {
24485
24594
  var _this = _super.call(this) || this;
24486
24595
  _this.dialogRef = dialogRef;
24487
24596
  _this.translate = translate;
24597
+ _this.commonService = commonService;
24488
24598
  _this.data = data;
24489
24599
  _this.urlFormControl = new forms.FormControl('', [forms.Validators.required]);
24490
24600
  return _this;
@@ -24510,22 +24620,33 @@
24510
24620
  var link = new QMSCKEditorLink();
24511
24621
  link.targetId = exports.TargetType.new;
24512
24622
  link.url = "" + exports.LinkType.url + exports.ProtocolType.http + this.url;
24623
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
24513
24624
  this.dialogRef.close(link);
24625
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
24626
+ };
24627
+ QmsCkeditorLinkSimpleComponent.prototype.onCloseDialog = function () {
24628
+ var scrollTop = this.commonService.getScrollTopCkeditor(this.ckEditor);
24629
+ this.dialogRef.close(null);
24630
+ this.commonService.setScrollTopEditorContainer(this.ckEditor, scrollTop);
24514
24631
  };
24515
24632
  return QmsCkeditorLinkSimpleComponent;
24516
24633
  }(QMSCKEditorBaseComponent));
24517
24634
  QmsCkeditorLinkSimpleComponent.decorators = [
24518
24635
  { type: i0.Component, args: [{
24519
24636
  selector: 'lib-qms-ckeditor-link-simple',
24520
- template: "<div id=\"qmsckeditor_link-simple\" class=\"qmsckeditor qmsckeditor__link-simple__container\">\r\n <div id=\"qmsckeditor_link-simple_header\">\r\n <span mat-icon-button class=\"qmsckeditor button__close\" [mat-dialog-close]=\"false\">\r\n <mat-icon>close</mat-icon>\r\n </span>\r\n <div mat-dialog-content>\r\n <h2>\r\n {{LANG.QMSCKEDITOR.LINK}}\r\n </h2>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link-simple_body\" class=\"row\">\r\n <div id=\"qmsckeditor_link-simple_url\">\r\n <mat-form-field class=\"col-12\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_URL }}</mat-label>\r\n <input matInput [(ngModel)]=\"url\" name=\"url\" [formControl]=\"urlFormControl\" />\r\n <mat-error *ngIf=\"urlFormControl.hasError('required')\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link-simple_footer\">\r\n <div id=\"qmsckeditor_link-simple_action\" align=\"end\">\r\n <button qms-btn-text [mat-dialog-close]=\"false\">{{LANG.CANCEL}}</button>\r\n <button qms-btn (click)=\"setLink()\">{{LANG.SAVE}}</button>\r\n </div>\r\n </div>\r\n</div>",
24637
+ template: "<div id=\"qmsckeditor_link-simple\" class=\"qmsckeditor qmsckeditor__link-simple__container\">\r\n <div id=\"qmsckeditor_link-simple_header\">\r\n <span mat-icon-button class=\"qmsckeditor button__close\" (click)=\"onCloseDialog()\">\r\n <mat-icon>close</mat-icon>\r\n </span>\r\n <div mat-dialog-content>\r\n <h2>\r\n {{LANG.QMSCKEDITOR.LINK}}\r\n </h2>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link-simple_body\" class=\"row\">\r\n <div id=\"qmsckeditor_link-simple_url\">\r\n <mat-form-field class=\"col-12\" appearance=\"fill\">\r\n <mat-label>{{ LANG.QMSCKEDITOR.LINK_URL }}</mat-label>\r\n <input matInput [(ngModel)]=\"url\" name=\"url\" [formControl]=\"urlFormControl\" />\r\n <mat-error *ngIf=\"urlFormControl.hasError('required')\">\r\n </mat-error>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n <div id=\"qmsckeditor_link-simple_footer\">\r\n <div id=\"qmsckeditor_link-simple_action\" align=\"end\">\r\n <button qms-btn-text (click)=\"onCloseDialog()\">{{LANG.CANCEL}}</button>\r\n <button qms-btn (click)=\"setLink()\">{{LANG.SAVE}}</button>\r\n </div>\r\n </div>\r\n</div>",
24521
24638
  styles: [".mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt7{margin-top:7px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mt30{margin-top:30px!important}.mt40{margin-top:40px!important}.ml2{margin-left:2px!important}.ml3{margin-left:3px!important}.ml5{margin-left:5px!important}.ml15{margin-left:15px!important}.ml10{margin-left:10px!important}.ml12{margin-left:12px!important}.ml16{margin-left:16px!important}.ml-auto{margin-left:auto!important}.ml-25{margin-left:-25px!important}.mr5{margin-right:5px!important}.mr12{margin-right:12px!important}.mr15{margin-right:15px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.pt8{padding-top:8px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pt16{padding-top:16px!important}.pl15{padding-left:15px!important}.pl0{padding-left:0!important}.pr0{padding-right:0!important}.pr15{padding-right:15px!important}.fs12{font-size:12px}.fs14{font-size:14px!important}.fs16{font-size:16px!important}.fs22{font-size:22px!important}.fw500{font-weight:500!important}.italic-text{font-style:italic}.display-flex{display:flex}.qmsckeditor{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.qmsckeditor h2{font-size:20px;font-weight:400}.qmsckeditor .mat-dialog-content{padding:0}.qmsckeditor .mat-icon{color:#909497}.qmsckeditor__fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;background:#fff;overflow-y:auto;max-height:100vh;overflow-x:hidden}.qmsckeditor__cursor{cursor:pointer}.qmsckeditor__notallowed{cursor:not-allowed}.qmsckeditor.button__close,.qmsckeditor.button__done{float:right;top:-24px;right:-24px;cursor:pointer}.qmsckeditor.button__done{margin-right:20px}.qmsckeditor.button__done .mat-icon{color:#28a745;font-weight:700}.qmsckeditor.button__groups button{min-height:40px;width:100%;border-radius:4px;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px}.qmsckeditor.button__groups .save{background:#f8f9f9}.qmsckeditor.button__groups .save:hover{background:#e5e7e9}.qmsckeditor.button__groups .save:disabled{cursor:not-allowed}.qmsckeditor.button__groups .cancel{background:#f8f9f9}.qmsckeditor.button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.button__groups .cancel:disabled{cursor:not-allowed}.qmsckeditor.button__groups .delete{background:#f8f9f9}.qmsckeditor.button__groups .delete:hover{background:#e5e7e9}.qmsckeditor.button__groups .delete:disabled{cursor:not-allowed}.qmsckeditor.confirm__button__groups button{min-height:36px;border-radius:4px;width:auto;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px;padding-left:15px;padding-right:15px}.qmsckeditor.confirm__button__groups .confirm{background:#f8f9f9}.qmsckeditor.confirm__button__groups .confirm:hover{background:#e5e7e9}.qmsckeditor.confirm__button__groups .cancel{background:#f8f9f9}.qmsckeditor.confirm__button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.template-content.height{min-height:420px;max-height:520px;overflow:auto}.qmsckeditor.template-content.title{margin-left:-9px}.qmsckeditor.link__content.height{min-height:400px;max-height:520px}.qmsckeditor.card{margin-bottom:10px;min-height:60px;box-shadow:none;border:1px solid #e5e5e5}.qmsckeditor.card .title{font-weight:700}.qmsckeditor.card .content{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.qmsckeditor.card .material-icons{font-size:20px}.qmsckeditor.tooltip-content.height{min-height:400px;max-height:472px;overflow:auto}.qmsckeditor.save__as__template.height{height:125px}.ck-content .ck-horizontal-line,.ck-content .page-break{width:100%}.ck-content hr{background:#ccc}.ck-font-size-dropdown .ck-dropdown__panel ul{max-height:320px;overflow-y:auto}.ck-font-size-dropdown .ck-dropdown__panel ul li .ck-fontsize-option .ck-button__label{line-height:50px}"]
24522
24639
  },] }
24523
24640
  ];
24524
24641
  QmsCkeditorLinkSimpleComponent.ctorParameters = function () { return [
24525
24642
  { type: dialog.MatDialogRef },
24526
24643
  { type: TranslateLibraryService },
24644
+ { type: QMSCKEditorCommonService },
24527
24645
  { type: QMSCKEditorLink, decorators: [{ type: i0.Inject, args: [dialog.MAT_DIALOG_DATA,] }] }
24528
- ]; };
24646
+ ]; };
24647
+ QmsCkeditorLinkSimpleComponent.propDecorators = {
24648
+ ckEditor: [{ type: i0.Input }]
24649
+ };
24529
24650
 
24530
24651
  var CKEditorImageUploadTypeConst = /** @class */ (function () {
24531
24652
  function CKEditorImageUploadTypeConst() {
@@ -24558,34 +24679,34 @@
24558
24679
  }
24559
24680
  QMSCKEditorComponent.prototype.onMessage = function (event) {
24560
24681
  switch (event.data.eventName) {
24561
- case this.ckEditorEventConst.QMSCK_TEMPLATE_PLUGIN_MSG:
24682
+ case this.ckEditorEventConst.QMSCK_TEMPLATE_PLUGIN_MSG + this.editorInstance.id:
24562
24683
  this.templateEventHandling();
24563
24684
  break;
24564
- case this.ckEditorEventConst.QMSCK_LOAD_TEMPLATE_PLUGIN_MSG:
24685
+ case this.ckEditorEventConst.QMSCK_LOAD_TEMPLATE_PLUGIN_MSG + this.editorInstance.id:
24565
24686
  this.loadTemplateEventHandling();
24566
24687
  break;
24567
- case this.ckEditorEventConst.QMSCK_LINK_PLUGIN_MSG:
24688
+ case this.ckEditorEventConst.QMSCK_LINK_PLUGIN_MSG + this.editorInstance.id:
24568
24689
  this.linkEventHandling(event.data.value, this.qmsckContentFields, this.qmsckIsGetAnchorMoreContent);
24569
24690
  break;
24570
- case this.ckEditorEventConst.QMSCK_TOOLTIP_PLUGIN_MSG:
24691
+ case this.ckEditorEventConst.QMSCK_TOOLTIP_PLUGIN_MSG + this.editorInstance.id:
24571
24692
  this.tooltipEventHandling(event.data.value);
24572
24693
  break;
24573
- case this.ckEditorEventConst.QMSCK_IMAGEMAP_PLUGIN_MSG:
24694
+ case this.ckEditorEventConst.QMSCK_IMAGEMAP_PLUGIN_MSG + this.editorInstance.id:
24574
24695
  this.imageMapEventHandling(event.data.value);
24575
24696
  break;
24576
- case this.ckEditorEventConst.QMSCK_BPMN_PLUGIN_MSG:
24697
+ case this.ckEditorEventConst.QMSCK_BPMN_PLUGIN_MSG + this.editorInstance.id:
24577
24698
  this.bpmnEventHandling(event.data.value);
24578
24699
  break;
24579
- case this.ckEditorEventConst.QMSCK_ABOUT_CKEDITOR_PLUGIN_MSG:
24700
+ case this.ckEditorEventConst.QMSCK_ABOUT_CKEDITOR_PLUGIN_MSG + this.editorInstance.id:
24580
24701
  this.aboutCKEditorEventHandling(event.data.value);
24581
24702
  break;
24582
- case this.ckEditorEventConst.QMSCK_FLOWCHART_PLUGIN_MSG:
24703
+ case this.ckEditorEventConst.QMSCK_FLOWCHART_PLUGIN_MSG + this.editorInstance.id:
24583
24704
  this.flowchartEventHandling(event.data.value);
24584
24705
  break;
24585
- case this.ckEditorEventConst.QMSCK_TOGGLE_TOOLBAR_MSG:
24706
+ case this.ckEditorEventConst.QMSCK_TOGGLE_TOOLBAR_MSG + this.editorInstance.id:
24586
24707
  this.toggleToolbarEventHandling();
24587
24708
  break;
24588
- case this.ckEditorEventConst.QMSCK_BROWSE_VIDEO_MSG:
24709
+ case this.ckEditorEventConst.QMSCK_BROWSE_VIDEO_MSG + this.editorInstance.id:
24589
24710
  this.browseVideoEventHandling(event.data.value);
24590
24711
  break;
24591
24712
  default:
@@ -24607,6 +24728,9 @@
24607
24728
  toolbarItems += ',' + this.qmsckData.toggledToolbarItems;
24608
24729
  }
24609
24730
  this.ckeditorConfig = CKEditorCommonFunctions.getCKEditorConfiguration(toolbarItems);
24731
+ if (this.ckeditorConfig)
24732
+ this.ckeditorConfig.containerId = this.editorId;
24733
+ this.ckeditorConfig = CKEditorCommonFunctions.getCKEditorConfiguration(toolbarItems);
24610
24734
  if (this.qmsckData.hideImgOptions) {
24611
24735
  this.ckeditorConfig = this.hideImageOptions(this.ckeditorConfig, this.qmsckData.hideImgOptions);
24612
24736
  }
@@ -24799,7 +24923,7 @@
24799
24923
  // Apped Wordcount to CKeditor
24800
24924
  editor.plugins.get("WordCount").on("update", function (evt, stats) {
24801
24925
  // Prints the current content statistics.
24802
- var wordsBox = document.querySelector(".wordcount-content");
24926
+ var wordsBox = document.querySelector("#" + _this.editorId + " .wordcount-content");
24803
24927
  if (!!wordsBox) {
24804
24928
  wordsBox.textContent = _this.LANG.QMSCKEDITOR.WORDS + ": " + stats.words + " / " + _this.LANG.QMSCKEDITOR.CHARACTERS + ": " + stats.characters;
24805
24929
  }
@@ -24820,6 +24944,7 @@
24820
24944
  data: data,
24821
24945
  disableClose: true,
24822
24946
  });
24947
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24823
24948
  dialogTemplate
24824
24949
  .afterClosed()
24825
24950
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24840,6 +24965,7 @@
24840
24965
  data: this.qmsckContentInput,
24841
24966
  disableClose: true,
24842
24967
  });
24968
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24843
24969
  dialogTemplate
24844
24970
  .afterClosed()
24845
24971
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24857,6 +24983,8 @@
24857
24983
  */
24858
24984
  QMSCKEditorComponent.prototype.linkEventHandling = function (link, qmsckContentFields, qmsckIsGetAnchorMoreContent) {
24859
24985
  var _this = this;
24986
+ if (link.ckeditorId != this.editorInstance.id)
24987
+ return;
24860
24988
  var data = new QMSCKEditorLink();
24861
24989
  data = link;
24862
24990
  data.editorContent = this.qmsckContentInput;
@@ -24884,6 +25012,7 @@
24884
25012
  autoFocus: false,
24885
25013
  });
24886
25014
  }
25015
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24887
25016
  dialogTemplate
24888
25017
  .afterClosed()
24889
25018
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24909,6 +25038,7 @@
24909
25038
  data: data,
24910
25039
  disableClose: true,
24911
25040
  });
25041
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24912
25042
  dialogTemplate
24913
25043
  .afterClosed()
24914
25044
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24940,6 +25070,7 @@
24940
25070
  data: data,
24941
25071
  disableClose: true,
24942
25072
  });
25073
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24943
25074
  dialogTemplate
24944
25075
  .afterClosed()
24945
25076
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24970,6 +25101,7 @@
24970
25101
  data: data,
24971
25102
  disableClose: true,
24972
25103
  });
25104
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24973
25105
  dialogTemplate
24974
25106
  .afterClosed()
24975
25107
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -24991,6 +25123,7 @@
24991
25123
  data: version,
24992
25124
  disableClose: true,
24993
25125
  });
25126
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
24994
25127
  dialogTemplate
24995
25128
  .afterClosed()
24996
25129
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -25053,6 +25186,7 @@
25053
25186
  data: id,
25054
25187
  disableClose: true,
25055
25188
  });
25189
+ dialogTemplate.componentInstance.ckEditor = this.editorInstance;
25056
25190
  dialogTemplate
25057
25191
  .afterClosed()
25058
25192
  .pipe(operators.takeUntil(this.ngUnsubcribe))
@@ -25185,7 +25319,7 @@
25185
25319
  ],
25186
25320
  encapsulation: i0.ViewEncapsulation.None,
25187
25321
  changeDetection: i0.ChangeDetectionStrategy.OnPush,
25188
- styles: [".mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt7{margin-top:7px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mt30{margin-top:30px!important}.mt40{margin-top:40px!important}.ml2{margin-left:2px!important}.ml3{margin-left:3px!important}.ml5{margin-left:5px!important}.ml15{margin-left:15px!important}.ml10{margin-left:10px!important}.ml12{margin-left:12px!important}.ml16{margin-left:16px!important}.ml-auto{margin-left:auto!important}.ml-25{margin-left:-25px!important}.mr5{margin-right:5px!important}.mr12{margin-right:12px!important}.mr15{margin-right:15px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.pt8{padding-top:8px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pt16{padding-top:16px!important}.pl15{padding-left:15px!important}.pl0{padding-left:0!important}.pr0{padding-right:0!important}.pr15{padding-right:15px!important}.fs12{font-size:12px}.fs14{font-size:14px!important}.fs16{font-size:16px!important}.fs22{font-size:22px!important}.fw500{font-weight:500!important}.italic-text{font-style:italic}.display-flex{display:flex}.qmsckeditor{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.qmsckeditor h2{font-size:20px;font-weight:400}.qmsckeditor .mat-dialog-content{padding:0}.qmsckeditor .mat-icon{color:#909497}.qmsckeditor__fullscreen{overflow-y:auto;max-height:100vh;overflow-x:hidden}.qmsckeditor__cursor{cursor:pointer}.qmsckeditor__notallowed{cursor:not-allowed}.qmsckeditor.button__close,.qmsckeditor.button__done{float:right;top:-24px;right:-24px;cursor:pointer}.qmsckeditor.button__done{margin-right:20px}.qmsckeditor.button__done .mat-icon{color:#28a745;font-weight:700}.qmsckeditor.button__groups button{min-height:40px;width:100%;border-radius:4px;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px}.qmsckeditor.button__groups .save{background:#f8f9f9}.qmsckeditor.button__groups .save:hover{background:#e5e7e9}.qmsckeditor.button__groups .save:disabled{cursor:not-allowed}.qmsckeditor.button__groups .cancel{background:#f8f9f9}.qmsckeditor.button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.button__groups .cancel:disabled{cursor:not-allowed}.qmsckeditor.button__groups .delete{background:#f8f9f9}.qmsckeditor.button__groups .delete:hover{background:#e5e7e9}.qmsckeditor.button__groups .delete:disabled{cursor:not-allowed}.qmsckeditor.confirm__button__groups button{min-height:36px;border-radius:4px;width:auto;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px;padding-left:15px;padding-right:15px}.qmsckeditor.confirm__button__groups .confirm{background:#f8f9f9}.qmsckeditor.confirm__button__groups .confirm:hover{background:#e5e7e9}.qmsckeditor.confirm__button__groups .cancel{background:#f8f9f9}.qmsckeditor.confirm__button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.template-content.height{min-height:420px;max-height:520px;overflow:auto}.qmsckeditor.template-content.title{margin-left:-9px}.qmsckeditor.link__content.height{min-height:400px;max-height:520px}.qmsckeditor.card{margin-bottom:10px;min-height:60px;box-shadow:none;border:1px solid #e5e5e5}.qmsckeditor.card .title{font-weight:700}.qmsckeditor.card .content{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.qmsckeditor.card .material-icons{font-size:20px}.qmsckeditor.tooltip-content.height{min-height:400px;max-height:472px;overflow:auto}.qmsckeditor.save__as__template.height{height:125px}.ck-content .ck-horizontal-line,.ck-content .page-break{width:100%}.ck-content hr{background:#ccc}.ck-font-size-dropdown .ck-dropdown__panel ul{max-height:320px;overflow-y:auto}.ck-font-size-dropdown .ck-dropdown__panel ul li .ck-fontsize-option .ck-button__label{line-height:50px}.qmsckeditor_container .qmsckeditor__minwidth{width:100%}.qmsckeditor_container .ck-editor__editable{overflow-y:auto}.qmsckeditor_container p{line-height:normal}.qms-ckeditor .ck.ck-editor__editable{max-height:172px;min-height:172px;background-color:rgba(0,0,0,.04);font-family:Open Sans}.qms-ckeditor .ck.ck-editor__editable:not(.ck-focused,.ck-read-only):hover{background-color:rgba(0,0,0,.08);border-bottom:2px solid rgba(0,0,0,.38)}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar{width:12px}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-track{background:transparent;background-clip:content-box}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-thumb{background:rgba(0,0,0,.38);border-radius:20px;width:4px;border:4px solid transparent;background-clip:content-box}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.5);background-clip:content-box;border:4px solid transparent}.qms-ckeditor .ck-placeholder{font-size:1rem;font-weight:600;color:rgba(0,0,0,.6)}.qms-ckeditor .ck-disabled .ck.ck-editor__main>.ck-editor__editable,.qms-ckeditor .ck-disabled .ck.ck-toolbar{background-color:var(--disabled);pointer-events:none}.qms-ckeditor .ck-disabled .ck-button{pointer-events:none}.qms-ckeditor .ck.ck-editor__main>.ck-editor__editable:not(.ck-focused):focus{border-radius:4px}.qms-ckeditor .ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused{border:1px solid #c4c4c4;border-bottom:2px solid var(--primary);border-radius:4px;box-shadow:none;background-color:rgba(0,0,0,.08)}.qms-ckeditor .ck.ck-toolbar{box-shadow:0 1px 3px rgba(51,51,51,.2)}.qms-ckeditor .ck.ck-sticky-panel .ck-sticky-panel__content_sticky{box-shadow:none;border-width:0}.qmsckeditor__fullscreen{position:fixed;top:0;left:0;bottom:0;right:0;overflow:auto;background:#fff}.qmsckeditor__fullscreen .qms-ckeditor{height:98%;display:block;width:100%}.qmsckeditor__fullscreen .ck.ck-editor__main{height:98%}.qmsckeditor__fullscreen .ck.ck-editor__editable{height:inherit}.sub-container{display:flex;justify-content:space-between;padding:0 10px;font-family:Open Sans;font-size:.75rem;font-weight:400;line-height:16px;color:rgba(0,0,0,.6)}"]
25322
+ styles: [".mt5{margin-top:5px!important}.mt10{margin-top:10px!important}.mt7{margin-top:7px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mt30{margin-top:30px!important}.mt40{margin-top:40px!important}.ml2{margin-left:2px!important}.ml3{margin-left:3px!important}.ml5{margin-left:5px!important}.ml15{margin-left:15px!important}.ml10{margin-left:10px!important}.ml12{margin-left:12px!important}.ml16{margin-left:16px!important}.ml-auto{margin-left:auto!important}.ml-25{margin-left:-25px!important}.mr5{margin-right:5px!important}.mr12{margin-right:12px!important}.mr15{margin-right:15px!important}.mb5{margin-bottom:5px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.pt8{padding-top:8px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pt16{padding-top:16px!important}.pl15{padding-left:15px!important}.pl0{padding-left:0!important}.pr0{padding-right:0!important}.pr15{padding-right:15px!important}.fs12{font-size:12px}.fs14{font-size:14px!important}.fs16{font-size:16px!important}.fs22{font-size:22px!important}.fw500{font-weight:500!important}.italic-text{font-style:italic}.display-flex{display:flex}.qmsckeditor{font-family:Roboto,Helvetica Neue,sans-serif;font-size:14px;font-weight:400}.qmsckeditor h2{font-size:20px;font-weight:400}.qmsckeditor .mat-dialog-content{padding:0}.qmsckeditor .mat-icon{color:#909497}.qmsckeditor__fullscreen{overflow-y:auto;max-height:100vh;overflow-x:hidden}.qmsckeditor__cursor{cursor:pointer}.qmsckeditor__notallowed{cursor:not-allowed}.qmsckeditor.button__close,.qmsckeditor.button__done{float:right;top:-24px;right:-24px;cursor:pointer}.qmsckeditor.button__done{margin-right:20px}.qmsckeditor.button__done .mat-icon{color:#28a745;font-weight:700}.qmsckeditor.button__groups button{min-height:40px;width:100%;border-radius:4px;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px}.qmsckeditor.button__groups .save{background:#f8f9f9}.qmsckeditor.button__groups .save:hover{background:#e5e7e9}.qmsckeditor.button__groups .save:disabled{cursor:not-allowed}.qmsckeditor.button__groups .cancel{background:#f8f9f9}.qmsckeditor.button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.button__groups .cancel:disabled{cursor:not-allowed}.qmsckeditor.button__groups .delete{background:#f8f9f9}.qmsckeditor.button__groups .delete:hover{background:#e5e7e9}.qmsckeditor.button__groups .delete:disabled{cursor:not-allowed}.qmsckeditor.confirm__button__groups button{min-height:36px;border-radius:4px;width:auto;border:1px solid #c5c5c5;font-family:Open Sans;font-weight:600;font-size:14px;letter-spacing:1px;line-height:16px;padding-left:15px;padding-right:15px}.qmsckeditor.confirm__button__groups .confirm{background:#f8f9f9}.qmsckeditor.confirm__button__groups .confirm:hover{background:#e5e7e9}.qmsckeditor.confirm__button__groups .cancel{background:#f8f9f9}.qmsckeditor.confirm__button__groups .cancel:hover{background:#e5e7e9}.qmsckeditor.template-content.height{min-height:420px;max-height:520px;overflow:auto}.qmsckeditor.template-content.title{margin-left:-9px}.qmsckeditor.link__content.height{min-height:400px;max-height:520px}.qmsckeditor.card{margin-bottom:10px;min-height:60px;box-shadow:none;border:1px solid #e5e5e5}.qmsckeditor.card .title{font-weight:700}.qmsckeditor.card .content{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.qmsckeditor.card .material-icons{font-size:20px}.qmsckeditor.tooltip-content.height{min-height:400px;max-height:472px;overflow:auto}.qmsckeditor.save__as__template.height{height:125px}.ck-content .ck-horizontal-line,.ck-content .page-break{width:100%}.ck-content hr{background:#ccc}.ck-font-size-dropdown .ck-dropdown__panel ul{max-height:320px;overflow-y:auto}.ck-font-size-dropdown .ck-dropdown__panel ul li .ck-fontsize-option .ck-button__label{line-height:50px}.qmsckeditor_container .qmsckeditor__minwidth{width:100%}.qmsckeditor_container .ck-editor__editable{overflow-y:auto}.qmsckeditor_container p{line-height:normal}.qms-ckeditor .ck.ck-editor__editable{max-height:172px;min-height:172px;background-color:rgba(0,0,0,.04);font-family:Open Sans}.qms-ckeditor .ck.ck-editor__editable:not(.ck-focused,.ck-read-only):hover{background-color:rgba(0,0,0,.08);border-bottom:2px solid rgba(0,0,0,.38)}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar{width:12px}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-track{background:transparent;background-clip:content-box}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-thumb{background:rgba(0,0,0,.38);border-radius:20px;width:4px;border:4px solid transparent;background-clip:content-box}.qms-ckeditor .ck.ck-editor__editable::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.5);background-clip:content-box;border:4px solid transparent}.qms-ckeditor .ck-placeholder{font-size:1rem;font-weight:600;color:rgba(0,0,0,.6)}.qms-ckeditor .ck-disabled .ck.ck-editor__main>.ck-editor__editable,.qms-ckeditor .ck-disabled .ck.ck-toolbar{background-color:var(--disabled);pointer-events:none}.qms-ckeditor .ck-disabled .ck-button{pointer-events:none}.qms-ckeditor .ck.ck-editor__main>.ck-editor__editable:not(.ck-focused):focus{border-radius:4px}.qms-ckeditor .ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused{border:1px solid #c4c4c4;border-bottom:2px solid var(--primary);border-radius:4px;box-shadow:none;background-color:rgba(0,0,0,.08)}.qms-ckeditor .ck.ck-toolbar{box-shadow:0 1px 3px rgba(51,51,51,.2)}.qms-ckeditor .ck.ck-sticky-panel .ck-sticky-panel__content_sticky{box-shadow:none;border-width:0}.qmsckeditor__fullscreen{position:fixed;top:0;left:0;bottom:0;right:0;overflow:auto;background:#fff;z-index:99}.qmsckeditor__fullscreen .qms-ckeditor{height:98%;display:block;width:100%}.qmsckeditor__fullscreen .ck.ck-editor__main{height:98%}.qmsckeditor__fullscreen .ck.ck-editor__editable{height:calc(100vh - 100px);max-height:100%!important}.sub-container{display:flex;justify-content:space-between;padding:0 10px;font-family:Open Sans;font-size:.75rem;font-weight:400;line-height:16px;color:rgba(0,0,0,.6)}"]
25189
25323
  },] }
25190
25324
  ];
25191
25325
  QMSCKEditorComponent.ctorParameters = function () { return [
@@ -30635,10 +30769,13 @@
30635
30769
  this.customClass = '';
30636
30770
  this.headerName = {
30637
30771
  externalName: '',
30638
- treeName: ''
30772
+ treeName: '',
30773
+ resultSearchName: ''
30639
30774
  };
30640
30775
  this.modeView = exports.ModeDepartmentTreeeViewEnum.Basic;
30641
30776
  this.activeSelectAllNode = false;
30777
+ this.isMobile = false;
30778
+ this.lazy = false;
30642
30779
  }
30643
30780
  return QMSSelectDepartmentTreeConfig;
30644
30781
  }());
@@ -30732,13 +30869,14 @@
30732
30869
  var _this = _super.call(this) || this;
30733
30870
  _this.data = [];
30734
30871
  _this.data = [];
30872
+ _this.pageIndex = 0;
30735
30873
  return _this;
30736
30874
  }
30737
30875
  return QMSDepartmentPagingModel;
30738
30876
  }(paginator.PageEvent));
30739
30877
 
30740
30878
  var SelectDepartmentTreeComponent = /** @class */ (function () {
30741
- function SelectDepartmentTreeComponent(cdRef, domSanitizer, appIconService, iconRegistry, eleRef, trans, treeDepartmentGlobalService) {
30879
+ function SelectDepartmentTreeComponent(cdRef, domSanitizer, appIconService, iconRegistry, eleRef, trans, treeDepartmentGlobalService, overlay, viewContainerRef) {
30742
30880
  var _this = this;
30743
30881
  this.cdRef = cdRef;
30744
30882
  this.domSanitizer = domSanitizer;
@@ -30747,26 +30885,34 @@
30747
30885
  this.eleRef = eleRef;
30748
30886
  this.trans = trans;
30749
30887
  this.treeDepartmentGlobalService = treeDepartmentGlobalService;
30888
+ this.overlay = overlay;
30889
+ this.viewContainerRef = viewContainerRef;
30890
+ this.spinnerArr = new Array(12).fill(0);
30750
30891
  this.arrSkeleton = new Array(6).fill(0);
30751
30892
  this.height = '50vh';
30752
30893
  this.config = new QMSSelectDepartmentTreeConfig();
30753
30894
  this.isIncludeChildren = false;
30754
30895
  this.onSearchEvent = new i0.EventEmitter();
30755
30896
  this.onPagingSearchEvent = new i0.EventEmitter();
30897
+ this.onValueChangeEvent = new i0.EventEmitter();
30898
+ this.selectionNodeChangeEvent = new i0.EventEmitter();
30899
+ this.onCheckNodeEvent = new i0.EventEmitter();
30900
+ this.onExpandNodeEvent = new i0.EventEmitter();
30901
+ this.onLoadMoreEvent = new i0.EventEmitter();
30902
+ this.onCheckItemSearchEvent = new i0.EventEmitter();
30903
+ this.onCheckAllItemSearchEvent = new i0.EventEmitter();
30756
30904
  this.MODE_VIEW_ENUM = exports.ModeDepartmentTreeeViewEnum;
30905
+ this.ITEM_SIZE = 50;
30757
30906
  this.ngUnsubscribe = new rxjs.Subject();
30758
- this.isLoaded = false;
30759
30907
  this.resultSearchSelected = [];
30760
30908
  this.resultSelected = [];
30761
30909
  this.getDataTree$ = new rxjs.BehaviorSubject([]);
30762
- this.onValueChangeEvent = new i0.EventEmitter();
30763
- this.selectionNodeChangeEvent = new i0.EventEmitter();
30764
30910
  this.searchDepartment$ = new rxjs.BehaviorSubject(new QMSDepartmentPagingModel());
30765
30911
  this.resultSearch = [];
30766
- this.indexView = 0;
30912
+ this.getIndexView$ = new rxjs.BehaviorSubject(0);
30767
30913
  this.scrollToNodeEvent$ = new rxjs.Subject();
30768
- this.activeNode = '';
30769
30914
  this.getActiveNodeEvent$ = new rxjs.Subject();
30915
+ this.activeNode = '';
30770
30916
  this.PAGINATION_SIZE = exports.PaginationSize;
30771
30917
  this.PAGE_SIZE_OPTION = [5, 10, 15, 20, 25, 100];
30772
30918
  this.nestedTreeNodeMap = new Map();
@@ -30775,17 +30921,19 @@
30775
30921
  this.checkListSelectionSearch = new collections.SelectionModel(true);
30776
30922
  this.formSearchControl = new forms.FormControl('');
30777
30923
  this.getLoading$ = new rxjs.BehaviorSubject(false);
30924
+ this.getLoadingMore$ = new rxjs.BehaviorSubject(false);
30925
+ this.afterOnCheckNode = new rxjs.Subject();
30926
+ this.onBeforeInitNodeSelected$ = new rxjs.Subject();
30778
30927
  this.textResultSearch = '';
30779
30928
  this.itemIconType = ItemIconType;
30780
30929
  this._transformer = function (node, level) {
30781
- var _a;
30782
30930
  var flatNode = _this.convertToFlatNode(node) || new QMSFlatNodeTree();
30783
30931
  flatNode.id = node.id;
30784
30932
  flatNode.name = node.name;
30785
- flatNode.expandable = (node.children && node.children.length > 0) || (!!node.childCount);
30933
+ flatNode.expandable = (node.children && node.children.length > 0) || (!!node.childCount) || node.expandable;
30786
30934
  flatNode.level = level;
30787
30935
  flatNode.parentId = node.parentId;
30788
- flatNode.markedGetChildren = !!((_a = node.children) === null || _a === void 0 ? void 0 : _a.length);
30936
+ flatNode.markedGetChildren = node.children.length > 0;
30789
30937
  flatNode.parentId = node.parentId;
30790
30938
  flatNode.itemIcon = node.itemIcon;
30791
30939
  flatNode.itemIconSvg = node.itemIconSvg;
@@ -30809,6 +30957,7 @@
30809
30957
  if (!_this.dataSource)
30810
30958
  return;
30811
30959
  _this.dataSource.data = data;
30960
+ _this.cdRef.detectChanges();
30812
30961
  });
30813
30962
  // Register icon
30814
30963
  appIconService.registerProcessIcon(iconRegistry, domSanitizer);
@@ -30826,10 +30975,9 @@
30826
30975
  this._handleSearchEvent();
30827
30976
  this._handleActiveNodeEvent();
30828
30977
  this._handleItemSelectionChanged();
30829
- this.getLoading$.pipe(operators.takeUntil(this.ngUnsubscribe))
30830
- .subscribe(function (res) {
30978
+ this.getLoading$.pipe(operators.takeUntil(this.ngUnsubscribe), operators.tap(function (res) {
30831
30979
  res ? _this.formSearchControl.disable() : _this.formSearchControl.enable();
30832
- });
30980
+ })).subscribe();
30833
30981
  }
30834
30982
  Object.defineProperty(SelectDepartmentTreeComponent.prototype, "rowsSkeleton", {
30835
30983
  set: function (value) {
@@ -30890,107 +31038,157 @@
30890
31038
  this.cdRef.detectChanges();
30891
31039
  };
30892
31040
  SelectDepartmentTreeComponent.prototype.ngAfterViewInit = function () {
31041
+ var _this = this;
31042
+ // this.cdkVirtualScrollViewport.elementScrolled().pipe(
31043
+ // takeUntil(this.ngUnsubscribe),
31044
+ // map(x => {
31045
+ // const element = x.target as Element;
31046
+ // const elementNode = element.childNodes?.item(0).childNodes;
31047
+ // for (let i = elementNode.length; i > 0; i--) {
31048
+ // const nodeHTML = elementNode.item(i) as Element;
31049
+ // if (!nodeHTML)
31050
+ // continue;
31051
+ // if (nodeHTML?.className?.includes('qms-tree-node')) {
31052
+ // return nodeHTML.getAttribute('data-id');
31053
+ // }
31054
+ // }
31055
+ // return;
31056
+ // }),
31057
+ // tap(res => {
31058
+ // if (res) {
31059
+ // console.log(this.treeControl.dataNodes.find(x => x.id === res));
31060
+ // }
31061
+ // })
31062
+ // ).subscribe();
31063
+ this.getIndexView$.pipe(operators.takeUntil(this.ngUnsubscribe), operators.delay(this.config.lazy ? 1000 : 0), operators.tap(function (value) {
31064
+ if (value === 0)
31065
+ _this.cdkVirtualScrollViewport &&
31066
+ _this.cdkVirtualScrollViewport.scrolledIndexChange
31067
+ .pipe(operators.map(function (_) { return _this.cdkVirtualScrollViewport.measureScrollOffset('bottom'); }), operators.pairwise(), operators.filter(function (_b) {
31068
+ var _c = __read(_b, 2), x1 = _c[0], x2 = _c[1];
31069
+ return x1 > x2 && x2 < 140;
31070
+ }), operators.throttleTime(200), operators.tap(function (_) {
31071
+ if (_this.getLoadingMore$.value || !_this.config.lazy)
31072
+ return;
31073
+ _this.onLoadMoreEvent.emit();
31074
+ _this.getLoadingMore$.next(true);
31075
+ }))
31076
+ .subscribe();
31077
+ })).subscribe();
31078
+ this.onBeforeInitNodeSelected$.pipe(operators.takeUntil(this.ngUnsubscribe), operators.tap(function (_) {
31079
+ _this._initCheckListSelected();
31080
+ _this.getLoadingMore$.next(false);
31081
+ })).subscribe();
30893
31082
  this.cdRef.detectChanges();
30894
31083
  };
30895
31084
  SelectDepartmentTreeComponent.prototype.ngOnInit = function () {
30896
31085
  this._initTreeData();
30897
- this._initCheckListSelected();
31086
+ if (!this.config.lazy)
31087
+ this._initCheckListSelected();
30898
31088
  };
30899
31089
  SelectDepartmentTreeComponent.prototype.ngOnDestroy = function () {
30900
31090
  this.ngUnsubscribe.next();
30901
31091
  this.ngUnsubscribe.complete();
30902
31092
  };
30903
31093
  SelectDepartmentTreeComponent.prototype._initTreeData = function () {
30904
- var _this = this;
30905
31094
  this.treeControl = new tree.FlatTreeControl(this.getLevel, this.isExpandable);
30906
31095
  this.treeFlattener = new tree$1.MatTreeFlattener(this._transformer, this.getLevel, this.isExpandable, this._getChild);
30907
31096
  this.dataSource = new tree$1.MatTreeFlatDataSource(this.treeControl, this.treeFlattener);
30908
31097
  var _treeDataInput = ___namespace.cloneDeep(this.config.treeData);
30909
31098
  if (!_treeDataInput.length)
30910
31099
  return;
30911
- var rootNode = _treeDataInput.filter(function (item) { return !item.parentId; })
30912
- .map(function (item, _index) {
30913
- var node = {
30914
- id: item.id,
30915
- name: item.name,
30916
- externalName: item.externalName,
30917
- markedGetChildren: item.markedGetChildren,
30918
- children: [],
30919
- isFile: false,
30920
- itemIcon: item.itemIcon,
30921
- itemMatIcon: item.itemMatIcon,
30922
- itemIconSvg: item.itemIconSvg,
30923
- parentId: item.parentId,
30924
- isGroup: false
30925
- };
30926
- return node;
30927
- });
30928
- if (!rootNode.length)
30929
- throw ('Data invalid.');
30930
- var invalidItems = _treeDataInput.filter(function (item) { return item.id == item.parentId; }) || [];
30931
- if (invalidItems.length) {
30932
- throw ("data " + JSON.stringify(invalidItems) + " invalid");
30933
- }
30934
- this.updateDataTree(rootNode);
30935
- var groupResult = _treeDataInput.filter(function (x) { return x.parentId; }).reduce(function (result, currentValue) {
30936
- (result[currentValue['parentId']] = result[currentValue['parentId']] || []).push(currentValue);
30937
- return result;
30938
- }, {});
30939
- var checkValidGroup = function (id) {
30940
- var parents = [];
30941
- var parent = _treeDataInput.find(function (x) { return x.id == id; });
30942
- while (parent === null || parent === void 0 ? void 0 : parent.id) {
30943
- parents.push(parent);
30944
- parent = _treeDataInput.find(function (x) { return x.id == (parent === null || parent === void 0 ? void 0 : parent.parentId); });
30945
- }
30946
- return parents.some(function (x) { return !x.parentId; });
30947
- };
30948
- if (!(rootNode && !!rootNode.length))
30949
- return;
30950
- var groupResultKey = Object.keys(groupResult).filter(checkValidGroup);
30951
- while (groupResultKey.length) {
30952
- groupResultKey = groupResultKey.filter(function (key) {
30953
- var parentFlatNode = _this.treeControl.dataNodes.find(function (node) { return node.id === key; });
30954
- if (parentFlatNode) {
30955
- var parentNestedNode = _this.convertToNestedNode(parentFlatNode);
30956
- parentNestedNode.markedGetChildren = true;
30957
- parentNestedNode.children = ___namespace.cloneDeep(groupResult[key]);
30958
- parentNestedNode.childCount = parentNestedNode.children.length;
30959
- parentNestedNode.isGroup = false;
30960
- _this.updateDataTree(_this.currentTreeData);
30961
- groupResult[key] = [];
30962
- return false;
31100
+ var treeData = this._convertToTreeData(_treeDataInput);
31101
+ this.updateDataTree(treeData);
31102
+ this.getLoading$.next(false);
31103
+ };
31104
+ SelectDepartmentTreeComponent.prototype._convertToTreeData = function (data) {
31105
+ var roots = [];
31106
+ var mapNode = new Map();
31107
+ for (var i = 0; i < data.length; i++) {
31108
+ mapNode.set(data[i].id, i);
31109
+ data[i].children = [];
31110
+ data[i].markedGetChildren = false;
31111
+ }
31112
+ for (var i = 0; i < data.length; i++) {
31113
+ var node = data[i];
31114
+ if (node.parentId) {
31115
+ var existParent = data[mapNode.get(node.parentId)];
31116
+ if (existParent) {
31117
+ existParent.children.push(node);
31118
+ existParent.markedGetChildren = !!existParent.children.length;
31119
+ continue;
30963
31120
  }
30964
- return true;
30965
- });
31121
+ roots.push(node);
31122
+ continue;
31123
+ }
31124
+ roots.push(node);
30966
31125
  }
30967
- this.getLoading$.next(false);
30968
- this._initCheckListSelected();
31126
+ return roots;
30969
31127
  };
30970
31128
  SelectDepartmentTreeComponent.prototype._initCheckListSelected = function () {
30971
- var _this = this;
30972
- if (!this.config.selectedList.length)
30973
- return;
30974
- var selectedList = this.config.selectedList;
30975
- selectedList.forEach(function (item) {
30976
- var _a;
30977
- var node = _this.treeControl.dataNodes.find(function (x) { return x.id === item.id; });
30978
- if (node) {
30979
- var nestedNode = _this.convertToNestedNode(node);
30980
- nestedNode.isGroup = item.isGroup;
30981
- nestedNode.groupId = item.groupId;
30982
- _this.checkListSelection.select(node);
30983
- _this._handleCheckNode(node);
30984
- ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) && item.children.forEach(function (child) {
30985
- var node = _this.treeControl.dataNodes.find(function (_x) { return _x.id === child.id; });
30986
- if (node) {
30987
- _this.onExpandAllParent(node);
30988
- }
30989
- });
30990
- _this.onExpandAllParent(node);
30991
- }
31129
+ return __awaiter(this, void 0, void 0, function () {
31130
+ var selectedList;
31131
+ var _this = this;
31132
+ return __generator(this, function (_b) {
31133
+ if (!this.config.selectedList.length)
31134
+ return [2 /*return*/];
31135
+ selectedList = this.config.selectedList.sort(function (x, y) { return x.isGroup ? -1 : y.isGroup ? 1 : 0; });
31136
+ selectedList.forEach(function (item) { return __awaiter(_this, void 0, void 0, function () {
31137
+ var _a, node, nestedNode;
31138
+ var _this = this;
31139
+ return __generator(this, function (_b) {
31140
+ switch (_b.label) {
31141
+ case 0:
31142
+ node = this.treeControl.dataNodes.find(function (x) { return x.id === item.id; });
31143
+ if (!node) return [3 /*break*/, 2];
31144
+ nestedNode = this.convertToNestedNode(node);
31145
+ nestedNode.isGroup = item.isGroup;
31146
+ nestedNode.groupId = item.groupId;
31147
+ this.checkListSelection.select(node);
31148
+ return [4 /*yield*/, this.handleCheckNode(node)];
31149
+ case 1:
31150
+ _b.sent();
31151
+ ((_a = item.children) === null || _a === void 0 ? void 0 : _a.length) && item.children.forEach(function (child) {
31152
+ var node = _this.treeControl.dataNodes.find(function (_x) { return _x.id === child.id; });
31153
+ if (node) {
31154
+ _this.onExpandAllParent(node);
31155
+ }
31156
+ });
31157
+ this.onExpandAllParent(node);
31158
+ _b.label = 2;
31159
+ case 2: return [2 /*return*/];
31160
+ }
31161
+ });
31162
+ }); });
31163
+ this.cdRef.detectChanges();
31164
+ return [2 /*return*/];
31165
+ });
31166
+ });
31167
+ };
31168
+ /**
31169
+ * This method use for lazy mode, do some thing before init list node selected
31170
+ * @param callback
31171
+ * @returns
31172
+ */
31173
+ SelectDepartmentTreeComponent.prototype.onBeforeInitNodeSelected = function (callback) {
31174
+ return __awaiter(this, void 0, void 0, function () {
31175
+ return __generator(this, function (_b) {
31176
+ switch (_b.label) {
31177
+ case 0:
31178
+ if (!this.config.lazy)
31179
+ return [2 /*return*/];
31180
+ this.getLoadingMore$.next(true);
31181
+ if (!!!callback) return [3 /*break*/, 2];
31182
+ return [4 /*yield*/, callback()];
31183
+ case 1:
31184
+ _b.sent();
31185
+ _b.label = 2;
31186
+ case 2:
31187
+ this.onBeforeInitNodeSelected$.next();
31188
+ return [2 /*return*/];
31189
+ }
31190
+ });
30992
31191
  });
30993
- this.cdRef.detectChanges();
30994
31192
  };
30995
31193
  //Handle item selection changed
30996
31194
  SelectDepartmentTreeComponent.prototype._handleItemSelectionChanged = function () {
@@ -31002,22 +31200,24 @@
31002
31200
  var checkExistInResult = function (node) { return _this.resultSelected.findIndex(function (x) { return x.id === node.id; }) > -1; };
31003
31201
  if (added.length) {
31004
31202
  added.forEach(function (node) {
31005
- var nestedNode = _this.convertToNestedNode(node);
31203
+ var nestedNode = ___namespace.cloneDeep(_this.convertToNestedNode(node));
31006
31204
  nestedNode.children = [];
31007
31205
  nestedNode.childCount = _this.getListChildrenOfNode(node).length;
31008
- var existGroup = _this._getAllParentNode(node).map(function (item) { return _this.convertToNestedNode(item); }).find(function (x) { return x.isGroup; });
31206
+ var existGroup = ___namespace.cloneDeep(_this._getAllParentNode(node)
31207
+ .map(function (item) { return _this.convertToNestedNode(item); })
31208
+ .reverse()
31209
+ .find(function (x) { return x.isGroup; }));
31009
31210
  if (!!existGroup) {
31211
+ var flatExistGroup_1 = _this.treeControl.dataNodes.find(function (x) { return x.id === existGroup.id; });
31010
31212
  nestedNode.groupId = existGroup.id;
31011
- if (!existGroup.children.some(function (x) { return x.id === nestedNode.id; })) {
31012
- existGroup.children.push(nestedNode);
31013
- _this._onSelectionNodeChangeEvent('updated', [existGroup]);
31014
- }
31015
- if (!checkExistInResult(existGroup)) {
31016
- _this.resultSelected.push(existGroup);
31017
- _this._onSelectionNodeChangeEvent('added', [existGroup]);
31018
- }
31213
+ var groupResult = _this.resultSelected.find(function (x) { return x.id === existGroup.id; });
31214
+ groupResult.isGroup = existGroup.isGroup;
31215
+ groupResult.children.push(nestedNode);
31216
+ groupResult.childCount = _this.getListChildrenOfNode(flatExistGroup_1).length;
31217
+ _this._onSelectionNodeChangeEvent('updated', [existGroup]);
31218
+ // re-filter result selected
31019
31219
  _this.resultSelected.forEach(function (item, index) {
31020
- if (item.groupId === existGroup.id) {
31220
+ if (_this.getListChildrenOfNode(flatExistGroup_1).map(function (x) { return x.id; }).includes(item.id)) {
31021
31221
  _this.resultSelected.splice(index, 1);
31022
31222
  _this._onSelectionNodeChangeEvent('removed', [item]);
31023
31223
  }
@@ -31054,8 +31254,8 @@
31054
31254
  _this._onSelectionNodeChangeEvent('removed', [_item]);
31055
31255
  return;
31056
31256
  }
31057
- var arrCheck = _this.getListChildrenOfNode(node).concat(node);
31058
- arrCheck.forEach(function (item) {
31257
+ var childNodes = _this.getListChildrenOfNode(node).concat(node);
31258
+ childNodes.forEach(function (item) {
31059
31259
  var _node = _this.treeControl.dataNodes.find(function (x) { return x.id === item.id; });
31060
31260
  if (group.children.some(function (x) { return x.id === _node.id && !_this.isSelectedNode(_node); })) {
31061
31261
  var _item = group.children.find(function (x) { return x.id === item.id; });
@@ -31067,6 +31267,7 @@
31067
31267
  });
31068
31268
  });
31069
31269
  }
31270
+ _this._mapToResultSearch();
31070
31271
  _this.onValueChangeEvent.emit(_this.resultSelected);
31071
31272
  });
31072
31273
  };
@@ -31108,17 +31309,19 @@
31108
31309
  _this.resultSearch = [];
31109
31310
  if (result && result.length) {
31110
31311
  result.data.forEach(function (item) {
31111
- var node = _this.treeControl.dataNodes.find(function (node) { return node.id === item.id; });
31312
+ var _a;
31313
+ var node = _this.treeControl.dataNodes.find(function (x) { return x.id === item.id; });
31112
31314
  var parents = node ? _this._getAllParentNode(node) : [];
31113
- _this.resultSearch.push(Object.assign(Object.assign({}, item), { disabled: _this.config.checkSearchMappingTree && !node, path: __spreadArray(__spreadArray([], __read((parents.map(function (x, index) { return ({
31114
- id: x.id,
31115
- name: x.name,
31116
- }); }).reverse() || []))), [
31315
+ var location = parents.length ? parents.map(function (x) { return ({
31316
+ id: x.id,
31317
+ name: x.name,
31318
+ }); }).reverse() : ((_a = item.path) === null || _a === void 0 ? void 0 : _a.map(function (x) { return ({ name: x }); })) || [];
31319
+ _this.resultSearch.push(Object.assign(Object.assign({}, item), { disabled: !_this.config.lazy && _this.config.checkSearchMappingTree && !node, location: __spreadArray(__spreadArray([], __read(location)), [
31117
31320
  {
31118
31321
  id: item.id,
31119
31322
  name: item.name,
31120
31323
  }
31121
- ]) }));
31324
+ ]), isLoading: false }));
31122
31325
  });
31123
31326
  _this.getLoading$.next(false);
31124
31327
  _this.textResultSearch = _this.formSearchControl.value;
@@ -31130,7 +31333,7 @@
31130
31333
  SelectDepartmentTreeComponent.prototype._handleActiveNodeEvent = function () {
31131
31334
  var _this = this;
31132
31335
  this.scrollToNodeEvent$.pipe(operators.takeUntil(this.ngUnsubscribe), operators.switchMap(function (val) {
31133
- var delayTiming = _this.indexView === 1 ? 700 : 0;
31336
+ var delayTiming = _this.getIndexView$.value === 1 ? 700 : 0;
31134
31337
  _this.setIndexView(0);
31135
31338
  return rxjs.of(val).pipe(operators.delay(delayTiming), operators.takeUntil(_this.ngUnsubscribe));
31136
31339
  })).subscribe(function (res) {
@@ -31147,13 +31350,20 @@
31147
31350
  this.getDataTree$.next(data);
31148
31351
  };
31149
31352
  SelectDepartmentTreeComponent.prototype.onExpandNode = function (node) {
31353
+ if (!node.expandable)
31354
+ return;
31355
+ this.treeControl.toggle(node);
31356
+ if (this.config.lazy && this.treeControl.isExpanded(node) && !node.markedGetChildren) {
31357
+ node.isLoading = true;
31358
+ }
31359
+ this.onExpandNodeEvent.emit(node);
31150
31360
  };
31151
31361
  SelectDepartmentTreeComponent.prototype.onOptionSearchSelected = function (value) {
31152
31362
  var flatNode = this.treeControl.dataNodes.find(function (node) { return node.id === value.id; });
31153
31363
  if (!flatNode)
31154
31364
  return;
31155
31365
  this.checkListSelection.select(flatNode);
31156
- this._handleCheckNode(flatNode);
31366
+ this.handleCheckNode(flatNode);
31157
31367
  this.onScrollIntoNode(flatNode.id);
31158
31368
  };
31159
31369
  SelectDepartmentTreeComponent.prototype.onCheckAllRootTreeNode = function () {
@@ -31194,14 +31404,22 @@
31194
31404
  });
31195
31405
  };
31196
31406
  SelectDepartmentTreeComponent.prototype.onCheckNode = function (node) {
31407
+ var _this = this;
31197
31408
  if (!node)
31198
31409
  return;
31410
+ this.onCheckNodeEvent.emit(node);
31199
31411
  this.checkListSelection.toggle(node);
31200
31412
  if (this.config.isSelectOne) {
31201
31413
  this._handleSelectOne(node);
31202
31414
  return;
31203
31415
  }
31204
- this._handleCheckNode(node);
31416
+ if (this.config.lazy && node.expandable && !node.markedGetChildren) {
31417
+ node.isLoading = this.isIncludeChildren;
31418
+ var children = this.getListChildrenOfNode(node).filter(function (x) { return x.expandable && !x.markedGetChildren; });
31419
+ children.forEach(function (x) { return x.isLoading = _this.isIncludeChildren; });
31420
+ return;
31421
+ }
31422
+ this.handleCheckNode(node);
31205
31423
  };
31206
31424
  SelectDepartmentTreeComponent.prototype._handleSelectOne = function (node) {
31207
31425
  var _b;
@@ -31220,14 +31438,15 @@
31220
31438
  var parents = this._getAllParentNode(node);
31221
31439
  if (parents === null || parents === void 0 ? void 0 : parents.length) {
31222
31440
  parents.forEach(function (parent) {
31223
- _this.treeControl.expand(parent);
31441
+ // this.treeControl.expand(parent);
31442
+ _this.onExpandNode(parent);
31224
31443
  });
31225
31444
  }
31226
31445
  };
31227
31446
  SelectDepartmentTreeComponent.prototype.onRemoveNode = function (nodeId) {
31228
31447
  var flatNode = this.treeControl.dataNodes.find(function (item) { return item.id === nodeId; });
31229
31448
  this.checkListSelection.deselect(flatNode);
31230
- flatNode && this._handleCheckNode(flatNode);
31449
+ flatNode && this.handleCheckNode(flatNode);
31231
31450
  };
31232
31451
  SelectDepartmentTreeComponent.prototype.isIndeterminate = function (node) {
31233
31452
  var _this = this;
@@ -31239,35 +31458,56 @@
31239
31458
  var listCheck = __spreadArray(__spreadArray([], __read(this.getListChildrenOfNode(node))), [node]);
31240
31459
  return listCheck.every(function (item) { return _this.isSelectedNode(item); });
31241
31460
  };
31242
- SelectDepartmentTreeComponent.prototype._handleCheckNode = function (node) {
31243
- var _b, _c, _d;
31244
- var _this = this;
31245
- var isSelected = this.isSelectedNode(node);
31246
- var childSelected = this.getChildrenSelected(node);
31247
- var nestedNode = this.convertToNestedNode(node);
31248
- if (isSelected) {
31249
- // Check existed group
31250
- var existedGroup_1 = this._getAllParentNode(node).find(function (x) { return _this.convertToNestedNode(x).isGroup; });
31251
- if (!this.isIncludeChildren) {
31252
- nestedNode.groupId = existedGroup_1 === null || existedGroup_1 === void 0 ? void 0 : existedGroup_1.id;
31253
- return;
31254
- }
31255
- var children = this.getListChildrenOfNode(node);
31256
- nestedNode.isGroup = !existedGroup_1 && !!children.length;
31257
- if (!children.length)
31258
- return;
31259
- children.forEach(function (x) {
31260
- var _node = _this.convertToNestedNode(x);
31261
- _node.groupId = existedGroup_1 ? existedGroup_1.id : node.id;
31262
- _node.isGroup = false;
31461
+ /**
31462
+ * This function handle check node of tree
31463
+ * @param node node of tree
31464
+ * @param callback do something before handle check node
31465
+ * @returns
31466
+ */
31467
+ SelectDepartmentTreeComponent.prototype.handleCheckNode = function (node, callback) {
31468
+ return __awaiter(this, void 0, void 0, function () {
31469
+ var isSelected, childSelected, nestedNode, existedGroup_1, children, deselectNodes;
31470
+ var _b, _c, _d;
31471
+ var _this = this;
31472
+ return __generator(this, function (_e) {
31473
+ switch (_e.label) {
31474
+ case 0:
31475
+ if (!!!callback) return [3 /*break*/, 2];
31476
+ return [4 /*yield*/, callback(node)];
31477
+ case 1:
31478
+ _e.sent();
31479
+ _e.label = 2;
31480
+ case 2:
31481
+ isSelected = this.isSelectedNode(node);
31482
+ childSelected = this.getChildrenSelected(node);
31483
+ nestedNode = this.convertToNestedNode(node);
31484
+ if (isSelected) {
31485
+ existedGroup_1 = this._getAllParentNode(node).find(function (x) { return _this.convertToNestedNode(x).isGroup; });
31486
+ if (!this.isIncludeChildren) {
31487
+ nestedNode.groupId = existedGroup_1 === null || existedGroup_1 === void 0 ? void 0 : existedGroup_1.id;
31488
+ return [2 /*return*/];
31489
+ }
31490
+ children = this.getListChildrenOfNode(node);
31491
+ nestedNode.isGroup = !existedGroup_1 && !!children.length;
31492
+ if (!children.length)
31493
+ return [2 /*return*/];
31494
+ children.forEach(function (x) {
31495
+ var _node = _this.convertToNestedNode(x);
31496
+ _node.groupId = existedGroup_1 ? existedGroup_1.id : node.id;
31497
+ _node.isGroup = false;
31498
+ });
31499
+ this.updateDataTree(this.currentTreeData);
31500
+ (_b = this.checkListSelection).deselect.apply(_b, __spreadArray([], __read(childSelected.map(this.resetNode))));
31501
+ (_c = this.checkListSelection).select.apply(_c, __spreadArray([], __read(children.map(function (x) { return _this.resetNode(x); }))));
31502
+ return [2 /*return*/];
31503
+ }
31504
+ deselectNodes = (this.isIncludeChildren || nestedNode.isGroup) ? childSelected : [node];
31505
+ (_d = this.checkListSelection).deselect.apply(_d, __spreadArray([], __read(deselectNodes)));
31506
+ nestedNode.isGroup = false;
31507
+ return [2 /*return*/];
31508
+ }
31263
31509
  });
31264
- (_b = this.checkListSelection).deselect.apply(_b, __spreadArray([], __read(childSelected.map(this.resetNode))));
31265
- (_c = this.checkListSelection).select.apply(_c, __spreadArray([], __read(children.map(this.resetNode))));
31266
- return;
31267
- }
31268
- var deselectNodes = (this.isIncludeChildren || nestedNode.isGroup) ? childSelected : [node];
31269
- (_d = this.checkListSelection).deselect.apply(_d, __spreadArray([], __read(deselectNodes)));
31270
- nestedNode.isGroup = false;
31510
+ });
31271
31511
  };
31272
31512
  SelectDepartmentTreeComponent.prototype.resetNode = function (node) {
31273
31513
  node.isGroup = false;
@@ -31281,7 +31521,10 @@
31281
31521
  return this.getListChildrenOfNode(node).filter(function (x) { return _this.isSelectedNode(x); });
31282
31522
  };
31283
31523
  SelectDepartmentTreeComponent.prototype.getListChildrenOfNode = function (node) {
31284
- return this.treeControl.getDescendants(node);
31524
+ var flatNode = this.treeControl.dataNodes.find(function (item) { return item.id === node.id; });
31525
+ if (!flatNode)
31526
+ return [];
31527
+ return this.treeControl.getDescendants(flatNode);
31285
31528
  };
31286
31529
  SelectDepartmentTreeComponent.prototype._mapToNestedListNode = function (flatNodeList) {
31287
31530
  var _this = this;
@@ -31328,13 +31571,12 @@
31328
31571
  var flatNode = this.treeControl.dataNodes.find(function (item) { return item.id === nodeId; });
31329
31572
  if (!nodeId)
31330
31573
  return;
31331
- this.treeControl.expand(flatNode);
31574
+ this.onExpandNode(flatNode);
31332
31575
  this.onExpandAllParent(flatNode);
31333
- var element = this.eleRef.nativeElement.querySelector("#node-" + flatNode.id);
31334
- element && element.scrollIntoView({
31335
- behavior: 'smooth',
31336
- block: 'center',
31337
- });
31576
+ var index = this.treeControl.dataNodes.findIndex(function (x) { return x.id === flatNode.id; });
31577
+ if (!this.cdkVirtualScrollViewport)
31578
+ return;
31579
+ this.cdkVirtualScrollViewport.scrollToIndex(index, 'smooth');
31338
31580
  this.getActiveNodeEvent$.next(nodeId);
31339
31581
  };
31340
31582
  SelectDepartmentTreeComponent.prototype.onSearch = function () {
@@ -31347,7 +31589,6 @@
31347
31589
  this.paginatorSearch.renderDisplayNumberOfpages();
31348
31590
  };
31349
31591
  SelectDepartmentTreeComponent.prototype.setResultSearch = function (data) {
31350
- this.getLoading$.next(false);
31351
31592
  this.searchDepartment$.next(data);
31352
31593
  };
31353
31594
  SelectDepartmentTreeComponent.prototype.onClickResultItem = function (item) {
@@ -31372,12 +31613,60 @@
31372
31613
  if (this.config.isSelectOne) {
31373
31614
  (_b = this.checkListSelectionSearch).deselect.apply(_b, __spreadArray([], __read(this.checkListSelectionSearch.selected.filter(function (x) { return x.id !== item.id; }))));
31374
31615
  }
31616
+ this.onCheckItemSearchEvent.emit({
31617
+ state: this.checkListSelection.isSelected(item),
31618
+ item: item
31619
+ });
31620
+ if (this.config.lazy) {
31621
+ item.isLoading = true;
31622
+ return;
31623
+ }
31375
31624
  this._handleCheckResutlSearch(item);
31376
31625
  };
31626
+ SelectDepartmentTreeComponent.prototype.onBeforeCheckItemSearch = function (item, callback) {
31627
+ return __awaiter(this, void 0, void 0, function () {
31628
+ return __generator(this, function (_b) {
31629
+ switch (_b.label) {
31630
+ case 0:
31631
+ if (!!!callback) return [3 /*break*/, 2];
31632
+ return [4 /*yield*/, callback(item)];
31633
+ case 1:
31634
+ _b.sent();
31635
+ _b.label = 2;
31636
+ case 2:
31637
+ this._handleCheckResutlSearch(item);
31638
+ return [2 /*return*/];
31639
+ }
31640
+ });
31641
+ });
31642
+ };
31643
+ SelectDepartmentTreeComponent.prototype.onBeforeCheckAllSearch = function (callback) {
31644
+ return __awaiter(this, void 0, void 0, function () {
31645
+ var i, item;
31646
+ return __generator(this, function (_b) {
31647
+ switch (_b.label) {
31648
+ case 0:
31649
+ if (!!!callback) return [3 /*break*/, 2];
31650
+ return [4 /*yield*/, callback(this.resultSearch)];
31651
+ case 1:
31652
+ _b.sent();
31653
+ _b.label = 2;
31654
+ case 2:
31655
+ if (!this.resultSearch.length)
31656
+ return [2 /*return*/];
31657
+ for (i = 0; i < this.resultSearch.length; i++) {
31658
+ item = this.resultSearch[i];
31659
+ this._handleCheckResutlSearch(item);
31660
+ }
31661
+ return [2 /*return*/];
31662
+ }
31663
+ });
31664
+ });
31665
+ };
31377
31666
  SelectDepartmentTreeComponent.prototype.canHandleItemSearchResult = function (item) {
31378
31667
  if (!this.treeControl)
31379
31668
  return false;
31380
- return this.treeControl.dataNodes.some(function (node) { return node.id === item.id; });
31669
+ return this.treeControl.dataNodes.some(function (node) { return node.id === item.id; }) || this.config.lazy;
31381
31670
  };
31382
31671
  SelectDepartmentTreeComponent.prototype._mapToResultSearch = function () {
31383
31672
  var _this = this;
@@ -31388,11 +31677,13 @@
31388
31677
  });
31389
31678
  };
31390
31679
  SelectDepartmentTreeComponent.prototype._handleCheckResutlSearch = function (item) {
31391
- var currentNode = this.treeControl.dataNodes.find(function (x) { return item.id === x.id; });
31680
+ item.isLoading = false;
31681
+ var currentNode = this.treeControl.dataNodes.find(function (x) { return item.id.toString() === x.id; });
31392
31682
  if (currentNode) {
31393
31683
  this.checkListSelectionSearch.isSelected(item) ? this.checkListSelection.select(currentNode) : this.checkListSelection.deselect(currentNode);
31394
- this.config.isSelectOne ? this._handleSelectOne(currentNode) : this._handleCheckNode(currentNode);
31684
+ this.config.isSelectOne ? this._handleSelectOne(currentNode) : this.handleCheckNode(currentNode);
31395
31685
  }
31686
+ this.cdRef.detectChanges();
31396
31687
  };
31397
31688
  SelectDepartmentTreeComponent.prototype.onSelectAllSearchResult = function (checked) {
31398
31689
  var _this = this;
@@ -31405,9 +31696,11 @@
31405
31696
  else {
31406
31697
  _this.checkListSelectionSearch.deselect(item);
31407
31698
  }
31408
- _this._handleCheckResutlSearch(item);
31699
+ if (!_this.config.lazy)
31700
+ _this._handleCheckResutlSearch(item);
31409
31701
  });
31410
31702
  this.onValueChangeEvent.emit(this.resultSelected);
31703
+ this.onCheckAllItemSearchEvent.emit(checked);
31411
31704
  };
31412
31705
  SelectDepartmentTreeComponent.prototype.isDisableChecboxAllSearch = function () {
31413
31706
  return this.resultSearch && this.resultSearch.every(function (x) { return x.disabled; });
@@ -31423,7 +31716,7 @@
31423
31716
  if (index === 1) {
31424
31717
  this.isIncludeChildren = false;
31425
31718
  }
31426
- this.indexView = index;
31719
+ this.getIndexView$.next(index);
31427
31720
  };
31428
31721
  SelectDepartmentTreeComponent.prototype.canActiveNodeExternal = function (node) {
31429
31722
  var _this = this;
@@ -31440,16 +31733,69 @@
31440
31733
  SelectDepartmentTreeComponent.prototype.setSelectedNodeStorage = function (node) {
31441
31734
  this.isIncludeChildren && localStorage.setItem('selectedNode', JSON.stringify(node));
31442
31735
  };
31736
+ SelectDepartmentTreeComponent.prototype.setDefaultPaginatorSize = function (options) {
31737
+ this.PAGE_SIZE_OPTION = options;
31738
+ };
31739
+ SelectDepartmentTreeComponent.prototype.trackBy = function (index, item) {
31740
+ return item;
31741
+ };
31742
+ /**
31743
+ * This function use for lazy load children of node
31744
+ * @param node node update. if node is null data auto insert as roots
31745
+ * @param data list children to update node.
31746
+ * @param mode default is update that replace current list children by new list children , if mode = 'insert' will insert new values to list children existed before.
31747
+ */
31748
+ SelectDepartmentTreeComponent.prototype.updateChildOfNode = function (node, data, mode) {
31749
+ var _b;
31750
+ if (data === void 0) { data = []; }
31751
+ if (mode === void 0) { mode = 'update'; }
31752
+ node.isLoading = false;
31753
+ var nestedNode = this.convertToNestedNode(node);
31754
+ var dataNodes = this._convertToTreeData(data);
31755
+ if (!nestedNode)
31756
+ return;
31757
+ switch (mode) {
31758
+ case 'insert':
31759
+ (_b = nestedNode.children).push.apply(_b, __spreadArray([], __read(dataNodes)));
31760
+ break;
31761
+ case 'update':
31762
+ nestedNode.children = dataNodes;
31763
+ break;
31764
+ }
31765
+ this.updateDataTree(this.currentTreeData);
31766
+ };
31767
+ SelectDepartmentTreeComponent.prototype.addRootTree = function (data) {
31768
+ var _this = this;
31769
+ if (data === void 0) { data = []; }
31770
+ this.getLoadingMore$.next(false);
31771
+ if (!data.length)
31772
+ return;
31773
+ var treeNodeData = this._convertToTreeData(data);
31774
+ // re-check root was existed in tree
31775
+ treeNodeData.forEach(function (item) {
31776
+ var node = _this.treeControl.dataNodes.find(function (x) { return x.id == item.id; });
31777
+ if (!!node && node.expandable && !node.markedGetChildren) {
31778
+ var nestedNode = _this.flatTreeNodeMap.get(node);
31779
+ nestedNode.children = item.children;
31780
+ nestedNode.markedGetChildren = true;
31781
+ return;
31782
+ }
31783
+ if (!node)
31784
+ _this.currentTreeData.push(item);
31785
+ });
31786
+ this.updateDataTree(this.currentTreeData);
31787
+ };
31443
31788
  return SelectDepartmentTreeComponent;
31444
31789
  }());
31445
31790
  SelectDepartmentTreeComponent.decorators = [
31446
31791
  { type: i0.Component, args: [{
31447
31792
  selector: 'qms-select-department-tree',
31448
- template: "<div [ngClass]=\"['qms-select-department-tree-container', config.customClass]\">\r\n <div class=\"input-select-department\">\r\n <form (ngSubmit)=\"!getLoading$.value && onSearch()\" *ngIf=\"config.enableTreeSearch\" class=\"input-field\">\r\n <mat-form-field class=\"w100\" qms-form qms-search-field>\r\n <input [formControl]=\"formSearchControl\" type=\"text\" placeholder=\"Search\" matInput />\r\n <button *ngIf=\"!getLoading$.value\" type=\"submit\" qms-btn-icon color=\"light\" matSuffix>\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <mat-progress-spinner [@inOutAnimation] matSuffix mode=\"indeterminate\" diameter=\"20\"\r\n *ngIf=\"getLoading$.value\"></mat-progress-spinner>\r\n <div *ngIf=\"!!formSearchControl.value && !getLoading$.value\" qms-input-clear matSuffix>\r\n <button qms-btn-icon color=\"light\" [@inOutAnimation] aria-label=\"Clear\" (click)=\"formSearchControl.reset()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </mat-form-field>\r\n </form>\r\n <div [@inOutAnimation] *ngIf=\"indexView === 1 && textResultSearch\" class=\"sub-text ms-1 fw500\">\r\n {{LANG.RESULT_SEARCH_FOR}}<i><b>\"{{textResultSearch}}\"</b></i>\r\n </div>\r\n <div [class.justify-content-between]=\"config.enableIncludeChild && !config.isSelectOne\"\r\n class=\"select__toggle-include toggle-include-child my-1 d-flex justify-content-end align-items-center\">\r\n <mat-slide-toggle *ngIf=\"config.enableIncludeChild && !config.isSelectOne\" [disabled]=\"indexView === 1\"\r\n [(ngModel)]=\"isIncludeChildren\" color=\"default\" qms-group-options>\r\n <span class=\"text-label\">{{config.selectIncludeLabel || LANG.SELECT_INCLUDE_CHILD}}</span>\r\n </mat-slide-toggle>\r\n <button class=\"btn-arrow\" [@inOutAnimation] *ngIf=\"indexView === 1 && config.enableTreeSearch\"\r\n (click)=\"setIndexView(0)\" qms-btn-icon color=\"light\" [qms-tool-tip]=\"LANG.BACK_TO_TREE\" mode=\"dark\"\r\n position=\"top\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n <button class=\"btn-arrow\" [@inOutAnimation] *ngIf=\"indexView === 0 && config.enableTreeSearch && textResultSearch\"\r\n (click)=\"setIndexView(1)\" qms-btn-icon color=\"light\" [qms-tool-tip]=\"LANG.GOTO_SEACH_RESULT\" mode=\"dark\"\r\n position=\"top\">\r\n <mat-icon>arrow_forward</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div [@inOutAnimation]\r\n *ngIf=\"indexView === 0 && config.modeView === MODE_VIEW_ENUM.ExternalView && !!config.headerName\"\r\n class=\"header-view-tree\">\r\n <div class=\"header-view header-title\">\r\n {{config.headerName.treeName}}\r\n </div>\r\n <div class=\"header-view header-title\">\r\n {{config.headerName.externalName}}\r\n </div>\r\n </div>\r\n <mat-divider class=\"mx-auto\"></mat-divider>\r\n <div [@animateSlideView]=\"indexView\" [ngStyle]=\"{height: height}\" class=\"tree-department-wrapper\">\r\n <div *ngIf=\"indexView === 0\" [class.active-mode-external-view]=\"config.modeView === MODE_VIEW_ENUM.ExternalView \"\r\n class=\"tree-view w100 h100\">\r\n <div class=\"tree-view-main h100\">\r\n <div *ngIf=\"!config.isSelectOne && !!treeControl.dataNodes && config.activeSelectAllNode\"\r\n class=\"checkbox-all-tree\" [class.sticky-position]=\"config.modeView === MODE_VIEW_ENUM.ExternalView\">\r\n <!-- Checkbox all root node -->\r\n <mat-checkbox [@inOutAnimation] (click)=\"onCheckAllRootTreeNode()\"\r\n [indeterminate]=\"isIndeterminateCheckboxAllTree\" [checked]=\"isAllDepartmentSelected\" qms-group-options\r\n color=\"default\" label=\"none\" class=\"checkbox-all\">\r\n <span class=\"text-label \">{{LANG.CHOOSE_ALL}}</span>\r\n <span>(<b>{{treeControl.dataNodes.length}}</b>)</span>\r\n </mat-checkbox>\r\n <mat-divider class=\"mx-auto\"></mat-divider>\r\n </div>\r\n <mat-tree [@listAnimation] *ngIf=\"!!treeControl\" class=\"select-department-tree\" [ngClass]=\"{\r\n 'has-checkbox-all': !config.isSelectOne && config.modeView === MODE_VIEW_ENUM.Basic\r\n }\" [dataSource]=\"dataSource\" [treeControl]=\"treeControl\">\r\n <!-- This is the tree node template for leaf nodes -->\r\n <mat-tree-node [id]=\"'mat-node-'+node.id\"\r\n [ngClass]=\"{'w-100': config.isSelectOne, 'selected-theme': this.checkListSelection.isSelected(node) && config.isSelectOne}\"\r\n [@triggerColor]=\"activeNode == node.id\" *matTreeNodeDef=\"let node\" matTreeNodeToggle matTreeNodePadding\r\n [ngClass]=\"{\r\n 'mat-tree-node-disabled-all': node.disabled\r\n }\">\r\n <button class=\"btn-toggle\" qms-btn-icon color=\"light\" disabled></button>\r\n <ng-container [ngTemplateOutlet]=\"config.isSelectOne ? nodeWithoutCheckboxTemplate : showCheckboxTemplate\"\r\n [ngTemplateOutletContext]=\"{ node: node }\">\r\n </ng-container>\r\n </mat-tree-node>\r\n <!-- This is the tree node template for expandable nodes -->\r\n <mat-tree-node [id]=\"'mat-node-'+node.id\" [@triggerColor]=\"activeNode == node.id\"\r\n *matTreeNodeDef=\"let node; when: hasChild\"\r\n [class.selected-theme]=\"this.checkListSelection.isSelected(node) && config.isSelectOne\" matTreeNodePadding\r\n [ngClass]=\"{\r\n 'expand-node': treeControl.isExpanded(node),\r\n 'collapse-node': !treeControl.isExpanded(node),\r\n 'mat-tree-node-disabled': node.disabled\r\n }\">\r\n <div class=\"node-content-wraper\" [ngClass]=\"{'w-100': config.isSelectOne}\">\r\n <button class=\"btn-toggle\" qms-btn-icon color=\"light\" (click)=\"onExpandNode(node)\" matTreeNodeToggle>\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n <ng-container [ngTemplateOutlet]=\"config.isSelectOne ? nodeWithoutCheckboxTemplate : showCheckboxTemplate\"\r\n [ngTemplateOutletContext]=\"{ node: node }\"></ng-container>\r\n <mat-progress-bar *ngIf=\"false\" mode=\"indeterminate\">\r\n </mat-progress-bar>\r\n </div>\r\n </mat-tree-node>\r\n </mat-tree>\r\n </div>\r\n <div *ngIf=\"config.modeView === MODE_VIEW_ENUM.ExternalView\" class=\"tree-view-main h100\">\r\n <div [ngClass]=\"{\r\n 'sticky-position': config.modeView === MODE_VIEW_ENUM.ExternalView,\r\n 'h-0': config.isSelectOne || !config.activeSelectAllNode\r\n }\" class=\"separate\">\r\n </div>\r\n <mat-divider *ngIf=\"!config.isSelectOne && config.activeSelectAllNode\"\r\n [class.sticky-position]=\"config.modeView === MODE_VIEW_ENUM.ExternalView\" [ngStyle]=\"{\r\n top: '38px'\r\n }\"></mat-divider>\r\n <div [@inOutAnimation] class=\"external-list-item-container h100\">\r\n <div [ngClass]=\"{active: canActiveNodeExternal(node)}\" [ngStyle]=\"{\r\n 'height': getHeightStyleRefNode(node.id)\r\n }\" *ngFor=\"let node of treeControl.dataNodes; let i = index\" class=\"node-external\">\r\n <mat-divider *ngIf=\"node.level === 0 && i > 0 \"></mat-divider>\r\n <div class=\"node-external-content\">\r\n <span qms-elipsify position=\"top\" mode=\"dark\">\r\n {{node.externalName || ''}}\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"indexView === 1\" class=\"qms-view-search-result\">\r\n <div class=\"\">\r\n <mat-checkbox [@inOutAnimation] *ngIf=\"!!resultSearch.length && !getLoading$.value\"\r\n [disabled]=\"!resultSearch.length || config.isSelectOne || isDisableChecboxAllSearch()\" #checkAllSearch\r\n [indeterminate]=\"indeterminateSearchResult\" [checked]=\"isSelectAllResultSearch\" qms-group-options\r\n color=\"default\" label=\"none\" class=\"checkbox-all\"\r\n (click)=\"!config.isSelectOne && onSelectAllSearchResult(checkAllSearch.checked)\">\r\n <span class=\"text-label header-title\">{{LANG.CHOOSE_ALL}}</span>\r\n <span>(<b>{{resultSearch.length}}</b>)</span>\r\n </mat-checkbox>\r\n </div>\r\n <ng-container *ngIf=\"getLoading$.value; then loading\"></ng-container>\r\n <div [@inOutAnimation] [@listAnimation] *ngIf=\"resultSearch.length && !getLoading$.value\"\r\n [class.active-paging]=\"searchDepartment$.value.length > 10 && config.enablePagingSearch\" class=\"result\">\r\n <div [qms-tool-tip]=\"!canHandleItemSearchResult(item) ? LANG.ITEM_NOT_MATCH_TO_TREE : ''\" mode=\"dark\"\r\n position=\"top\" *ngFor=\"let item of resultSearch\" (click)=\"$event.stopPropagation();onClickResultItem(item)\"\r\n [class.active]=\"checkListSelectionSearch.isSelected(item)\" class=\"result-item user-select-none\" matRipple>\r\n <mat-checkbox [disabled]=\"item.disabled\"\r\n (click)=\"$event.stopImmediatePropagation(); !item.disabled && onCheckItemSearchResult(item)\"\r\n [checked]=\"checkListSelectionSearch.isSelected(item)\" qms-group-options color=\"default\" label=\"none\">\r\n </mat-checkbox>\r\n <div class=\"item-result-content-wraper\">\r\n <div class=\"text-gray fw-bold fs-base mb0\">{{item.name}}</div>\r\n <qms-breadcrumb [numDisplayItem]=\"6\" (onItemClick)=\"onBreadCrumbItemClick($event)\"\r\n *ngIf=\"item.path.length > 1\" class=\"breadcrumb-container\" [nodes]=\"item.path\">\r\n </qms-breadcrumb>\r\n\r\n <div *ngIf=\"item.path.length === 1\" class=\"d-flex align-items-center\">\r\n <span class=\"item-breadcrumb-disable\">{{item.path[0].name}}</span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div [@inOutAnimation] *ngIf=\"!resultSearch.length && !getLoading$.value\" class=\"result no-result\">\r\n <ng-container *ngTemplateOutlet=\"noResult\"></ng-container>\r\n </div>\r\n <mat-divider *ngIf=\"searchDepartment$.value.length > 10 && config.enablePagingSearch\"\r\n class=\"mx-auto\"></mat-divider>\r\n <qms-paginator #paginatorSearch *ngIf=\"searchDepartment$.value.length > 10 && config.enablePagingSearch \"\r\n [length]=\"searchDepartment$.value.length\" [numHidden]=\"0\" [pageSize]=\"10\" [pageSizeOptions]=\"PAGE_SIZE_OPTION\"\r\n (page)='onPagingSearchResult($event)' [size]='PAGINATION_SIZE.medium'>\r\n </qms-paginator>\r\n </div>\r\n </div>\r\n\r\n <!-- Template for Checkbox -->\r\n <ng-template #showCheckboxTemplate let-node=\"node\">\r\n <mat-checkbox [id]=\"'node-'+node.id\" qms-group-options color=\"default\" label=\"none\" class=\"flex-direction-row\"\r\n [checked]=\"checkListSelection.isSelected(node)\" (click)=\"onCheckNode(node)\" [attr.disabled]=\"node.disabled\">\r\n <img *ngIf=\"node.itemIconSvg\" class=\"material-icons type-icon\" [src]=\"node.itemIconSvg\" />\r\n <span *ngIf=\"node.itemIcon\" [class]=\"node.itemIcon\" [qmsTransformIcon]=\"node.itemIcon\"\r\n class=\"material-icons-outlined type-icon\"></span>\r\n <span *ngIf=\"node.itemMatIcon\" class=\"material-icons-outlined type-icon\">{{\r\n node.itemMatIcon }}\r\n </span>\r\n <span class=\"text-name cursor-pointer ml5 123\" [ngClass]=\"{ disabled: node.disabled }\">{{ node.name\r\n }}\r\n </span>\r\n </mat-checkbox>\r\n </ng-template>\r\n\r\n <ng-template #nodeWithoutCheckboxTemplate let-node=\"node\">\r\n <div [id]=\"'node-'+node.id\" (click)=\"onCheckNode(node)\" class=\"node-without-checkbox\">\r\n <div class=\"node-info\">\r\n <span *ngIf=\"node.itemIcon\" [class]=\"node.itemIcon\" [qmsTransformIcon]=\"node.itemIcon\"\r\n class=\"material-icons-outlined type-icon\"></span>\r\n <span *ngIf=\"node.itemMatIcon\" class=\"material-icons-outlined type-icon\">{{\r\n node.itemMatIcon }}\r\n </span>\r\n <span class=\"text-name cursor-pointer ml5 123\" [ngClass]=\"{ disabled: node.disabled }\">{{ node.name\r\n }}\r\n </span>\r\n </div>\r\n <div class=\"node-state\">\r\n <mat-icon *ngIf=\"checkListSelection.isSelected(node)\">check</mat-icon>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<ng-template #noResult>\r\n <svg width=\"89\" height=\"130\" viewBox=\"0 0 89 88\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"0.5\" width=\"88\" height=\"88\" rx=\"44\" fill=\"white\" />\r\n <rect x=\"0.5\" width=\"88\" height=\"88\" rx=\"44\" fill=\"#0163B2\" fill-opacity=\"0.12\" />\r\n <path\r\n d=\"M44.5 56.6936L58.096 64.8996L54.488 49.4336L66.5 39.0276L50.682 37.6856L44.5 23.0996L38.318 37.6856L22.5 39.0276L34.512 49.4336L30.904 64.8996L44.5 56.6936Z\"\r\n fill=\"#0163B3\" />\r\n <text x=\"10\" y=\"105\" fill=\"#0163B2\">{{LANG.NO_RESULT}}</text>\r\n </svg>\r\n</ng-template>\r\n\r\n<!-- Template loading -->\r\n<ng-template #loading>\r\n <div [ngStyle]=\"{\r\n 'height': searchDepartment$.value.length ? 'calc(100% - 55px)' : '100%'\r\n }\" class=\"qms-loading-container\">\r\n <div class=\"qms-loader\" *ngFor=\"let item of arrSkeleton\">\r\n <div class=\"qms-loader__wrapper\">\r\n <div class=\"row-loader\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n",
31793
+ template: "<div [ngClass]=\"['qms-select-department-tree-container', config.customClass]\">\r\n <div class=\"input-select-department\">\r\n <form (ngSubmit)=\"!getLoading$.value && onSearch()\" *ngIf=\"config.enableTreeSearch\" class=\"input-field\">\r\n <mat-form-field class=\"w100\" qms-form qms-search-field>\r\n <input [formControl]=\"formSearchControl\" type=\"text\" placeholder=\"Search\" matInput />\r\n <button *ngIf=\"!getLoading$.value\" type=\"submit\" qms-btn-icon color=\"light\" matSuffix>\r\n <mat-icon>search</mat-icon>\r\n </button>\r\n <mat-progress-spinner [@inOutAnimation] matSuffix mode=\"indeterminate\" diameter=\"20\"\r\n *ngIf=\"getLoading$.value\"></mat-progress-spinner>\r\n <div *ngIf=\"!!formSearchControl.value && !getLoading$.value\" qms-input-clear matSuffix>\r\n <button qms-btn-icon color=\"light\" [@inOutAnimation] aria-label=\"Clear\" (click)=\"formSearchControl.reset()\">\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n </mat-form-field>\r\n </form>\r\n <div [@inOutAnimation] *ngIf=\"(getIndexView$ | async) === 1 && textResultSearch\" class=\"sub-text ms-1 fw500\">\r\n {{LANG.RESULT_SEARCH_FOR}}<i><b>\"{{textResultSearch}}\"</b></i>\r\n </div>\r\n <div [class.justify-content-between]=\"config.enableIncludeChild && !config.isSelectOne\"\r\n class=\"select__toggle-include toggle-include-child my-1 d-flex justify-content-end align-items-center\">\r\n <mat-slide-toggle *ngIf=\"config.enableIncludeChild && !config.isSelectOne\"\r\n [disabled]=\"(getIndexView$ | async) === 1\" [(ngModel)]=\"isIncludeChildren\" color=\"default\" qms-group-options>\r\n <span class=\"text-label\">{{config.selectIncludeLabel || LANG.SELECT_INCLUDE_CHILD}}</span>\r\n </mat-slide-toggle>\r\n <button class=\"btn-arrow\" [@inOutAnimation] *ngIf=\"(getIndexView$ | async) === 1 && config.enableTreeSearch\"\r\n (click)=\"setIndexView(0)\" qms-btn-icon color=\"light\" [qms-tool-tip]=\"LANG.BACK_TO_TREE\" mode=\"dark\"\r\n position=\"top\">\r\n <mat-icon>arrow_back</mat-icon>\r\n </button>\r\n <button class=\"btn-arrow\" [@inOutAnimation]\r\n *ngIf=\"(getIndexView$ | async) === 0 && config.enableTreeSearch && textResultSearch\" (click)=\"setIndexView(1)\"\r\n qms-btn-icon color=\"light\" [qms-tool-tip]=\"LANG.GOTO_SEACH_RESULT\" mode=\"dark\" position=\"top\">\r\n <mat-icon>arrow_forward</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div [@inOutAnimation]\r\n *ngIf=\"(getIndexView$ | async) === 0 && config.modeView === MODE_VIEW_ENUM.ExternalView && !!config.headerName\"\r\n class=\"header-view-tree\">\r\n <div class=\"header-view header-title\">\r\n {{config.headerName.treeName}}\r\n </div>\r\n <div class=\"header-view header-title\">\r\n {{config.headerName.externalName}}\r\n </div>\r\n </div>\r\n <mat-divider class=\"mx-auto\"></mat-divider>\r\n <div [@animateSlideView]=\"(getIndexView$ | async)\" [ngStyle]=\"{\r\n minHeight: height\r\n }\" class=\"tree-department-wrapper\">\r\n <div *ngIf=\"(getIndexView$ | async) === 0\" class=\"tree-view w100 h100\">\r\n <div class=\"tree-view-main h100\">\r\n <div *ngIf=\"!config.isSelectOne && !!treeControl.dataNodes && config.activeSelectAllNode\"\r\n class=\"checkbox-all-tree\" [class.sticky-position]=\"config.modeView === MODE_VIEW_ENUM.ExternalView\">\r\n <!-- Checkbox all root node -->\r\n <mat-checkbox [@inOutAnimation] (click)=\"onCheckAllRootTreeNode()\"\r\n [indeterminate]=\"isIndeterminateCheckboxAllTree\" [checked]=\"isAllDepartmentSelected\" qms-group-options\r\n color=\"default\" label=\"none\" class=\"checkbox-all\">\r\n <span class=\"text-label \">{{LANG.CHOOSE_ALL}}</span>\r\n <span>(<b>{{treeControl.dataNodes.length}}</b>)</span>\r\n </mat-checkbox>\r\n <mat-divider class=\"mx-auto\"></mat-divider>\r\n </div>\r\n <cdk-virtual-scroll-viewport *ngIf=\"dataSource.data\" class=\"select-department-tree\" [ngClass]=\"{\r\n 'has-checkbox-all': !config.isSelectOne && config.modeView === MODE_VIEW_ENUM.Basic\r\n }\" [itemSize]=\"ITEM_SIZE\" [ngStyle]=\"{height: height}\">\r\n <ng-container *cdkVirtualFor=\"let node of dataSource; trackBy: trackBy\">\r\n <div class=\"qms-tree-node mt-1\" [style.padding-left]=\"node.level * (config.isMobile ? 12 :24) + 'px'\"\r\n [attr.data-id]=\"node.id\" [id]=\"'mat-node-'+node.id\" [@triggerColor]=\"activeNode == node.id\" [ngClass]=\"{\r\n 'mat-tree-node-disabled-all': node.disabled,\r\n 'w-100': config.isSelectOne,\r\n 'selected-theme': this.checkListSelection.isSelected(node) && config.isSelectOne,\r\n 'expand-node': treeControl.isExpandable(node) && treeControl.isExpanded(node),\r\n 'active-external-view': config.modeView === MODE_VIEW_ENUM.ExternalView,\r\n 'node-loading': node.isLoading\r\n }\">\r\n <div class=\"node-expand-area\">\r\n <button class=\"btn-toggle\" qms-btn-icon color=\"light\" (click)=\"onExpandNode(node)\"\r\n *ngIf=\"treeControl.isExpandable(node) && !node.isLoading\">\r\n <mat-icon>\r\n {{ treeControl.isExpanded(node) ? \"expand_more\" : \"chevron_right\" }}\r\n </mat-icon>\r\n </button>\r\n <ng-container *ngIf=\"node.isLoading; then loadingSpinner\"></ng-container>\r\n </div>\r\n <ng-container [ngTemplateOutlet]=\"config.isSelectOne ? nodeWithoutCheckboxTemplate : showCheckboxTemplate\"\r\n [ngTemplateOutletContext]=\"{ node: node }\"></ng-container>\r\n <div *ngIf=\"config.modeView === MODE_VIEW_ENUM.ExternalView\" class=\"external-view-node\">\r\n <span class=\"node-external\" qms-elipsify position=\"top\" mode=\"dark\">\r\n {{node.externalName || ''}}\r\n </span>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </cdk-virtual-scroll-viewport>\r\n <div [@inOutAnimation] *ngIf=\"getLoadingMore$| async ;then maskOverlay\">\r\n </div>\r\n </div>\r\n </div>\r\n <div *ngIf=\"(getIndexView$ | async) === 1\" [ngStyle]=\"{\r\n height: height\r\n }\" class=\"qms-view-search-result\">\r\n <div *ngIf=\"config.modeView === MODE_VIEW_ENUM.ExternalView\"\r\n class=\"qms-view-search-result__header d-flex align-items-center justify-content-between\">\r\n <div class=\"header-title\">\r\n <span qms-elipsify mode=\"dark\" position=\"top\">\r\n {{config.headerName.resultSearchName}}\r\n </span>\r\n </div>\r\n <div class=\"header-title\">\r\n <span qms-elipsify mode=\"dark\" position=\"top\">\r\n {{config.headerName.externalName}}\r\n </span>\r\n </div>\r\n </div>\r\n <ng-container *ngIf=\"getLoading$.value; then loading\"></ng-container>\r\n <div class=\"qms-view-search-result__wrapper\"\r\n [class.active-external]=\"config.modeView === MODE_VIEW_ENUM.ExternalView\"\r\n *ngIf=\"!!resultSearch.length && !getLoading$.value\">\r\n <div class=\"\">\r\n <mat-checkbox [@inOutAnimation]\r\n [disabled]=\"!resultSearch.length || config.isSelectOne || isDisableChecboxAllSearch()\" #checkAllSearch\r\n [indeterminate]=\"indeterminateSearchResult\" [checked]=\"isSelectAllResultSearch\" qms-group-options\r\n color=\"default\" label=\"none\" class=\"checkbox-all\"\r\n (click)=\"!config.isSelectOne && onSelectAllSearchResult(checkAllSearch.checked)\">\r\n <span class=\"text-label header-title\">{{LANG.CHOOSE_ALL}}</span>\r\n <span>(<b>{{resultSearch.length}}</b>)</span>\r\n </mat-checkbox>\r\n </div>\r\n <div [@inOutAnimation] [@listAnimation]\r\n [class.active-paging]=\"searchDepartment$.value.length > 10 && config.enablePagingSearch\" class=\"result\">\r\n <div [qms-tool-tip]=\"!canHandleItemSearchResult(item) ? LANG.ITEM_NOT_MATCH_TO_TREE : ''\" mode=\"dark\"\r\n position=\"top\" *ngFor=\"let item of resultSearch\"\r\n (click)=\"$event.stopImmediatePropagation(); !item.disabled && onCheckItemSearchResult(item)\"\r\n [class.active]=\"checkListSelectionSearch.isSelected(item)\" class=\"result-item user-select-none\" matRipple>\r\n <mat-checkbox [@inOutAnimation] *ngIf=\"!item.isLoading\" [disabled]=\"item.disabled\"\r\n (click)=\"$event.stopImmediatePropagation(); !item.disabled && onCheckItemSearchResult(item)\"\r\n [checked]=\"checkListSelectionSearch.isSelected(item)\" qms-group-options color=\"default\" label=\"none\">\r\n </mat-checkbox>\r\n <div *ngIf=\"item.isLoading\" [@inOutAnimation] class=\"position-relative\">\r\n <ng-container *ngIf=\"item.isLoading; then loadingSpinner\"></ng-container>\r\n </div>\r\n <div class=\"result-item__content\">\r\n <div class=\"item-result-content-wraper\">\r\n <div class=\"text-gray fw-bold fs-base mb0\">{{item.name}}</div>\r\n <qms-breadcrumb *ngIf=\"item.location?.length > 1\" [type]=\"config.isMobile ? 'mobile': ''\"\r\n [numDisplayItem]=\"6\" (onItemClick)=\"$event.stopImmediatePropagation()\" class=\"breadcrumb-container\"\r\n [nodes]=\"item.location\">\r\n </qms-breadcrumb>\r\n <div *ngIf=\"item.location?.length === 1\" class=\"d-flex align-items-center\">\r\n <span qms-elipsify mode=\"dark\" position=\"top\"\r\n class=\"item-breadcrumb-disable d-block\">{{item.location[0].name}}</span>\r\n </div>\r\n </div>\r\n <div *ngIf=\"config.modeView === MODE_VIEW_ENUM.ExternalView\" class=\"external-name\">\r\n <span qms-elipsify mode=\"dark\" position=\"top\" class=\"text-gray fs-base mb0\">{{item.externalName}}\r\n </span>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div [@inOutAnimation] *ngIf=\"!resultSearch.length && !getLoading$.value\" class=\"result no-result\">\r\n <ng-container *ngTemplateOutlet=\"noResult\"></ng-container>\r\n </div>\r\n <mat-divider *ngIf=\"searchDepartment$.value.length > 10 && config.enablePagingSearch\"\r\n class=\"mx-auto\"></mat-divider>\r\n <qms-paginator #paginatorSearch *ngIf=\"searchDepartment$.value.length > 10 && config.enablePagingSearch \"\r\n [length]=\"searchDepartment$.value.length\" [numHidden]=\"0\" [pageSize]=\"10\" [pageSizeOptions]=\"PAGE_SIZE_OPTION\"\r\n (page)='onPagingSearchResult($event)' [size]='config.isMobile ? PAGINATION_SIZE.small : PAGINATION_SIZE.medium'>\r\n </qms-paginator>\r\n </div>\r\n </div>\r\n\r\n <!-- Template for Checkbox -->\r\n <ng-template #showCheckboxTemplate let-node=\"node\">\r\n <mat-checkbox [id]=\"'node-'+node.id\" qms-group-options color=\"default\" label=\"none\" class=\"flex-direction-row\"\r\n [disabled]=\"node.isLoading\" [checked]=\"checkListSelection.isSelected(node)\"\r\n (click)=\"!node.isLoading && onCheckNode(node)\" [attr.disabled]=\"node.disabled || node.isLoading\">\r\n <img *ngIf=\"node.itemIconSvg\" class=\"material-icons type-icon\" [src]=\"node.itemIconSvg\" />\r\n <span *ngIf=\"node.itemIcon\" [class]=\"node.itemIcon\" [qmsTransformIcon]=\"node.itemIcon\"\r\n class=\"material-icons-outlined type-icon\"></span>\r\n <span *ngIf=\"node.itemMatIcon\" class=\"material-icons-outlined type-icon\">{{\r\n node.itemMatIcon }}\r\n </span>\r\n <span class=\"text-name cursor-pointer ml5 123\" [ngClass]=\"{ disabled: node.disabled }\">{{ node.name}}\r\n </span>\r\n </mat-checkbox>\r\n </ng-template>\r\n\r\n <!-- Template node without checkbox -->\r\n <ng-template #nodeWithoutCheckboxTemplate let-node=\"node\">\r\n <div [id]=\"'node-'+node.id\" (click)=\"onCheckNode(node)\" class=\"node-without-checkbox\">\r\n <div class=\"node-info\">\r\n <span *ngIf=\"node.itemIcon\" [class]=\"node.itemIcon\" [qmsTransformIcon]=\"node.itemIcon\"\r\n class=\"material-icons-outlined type-icon\"></span>\r\n <span *ngIf=\"node.itemMatIcon\" class=\"material-icons-outlined type-icon\">{{\r\n node.itemMatIcon }}\r\n </span>\r\n <span class=\"text-name cursor-pointer pl-10 123\" [ngClass]=\"{ disabled: node.disabled }\">{{ node.name }}</span>\r\n </div>\r\n <div class=\"node-state\">\r\n <mat-icon *ngIf=\"checkListSelection.isSelected(node)\">check</mat-icon>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</div>\r\n\r\n<ng-template #noResult>\r\n <svg width=\"89\" height=\"130\" viewBox=\"0 0 89 88\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\r\n <rect x=\"0.5\" width=\"88\" height=\"88\" rx=\"44\" fill=\"white\" />\r\n <rect x=\"0.5\" width=\"88\" height=\"88\" rx=\"44\" fill=\"#0163B2\" fill-opacity=\"0.12\" />\r\n <path\r\n d=\"M44.5 56.6936L58.096 64.8996L54.488 49.4336L66.5 39.0276L50.682 37.6856L44.5 23.0996L38.318 37.6856L22.5 39.0276L34.512 49.4336L30.904 64.8996L44.5 56.6936Z\"\r\n fill=\"#0163B3\" />\r\n <text x=\"10\" y=\"105\" fill=\"#0163B2\">{{LANG.NO_RESULT}}</text>\r\n </svg>\r\n</ng-template>\r\n\r\n<!-- Template loading -->\r\n<ng-template #loading>\r\n <div [ngStyle]=\"{\r\n 'height': searchDepartment$.value.length ? (config.modeView === MODE_VIEW_ENUM.ExternalView ? 'calc(100% - 90px)' : 'calc(100% - 50px)' ) : height\r\n }\" class=\"qms-loading-container\">\r\n <div class=\"qms-loader\" *ngFor=\"let item of arrSkeleton\">\r\n <div class=\"qms-loader__wrapper\">\r\n <div class=\"row-loader\">\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Template mask overlay -->\r\n<ng-template #maskOverlay>\r\n <div class=\"mask-overlay\">\r\n <div [@listAnimation] *ngIf=\"getLoadingMore$ | async\" class=\"qms-load-more-row\">\r\n <span></span><span></span><span></span><span></span>\r\n </div>\r\n </div>\r\n</ng-template>\r\n\r\n<!-- Loading spinner -->\r\n<ng-template #loadingSpinner>\r\n <div class=\"qms-spinner center\">\r\n <div *ngFor=\"let item of spinnerArr\" class=\"qms-spinner-blade\"></div>\r\n </div>\r\n</ng-template>",
31449
31794
  animations: [
31450
31795
  AnimationTreeDepartment
31451
31796
  ],
31452
- styles: ["@charset \"UTF-8\";@font-face{font-family:icomoon;src:url(../assets/fonts/icomoon.eot?aghldx);src:url(../assets/fonts/icomoon.eot?aghldx#iefix) format(\"embedded-opentype\"),url(../assets/fonts/icomoon.ttf?aghldx) format(\"truetype\"),url(../assets/fonts/icomoon.woff?aghldx) format(\"woff\"),url(../assets/fonts/icomoon.svg?aghldx#icomoon) format(\"svg\");font-weight:400;font-style:normal;font-display:block}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;speak:never;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-acutely-toxic .path1:before{content:\"\uE91B\";color:#e32730}.icon-acutely-toxic .path2:before{content:\"\uE922\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path3:before{content:\"\uE923\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path4:before{content:\"\uE924\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path5:before{content:\"\uE925\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path6:before{content:\"\uE926\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path7:before{content:\"\uE927\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path8:before{content:\"\uE928\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path9:before{content:\"\uE929\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path10:before{content:\"\uE92A\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path11:before{content:\"\uE92B\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path12:before{content:\"\uE92C\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path13:before{content:\"\uE92D\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path14:before{content:\"\uE92E\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path15:before{content:\"\uE92F\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path16:before{content:\"\uE930\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path17:before{content:\"\uE931\";margin-left:-1em;color:#323232}.icon-add-column:before{content:\"\uE932\"}.icon-add-tooltip:before{content:\"\uE933\"}.icon-admin:before{content:\"\uE934\"}.icon-annual-cycle:before{content:\"\uE935\"}.icon-assignment-repete:before{content:\"\uE936\"}.icon-barrier-add:before{content:\"\uE937\"}.icon-barrier-edit:before{content:\"\uE938\"}.icon-barrier-view:before{content:\"\uE939\"}.icon-button-group:before{content:\"\uE93A\"}.icon-chemical-manager:before{content:\"\uE93B\"}.icon-chronic-health-hazard .path1:before{content:\"\uE93C\";color:#e32730}.icon-chronic-health-hazard .path2:before{content:\"\uE93D\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path3:before{content:\"\uE93E\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path4:before{content:\"\uE93F\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path5:before{content:\"\uE940\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path6:before{content:\"\uE941\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path7:before{content:\"\uE942\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path8:before{content:\"\uE943\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path9:before{content:\"\uE944\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path10:before{content:\"\uE945\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path11:before{content:\"\uE946\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path12:before{content:\"\uE947\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path13:before{content:\"\uE948\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path14:before{content:\"\uE949\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path15:before{content:\"\uE94A\";margin-left:-1em;color:#323232}.icon-contingency:before{content:\"\uE94B\"}.icon-corrosive .path1:before{content:\"\uE94C\";color:#323232}.icon-corrosive .path2:before{content:\"\uE94D\";margin-left:-1em;color:#323232}.icon-corrosive .path3:before{content:\"\uE94E\";margin-left:-1em;color:#323232}.icon-corrosive .path4:before{content:\"\uE94F\";margin-left:-1em;color:#323232}.icon-corrosive .path5:before{content:\"\uE950\";margin-left:-1em;color:#323232}.icon-corrosive .path6:before{content:\"\uE951\";margin-left:-1em;color:#323232}.icon-corrosive .path7:before{content:\"\uE952\";margin-left:-1em;color:#323232}.icon-corrosive .path8:before{content:\"\uE953\";margin-left:-1em;color:#323232}.icon-corrosive .path9:before{content:\"\uE954\";margin-left:-1em;color:#323232}.icon-corrosive .path10:before{content:\"\uE955\";margin-left:-1em;color:#323232}.icon-corrosive .path11:before{content:\"\uE956\";margin-left:-1em;color:#323232}.icon-corrosive .path12:before{content:\"\uE957\";margin-left:-1em;color:#323232}.icon-corrosive .path13:before{content:\"\uE958\";margin-left:-1em;color:#323232}.icon-corrosive .path14:before{content:\"\uE959\";margin-left:-1em;color:#323232}.icon-corrosive .path15:before{content:\"\uE95A\";margin-left:-1em;color:#323232}.icon-corrosive .path16:before{content:\"\uE95B\";margin-left:-1em;color:#323232}.icon-corrosive .path17:before{content:\"\uE95C\";margin-left:-1em;color:#323232}.icon-corrosive .path18:before{content:\"\uE95D\";margin-left:-1em;color:#323232}.icon-corrosive .path19:before{content:\"\uE95E\";margin-left:-1em;color:#323232}.icon-corrosive .path20:before{content:\"\uE95F\";margin-left:-1em;color:#323232}.icon-corrosive .path21:before{content:\"\uE960\";margin-left:-1em;color:#e32730}.icon-dashboard:before{content:\"\uE961\"}.icon-database-sds:before{content:\"\uE962\"}.icon-description-add:before{content:\"\uE963\"}.icon-description-edit:before{content:\"\uE964\"}.icon-description-view:before{content:\"\uE965\";color:#666}.icon-document-read .path1:before{content:\"\uE966\";color:#000;opacity:.6}.icon-document-read .path2:before{content:\"\uE967\";margin-left:-1em;color:#fff}.icon-document-read .path3:before{content:\"\uE968\";margin-left:-1em;color:#000;opacity:.6}.icon-draft:before{content:\"\uE969\"}.icon-expired-off:before{content:\"\uE96A\"}.icon-expired-on:before{content:\"\uE96B\"}.icon-explosive .path1:before{content:\"\uE96C\";color:#e32730}.icon-explosive .path2:before{content:\"\uE96D\";margin-left:-1em;color:#323232}.icon-explosive .path3:before{content:\"\uE96E\";margin-left:-1em;color:#323232}.icon-explosive .path4:before{content:\"\uE96F\";margin-left:-1em;color:#323232}.icon-explosive .path5:before{content:\"\uE970\";margin-left:-1em;color:#323232}.icon-explosive .path6:before{content:\"\uE971\";margin-left:-1em;color:#323232}.icon-explosive .path7:before{content:\"\uE972\";margin-left:-1em;color:#323232}.icon-explosive .path8:before{content:\"\uE973\";margin-left:-1em;color:#323232}.icon-explosive .path9:before{content:\"\uE974\";margin-left:-1em;color:#323232}.icon-explosive .path10:before{content:\"\uE975\";margin-left:-1em;color:#323232}.icon-explosive .path11:before{content:\"\uE976\";margin-left:-1em;color:#323232}.icon-explosive .path12:before{content:\"\uE977\";margin-left:-1em;color:#323232}.icon-explosive .path13:before{content:\"\uE978\";margin-left:-1em;color:#323232}.icon-explosive .path14:before{content:\"\uE979\";margin-left:-1em;color:#323232}.icon-explosive .path15:before{content:\"\uE97A\";margin-left:-1em;color:#323232}.icon-explosive .path16:before{content:\"\uE97B\";margin-left:-1em;color:#323232}.icon-explosive .path17:before{content:\"\uE97C\";margin-left:-1em;color:#323232}.icon-explosive .path18:before{content:\"\uE97D\";margin-left:-1em;color:#323232}.icon-explosive .path19:before{content:\"\uE97E\";margin-left:-1em;color:#323232}.icon-explosive .path20:before{content:\"\uE97F\";margin-left:-1em;color:#323232}.icon-explosive .path21:before{content:\"\uE980\";margin-left:-1em;color:#323232}.icon-explosive .path22:before{content:\"\uE981\";margin-left:-1em;color:#323232}.icon-explosive .path23:before{content:\"\uE982\";margin-left:-1em;color:#323232}.icon-explosive .path24:before{content:\"\uE983\";margin-left:-1em;color:#323232}.icon-explosive .path25:before{content:\"\uE984\";margin-left:-1em;color:#323232}.icon-explosive .path26:before{content:\"\uE985\";margin-left:-1em;color:#323232}.icon-explosive .path27:before{content:\"\uE986\";margin-left:-1em;color:#323232}.icon-explosive .path28:before{content:\"\uE987\";margin-left:-1em;color:#323232}.icon-explosive .path29:before{content:\"\uE988\";margin-left:-1em;color:#323232}.icon-explosive .path30:before{content:\"\uE989\";margin-left:-1em;color:#323232}.icon-explosive .path31:before{content:\"\uE98A\";margin-left:-1em;color:#323232}.icon-explosive .path32:before{content:\"\uE98B\";margin-left:-1em;color:#323232}.icon-explosive .path33:before{content:\"\uE98C\";margin-left:-1em;color:#323232}.icon-explosive .path34:before{content:\"\uE98D\";margin-left:-1em;color:#323232}.icon-explosive .path35:before{content:\"\uE98E\";margin-left:-1em;color:#323232}.icon-explosive .path36:before{content:\"\uE98F\";margin-left:-1em;color:#323232}.icon-explosive .path37:before{content:\"\uE990\";margin-left:-1em;color:#323232}.icon-explosive .path38:before{content:\"\uE991\";margin-left:-1em;color:#323232}.icon-explosive .path39:before{content:\"\uE992\";margin-left:-1em;color:#323232}.icon-explosive .path40:before{content:\"\uE993\";margin-left:-1em;color:#323232}.icon-explosive .path41:before{content:\"\uE994\";margin-left:-1em;color:#323232}.icon-explosive .path42:before{content:\"\uE995\";margin-left:-1em;color:#323232}.icon-explosive .path43:before{content:\"\uE996\";margin-left:-1em;color:#323232}.icon-explosive .path44:before{content:\"\uE997\";margin-left:-1em;color:#323232}.icon-explosive .path45:before{content:\"\uE998\";margin-left:-1em;color:#323232}.icon-explosive .path46:before{content:\"\uE999\";margin-left:-1em;color:#323232}.icon-file-excel:before{content:\"\uE99A\"}.icon-file-pdf:before{content:\"\uE99B\"}.icon-file-pdf-verified .path1:before{content:\"\uE99C\";color:#000;opacity:.6}.icon-file-pdf-verified .path2:before{content:\"\uE99D\";margin-left:-1em;color:#fff}.icon-file-pdf-verified .path3:before{content:\"\uE99E\";margin-left:-1em;color:#000;opacity:.6}.icon-file-word:before{content:\"\uE99F\"}.icon-filter-alt:before{content:\"\uE9A0\"}.icon-flammable .path1:before{content:\"\uE9A1\";color:#323232}.icon-flammable .path2:before{content:\"\uE9A2\";margin-left:-1em;color:#323232}.icon-flammable .path3:before{content:\"\uE9A3\";margin-left:-1em;color:#e32730}.icon-gas-under-pressure .path1:before{content:\"\uE9A4\";color:#323232}.icon-gas-under-pressure .path2:before{content:\"\uE9A5\";margin-left:-1em;color:#e32730}.icon-health-hazard .path1:before{content:\"\uE9A6\";color:#323232}.icon-health-hazard .path2:before{content:\"\uE9A7\";margin-left:-1em;color:#e32730}.icon-line-break:before{content:\"\uE9A8\"}.icon-location:before{content:\"\uE9A9\"}.icon-measure-add:before{content:\"\uE9AA\"}.icon-measure-edit:before{content:\"\uE9AB\"}.icon-measure-view:before{content:\"\uE9AC\";color:#666}.icon-messages:before{content:\"\uE9AD\"}.icon-monitoring:before{content:\"\uE9AE\";color:#666}.icon-move:before{content:\"\uE9AF\"}.icon-oxidizing .path1:before{content:\"\uE9B0\";color:#e32730}.icon-oxidizing .path2:before{content:\"\uE9B1\";margin-left:-1em;color:#323232}.icon-oxidizing .path3:before{content:\"\uE9B2\";margin-left:-1em;color:#323232}.icon-oxidizing .path4:before{content:\"\uE9B3\";margin-left:-1em;color:#323232}.icon-process-area-closed:before{content:\"\uE9B4\"}.icon-process-area-open:before{content:\"\uE9B5\"}.icon-process-linked .path1:before{content:\"\uE9B6\";color:#000;opacity:.6}.icon-process-linked .path2:before{content:\"\uE9B7\";margin-left:-1em;color:#666}.icon-risk:before{content:\"\uE9B8\"}.icon-search-in-file:before{content:\"\uE9B9\"}.icon-sort-ascending:before{content:\"\uE9BA\"}.icon-sort-descending:before{content:\"\uE9BB\"}.icon-subscript:before{content:\"\uE9BC\"}.icon-superscript:before{content:\"\uE9BD\"}.icon-syncronice-favorites:before{content:\"\uE9BE\"}.icon-system-settings:before{content:\"\uE9BF\"}.icon-view-three-outlined:before{content:\"\uE9C0\"}.icon-workplace-safety:before{content:\"\uE9C1\"}.icon-checklist:before{content:\"\uE900\"}.icon-department-document .path1:before{content:\"\uE901\";color:#000;opacity:.6}.icon-department-document .path2:before{content:\"\uE902\";margin-left:-1em;color:#00804c}.icon-department-folder-closed .path1:before{content:\"\uE903\";color:#000;opacity:.6}.icon-department-folder-closed .path2:before{content:\"\uE904\";margin-left:-1em;color:#00804c}.icon-department-folder-open .path1:before{content:\"\uE905\";color:#000;opacity:.6}.icon-department-folder-open .path2:before{content:\"\uE906\";margin-left:-1em;color:#00804c}.icon-deviation:before{content:\"\uE907\"}.icon-dropdown-folder .path1:before{content:\"\uE908\";color:#00324e}.icon-dropdown-folder .path2:before{content:\"\uE909\";margin-left:-1em;color:#fff;opacity:.6}.icon-enterprise-document .path1:before{content:\"\uE90A\";color:#000;opacity:.6}.icon-enterprise-document .path2:before{content:\"\uE90B\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-closed .path1:before{content:\"\uE90C\";color:#000;opacity:.6}.icon-enterprise-folder-closed .path2:before{content:\"\uE90D\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-open .path1:before{content:\"\uE90E\";color:#000;opacity:.6}.icon-enterprise-folder-open .path2:before{content:\"\uE90F\";margin-left:-1em;color:#cf4714}.icon-folder-closed:before{content:\"\uE910\"}.icon-folder-open:before{content:\"\uE911\"}.icon-keyboard_arrow_down:before{content:\"\uE912\"}.icon-keyboard_arrow_up:before{content:\"\uE913\"}.icon-local-document .path1:before{content:\"\uE914\";color:#000;opacity:.6}.icon-local-document .path2:before{content:\"\uE915\";margin-left:-1em;color:#1954a9}.icon-local-folder-closed .path1:before{content:\"\uE916\";color:#000;opacity:.6}.icon-local-folder-closed .path2:before{content:\"\uE917\";margin-left:-1em;color:#1954a9}.icon-local-folder-open .path1:before{content:\"\uE918\";color:#000;opacity:.6}.icon-local-folder-open .path2:before{content:\"\uE919\";margin-left:-1em;color:#1954a9}.icon-process:before{content:\"\uE91A\"}.icon-regional-document .path1:before{content:\"\uE91C\";color:#000;opacity:.6}.icon-regional-document .path2:before{content:\"\uE91D\";margin-left:-1em;color:#662e0d}.icon-regional-folder-closed .path1:before{content:\"\uE91E\";color:#000;opacity:.6}.icon-regional-folder-closed .path2:before{content:\"\uE91F\";margin-left:-1em;color:#662e0d}.icon-regional-folder-open .path1:before{content:\"\uE920\";color:#000;opacity:.6}.icon-regional-folder-open .path2:before{content:\"\uE921\";margin-left:-1em;color:#662e0d}.qms-select-department-tree-container .mr10{margin-right:10px}.qms-select-department-tree-container .mt5{margin-bottom:5px}.qms-select-department-tree-container .mb5{margin-top:5px}.qms-select-department-tree-container .w100{width:100%}.qms-select-department-tree-container .h100{height:100%}.qms-select-department-tree-container .fw500{font-weight:500!important}.qms-select-department-tree-container .text-right{text-align:right}.qms-select-department-tree-container .mt20{margin-top:20px}.qms-select-department-tree-container .text-selected{color:rgba(0,0,0,.6);font-size:12px;line-height:16px;margin-top:1rem}.qms-select-department-tree-container .input-field{display:flex;align-items:center;position:relative}.qms-select-department-tree-container .input-field ::ng-deep .mat-form-field-wrapper{padding-bottom:8px!important}.qms-select-department-tree-container .input-field ::ng-deep .mat-form-field-underline{bottom:8px!important}.qms-select-department-tree-container .input-field input.input-search{width:100%;padding:10px;outline:none;border:none;background:var(--background-input-text)}.qms-select-department-tree-container .input-field .btn-search{cursor:pointer;vertical-align:middle;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.qms-select-department-tree-container .input-field .line__divider{border-bottom:1px solid #ccc;height:1px;margin-top:10px;min-width:300px;max-width:100%}.qms-select-department-tree-container .header-title{font-weight:500;color:var(--ws-text-primary);font-size:16px}.qms-select-department-tree-container .header-title .header-view{padding:4px 0}.qms-select-department-tree-container .sticky-position{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;background:#fff}.qms-select-department-tree-container .header-view-tree{display:grid;grid-template-columns:1fr 200px;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px;padding:4px 12px 4px 0}.qms-select-department-tree-container .tree-department-wrapper{height:375px;padding-right:4px;overflow-y:auto;overflow-x:hidden;position:relative;transition:height .1s ease-in-out}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view{width:100%;display:grid;grid-template-columns:1fr 200px;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main>.separate{height:38px}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main>.separate.h-0{height:0}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main:last-child{height:100%;padding-left:4px;position:relative}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main:last-child:after{position:absolute;content:\"\";top:0;bottom:-38px;left:0;width:1px;background:rgba(0,0,0,.12)}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external{overflow:hidden;transition:.1s ease-in-out}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external .node-external-content{padding:5px 15px;height:calc(100% - 2px);color:var(--default-color);font-size:14px;display:flex;align-items:center}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external .node-external-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qms-select-department-tree-container .mat-tree.select-department-tree{height:100%}.qms-select-department-tree-container .mat-tree.select-department-tree.has-checkbox-all{max-height:calc(100% - 47px);overflow-y:auto}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node{border-radius:4px}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node:hover{background:rgba(0,0,0,.08)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node:active{background:rgba(0,0,0,.12)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active{color:var(--primary);background:var(--primary-light-6-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active:active{background:var(--primary-light-12-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active .mat-icon-rtl-mirror,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active .text-name,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active .type-icon,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.active button,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active .mat-icon-rtl-mirror,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active .text-name,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active .type-icon,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active button{color:var(--primary)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active:hover{background:var(--primary-light-6-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.collapse-node:not(.selected-theme).active:active,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.selected-theme{background:var(--primary-light-12-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node .mat-icon-rtl-mirror,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node .text-name,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node .type-icon,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node button{color:var(--primary)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node:hover{background:var(--primary-light-6-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.expand-node:active{background:var(--primary-light-12-opacity)}.qms-select-department-tree-container .mat-tree.select-department-tree .type-icon{margin-right:5px;color:var(--ws-action-active)}.qms-select-department-tree-container .mat-tree.select-department-tree .text-name{color:var(--default-color)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-icon-rtl-mirror{color:rgba(0,0,0,.6)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-icon-button.btn-toggle{width:35px;height:35px;line-height:35px}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all{cursor:default!important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all .mat-icon-rtl-mirror,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all .type-icon,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all button.mat-button-disabled{color:rgba(0,0,0,.38)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all .text-name.disabled{color:rgba(0,0,0,.38);cursor:default!important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled-all.active{background-color:transparent}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled .type-icon,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled button.mat-button-disabled{color:rgba(0,0,0,.38)}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled .text-name.disabled{color:rgba(0,0,0,.38);cursor:default!important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled.active,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled.expand-node:active,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled.expand-node:hover,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled:active,.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node.mat-tree-node-disabled:hover{background-color:transparent}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node .node-without-checkbox{cursor:pointer;width:100%;display:flex;justify-content:space-between;align-items:center}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node .node-without-checkbox .mat-icon{color:var(--primary);margin-right:4px}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node>.node-content-wraper{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;position:relative;display:flex;justify-content:center;align-items:center}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node>.node-content-wraper>.mat-progress-bar{height:3px;width:100%;position:absolute;bottom:0;left:10px}.qms-select-department-tree-container .mat-tree.select-department-tree .mat-tree-node>.node-content-wraper>.mat-progress-bar .mat-progress-bar-fill:after{background:var(--primary)}.qms-select-department-tree-container .text-name{position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:pointer;width:100%}.qms-select-department-tree-container .cursor-pointer{cursor:pointer}.qms-select-department-tree-container .ml5{margin-left:10px!important}.qms-select-department-tree-container ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-layout{white-space:normal}.qms-select-department-tree-container ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-label{flex-direction:row;align-items:center;position:relative;padding-bottom:2px}.qms-select-department-tree-container .qms-view-search-result{height:100%;width:100%;overflow:hidden}.qms-select-department-tree-container .qms-view-search-result .result{max-height:calc(100% - 44px);overflow-y:auto;margin-bottom:4px;padding-right:4px}.qms-select-department-tree-container .qms-view-search-result .result.active-paging{max-height:calc(100% - 95px)}.qms-select-department-tree-container .qms-view-search-result .result.no-result{height:100%;display:flex;justify-content:center;align-items:center}.qms-select-department-tree-container .qms-view-search-result .result-item{border-radius:4px;display:grid;grid-template-columns:45px 1fr;align-items:center;cursor:pointer;transition:background .3s ease}.qms-select-department-tree-container .qms-view-search-result .result-item:not(:first-child){margin-top:4px!important}.qms-select-department-tree-container .qms-view-search-result .result-item.active,.qms-select-department-tree-container .qms-view-search-result .result-item:hover{background:linear-gradient(0deg,rgba(1,99,178,.12),rgba(1,99,178,.12)),#fff}.qms-select-department-tree-container .qms-view-search-result .result-item .item-result-content-wraper{padding:5px 15px}.qms-select-department-tree-container .qms-view-search-result ::ng-deep .mat-checkbox.qms-group-options{display:flex;height:100%}.qms-select-department-tree-container ::ng-deep .breadcrumb-container{flex-wrap:wrap}.qms-select-department-tree-container ::ng-deep .mat-button-focus-overlay{background-color:transparent}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item{margin:0}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transition:color .3s ease}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text:not(:last-child){max-width:150px!important}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text:not(:last-child):hover{color:var(--primary)}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-total-result{margin-bottom:0;margin-right:12px;height:100%;display:flex;align-items:center}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-total-result span{font-weight:600;color:rgba(0,0,0,.8)}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-paginator-range-actions{margin-bottom:0;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-paginator-range-actions>.qms-total-result{margin-bottom:0}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-form-field-wrapper{padding-bottom:0}.qms-select-department-tree-container ::ng-deep .qms-paginator .qms-paginator-page-size{align-items:center}.qms-select-department-tree-container .text-gray{color:#242424}.qms-select-department-tree-container .mb0{margin-bottom:0!important}.qms-select-department-tree-container .fs-base{font-size:14px!important}.qms-select-department-tree-container .user-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .item-breadcrumb-disable{cursor:not-allowed;color:rgba(0,0,0,.6);font-weight:400;font-size:14px}.qms-select-department-tree-container ::ng-deep .mat-checkbox.checkbox-all .mat-checkbox-label{flex-direction:row;align-items:center;grid-column-gap:4px;-moz-column-gap:4px;column-gap:4px}.qms-select-department-tree-container ::ng-deep .btn-arrow{width:40px;height:40px;line-height:40px}.qms-select-department-tree-container .qms-loading-container{overflow:hidden;display:grid;grid-template-rows:repeat(60px)}.qms-select-department-tree-container .qms-loading-container .qms-loader{position:relative;width:100%;height:100%;padding:10px 0;overflow:hidden}.qms-select-department-tree-container .qms-loading-container .qms-loader:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;background:linear-gradient(110deg,hsla(0,0%,91%,0),hsla(0,0%,89%,0) 40%,hsla(0,0%,89%,.5) 50%,hsla(0,0%,89%,0) 60%,hsla(0,0%,89%,0));-webkit-animation:animate-loading 1.2s linear infinite;animation:animate-loading 1.2s linear infinite}.qms-select-department-tree-container .qms-loading-container .qms-loader__wrapper{position:relative;width:100%;height:100%}.qms-select-department-tree-container .qms-loading-container .qms-loader__wrapper .row-loader{background-color:#eee;position:absolute;left:0;width:100%;height:40px}@-webkit-keyframes animate-loading{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes animate-loading{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}"]
31797
+ changeDetection: i0.ChangeDetectionStrategy.OnPush,
31798
+ styles: ["@charset \"UTF-8\";@font-face{font-family:icomoon;src:url(../assets/fonts/icomoon.eot?aghldx);src:url(../assets/fonts/icomoon.eot?aghldx#iefix) format(\"embedded-opentype\"),url(../assets/fonts/icomoon.ttf?aghldx) format(\"truetype\"),url(../assets/fonts/icomoon.woff?aghldx) format(\"woff\"),url(../assets/fonts/icomoon.svg?aghldx#icomoon) format(\"svg\");font-weight:400;font-style:normal;font-display:block}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;speak:never;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-acutely-toxic .path1:before{content:\"\uE91B\";color:#e32730}.icon-acutely-toxic .path2:before{content:\"\uE922\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path3:before{content:\"\uE923\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path4:before{content:\"\uE924\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path5:before{content:\"\uE925\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path6:before{content:\"\uE926\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path7:before{content:\"\uE927\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path8:before{content:\"\uE928\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path9:before{content:\"\uE929\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path10:before{content:\"\uE92A\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path11:before{content:\"\uE92B\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path12:before{content:\"\uE92C\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path13:before{content:\"\uE92D\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path14:before{content:\"\uE92E\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path15:before{content:\"\uE92F\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path16:before{content:\"\uE930\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path17:before{content:\"\uE931\";margin-left:-1em;color:#323232}.icon-add-column:before{content:\"\uE932\"}.icon-add-tooltip:before{content:\"\uE933\"}.icon-admin:before{content:\"\uE934\"}.icon-annual-cycle:before{content:\"\uE935\"}.icon-assignment-repete:before{content:\"\uE936\"}.icon-barrier-add:before{content:\"\uE937\"}.icon-barrier-edit:before{content:\"\uE938\"}.icon-barrier-view:before{content:\"\uE939\"}.icon-button-group:before{content:\"\uE93A\"}.icon-chemical-manager:before{content:\"\uE93B\"}.icon-chronic-health-hazard .path1:before{content:\"\uE93C\";color:#e32730}.icon-chronic-health-hazard .path2:before{content:\"\uE93D\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path3:before{content:\"\uE93E\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path4:before{content:\"\uE93F\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path5:before{content:\"\uE940\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path6:before{content:\"\uE941\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path7:before{content:\"\uE942\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path8:before{content:\"\uE943\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path9:before{content:\"\uE944\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path10:before{content:\"\uE945\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path11:before{content:\"\uE946\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path12:before{content:\"\uE947\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path13:before{content:\"\uE948\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path14:before{content:\"\uE949\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path15:before{content:\"\uE94A\";margin-left:-1em;color:#323232}.icon-contingency:before{content:\"\uE94B\"}.icon-corrosive .path1:before{content:\"\uE94C\";color:#323232}.icon-corrosive .path2:before{content:\"\uE94D\";margin-left:-1em;color:#323232}.icon-corrosive .path3:before{content:\"\uE94E\";margin-left:-1em;color:#323232}.icon-corrosive .path4:before{content:\"\uE94F\";margin-left:-1em;color:#323232}.icon-corrosive .path5:before{content:\"\uE950\";margin-left:-1em;color:#323232}.icon-corrosive .path6:before{content:\"\uE951\";margin-left:-1em;color:#323232}.icon-corrosive .path7:before{content:\"\uE952\";margin-left:-1em;color:#323232}.icon-corrosive .path8:before{content:\"\uE953\";margin-left:-1em;color:#323232}.icon-corrosive .path9:before{content:\"\uE954\";margin-left:-1em;color:#323232}.icon-corrosive .path10:before{content:\"\uE955\";margin-left:-1em;color:#323232}.icon-corrosive .path11:before{content:\"\uE956\";margin-left:-1em;color:#323232}.icon-corrosive .path12:before{content:\"\uE957\";margin-left:-1em;color:#323232}.icon-corrosive .path13:before{content:\"\uE958\";margin-left:-1em;color:#323232}.icon-corrosive .path14:before{content:\"\uE959\";margin-left:-1em;color:#323232}.icon-corrosive .path15:before{content:\"\uE95A\";margin-left:-1em;color:#323232}.icon-corrosive .path16:before{content:\"\uE95B\";margin-left:-1em;color:#323232}.icon-corrosive .path17:before{content:\"\uE95C\";margin-left:-1em;color:#323232}.icon-corrosive .path18:before{content:\"\uE95D\";margin-left:-1em;color:#323232}.icon-corrosive .path19:before{content:\"\uE95E\";margin-left:-1em;color:#323232}.icon-corrosive .path20:before{content:\"\uE95F\";margin-left:-1em;color:#323232}.icon-corrosive .path21:before{content:\"\uE960\";margin-left:-1em;color:#e32730}.icon-dashboard:before{content:\"\uE961\"}.icon-database-sds:before{content:\"\uE962\"}.icon-description-add:before{content:\"\uE963\"}.icon-description-edit:before{content:\"\uE964\"}.icon-description-view:before{content:\"\uE965\";color:#666}.icon-document-read .path1:before{content:\"\uE966\";color:#000;opacity:.6}.icon-document-read .path2:before{content:\"\uE967\";margin-left:-1em;color:#fff}.icon-document-read .path3:before{content:\"\uE968\";margin-left:-1em;color:#000;opacity:.6}.icon-draft:before{content:\"\uE969\"}.icon-expired-off:before{content:\"\uE96A\"}.icon-expired-on:before{content:\"\uE96B\"}.icon-explosive .path1:before{content:\"\uE96C\";color:#e32730}.icon-explosive .path2:before{content:\"\uE96D\";margin-left:-1em;color:#323232}.icon-explosive .path3:before{content:\"\uE96E\";margin-left:-1em;color:#323232}.icon-explosive .path4:before{content:\"\uE96F\";margin-left:-1em;color:#323232}.icon-explosive .path5:before{content:\"\uE970\";margin-left:-1em;color:#323232}.icon-explosive .path6:before{content:\"\uE971\";margin-left:-1em;color:#323232}.icon-explosive .path7:before{content:\"\uE972\";margin-left:-1em;color:#323232}.icon-explosive .path8:before{content:\"\uE973\";margin-left:-1em;color:#323232}.icon-explosive .path9:before{content:\"\uE974\";margin-left:-1em;color:#323232}.icon-explosive .path10:before{content:\"\uE975\";margin-left:-1em;color:#323232}.icon-explosive .path11:before{content:\"\uE976\";margin-left:-1em;color:#323232}.icon-explosive .path12:before{content:\"\uE977\";margin-left:-1em;color:#323232}.icon-explosive .path13:before{content:\"\uE978\";margin-left:-1em;color:#323232}.icon-explosive .path14:before{content:\"\uE979\";margin-left:-1em;color:#323232}.icon-explosive .path15:before{content:\"\uE97A\";margin-left:-1em;color:#323232}.icon-explosive .path16:before{content:\"\uE97B\";margin-left:-1em;color:#323232}.icon-explosive .path17:before{content:\"\uE97C\";margin-left:-1em;color:#323232}.icon-explosive .path18:before{content:\"\uE97D\";margin-left:-1em;color:#323232}.icon-explosive .path19:before{content:\"\uE97E\";margin-left:-1em;color:#323232}.icon-explosive .path20:before{content:\"\uE97F\";margin-left:-1em;color:#323232}.icon-explosive .path21:before{content:\"\uE980\";margin-left:-1em;color:#323232}.icon-explosive .path22:before{content:\"\uE981\";margin-left:-1em;color:#323232}.icon-explosive .path23:before{content:\"\uE982\";margin-left:-1em;color:#323232}.icon-explosive .path24:before{content:\"\uE983\";margin-left:-1em;color:#323232}.icon-explosive .path25:before{content:\"\uE984\";margin-left:-1em;color:#323232}.icon-explosive .path26:before{content:\"\uE985\";margin-left:-1em;color:#323232}.icon-explosive .path27:before{content:\"\uE986\";margin-left:-1em;color:#323232}.icon-explosive .path28:before{content:\"\uE987\";margin-left:-1em;color:#323232}.icon-explosive .path29:before{content:\"\uE988\";margin-left:-1em;color:#323232}.icon-explosive .path30:before{content:\"\uE989\";margin-left:-1em;color:#323232}.icon-explosive .path31:before{content:\"\uE98A\";margin-left:-1em;color:#323232}.icon-explosive .path32:before{content:\"\uE98B\";margin-left:-1em;color:#323232}.icon-explosive .path33:before{content:\"\uE98C\";margin-left:-1em;color:#323232}.icon-explosive .path34:before{content:\"\uE98D\";margin-left:-1em;color:#323232}.icon-explosive .path35:before{content:\"\uE98E\";margin-left:-1em;color:#323232}.icon-explosive .path36:before{content:\"\uE98F\";margin-left:-1em;color:#323232}.icon-explosive .path37:before{content:\"\uE990\";margin-left:-1em;color:#323232}.icon-explosive .path38:before{content:\"\uE991\";margin-left:-1em;color:#323232}.icon-explosive .path39:before{content:\"\uE992\";margin-left:-1em;color:#323232}.icon-explosive .path40:before{content:\"\uE993\";margin-left:-1em;color:#323232}.icon-explosive .path41:before{content:\"\uE994\";margin-left:-1em;color:#323232}.icon-explosive .path42:before{content:\"\uE995\";margin-left:-1em;color:#323232}.icon-explosive .path43:before{content:\"\uE996\";margin-left:-1em;color:#323232}.icon-explosive .path44:before{content:\"\uE997\";margin-left:-1em;color:#323232}.icon-explosive .path45:before{content:\"\uE998\";margin-left:-1em;color:#323232}.icon-explosive .path46:before{content:\"\uE999\";margin-left:-1em;color:#323232}.icon-file-excel:before{content:\"\uE99A\"}.icon-file-pdf:before{content:\"\uE99B\"}.icon-file-pdf-verified .path1:before{content:\"\uE99C\";color:#000;opacity:.6}.icon-file-pdf-verified .path2:before{content:\"\uE99D\";margin-left:-1em;color:#fff}.icon-file-pdf-verified .path3:before{content:\"\uE99E\";margin-left:-1em;color:#000;opacity:.6}.icon-file-word:before{content:\"\uE99F\"}.icon-filter-alt:before{content:\"\uE9A0\"}.icon-flammable .path1:before{content:\"\uE9A1\";color:#323232}.icon-flammable .path2:before{content:\"\uE9A2\";margin-left:-1em;color:#323232}.icon-flammable .path3:before{content:\"\uE9A3\";margin-left:-1em;color:#e32730}.icon-gas-under-pressure .path1:before{content:\"\uE9A4\";color:#323232}.icon-gas-under-pressure .path2:before{content:\"\uE9A5\";margin-left:-1em;color:#e32730}.icon-health-hazard .path1:before{content:\"\uE9A6\";color:#323232}.icon-health-hazard .path2:before{content:\"\uE9A7\";margin-left:-1em;color:#e32730}.icon-line-break:before{content:\"\uE9A8\"}.icon-location:before{content:\"\uE9A9\"}.icon-measure-add:before{content:\"\uE9AA\"}.icon-measure-edit:before{content:\"\uE9AB\"}.icon-measure-view:before{content:\"\uE9AC\";color:#666}.icon-messages:before{content:\"\uE9AD\"}.icon-monitoring:before{content:\"\uE9AE\";color:#666}.icon-move:before{content:\"\uE9AF\"}.icon-oxidizing .path1:before{content:\"\uE9B0\";color:#e32730}.icon-oxidizing .path2:before{content:\"\uE9B1\";margin-left:-1em;color:#323232}.icon-oxidizing .path3:before{content:\"\uE9B2\";margin-left:-1em;color:#323232}.icon-oxidizing .path4:before{content:\"\uE9B3\";margin-left:-1em;color:#323232}.icon-process-area-closed:before{content:\"\uE9B4\"}.icon-process-area-open:before{content:\"\uE9B5\"}.icon-process-linked .path1:before{content:\"\uE9B6\";color:#000;opacity:.6}.icon-process-linked .path2:before{content:\"\uE9B7\";margin-left:-1em;color:#666}.icon-risk:before{content:\"\uE9B8\"}.icon-search-in-file:before{content:\"\uE9B9\"}.icon-sort-ascending:before{content:\"\uE9BA\"}.icon-sort-descending:before{content:\"\uE9BB\"}.icon-subscript:before{content:\"\uE9BC\"}.icon-superscript:before{content:\"\uE9BD\"}.icon-syncronice-favorites:before{content:\"\uE9BE\"}.icon-system-settings:before{content:\"\uE9BF\"}.icon-view-three-outlined:before{content:\"\uE9C0\"}.icon-workplace-safety:before{content:\"\uE9C1\"}.icon-checklist:before{content:\"\uE900\"}.icon-department-document .path1:before{content:\"\uE901\";color:#000;opacity:.6}.icon-department-document .path2:before{content:\"\uE902\";margin-left:-1em;color:#00804c}.icon-department-folder-closed .path1:before{content:\"\uE903\";color:#000;opacity:.6}.icon-department-folder-closed .path2:before{content:\"\uE904\";margin-left:-1em;color:#00804c}.icon-department-folder-open .path1:before{content:\"\uE905\";color:#000;opacity:.6}.icon-department-folder-open .path2:before{content:\"\uE906\";margin-left:-1em;color:#00804c}.icon-deviation:before{content:\"\uE907\"}.icon-dropdown-folder .path1:before{content:\"\uE908\";color:#00324e}.icon-dropdown-folder .path2:before{content:\"\uE909\";margin-left:-1em;color:#fff;opacity:.6}.icon-enterprise-document .path1:before{content:\"\uE90A\";color:#000;opacity:.6}.icon-enterprise-document .path2:before{content:\"\uE90B\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-closed .path1:before{content:\"\uE90C\";color:#000;opacity:.6}.icon-enterprise-folder-closed .path2:before{content:\"\uE90D\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-open .path1:before{content:\"\uE90E\";color:#000;opacity:.6}.icon-enterprise-folder-open .path2:before{content:\"\uE90F\";margin-left:-1em;color:#cf4714}.icon-folder-closed:before{content:\"\uE910\"}.icon-folder-open:before{content:\"\uE911\"}.icon-keyboard_arrow_down:before{content:\"\uE912\"}.icon-keyboard_arrow_up:before{content:\"\uE913\"}.icon-local-document .path1:before{content:\"\uE914\";color:#000;opacity:.6}.icon-local-document .path2:before{content:\"\uE915\";margin-left:-1em;color:#1954a9}.icon-local-folder-closed .path1:before{content:\"\uE916\";color:#000;opacity:.6}.icon-local-folder-closed .path2:before{content:\"\uE917\";margin-left:-1em;color:#1954a9}.icon-local-folder-open .path1:before{content:\"\uE918\";color:#000;opacity:.6}.icon-local-folder-open .path2:before{content:\"\uE919\";margin-left:-1em;color:#1954a9}.icon-process:before{content:\"\uE91A\"}.icon-regional-document .path1:before{content:\"\uE91C\";color:#000;opacity:.6}.icon-regional-document .path2:before{content:\"\uE91D\";margin-left:-1em;color:#662e0d}.icon-regional-folder-closed .path1:before{content:\"\uE91E\";color:#000;opacity:.6}.icon-regional-folder-closed .path2:before{content:\"\uE91F\";margin-left:-1em;color:#662e0d}.icon-regional-folder-open .path1:before{content:\"\uE920\";color:#000;opacity:.6}.icon-regional-folder-open .path2:before{content:\"\uE921\";margin-left:-1em;color:#662e0d}.qms-select-department-tree-container .mr10{margin-right:10px}.qms-select-department-tree-container .mt5{margin-bottom:5px}.qms-select-department-tree-container .mb5{margin-top:5px}.qms-select-department-tree-container .w100{width:100%}.qms-select-department-tree-container .h100{height:100%}.qms-select-department-tree-container .fw500{font-weight:500!important}.qms-select-department-tree-container .text-right{text-align:right}.qms-select-department-tree-container .mt20{margin-top:20px}.qms-select-department-tree-container .text-selected{color:rgba(0,0,0,.6);font-size:12px;line-height:16px;margin-top:1rem}.qms-select-department-tree-container .input-field{display:flex;align-items:center;position:relative}.qms-select-department-tree-container .input-field ::ng-deep .mat-form-field-wrapper{padding-bottom:8px!important}.qms-select-department-tree-container .input-field ::ng-deep .mat-form-field-underline{bottom:8px!important}.qms-select-department-tree-container .input-field input.input-search{width:100%;padding:10px;outline:none;border:none;background:var(--background-input-text)}.qms-select-department-tree-container .input-field .btn-search{cursor:pointer;vertical-align:middle;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.qms-select-department-tree-container .input-field .line__divider{border-bottom:1px solid #ccc;height:1px;margin-top:10px;min-width:300px;max-width:100%}.qms-select-department-tree-container .header-title{font-weight:500;color:var(--ws-text-primary);font-size:16px;display:flex;align-items:center}.qms-select-department-tree-container .header-title .header-view{padding:4px 0}.qms-select-department-tree-container .sticky-position{position:-webkit-sticky;position:sticky;top:0;left:0;z-index:1;background:#fff}.qms-select-department-tree-container .header-view-tree{display:grid;grid-template-columns:1fr 200px;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px;padding:4px 12px 4px 0}.qms-select-department-tree-container .header-view-tree .header-view:first-child{padding-left:12px}.qms-select-department-tree-container .tree-department-wrapper{padding-right:4px;overflow:hidden;position:relative;transition:height .3s ease-in-out}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view{width:100%;display:grid;grid-template-columns:1fr 200px;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main>.separate{height:38px}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main>.separate.h-0{height:0}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main:last-child{height:100%;padding-left:4px;position:relative}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main:last-child:after{position:absolute;content:\"\";top:0;bottom:-38px;left:0;width:1px;background:rgba(0,0,0,.12)}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external{overflow:hidden;transition:all .1s ease-in-out}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external .node-external-content{padding:5px 15px;height:calc(100% - 2px);color:var(--default-color);font-size:14px;display:flex;align-items:center}.qms-select-department-tree-container .tree-department-wrapper .tree-view.active-mode-external-view .tree-view-main .external-list-item-container .node-external .node-external-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qms-select-department-tree-container .mask-overlay{z-index:1000;background-color:rgba(0,0,0,.1);position:absolute;top:0;left:0;width:100%;height:100%;border-radius:4px;overflow:hidden;display:grid;place-items:center}.qms-select-department-tree-container .mask-overlay>.qms-load-more-row{line-height:35px;text-align:center;display:flex;justify-content:center;align-items:center;grid-gap:4px;gap:4px;transform:translateY(-15px)}.qms-select-department-tree-container .mask-overlay>.qms-load-more-row span{display:inline-block;width:10px;height:10px;background:var(--primary-light-12-opacity);border-radius:50px;-webkit-animation:up-down-animate .5s ease-in-out infinite alternate;animation:up-down-animate .5s ease-in-out infinite alternate}.qms-select-department-tree-container .mask-overlay>.qms-load-more-row span:nth-child(2){background:var(--primary-light-24-opacity);-webkit-animation-delay:.16s;animation-delay:.16s}.qms-select-department-tree-container .mask-overlay>.qms-load-more-row span:nth-child(3){background:var(--primary-light-32-opacity);-webkit-animation-delay:.32s;animation-delay:.32s}.qms-select-department-tree-container .mask-overlay>.qms-load-more-row span:nth-child(4){background:var(--primary-light-38-opacity);-webkit-animation-delay:.48s;animation-delay:.48s}@-webkit-keyframes up-down-animate{0%{transform:translateY(-8px)}to{transform:translateY(8px)}}@keyframes up-down-animate{0%{transform:translateY(-8px)}to{transform:translateY(8px)}}.qms-select-department-tree-container .select-department-tree>.cdk-virtual-scroll-orientation-vertical .cdk-virtual-scroll-content-wrapper{padding:0 4px!important}.qms-select-department-tree-container .select-department-tree .qms-tree-node{display:flex;align-items:center;border-radius:4px}.qms-select-department-tree-container .select-department-tree .qms-tree-node:hover{background-color:rgba(0,0,0,.08)}.qms-select-department-tree-container .select-department-tree .qms-tree-node>.node-expand-area{width:48px;height:48px;position:relative}.qms-select-department-tree-container .select-department-tree .qms-tree-node.active-external-view .mat-checkbox.qms-group-options{width:calc(100% - 250px)}.qms-select-department-tree-container .select-department-tree .qms-tree-node.node-loading{background:var(--primary-light-6-opacity)}.qms-select-department-tree-container .select-department-tree .qms-tree-node>.external-view-node{flex-basis:200px;overflow:hidden}.qms-select-department-tree-container .select-department-tree .qms-tree-node>.external-view-node .node-external{overflow:hidden;transition:all .1s ease-in-out;display:block}.qms-select-department-tree-container .select-department-tree .qms-tree-node>.external-view-node .node-external .node-external-content{padding:5px 15px;height:calc(100% - 2px);color:var(--default-color);font-size:14px;display:flex;align-items:center}.qms-select-department-tree-container .select-department-tree .qms-tree-node>.external-view-node .node-external .node-external-content span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qms-select-department-tree-container .select-department-tree .qms-tree-node.expand-node{color:var(--primary)}.qms-select-department-tree-container .select-department-tree .qms-tree-node.expand-node:hover{background:var(--primary-light-6-opacity)}.qms-select-department-tree-container .select-department-tree .qms-tree-node.expand-node:active{background:var(--primary-light-12-opacity)}.qms-select-department-tree-container .select-department-tree .qms-tree-node .node-without-checkbox{cursor:pointer;width:100%;display:flex;justify-content:space-between;align-items:center}.qms-select-department-tree-container .select-department-tree .qms-tree-node .node-without-checkbox .mat-icon{color:var(--primary);margin-right:4px}.qms-select-department-tree-container .select-department-tree .qms-tree-node.selected-theme{background:var(--primary-light-12-opacity)}.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all{cursor:default!important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all .mat-icon-rtl-mirror,.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all .type-icon,.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all button.mat-button-disabled{color:rgba(0,0,0,.38)}.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all .text-name.disabled{color:rgba(0,0,0,.38);cursor:default!important;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .select-department-tree .qms-tree-node.mat-tree-node-disabled-all.active{background-color:transparent}.qms-select-department-tree-container .text-name{position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:pointer;width:100%}.qms-select-department-tree-container .cursor-pointer{cursor:pointer}.qms-select-department-tree-container .ml5{margin-left:15px!important}.qms-select-department-tree-container .pl-10{padding-left:10px}.qms-select-department-tree-container ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-layout{white-space:normal}.qms-select-department-tree-container ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-label{flex-direction:row;align-items:center;position:relative;padding-bottom:2px}.qms-select-department-tree-container .qms-view-search-result{width:100%;overflow:hidden}.qms-select-department-tree-container .qms-view-search-result__header{position:relative}.qms-select-department-tree-container .qms-view-search-result__header:after{position:absolute;content:\"\";bottom:0;left:0;width:100%;height:1px;background-color:rgba(0,0,0,.1)}.qms-select-department-tree-container .qms-view-search-result__header .header-title{padding:8px 0;display:inline-block}.qms-select-department-tree-container .qms-view-search-result__header .header-title:first-child{padding-left:12px}.qms-select-department-tree-container .qms-view-search-result__header .header-title:nth-child(2){flex-basis:200px}.qms-select-department-tree-container .qms-view-search-result__wrapper{height:calc(100% - 50px);width:100%}.qms-select-department-tree-container .qms-view-search-result__wrapper.active-external{height:calc(100% - 90px)!important}.qms-select-department-tree-container .qms-view-search-result__wrapper .result{max-height:calc(100% - 44px);overflow-y:auto;margin-bottom:4px;padding-right:4px}.qms-select-department-tree-container .qms-view-search-result__wrapper .result.active-paging{max-height:calc(100% - 40px)}.qms-select-department-tree-container .qms-view-search-result__wrapper .result.no-result{height:100%;display:flex;justify-content:center;align-items:center}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item{border-radius:4px;display:grid;grid-template-columns:45px 1fr;align-items:center;cursor:pointer;transition:background .3s ease;min-height:40px}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item:not(:first-child){margin-top:4px!important}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item.active,.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item:hover{background:linear-gradient(0deg,rgba(1,99,178,.12),rgba(1,99,178,.12)),#fff}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item__content{display:flex;align-items:center}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item__content .item-result-content-wraper{padding:5px 15px;width:100%}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item__content .external-name{flex-basis:200px}.qms-select-department-tree-container .qms-view-search-result__wrapper .result-item__content .external-name span{width:200px;display:inline-block}.qms-select-department-tree-container .qms-view-search-result ::ng-deep .mat-checkbox.qms-group-options{display:flex;height:100%}.qms-select-department-tree-container ::ng-deep .breadcrumb-container{flex-wrap:wrap}.qms-select-department-tree-container ::ng-deep .mat-button-focus-overlay{background-color:transparent}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item{margin:0}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;transition:color .3s ease}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text:not(:last-child){max-width:150px!important}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text:not(:last-child):hover{color:var(--primary)}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-total-result{margin-bottom:0;margin-right:12px;height:100%;display:flex;align-items:center}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-total-result span{font-weight:600;color:rgba(0,0,0,.8)}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-paginator-range-actions{margin-bottom:0;grid-column-gap:2px;-moz-column-gap:2px;column-gap:2px}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-paginator-range-actions>.qms-total-result{margin-bottom:0}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-form-field-wrapper{padding-bottom:0}.qms-select-department-tree-container ::ng-deep .qms-paginator .qms-paginator-page-size{align-items:center}.qms-select-department-tree-container .text-gray{color:#242424}.qms-select-department-tree-container .mb0{margin-bottom:0!important}.qms-select-department-tree-container .fs-base{font-size:14px!important}.qms-select-department-tree-container .user-select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.qms-select-department-tree-container .item-breadcrumb-disable{cursor:not-allowed;color:rgba(0,0,0,.6);font-weight:400;font-size:14px;max-width:250px}.qms-select-department-tree-container ::ng-deep .mat-checkbox.checkbox-all .mat-checkbox-label{flex-direction:row;align-items:center;grid-column-gap:4px;-moz-column-gap:4px;column-gap:4px}.qms-select-department-tree-container ::ng-deep .btn-arrow{width:40px;height:40px;line-height:40px}.qms-select-department-tree-container .qms-loading-container{overflow:hidden;display:grid;grid-template-rows:repeat(60px)}.qms-select-department-tree-container .qms-loading-container .qms-loader{position:relative;width:100%;height:100%;padding:10px 0;overflow:hidden}.qms-select-department-tree-container .qms-loading-container .qms-loader:after{content:\"\";position:absolute;width:100%;height:100%;top:0;left:0;background:linear-gradient(110deg,hsla(0,0%,91%,0),hsla(0,0%,89%,0) 40%,hsla(0,0%,89%,.5) 50%,hsla(0,0%,89%,0) 60%,hsla(0,0%,89%,0));-webkit-animation:animate-loading 1.2s linear infinite;animation:animate-loading 1.2s linear infinite}.qms-select-department-tree-container .qms-loading-container .qms-loader__wrapper{position:relative;width:100%;height:100%}.qms-select-department-tree-container .qms-loading-container .qms-loader__wrapper .row-loader{background-color:#eee;position:absolute;left:0;width:100%;height:40px}@-webkit-keyframes animate-loading{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes animate-loading{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.qms-select-department-tree-container .qms-spinner{font-size:20px;position:relative;display:inline-block;width:1em;height:1em}.qms-select-department-tree-container .qms-spinner.center{position:absolute;left:0;right:0;top:0;bottom:0;margin:auto}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade{position:absolute;left:.4629em;bottom:0;width:.074em;height:.2777em;border-radius:.0555em;background-color:transparent;transform-origin:center -.2222em;-webkit-animation:spinner-animation 1s linear infinite;animation:spinner-animation 1s linear infinite}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:first-child{-webkit-animation-delay:0s;animation-delay:0s;transform:rotate(0deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(2){-webkit-animation-delay:83ms;animation-delay:83ms;transform:rotate(30deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(3){-webkit-animation-delay:.166s;animation-delay:.166s;transform:rotate(60deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(4){-webkit-animation-delay:.249s;animation-delay:.249s;transform:rotate(90deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(5){-webkit-animation-delay:.332s;animation-delay:.332s;transform:rotate(120deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(6){-webkit-animation-delay:.415s;animation-delay:.415s;transform:rotate(150deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(7){-webkit-animation-delay:.498s;animation-delay:.498s;transform:rotate(180deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(8){-webkit-animation-delay:.581s;animation-delay:.581s;transform:rotate(210deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(9){-webkit-animation-delay:.664s;animation-delay:.664s;transform:rotate(240deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(10){-webkit-animation-delay:.747s;animation-delay:.747s;transform:rotate(270deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(11){-webkit-animation-delay:.83s;animation-delay:.83s;transform:rotate(300deg)}.qms-select-department-tree-container .qms-spinner>.qms-spinner-blade:nth-child(12){-webkit-animation-delay:.913s;animation-delay:.913s;transform:rotate(330deg)}@-webkit-keyframes spinner-animation{0%{background-color:var(--primary-light-32-opacity)}to{background-color:transparent}}@keyframes spinner-animation{0%{background-color:var(--primary-light-32-opacity)}to{background-color:transparent}}@media screen and (max-width:600px){.qms-select-department-tree-container .external-view-node{flex-basis:65px!important}.qms-select-department-tree-container .qms-tree-node.active-external-view .mat-checkbox.qms-group-options{width:calc(100% - 110px)!important}.qms-select-department-tree-container .header-view-tree{grid-template-columns:1fr 80px!important}.qms-select-department-tree-container ::ng-deep .cdk-virtual-scroll-content-wrapper{right:0!important}.qms-select-department-tree-container .header-title{font-size:14px!important}.qms-select-department-tree-container .node-external,.qms-select-department-tree-container .text-label,.qms-select-department-tree-container .text-label+span,.qms-select-department-tree-container .text-name{font-size:12px}.qms-select-department-tree-container .node-expand-area{width:30px!important;height:30px!important}.qms-select-department-tree-container .node-expand-area .qms-btn-icon{width:30px;height:30px;line-height:30px}.qms-select-department-tree-container .fs-base{font-size:12px!important}.qms-select-department-tree-container .qms-select-department-tree-container .breadcrumb-container{flex-wrap:nowrap!important}.qms-select-department-tree-container ::ng-deep .qms-breadcrumb-item-text{font-size:12px!important;max-width:175px!important}.qms-select-department-tree-container ::ng-deep .qms-paginator .mat-paginator-container .qms-total-result{display:none!important}.qms-select-department-tree-container ::ng-deep .qms-paginator .size-small .mat-paginator-container{justify-content:center!important}.qms-select-department-tree-container .qms-view-search-result__header>.header-title:nth-child(2){flex-basis:120px!important}.qms-select-department-tree-container .result-item__content .external-name{flex-basis:75px!important}.qms-select-department-tree-container .result-item__content .external-name span{width:75px!important}}"]
31453
31799
  },] }
31454
31800
  ];
31455
31801
  SelectDepartmentTreeComponent.ctorParameters = function () { return [
@@ -31459,7 +31805,9 @@
31459
31805
  { type: icon.MatIconRegistry },
31460
31806
  { type: i0.ElementRef },
31461
31807
  { type: TranslateLibraryService },
31462
- { type: QMSSelectDepartmentTreeGlobalService }
31808
+ { type: QMSSelectDepartmentTreeGlobalService },
31809
+ { type: overlay.Overlay },
31810
+ { type: i0.ViewContainerRef }
31463
31811
  ]; };
31464
31812
  SelectDepartmentTreeComponent.propDecorators = {
31465
31813
  rowsSkeleton: [{ type: i0.Input }],
@@ -31469,6 +31817,12 @@
31469
31817
  onPagingSearchEvent: [{ type: i0.Output }],
31470
31818
  onValueChangeEvent: [{ type: i0.Output }],
31471
31819
  selectionNodeChangeEvent: [{ type: i0.Output }],
31820
+ onCheckNodeEvent: [{ type: i0.Output }],
31821
+ onExpandNodeEvent: [{ type: i0.Output }],
31822
+ onLoadMoreEvent: [{ type: i0.Output }],
31823
+ onCheckItemSearchEvent: [{ type: i0.Output }],
31824
+ onCheckAllItemSearchEvent: [{ type: i0.Output }],
31825
+ cdkVirtualScrollViewport: [{ type: i0.ViewChild, args: [scrolling.CdkVirtualScrollViewport,] }],
31472
31826
  paginatorSearch: [{ type: i0.ViewChild, args: ['paginatorSearch',] }]
31473
31827
  };
31474
31828
 
@@ -31507,7 +31861,8 @@
31507
31861
  core.MatRippleModule,
31508
31862
  QmsPaginatorModule,
31509
31863
  paginator.MatPaginatorModule,
31510
- divider.MatDividerModule
31864
+ divider.MatDividerModule,
31865
+ scrolling.ScrollingModule
31511
31866
  ]
31512
31867
  },] }
31513
31868
  ];
@@ -31601,6 +31956,11 @@
31601
31956
  this.popupData = new SelectDepartmentPopupData();
31602
31957
  this.resultSelected = [];
31603
31958
  this.onSearchEvent = new i0.EventEmitter();
31959
+ this.onCheckNodeEvent = new i0.EventEmitter();
31960
+ this.onExpandNodeEvent = new i0.EventEmitter();
31961
+ this.onLoadMoreEvent = new i0.EventEmitter();
31962
+ this.onCheckItemSearchEvent = new i0.EventEmitter();
31963
+ this.onCheckAllItemSearchEvent = new i0.EventEmitter();
31604
31964
  this.resultSearch = [];
31605
31965
  this.isActiveViewSearch = false;
31606
31966
  this.trans.getLanguageSubject$.pipe(operators.takeUntil(this.ngUnsubscribe)).subscribe(function (res) {
@@ -31611,6 +31971,13 @@
31611
31971
  // Init popup data
31612
31972
  this.popupData = ___namespace.cloneDeep(this.data);
31613
31973
  }
31974
+ Object.defineProperty(SelectDepartmentComponent.prototype, "isIncludeChild", {
31975
+ get: function () {
31976
+ return !!this.treeDepartment && this.treeDepartment.isIncludeChildren;
31977
+ },
31978
+ enumerable: false,
31979
+ configurable: true
31980
+ });
31614
31981
  SelectDepartmentComponent.prototype.ngAfterViewInit = function () {
31615
31982
  this.cdRef.detectChanges();
31616
31983
  };
@@ -31633,7 +32000,7 @@
31633
32000
  this.treeDepartment.onRemoveNode(node.id);
31634
32001
  };
31635
32002
  SelectDepartmentComponent.prototype.getChildrenNode = function (node) {
31636
- this.treeDepartment.getListChildrenOfNode(this.treeDepartment.convertToFlatNode(node));
32003
+ return this.treeDepartment.getListChildrenOfNode(node);
31637
32004
  };
31638
32005
  SelectDepartmentComponent.prototype.onResultDepartmentChange = function (data) {
31639
32006
  var _this = this;
@@ -31662,12 +32029,100 @@
31662
32029
  }
31663
32030
  return result;
31664
32031
  };
32032
+ /**
32033
+ * This function use for lazy load children of node
32034
+ * @param node node update
32035
+ * @param data list children to update node.
32036
+ * @param mode default is update that replace current list children by new list children , if mode = 'insert' will insert new value to list children existed before.
32037
+ */
32038
+ SelectDepartmentComponent.prototype.updateChildOfNode = function (node, data, mode) {
32039
+ if (mode === void 0) { mode = 'update'; }
32040
+ this.treeDepartment.updateChildOfNode(node, data, mode);
32041
+ };
32042
+ SelectDepartmentComponent.prototype.addRootTree = function (data) {
32043
+ if (data === void 0) { data = []; }
32044
+ this.treeDepartment.addRootTree(data);
32045
+ };
32046
+ /**
32047
+ * This function handle check node of tree
32048
+ * @param node node of tree
32049
+ * @param callback do something before handle check node
32050
+ * @returns
32051
+ */
32052
+ SelectDepartmentComponent.prototype.handleCheckNode = function (node, callback) {
32053
+ if (!this.treeDepartment)
32054
+ return;
32055
+ this.treeDepartment.handleCheckNode(node, callback);
32056
+ };
32057
+ /**
32058
+ * This method use for lazy mode, do some thing before init list node selected
32059
+ * @param callback
32060
+ * @returns
32061
+ */
32062
+ SelectDepartmentComponent.prototype.onBeforeInitNodeSelected = function (callback) {
32063
+ return __awaiter(this, void 0, void 0, function () {
32064
+ var _this = this;
32065
+ return __generator(this, function (_b) {
32066
+ switch (_b.label) {
32067
+ case 0:
32068
+ if (!this.treeDepartment)
32069
+ return [2 /*return*/];
32070
+ if (!!!callback) return [3 /*break*/, 2];
32071
+ return [4 /*yield*/, this.treeDepartment.onBeforeInitNodeSelected(function () { return __awaiter(_this, void 0, void 0, function () { return __generator(this, function (_b) {
32072
+ return [2 /*return*/, callback()];
32073
+ }); }); })];
32074
+ case 1:
32075
+ _b.sent();
32076
+ _b.label = 2;
32077
+ case 2: return [2 /*return*/];
32078
+ }
32079
+ });
32080
+ });
32081
+ };
32082
+ /**
32083
+ * Get node by id of node
32084
+ * @param nodeId id of node
32085
+ * @returns
32086
+ */
32087
+ SelectDepartmentComponent.prototype.findNode = function (nodeId) {
32088
+ if (!this.treeDepartment)
32089
+ return;
32090
+ return this.treeDepartment.treeControl.dataNodes.find(function (node) { return node.id === nodeId.toString(); });
32091
+ };
32092
+ /**
32093
+ * This method use for lazy mode, do some thing before select all result search
32094
+ * @param callback
32095
+ * @returns
32096
+ */
32097
+ SelectDepartmentComponent.prototype.onBeforeCheckAllSearch = function (callback) {
32098
+ return __awaiter(this, void 0, void 0, function () {
32099
+ return __generator(this, function (_b) {
32100
+ switch (_b.label) {
32101
+ case 0:
32102
+ if (!this.treeDepartment)
32103
+ return [2 /*return*/];
32104
+ return [4 /*yield*/, this.treeDepartment.onBeforeCheckAllSearch(callback)];
32105
+ case 1:
32106
+ _b.sent();
32107
+ return [2 /*return*/];
32108
+ }
32109
+ });
32110
+ });
32111
+ };
32112
+ /**
32113
+ * This method use for lazy mode, do some thing before check item result
32114
+ * @param callback
32115
+ * @returns
32116
+ */
32117
+ SelectDepartmentComponent.prototype.onBeforeCheckItemSearch = function (item, callback) {
32118
+ this.treeDepartment.onBeforeCheckItemSearch(item, callback);
32119
+ };
31665
32120
  return SelectDepartmentComponent;
31666
32121
  }());
31667
32122
  SelectDepartmentComponent.decorators = [
31668
32123
  { type: i0.Component, args: [{
31669
32124
  selector: 'qms-select-department',
31670
- template: "<div class=\"qms-select-department\">\r\n <div class=\"header-dialog mb-2\">\r\n <span>{{popupData.headerName}}</span>\r\n <button matDialogClose class=\"btn-close-dialog\" color=\"light\" qms-btn-icon>\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n <div>\r\n <div class=\"qms-scrollbar\">\r\n <div>\r\n <qms-select-department-tree #treeDepartment customClass=\"custom-department-tree\"\r\n [height]=\"treeDepartment.resultSelected.length ? '45vh': '55vh'\" [rowsSkeleton]=\"9\"\r\n [config]=\"popupData.config\" (onSearchEvent)=\"onSearchEvent.emit($event)\"\r\n (onValueChangeEvent)=\"onResultDepartmentChange($event)\" (onPagingSearchEvent)=\"onPagingEvent.emit($event)\">\r\n </qms-select-department-tree>\r\n </div>\r\n </div>\r\n <div class=\"line__divider\"></div>\r\n <div [@heightAnimation] *ngIf=\"treeDepartment && !!treeDepartment.resultSelected.length\" class=\" pr-0 pe-0\">\r\n <div class=\"header-title\">{{LANG.RESULTS}}</div>\r\n <div class=\"result-content pr-0 pe-0\">\r\n <mat-chip-list class=\"panel__item qms-scrollbar\">\r\n <div [@inOutAnimation_2] [id]=\"'item-result-'+item.id\" *ngFor=\"let item of treeDepartment.resultSelected\">\r\n <mat-chip [@updateItemAnimation] *qmsContentChanges=\"item.children?.length\"\r\n [qms-tool-tip]=\"generateTootip(item)\" position=\"top\" mode=\"dark\" qms-chip [removable]=\"true\">\r\n <span (click)=\"onScrollToNode(item)\" qms-chip-body>\r\n <span class=\"related__item__content_name\" #itemName>\r\n {{item.name}}\r\n <span class=\"select__include-children__count\" *ngIf=\"!!item?.isGroup\">\r\n {{item.children.length}}/{{item.childCount}}\r\n </span>\r\n </span>\r\n </span>\r\n <mat-icon (click)=\"onRemoveNode(item)\">cancel</mat-icon>\r\n </mat-chip>\r\n </div>\r\n </mat-chip-list>\r\n </div>\r\n </div>\r\n <mat-divider *ngIf=\"treeDepartment && !!treeDepartment.resultSelected.length\" class=\"mx-auto\"></mat-divider>\r\n <div class=\"confirm__button__groups\">\r\n <button (click)=\"onCloseDialog()\" class=\"btn-add\" [disabled]=\"!resultSelected.length\"\r\n [class.qms-btn-disabled]=\"!resultSelected.length\" qms-btn>\r\n <span>{{LANG.ADD}}</span>\r\n <span>\r\n ({{treeDepartment.resultSelected.length}})\r\n </span>\r\n </button>\r\n <button qms-btn-text mat-dialog-close>\r\n Cancel\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n",
32125
+ template: "<div class=\"qms-select-department\">\r\n <div class=\"header-dialog mb-2\">\r\n <span>{{popupData.headerName}}</span>\r\n <button matDialogClose class=\"btn-close-dialog\" color=\"light\" qms-btn-icon>\r\n <mat-icon>close</mat-icon>\r\n </button>\r\n </div>\r\n <div>\r\n <div class=\"qms-scrollbar\">\r\n <div>\r\n <qms-select-department-tree #treeDepartment customClass=\"custom-department-tree\"\r\n [height]=\"treeDepartment.resultSelected.length ? (popupData.config.isMobile ? '38vh' : '45vh'): '55vh'\"\r\n [rowsSkeleton]=\"9\" [config]=\"popupData.config\" (onSearchEvent)=\"onSearchEvent.emit($event)\"\r\n (onValueChangeEvent)=\"onResultDepartmentChange($event)\" (onPagingSearchEvent)=\"onPagingEvent.emit($event)\"\r\n (onCheckNodeEvent)=\"onCheckNodeEvent.emit($event)\" (onExpandNodeEvent)=\"onExpandNodeEvent.emit($event)\"\r\n (onLoadMoreEvent)=\"onLoadMoreEvent.emit()\"\r\n (onCheckAllItemSearchEvent)=\"onCheckAllItemSearchEvent.emit($event)\"\r\n (onCheckItemSearchEvent)=\"onCheckItemSearchEvent.emit($event)\">\r\n </qms-select-department-tree>\r\n </div>\r\n </div>\r\n <div class=\"line__divider\"></div>\r\n <div [@heightAnimation] *ngIf=\"treeDepartment && !!treeDepartment.resultSelected.length\" class=\" pr-0 pe-0\">\r\n <div class=\"header-title\">{{LANG.RESULTS}}</div>\r\n <div class=\"result-content pr-0 pe-0\">\r\n <mat-chip-list class=\"panel__item qms-scrollbar\">\r\n <div [@inOutAnimation_2] [id]=\"'item-result-'+item.id\" *ngFor=\"let item of treeDepartment.resultSelected\">\r\n <mat-chip [@updateItemAnimation] *qmsContentChanges=\"item.children?.length\"\r\n [qms-tool-tip]=\"generateTootip(item)\" position=\"top\" mode=\"dark\" qms-chip [removable]=\"true\">\r\n <span (click)=\"onScrollToNode(item)\" qms-chip-body>\r\n <span class=\"related__item__content_name\" #itemName>\r\n <span>{{item.name}}</span>\r\n <span class=\"select__include-children__count\" *ngIf=\"!!item?.isGroup\">\r\n {{item.children.length}}/{{item.childCount}}\r\n </span>\r\n </span>\r\n </span>\r\n <mat-icon (click)=\"onRemoveNode(item)\">cancel</mat-icon>\r\n </mat-chip>\r\n </div>\r\n </mat-chip-list>\r\n </div>\r\n </div>\r\n <mat-divider *ngIf=\"treeDepartment && !!treeDepartment.resultSelected.length\" class=\"mx-auto\"></mat-divider>\r\n <div class=\"confirm__button__groups\">\r\n <button (click)=\"onCloseDialog()\" class=\"btn-add\" [disabled]=\"!resultSelected.length\"\r\n [class.qms-btn-disabled]=\"!resultSelected.length\" qms-btn>\r\n <span>{{LANG.ADD}}</span>\r\n <span>\r\n ({{treeDepartment.resultSelected.length}})\r\n </span>\r\n </button>\r\n <button qms-btn-text mat-dialog-close>\r\n Cancel\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n",
31671
32126
  providers: [
31672
32127
  {
31673
32128
  provide: checkbox.MAT_CHECKBOX_DEFAULT_OPTIONS,
@@ -31675,7 +32130,7 @@
31675
32130
  }
31676
32131
  ],
31677
32132
  animations: [SelectDepartmentAnimationTrigger],
31678
- styles: ["@charset \"UTF-8\";@font-face{font-family:icomoon;src:url(../assets/fonts/icomoon.eot?aghldx);src:url(../assets/fonts/icomoon.eot?aghldx#iefix) format(\"embedded-opentype\"),url(../assets/fonts/icomoon.ttf?aghldx) format(\"truetype\"),url(../assets/fonts/icomoon.woff?aghldx) format(\"woff\"),url(../assets/fonts/icomoon.svg?aghldx#icomoon) format(\"svg\");font-weight:400;font-style:normal;font-display:block}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;speak:never;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-acutely-toxic .path1:before{content:\"\uE91B\";color:#e32730}.icon-acutely-toxic .path2:before{content:\"\uE922\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path3:before{content:\"\uE923\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path4:before{content:\"\uE924\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path5:before{content:\"\uE925\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path6:before{content:\"\uE926\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path7:before{content:\"\uE927\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path8:before{content:\"\uE928\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path9:before{content:\"\uE929\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path10:before{content:\"\uE92A\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path11:before{content:\"\uE92B\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path12:before{content:\"\uE92C\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path13:before{content:\"\uE92D\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path14:before{content:\"\uE92E\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path15:before{content:\"\uE92F\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path16:before{content:\"\uE930\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path17:before{content:\"\uE931\";margin-left:-1em;color:#323232}.icon-add-column:before{content:\"\uE932\"}.icon-add-tooltip:before{content:\"\uE933\"}.icon-admin:before{content:\"\uE934\"}.icon-annual-cycle:before{content:\"\uE935\"}.icon-assignment-repete:before{content:\"\uE936\"}.icon-barrier-add:before{content:\"\uE937\"}.icon-barrier-edit:before{content:\"\uE938\"}.icon-barrier-view:before{content:\"\uE939\"}.icon-button-group:before{content:\"\uE93A\"}.icon-chemical-manager:before{content:\"\uE93B\"}.icon-chronic-health-hazard .path1:before{content:\"\uE93C\";color:#e32730}.icon-chronic-health-hazard .path2:before{content:\"\uE93D\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path3:before{content:\"\uE93E\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path4:before{content:\"\uE93F\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path5:before{content:\"\uE940\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path6:before{content:\"\uE941\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path7:before{content:\"\uE942\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path8:before{content:\"\uE943\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path9:before{content:\"\uE944\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path10:before{content:\"\uE945\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path11:before{content:\"\uE946\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path12:before{content:\"\uE947\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path13:before{content:\"\uE948\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path14:before{content:\"\uE949\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path15:before{content:\"\uE94A\";margin-left:-1em;color:#323232}.icon-contingency:before{content:\"\uE94B\"}.icon-corrosive .path1:before{content:\"\uE94C\";color:#323232}.icon-corrosive .path2:before{content:\"\uE94D\";margin-left:-1em;color:#323232}.icon-corrosive .path3:before{content:\"\uE94E\";margin-left:-1em;color:#323232}.icon-corrosive .path4:before{content:\"\uE94F\";margin-left:-1em;color:#323232}.icon-corrosive .path5:before{content:\"\uE950\";margin-left:-1em;color:#323232}.icon-corrosive .path6:before{content:\"\uE951\";margin-left:-1em;color:#323232}.icon-corrosive .path7:before{content:\"\uE952\";margin-left:-1em;color:#323232}.icon-corrosive .path8:before{content:\"\uE953\";margin-left:-1em;color:#323232}.icon-corrosive .path9:before{content:\"\uE954\";margin-left:-1em;color:#323232}.icon-corrosive .path10:before{content:\"\uE955\";margin-left:-1em;color:#323232}.icon-corrosive .path11:before{content:\"\uE956\";margin-left:-1em;color:#323232}.icon-corrosive .path12:before{content:\"\uE957\";margin-left:-1em;color:#323232}.icon-corrosive .path13:before{content:\"\uE958\";margin-left:-1em;color:#323232}.icon-corrosive .path14:before{content:\"\uE959\";margin-left:-1em;color:#323232}.icon-corrosive .path15:before{content:\"\uE95A\";margin-left:-1em;color:#323232}.icon-corrosive .path16:before{content:\"\uE95B\";margin-left:-1em;color:#323232}.icon-corrosive .path17:before{content:\"\uE95C\";margin-left:-1em;color:#323232}.icon-corrosive .path18:before{content:\"\uE95D\";margin-left:-1em;color:#323232}.icon-corrosive .path19:before{content:\"\uE95E\";margin-left:-1em;color:#323232}.icon-corrosive .path20:before{content:\"\uE95F\";margin-left:-1em;color:#323232}.icon-corrosive .path21:before{content:\"\uE960\";margin-left:-1em;color:#e32730}.icon-dashboard:before{content:\"\uE961\"}.icon-database-sds:before{content:\"\uE962\"}.icon-description-add:before{content:\"\uE963\"}.icon-description-edit:before{content:\"\uE964\"}.icon-description-view:before{content:\"\uE965\";color:#666}.icon-document-read .path1:before{content:\"\uE966\";color:#000;opacity:.6}.icon-document-read .path2:before{content:\"\uE967\";margin-left:-1em;color:#fff}.icon-document-read .path3:before{content:\"\uE968\";margin-left:-1em;color:#000;opacity:.6}.icon-draft:before{content:\"\uE969\"}.icon-expired-off:before{content:\"\uE96A\"}.icon-expired-on:before{content:\"\uE96B\"}.icon-explosive .path1:before{content:\"\uE96C\";color:#e32730}.icon-explosive .path2:before{content:\"\uE96D\";margin-left:-1em;color:#323232}.icon-explosive .path3:before{content:\"\uE96E\";margin-left:-1em;color:#323232}.icon-explosive .path4:before{content:\"\uE96F\";margin-left:-1em;color:#323232}.icon-explosive .path5:before{content:\"\uE970\";margin-left:-1em;color:#323232}.icon-explosive .path6:before{content:\"\uE971\";margin-left:-1em;color:#323232}.icon-explosive .path7:before{content:\"\uE972\";margin-left:-1em;color:#323232}.icon-explosive .path8:before{content:\"\uE973\";margin-left:-1em;color:#323232}.icon-explosive .path9:before{content:\"\uE974\";margin-left:-1em;color:#323232}.icon-explosive .path10:before{content:\"\uE975\";margin-left:-1em;color:#323232}.icon-explosive .path11:before{content:\"\uE976\";margin-left:-1em;color:#323232}.icon-explosive .path12:before{content:\"\uE977\";margin-left:-1em;color:#323232}.icon-explosive .path13:before{content:\"\uE978\";margin-left:-1em;color:#323232}.icon-explosive .path14:before{content:\"\uE979\";margin-left:-1em;color:#323232}.icon-explosive .path15:before{content:\"\uE97A\";margin-left:-1em;color:#323232}.icon-explosive .path16:before{content:\"\uE97B\";margin-left:-1em;color:#323232}.icon-explosive .path17:before{content:\"\uE97C\";margin-left:-1em;color:#323232}.icon-explosive .path18:before{content:\"\uE97D\";margin-left:-1em;color:#323232}.icon-explosive .path19:before{content:\"\uE97E\";margin-left:-1em;color:#323232}.icon-explosive .path20:before{content:\"\uE97F\";margin-left:-1em;color:#323232}.icon-explosive .path21:before{content:\"\uE980\";margin-left:-1em;color:#323232}.icon-explosive .path22:before{content:\"\uE981\";margin-left:-1em;color:#323232}.icon-explosive .path23:before{content:\"\uE982\";margin-left:-1em;color:#323232}.icon-explosive .path24:before{content:\"\uE983\";margin-left:-1em;color:#323232}.icon-explosive .path25:before{content:\"\uE984\";margin-left:-1em;color:#323232}.icon-explosive .path26:before{content:\"\uE985\";margin-left:-1em;color:#323232}.icon-explosive .path27:before{content:\"\uE986\";margin-left:-1em;color:#323232}.icon-explosive .path28:before{content:\"\uE987\";margin-left:-1em;color:#323232}.icon-explosive .path29:before{content:\"\uE988\";margin-left:-1em;color:#323232}.icon-explosive .path30:before{content:\"\uE989\";margin-left:-1em;color:#323232}.icon-explosive .path31:before{content:\"\uE98A\";margin-left:-1em;color:#323232}.icon-explosive .path32:before{content:\"\uE98B\";margin-left:-1em;color:#323232}.icon-explosive .path33:before{content:\"\uE98C\";margin-left:-1em;color:#323232}.icon-explosive .path34:before{content:\"\uE98D\";margin-left:-1em;color:#323232}.icon-explosive .path35:before{content:\"\uE98E\";margin-left:-1em;color:#323232}.icon-explosive .path36:before{content:\"\uE98F\";margin-left:-1em;color:#323232}.icon-explosive .path37:before{content:\"\uE990\";margin-left:-1em;color:#323232}.icon-explosive .path38:before{content:\"\uE991\";margin-left:-1em;color:#323232}.icon-explosive .path39:before{content:\"\uE992\";margin-left:-1em;color:#323232}.icon-explosive .path40:before{content:\"\uE993\";margin-left:-1em;color:#323232}.icon-explosive .path41:before{content:\"\uE994\";margin-left:-1em;color:#323232}.icon-explosive .path42:before{content:\"\uE995\";margin-left:-1em;color:#323232}.icon-explosive .path43:before{content:\"\uE996\";margin-left:-1em;color:#323232}.icon-explosive .path44:before{content:\"\uE997\";margin-left:-1em;color:#323232}.icon-explosive .path45:before{content:\"\uE998\";margin-left:-1em;color:#323232}.icon-explosive .path46:before{content:\"\uE999\";margin-left:-1em;color:#323232}.icon-file-excel:before{content:\"\uE99A\"}.icon-file-pdf:before{content:\"\uE99B\"}.icon-file-pdf-verified .path1:before{content:\"\uE99C\";color:#000;opacity:.6}.icon-file-pdf-verified .path2:before{content:\"\uE99D\";margin-left:-1em;color:#fff}.icon-file-pdf-verified .path3:before{content:\"\uE99E\";margin-left:-1em;color:#000;opacity:.6}.icon-file-word:before{content:\"\uE99F\"}.icon-filter-alt:before{content:\"\uE9A0\"}.icon-flammable .path1:before{content:\"\uE9A1\";color:#323232}.icon-flammable .path2:before{content:\"\uE9A2\";margin-left:-1em;color:#323232}.icon-flammable .path3:before{content:\"\uE9A3\";margin-left:-1em;color:#e32730}.icon-gas-under-pressure .path1:before{content:\"\uE9A4\";color:#323232}.icon-gas-under-pressure .path2:before{content:\"\uE9A5\";margin-left:-1em;color:#e32730}.icon-health-hazard .path1:before{content:\"\uE9A6\";color:#323232}.icon-health-hazard .path2:before{content:\"\uE9A7\";margin-left:-1em;color:#e32730}.icon-line-break:before{content:\"\uE9A8\"}.icon-location:before{content:\"\uE9A9\"}.icon-measure-add:before{content:\"\uE9AA\"}.icon-measure-edit:before{content:\"\uE9AB\"}.icon-measure-view:before{content:\"\uE9AC\";color:#666}.icon-messages:before{content:\"\uE9AD\"}.icon-monitoring:before{content:\"\uE9AE\";color:#666}.icon-move:before{content:\"\uE9AF\"}.icon-oxidizing .path1:before{content:\"\uE9B0\";color:#e32730}.icon-oxidizing .path2:before{content:\"\uE9B1\";margin-left:-1em;color:#323232}.icon-oxidizing .path3:before{content:\"\uE9B2\";margin-left:-1em;color:#323232}.icon-oxidizing .path4:before{content:\"\uE9B3\";margin-left:-1em;color:#323232}.icon-process-area-closed:before{content:\"\uE9B4\"}.icon-process-area-open:before{content:\"\uE9B5\"}.icon-process-linked .path1:before{content:\"\uE9B6\";color:#000;opacity:.6}.icon-process-linked .path2:before{content:\"\uE9B7\";margin-left:-1em;color:#666}.icon-risk:before{content:\"\uE9B8\"}.icon-search-in-file:before{content:\"\uE9B9\"}.icon-sort-ascending:before{content:\"\uE9BA\"}.icon-sort-descending:before{content:\"\uE9BB\"}.icon-subscript:before{content:\"\uE9BC\"}.icon-superscript:before{content:\"\uE9BD\"}.icon-syncronice-favorites:before{content:\"\uE9BE\"}.icon-system-settings:before{content:\"\uE9BF\"}.icon-view-three-outlined:before{content:\"\uE9C0\"}.icon-workplace-safety:before{content:\"\uE9C1\"}.icon-checklist:before{content:\"\uE900\"}.icon-department-document .path1:before{content:\"\uE901\";color:#000;opacity:.6}.icon-department-document .path2:before{content:\"\uE902\";margin-left:-1em;color:#00804c}.icon-department-folder-closed .path1:before{content:\"\uE903\";color:#000;opacity:.6}.icon-department-folder-closed .path2:before{content:\"\uE904\";margin-left:-1em;color:#00804c}.icon-department-folder-open .path1:before{content:\"\uE905\";color:#000;opacity:.6}.icon-department-folder-open .path2:before{content:\"\uE906\";margin-left:-1em;color:#00804c}.icon-deviation:before{content:\"\uE907\"}.icon-dropdown-folder .path1:before{content:\"\uE908\";color:#00324e}.icon-dropdown-folder .path2:before{content:\"\uE909\";margin-left:-1em;color:#fff;opacity:.6}.icon-enterprise-document .path1:before{content:\"\uE90A\";color:#000;opacity:.6}.icon-enterprise-document .path2:before{content:\"\uE90B\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-closed .path1:before{content:\"\uE90C\";color:#000;opacity:.6}.icon-enterprise-folder-closed .path2:before{content:\"\uE90D\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-open .path1:before{content:\"\uE90E\";color:#000;opacity:.6}.icon-enterprise-folder-open .path2:before{content:\"\uE90F\";margin-left:-1em;color:#cf4714}.icon-folder-closed:before{content:\"\uE910\"}.icon-folder-open:before{content:\"\uE911\"}.icon-keyboard_arrow_down:before{content:\"\uE912\"}.icon-keyboard_arrow_up:before{content:\"\uE913\"}.icon-local-document .path1:before{content:\"\uE914\";color:#000;opacity:.6}.icon-local-document .path2:before{content:\"\uE915\";margin-left:-1em;color:#1954a9}.icon-local-folder-closed .path1:before{content:\"\uE916\";color:#000;opacity:.6}.icon-local-folder-closed .path2:before{content:\"\uE917\";margin-left:-1em;color:#1954a9}.icon-local-folder-open .path1:before{content:\"\uE918\";color:#000;opacity:.6}.icon-local-folder-open .path2:before{content:\"\uE919\";margin-left:-1em;color:#1954a9}.icon-process:before{content:\"\uE91A\"}.icon-regional-document .path1:before{content:\"\uE91C\";color:#000;opacity:.6}.icon-regional-document .path2:before{content:\"\uE91D\";margin-left:-1em;color:#662e0d}.icon-regional-folder-closed .path1:before{content:\"\uE91E\";color:#000;opacity:.6}.icon-regional-folder-closed .path2:before{content:\"\uE91F\";margin-left:-1em;color:#662e0d}.icon-regional-folder-open .path1:before{content:\"\uE920\";color:#000;opacity:.6}.icon-regional-folder-open .path2:before{content:\"\uE921\";margin-left:-1em;color:#662e0d}.qms-select-department .cursor-pointer{cursor:pointer}.qms-select-department .ml-5{margin-left:10px}.qms-select-department .padding-5{padding:5px}.qms-select-department .header-dialog{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:16px}.qms-select-department .input__field{display:flex;align-items:center;position:relative}.qms-select-department .input__field input.input-search{width:100%;padding:10px;outline:none;border:none;background:var(--background-input-text)}.qms-select-department .input__field .btn-search{cursor:pointer;vertical-align:middle;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.qms-select-department .line__divider{border-bottom:1px solid #ccc;height:1px;margin-top:10px;min-width:300px;max-width:100%}.qms-select-department .mat-expansion-panel-header{height:30px;font-size:12px;letter-spacing:1px;font-family:Raleway;font-weight:600;padding:0}.qms-select-department .mat-expansion-panel-header .mat-expansion-panel-header-title{align-items:center;margin-left:12px}.qms-select-department .mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none}.qms-select-department .panel__item{max-height:175px;margin-top:4px;overflow-x:hidden;overflow-y:auto;padding-right:5px;width:100%;display:block}.qms-select-department .panel__item .related__item__inline{max-width:100%}.qms-select-department .panel__item ::ng-deep .mat-chip-list-wrapper{margin:0 -4px!important}.qms-select-department .panel__item .select__toggle-include{width:100%}.qms-select-department .panel__item .select__toggle-include.toggle-include-child .mat-slide-toggle.qms-group-options .mat-slide-toggle-thumb{background-color:#5a5a5a!important}.qms-select-department .panel__item .related__item__content{height:32px;line-height:32px;background-color:var(--related-item-background);max-width:100%;margin-bottom:5px;margin-left:2.5px;margin-right:2.5px}.qms-select-department .panel__item .related__item__content .mat-icon{color:var(--related-mat-icon-color);font-size:24px}.qms-select-department .header-title{font-weight:600;color:rgba(0,0,0,.87)}.qms-select-department .result-content{padding-right:0!important}.qms-select-department .result-content .mat-chip-list{min-height:40px}.qms-select-department .result-content .mat-chip-list .mat-icon{color:rgba(0,0,0,.3)!important;cursor:pointer}.qms-select-department .result-content .mat-chip-list .mat-icon:hover{color:#000!important}.qms-select-department .result-content span.related__item__content_name{display:inline-block;min-width:calc(100% - 13px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}.qms-select-department .result-content span.related__item__content_name .select__include-children__count{font-size:.75rem;color:rgba(0,0,0,.5);font-weight:600}.qms-select-department .text-name{position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:pointer;width:100%}.qms-select-department ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-layout{white-space:normal}.qms-select-department ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-label{flex-direction:row;align-items:center;position:relative;padding-bottom:2px}.qms-select-department .confirm__button__groups .btn-add>.qms-btn-wrapper{display:flex;justify-content:center;align-items:center}.qms-select-department ::ng-deep .custom-department-tree .qms-view-search-result{height:100%!important}.qms-select-department ::ng-deep .custom-department-tree .qms-view-search-result .result{max-height:calc(100% - 80px)!important}.qms-select-department ::ng-deep .custom-department-tree .loading-container{height:calc(100% - 40px)!important}.qms-select-department ::ng-deep.btn-close-dialog.qms-btn-icon:focus:not(:hover){background-color:unset!important;color:unset!important}"]
32133
+ styles: ["@charset \"UTF-8\";@font-face{font-family:icomoon;src:url(../assets/fonts/icomoon.eot?aghldx);src:url(../assets/fonts/icomoon.eot?aghldx#iefix) format(\"embedded-opentype\"),url(../assets/fonts/icomoon.ttf?aghldx) format(\"truetype\"),url(../assets/fonts/icomoon.woff?aghldx) format(\"woff\"),url(../assets/fonts/icomoon.svg?aghldx#icomoon) format(\"svg\");font-weight:400;font-style:normal;font-display:block}[class*=\" icon-\"],[class^=icon-]{font-family:icomoon!important;speak:never;font-style:normal;font-weight:400;font-feature-settings:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.icon-acutely-toxic .path1:before{content:\"\uE91B\";color:#e32730}.icon-acutely-toxic .path2:before{content:\"\uE922\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path3:before{content:\"\uE923\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path4:before{content:\"\uE924\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path5:before{content:\"\uE925\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path6:before{content:\"\uE926\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path7:before{content:\"\uE927\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path8:before{content:\"\uE928\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path9:before{content:\"\uE929\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path10:before{content:\"\uE92A\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path11:before{content:\"\uE92B\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path12:before{content:\"\uE92C\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path13:before{content:\"\uE92D\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path14:before{content:\"\uE92E\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path15:before{content:\"\uE92F\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path16:before{content:\"\uE930\";margin-left:-1em;color:#323232}.icon-acutely-toxic .path17:before{content:\"\uE931\";margin-left:-1em;color:#323232}.icon-add-column:before{content:\"\uE932\"}.icon-add-tooltip:before{content:\"\uE933\"}.icon-admin:before{content:\"\uE934\"}.icon-annual-cycle:before{content:\"\uE935\"}.icon-assignment-repete:before{content:\"\uE936\"}.icon-barrier-add:before{content:\"\uE937\"}.icon-barrier-edit:before{content:\"\uE938\"}.icon-barrier-view:before{content:\"\uE939\"}.icon-button-group:before{content:\"\uE93A\"}.icon-chemical-manager:before{content:\"\uE93B\"}.icon-chronic-health-hazard .path1:before{content:\"\uE93C\";color:#e32730}.icon-chronic-health-hazard .path2:before{content:\"\uE93D\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path3:before{content:\"\uE93E\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path4:before{content:\"\uE93F\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path5:before{content:\"\uE940\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path6:before{content:\"\uE941\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path7:before{content:\"\uE942\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path8:before{content:\"\uE943\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path9:before{content:\"\uE944\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path10:before{content:\"\uE945\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path11:before{content:\"\uE946\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path12:before{content:\"\uE947\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path13:before{content:\"\uE948\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path14:before{content:\"\uE949\";margin-left:-1em;color:#323232}.icon-chronic-health-hazard .path15:before{content:\"\uE94A\";margin-left:-1em;color:#323232}.icon-contingency:before{content:\"\uE94B\"}.icon-corrosive .path1:before{content:\"\uE94C\";color:#323232}.icon-corrosive .path2:before{content:\"\uE94D\";margin-left:-1em;color:#323232}.icon-corrosive .path3:before{content:\"\uE94E\";margin-left:-1em;color:#323232}.icon-corrosive .path4:before{content:\"\uE94F\";margin-left:-1em;color:#323232}.icon-corrosive .path5:before{content:\"\uE950\";margin-left:-1em;color:#323232}.icon-corrosive .path6:before{content:\"\uE951\";margin-left:-1em;color:#323232}.icon-corrosive .path7:before{content:\"\uE952\";margin-left:-1em;color:#323232}.icon-corrosive .path8:before{content:\"\uE953\";margin-left:-1em;color:#323232}.icon-corrosive .path9:before{content:\"\uE954\";margin-left:-1em;color:#323232}.icon-corrosive .path10:before{content:\"\uE955\";margin-left:-1em;color:#323232}.icon-corrosive .path11:before{content:\"\uE956\";margin-left:-1em;color:#323232}.icon-corrosive .path12:before{content:\"\uE957\";margin-left:-1em;color:#323232}.icon-corrosive .path13:before{content:\"\uE958\";margin-left:-1em;color:#323232}.icon-corrosive .path14:before{content:\"\uE959\";margin-left:-1em;color:#323232}.icon-corrosive .path15:before{content:\"\uE95A\";margin-left:-1em;color:#323232}.icon-corrosive .path16:before{content:\"\uE95B\";margin-left:-1em;color:#323232}.icon-corrosive .path17:before{content:\"\uE95C\";margin-left:-1em;color:#323232}.icon-corrosive .path18:before{content:\"\uE95D\";margin-left:-1em;color:#323232}.icon-corrosive .path19:before{content:\"\uE95E\";margin-left:-1em;color:#323232}.icon-corrosive .path20:before{content:\"\uE95F\";margin-left:-1em;color:#323232}.icon-corrosive .path21:before{content:\"\uE960\";margin-left:-1em;color:#e32730}.icon-dashboard:before{content:\"\uE961\"}.icon-database-sds:before{content:\"\uE962\"}.icon-description-add:before{content:\"\uE963\"}.icon-description-edit:before{content:\"\uE964\"}.icon-description-view:before{content:\"\uE965\";color:#666}.icon-document-read .path1:before{content:\"\uE966\";color:#000;opacity:.6}.icon-document-read .path2:before{content:\"\uE967\";margin-left:-1em;color:#fff}.icon-document-read .path3:before{content:\"\uE968\";margin-left:-1em;color:#000;opacity:.6}.icon-draft:before{content:\"\uE969\"}.icon-expired-off:before{content:\"\uE96A\"}.icon-expired-on:before{content:\"\uE96B\"}.icon-explosive .path1:before{content:\"\uE96C\";color:#e32730}.icon-explosive .path2:before{content:\"\uE96D\";margin-left:-1em;color:#323232}.icon-explosive .path3:before{content:\"\uE96E\";margin-left:-1em;color:#323232}.icon-explosive .path4:before{content:\"\uE96F\";margin-left:-1em;color:#323232}.icon-explosive .path5:before{content:\"\uE970\";margin-left:-1em;color:#323232}.icon-explosive .path6:before{content:\"\uE971\";margin-left:-1em;color:#323232}.icon-explosive .path7:before{content:\"\uE972\";margin-left:-1em;color:#323232}.icon-explosive .path8:before{content:\"\uE973\";margin-left:-1em;color:#323232}.icon-explosive .path9:before{content:\"\uE974\";margin-left:-1em;color:#323232}.icon-explosive .path10:before{content:\"\uE975\";margin-left:-1em;color:#323232}.icon-explosive .path11:before{content:\"\uE976\";margin-left:-1em;color:#323232}.icon-explosive .path12:before{content:\"\uE977\";margin-left:-1em;color:#323232}.icon-explosive .path13:before{content:\"\uE978\";margin-left:-1em;color:#323232}.icon-explosive .path14:before{content:\"\uE979\";margin-left:-1em;color:#323232}.icon-explosive .path15:before{content:\"\uE97A\";margin-left:-1em;color:#323232}.icon-explosive .path16:before{content:\"\uE97B\";margin-left:-1em;color:#323232}.icon-explosive .path17:before{content:\"\uE97C\";margin-left:-1em;color:#323232}.icon-explosive .path18:before{content:\"\uE97D\";margin-left:-1em;color:#323232}.icon-explosive .path19:before{content:\"\uE97E\";margin-left:-1em;color:#323232}.icon-explosive .path20:before{content:\"\uE97F\";margin-left:-1em;color:#323232}.icon-explosive .path21:before{content:\"\uE980\";margin-left:-1em;color:#323232}.icon-explosive .path22:before{content:\"\uE981\";margin-left:-1em;color:#323232}.icon-explosive .path23:before{content:\"\uE982\";margin-left:-1em;color:#323232}.icon-explosive .path24:before{content:\"\uE983\";margin-left:-1em;color:#323232}.icon-explosive .path25:before{content:\"\uE984\";margin-left:-1em;color:#323232}.icon-explosive .path26:before{content:\"\uE985\";margin-left:-1em;color:#323232}.icon-explosive .path27:before{content:\"\uE986\";margin-left:-1em;color:#323232}.icon-explosive .path28:before{content:\"\uE987\";margin-left:-1em;color:#323232}.icon-explosive .path29:before{content:\"\uE988\";margin-left:-1em;color:#323232}.icon-explosive .path30:before{content:\"\uE989\";margin-left:-1em;color:#323232}.icon-explosive .path31:before{content:\"\uE98A\";margin-left:-1em;color:#323232}.icon-explosive .path32:before{content:\"\uE98B\";margin-left:-1em;color:#323232}.icon-explosive .path33:before{content:\"\uE98C\";margin-left:-1em;color:#323232}.icon-explosive .path34:before{content:\"\uE98D\";margin-left:-1em;color:#323232}.icon-explosive .path35:before{content:\"\uE98E\";margin-left:-1em;color:#323232}.icon-explosive .path36:before{content:\"\uE98F\";margin-left:-1em;color:#323232}.icon-explosive .path37:before{content:\"\uE990\";margin-left:-1em;color:#323232}.icon-explosive .path38:before{content:\"\uE991\";margin-left:-1em;color:#323232}.icon-explosive .path39:before{content:\"\uE992\";margin-left:-1em;color:#323232}.icon-explosive .path40:before{content:\"\uE993\";margin-left:-1em;color:#323232}.icon-explosive .path41:before{content:\"\uE994\";margin-left:-1em;color:#323232}.icon-explosive .path42:before{content:\"\uE995\";margin-left:-1em;color:#323232}.icon-explosive .path43:before{content:\"\uE996\";margin-left:-1em;color:#323232}.icon-explosive .path44:before{content:\"\uE997\";margin-left:-1em;color:#323232}.icon-explosive .path45:before{content:\"\uE998\";margin-left:-1em;color:#323232}.icon-explosive .path46:before{content:\"\uE999\";margin-left:-1em;color:#323232}.icon-file-excel:before{content:\"\uE99A\"}.icon-file-pdf:before{content:\"\uE99B\"}.icon-file-pdf-verified .path1:before{content:\"\uE99C\";color:#000;opacity:.6}.icon-file-pdf-verified .path2:before{content:\"\uE99D\";margin-left:-1em;color:#fff}.icon-file-pdf-verified .path3:before{content:\"\uE99E\";margin-left:-1em;color:#000;opacity:.6}.icon-file-word:before{content:\"\uE99F\"}.icon-filter-alt:before{content:\"\uE9A0\"}.icon-flammable .path1:before{content:\"\uE9A1\";color:#323232}.icon-flammable .path2:before{content:\"\uE9A2\";margin-left:-1em;color:#323232}.icon-flammable .path3:before{content:\"\uE9A3\";margin-left:-1em;color:#e32730}.icon-gas-under-pressure .path1:before{content:\"\uE9A4\";color:#323232}.icon-gas-under-pressure .path2:before{content:\"\uE9A5\";margin-left:-1em;color:#e32730}.icon-health-hazard .path1:before{content:\"\uE9A6\";color:#323232}.icon-health-hazard .path2:before{content:\"\uE9A7\";margin-left:-1em;color:#e32730}.icon-line-break:before{content:\"\uE9A8\"}.icon-location:before{content:\"\uE9A9\"}.icon-measure-add:before{content:\"\uE9AA\"}.icon-measure-edit:before{content:\"\uE9AB\"}.icon-measure-view:before{content:\"\uE9AC\";color:#666}.icon-messages:before{content:\"\uE9AD\"}.icon-monitoring:before{content:\"\uE9AE\";color:#666}.icon-move:before{content:\"\uE9AF\"}.icon-oxidizing .path1:before{content:\"\uE9B0\";color:#e32730}.icon-oxidizing .path2:before{content:\"\uE9B1\";margin-left:-1em;color:#323232}.icon-oxidizing .path3:before{content:\"\uE9B2\";margin-left:-1em;color:#323232}.icon-oxidizing .path4:before{content:\"\uE9B3\";margin-left:-1em;color:#323232}.icon-process-area-closed:before{content:\"\uE9B4\"}.icon-process-area-open:before{content:\"\uE9B5\"}.icon-process-linked .path1:before{content:\"\uE9B6\";color:#000;opacity:.6}.icon-process-linked .path2:before{content:\"\uE9B7\";margin-left:-1em;color:#666}.icon-risk:before{content:\"\uE9B8\"}.icon-search-in-file:before{content:\"\uE9B9\"}.icon-sort-ascending:before{content:\"\uE9BA\"}.icon-sort-descending:before{content:\"\uE9BB\"}.icon-subscript:before{content:\"\uE9BC\"}.icon-superscript:before{content:\"\uE9BD\"}.icon-syncronice-favorites:before{content:\"\uE9BE\"}.icon-system-settings:before{content:\"\uE9BF\"}.icon-view-three-outlined:before{content:\"\uE9C0\"}.icon-workplace-safety:before{content:\"\uE9C1\"}.icon-checklist:before{content:\"\uE900\"}.icon-department-document .path1:before{content:\"\uE901\";color:#000;opacity:.6}.icon-department-document .path2:before{content:\"\uE902\";margin-left:-1em;color:#00804c}.icon-department-folder-closed .path1:before{content:\"\uE903\";color:#000;opacity:.6}.icon-department-folder-closed .path2:before{content:\"\uE904\";margin-left:-1em;color:#00804c}.icon-department-folder-open .path1:before{content:\"\uE905\";color:#000;opacity:.6}.icon-department-folder-open .path2:before{content:\"\uE906\";margin-left:-1em;color:#00804c}.icon-deviation:before{content:\"\uE907\"}.icon-dropdown-folder .path1:before{content:\"\uE908\";color:#00324e}.icon-dropdown-folder .path2:before{content:\"\uE909\";margin-left:-1em;color:#fff;opacity:.6}.icon-enterprise-document .path1:before{content:\"\uE90A\";color:#000;opacity:.6}.icon-enterprise-document .path2:before{content:\"\uE90B\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-closed .path1:before{content:\"\uE90C\";color:#000;opacity:.6}.icon-enterprise-folder-closed .path2:before{content:\"\uE90D\";margin-left:-1em;color:#cf4714}.icon-enterprise-folder-open .path1:before{content:\"\uE90E\";color:#000;opacity:.6}.icon-enterprise-folder-open .path2:before{content:\"\uE90F\";margin-left:-1em;color:#cf4714}.icon-folder-closed:before{content:\"\uE910\"}.icon-folder-open:before{content:\"\uE911\"}.icon-keyboard_arrow_down:before{content:\"\uE912\"}.icon-keyboard_arrow_up:before{content:\"\uE913\"}.icon-local-document .path1:before{content:\"\uE914\";color:#000;opacity:.6}.icon-local-document .path2:before{content:\"\uE915\";margin-left:-1em;color:#1954a9}.icon-local-folder-closed .path1:before{content:\"\uE916\";color:#000;opacity:.6}.icon-local-folder-closed .path2:before{content:\"\uE917\";margin-left:-1em;color:#1954a9}.icon-local-folder-open .path1:before{content:\"\uE918\";color:#000;opacity:.6}.icon-local-folder-open .path2:before{content:\"\uE919\";margin-left:-1em;color:#1954a9}.icon-process:before{content:\"\uE91A\"}.icon-regional-document .path1:before{content:\"\uE91C\";color:#000;opacity:.6}.icon-regional-document .path2:before{content:\"\uE91D\";margin-left:-1em;color:#662e0d}.icon-regional-folder-closed .path1:before{content:\"\uE91E\";color:#000;opacity:.6}.icon-regional-folder-closed .path2:before{content:\"\uE91F\";margin-left:-1em;color:#662e0d}.icon-regional-folder-open .path1:before{content:\"\uE920\";color:#000;opacity:.6}.icon-regional-folder-open .path2:before{content:\"\uE921\";margin-left:-1em;color:#662e0d}.qms-select-department .cursor-pointer{cursor:pointer}.qms-select-department .ml-5{margin-left:10px}.qms-select-department .padding-5{padding:5px}.qms-select-department .header-dialog{display:flex;justify-content:space-between;align-items:center;font-weight:600;font-size:16px}.qms-select-department .input__field{display:flex;align-items:center;position:relative}.qms-select-department .input__field input.input-search{width:100%;padding:10px;outline:none;border:none;background:var(--background-input-text)}.qms-select-department .input__field .btn-search{cursor:pointer;vertical-align:middle;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.qms-select-department .line__divider{border-bottom:1px solid #ccc;height:1px;margin-top:10px;min-width:300px;max-width:100%}.qms-select-department .mat-expansion-panel-header{height:30px;font-size:12px;letter-spacing:1px;font-family:Raleway;font-weight:600;padding:0}.qms-select-department .mat-expansion-panel-header .mat-expansion-panel-header-title{align-items:center;margin-left:12px}.qms-select-department .mat-expansion-panel:not([class*=mat-elevation-z]){box-shadow:none}.qms-select-department .panel__item{max-height:175px;margin-top:4px;overflow-x:hidden;overflow-y:auto;padding-right:5px;width:100%;display:block}.qms-select-department .panel__item .related__item__inline{max-width:100%}.qms-select-department .panel__item ::ng-deep .mat-chip-list-wrapper{margin:0 -4px!important}.qms-select-department .panel__item .select__toggle-include{width:100%}.qms-select-department .panel__item .select__toggle-include.toggle-include-child .mat-slide-toggle.qms-group-options .mat-slide-toggle-thumb{background-color:#5a5a5a!important}.qms-select-department .panel__item .related__item__content{height:32px;line-height:32px;background-color:var(--related-item-background);max-width:100%;margin-bottom:5px;margin-left:2.5px;margin-right:2.5px}.qms-select-department .panel__item .related__item__content .mat-icon{color:var(--related-mat-icon-color);font-size:24px}.qms-select-department .header-title{font-weight:600;color:rgba(0,0,0,.87)}.qms-select-department .result-content{padding-right:0!important}.qms-select-department .result-content .mat-chip-list{min-height:40px}.qms-select-department .result-content .mat-chip-list .mat-icon{color:rgba(0,0,0,.3)!important;cursor:pointer}.qms-select-department .result-content .mat-chip-list .mat-icon:hover{color:#000!important}.qms-select-department .result-content span.related__item__content_name{min-width:calc(100% - 13px);max-width:250px;display:flex;align-items:center}.qms-select-department .result-content span.related__item__content_name>span:first-child{display:inline-block;margin-right:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.qms-select-department .result-content span.related__item__content_name .select__include-children__count{font-size:.75rem;color:rgba(0,0,0,.5);font-weight:600;line-height:16px}.qms-select-department .text-name{position:relative;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;cursor:pointer;width:100%}.qms-select-department ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-layout{white-space:normal}.qms-select-department ::ng-deep .mat-checkbox.qms-group-options.flex-direction-row .mat-checkbox-label{flex-direction:row;align-items:center;position:relative;padding-bottom:2px}.qms-select-department .confirm__button__groups .btn-add>.qms-btn-wrapper{display:flex;justify-content:center;align-items:center}.qms-select-department ::ng-deep .custom-department-tree .qms-view-search-result{height:100%!important}.qms-select-department ::ng-deep .custom-department-tree .qms-view-search-result .result{max-height:calc(100% - 80px)!important}.qms-select-department ::ng-deep .custom-department-tree .loading-container{height:calc(100% - 40px)!important}.qms-select-department ::ng-deep.btn-close-dialog.qms-btn-icon:focus:not(:hover){background-color:unset!important;color:unset!important}@media screen and (max-width:600px){::ng-deep .cdk-global-overlay-wrapper{justify-content:center!important;width:100vw}.header-title{font-size:14px}.related__item__content_name{font-size:12px!important}}"]
31679
32134
  },] }
31680
32135
  ];
31681
32136
  SelectDepartmentComponent.ctorParameters = function () { return [
@@ -31686,7 +32141,13 @@
31686
32141
  ]; };
31687
32142
  SelectDepartmentComponent.propDecorators = {
31688
32143
  treeDepartment: [{ type: i0.ViewChild, args: ['treeDepartment',] }],
31689
- onPagingEvent: [{ type: i0.Output }]
32144
+ onPagingEvent: [{ type: i0.Output }],
32145
+ onSearchEvent: [{ type: i0.Output }],
32146
+ onCheckNodeEvent: [{ type: i0.Output }],
32147
+ onExpandNodeEvent: [{ type: i0.Output }],
32148
+ onLoadMoreEvent: [{ type: i0.Output }],
32149
+ onCheckItemSearchEvent: [{ type: i0.Output }],
32150
+ onCheckAllItemSearchEvent: [{ type: i0.Output }]
31690
32151
  };
31691
32152
 
31692
32153
  var QMSSelectDepartmentModule = /** @class */ (function () {
@@ -32774,14 +33235,15 @@
32774
33235
  exports["ɵe"] = QMSBasicTreeComponent;
32775
33236
  exports["ɵf"] = QMSCKEditorTreeService;
32776
33237
  exports["ɵg"] = QMSCKEditorTemplateComponent;
32777
- exports["ɵh"] = LinkAttachmentComponent;
32778
- exports["ɵi"] = QMSCKEditorTooltipComponent;
32779
- exports["ɵj"] = QMSCKEditorTooltip;
32780
- exports["ɵk"] = QMSCKEditorImageMapComponent;
32781
- exports["ɵl"] = QMSCKEditorImageMap;
32782
- exports["ɵm"] = QMSCKEditorBpmnData;
32783
- exports["ɵn"] = QMSCKEditorAboutComponent;
32784
- exports["ɵo"] = QMSCKEditorFlowchartComponent;
33238
+ exports["ɵh"] = QMSCKEditorCommonService;
33239
+ exports["ɵi"] = LinkAttachmentComponent;
33240
+ exports["ɵj"] = QMSCKEditorTooltipComponent;
33241
+ exports["ɵk"] = QMSCKEditorTooltip;
33242
+ exports["ɵl"] = QMSCKEditorImageMapComponent;
33243
+ exports["ɵm"] = QMSCKEditorImageMap;
33244
+ exports["ɵn"] = QMSCKEditorBpmnData;
33245
+ exports["ɵo"] = QMSCKEditorAboutComponent;
33246
+ exports["ɵp"] = QMSCKEditorFlowchartComponent;
32785
33247
 
32786
33248
  Object.defineProperty(exports, '__esModule', { value: true });
32787
33249