@bizdoc/core 1.13.19 → 1.13.24

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 (147) hide show
  1. package/assets/i18n/cldr-data/main/ar/ca-buddhist.json +530 -0
  2. package/assets/i18n/cldr-data/main/ar/ca-chinese.json +1254 -0
  3. package/assets/i18n/cldr-data/main/ar/ca-coptic.json +539 -0
  4. package/assets/i18n/cldr-data/main/ar/ca-dangi.json +1254 -0
  5. package/assets/i18n/cldr-data/main/ar/ca-ethiopic-amete-alem.json +536 -0
  6. package/assets/i18n/cldr-data/main/ar/ca-ethiopic.json +539 -0
  7. package/assets/i18n/cldr-data/main/ar/ca-generic.json +533 -0
  8. package/assets/i18n/cldr-data/main/ar/ca-gregorian.json +557 -0
  9. package/assets/i18n/cldr-data/main/ar/ca-hebrew.json +542 -0
  10. package/assets/i18n/cldr-data/main/ar/ca-indian.json +530 -0
  11. package/assets/i18n/cldr-data/main/ar/ca-islamic-civil.json +530 -0
  12. package/assets/i18n/cldr-data/main/ar/ca-islamic-rgsa.json +530 -0
  13. package/assets/i18n/cldr-data/main/ar/ca-islamic-tbla.json +530 -0
  14. package/assets/i18n/cldr-data/main/ar/ca-islamic-umalqura.json +530 -0
  15. package/assets/i18n/cldr-data/main/ar/ca-islamic.json +530 -0
  16. package/assets/i18n/cldr-data/main/ar/ca-japanese.json +1238 -0
  17. package/assets/i18n/cldr-data/main/ar/ca-persian.json +530 -0
  18. package/assets/i18n/cldr-data/main/ar/ca-roc.json +533 -0
  19. package/assets/i18n/cldr-data/main/ar/characters.json +52 -0
  20. package/assets/i18n/cldr-data/main/ar/currencies.json +2306 -0
  21. package/assets/i18n/cldr-data/main/ar/dateFields.json +1039 -0
  22. package/assets/i18n/cldr-data/main/ar/delimiters.json +18 -0
  23. package/assets/i18n/cldr-data/main/ar/languages.json +556 -0
  24. package/assets/i18n/cldr-data/main/ar/layout.json +18 -0
  25. package/assets/i18n/cldr-data/main/ar/listPatterns.json +68 -0
  26. package/assets/i18n/cldr-data/main/ar/localeDisplayNames.json +230 -0
  27. package/assets/i18n/cldr-data/main/ar/measurementSystemNames.json +19 -0
  28. package/assets/i18n/cldr-data/main/ar/numbers.json +511 -0
  29. package/assets/i18n/cldr-data/main/ar/posix.json +18 -0
  30. package/assets/i18n/cldr-data/main/ar/scripts.json +202 -0
  31. package/assets/i18n/cldr-data/main/ar/territories.json +324 -0
  32. package/assets/i18n/cldr-data/main/ar/timeZoneNames.json +2268 -0
  33. package/assets/i18n/cldr-data/main/ar/units.json +4587 -0
  34. package/assets/i18n/cldr-data/main/ar/variants.json +119 -0
  35. package/assets/i18n/cldr-data/main/de/ca-buddhist.json +530 -0
  36. package/assets/i18n/cldr-data/main/de/ca-chinese.json +1254 -0
  37. package/assets/i18n/cldr-data/main/de/ca-coptic.json +539 -0
  38. package/assets/i18n/cldr-data/main/de/ca-dangi.json +1254 -0
  39. package/assets/i18n/cldr-data/main/de/ca-ethiopic-amete-alem.json +536 -0
  40. package/assets/i18n/cldr-data/main/de/ca-ethiopic.json +539 -0
  41. package/assets/i18n/cldr-data/main/de/ca-generic.json +533 -0
  42. package/assets/i18n/cldr-data/main/de/ca-gregorian.json +551 -0
  43. package/assets/i18n/cldr-data/main/de/ca-hebrew.json +542 -0
  44. package/assets/i18n/cldr-data/main/de/ca-indian.json +530 -0
  45. package/assets/i18n/cldr-data/main/de/ca-islamic-civil.json +530 -0
  46. package/assets/i18n/cldr-data/main/de/ca-islamic-rgsa.json +530 -0
  47. package/assets/i18n/cldr-data/main/de/ca-islamic-tbla.json +530 -0
  48. package/assets/i18n/cldr-data/main/de/ca-islamic-umalqura.json +530 -0
  49. package/assets/i18n/cldr-data/main/de/ca-islamic.json +530 -0
  50. package/assets/i18n/cldr-data/main/de/ca-japanese.json +1238 -0
  51. package/assets/i18n/cldr-data/main/de/ca-persian.json +530 -0
  52. package/assets/i18n/cldr-data/main/de/ca-roc.json +533 -0
  53. package/assets/i18n/cldr-data/main/de/characters.json +52 -0
  54. package/assets/i18n/cldr-data/main/de/contextTransforms.json +18 -0
  55. package/assets/i18n/cldr-data/main/de/currencies.json +1932 -0
  56. package/assets/i18n/cldr-data/main/de/dateFields.json +679 -0
  57. package/assets/i18n/cldr-data/main/de/delimiters.json +18 -0
  58. package/assets/i18n/cldr-data/main/de/languages.json +640 -0
  59. package/assets/i18n/cldr-data/main/de/layout.json +18 -0
  60. package/assets/i18n/cldr-data/main/de/listPatterns.json +68 -0
  61. package/assets/i18n/cldr-data/main/de/localeDisplayNames.json +230 -0
  62. package/assets/i18n/cldr-data/main/de/measurementSystemNames.json +19 -0
  63. package/assets/i18n/cldr-data/main/de/numbers.json +155 -0
  64. package/assets/i18n/cldr-data/main/de/posix.json +18 -0
  65. package/assets/i18n/cldr-data/main/de/scripts.json +209 -0
  66. package/assets/i18n/cldr-data/main/de/territories.json +324 -0
  67. package/assets/i18n/cldr-data/main/de/timeZoneNames.json +2332 -0
  68. package/assets/i18n/cldr-data/main/de/units.json +2546 -0
  69. package/assets/i18n/cldr-data/main/de/variants.json +119 -0
  70. package/assets/i18n/cldr-data/main/ru/ca-buddhist.json +524 -0
  71. package/assets/i18n/cldr-data/main/ru/ca-chinese.json +1248 -0
  72. package/assets/i18n/cldr-data/main/ru/ca-coptic.json +533 -0
  73. package/assets/i18n/cldr-data/main/ru/ca-dangi.json +1248 -0
  74. package/assets/i18n/cldr-data/main/ru/ca-ethiopic-amete-alem.json +530 -0
  75. package/assets/i18n/cldr-data/main/ru/ca-ethiopic.json +533 -0
  76. package/assets/i18n/cldr-data/main/ru/ca-generic.json +527 -0
  77. package/assets/i18n/cldr-data/main/ru/ca-gregorian.json +546 -0
  78. package/assets/i18n/cldr-data/main/ru/ca-hebrew.json +536 -0
  79. package/assets/i18n/cldr-data/main/ru/ca-indian.json +524 -0
  80. package/assets/i18n/cldr-data/main/ru/ca-islamic-civil.json +524 -0
  81. package/assets/i18n/cldr-data/main/ru/ca-islamic-rgsa.json +524 -0
  82. package/assets/i18n/cldr-data/main/ru/ca-islamic-tbla.json +524 -0
  83. package/assets/i18n/cldr-data/main/ru/ca-islamic-umalqura.json +524 -0
  84. package/assets/i18n/cldr-data/main/ru/ca-islamic.json +524 -0
  85. package/assets/i18n/cldr-data/main/ru/ca-japanese.json +1232 -0
  86. package/assets/i18n/cldr-data/main/ru/ca-persian.json +524 -0
  87. package/assets/i18n/cldr-data/main/ru/ca-roc.json +527 -0
  88. package/assets/i18n/cldr-data/main/ru/characters.json +52 -0
  89. package/assets/i18n/cldr-data/main/ru/contextTransforms.json +62 -0
  90. package/assets/i18n/cldr-data/main/ru/currencies.json +2001 -0
  91. package/assets/i18n/cldr-data/main/ru/dateFields.json +859 -0
  92. package/assets/i18n/cldr-data/main/ru/delimiters.json +18 -0
  93. package/assets/i18n/cldr-data/main/ru/languages.json +557 -0
  94. package/assets/i18n/cldr-data/main/ru/layout.json +18 -0
  95. package/assets/i18n/cldr-data/main/ru/listPatterns.json +68 -0
  96. package/assets/i18n/cldr-data/main/ru/localeDisplayNames.json +230 -0
  97. package/assets/i18n/cldr-data/main/ru/measurementSystemNames.json +19 -0
  98. package/assets/i18n/cldr-data/main/ru/numbers.json +231 -0
  99. package/assets/i18n/cldr-data/main/ru/posix.json +18 -0
  100. package/assets/i18n/cldr-data/main/ru/scripts.json +209 -0
  101. package/assets/i18n/cldr-data/main/ru/territories.json +324 -0
  102. package/assets/i18n/cldr-data/main/ru/timeZoneNames.json +2317 -0
  103. package/assets/i18n/cldr-data/main/ru/units.json +3647 -0
  104. package/assets/i18n/cldr-data/main/ru/variants.json +119 -0
  105. package/esm2020/lib/compose/action/assign-action.component.mjs +2 -1
  106. package/esm2020/lib/compose/action/moveto-action.component.mjs +88 -0
  107. package/esm2020/lib/compose/form-selector/form-selector.sheet.mjs +13 -7
  108. package/esm2020/lib/compose/form.component.mjs +6 -2
  109. package/esm2020/lib/compose/trace/trace.component.mjs +5 -2
  110. package/esm2020/lib/core/mailbox.service.mjs +2 -2
  111. package/esm2020/lib/core/session.service.mjs +12 -10
  112. package/esm2020/lib/core/translate.service.mjs +18 -10
  113. package/esm2020/lib/core/translations.mjs +17 -8
  114. package/esm2020/lib/cube/chart/chart.component.mjs +2 -2
  115. package/esm2020/lib/cube/cube.service.mjs +1 -1
  116. package/esm2020/lib/cube/explore/explore.pane.component.mjs +2 -2
  117. package/esm2020/lib/cube/grid/grid.component.mjs +2 -2
  118. package/esm2020/lib/cube/grid/spreadsheet.component.mjs +8 -10
  119. package/esm2020/lib/cube/matrix/popup.component.mjs +17 -20
  120. package/esm2020/lib/cube/matrix/table.component.mjs +7 -4
  121. package/esm2020/lib/cube/parallel/parallel.component.mjs +2 -2
  122. package/esm2020/lib/cube/pivot/pivot.component.mjs +2 -2
  123. package/esm2020/lib/cube/view.mobile.component.mjs +3 -3
  124. package/esm2020/lib/cube/view.pane.component.mjs +3 -3
  125. package/esm2020/lib/dashboard/cube/compare.widget.mjs +2 -2
  126. package/esm2020/lib/home/about/about.dialog.mjs +3 -3
  127. package/esm2020/lib/home/home.desktop.component.mjs +50 -24
  128. package/esm2020/lib/reports/report.mobile.component.mjs +11 -3
  129. package/esm2020/lib/reports/report.pane.component.mjs +2 -1
  130. package/esm2020/lib/shared.module.mjs +5 -4
  131. package/esm2020/lib/views/cube/explore.component.mjs +2 -2
  132. package/fesm2015/bizdoc-core.mjs +250 -119
  133. package/fesm2015/bizdoc-core.mjs.map +1 -1
  134. package/fesm2020/bizdoc-core.mjs +250 -119
  135. package/fesm2020/bizdoc-core.mjs.map +1 -1
  136. package/lib/compose/action/moveto-action.component.d.ts +36 -0
  137. package/lib/core/translate.service.d.ts +3 -0
  138. package/lib/core/translations.d.ts +15 -6
  139. package/lib/cube/cube.service.d.ts +1 -1
  140. package/lib/cube/grid/spreadsheet.component.d.ts +1 -0
  141. package/lib/cube/matrix/popup.component.d.ts +1 -3
  142. package/lib/dashboard/cube/compare.widget.d.ts +1 -1
  143. package/lib/home/home.desktop.component.d.ts +4 -1
  144. package/lib/reports/report.mobile.component.d.ts +3 -0
  145. package/lib/reports/report.pane.component.d.ts +1 -1
  146. package/lib/shared.module.d.ts +112 -111
  147. package/package.json +10 -10
@@ -12,29 +12,31 @@ import * as i3 from "../core/session.service";
12
12
  import * as i4 from "../core/popup/popup.service";
13
13
  import * as i5 from "../core/hub.service";
14
14
  import * as i6 from "../core/translate.service";
15
- import * as i7 from "@angular/material/snack-bar";
16
- import * as i8 from "@angular/material/button";
17
- import * as i9 from "@angular/material/icon";
18
- import * as i10 from "@angular/material/list";
19
- import * as i11 from "@angular/material/divider";
20
- import * as i12 from "../compose/new-menu.component";
21
- import * as i13 from "../browse/folders-menu.component";
22
- import * as i14 from "../admin/admin-menu.component";
23
- import * as i15 from "../reports/reports-menu.component";
24
- import * as i16 from "../cube/cube-menu.component";
25
- import * as i17 from "../core/slots/slots.component";
26
- import * as i18 from "@angular/flex-layout/flex";
27
- import * as i19 from "@angular/common";
28
- import * as i20 from "../core/popup/tooltip.directive";
29
- import * as i21 from "@angular/material/badge";
30
- import * as i22 from "../core/animated-icon/animated-icon.directive";
31
- import * as i23 from "../core/pipes/translate.pipe";
15
+ import * as i7 from "../core/prompt.service";
16
+ import * as i8 from "@angular/material/snack-bar";
17
+ import * as i9 from "@angular/material/button";
18
+ import * as i10 from "@angular/material/icon";
19
+ import * as i11 from "@angular/material/list";
20
+ import * as i12 from "@angular/material/divider";
21
+ import * as i13 from "../compose/new-menu.component";
22
+ import * as i14 from "../browse/folders-menu.component";
23
+ import * as i15 from "../admin/admin-menu.component";
24
+ import * as i16 from "../reports/reports-menu.component";
25
+ import * as i17 from "../cube/cube-menu.component";
26
+ import * as i18 from "../core/slots/slots.component";
27
+ import * as i19 from "@angular/flex-layout/flex";
28
+ import * as i20 from "@angular/common";
29
+ import * as i21 from "../core/popup/tooltip.directive";
30
+ import * as i22 from "@angular/material/badge";
31
+ import * as i23 from "../core/animated-icon/animated-icon.directive";
32
+ import * as i24 from "../core/pipes/translate.pipe";
32
33
  /** home comp */
33
34
  export class HomeComponent extends HomeBase {
34
- constructor(_router, _mailbox, injector, session, popup, messaging, translate, snackBar, config) {
35
+ constructor(_router, _mailbox, injector, session, popup, messaging, translate, _sb, snackBar, config) {
35
36
  super(popup, session, messaging, translate, snackBar, injector, config);
36
37
  this._router = _router;
37
38
  this._mailbox = _mailbox;
39
+ this._sb = _sb;
38
40
  this.sysAdmin = this._session.isSystem;
39
41
  this._submenuMode = localStorage.getItem('submenuMode') || 'full';
40
42
  this.forms = this._session.profile.forms.filter(f => f.creatable);
@@ -122,11 +124,35 @@ export class HomeComponent extends HomeBase {
122
124
  policy: OpenPolicy.Clear,
123
125
  state: { item: r }
124
126
  });
125
- }, () => {
126
- this._snackBar.open(this._translate.get('Err'), null, { duration: 4000 });
127
+ }, (e) => {
128
+ this._handleErr(e);
127
129
  this.creating = false;
128
130
  });
129
131
  }
132
+ _handleErr(response) {
133
+ if (response.constructor.name === 'PositionError')
134
+ switch (response.code) {
135
+ case 1:
136
+ this._sb.error('UserDeniedGeoErr');
137
+ break;
138
+ default:
139
+ this._sb.error('GeoErr');
140
+ }
141
+ else
142
+ switch (response.status) {
143
+ case 401:
144
+ this._sb.error('Unauthorized');
145
+ break;
146
+ case 406:
147
+ this._sb.errorString(response.error);
148
+ break;
149
+ case 426: // license
150
+ this._sb.error('LicenseErr');
151
+ break;
152
+ default:
153
+ this._sb.error();
154
+ }
155
+ }
130
156
  opensubmenu(menu) {
131
157
  if (this.submenu === menu)
132
158
  this.submenuMode = this.submenuMode === 'full' ? 'shrink' : 'full';
@@ -183,12 +209,12 @@ export class HomeComponent extends HomeBase {
183
209
  }
184
210
  }
185
211
  }
186
- HomeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: HomeComponent, deps: [{ token: i1.PanesRouter }, { token: i2.MailboxService }, { token: i0.Injector }, { token: i3.SessionService }, { token: i4.Popup }, { token: i5.HubService }, { token: i6.TranslateService }, { token: i7.MatSnackBar }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
187
- HomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: HomeComponent, selector: "bizdoc-home", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"submenu\" class=\"nav-menu row\">\r\n <!--[class.loading]=\"loading\"-->\r\n <div fxLayout=\"column\">\r\n <div>\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\" *ngIf=\"forms.length\">\r\n <button mat-raised-button class=\"compose\" [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\"\r\n (click)=\"opennew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n <mat-nav-list>\r\n <mat-list-item [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon>apps</mat-icon><span class=\"nav-label\">{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item (click)=\"mails()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"profile.inboxCount < 1\" matBadgeColor=\"accent\">inbox</mat-icon>\r\n <span class=\"nav-label\">{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item [attr.aria-label]=\"'Scheduler' | translate\" *ngIf=\"schedulerEnabled\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\">{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf='chatEnabled' data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon><span class=\"nav-label\">{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item *ngIf=\"enableAnalysis && profile.cubes.length\"\r\n (click)=\"opensubmenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListIcon>equalizer</mat-icon><span class=\"nav-label\">{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"profile.reports.length\"\r\n (click)=\"opensubmenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListIcon>list_alt</mat-icon><span class=\"nav-label\">{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n <ng-container *ngIf=\"sysAdmin\">\r\n <mat-divider></mat-divider>\r\n <mat-list-item (click)=\"opensubmenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'System'|translate\" bizdocTooltipPosition=\"end\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListIcon>device_hub</mat-icon>\r\n <span class=\"nav-label\">{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n </ng-container>\r\n </mat-nav-list>\r\n </div>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <!--@animate-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"sign-in\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"end\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"submenu\" class=\"sub-menu\" (mouseleave)=\"collapsesubmenu()\" [@submenu]=\"submenuMode\" (@submenu.done)=\"resize()\">\r\n <div class=\"action\" *ngIf=\"submenu !== 'new'\">\r\n <button mat-icon-button (click)=\"togglePinned()\"><mat-icon class=\"mat-icon-rtl-mirror\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\" [inline]=\"true\">{{pinned ? 'keyboard_double_arrow_left' : 'keyboard_double_arrow_right'}}</mat-icon></button>\r\n </div>\r\n <ng-container [ngSwitch]=\"submenu\">\r\n <bizdoc-new-menu *ngSwitchCase=\"'new'\" (change)=\"closesubmenu()\"></bizdoc-new-menu>\r\n <bizdoc-folders-menu *ngSwitchCase=\"'mailbox'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-folders-menu>\r\n <bizdoc-admin-menu *ngSwitchCase=\"'admin'\" [collapsed]=\"submenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n <bizdoc-reports-menu *ngSwitchCase=\"'reports'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-reports-menu>\r\n <bizdoc-cube-menu *ngSwitchCase=\"'cube'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-cube-menu>\r\n </ng-container>\r\n </div>\r\n</div>\r\n<bizdoc-panes></bizdoc-panes>\r\n", styles: [":host{display:flex;position:absolute;height:100%;width:100%}.nav-menu{height:100%;z-index:1}.nav-menu .sub-menu{min-width:200px;display:block;z-index:1;overflow-x:hidden}.nav-menu .sub-menu .action{display:flex;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0}.nav-menu .new-container button{min-width:35px;padding:0 10px;height:40px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;flex-direction:row;overflow:hidden;margin-bottom:5px}\n"], components: [{ type: i8.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i9.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i10.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i10.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i11.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i12.ComposeMenuComponent, selector: "bizdoc-new-menu", outputs: ["change"] }, { type: i13.FoldersMenuComponent, selector: "bizdoc-folders-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i14.AdminMenuComponent, selector: "bizdoc-admin-menu", inputs: ["collapsed"] }, { type: i15.ReportsMenuComponent, selector: "bizdoc-reports-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i16.CubeMenuComponent, selector: "bizdoc-cube-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i17.SlotsComponent, selector: "bizdoc-panes" }], directives: [{ type: i18.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i19.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i20.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i10.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i21.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i22.MatIconAnimate, selector: "[matAnimate]" }, { type: i19.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i19.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "translate": i23.TranslatePipe }, animations: [submenuAnimation] });
212
+ HomeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: HomeComponent, deps: [{ token: i1.PanesRouter }, { token: i2.MailboxService }, { token: i0.Injector }, { token: i3.SessionService }, { token: i4.Popup }, { token: i5.HubService }, { token: i6.TranslateService }, { token: i7.PromptService }, { token: i8.MatSnackBar }, { token: BIZDOC_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
213
+ HomeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: HomeComponent, selector: "bizdoc-home", host: { listeners: { "document:keydown": "handleKeyboardEvent($event)" } }, viewQueries: [{ propertyName: "drawer", first: true, predicate: MatSidenav, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"submenu\" class=\"nav-menu row\">\r\n <!--[class.loading]=\"loading\"-->\r\n <div fxLayout=\"column\">\r\n <div>\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\" *ngIf=\"forms.length\">\r\n <button mat-raised-button class=\"compose\" [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\"\r\n (click)=\"opennew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n <mat-nav-list>\r\n <mat-list-item [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon>apps</mat-icon><span class=\"nav-label\">{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item (click)=\"mails()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"profile.inboxCount < 1\" matBadgeColor=\"accent\">inbox</mat-icon>\r\n <span class=\"nav-label\">{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item [attr.aria-label]=\"'Scheduler' | translate\" *ngIf=\"schedulerEnabled\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\">{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf='chatEnabled' data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon><span class=\"nav-label\">{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item *ngIf=\"enableAnalysis && profile.cubes.length\"\r\n (click)=\"opensubmenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListIcon>equalizer</mat-icon><span class=\"nav-label\">{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"profile.reports.length\"\r\n (click)=\"opensubmenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListIcon>list_alt</mat-icon><span class=\"nav-label\">{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n <ng-container *ngIf=\"sysAdmin\">\r\n <mat-divider></mat-divider>\r\n <mat-list-item (click)=\"opensubmenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'System'|translate\" bizdocTooltipPosition=\"end\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListIcon>device_hub</mat-icon>\r\n <span class=\"nav-label\">{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n </ng-container>\r\n </mat-nav-list>\r\n </div>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <!--@animate-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"sign-in\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"end\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"submenu\" class=\"sub-menu\" (mouseleave)=\"collapsesubmenu()\" [@submenu]=\"submenuMode\" (@submenu.done)=\"resize()\">\r\n <div class=\"action\" *ngIf=\"submenu !== 'new'\">\r\n <button mat-icon-button (click)=\"togglePinned()\"><mat-icon class=\"mat-icon-rtl-mirror\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\" [inline]=\"true\">{{pinned ? 'keyboard_double_arrow_left' : 'keyboard_double_arrow_right'}}</mat-icon></button>\r\n </div>\r\n <ng-container [ngSwitch]=\"submenu\">\r\n <bizdoc-new-menu *ngSwitchCase=\"'new'\" (change)=\"closesubmenu()\"></bizdoc-new-menu>\r\n <bizdoc-folders-menu *ngSwitchCase=\"'mailbox'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-folders-menu>\r\n <bizdoc-admin-menu *ngSwitchCase=\"'admin'\" [collapsed]=\"submenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n <bizdoc-reports-menu *ngSwitchCase=\"'reports'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-reports-menu>\r\n <bizdoc-cube-menu *ngSwitchCase=\"'cube'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-cube-menu>\r\n </ng-container>\r\n </div>\r\n</div>\r\n<bizdoc-panes></bizdoc-panes>\r\n", styles: [":host{display:flex;position:absolute;height:100%;width:100%}.nav-menu{height:100%;z-index:1}.nav-menu .sub-menu{min-width:200px;display:block;z-index:1;overflow-x:hidden}.nav-menu .sub-menu .action{display:flex;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0}.nav-menu .new-container button{min-width:35px;padding:0 10px;height:40px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;flex-direction:row;overflow:hidden;margin-bottom:5px}\n"], components: [{ type: i9.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i10.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i11.MatNavList, selector: "mat-nav-list", inputs: ["disableRipple", "disabled"], exportAs: ["matNavList"] }, { type: i11.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { type: i12.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: i13.ComposeMenuComponent, selector: "bizdoc-new-menu", outputs: ["change"] }, { type: i14.FoldersMenuComponent, selector: "bizdoc-folders-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i15.AdminMenuComponent, selector: "bizdoc-admin-menu", inputs: ["collapsed"] }, { type: i16.ReportsMenuComponent, selector: "bizdoc-reports-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i17.CubeMenuComponent, selector: "bizdoc-cube-menu", inputs: ["collapsed"], outputs: ["change"] }, { type: i18.SlotsComponent, selector: "bizdoc-panes" }], directives: [{ type: i19.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { type: i20.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i21.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i11.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i22.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i23.MatIconAnimate, selector: "[matAnimate]" }, { type: i20.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i20.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }], pipes: { "translate": i24.TranslatePipe }, animations: [submenuAnimation] });
188
214
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: HomeComponent, decorators: [{
189
215
  type: Component,
190
216
  args: [{ selector: 'bizdoc-home', animations: [submenuAnimation], template: "<div [class.nav-collapsed]=\"collapsed\" [class.nav-open]=\"submenu\" class=\"nav-menu row\">\r\n <!--[class.loading]=\"loading\"-->\r\n <div fxLayout=\"column\">\r\n <div>\r\n <div [class.active]=\"activeMenu === 'new'\" class=\"new-container\" *ngIf=\"forms.length\">\r\n <button mat-raised-button class=\"compose\" [bizdocTooltip]=\"'Compose'|translate\" bizdocTooltipPosition=\"end\"\r\n (click)=\"opennew()\" [disabled]=\"creating\"\r\n [attr.aria-label]=\"'Compose'| translate\" color=\"primary\" data-help=\"compose\">\r\n <mat-icon>add</mat-icon>\r\n <span class=\"nav-label\">{{'Compose'| translate}}</span>\r\n </button>\r\n </div>\r\n <mat-nav-list>\r\n <mat-list-item [attr.aria-label]=\"'Dashboard' | translate\"\r\n (click)=\"nav('dashboard')\" [class.active]=\"activeMenu === 'dashboard'\"\r\n data-help=\"dashboard\"\r\n [bizdocTooltip]=\"'Dashboard'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon>apps</mat-icon><span class=\"nav-label\">{{'Dashboard' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item (click)=\"mails()\" [bizdocTooltip]=\"'Mailbox'|translate\" bizdocTooltipPosition=\"end\"\r\n [class.active]=\"activeMenu === 'mailbox'\"\r\n [attr.aria-label]=\"'Mailbox' | translate\" data-help=\"folders\">\r\n <mat-icon matListIcon [matBadge]=\"profile.inboxCount\" [matBadgeHidden]=\"profile.inboxCount < 1\" matBadgeColor=\"accent\">inbox</mat-icon>\r\n <span class=\"nav-label\">{{'Mailbox' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item [attr.aria-label]=\"'Scheduler' | translate\" *ngIf=\"schedulerEnabled\"\r\n (click)=\"nav('schedule')\" [class.active]=\"activeMenu === 'schedule'\"\r\n [bizdocTooltip]=\"'Scheduler'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon class=\"mat-icon-rtl-mirror\">date_range</mat-icon><span class=\"nav-label\">{{ 'Scheduler' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf='chatEnabled' data-help=\"chat\" [attr.aria-label]=\"'Chat' | translate\"\r\n (click)=\"nav('contacts')\" [class.active]=\"activeMenu === 'contacts'\"\r\n [bizdocTooltip]=\"'Chat'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon matListIcon [matBadge]=\"profile.conversationsCount\" [matBadgeHidden]=\"!profile.conversationsCount\" matBadgeColor=\"accent\">chat</mat-icon><span class=\"nav-label\">{{ 'Chat' | translate}}</span>\r\n </mat-list-item>\r\n <mat-divider></mat-divider>\r\n <mat-list-item *ngIf=\"enableAnalysis && profile.cubes.length\"\r\n (click)=\"opensubmenu('cube')\"\r\n [class.active]=\"activeMenu === 'cube'\"\r\n [bizdocTooltip]=\"'Cube'|translate\" bizdocTooltipPosition=\"end\" data-help=\"cube\" [attr.aria-label]=\"'Cube' | translate\">\r\n <mat-icon matListIcon>equalizer</mat-icon><span class=\"nav-label\">{{'Cube' | translate}}</span>\r\n </mat-list-item>\r\n <mat-list-item *ngIf=\"profile.reports.length\"\r\n (click)=\"opensubmenu('reports')\"\r\n [class.active]=\"activeMenu === 'reports'\"\r\n [bizdocTooltip]=\"'Reports'|translate\" bizdocTooltipPosition=\"end\" data-help=\"reports\" [attr.aria-label]=\"'Reports' | translate\">\r\n <mat-icon matListIcon>list_alt</mat-icon><span class=\"nav-label\">{{'Reports' | translate}}</span>\r\n </mat-list-item>\r\n <ng-container *ngIf=\"sysAdmin\">\r\n <mat-divider></mat-divider>\r\n <mat-list-item (click)=\"opensubmenu('admin')\"\r\n [class.active]=\"activeMenu === 'admin'\"\r\n [bizdocTooltip]=\"'System'|translate\" bizdocTooltipPosition=\"end\" [attr.aria-label]=\"'System' | translate\">\r\n <mat-icon matListIcon>device_hub</mat-icon>\r\n <span class=\"nav-label\">{{'Workflow' | translate}}</span>\r\n </mat-list-item>\r\n </ng-container>\r\n </mat-nav-list>\r\n </div>\r\n <span class=\"divider\"></span>\r\n <!--<lottie name=\"lf30_editor_qr7zgmcs\" *ngIf=\"loading\"></lottie>-->\r\n <!--@animate-->\r\n <div class=\"sign-in\">\r\n <button mat-icon-button data-help=\"sign-in\" [bizdocTooltip]=\"'Settings' | translate\" bizdocTooltipPosition=\"end\"\r\n [attr.aria-label]=\"'Settings' | translate\" (click)=\"options($event)\">\r\n <mat-icon matAnimate=\"rotate\">settingson</mat-icon>\r\n </button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button [attr.aria-label]=\"'Power' | translate\" (click)=\"signout($event)\" [bizdocTooltip]=\"'Exit'|translate\" bizdocTooltipPosition=\"end\">\r\n <mat-icon class=\"mat-icon-rtl-mirror\">logout</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div *ngIf=\"submenu\" class=\"sub-menu\" (mouseleave)=\"collapsesubmenu()\" [@submenu]=\"submenuMode\" (@submenu.done)=\"resize()\">\r\n <div class=\"action\" *ngIf=\"submenu !== 'new'\">\r\n <button mat-icon-button (click)=\"togglePinned()\"><mat-icon class=\"mat-icon-rtl-mirror\" [bizdocTooltip]=\"(pinned?'Collapse':'Expand')|translate\" [inline]=\"true\">{{pinned ? 'keyboard_double_arrow_left' : 'keyboard_double_arrow_right'}}</mat-icon></button>\r\n </div>\r\n <ng-container [ngSwitch]=\"submenu\">\r\n <bizdoc-new-menu *ngSwitchCase=\"'new'\" (change)=\"closesubmenu()\"></bizdoc-new-menu>\r\n <bizdoc-folders-menu *ngSwitchCase=\"'mailbox'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-folders-menu>\r\n <bizdoc-admin-menu *ngSwitchCase=\"'admin'\" [collapsed]=\"submenuMode === 'shrink'\"></bizdoc-admin-menu>\r\n <bizdoc-reports-menu *ngSwitchCase=\"'reports'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-reports-menu>\r\n <bizdoc-cube-menu *ngSwitchCase=\"'cube'\" [collapsed]=\"submenuMode === 'shrink'\" (change)=\"collapsesubmenu()\"></bizdoc-cube-menu>\r\n </ng-container>\r\n </div>\r\n</div>\r\n<bizdoc-panes></bizdoc-panes>\r\n", styles: [":host{display:flex;position:absolute;height:100%;width:100%}.nav-menu{height:100%;z-index:1}.nav-menu .sub-menu{min-width:200px;display:block;z-index:1;overflow-x:hidden}.nav-menu .sub-menu .action{display:flex;flex-direction:row-reverse}.nav-menu .new-container{margin:8px 8px 0}.nav-menu .new-container button{min-width:35px;padding:0 10px;height:40px}.nav-menu .nav-icon{display:none}.nav-menu.nav-collapsed .nav-icon{display:unset}.nav-menu.nav-collapsed .nav-label{display:none}.nav-menu.nav-collapsed .sign-in{flex-direction:column;align-items:center}.nav-menu .sign-in{display:flex;flex-direction:row;overflow:hidden;margin-bottom:5px}\n"] }]
191
- }], ctorParameters: function () { return [{ type: i1.PanesRouter }, { type: i2.MailboxService }, { type: i0.Injector }, { type: i3.SessionService }, { type: i4.Popup }, { type: i5.HubService }, { type: i6.TranslateService }, { type: i7.MatSnackBar }, { type: undefined, decorators: [{
217
+ }], ctorParameters: function () { return [{ type: i1.PanesRouter }, { type: i2.MailboxService }, { type: i0.Injector }, { type: i3.SessionService }, { type: i4.Popup }, { type: i5.HubService }, { type: i6.TranslateService }, { type: i7.PromptService }, { type: i8.MatSnackBar }, { type: undefined, decorators: [{
192
218
  type: Inject,
193
219
  args: [BIZDOC_CONFIG]
194
220
  }] }]; }, propDecorators: { drawer: [{
@@ -198,4 +224,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
198
224
  type: HostListener,
199
225
  args: ['document:keydown', ['$event']]
200
226
  }] } });
201
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5kZXNrdG9wLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvaG9tZS9ob21lLmRlc2t0b3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9ob21lL2hvbWUuZGVza3RvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBT3RELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQXNCLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRzdFLGdCQUFnQjtBQU9oQixNQUFNLE9BQU8sYUFBYyxTQUFRLFFBQVE7SUFvRHpDLFlBQ1UsT0FBb0IsRUFDcEIsUUFBd0IsRUFDaEMsUUFBa0IsRUFDbEIsT0FBdUIsRUFDdkIsS0FBWSxFQUNaLFNBQXFCLEVBQ3JCLFNBQTJCLEVBQzNCLFFBQXFCLEVBQ0UsTUFBb0I7UUFDM0MsS0FBSyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBVGhFLFlBQU8sR0FBUCxPQUFPLENBQWE7UUFDcEIsYUFBUSxHQUFSLFFBQVEs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QUksQ0FBQyxTQUFTO2dCQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztpQkFDbkI7Z0JBQ0gsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFO29CQUN4QixJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztvQkFDN0IsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUM7aUJBQ3pCOztvQkFFQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQzthQUMxQjtTQUNGO0lBQ0gsQ0FBQzs7MEdBbktVLGFBQWEsMk9BNkRkLGFBQWE7OEZBN0RaLGFBQWEsdUtBbURiLFVBQVUscUZDMUV2Qixrek1BdUZBLGcxR0RsRWMsQ0FBQyxnQkFBZ0IsQ0FBQzsyRkFFbkIsYUFBYTtrQkFOekIsU0FBUzsrQkFDRSxhQUFhLGNBR1gsQ0FBQyxnQkFBZ0IsQ0FBQzs7MEJBK0QzQixNQUFNOzJCQUFDLGFBQWE7NENBVmtCLE1BQU07c0JBQTlDLFNBQVM7dUJBQUMsVUFBVSxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFrRnZDLG1CQUFtQjtzQkFEbEIsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgVmlld0NoaWxkLCBJbmplY3QsIEhvc3RMaXN0ZW5lciwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTWF0U2lkZW5hdiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xyXG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XHJcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBCaXpEb2NDb25maWcsIEJJWkRPQ19DT05GSUcsIE9wZW5Qb2xpY3kgfSBmcm9tICcuLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgeyBzdWJtZW51QW5pbWF0aW9uIH0gZnJvbSAnLi4vY29yZS9hbmltYXRpb25zJztcclxuaW1wb3J0IHsgRm9ybSwgUmVjaXBpZW50TW9kZWwgfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQYW5lc1JvdXRlciB9IGZyb20gJy4uL2NvcmUvc2xvdHMvcm91dGVyLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gJy4uL2NvcmUvcG9wdXAvcG9wdXAuc2VydmljZSc7XHJcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3RyYW5zbGF0ZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHViU2VydmljZSB9IGZyb20gJy4uL2NvcmUvaHViLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBIb21lQmFzZSB9IGZyb20gJy4vaG9tZS1iYXNlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdmlnYXRpb25QYW5lQmFzZSwgTmF2aWdhdGlvblN0YXJ0IH0gZnJvbSAnLi4vY29yZS9zbG90cy9wYW5lLXJlZic7XHJcbmltcG9ydCB7IE1haWxib3hTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9tYWlsYm94LnNlcnZpY2UnO1xyXG5cclxuLyoqIGhvbWUgY29tcCAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1ob21lJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vaG9tZS5kZXNrdG9wLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ob21lLmRlc2t0b3AuY29tcG9uZW50LnNjc3MnXSxcclxuICBhbmltYXRpb25zOiBbc3VibWVudUFuaW1hdGlvbl1cclxufSlcclxuZXhwb3J0IGNsYXNzIEhvbWVDb21wb25lbnQgZXh0ZW5kcyBIb21lQmFzZSB7XHJcbiAgcmVhZG9ubHkgc3lzQWRtaW4gPSB0aGlzLl9zZXNzaW9uLmlzU3lzdGVtO1xyXG4gIHByaXZhdGUgX3N1Ym1lbnVNb2RlOiAnZnVsbCcgfCAnc2hyaW5rJyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdWJtZW51TW9kZScpIGFzIGFueSB8fCAnZnVsbCc7XHJcbiAgcmVhZG9ubHkgZm9ybXMgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUuZm9ybXMuZmlsdGVyKGYgPT4gZi5jcmVhdGFibGUpO1xyXG4gICAgY3JlYXRpbmc6IGJvb2xlYW47XHJcbiAgcHVibGljIGdldCBzdWJtZW51TW9kZSgpOiAnZnVsbCcgfCAnc2hyaW5rJyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3VibWVudU1vZGU7XHJcbiAgfVxyXG4gIHB1YmxpYyBzZXQgc3VibWVudU1vZGUodmFsdWU6ICdmdWxsJyB8ICdzaHJpbmsnKSB7XHJcbiAgICB0aGlzLl9zdWJtZW51TW9kZSA9IHZhbHVlO1xyXG4gICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3N1Ym1lbnVNb2RlJywgdmFsdWUpXHJcbiAgfVxyXG4gIHByaXZhdGUgX3N1Ym1lbnU6IHN0cmluZyA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKCdzdWJtZW51Jyk7XHJcbiAgcHJpdmF0ZSBfcGF0aDogc3RyaW5nO1xyXG4gIGdldCBhY3RpdmVNZW51KCkge1xyXG4gICAgcmV0dXJuIHRoaXMuX3N1Ym1lbnUgfHwgdGhpcy5fcGF0aDtcclxuICB9XHJcbiAgcHVibGljIGdldCBzdWJtZW51KCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3VibWVudTtcclxuICB9XHJcbiAgcHVibGljIHNldCBzdWJtZW51KHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX3N1Ym1lbnUgPSB2YWx1ZTtcclxuICAgIGlmICh2YWx1ZSkgbG9jYWxTdG9yYWdlLnNldEl0ZW0oJ3N1Ym1lbnUnLCB2YWx1ZSk7XHJcbiAgICBlbHNlIGxvY2FsU3RvcmFnZS5yZW1vdmVJdGVtKCdzdWJtZW51Jyk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2lzKG5hbWUsIHZhbD86IGJvb2xlYW4pIHtcclxuICAgIGlmICh2YWwgPT09IHVuZGVmaW5lZClcclxuICAgICAgcmV0dXJuIGxvY2FsU3RvcmFnZS5nZXRJdGVtKG5hbWUpID09PSAnMSc7XHJcbiAgICBlbHNlXHJcbiAgICAgIGxvY2FsU3RvcmFnZS5zZXRJdGVtKG5hbWUsIHZhbCA/ICcxJyA6ICcwJyk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2lzT3JEZWZhdWx0KG5hbWUsICRkZWZhdWx0KSB7XHJcbiAgICBjb25zdCB2YWwgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbShuYW1lKTtcclxuICAgIHJldHVybiB2YWwgPyB2YWwgPT09ICcxJyA6ICRkZWZhdWx0O1xyXG4gIH1cclxuICBwcml2YXRlIF9jb2xsYXBzZWQgPSB0aGlzLl9pc09yRGVmYXVsdCgnY29sbGFwc2VkJywgdHJ1ZSk7XHJcbiAgcHVibGljIGdldCBjb2xsYXBzZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fY29sbGFwc2VkO1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IGNvbGxhcHNlZCh2YWx1ZSkge1xyXG4gICAgdGhpcy5fY29sbGFwc2VkID0gdmFsdWU7XHJcbiAgICB0aGlzLl9pcygnY29sbGFwc2VkJywgdGhpcy5jb2xsYXBzZWQpO1xyXG4gIH1cclxuICBwcml2YXRlIF9waW5uZWQgPSB0aGlzLl9pc09yRGVmYXVsdCgncGlubmVkJywgdHJ1ZSk7XHJcbiAgcHVibGljIGdldCBwaW5uZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fcGlubmVkO1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IHBpbm5lZCh2YWx1ZSkge1xyXG4gICAgdGhpcy5fcGlubmVkID0gdmFsdWU7XHJcbiAgICB0aGlzLl9pcygncGlubmVkJywgdmFsdWUpXHJcbiAgfVxyXG4gIEBWaWV3Q2hpbGQoTWF0U2lkZW5hdiwgeyBzdGF0aWM6IHRydWUgfSkgZHJhd2VyOiBNYXRTaWRlbmF2O1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfcm91dGVyOiBQYW5lc1JvdXRlcixcclxuICAgIHByaXZhdGUgX21haWxib3g6IE1haWxib3hTZXJ2aWNlLFxyXG4gICAgaW5qZWN0b3I6IEluamVjdG9yLFxyXG4gICAgc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwb3B1cDogUG9wdXAsXHJcbiAgICBtZXNzYWdpbmc6IEh1YlNlcnZpY2UsXHJcbiAgICB0cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UsXHJcbiAgICBzbmFja0JhcjogTWF0U25hY2tCYXIsXHJcbiAgICBASW5qZWN0KEJJWkRPQ19DT05GSUcpIGNvbmZpZzogQml6RG9jQ29uZmlnKSB7XHJcbiAgICBzdXBlcihwb3B1cCwgc2Vzc2lvbiwgbWVzc2FnaW5nLCB0cmFuc2xhdGUsIHNuYWNrQmFyLCBpbmplY3RvciwgY29uZmlnKTtcclxuICAgIF9yb3V0ZXIuZXZlbnRzLnBpcGUoZmlsdGVyKGUgPT4gZSBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydCAmJiBlLnBhbmUucGF0aCAmJiBlLnBhbmUubW9kZSA9PT0gJ3BhbmUnKSkuXHJcbiAgICAgIHN1YnNjcmliZSgoZTogTmF2aWdhdGlvblBhbmVCYXNlKSA9PlxyXG4gICAgICAgIHRoaXMuX3BhdGggPSBlLnBhbmUucGF0aC5zcGxpdCgnLycpWzBdXHJcbiAgICAgICk7XHJcbiAgfVxyXG4gIG5hdihwYXRoKSB7XHJcbiAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoW3BhdGhdKTtcclxuICAgIHRoaXMuc3VibWVudSA9IG51bGw7XHJcbiAgICB0aGlzLmNvbGxhcHNlc3VibWVudSgpO1xyXG4gIH1cclxuICBvbk5ld01lc3NhZ2UobW9kZWw6IFJlY2lwaWVudE1vZGVsKSB7XHJcbiAgICB0aGlzLl9yb3V0ZXIubmF2aWdhdGUoWydtYWlsYm94L2knLCBtb2RlbC5pZC5lbmNvZGVJZCgpXSxcclxuICAgICAge1xyXG4gICAgICAgIHN0YXRlOiB7IGl0ZW06IG1vZGVsIH0sXHJcbiAgICAgICAgcG9saWN5OiBPcGVuUG9saWN5LkNsZWFyXHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBjbG9zZXN1Ym1lbnUoKSB7XHJcbiAgICB0aGlzLnN1Ym1lbnUgPSBudWxsO1xyXG4gIH1cclxuICBvcGVubmV3KCkge1xyXG4gICAgaWYgKHRoaXMuZm9ybXMubGVuZ3RoID4gMSkge1xyXG4gICAgICBpZiAodGhpcy5zdWJtZW51ID09PSAnbmV3JylcclxuICAgICAgICB0aGlzLmNsb3Nlc3VibWVudSgpO1xyXG4gICAgICBlbHNlXHJcbiAgICAgICAgdGhpcy5vcGVuc3VibWVudSgnbmV3Jyk7XHJcbiAgICB9XHJcbiAgICBlbHNlIHRoaXMuX2NyZWF0ZSgpO1xyXG4gIH1cclxuICBwcml2YXRlIF9jcmVhdGUoKSB7XHJcbiAgICB0aGlzLmNyZWF0aW5nID0gdHJ1ZTtcclxuICAgIHRoaXMuX21haWxib3guY3JlYXRlKHRoaXMuZm9ybXNbMF0ubmFtZSkuXHJcbiAgICAgIHN1YnNjcmliZShyID0+IHtcclxuICAgICAgICB0aGlzLmNyZWF0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFsnbWFpbGJveC9pJywgci5pZC5lbmNvZGVJZCgpXSxcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgcG9saWN5OiBPcGVuUG9saWN5LkNsZWFyLFxyXG4gICAgICAgICAgICBzdGF0ZTogeyBpdGVtOiByIH1cclxuICAgICAgICAgIH0pO1xyXG4gICAgICB9LCAoKSA9PiB7XHJcbiAgICAgICAgdGhpcy5fc25hY2tCYXIub3Blbih0aGlzLl90cmFuc2xhdGUuZ2V0KCdFcnInKSwgbnVsbCwgeyBkdXJhdGlvbjogNDAwMCB9KTtcclxuICAgICAgICB0aGlzLmNyZWF0aW5nID0gZmFsc2U7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgb3BlbnN1Ym1lbnUobWVudTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5zdWJtZW51ID09PSBtZW51KVxyXG4gICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gdGhpcy5zdWJtZW51TW9kZSA9PT0gJ2Z1bGwnID8gJ3NocmluaycgOiAnZnVsbCc7XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zdWJtZW51ID0gbWVudTtcclxuICAgICAgdGhpcy5zdWJtZW51TW9kZSA9ICdmdWxsJztcclxuICAgIH1cclxuICB9XHJcbiAgY29sbGFwc2VzdWJtZW51KCkge1xyXG4gICAgaWYgKCF0aGlzLnBpbm5lZCAmJiB0aGlzLnN1Ym1lbnUgIT09ICduZXcnKSB0aGlzLnN1Ym1lbnVNb2RlID0gJ3Nocmluayc7XHJcbiAgfVxyXG4gIHRvZ2dsZVBpbm5lZCgpIHtcclxuICAgIHRoaXMucGlubmVkID0gIXRoaXMucGlubmVkO1xyXG4gICAgdGhpcy5zdWJtZW51TW9kZSA9IHRoaXMucGlubmVkID8gJ2Z1bGwnIDogJ3Nocmluayc7XHJcbiAgfVxyXG4gIG1haWxzKCkge1xyXG4gICAgc3VwZXIubWFpbHMoKTtcclxuICAgIHRoaXMub3BlbnN1Ym1lbnUoJ21haWxib3gnKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY29sbGFwc2VUb2dnbGUgPSBmYWxzZTtcclxuICAvKipcclxuICAgKiBBbHQgKyBuL04sIEN0cmwgKyAuXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlS2V5Ym9hcmRFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmFsdEtleSAmJiAoZXZlbnQud2hpY2ggPT09IDExMCB8fCBldmVudC53aGljaCA9PT0gNzgpKSB7XHJcbiAgICAgIGlmICh0aGlzLnN1Ym1lbnUgPT09ICduZXcnKVxyXG4gICAgICAgIHRoaXMuc3VibWVudSA9IG51bGw7XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm1zLmxlbmd0aCA9PT0gMSlcclxuICAgICAgICAgIHRoaXMuX2NyZWF0ZSgpO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zdWJtZW51ID0gJ25ldyc7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gJ2Z1bGwnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZXZlbnQuY3RybEtleSAmJiBldmVudC53aGljaCA9PT0gMTkwKSB7XHJcbiAgICAgIGlmICh0aGlzLnN1Ym1lbnUpIHtcclxuICAgICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gdGhpcy5zdWJtZW51TW9kZSA9PT0gJ3NocmluaycgPyAnZnVsbCcgOiAnc2hyaW5rJztcclxuICAgICAgICB0aGlzLl9jb2xsYXBzZVRvZ2dsZSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoIXRoaXMuY29sbGFwc2VkKVxyXG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gdHJ1ZTtcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2NvbGxhcHNlVG9nZ2xlKSB7XHJcbiAgICAgICAgICB0aGlzLl9jb2xsYXBzZVRvZ2dsZSA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5zdWJtZW51TW9kZSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgIHRoaXMuY29sbGFwc2VkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBbY2xhc3MubmF2LWNvbGxhcHNlZF09XCJjb2xsYXBzZWRcIiBbY2xhc3MubmF2LW9wZW5dPVwic3VibWVudVwiIGNsYXNzPVwibmF2LW1lbnUgcm93XCI+XHJcbiAgPCEtLVtjbGFzcy5sb2FkaW5nXT1cImxvYWRpbmdcIi0tPlxyXG4gIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxkaXYgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVNZW51ID09PSAnbmV3J1wiIGNsYXNzPVwibmV3LWNvbnRhaW5lclwiICpuZ0lmPVwiZm9ybXMubGVuZ3RoXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjbGFzcz1cImNvbXBvc2VcIiBbYml6ZG9jVG9vbHRpcF09XCInQ29tcG9zZSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVubmV3KClcIiBbZGlzYWJsZWRdPVwiY3JlYXRpbmdcIlxyXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQ29tcG9zZSd8IHRyYW5zbGF0ZVwiIGNvbG9yPVwicHJpbWFyeVwiIGRhdGEtaGVscD1cImNvbXBvc2VcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eydDb21wb3NlJ3wgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8bWF0LW5hdi1saXN0PlxyXG4gICAgICAgIDxtYXQtbGlzdC1pdGVtIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0Rhc2hib2FyZCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJuYXYoJ2Rhc2hib2FyZCcpXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVNZW51ID09PSAnZGFzaGJvYXJkJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWxwPVwiZGFzaGJvYXJkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInRGFzaGJvYXJkJ3x0cmFuc2xhdGVcIiBiaXpkb2NUb29sdGlwUG9zaXRpb249XCJlbmRcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiBtYXRMaXN0SWNvbj5hcHBzPC9tYXQtaWNvbj48c3BhbiBjbGFzcz1cIm5hdi1sYWJlbFwiPnt7J0Rhc2hib2FyZCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gKGNsaWNrKT1cIm1haWxzKClcIiBbYml6ZG9jVG9vbHRpcF09XCInTWFpbGJveCd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZU1lbnUgPT09ICdtYWlsYm94J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInTWFpbGJveCcgfCB0cmFuc2xhdGVcIiBkYXRhLWhlbHA9XCJmb2xkZXJzXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24gW21hdEJhZGdlXT1cInByb2ZpbGUuaW5ib3hDb3VudFwiIFttYXRCYWRnZUhpZGRlbl09XCJwcm9maWxlLmluYm94Q291bnQgPCAxXCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiPmluYm94PC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snTWFpbGJveCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gW2F0dHIuYXJpYS1sYWJlbF09XCInU2NoZWR1bGVyJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwic2NoZWR1bGVyRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdignc2NoZWR1bGUnKVwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ3NjaGVkdWxlJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ1NjaGVkdWxlcid8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+ZGF0ZV9yYW5nZTwvbWF0LWljb24+PHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eyAnU2NoZWR1bGVyJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cclxuICAgICAgICA8bWF0LWxpc3QtaXRlbSAqbmdJZj0nY2hhdEVuYWJsZWQnIGRhdGEtaGVscD1cImNoYXRcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidDaGF0JyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdignY29udGFjdHMnKVwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ2NvbnRhY3RzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ0NoYXQnfHRyYW5zbGF0ZVwiIGJpemRvY1Rvb2x0aXBQb3NpdGlvbj1cImVuZFwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIG1hdExpc3RJY29uIFttYXRCYWRnZV09XCJwcm9maWxlLmNvbnZlcnNhdGlvbnNDb3VudFwiIFttYXRCYWRnZUhpZGRlbl09XCIhcHJvZmlsZS5jb252ZXJzYXRpb25zQ291bnRcIiBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCI+Y2hhdDwvbWF0LWljb24+PHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eyAnQ2hhdCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gKm5nSWY9XCJlbmFibGVBbmFseXNpcyAmJiBwcm9maWxlLmN1YmVzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5zdWJtZW51KCdjdWJlJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ2N1YmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInQ3ViZSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgZGF0YS1oZWxwPVwiY3ViZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0N1YmUnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+ZXF1YWxpemVyPC9tYXQtaWNvbj48c3BhbiBjbGFzcz1cIm5hdi1sYWJlbFwiPnt7J0N1YmUnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxyXG4gICAgICAgIDxtYXQtbGlzdC1pdGVtICpuZ0lmPVwicHJvZmlsZS5yZXBvcnRzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5zdWJtZW51KCdyZXBvcnRzJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ3JlcG9ydHMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInUmVwb3J0cyd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgZGF0YS1oZWxwPVwicmVwb3J0c1wiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1JlcG9ydHMnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+bGlzdF9hbHQ8L21hdC1pY29uPjxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snUmVwb3J0cycgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN5c0FkbWluXCI+XHJcbiAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxtYXQtbGlzdC1pdGVtIChjbGljayk9XCJvcGVuc3VibWVudSgnYWRtaW4nKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZU1lbnUgPT09ICdhZG1pbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ1N5c3RlbSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInU3lzdGVtJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+ZGV2aWNlX2h1YjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snV29ya2Zsb3cnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbWF0LW5hdi1saXN0PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8IS0tPGxvdHRpZSBuYW1lPVwibGYzMF9lZGl0b3JfcXI3emdtY3NcIiAqbmdJZj1cImxvYWRpbmdcIj48L2xvdHRpZT4tLT5cclxuICAgIDwhLS1AYW5pbWF0ZS0tPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpZ24taW5cIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gZGF0YS1oZWxwPVwic2lnbi1pblwiIFtiaXpkb2NUb29sdGlwXT1cIidTZXR0aW5ncycgfCB0cmFuc2xhdGVcIiBiaXpkb2NUb29sdGlwUG9zaXRpb249XCJlbmRcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1NldHRpbmdzJyB8IHRyYW5zbGF0ZVwiIChjbGljayk9XCJvcHRpb25zKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LWljb24gbWF0QW5pbWF0ZT1cInJvdGF0ZVwiPnNldHRpbmdzb248L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbYXR0ci5hcmlhLWxhYmVsXT1cIidQb3dlcicgfCB0cmFuc2xhdGVcIiAoY2xpY2spPVwic2lnbm91dCgkZXZlbnQpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0V4aXQnfHRyYW5zbGF0ZVwiIGJpemRvY1Rvb2x0aXBQb3NpdGlvbj1cImVuZFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5sb2dvdXQ8L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJzdWJtZW51XCIgY2xhc3M9XCJzdWItbWVudVwiIChtb3VzZWxlYXZlKT1cImNvbGxhcHNlc3VibWVudSgpXCIgW0BzdWJtZW51XT1cInN1Ym1lbnVNb2RlXCIgKEBzdWJtZW51LmRvbmUpPVwicmVzaXplKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25cIiAqbmdJZj1cInN1Ym1lbnUgIT09ICduZXcnXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVQaW5uZWQoKVwiPjxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIiBbYml6ZG9jVG9vbHRpcF09XCIocGlubmVkPydDb2xsYXBzZSc6J0V4cGFuZCcpfHRyYW5zbGF0ZVwiIFtpbmxpbmVdPVwidHJ1ZVwiPnt7cGlubmVkID8gJ2tleWJvYXJkX2RvdWJsZV9hcnJvd19sZWZ0JyA6ICdrZXlib2FyZF9kb3VibGVfYXJyb3dfcmlnaHQnfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzdWJtZW51XCI+XHJcbiAgICAgIDxiaXpkb2MtbmV3LW1lbnUgKm5nU3dpdGNoQ2FzZT1cIiduZXcnXCIgKGNoYW5nZSk9XCJjbG9zZXN1Ym1lbnUoKVwiPjwvYml6ZG9jLW5ldy1tZW51PlxyXG4gICAgICA8Yml6ZG9jLWZvbGRlcnMtbWVudSAqbmdTd2l0Y2hDYXNlPVwiJ21haWxib3gnXCIgW2NvbGxhcHNlZF09XCJzdWJtZW51TW9kZSA9PT0gJ3NocmluaydcIiAoY2hhbmdlKT1cImNvbGxhcHNlc3VibWVudSgpXCI+PC9iaXpkb2MtZm9sZGVycy1tZW51PlxyXG4gICAgICA8Yml6ZG9jLWFkbWluLW1lbnUgKm5nU3dpdGNoQ2FzZT1cIidhZG1pbidcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiPjwvYml6ZG9jLWFkbWluLW1lbnU+XHJcbiAgICAgIDxiaXpkb2MtcmVwb3J0cy1tZW51ICpuZ1N3aXRjaENhc2U9XCIncmVwb3J0cydcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiIChjaGFuZ2UpPVwiY29sbGFwc2VzdWJtZW51KClcIj48L2JpemRvYy1yZXBvcnRzLW1lbnU+XHJcbiAgICAgIDxiaXpkb2MtY3ViZS1tZW51ICpuZ1N3aXRjaENhc2U9XCInY3ViZSdcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiIChjaGFuZ2UpPVwiY29sbGFwc2VzdWJtZW51KClcIj48L2JpemRvYy1jdWJlLW1lbnU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxiaXpkb2MtcGFuZXM+PC9iaXpkb2MtcGFuZXM+XHJcbiJdfQ==
227
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS5kZXNrdG9wLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvaG9tZS9ob21lLmRlc2t0b3AuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9ob21lL2hvbWUuZGVza3RvcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQ3JGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlCLE9BQU8sRUFBZ0IsYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBT3RELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNqRCxPQUFPLEVBQXNCLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUs3RSxnQkFBZ0I7QUFPaEIsTUFBTSxPQUFPLGFBQWMsU0FBUSxRQUFRO0lBb0R6QyxZQUNVLE9BQW9CLEVBQ3BCLFFBQXdCLEVBQ2hDLFFBQWtCLEVBQ2xCLE9BQXVCLEVBQ3ZCLEtBQVksRUFDWixTQUFxQixFQUNyQixTQUEyQixFQUNuQixHQUFrQixFQUMxQixRQUFxQixFQUNFLE1BQW9CO1FBQzNDLEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUMsQ0FBQztRQVZoRSxZQUFPLEdBQVAsT0FBTyxDQUFhO1FBQ3BCLGFB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LFNBQVM7K0JBQ0UsYUFBYSxjQUdYLENBQUMsZ0JBQWdCLENBQUM7OzBCQWdFM0IsTUFBTTsyQkFBQyxhQUFhOzRDQVhrQixNQUFNO3NCQUE5QyxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBMkd2QyxtQkFBbUI7c0JBRGxCLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIFZpZXdDaGlsZCwgSW5qZWN0LCBIb3N0TGlzdGVuZXIsIEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdFNpZGVuYXYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xyXG5pbXBvcnQgeyBmaWx0ZXIgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgQml6RG9jQ29uZmlnLCBCSVpET0NfQ09ORklHLCBPcGVuUG9saWN5IH0gZnJvbSAnLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgc3VibWVudUFuaW1hdGlvbiB9IGZyb20gJy4uL2NvcmUvYW5pbWF0aW9ucyc7XHJcbmltcG9ydCB7IEZvcm0sIFJlY2lwaWVudE1vZGVsIH0gZnJvbSAnLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGFuZXNSb3V0ZXIgfSBmcm9tICcuLi9jb3JlL3Nsb3RzL3JvdXRlci5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUG9wdXAgfSBmcm9tICcuLi9jb3JlL3BvcHVwL3BvcHVwLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS90cmFuc2xhdGUuc2VydmljZSc7XHJcbmltcG9ydCB7IEh1YlNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL2h1Yi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSG9tZUJhc2UgfSBmcm9tICcuL2hvbWUtYmFzZS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBOYXZpZ2F0aW9uUGFuZUJhc2UsIE5hdmlnYXRpb25TdGFydCB9IGZyb20gJy4uL2NvcmUvc2xvdHMvcGFuZS1yZWYnO1xyXG5pbXBvcnQgeyBNYWlsYm94U2VydmljZSB9IGZyb20gJy4uL2NvcmUvbWFpbGJveC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IFByb21wdFNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3Byb21wdC5zZXJ2aWNlJztcclxuXHJcbi8qKiBob21lIGNvbXAgKi9cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtaG9tZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2hvbWUuZGVza3RvcC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vaG9tZS5kZXNrdG9wLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgYW5pbWF0aW9uczogW3N1Ym1lbnVBbmltYXRpb25dXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBIb21lQ29tcG9uZW50IGV4dGVuZHMgSG9tZUJhc2Uge1xyXG4gIHJlYWRvbmx5IHN5c0FkbWluID0gdGhpcy5fc2Vzc2lvbi5pc1N5c3RlbTtcclxuICBwcml2YXRlIF9zdWJtZW51TW9kZTogJ2Z1bGwnIHwgJ3NocmluaycgPSBsb2NhbFN0b3JhZ2UuZ2V0SXRlbSgnc3VibWVudU1vZGUnKSBhcyBhbnkgfHwgJ2Z1bGwnO1xyXG4gIHJlYWRvbmx5IGZvcm1zID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLmZvcm1zLmZpbHRlcihmID0+IGYuY3JlYXRhYmxlKTtcclxuICBjcmVhdGluZzogYm9vbGVhbjtcclxuICBwdWJsaWMgZ2V0IHN1Ym1lbnVNb2RlKCk6ICdmdWxsJyB8ICdzaHJpbmsnIHtcclxuICAgIHJldHVybiB0aGlzLl9zdWJtZW51TW9kZTtcclxuICB9XHJcbiAgcHVibGljIHNldCBzdWJtZW51TW9kZSh2YWx1ZTogJ2Z1bGwnIHwgJ3NocmluaycpIHtcclxuICAgIHRoaXMuX3N1Ym1lbnVNb2RlID0gdmFsdWU7XHJcbiAgICBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc3VibWVudU1vZGUnLCB2YWx1ZSlcclxuICB9XHJcbiAgcHJpdmF0ZSBfc3VibWVudTogc3RyaW5nID0gbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3N1Ym1lbnUnKTtcclxuICBwcml2YXRlIF9wYXRoOiBzdHJpbmc7XHJcbiAgZ2V0IGFjdGl2ZU1lbnUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5fc3VibWVudSB8fCB0aGlzLl9wYXRoO1xyXG4gIH1cclxuICBwdWJsaWMgZ2V0IHN1Ym1lbnUoKTogc3RyaW5nIHtcclxuICAgIHJldHVybiB0aGlzLl9zdWJtZW51O1xyXG4gIH1cclxuICBwdWJsaWMgc2V0IHN1Ym1lbnUodmFsdWU6IHN0cmluZykge1xyXG4gICAgdGhpcy5fc3VibWVudSA9IHZhbHVlO1xyXG4gICAgaWYgKHZhbHVlKSBsb2NhbFN0b3JhZ2Uuc2V0SXRlbSgnc3VibWVudScsIHZhbHVlKTtcclxuICAgIGVsc2UgbG9jYWxTdG9yYWdlLnJlbW92ZUl0ZW0oJ3N1Ym1lbnUnKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfaXMobmFtZSwgdmFsPzogYm9vbGVhbikge1xyXG4gICAgaWYgKHZhbCA9PT0gdW5kZWZpbmVkKVxyXG4gICAgICByZXR1cm4gbG9jYWxTdG9yYWdlLmdldEl0ZW0obmFtZSkgPT09ICcxJztcclxuICAgIGVsc2VcclxuICAgICAgbG9jYWxTdG9yYWdlLnNldEl0ZW0obmFtZSwgdmFsID8gJzEnIDogJzAnKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfaXNPckRlZmF1bHQobmFtZSwgJGRlZmF1bHQpIHtcclxuICAgIGNvbnN0IHZhbCA9IGxvY2FsU3RvcmFnZS5nZXRJdGVtKG5hbWUpO1xyXG4gICAgcmV0dXJuIHZhbCA/IHZhbCA9PT0gJzEnIDogJGRlZmF1bHQ7XHJcbiAgfVxyXG4gIHByaXZhdGUgX2NvbGxhcHNlZCA9IHRoaXMuX2lzT3JEZWZhdWx0KCdjb2xsYXBzZWQnLCB0cnVlKTtcclxuICBwdWJsaWMgZ2V0IGNvbGxhcHNlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9jb2xsYXBzZWQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzZXQgY29sbGFwc2VkKHZhbHVlKSB7XHJcbiAgICB0aGlzLl9jb2xsYXBzZWQgPSB2YWx1ZTtcclxuICAgIHRoaXMuX2lzKCdjb2xsYXBzZWQnLCB0aGlzLmNvbGxhcHNlZCk7XHJcbiAgfVxyXG4gIHByaXZhdGUgX3Bpbm5lZCA9IHRoaXMuX2lzT3JEZWZhdWx0KCdwaW5uZWQnLCB0cnVlKTtcclxuICBwdWJsaWMgZ2V0IHBpbm5lZCgpIHtcclxuICAgIHJldHVybiB0aGlzLl9waW5uZWQ7XHJcbiAgfVxyXG4gIHB1YmxpYyBzZXQgcGlubmVkKHZhbHVlKSB7XHJcbiAgICB0aGlzLl9waW5uZWQgPSB2YWx1ZTtcclxuICAgIHRoaXMuX2lzKCdwaW5uZWQnLCB2YWx1ZSlcclxuICB9XHJcbiAgQFZpZXdDaGlsZChNYXRTaWRlbmF2LCB7IHN0YXRpYzogdHJ1ZSB9KSBkcmF3ZXI6IE1hdFNpZGVuYXY7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF9yb3V0ZXI6IFBhbmVzUm91dGVyLFxyXG4gICAgcHJpdmF0ZSBfbWFpbGJveDogTWFpbGJveFNlcnZpY2UsXHJcbiAgICBpbmplY3RvcjogSW5qZWN0b3IsXHJcbiAgICBzZXNzaW9uOiBTZXNzaW9uU2VydmljZSxcclxuICAgIHBvcHVwOiBQb3B1cCxcclxuICAgIG1lc3NhZ2luZzogSHViU2VydmljZSxcclxuICAgIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcclxuICAgIHByaXZhdGUgX3NiOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgc25hY2tCYXI6IE1hdFNuYWNrQmFyLFxyXG4gICAgQEluamVjdChCSVpET0NfQ09ORklHKSBjb25maWc6IEJpekRvY0NvbmZpZykge1xyXG4gICAgc3VwZXIocG9wdXAsIHNlc3Npb24sIG1lc3NhZ2luZywgdHJhbnNsYXRlLCBzbmFja0JhciwgaW5qZWN0b3IsIGNvbmZpZyk7XHJcbiAgICBfcm91dGVyLmV2ZW50cy5waXBlKGZpbHRlcihlID0+IGUgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQgJiYgZS5wYW5lLnBhdGggJiYgZS5wYW5lLm1vZGUgPT09ICdwYW5lJykpLlxyXG4gICAgICBzdWJzY3JpYmUoKGU6IE5hdmlnYXRpb25QYW5lQmFzZSkgPT5cclxuICAgICAgICB0aGlzLl9wYXRoID0gZS5wYW5lLnBhdGguc3BsaXQoJy8nKVswXVxyXG4gICAgICApO1xyXG4gIH1cclxuICBuYXYocGF0aCkge1xyXG4gICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFtwYXRoXSk7XHJcbiAgICB0aGlzLnN1Ym1lbnUgPSBudWxsO1xyXG4gICAgdGhpcy5jb2xsYXBzZXN1Ym1lbnUoKTtcclxuICB9XHJcbiAgb25OZXdNZXNzYWdlKG1vZGVsOiBSZWNpcGllbnRNb2RlbCkge1xyXG4gICAgdGhpcy5fcm91dGVyLm5hdmlnYXRlKFsnbWFpbGJveC9pJywgbW9kZWwuaWQuZW5jb2RlSWQoKV0sXHJcbiAgICAgIHtcclxuICAgICAgICBzdGF0ZTogeyBpdGVtOiBtb2RlbCB9LFxyXG4gICAgICAgIHBvbGljeTogT3BlblBvbGljeS5DbGVhclxyXG4gICAgICB9KTtcclxuICB9XHJcbiAgY2xvc2VzdWJtZW51KCkge1xyXG4gICAgdGhpcy5zdWJtZW51ID0gbnVsbDtcclxuICB9XHJcbiAgb3Blbm5ldygpIHtcclxuICAgIGlmICh0aGlzLmZvcm1zLmxlbmd0aCA+IDEpIHtcclxuICAgICAgaWYgKHRoaXMuc3VibWVudSA9PT0gJ25ldycpXHJcbiAgICAgICAgdGhpcy5jbG9zZXN1Ym1lbnUoKTtcclxuICAgICAgZWxzZVxyXG4gICAgICAgIHRoaXMub3BlbnN1Ym1lbnUoJ25ldycpO1xyXG4gICAgfVxyXG4gICAgZWxzZSB0aGlzLl9jcmVhdGUoKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY3JlYXRlKCkge1xyXG4gICAgdGhpcy5jcmVhdGluZyA9IHRydWU7XHJcbiAgICB0aGlzLl9tYWlsYm94LmNyZWF0ZSh0aGlzLmZvcm1zWzBdLm5hbWUpLlxyXG4gICAgICBzdWJzY3JpYmUociA9PiB7XHJcbiAgICAgICAgdGhpcy5jcmVhdGluZyA9IGZhbHNlO1xyXG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJ21haWxib3gvaScsIHIuaWQuZW5jb2RlSWQoKV0sXHJcbiAgICAgICAgICB7XHJcbiAgICAgICAgICAgIHBvbGljeTogT3BlblBvbGljeS5DbGVhcixcclxuICAgICAgICAgICAgc3RhdGU6IHsgaXRlbTogciB9XHJcbiAgICAgICAgICB9KTtcclxuICAgICAgfSwgKGU6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XHJcbiAgICAgICAgdGhpcy5faGFuZGxlRXJyKGUpO1xyXG4gICAgICAgIHRoaXMuY3JlYXRpbmcgPSBmYWxzZTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9oYW5kbGVFcnIocmVzcG9uc2U6IEh0dHBFcnJvclJlc3BvbnNlIHwgR2VvbG9jYXRpb25Qb3NpdGlvbkVycm9yKSB7XHJcbiAgICBpZiAocmVzcG9uc2UuY29uc3RydWN0b3IubmFtZSA9PT0gJ1Bvc2l0aW9uRXJyb3InKVxyXG4gICAgICBzd2l0Y2ggKChyZXNwb25zZSBhcyBHZW9sb2NhdGlvblBvc2l0aW9uRXJyb3IpLmNvZGUpIHtcclxuICAgICAgICBjYXNlIDE6XHJcbiAgICAgICAgICB0aGlzLl9zYi5lcnJvcignVXNlckRlbmllZEdlb0VycicpO1xyXG4gICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgZGVmYXVsdDpcclxuICAgICAgICAgIHRoaXMuX3NiLmVycm9yKCdHZW9FcnInKTtcclxuICAgICAgfVxyXG4gICAgZWxzZSBzd2l0Y2ggKChyZXNwb25zZSBhcyBIdHRwRXJyb3JSZXNwb25zZSkuc3RhdHVzKSB7XHJcbiAgICAgIGNhc2UgNDAxOlxyXG4gICAgICAgIHRoaXMuX3NiLmVycm9yKCdVbmF1dGhvcml6ZWQnKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgY2FzZSA0MDY6XHJcbiAgICAgICAgdGhpcy5fc2IuZXJyb3JTdHJpbmcoKHJlc3BvbnNlIGFzIEh0dHBFcnJvclJlc3BvbnNlKS5lcnJvcik7XHJcbiAgICAgICAgYnJlYWs7XHJcbiAgICAgIGNhc2UgNDI2OiAvLyBsaWNlbnNlXHJcbiAgICAgICAgdGhpcy5fc2IuZXJyb3IoJ0xpY2Vuc2VFcnInKTtcclxuICAgICAgICBicmVhaztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICB0aGlzLl9zYi5lcnJvcigpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgb3BlbnN1Ym1lbnUobWVudTogc3RyaW5nKSB7XHJcbiAgICBpZiAodGhpcy5zdWJtZW51ID09PSBtZW51KVxyXG4gICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gdGhpcy5zdWJtZW51TW9kZSA9PT0gJ2Z1bGwnID8gJ3NocmluaycgOiAnZnVsbCc7XHJcbiAgICBlbHNlIHtcclxuICAgICAgdGhpcy5zdWJtZW51ID0gbWVudTtcclxuICAgICAgdGhpcy5zdWJtZW51TW9kZSA9ICdmdWxsJztcclxuICAgIH1cclxuICB9XHJcbiAgY29sbGFwc2VzdWJtZW51KCkge1xyXG4gICAgaWYgKCF0aGlzLnBpbm5lZCAmJiB0aGlzLnN1Ym1lbnUgIT09ICduZXcnKSB0aGlzLnN1Ym1lbnVNb2RlID0gJ3Nocmluayc7XHJcbiAgfVxyXG4gIHRvZ2dsZVBpbm5lZCgpIHtcclxuICAgIHRoaXMucGlubmVkID0gIXRoaXMucGlubmVkO1xyXG4gICAgdGhpcy5zdWJtZW51TW9kZSA9IHRoaXMucGlubmVkID8gJ2Z1bGwnIDogJ3Nocmluayc7XHJcbiAgfVxyXG4gIG1haWxzKCkge1xyXG4gICAgc3VwZXIubWFpbHMoKTtcclxuICAgIHRoaXMub3BlbnN1Ym1lbnUoJ21haWxib3gnKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfY29sbGFwc2VUb2dnbGUgPSBmYWxzZTtcclxuICAvKipcclxuICAgKiBBbHQgKyBuL04sIEN0cmwgKyAuXHJcbiAgICogQHBhcmFtIGV2ZW50XHJcbiAgICovXHJcbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6a2V5ZG93bicsIFsnJGV2ZW50J10pXHJcbiAgaGFuZGxlS2V5Ym9hcmRFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xyXG4gICAgaWYgKGV2ZW50LmFsdEtleSAmJiAoZXZlbnQud2hpY2ggPT09IDExMCB8fCBldmVudC53aGljaCA9PT0gNzgpKSB7XHJcbiAgICAgIGlmICh0aGlzLnN1Ym1lbnUgPT09ICduZXcnKVxyXG4gICAgICAgIHRoaXMuc3VibWVudSA9IG51bGw7XHJcbiAgICAgIGVsc2Uge1xyXG4gICAgICAgIGlmICh0aGlzLmZvcm1zLmxlbmd0aCA9PT0gMSlcclxuICAgICAgICAgIHRoaXMuX2NyZWF0ZSgpO1xyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgdGhpcy5zdWJtZW51ID0gJ25ldyc7XHJcbiAgICAgICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gJ2Z1bGwnO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gICAgZWxzZSBpZiAoZXZlbnQuY3RybEtleSAmJiBldmVudC53aGljaCA9PT0gMTkwKSB7XHJcbiAgICAgIGlmICh0aGlzLnN1Ym1lbnUpIHtcclxuICAgICAgICB0aGlzLnN1Ym1lbnVNb2RlID0gdGhpcy5zdWJtZW51TW9kZSA9PT0gJ3NocmluaycgPyAnZnVsbCcgOiAnc2hyaW5rJztcclxuICAgICAgICB0aGlzLl9jb2xsYXBzZVRvZ2dsZSA9IHRydWU7XHJcbiAgICAgIH1cclxuICAgICAgZWxzZSBpZiAoIXRoaXMuY29sbGFwc2VkKVxyXG4gICAgICAgIHRoaXMuY29sbGFwc2VkID0gdHJ1ZTtcclxuICAgICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKHRoaXMuX2NvbGxhcHNlVG9nZ2xlKSB7XHJcbiAgICAgICAgICB0aGlzLl9jb2xsYXBzZVRvZ2dsZSA9IGZhbHNlO1xyXG4gICAgICAgICAgdGhpcy5zdWJtZW51TW9kZSA9IG51bGw7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2VcclxuICAgICAgICAgIHRoaXMuY29sbGFwc2VkID0gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiPGRpdiBbY2xhc3MubmF2LWNvbGxhcHNlZF09XCJjb2xsYXBzZWRcIiBbY2xhc3MubmF2LW9wZW5dPVwic3VibWVudVwiIGNsYXNzPVwibmF2LW1lbnUgcm93XCI+XHJcbiAgPCEtLVtjbGFzcy5sb2FkaW5nXT1cImxvYWRpbmdcIi0tPlxyXG4gIDxkaXYgZnhMYXlvdXQ9XCJjb2x1bW5cIj5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxkaXYgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVNZW51ID09PSAnbmV3J1wiIGNsYXNzPVwibmV3LWNvbnRhaW5lclwiICpuZ0lmPVwiZm9ybXMubGVuZ3RoXCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtcmFpc2VkLWJ1dHRvbiBjbGFzcz1cImNvbXBvc2VcIiBbYml6ZG9jVG9vbHRpcF09XCInQ29tcG9zZSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCJcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJvcGVubmV3KClcIiBbZGlzYWJsZWRdPVwiY3JlYXRpbmdcIlxyXG4gICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInQ29tcG9zZSd8IHRyYW5zbGF0ZVwiIGNvbG9yPVwicHJpbWFyeVwiIGRhdGEtaGVscD1cImNvbXBvc2VcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbj5hZGQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eydDb21wb3NlJ3wgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8bWF0LW5hdi1saXN0PlxyXG4gICAgICAgIDxtYXQtbGlzdC1pdGVtIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0Rhc2hib2FyZCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJuYXYoJ2Rhc2hib2FyZCcpXCIgW2NsYXNzLmFjdGl2ZV09XCJhY3RpdmVNZW51ID09PSAnZGFzaGJvYXJkJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgZGF0YS1oZWxwPVwiZGFzaGJvYXJkXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInRGFzaGJvYXJkJ3x0cmFuc2xhdGVcIiBiaXpkb2NUb29sdGlwUG9zaXRpb249XCJlbmRcIj5cclxuICAgICAgICAgIDxtYXQtaWNvbiBtYXRMaXN0SWNvbj5hcHBzPC9tYXQtaWNvbj48c3BhbiBjbGFzcz1cIm5hdi1sYWJlbFwiPnt7J0Rhc2hib2FyZCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gKGNsaWNrKT1cIm1haWxzKClcIiBbYml6ZG9jVG9vbHRpcF09XCInTWFpbGJveCd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZU1lbnUgPT09ICdtYWlsYm94J1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInTWFpbGJveCcgfCB0cmFuc2xhdGVcIiBkYXRhLWhlbHA9XCJmb2xkZXJzXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24gW21hdEJhZGdlXT1cInByb2ZpbGUuaW5ib3hDb3VudFwiIFttYXRCYWRnZUhpZGRlbl09XCJwcm9maWxlLmluYm94Q291bnQgPCAxXCIgbWF0QmFkZ2VDb2xvcj1cImFjY2VudFwiPmluYm94PC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snTWFpbGJveCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gW2F0dHIuYXJpYS1sYWJlbF09XCInU2NoZWR1bGVyJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwic2NoZWR1bGVyRW5hYmxlZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdignc2NoZWR1bGUnKVwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ3NjaGVkdWxlJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ1NjaGVkdWxlcid8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24gY2xhc3M9XCJtYXQtaWNvbi1ydGwtbWlycm9yXCI+ZGF0ZV9yYW5nZTwvbWF0LWljb24+PHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eyAnU2NoZWR1bGVyJyB8IHRyYW5zbGF0ZX19PC9zcGFuPlxyXG4gICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cclxuICAgICAgICA8bWF0LWxpc3QtaXRlbSAqbmdJZj0nY2hhdEVuYWJsZWQnIGRhdGEtaGVscD1cImNoYXRcIiBbYXR0ci5hcmlhLWxhYmVsXT1cIidDaGF0JyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm5hdignY29udGFjdHMnKVwiIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ2NvbnRhY3RzJ1wiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ0NoYXQnfHRyYW5zbGF0ZVwiIGJpemRvY1Rvb2x0aXBQb3NpdGlvbj1cImVuZFwiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIG1hdExpc3RJY29uIFttYXRCYWRnZV09XCJwcm9maWxlLmNvbnZlcnNhdGlvbnNDb3VudFwiIFttYXRCYWRnZUhpZGRlbl09XCIhcHJvZmlsZS5jb252ZXJzYXRpb25zQ291bnRcIiBtYXRCYWRnZUNvbG9yPVwiYWNjZW50XCI+Y2hhdDwvbWF0LWljb24+PHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eyAnQ2hhdCcgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XHJcbiAgICAgICAgPG1hdC1saXN0LWl0ZW0gKm5nSWY9XCJlbmFibGVBbmFseXNpcyAmJiBwcm9maWxlLmN1YmVzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5zdWJtZW51KCdjdWJlJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ2N1YmUnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInQ3ViZSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgZGF0YS1oZWxwPVwiY3ViZVwiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ0N1YmUnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+ZXF1YWxpemVyPC9tYXQtaWNvbj48c3BhbiBjbGFzcz1cIm5hdi1sYWJlbFwiPnt7J0N1YmUnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgPC9tYXQtbGlzdC1pdGVtPlxyXG4gICAgICAgIDxtYXQtbGlzdC1pdGVtICpuZ0lmPVwicHJvZmlsZS5yZXBvcnRzLmxlbmd0aFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cIm9wZW5zdWJtZW51KCdyZXBvcnRzJylcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwiYWN0aXZlTWVudSA9PT0gJ3JlcG9ydHMnXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbYml6ZG9jVG9vbHRpcF09XCInUmVwb3J0cyd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgZGF0YS1oZWxwPVwicmVwb3J0c1wiIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1JlcG9ydHMnIHwgdHJhbnNsYXRlXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+bGlzdF9hbHQ8L21hdC1pY29uPjxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snUmVwb3J0cycgfCB0cmFuc2xhdGV9fTwvc3Bhbj5cclxuICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInN5c0FkbWluXCI+XHJcbiAgICAgICAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cclxuICAgICAgICAgIDxtYXQtbGlzdC1pdGVtIChjbGljayk9XCJvcGVuc3VibWVudSgnYWRtaW4nKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3MuYWN0aXZlXT1cImFjdGl2ZU1lbnUgPT09ICdhZG1pbidcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgW2JpemRvY1Rvb2x0aXBdPVwiJ1N5c3RlbSd8dHJhbnNsYXRlXCIgYml6ZG9jVG9vbHRpcFBvc2l0aW9uPVwiZW5kXCIgW2F0dHIuYXJpYS1sYWJlbF09XCInU3lzdGVtJyB8IHRyYW5zbGF0ZVwiPlxyXG4gICAgICAgICAgICA8bWF0LWljb24gbWF0TGlzdEljb24+ZGV2aWNlX2h1YjwvbWF0LWljb24+XHJcbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwibmF2LWxhYmVsXCI+e3snV29ya2Zsb3cnIHwgdHJhbnNsYXRlfX08L3NwYW4+XHJcbiAgICAgICAgICA8L21hdC1saXN0LWl0ZW0+XHJcbiAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwvbWF0LW5hdi1saXN0PlxyXG4gICAgPC9kaXY+XHJcbiAgICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgICA8IS0tPGxvdHRpZSBuYW1lPVwibGYzMF9lZGl0b3JfcXI3emdtY3NcIiAqbmdJZj1cImxvYWRpbmdcIj48L2xvdHRpZT4tLT5cclxuICAgIDwhLS1AYW5pbWF0ZS0tPlxyXG4gICAgPGRpdiBjbGFzcz1cInNpZ24taW5cIj5cclxuICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gZGF0YS1oZWxwPVwic2lnbi1pblwiIFtiaXpkb2NUb29sdGlwXT1cIidTZXR0aW5ncycgfCB0cmFuc2xhdGVcIiBiaXpkb2NUb29sdGlwUG9zaXRpb249XCJlbmRcIlxyXG4gICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ1NldHRpbmdzJyB8IHRyYW5zbGF0ZVwiIChjbGljayk9XCJvcHRpb25zKCRldmVudClcIj5cclxuICAgICAgICA8bWF0LWljb24gbWF0QW5pbWF0ZT1cInJvdGF0ZVwiPnNldHRpbmdzb248L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbYXR0ci5hcmlhLWxhYmVsXT1cIidQb3dlcicgfCB0cmFuc2xhdGVcIiAoY2xpY2spPVwic2lnbm91dCgkZXZlbnQpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0V4aXQnfHRyYW5zbGF0ZVwiIGJpemRvY1Rvb2x0aXBQb3NpdGlvbj1cImVuZFwiPlxyXG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIj5sb2dvdXQ8L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvZGl2PlxyXG4gIDxkaXYgKm5nSWY9XCJzdWJtZW51XCIgY2xhc3M9XCJzdWItbWVudVwiIChtb3VzZWxlYXZlKT1cImNvbGxhcHNlc3VibWVudSgpXCIgW0BzdWJtZW51XT1cInN1Ym1lbnVNb2RlXCIgKEBzdWJtZW51LmRvbmUpPVwicmVzaXplKClcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25cIiAqbmdJZj1cInN1Ym1lbnUgIT09ICduZXcnXCI+XHJcbiAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ0b2dnbGVQaW5uZWQoKVwiPjxtYXQtaWNvbiBjbGFzcz1cIm1hdC1pY29uLXJ0bC1taXJyb3JcIiBbYml6ZG9jVG9vbHRpcF09XCIocGlubmVkPydDb2xsYXBzZSc6J0V4cGFuZCcpfHRyYW5zbGF0ZVwiIFtpbmxpbmVdPVwidHJ1ZVwiPnt7cGlubmVkID8gJ2tleWJvYXJkX2RvdWJsZV9hcnJvd19sZWZ0JyA6ICdrZXlib2FyZF9kb3VibGVfYXJyb3dfcmlnaHQnfX08L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8bmctY29udGFpbmVyIFtuZ1N3aXRjaF09XCJzdWJtZW51XCI+XHJcbiAgICAgIDxiaXpkb2MtbmV3LW1lbnUgKm5nU3dpdGNoQ2FzZT1cIiduZXcnXCIgKGNoYW5nZSk9XCJjbG9zZXN1Ym1lbnUoKVwiPjwvYml6ZG9jLW5ldy1tZW51PlxyXG4gICAgICA8Yml6ZG9jLWZvbGRlcnMtbWVudSAqbmdTd2l0Y2hDYXNlPVwiJ21haWxib3gnXCIgW2NvbGxhcHNlZF09XCJzdWJtZW51TW9kZSA9PT0gJ3NocmluaydcIiAoY2hhbmdlKT1cImNvbGxhcHNlc3VibWVudSgpXCI+PC9iaXpkb2MtZm9sZGVycy1tZW51PlxyXG4gICAgICA8Yml6ZG9jLWFkbWluLW1lbnUgKm5nU3dpdGNoQ2FzZT1cIidhZG1pbidcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiPjwvYml6ZG9jLWFkbWluLW1lbnU+XHJcbiAgICAgIDxiaXpkb2MtcmVwb3J0cy1tZW51ICpuZ1N3aXRjaENhc2U9XCIncmVwb3J0cydcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiIChjaGFuZ2UpPVwiY29sbGFwc2VzdWJtZW51KClcIj48L2JpemRvYy1yZXBvcnRzLW1lbnU+XHJcbiAgICAgIDxiaXpkb2MtY3ViZS1tZW51ICpuZ1N3aXRjaENhc2U9XCInY3ViZSdcIiBbY29sbGFwc2VkXT1cInN1Ym1lbnVNb2RlID09PSAnc2hyaW5rJ1wiIChjaGFuZ2UpPVwiY29sbGFwc2VzdWJtZW51KClcIj48L2JpemRvYy1jdWJlLW1lbnU+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuICA8L2Rpdj5cclxuPC9kaXY+XHJcbjxiaXpkb2MtcGFuZXM+PC9iaXpkb2MtcGFuZXM+XHJcbiJdfQ==
@@ -37,9 +37,11 @@ export class ReportComponent {
37
37
  this._route.params.pipe(takeUntil(this._destroy)).subscribe(p => {
38
38
  const id = p['id'];
39
39
  this.report = this._session.profile.reports.find(r => r.name === id);
40
+ this.hasFilters = (this.report.arguments && this.report.arguments.length > 0) || this.report.argumentsTemplate !== undefined;
40
41
  this._cd.detectChanges();
41
42
  this._title.set(this.report.title);
42
43
  this.args = this._fromQueryArgs(this._route.snapshot.queryParams);
44
+ this.anyFilters = Object.keys(this.args).length > 0;
43
45
  this._navigating = true;
44
46
  this.viewer.execute();
45
47
  });
@@ -55,6 +57,12 @@ export class ReportComponent {
55
57
  guide() {
56
58
  this._guide.start(this.report.guide);
57
59
  }
60
+ clearFilter() {
61
+ this.args = {};
62
+ this.anyFilters = false;
63
+ this._cd.detectChanges();
64
+ this.viewer.execute();
65
+ }
58
66
  /**
59
67
  *
60
68
  * @param qargs
@@ -106,10 +114,10 @@ export class ReportComponent {
106
114
  }
107
115
  }
108
116
  ReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: ReportComponent, deps: [{ token: i1.WindowTitleService }, { token: i2.ActivatedRoute }, { token: i3.SessionService }, { token: i0.ChangeDetectorRef }, { token: i4.PromptService }, { token: i5.GuideService }], target: i0.ɵɵFactoryTarget.Component });
109
- ReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: ReportComponent, selector: "bizdoc-report", viewQueries: [{ propertyName: "filter", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "viewer", first: true, predicate: ReportViewerComponent, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"viewer.execute()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"viewer.exportExcel()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"report.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle()\" bizdocTooltip=\"{{'Filter' | translate}}\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-report-viewer [report]=\"report\" [args]=\"args\"></bizdoc-report-viewer>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" opened=\"false\" #filter position=\"end\">\r\n <bizdoc-report-arguments *ngIf=\"viewer.reportRef\" [args]=\"args\" (argsChange)=\"argsChange($event)\" [reportRef]=\"viewer.reportRef\"\r\n [template]=\"report.argumentsTemplate\" [arguments]=\"report.arguments\"></bizdoc-report-arguments>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".contents{display:flex;flex-direction:column}\n"], components: [{ type: i6.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i9.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9.MatSidenavContent, selector: "mat-sidenav-content" }, { type: i10.ReportViewerComponent, selector: "bizdoc-report-viewer", inputs: ["report", "args"] }, { type: i9.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i11.ReportArgumentsComponent, selector: "bizdoc-report-arguments", inputs: ["reportRef", "template", "arguments", "args"], outputs: ["argsChange"] }], directives: [{ type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i13.MatIconAnimate, selector: "[matAnimate]" }, { type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i15.TranslatePipe } });
117
+ ReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.3", type: ReportComponent, selector: "bizdoc-report", viewQueries: [{ propertyName: "filter", first: true, predicate: MatSidenav, descendants: true, static: true }, { propertyName: "viewer", first: true, predicate: ReportViewerComponent, descendants: true, static: true }], ngImport: i0, template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"viewer.execute()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"viewer.exportExcel()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"report.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" *ngIf=\"hasFilters\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filter($event)\" bizdocTooltip=\"{{'Filter' | translate}}\" *ngIf=\"hasFilters\"><mat-icon [class.filled]=\"anyFilters\">filter_alt</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-report-viewer [report]=\"report\" [args]=\"args\"></bizdoc-report-viewer>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" opened=\"false\" #filter position=\"end\">\r\n <bizdoc-report-arguments *ngIf=\"viewer.reportRef\" [args]=\"args\" (argsChange)=\"argsChange($event)\" [reportRef]=\"viewer.reportRef\"\r\n [template]=\"report.argumentsTemplate\" [arguments]=\"report.arguments\"></bizdoc-report-arguments>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".contents{display:flex;flex-direction:column}\n"], components: [{ type: i6.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i7.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i8.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i9.MatSidenavContainer, selector: "mat-sidenav-container", exportAs: ["matSidenavContainer"] }, { type: i9.MatSidenavContent, selector: "mat-sidenav-content" }, { type: i10.ReportViewerComponent, selector: "bizdoc-report-viewer", inputs: ["report", "args"] }, { type: i9.MatSidenav, selector: "mat-sidenav", inputs: ["fixedInViewport", "fixedTopGap", "fixedBottomGap"], exportAs: ["matSidenav"] }, { type: i11.ReportArgumentsComponent, selector: "bizdoc-report-arguments", inputs: ["reportRef", "template", "arguments", "args"], outputs: ["argsChange"] }], directives: [{ type: i12.TooltipDirective, selector: "[bizdocTooltip]", inputs: ["bizdocTooltip", "bizdocTooltipTemplate", "bizdocTooltipContext", "bizdocTooltipPosition", "bizdocTooltipDuration", "bizdocTooltipDisabled"] }, { type: i13.MatIconAnimate, selector: "[matAnimate]" }, { type: i14.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i15.TranslatePipe } });
110
118
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImport: i0, type: ReportComponent, decorators: [{
111
119
  type: Component,
112
- args: [{ selector: 'bizdoc-report', template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"viewer.execute()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"viewer.exportExcel()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"report.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"filterToggle()\" bizdocTooltip=\"{{'Filter' | translate}}\"><mat-icon>filter_list</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-report-viewer [report]=\"report\" [args]=\"args\"></bizdoc-report-viewer>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" opened=\"false\" #filter position=\"end\">\r\n <bizdoc-report-arguments *ngIf=\"viewer.reportRef\" [args]=\"args\" (argsChange)=\"argsChange($event)\" [reportRef]=\"viewer.reportRef\"\r\n [template]=\"report.argumentsTemplate\" [arguments]=\"report.arguments\"></bizdoc-report-arguments>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".contents{display:flex;flex-direction:column}\n"] }]
120
+ args: [{ selector: 'bizdoc-report', template: "<mat-toolbar>\r\n <button mat-icon-button (click)=\"viewer.execute()\" [bizdocTooltip]=\"'Refresh' | translate\"><mat-icon matAnimate=\"rotate\">autorenew</mat-icon></button>\r\n <span class=\"divider\"></span>\r\n <button mat-icon-button (click)=\"viewer.exportExcel()\" bizdocTooltip=\"{{'Download' | translate}}\"><mat-icon>save_alt</mat-icon></button>\r\n <button mat-icon-button (click)=\"guide()\" [bizdocTooltip]=\"'Help' | translate\" *ngIf=\"report.guide\"><mat-icon>help_outline</mat-icon></button>\r\n <button mat-icon-button (click)=\"clearFilter()\" [bizdocTooltip]=\"'Clear' | translate\" *ngIf=\"hasFilters\" [disabled]=\"!anyFilters\"><mat-icon>clear_all</mat-icon></button>\r\n <button mat-icon-button (click)=\"filter($event)\" bizdocTooltip=\"{{'Filter' | translate}}\" *ngIf=\"hasFilters\"><mat-icon [class.filled]=\"anyFilters\">filter_alt</mat-icon></button>\r\n</mat-toolbar>\r\n<mat-sidenav-container class=\"page-container\">\r\n <mat-sidenav-content>\r\n <bizdoc-report-viewer [report]=\"report\" [args]=\"args\"></bizdoc-report-viewer>\r\n </mat-sidenav-content>\r\n <mat-sidenav mode=\"over\" opened=\"false\" #filter position=\"end\">\r\n <bizdoc-report-arguments *ngIf=\"viewer.reportRef\" [args]=\"args\" (argsChange)=\"argsChange($event)\" [reportRef]=\"viewer.reportRef\"\r\n [template]=\"report.argumentsTemplate\" [arguments]=\"report.arguments\"></bizdoc-report-arguments>\r\n </mat-sidenav>\r\n</mat-sidenav-container>\r\n", styles: [".contents{display:flex;flex-direction:column}\n"] }]
113
121
  }], ctorParameters: function () { return [{ type: i1.WindowTitleService }, { type: i2.ActivatedRoute }, { type: i3.SessionService }, { type: i0.ChangeDetectorRef }, { type: i4.PromptService }, { type: i5.GuideService }]; }, propDecorators: { filter: [{
114
122
  type: ViewChild,
115
123
  args: [MatSidenav, { static: true }]
@@ -117,4 +125,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
117
125
  type: ViewChild,
118
126
  args: [ReportViewerComponent, { static: true }]
119
127
  }] } });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBZ0MsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBVSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRbEUsNEJBQTRCO0FBQzVCLE1BQU0sT0FBTyxlQUFlO0lBUzFCLFlBQ1UsTUFBMEIsRUFDMUIsTUFBc0IsRUFDdEIsUUFBd0IsRUFDeEIsR0FBc0IsRUFDdEIsR0FBa0IsRUFDbEIsTUFBb0I7UUFMcEIsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNsQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBWjlCLFNBQUksR0FBYSxFQUFFLENBQUM7UUFDcEIsU0FBSSxHQUF5QixRQUFRLENBQUM7UUFJckIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFPZCxD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RSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDeEQsQ0FBQztJQUNEOzs7T0FHRztJQUNILEtBQUssQ0FBQyxJQUFTO1FBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDO1lBQ2QsSUFBSSxDQUFDLElBQUksR0FBRyxTQUFTLENBQUM7UUFDeEIsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLENBQ3hCLENBQUM7SUFDSixDQUFDO0lBQ0QsVUFBVSxDQUFDLElBQUk7UUFDYixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztRQUNqQixJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQ3hCLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7OzRHQXRGVSxlQUFlO2dHQUFmLGVBQWUsNkZBS2YsVUFBVSx1RkFDVixxQkFBcUIsOERDekJsQyx3dkNBZ0JBOzJGREdhLGVBQWU7a0JBTjNCLFNBQVM7K0JBQ0UsZUFBZTswUEFVZ0IsTUFBTTtzQkFBOUMsU0FBUzt1QkFBQyxVQUFVLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUNhLE1BQU07c0JBQXpELFNBQVM7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgT25EZXN0cm95LCBDaGFuZ2VEZXRlY3RvclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IE1hdFNpZGVuYXYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IFJlcG9ydCwgRmllbGRUeXBlIH0gZnJvbSAnLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBXaW5kb3dUaXRsZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL3dpbmRvdy10aXRsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgR3VpZGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBhcmFtTWFwIH0gZnJvbSAnLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLXJlcG9ydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlcG9ydC5tb2JpbGUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlcG9ydC5tb2JpbGUuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG4vKiogcmVwb3J0dmlld2VyIGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBSZXBvcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcmVwb3J0OiBSZXBvcnQ7XHJcbiAgaXRlbT86IGFueTtcclxuICBhcmdzOiBQYXJhbU1hcCA9IHt9O1xyXG4gIG1vZGU6ICdleHBsb3JlJyB8ICdmaWx0ZXInID0gJ2ZpbHRlcic7XHJcbiAgQFZpZXdDaGlsZChNYXRTaWRlbmF2LCB7IHN0YXRpYzogdHJ1ZSB9KSBmaWx0ZXI6IE1hdFNpZGVuYXY7XHJcbiAgQFZpZXdDaGlsZChSZXBvcnRWaWV3ZXJDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIHZpZXdlcjogUmVwb3J0Vmlld2VyQ29tcG9uZW50O1xyXG4gIHByaXZhdGUgX25hdmlnYXRpbmc6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90aXRsZTogV2luZG93VGl0bGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX2d1aWRlOiBHdWlkZVNlcnZpY2UpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcm91dGUucGFyYW1zLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUocCA9PiB7XHJcbiAgICAgIGNvbnN0IGlkID0gcFsnaWQnXTtcclxuICAgICAgdGhpcy5yZXBvcnQgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUucmVwb3J0cy5maW5kKHIgPT4gci5uYW1lID09PSBpZCk7XHJcbiAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgIHRoaXMuX3RpdGxlLnNldCh0aGlzLnJlcG9ydC50aXRsZSk7XHJcbiAgICAgIHRoaXMuYXJncyA9IHRoaXMuX2Zyb21RdWVyeUFyZ3ModGhpcy5fcm91dGUuc25hcHNob3QucXVlcnlQYXJhbXMpO1xyXG4gICAgICB0aGlzLl9uYXZpZ2F0aW5nID0gdHJ1ZTtcclxuICAgICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpO1xyXG4gICAgfSk7XHJcbiAgICB0aGlzLl9yb3V0ZS5xdWVyeVBhcmFtcy5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSkuc3Vic2NyaWJlKHAgPT4ge1xyXG4gICAgICBpZiAoIXRoaXMuX25hdmlnYXRpbmcpIHtcclxuICAgICAgICB0aGlzLmFyZ3MgPSB0aGlzLl9mcm9tUXVlcnlBcmdzKHApO1xyXG4gICAgICAgIHRoaXMudmlld2VyLmV4ZWN1dGUoKTtcclxuICAgICAgfSBlbHNlXHJcbiAgICAgICAgdGhpcy5fbmF2aWdhdGluZyA9IGZhbHNlO1xyXG4gICAgfSk7XHJcbiAgfVxyXG4gIGd1aWRlKCkge1xyXG4gICAgdGhpcy5fZ3VpZGUuc3RhcnQodGhpcy5yZXBvcnQuZ3VpZGUpO1xyXG4gIH1cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBxYXJnc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgX2Zyb21RdWVyeUFyZ3MocWFyZ3M6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBhcmdzID0ge307XHJcbiAgICBPYmplY3Qua2V5cyhxYXJncykuZm9yRWFjaChrID0+IHtcclxuICAgICAgY29uc3QgdmFsID0gcWFyZ3Nba107XHJcbiAgICAgIGlmICh2YWwpIHtcclxuICAgICAgICBjb25zdCBhcmd1bWVudCA9IHRoaXMucmVwb3J0LmFyZ3VtZW50cy5maW5kKGEgPT4gYS5uYW1lID09PSBrKTtcclxuICAgICAgICBpZiAoYXJndW1lbnQpXHJcbiAgICAgICAgICBzd2l0Y2ggKGFyZ3VtZW50LnR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuRGF0ZTpcclxuICAgICAgICAgICAgICBhcmdzW2tdID0gbmV3IERhdGUodmFsKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQ2hlY2s6XHJcbiAgICAgICAgICAgICAgYXJnc1trXSA9IHZhbCA9PT0gJ3RydWUnO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgIGFyZ3Nba10gPSB2YWw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgYXJnc1trXSA9IHZhbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYXJncztcclxuICB9XHJcbiAgZmlsdGVyVG9nZ2xlKCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ2ZpbHRlcic7XHJcbiAgICB0aGlzLmZpbHRlci50b2dnbGUoKS50aGVuKCgpID0+IHRoaXMudmlld2VyLnJlc2l6ZSgpKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaXRlbVxyXG4gICAqL1xyXG4gIGNsaWNrKGl0ZW06IGFueSkge1xyXG4gICAgdGhpcy52aWV3ZXIuZXhwbG9yZShpdGVtKS50aGVuKHIgPT4ge1xyXG4gICAgICB0aGlzLml0ZW0gPSByO1xyXG4gICAgICB0aGlzLm1vZGUgPSAnZXhwbG9yZSc7XHJcbiAgICB9LCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpXHJcbiAgICApO1xyXG4gIH1cclxuICBhcmdzQ2hhbmdlKGFyZ3MpIHtcclxuICAgIHRoaXMuYXJncyA9IGFyZ3M7XHJcbiAgICB0aGlzLnZpZXdlci5leGVjdXRlKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhcj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidmlld2VyLmV4ZWN1dGUoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidSZWZyZXNoJyB8IHRyYW5zbGF0ZVwiPjxtYXQtaWNvbiBtYXRBbmltYXRlPVwicm90YXRlXCI+YXV0b3JlbmV3PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZpZXdlci5leHBvcnRFeGNlbCgpXCIgYml6ZG9jVG9vbHRpcD1cInt7J0Rvd25sb2FkJyB8IHRyYW5zbGF0ZX19XCI+PG1hdC1pY29uPnNhdmVfYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZ3VpZGUoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidIZWxwJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwicmVwb3J0Lmd1aWRlXCI+PG1hdC1pY29uPmhlbHBfb3V0bGluZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImZpbHRlclRvZ2dsZSgpXCIgYml6ZG9jVG9vbHRpcD1cInt7J0ZpbHRlcicgfCB0cmFuc2xhdGV9fVwiPjxtYXQtaWNvbj5maWx0ZXJfbGlzdDwvbWF0LWljb24+PC9idXR0b24+XHJcbjwvbWF0LXRvb2xiYXI+XHJcbjxtYXQtc2lkZW5hdi1jb250YWluZXIgY2xhc3M9XCJwYWdlLWNvbnRhaW5lclwiPlxyXG4gIDxtYXQtc2lkZW5hdi1jb250ZW50PlxyXG4gICAgPGJpemRvYy1yZXBvcnQtdmlld2VyIFtyZXBvcnRdPVwicmVwb3J0XCIgW2FyZ3NdPVwiYXJnc1wiPjwvYml6ZG9jLXJlcG9ydC12aWV3ZXI+XHJcbiAgPC9tYXQtc2lkZW5hdi1jb250ZW50PlxyXG4gIDxtYXQtc2lkZW5hdiBtb2RlPVwib3ZlclwiIG9wZW5lZD1cImZhbHNlXCIgI2ZpbHRlciBwb3NpdGlvbj1cImVuZFwiPlxyXG4gICAgPGJpemRvYy1yZXBvcnQtYXJndW1lbnRzICpuZ0lmPVwidmlld2VyLnJlcG9ydFJlZlwiIFthcmdzXT1cImFyZ3NcIiAoYXJnc0NoYW5nZSk9XCJhcmdzQ2hhbmdlKCRldmVudClcIiBbcmVwb3J0UmVmXT1cInZpZXdlci5yZXBvcnRSZWZcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgIFt0ZW1wbGF0ZV09XCJyZXBvcnQuYXJndW1lbnRzVGVtcGxhdGVcIiBbYXJndW1lbnRzXT1cInJlcG9ydC5hcmd1bWVudHNcIj48L2JpemRvYy1yZXBvcnQtYXJndW1lbnRzPlxyXG4gIDwvbWF0LXNpZGVuYXY+XHJcbjwvbWF0LXNpZGVuYXYtY29udGFpbmVyPlxyXG4iXX0=
128
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9saWJyYXJpZXMvY29yZS9zcmMvbGliL3JlcG9ydHMvcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBZ0MsTUFBTSxlQUFlLENBQUM7QUFFM0YsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBVSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUtuRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFRbEUsNEJBQTRCO0FBQzVCLE1BQU0sT0FBTyxlQUFlO0lBVzFCLFlBQ1UsTUFBMEIsRUFDMUIsTUFBc0IsRUFDdEIsUUFBd0IsRUFDeEIsR0FBc0IsRUFDdEIsR0FBa0IsRUFDbEIsTUFBb0I7UUFMcEIsV0FBTSxHQUFOLE1BQU0sQ0FBb0I7UUFDMUIsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7UUFDdEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsUUFBRyxHQUFILEdBQUcsQ0FBZTtRQUNsQixXQUFNLEdBQU4sTUFBTSxDQUFjO1FBZDlCLFNBQUksR0FBYSxFQUFFLENBQUM7UUFDcEIsU0FBSSxHQUF5QixRQUFRLENBQUM7UUFNckIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFPZCxD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USxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7NEdBaEdVLGVBQWU7Z0dBQWYsZUFBZSw2RkFLZixVQUFVLHVGQUNWLHFCQUFxQiw4REN6QmxDLGkrQ0FpQkE7MkZERWEsZUFBZTtrQkFOM0IsU0FBUzsrQkFDRSxlQUFlOzBQQVVnQixNQUFNO3NCQUE5QyxTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBQ2EsTUFBTTtzQkFBekQsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0NoaWxkLCBPbkRlc3Ryb3ksIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgTWF0U2lkZW5hdiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXYnO1xyXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgUmVwb3J0LCBGaWVsZFR5cGUgfSBmcm9tICcuLi9jb3JlL21vZGVscyc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFdpbmRvd1RpdGxlU2VydmljZSB9IGZyb20gJy4uL2NvcmUvd2luZG93LXRpdGxlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBHdWlkZVNlcnZpY2UgfSBmcm9tICcuLi9jb3JlL2d1aWRlL2d1aWRlLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBSZXBvcnRWaWV3ZXJDb21wb25lbnQgfSBmcm9tICcuL3JlcG9ydC12aWV3ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGFyYW1NYXAgfSBmcm9tICcuLi9jb3JlL2NvbmZpZ3VyYXRpb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdiaXpkb2MtcmVwb3J0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcmVwb3J0Lm1vYmlsZS5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbi8qKiByZXBvcnR2aWV3ZXIgY29tcG9uZW50Ki9cclxuZXhwb3J0IGNsYXNzIFJlcG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuICByZXBvcnQ6IFJlcG9ydDtcclxuICBpdGVtPzogYW55O1xyXG4gIGFyZ3M6IFBhcmFtTWFwID0ge307XHJcbiAgbW9kZTogJ2V4cGxvcmUnIHwgJ2ZpbHRlcicgPSAnZmlsdGVyJztcclxuICBAVmlld0NoaWxkKE1hdFNpZGVuYXYsIHsgc3RhdGljOiB0cnVlIH0pIGZpbHRlcjogTWF0U2lkZW5hdjtcclxuICBAVmlld0NoaWxkKFJlcG9ydFZpZXdlckNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgdmlld2VyOiBSZXBvcnRWaWV3ZXJDb21wb25lbnQ7XHJcbiAgaGFzRmlsdGVyczogYm9vbGVhbjtcclxuICBhbnlGaWx0ZXJzOiBib29sZWFuO1xyXG4gIHByaXZhdGUgX25hdmlnYXRpbmc6IGJvb2xlYW47XHJcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIF90aXRsZTogV2luZG93VGl0bGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIF9zYjogUHJvbXB0U2VydmljZSxcclxuICAgIHByaXZhdGUgX2d1aWRlOiBHdWlkZVNlcnZpY2UpIHsgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcm91dGUucGFyYW1zLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpKS5zdWJzY3JpYmUocCA9PiB7XHJcbiAgICAgIGNvbnN0IGlkID0gcFsnaWQnXTtcclxuICAgICAgdGhpcy5yZXBvcnQgPSB0aGlzLl9zZXNzaW9uLnByb2ZpbGUucmVwb3J0cy5maW5kKHIgPT4gci5uYW1lID09PSBpZCk7XHJcbiAgICAgIHRoaXMuaGFzRmlsdGVycyA9ICh0aGlzLnJlcG9ydC5hcmd1bWVudHMgJiYgdGhpcy5yZXBvcnQuYXJndW1lbnRzLmxlbmd0aCA+IDApIHx8IHRoaXMucmVwb3J0LmFyZ3VtZW50c1RlbXBsYXRlICE9PSB1bmRlZmluZWQ7XHJcbiAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgdGhpcy5fdGl0bGUuc2V0KHRoaXMucmVwb3J0LnRpdGxlKTtcclxuICAgICAgdGhpcy5hcmdzID0gdGhpcy5fZnJvbVF1ZXJ5QXJncyh0aGlzLl9yb3V0ZS5zbmFwc2hvdC5xdWVyeVBhcmFtcyk7XHJcbiAgICAgIHRoaXMuYW55RmlsdGVycyA9IE9iamVjdC5rZXlzKHRoaXMuYXJncykubGVuZ3RoID4gMDtcclxuICAgICAgdGhpcy5fbmF2aWdhdGluZyA9IHRydWU7XHJcbiAgICAgIHRoaXMudmlld2VyLmV4ZWN1dGUoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5fcm91dGUucXVlcnlQYXJhbXMucGlwZSh0YWtlVW50aWwodGhpcy5fZGVzdHJveSkpLnN1YnNjcmliZShwID0+IHtcclxuICAgICAgaWYgKCF0aGlzLl9uYXZpZ2F0aW5nKSB7XHJcbiAgICAgICAgdGhpcy5hcmdzID0gdGhpcy5fZnJvbVF1ZXJ5QXJncyhwKTtcclxuICAgICAgICB0aGlzLnZpZXdlci5leGVjdXRlKCk7XHJcbiAgICAgIH0gZWxzZVxyXG4gICAgICAgIHRoaXMuX25hdmlnYXRpbmcgPSBmYWxzZTtcclxuICAgIH0pO1xyXG4gIH1cclxuICBndWlkZSgpIHtcclxuICAgIHRoaXMuX2d1aWRlLnN0YXJ0KHRoaXMucmVwb3J0Lmd1aWRlKTtcclxuICB9XHJcbiAgY2xlYXJGaWx0ZXIoKSB7XHJcbiAgICB0aGlzLmFyZ3MgPSB7fTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IGZhbHNlO1xyXG4gICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBxYXJnc1xyXG4gICAqL1xyXG4gIHByaXZhdGUgX2Zyb21RdWVyeUFyZ3MocWFyZ3M6IGFueSk6IGFueSB7XHJcbiAgICBjb25zdCBhcmdzID0ge307XHJcbiAgICBPYmplY3Qua2V5cyhxYXJncykuZm9yRWFjaChrID0+IHtcclxuICAgICAgY29uc3QgdmFsID0gcWFyZ3Nba107XHJcbiAgICAgIGlmICh2YWwpIHtcclxuICAgICAgICBjb25zdCBhcmd1bWVudCA9IHRoaXMucmVwb3J0LmFyZ3VtZW50cy5maW5kKGEgPT4gYS5uYW1lID09PSBrKTtcclxuICAgICAgICBpZiAoYXJndW1lbnQpXHJcbiAgICAgICAgICBzd2l0Y2ggKGFyZ3VtZW50LnR5cGUpIHtcclxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuRGF0ZTpcclxuICAgICAgICAgICAgICBhcmdzW2tdID0gbmV3IERhdGUodmFsKTtcclxuICAgICAgICAgICAgICBicmVhaztcclxuICAgICAgICAgICAgY2FzZSBGaWVsZFR5cGUuQ2hlY2s6XHJcbiAgICAgICAgICAgICAgYXJnc1trXSA9IHZhbCA9PT0gJ3RydWUnO1xyXG4gICAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgICBkZWZhdWx0OlxyXG4gICAgICAgICAgICAgIGFyZ3Nba10gPSB2YWw7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgYXJnc1trXSA9IHZhbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICByZXR1cm4gYXJncztcclxuICB9XHJcbiAgZmlsdGVyVG9nZ2xlKCkge1xyXG4gICAgdGhpcy5tb2RlID0gJ2ZpbHRlcic7XHJcbiAgICB0aGlzLmZpbHRlci50b2dnbGUoKS50aGVuKCgpID0+IHRoaXMudmlld2VyLnJlc2l6ZSgpKTtcclxuICB9XHJcbiAgLyoqXHJcbiAgICpcclxuICAgKiBAcGFyYW0gaXRlbVxyXG4gICAqL1xyXG4gIGNsaWNrKGl0ZW06IGFueSkge1xyXG4gICAgdGhpcy52aWV3ZXIuZXhwbG9yZShpdGVtKS50aGVuKHIgPT4ge1xyXG4gICAgICB0aGlzLml0ZW0gPSByO1xyXG4gICAgICB0aGlzLm1vZGUgPSAnZXhwbG9yZSc7XHJcbiAgICB9LCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpXHJcbiAgICApO1xyXG4gIH1cclxuICBhcmdzQ2hhbmdlKGFyZ3MpIHtcclxuICAgIHRoaXMuYXJncyA9IGFyZ3M7XHJcbiAgICB0aGlzLnZpZXdlci5leGVjdXRlKCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhcj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwidmlld2VyLmV4ZWN1dGUoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidSZWZyZXNoJyB8IHRyYW5zbGF0ZVwiPjxtYXQtaWNvbiBtYXRBbmltYXRlPVwicm90YXRlXCI+YXV0b3JlbmV3PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8c3BhbiBjbGFzcz1cImRpdmlkZXJcIj48L3NwYW4+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZpZXdlci5leHBvcnRFeGNlbCgpXCIgYml6ZG9jVG9vbHRpcD1cInt7J0Rvd25sb2FkJyB8IHRyYW5zbGF0ZX19XCI+PG1hdC1pY29uPnNhdmVfYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiAoY2xpY2spPVwiZ3VpZGUoKVwiIFtiaXpkb2NUb29sdGlwXT1cIidIZWxwJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwicmVwb3J0Lmd1aWRlXCI+PG1hdC1pY29uPmhlbHBfb3V0bGluZTwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImNsZWFyRmlsdGVyKClcIiBbYml6ZG9jVG9vbHRpcF09XCInQ2xlYXInIHwgdHJhbnNsYXRlXCIgKm5nSWY9XCJoYXNGaWx0ZXJzXCIgW2Rpc2FibGVkXT1cIiFhbnlGaWx0ZXJzXCI+PG1hdC1pY29uPmNsZWFyX2FsbDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImZpbHRlcigkZXZlbnQpXCIgYml6ZG9jVG9vbHRpcD1cInt7J0ZpbHRlcicgfCB0cmFuc2xhdGV9fVwiICpuZ0lmPVwiaGFzRmlsdGVyc1wiPjxtYXQtaWNvbiBbY2xhc3MuZmlsbGVkXT1cImFueUZpbHRlcnNcIj5maWx0ZXJfYWx0PC9tYXQtaWNvbj48L2J1dHRvbj5cclxuPC9tYXQtdG9vbGJhcj5cclxuPG1hdC1zaWRlbmF2LWNvbnRhaW5lciBjbGFzcz1cInBhZ2UtY29udGFpbmVyXCI+XHJcbiAgPG1hdC1zaWRlbmF2LWNvbnRlbnQ+XHJcbiAgICA8Yml6ZG9jLXJlcG9ydC12aWV3ZXIgW3JlcG9ydF09XCJyZXBvcnRcIiBbYXJnc109XCJhcmdzXCI+PC9iaXpkb2MtcmVwb3J0LXZpZXdlcj5cclxuICA8L21hdC1zaWRlbmF2LWNvbnRlbnQ+XHJcbiAgPG1hdC1zaWRlbmF2IG1vZGU9XCJvdmVyXCIgb3BlbmVkPVwiZmFsc2VcIiAjZmlsdGVyIHBvc2l0aW9uPVwiZW5kXCI+XHJcbiAgICA8Yml6ZG9jLXJlcG9ydC1hcmd1bWVudHMgKm5nSWY9XCJ2aWV3ZXIucmVwb3J0UmVmXCIgW2FyZ3NdPVwiYXJnc1wiIChhcmdzQ2hhbmdlKT1cImFyZ3NDaGFuZ2UoJGV2ZW50KVwiIFtyZXBvcnRSZWZdPVwidmlld2VyLnJlcG9ydFJlZlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3RlbXBsYXRlXT1cInJlcG9ydC5hcmd1bWVudHNUZW1wbGF0ZVwiIFthcmd1bWVudHNdPVwicmVwb3J0LmFyZ3VtZW50c1wiPjwvYml6ZG9jLXJlcG9ydC1hcmd1bWVudHM+XHJcbiAgPC9tYXQtc2lkZW5hdj5cclxuPC9tYXQtc2lkZW5hdi1jb250YWluZXI+XHJcbiJdfQ==
@@ -59,6 +59,7 @@ export class ReportPaneComponent {
59
59
  clearFilter() {
60
60
  this.args = {};
61
61
  this.anyFilters = false;
62
+ this._cd.detectChanges();
62
63
  this.viewer.execute();
63
64
  }
64
65
  /**
@@ -92,4 +93,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.3", ngImpor
92
93
  type: HostListener,
93
94
  args: ['window:keydown.f1', ['$event']]
94
95
  }] } });
95
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LnBhbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9yZXBvcnRzL3JlcG9ydC5wYW5lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvcmVwb3J0cy9yZXBvcnQucGFuZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTakUsMkJBQTJCO0FBQzNCLE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsWUFDVSxRQUF3QixFQUN4QixLQUFtQyxFQUNuQyxNQUFhLEVBQ2IsR0FBc0IsRUFDdEIsR0FBa0IsRUFDbEIsTUFBb0I7UUFMcEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBOEI7UUFDbkMsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUNiLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQVg5QixTQUFJLEdBQWEsRUFBRSxDQUFDO1FBRUgsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFVaEQsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLENB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SSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzNCLENBQUM7O2dIQWhFVSxtQkFBbUI7b0dBQW5CLG1CQUFtQix5TEFHbkIscUJBQXFCLDhEQ3hCbEMsc2dDQVNBOzJGRFlhLG1CQUFtQjtrQkFSL0IsU0FBUzsrQkFDRSxvQkFBb0IsUUFHeEI7d0JBQ0osS0FBSyxFQUFFLE1BQU07cUJBQ2Q7c09BS21ELE1BQU07c0JBQXpELFNBQVM7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQXNEbEQsS0FBSztzQkFESixZQUFZO3VCQUFDLG1CQUFtQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIE9uRGVzdHJveSwgVmlld0NoaWxkLCBIb3N0TGlzdGVuZXIsIENoYW5nZURldGVjdG9yUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcbmltcG9ydCB7IEd1aWRlU2VydmljZSB9IGZyb20gJy4uL2NvcmUvZ3VpZGUvZ3VpZGUuc2VydmljZSc7XHJcbmltcG9ydCB7IFJlcG9ydCB9IGZyb20gJy4uL2NvcmUvbW9kZWxzJztcclxuaW1wb3J0IHsgUHJvbXB0U2VydmljZSB9IGZyb20gJy4uL2NvcmUvcHJvbXB0LnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZXNzaW9uU2VydmljZSB9IGZyb20gJy4uL2NvcmUvc2Vzc2lvbi5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUGFuZVJlZiB9IGZyb20gJy4uL2NvcmUvc2xvdHMvcGFuZS1yZWYnO1xyXG5pbXBvcnQgeyBQYXJhbU1hcCB9IGZyb20gJy4uL2NvcmUvY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCB7IFJlcG9ydFZpZXdlckNvbXBvbmVudCB9IGZyb20gJy4vcmVwb3J0LXZpZXdlci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQb3B1cCB9IGZyb20gJy4uL2NvcmUvcG9wdXAvcG9wdXAuc2VydmljZSc7XHJcbmltcG9ydCB7IFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vYXJndW1lbnRzLWNvbXBvbmVudCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2JpemRvYy1yZXBvcnQucGFuZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3JlcG9ydC5wYW5lLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9yZXBvcnQucGFuZS5jb21wb25lbnQuc2NzcyddLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiAncGFuZSdcclxuICB9fSlcclxuLyoqIHJlcG9ydCBzbG90IGNvbXBvbmVudCovXHJcbmV4cG9ydCBjbGFzcyBSZXBvcnRQYW5lQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG4gIHJlcG9ydDogUmVwb3J0O1xyXG4gIGFyZ3M6IFBhcmFtTWFwID0ge307XHJcbiAgQFZpZXdDaGlsZChSZXBvcnRWaWV3ZXJDb21wb25lbnQsIHsgc3RhdGljOiB0cnVlIH0pIHZpZXdlcjogUmVwb3J0Vmlld2VyQ29tcG9uZW50O1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGhhc0ZpbHRlcnM6IGJvb2xlYW47XHJcbiAgYW55RmlsdGVyczogYm9vbGVhbjtcclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgX3Nlc3Npb246IFNlc3Npb25TZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfcGFuZTogUGFuZVJlZjxSZXBvcnRQYW5lQ29tcG9uZW50PixcclxuICAgIHByaXZhdGUgX3BvcHVwOiBQb3B1cCxcclxuICAgIHByaXZhdGUgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHByaXZhdGUgX3NiOiBQcm9tcHRTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBfZ3VpZGU6IEd1aWRlU2VydmljZSkge1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuX3BhbmUucGFyYW1zQ2hhbmdlLnN1YnNjcmliZShwID0+IHtcclxuICAgICAgY29uc3QgaWQgPSBwWydpZCddO1xyXG4gICAgICB0aGlzLnJlcG9ydCA9IHRoaXMuX3Nlc3Npb24ucHJvZmlsZS5yZXBvcnRzLmZpbmQociA9PiByLm5hbWUgPT09IGlkKTtcclxuICAgICAgdGhpcy5oYXNGaWx0ZXJzID0gKHRoaXMucmVwb3J0LmFyZ3VtZW50cyAmJiB0aGlzLnJlcG9ydC5hcmd1bWVudHMubGVuZ3RoID4gMCkgfHwgdGhpcy5yZXBvcnQuYXJndW1lbnRzVGVtcGxhdGUgIT09IHVuZGVmaW5lZDtcclxuICAgICAgdGhpcy5fcGFuZS50aXRsZSA9IHRoaXMucmVwb3J0LnRpdGxlO1xyXG4gICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9KTtcclxuICAgIHRoaXMuX3BhbmUucXVlcnlQYXJhbXNDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+XHJcbiAgICAgIHRoaXMudmlld2VyLmV4ZWN1dGUoKSk7XHJcbiAgICB0aGlzLl9wYW5lLnJlc2l6ZS5zdWJzY3JpYmUoKCkgPT4gdGhpcy52aWV3ZXIucmVzaXplKCkpO1xyXG4gIH1cclxuICBmaWx0ZXIoZXZ0OiBFdmVudCkge1xyXG4gICAgdGhpcy5fcG9wdXAub3BlbihSZXBvcnRBcmd1bWVudHNDb21wb25lbnQsIGV2dC5jdXJyZW50VGFyZ2V0IGFzIEhUTUxFbGVtZW50KS5vcGVuZWQuXHJcbiAgICAgIHN1YnNjcmliZShmID0+IHtcclxuICAgICAgICBmLmFyZ3VtZW50cyA9IHRoaXMucmVwb3J0LmFyZ3VtZW50cztcclxuICAgICAgICBmLnRlbXBsYXRlID0gdGhpcy5yZXBvcnQuYXJndW1lbnRzVGVtcGxhdGU7XHJcbiAgICAgICAgZi5yZXBvcnRSZWYgPSB0aGlzLnZpZXdlci5yZXBvcnRSZWY7XHJcbiAgICAgICAgZi5hcmdzID0gdGhpcy5hcmdzO1xyXG4gICAgICAgIGYuYXJnc0NoYW5nZS5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95KSwgZGVib3VuY2VUaW1lKDE1MCkpLnN1YnNjcmliZShhID0+IHtcclxuICAgICAgICAgIHRoaXMuYXJncyA9IGE7XHJcbiAgICAgICAgICB0aGlzLmFueUZpbHRlcnMgPSBPYmplY3Qua2V5cyhhKS5sZW5ndGggPiAwO1xyXG4gICAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICB9KTtcclxuICB9XHJcbiAgY2xlYXJGaWx0ZXIoKSB7XHJcbiAgICB0aGlzLmFyZ3MgPSB7fTtcclxuICAgIHRoaXMuYW55RmlsdGVycyA9IGZhbHNlO1xyXG4gICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBpdGVtXHJcbiAgICovXHJcbiAgY2xpY2soaXRlbTogYW55KSB7XHJcbiAgICB0aGlzLnZpZXdlci5leHBsb3JlKGl0ZW0pLnRoZW4ociA9PiB7XHJcbiAgICB9LCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpXHJcbiAgICApO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi5mMScsIFsnJGV2ZW50J10pXHJcbiAgZ3VpZGUoZXZ0PzogRXZlbnQgfCBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICB0aGlzLl9ndWlkZS5zdGFydCh0aGlzLnJlcG9ydC5ndWlkZSk7XHJcbiAgICBldnQgJiYgZXZ0LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhciBjbGFzcz1cIm5hdi10b29sYmFyXCI+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZpZXdlci5leGVjdXRlKClcIiBbYml6ZG9jVG9vbHRpcF09XCInUmVmcmVzaCcgfCB0cmFuc2xhdGVcIj48bWF0LWljb24gbWF0QW5pbWF0ZT1cInJvdGF0ZVwiPmF1dG9yZW5ldzwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ2aWV3ZXIuZXhwb3J0RXhjZWwoKVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydEb3dubG9hZCcgfCB0cmFuc2xhdGV9fVwiPjxtYXQtaWNvbj5zYXZlX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImd1aWRlKCRldmVudClcIiBbYml6ZG9jVG9vbHRpcF09XCInSGVscCcgfCB0cmFuc2xhdGVcIiAqbmdJZj1cInJlcG9ydC5ndWlkZVwiPjxtYXQtaWNvbj5oZWxwX291dGxpbmU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjbGVhckZpbHRlcigpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0NsZWFyJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwiaGFzRmlsdGVyc1wiIFtkaXNhYmxlZF09XCIhYW55RmlsdGVyc1wiPjxtYXQtaWNvbj5jbGVhcl9hbGw8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJmaWx0ZXIoJGV2ZW50KVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydGaWx0ZXInIHwgdHJhbnNsYXRlfX1cIiAqbmdJZj1cImhhc0ZpbHRlcnNcIj48bWF0LWljb24gW2NsYXNzLmZpbGxlZF09XCJhbnlGaWx0ZXJzXCI+ZmlsdGVyX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbjwvbWF0LXRvb2xiYXI+XHJcbjxiaXpkb2MtcmVwb3J0LXZpZXdlciBbcmVwb3J0XT1cInJlcG9ydFwiIFthcmdzXT1cImFyZ3NcIiBmeEZsZXg+PC9iaXpkb2MtcmVwb3J0LXZpZXdlcj5cclxuIl19
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwb3J0LnBhbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicmFyaWVzL2NvcmUvc3JjL2xpYi9yZXBvcnRzL3JlcG9ydC5wYW5lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL2xpYnJhcmllcy9jb3JlL3NyYy9saWIvcmVwb3J0cy9yZXBvcnQucGFuZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixTQUFTLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFbEUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sdUJBQXVCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTakUsMkJBQTJCO0FBQzNCLE1BQU0sT0FBTyxtQkFBbUI7SUFPOUIsWUFDVSxRQUF3QixFQUN4QixLQUFtQyxFQUNuQyxNQUFhLEVBQ2IsR0FBc0IsRUFDdEIsR0FBa0IsRUFDbEIsTUFBb0I7UUFMcEIsYUFBUSxHQUFSLFFBQVEsQ0FBZ0I7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBOEI7UUFDbkMsV0FBTSxHQUFOLE1BQU0sQ0FBTztRQUNiLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFFBQUcsR0FBSCxHQUFHLENBQWU7UUFDbEIsV0FBTSxHQUFOLE1BQU0sQ0FBYztRQVg5QixTQUFJLEdBQWEsRUFBRSxDQUFDO1FBSUgsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFRaEQsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxTQUFTLENB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QjtRQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JDLEdBQUcsSUFBSSxHQUFHLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDM0IsQ0FBQzs7Z0hBakVVLG1CQUFtQjtvR0FBbkIsbUJBQW1CLHlMQUduQixxQkFBcUIsOERDeEJsQyxzZ0NBU0E7MkZEWWEsbUJBQW1CO2tCQVIvQixTQUFTOytCQUNFLG9CQUFvQixRQUd4Qjt3QkFDSixLQUFLLEVBQUUsTUFBTTtxQkFDZDtzT0FLbUQsTUFBTTtzQkFBekQsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBdURsRCxLQUFLO3NCQURKLFlBQVk7dUJBQUMsbUJBQW1CLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgT25EZXN0cm95LCBWaWV3Q2hpbGQsIEhvc3RMaXN0ZW5lciwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgR3VpZGVTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9ndWlkZS9ndWlkZS5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUmVwb3J0IH0gZnJvbSAnLi4vY29yZS9tb2RlbHMnO1xyXG5pbXBvcnQgeyBQcm9tcHRTZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9wcm9tcHQuc2VydmljZSc7XHJcbmltcG9ydCB7IFNlc3Npb25TZXJ2aWNlIH0gZnJvbSAnLi4vY29yZS9zZXNzaW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQYW5lUmVmIH0gZnJvbSAnLi4vY29yZS9zbG90cy9wYW5lLXJlZic7XHJcbmltcG9ydCB7IFBhcmFtTWFwIH0gZnJvbSAnLi4vY29yZS9jb25maWd1cmF0aW9uJztcclxuaW1wb3J0IHsgUmVwb3J0Vmlld2VyQ29tcG9uZW50IH0gZnJvbSAnLi9yZXBvcnQtdmlld2VyLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFBvcHVwIH0gZnJvbSAnLi4vY29yZS9wb3B1cC9wb3B1cC5zZXJ2aWNlJztcclxuaW1wb3J0IHsgUmVwb3J0QXJndW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi9hcmd1bWVudHMtY29tcG9uZW50JztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYml6ZG9jLXJlcG9ydC5wYW5lJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcmVwb3J0LnBhbmUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3JlcG9ydC5wYW5lLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaG9zdDoge1xyXG4gICAgY2xhc3M6ICdwYW5lJ1xyXG4gIH19KVxyXG4vKiogcmVwb3J0IHNsb3QgY29tcG9uZW50Ki9cclxuZXhwb3J0IGNsYXNzIFJlcG9ydFBhbmVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcbiAgcmVwb3J0OiBSZXBvcnQ7XHJcbiAgYXJnczogUGFyYW1NYXAgPSB7fTtcclxuICBAVmlld0NoaWxkKFJlcG9ydFZpZXdlckNvbXBvbmVudCwgeyBzdGF0aWM6IHRydWUgfSkgdmlld2VyOiBSZXBvcnRWaWV3ZXJDb21wb25lbnQ7XHJcbiAgaGFzRmlsdGVyczogYm9vbGVhbjtcclxuICBhbnlGaWx0ZXJzOiBib29sZWFuO1xyXG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBfc2Vzc2lvbjogU2Vzc2lvblNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9wYW5lOiBQYW5lUmVmPFJlcG9ydFBhbmVDb21wb25lbnQ+LFxyXG4gICAgcHJpdmF0ZSBfcG9wdXA6IFBvcHVwLFxyXG4gICAgcHJpdmF0ZSBfY2Q6IENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgcHJpdmF0ZSBfc2I6IFByb21wdFNlcnZpY2UsXHJcbiAgICBwcml2YXRlIF9ndWlkZTogR3VpZGVTZXJ2aWNlKSB7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fcGFuZS5wYXJhbXNDaGFuZ2Uuc3Vic2NyaWJlKHAgPT4ge1xyXG4gICAgICBjb25zdCBpZCA9IHBbJ2lkJ107XHJcbiAgICAgIHRoaXMucmVwb3J0ID0gdGhpcy5fc2Vzc2lvbi5wcm9maWxlLnJlcG9ydHMuZmluZChyID0+IHIubmFtZSA9PT0gaWQpO1xyXG4gICAgICB0aGlzLmhhc0ZpbHRlcnMgPSAodGhpcy5yZXBvcnQuYXJndW1lbnRzICYmIHRoaXMucmVwb3J0LmFyZ3VtZW50cy5sZW5ndGggPiAwKSB8fCB0aGlzLnJlcG9ydC5hcmd1bWVudHNUZW1wbGF0ZSAhPT0gdW5kZWZpbmVkO1xyXG4gICAgICB0aGlzLl9wYW5lLnRpdGxlID0gdGhpcy5yZXBvcnQudGl0bGU7XHJcbiAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH0pO1xyXG4gICAgdGhpcy5fcGFuZS5xdWVyeVBhcmFtc0NoYW5nZS5zdWJzY3JpYmUoKCkgPT5cclxuICAgICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpKTtcclxuICAgIHRoaXMuX3BhbmUucmVzaXplLnN1YnNjcmliZSgoKSA9PiB0aGlzLnZpZXdlci5yZXNpemUoKSk7XHJcbiAgfVxyXG4gIGZpbHRlcihldnQ6IEV2ZW50KSB7XHJcbiAgICB0aGlzLl9wb3B1cC5vcGVuKFJlcG9ydEFyZ3VtZW50c0NvbXBvbmVudCwgZXZ0LmN1cnJlbnRUYXJnZXQgYXMgSFRNTEVsZW1lbnQpLm9wZW5lZC5cclxuICAgICAgc3Vic2NyaWJlKGYgPT4ge1xyXG4gICAgICAgIGYuYXJndW1lbnRzID0gdGhpcy5yZXBvcnQuYXJndW1lbnRzO1xyXG4gICAgICAgIGYudGVtcGxhdGUgPSB0aGlzLnJlcG9ydC5hcmd1bWVudHNUZW1wbGF0ZTtcclxuICAgICAgICBmLnJlcG9ydFJlZiA9IHRoaXMudmlld2VyLnJlcG9ydFJlZjtcclxuICAgICAgICBmLmFyZ3MgPSB0aGlzLmFyZ3M7XHJcbiAgICAgICAgZi5hcmdzQ2hhbmdlLnBpcGUodGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kpLCBkZWJvdW5jZVRpbWUoMTUwKSkuc3Vic2NyaWJlKGEgPT4ge1xyXG4gICAgICAgICAgdGhpcy5hcmdzID0gYTtcclxuICAgICAgICAgIHRoaXMuYW55RmlsdGVycyA9IE9iamVjdC5rZXlzKGEpLmxlbmd0aCA+IDA7XHJcbiAgICAgICAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICB0aGlzLnZpZXdlci5leGVjdXRlKCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuICBjbGVhckZpbHRlcigpIHtcclxuICAgIHRoaXMuYXJncyA9IHt9O1xyXG4gICAgdGhpcy5hbnlGaWx0ZXJzID0gZmFsc2U7XHJcbiAgICB0aGlzLl9jZC5kZXRlY3RDaGFuZ2VzKCk7IFxyXG4gICAgdGhpcy52aWV3ZXIuZXhlY3V0ZSgpO1xyXG4gIH1cclxuICAvKipcclxuICAgKlxyXG4gICAqIEBwYXJhbSBpdGVtXHJcbiAgICovXHJcbiAgY2xpY2soaXRlbTogYW55KSB7XHJcbiAgICB0aGlzLnZpZXdlci5leHBsb3JlKGl0ZW0pLnRoZW4ociA9PiB7XHJcbiAgICB9LCAoKSA9PiB0aGlzLl9zYi5lcnJvcigpXHJcbiAgICApO1xyXG4gIH1cclxuICBASG9zdExpc3RlbmVyKCd3aW5kb3c6a2V5ZG93bi5mMScsIFsnJGV2ZW50J10pXHJcbiAgZ3VpZGUoZXZ0PzogRXZlbnQgfCBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICB0aGlzLl9ndWlkZS5zdGFydCh0aGlzLnJlcG9ydC5ndWlkZSk7XHJcbiAgICBldnQgJiYgZXZ0LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgdGhpcy5fZGVzdHJveS5uZXh0KCk7XHJcbiAgICB0aGlzLl9kZXN0cm95LmNvbXBsZXRlKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxtYXQtdG9vbGJhciBjbGFzcz1cIm5hdi10b29sYmFyXCI+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cInZpZXdlci5leGVjdXRlKClcIiBbYml6ZG9jVG9vbHRpcF09XCInUmVmcmVzaCcgfCB0cmFuc2xhdGVcIj48bWF0LWljb24gbWF0QW5pbWF0ZT1cInJvdGF0ZVwiPmF1dG9yZW5ldzwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPHNwYW4gY2xhc3M9XCJkaXZpZGVyXCI+PC9zcGFuPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJ2aWV3ZXIuZXhwb3J0RXhjZWwoKVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydEb3dubG9hZCcgfCB0cmFuc2xhdGV9fVwiPjxtYXQtaWNvbj5zYXZlX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbiAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImd1aWRlKCRldmVudClcIiBbYml6ZG9jVG9vbHRpcF09XCInSGVscCcgfCB0cmFuc2xhdGVcIiAqbmdJZj1cInJlcG9ydC5ndWlkZVwiPjxtYXQtaWNvbj5oZWxwX291dGxpbmU8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJjbGVhckZpbHRlcigpXCIgW2JpemRvY1Rvb2x0aXBdPVwiJ0NsZWFyJyB8IHRyYW5zbGF0ZVwiICpuZ0lmPVwiaGFzRmlsdGVyc1wiIFtkaXNhYmxlZF09XCIhYW55RmlsdGVyc1wiPjxtYXQtaWNvbj5jbGVhcl9hbGw8L21hdC1pY29uPjwvYnV0dG9uPlxyXG4gIDxidXR0b24gbWF0LWljb24tYnV0dG9uIChjbGljayk9XCJmaWx0ZXIoJGV2ZW50KVwiIGJpemRvY1Rvb2x0aXA9XCJ7eydGaWx0ZXInIHwgdHJhbnNsYXRlfX1cIiAqbmdJZj1cImhhc0ZpbHRlcnNcIj48bWF0LWljb24gW2NsYXNzLmZpbGxlZF09XCJhbnlGaWx0ZXJzXCI+ZmlsdGVyX2FsdDwvbWF0LWljb24+PC9idXR0b24+XHJcbjwvbWF0LXRvb2xiYXI+XHJcbjxiaXpkb2MtcmVwb3J0LXZpZXdlciBbcmVwb3J0XT1cInJlcG9ydFwiIFthcmdzXT1cImFyZ3NcIiBmeEZsZXg+PC9iaXpkb2MtcmVwb3J0LXZpZXdlcj5cclxuIl19