@koalarx/ui 13.2.10 → 14.0.0

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 (187) hide show
  1. package/alert/esm2020/lib/dialog-alert.component.mjs +8 -8
  2. package/alert/esm2020/lib/koala.alert.module.mjs +10 -12
  3. package/alert/esm2020/lib/koala.alert.service.mjs +4 -4
  4. package/alert/fesm2015/koalarx-ui-alert.mjs +22 -24
  5. package/alert/fesm2015/koalarx-ui-alert.mjs.map +1 -1
  6. package/alert/fesm2020/koalarx-ui-alert.mjs +22 -24
  7. package/alert/fesm2020/koalarx-ui-alert.mjs.map +1 -1
  8. package/alert/lib/dialog-alert.component.d.ts +1 -1
  9. package/alert/package.json +2 -2
  10. package/button/esm2020/lib/button.component.mjs +9 -9
  11. package/button/esm2020/lib/koala.button.module.mjs +9 -11
  12. package/button/fesm2015/koalarx-ui-button.mjs +18 -20
  13. package/button/fesm2015/koalarx-ui-button.mjs.map +1 -1
  14. package/button/fesm2020/koalarx-ui-button.mjs +18 -20
  15. package/button/fesm2020/koalarx-ui-button.mjs.map +1 -1
  16. package/button/lib/button.component.d.ts +1 -1
  17. package/button/package.json +2 -2
  18. package/common/esm2020/lib/services/csv/koala.csv.service.mjs +4 -4
  19. package/common/esm2020/lib/services/xlsx/koala.xlsx.service.mjs +4 -4
  20. package/common/fesm2015/koalarx-ui-common.mjs +6 -6
  21. package/common/fesm2015/koalarx-ui-common.mjs.map +1 -1
  22. package/common/fesm2020/koalarx-ui-common.mjs +6 -6
  23. package/common/fesm2020/koalarx-ui-common.mjs.map +1 -1
  24. package/common/package.json +2 -2
  25. package/core/esm2020/lib/loader/loader-bar-page.component.mjs +6 -6
  26. package/core/esm2020/lib/ngx-koala.module.mjs +8 -10
  27. package/core/esm2020/lib/page/koala.page.module.mjs +16 -18
  28. package/core/esm2020/lib/page/notifications/notification.component.mjs +11 -11
  29. package/core/esm2020/lib/page/page.component.mjs +11 -11
  30. package/core/esm2020/lib/router/koala.parameter-hash-location-stategy.mjs +4 -4
  31. package/core/esm2020/lib/services/api-requester/koala.api-requester.service.mjs +4 -4
  32. package/core/esm2020/lib/services/loader/koala.loader.service.mjs +4 -4
  33. package/core/esm2020/lib/services/openid/koala.oauth2.service.mjs +4 -4
  34. package/core/esm2020/lib/services/request/koala.request.service.mjs +4 -4
  35. package/core/esm2020/lib/services/token/koala.token.service.mjs +4 -4
  36. package/core/fesm2015/koalarx-ui-core.mjs +75 -79
  37. package/core/fesm2015/koalarx-ui-core.mjs.map +1 -1
  38. package/core/fesm2020/koalarx-ui-core.mjs +75 -79
  39. package/core/fesm2020/koalarx-ui-core.mjs.map +1 -1
  40. package/core/lib/loader/loader-bar-page.component.d.ts +1 -1
  41. package/core/lib/page/notifications/notification.component.d.ts +1 -1
  42. package/core/lib/page/page.component.d.ts +1 -1
  43. package/core/package.json +2 -2
  44. package/dialog/esm2020/lib/dialog.component.mjs +7 -7
  45. package/dialog/esm2020/lib/koala.dialog.module.mjs +8 -10
  46. package/dialog/esm2020/lib/koala.dialog.service.mjs +4 -4
  47. package/dialog/fesm2015/koalarx-ui-dialog.mjs +17 -19
  48. package/dialog/fesm2015/koalarx-ui-dialog.mjs.map +1 -1
  49. package/dialog/fesm2020/koalarx-ui-dialog.mjs +17 -19
  50. package/dialog/fesm2020/koalarx-ui-dialog.mjs.map +1 -1
  51. package/dialog/lib/dialog.component.d.ts +1 -1
  52. package/dialog/package.json +2 -2
  53. package/dynamic-component/esm2020/lib/koala-dynamic-component.directive.mjs +4 -4
  54. package/dynamic-component/esm2020/lib/koala-dynamic-component.factory.mjs +5 -5
  55. package/dynamic-component/esm2020/lib/koala-dynamic-component.module.mjs +5 -5
  56. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs +11 -11
  57. package/dynamic-component/fesm2015/koalarx-ui-dynamic-component.mjs.map +1 -1
  58. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs +11 -11
  59. package/dynamic-component/fesm2020/koalarx-ui-dynamic-component.mjs.map +1 -1
  60. package/dynamic-component/lib/koala-dynamic-component.directive.d.ts +1 -1
  61. package/dynamic-component/lib/koala-dynamic-component.factory.d.ts +1 -1
  62. package/dynamic-component/package.json +2 -2
  63. package/file-button/esm2020/lib/file-button.component.mjs +8 -8
  64. package/file-button/esm2020/lib/koala.btn-file.service.mjs +4 -4
  65. package/file-button/esm2020/lib/koala.file-button.module.mjs +8 -10
  66. package/file-button/fesm2015/koalarx-ui-file-button.mjs +19 -21
  67. package/file-button/fesm2015/koalarx-ui-file-button.mjs.map +1 -1
  68. package/file-button/fesm2020/koalarx-ui-file-button.mjs +19 -21
  69. package/file-button/fesm2020/koalarx-ui-file-button.mjs.map +1 -1
  70. package/file-button/lib/file-button.component.d.ts +1 -1
  71. package/file-button/package.json +2 -2
  72. package/folder-page/esm2020/lib/folder.component.mjs +8 -8
  73. package/folder-page/esm2020/lib/koala.folder-page.module.mjs +9 -11
  74. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs +17 -19
  75. package/folder-page/fesm2015/koalarx-ui-folder-page.mjs.map +1 -1
  76. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs +17 -19
  77. package/folder-page/fesm2020/koalarx-ui-folder-page.mjs.map +1 -1
  78. package/folder-page/lib/folder.component.d.ts +1 -1
  79. package/folder-page/package.json +2 -2
  80. package/form/esm2020/lib/btn-submit/btn-submit.component.mjs +7 -7
  81. package/form/esm2020/lib/directives/koala-autofocus.directive.mjs +4 -4
  82. package/form/esm2020/lib/dynamic-form/builder/dynamic-form.builder.mjs +1 -1
  83. package/form/esm2020/lib/dynamic-form/builder/fields/autocomplete.builder.mjs +1 -1
  84. package/form/esm2020/lib/dynamic-form/builder/fields/field.base.mjs +1 -1
  85. package/form/esm2020/lib/dynamic-form/builder/fields/field.builder.mjs +1 -1
  86. package/form/esm2020/lib/dynamic-form/builder/fields/more-items.builder.mjs +1 -1
  87. package/form/esm2020/lib/dynamic-form/dynamic-form.component.mjs +24 -24
  88. package/form/esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.mjs +1 -1
  89. package/form/esm2020/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.mjs +1 -1
  90. package/form/esm2020/lib/dynamic-form/koala.dynamic-form.service.mjs +5 -5
  91. package/form/esm2020/lib/form.abstract.mjs +1 -1
  92. package/form/esm2020/lib/koala.form.module.mjs +21 -23
  93. package/form/esm2020/lib/show-invalid-fields/show-invalid-fields.mjs +1 -1
  94. package/form/fesm2015/koalarx-ui-form.mjs +63 -65
  95. package/form/fesm2015/koalarx-ui-form.mjs.map +1 -1
  96. package/form/fesm2020/koalarx-ui-form.mjs +63 -65
  97. package/form/fesm2020/koalarx-ui-form.mjs.map +1 -1
  98. package/form/lib/btn-submit/btn-submit.component.d.ts +3 -3
  99. package/form/lib/directives/koala-autofocus.directive.d.ts +1 -1
  100. package/form/lib/dynamic-form/builder/dynamic-form.builder.d.ts +2 -2
  101. package/form/lib/dynamic-form/builder/fields/autocomplete.builder.d.ts +2 -2
  102. package/form/lib/dynamic-form/builder/fields/field.base.d.ts +3 -3
  103. package/form/lib/dynamic-form/builder/fields/field.builder.d.ts +2 -2
  104. package/form/lib/dynamic-form/builder/fields/more-items.builder.d.ts +2 -2
  105. package/form/lib/dynamic-form/dynamic-form.component.d.ts +5 -5
  106. package/form/lib/dynamic-form/interfaces/koala.dynamic-form-config.interface.d.ts +2 -2
  107. package/form/lib/dynamic-form/interfaces/koala.dynamic-form-field.interface.d.ts +2 -2
  108. package/form/lib/dynamic-form/koala.dynamic-form.service.d.ts +7 -7
  109. package/form/lib/form.abstract.d.ts +2 -2
  110. package/form/lib/show-invalid-fields/show-invalid-fields.d.ts +2 -2
  111. package/form/package.json +2 -2
  112. package/icon/esm2020/lib/icon.component.mjs +4 -4
  113. package/icon/esm2020/lib/koala.icon.module.mjs +5 -7
  114. package/icon/fesm2015/koalarx-ui-icon.mjs +7 -9
  115. package/icon/fesm2015/koalarx-ui-icon.mjs.map +1 -1
  116. package/icon/fesm2020/koalarx-ui-icon.mjs +7 -9
  117. package/icon/fesm2020/koalarx-ui-icon.mjs.map +1 -1
  118. package/icon/lib/icon.component.d.ts +1 -1
  119. package/icon/package.json +2 -2
  120. package/icons-animated/esm2020/lib/icons/downloading/downloading-icon-animated.component.mjs +4 -4
  121. package/icons-animated/esm2020/lib/icons/loading/loading-icon-animated.component.mjs +4 -4
  122. package/icons-animated/esm2020/lib/icons-animated.component.mjs +7 -7
  123. package/icons-animated/esm2020/lib/icons-animated.service.mjs +4 -4
  124. package/icons-animated/esm2020/lib/koala-icons-animated.module.mjs +5 -7
  125. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs +17 -19
  126. package/icons-animated/fesm2015/koalarx-ui-icons-animated.mjs.map +1 -1
  127. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs +17 -19
  128. package/icons-animated/fesm2020/koalarx-ui-icons-animated.mjs.map +1 -1
  129. package/icons-animated/lib/icons/downloading/downloading-icon-animated.component.d.ts +1 -1
  130. package/icons-animated/lib/icons/loading/loading-icon-animated.component.d.ts +1 -1
  131. package/icons-animated/lib/icons-animated.component.d.ts +1 -1
  132. package/icons-animated/package.json +2 -2
  133. package/list/esm2020/lib/koala.list.module.mjs +15 -17
  134. package/list/esm2020/lib/koala.list.service.mjs +4 -4
  135. package/list/esm2020/lib/list.abstract.mjs +1 -1
  136. package/list/esm2020/lib/list.component.mjs +20 -20
  137. package/list/esm2020/lib/providers/pagination/pagination.provider.mjs +4 -4
  138. package/list/fesm2015/koalarx-ui-list.mjs +40 -42
  139. package/list/fesm2015/koalarx-ui-list.mjs.map +1 -1
  140. package/list/fesm2020/koalarx-ui-list.mjs +40 -42
  141. package/list/fesm2020/koalarx-ui-list.mjs.map +1 -1
  142. package/list/lib/list.abstract.d.ts +2 -2
  143. package/list/lib/list.component.d.ts +4 -4
  144. package/list/package.json +2 -2
  145. package/menu/esm2020/lib/koala.menu.module.mjs +8 -10
  146. package/menu/esm2020/lib/koala.menu.service.mjs +4 -4
  147. package/menu/esm2020/lib/menu.component.mjs +7 -7
  148. package/menu/fesm2015/koalarx-ui-menu.mjs +17 -19
  149. package/menu/fesm2015/koalarx-ui-menu.mjs.map +1 -1
  150. package/menu/fesm2020/koalarx-ui-menu.mjs +17 -19
  151. package/menu/fesm2020/koalarx-ui-menu.mjs.map +1 -1
  152. package/menu/lib/menu.component.d.ts +1 -1
  153. package/menu/package.json +2 -2
  154. package/package.json +6 -6
  155. package/question/esm2020/lib/dialog-question.component.mjs +9 -9
  156. package/question/esm2020/lib/koala.question.module.mjs +9 -11
  157. package/question/esm2020/lib/koala.question.service.mjs +4 -4
  158. package/question/fesm2015/koalarx-ui-question.mjs +21 -23
  159. package/question/fesm2015/koalarx-ui-question.mjs.map +1 -1
  160. package/question/fesm2020/koalarx-ui-question.mjs +21 -23
  161. package/question/fesm2020/koalarx-ui-question.mjs.map +1 -1
  162. package/question/lib/dialog-question.component.d.ts +1 -1
  163. package/question/package.json +2 -2
  164. package/snackbar/esm2020/lib/koala.snackbar.component.mjs +4 -4
  165. package/snackbar/esm2020/lib/koala.snackbar.module.mjs +7 -9
  166. package/snackbar/esm2020/lib/koala.snackbar.service.mjs +4 -4
  167. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs +12 -14
  168. package/snackbar/fesm2015/koalarx-ui-snackbar.mjs.map +1 -1
  169. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs +12 -14
  170. package/snackbar/fesm2020/koalarx-ui-snackbar.mjs.map +1 -1
  171. package/snackbar/lib/koala.snackbar.component.d.ts +1 -1
  172. package/snackbar/package.json +2 -2
  173. package/alert/koalarx-ui-alert.d.ts +0 -5
  174. package/button/koalarx-ui-button.d.ts +0 -5
  175. package/common/koalarx-ui-common.d.ts +0 -5
  176. package/core/koalarx-ui-core.d.ts +0 -5
  177. package/dialog/koalarx-ui-dialog.d.ts +0 -5
  178. package/dynamic-component/koalarx-ui-dynamic-component.d.ts +0 -5
  179. package/file-button/koalarx-ui-file-button.d.ts +0 -5
  180. package/folder-page/koalarx-ui-folder-page.d.ts +0 -5
  181. package/form/koalarx-ui-form.d.ts +0 -5
  182. package/icon/koalarx-ui-icon.d.ts +0 -5
  183. package/icons-animated/koalarx-ui-icons-animated.d.ts +0 -5
  184. package/list/koalarx-ui-list.d.ts +0 -5
  185. package/menu/koalarx-ui-menu.d.ts +0 -5
  186. package/question/koalarx-ui-question.d.ts +0 -5
  187. package/snackbar/koalarx-ui-snackbar.d.ts +0 -5
@@ -1,7 +1,7 @@
1
1
  import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/progress-bar";
4
- import * as i2 from "@angular/common";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/material/progress-bar";
5
5
  export class LoaderBarPageComponent {
6
6
  constructor() {
7
7
  this.show = false;
@@ -9,9 +9,9 @@ export class LoaderBarPageComponent {
9
9
  this.typeLoader = 'indeterminate';
10
10
  }
11
11
  }
12
- LoaderBarPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoaderBarPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
- LoaderBarPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: LoaderBarPageComponent, selector: "app-loader-page", inputs: { show: "show", progress: "progress", typeLoader: "typeLoader" }, ngImport: i0, template: "<div [ngClass]=\"{'bouncedInDown d-block': show}\" class=\"animated loader-bar-page\">\n <mat-progress-bar\n [bufferValue]=\"progress\"\n [mode]=\"typeLoader\"\n [value]=\"progress\"\n color=\"primary\">\n </mat-progress-bar>\n</div>\n", styles: [".loader-bar-page{position:absolute;display:none;top:0;left:0;width:100vw;height:100vh;z-index:100000}\n"], components: [{ type: i1.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], directives: [{ type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: LoaderBarPageComponent, decorators: [{
12
+ LoaderBarPageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: LoaderBarPageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ LoaderBarPageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: LoaderBarPageComponent, selector: "app-loader-page", inputs: { show: "show", progress: "progress", typeLoader: "typeLoader" }, ngImport: i0, template: "<div [ngClass]=\"{'bouncedInDown d-block': show}\" class=\"animated loader-bar-page\">\n <mat-progress-bar\n [bufferValue]=\"progress\"\n [mode]=\"typeLoader\"\n [value]=\"progress\"\n color=\"primary\">\n </mat-progress-bar>\n</div>\n", styles: [".loader-bar-page{position:absolute;display:none;top:0;left:0;width:100vw;height:100vh;z-index:100000}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i2.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: LoaderBarPageComponent, decorators: [{
15
15
  type: Component,
16
16
  args: [{ selector: 'app-loader-page', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div [ngClass]=\"{'bouncedInDown d-block': show}\" class=\"animated loader-bar-page\">\n <mat-progress-bar\n [bufferValue]=\"progress\"\n [mode]=\"typeLoader\"\n [value]=\"progress\"\n color=\"primary\">\n </mat-progress-bar>\n</div>\n", styles: [".loader-bar-page{position:absolute;display:none;top:0;left:0;width:100vw;height:100vh;z-index:100000}\n"] }]
17
17
  }], propDecorators: { show: [{
@@ -21,4 +21,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
21
21
  }], typeLoader: [{
22
22
  type: Input
23
23
  }] } });
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUzFFLE1BQU0sT0FBTyxzQkFBc0I7SUFObkM7UUFPVyxTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsZUFBVSxHQUFvQixlQUFlLENBQUM7S0FDeEQ7O29IQUpZLHNCQUFzQjt3R0FBdEIsc0JBQXNCLGlJQ1RuQywyUEFRQTs0RkRDYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWxvYWRlci1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICdsb2FkZXItYmFyLXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExvYWRlckJhclBhZ2VDb21wb25lbnQge1xuICBASW5wdXQoKSBzaG93OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHByb2dyZXNzOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSB0eXBlTG9hZGVyOiBQcm9ncmVzc0Jhck1vZGUgPSAnaW5kZXRlcm1pbmF0ZSc7XG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cInsnYm91bmNlZEluRG93biBkLWJsb2NrJzogc2hvd31cIiBjbGFzcz1cImFuaW1hdGVkIGxvYWRlci1iYXItcGFnZVwiPlxuICA8bWF0LXByb2dyZXNzLWJhclxuICAgIFtidWZmZXJWYWx1ZV09XCJwcm9ncmVzc1wiXG4gICAgW21vZGVdPVwidHlwZUxvYWRlclwiXG4gICAgW3ZhbHVlXT1cInByb2dyZXNzXCJcbiAgICBjb2xvcj1cInByaW1hcnlcIj5cbiAgPC9tYXQtcHJvZ3Jlc3MtYmFyPlxuPC9kaXY+XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9sb2FkZXIvbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBUzFFLE1BQU0sT0FBTyxzQkFBc0I7SUFObkM7UUFPVyxTQUFJLEdBQVksS0FBSyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxDQUFDLENBQUM7UUFDckIsZUFBVSxHQUFvQixlQUFlLENBQUM7S0FDeEQ7O21IQUpZLHNCQUFzQjt1R0FBdEIsc0JBQXNCLGlJQ1RuQywyUEFRQTsyRkRDYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU07OEJBR3RDLElBQUk7c0JBQVosS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NCYXJNb2RlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWxvYWRlci1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICdsb2FkZXItYmFyLXBhZ2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbG9hZGVyLWJhci1wYWdlLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIExvYWRlckJhclBhZ2VDb21wb25lbnQge1xuICBASW5wdXQoKSBzaG93OiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIHByb2dyZXNzOiBudW1iZXIgPSAwO1xuICBASW5wdXQoKSB0eXBlTG9hZGVyOiBQcm9ncmVzc0Jhck1vZGUgPSAnaW5kZXRlcm1pbmF0ZSc7XG59XG4iLCI8ZGl2IFtuZ0NsYXNzXT1cInsnYm91bmNlZEluRG93biBkLWJsb2NrJzogc2hvd31cIiBjbGFzcz1cImFuaW1hdGVkIGxvYWRlci1iYXItcGFnZVwiPlxuICA8bWF0LXByb2dyZXNzLWJhclxuICAgIFtidWZmZXJWYWx1ZV09XCJwcm9ncmVzc1wiXG4gICAgW21vZGVdPVwidHlwZUxvYWRlclwiXG4gICAgW3ZhbHVlXT1cInByb2dyZXNzXCJcbiAgICBjb2xvcj1cInByaW1hcnlcIj5cbiAgPC9tYXQtcHJvZ3Jlc3MtYmFyPlxuPC9kaXY+XG4iXX0=
@@ -16,20 +16,18 @@ export class NgxKoalaModule {
16
16
  };
17
17
  }
18
18
  }
19
- NgxKoalaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgxKoalaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
- NgxKoalaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgxKoalaModule, imports: [CommonModule,
19
+ NgxKoalaModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: NgxKoalaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
20
+ NgxKoalaModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: NgxKoalaModule, imports: [CommonModule,
21
21
  HttpClientModule,
22
22
  KoalaPageModule], exports: [HttpClientModule,
23
23
  KoalaPageModule] });
24
- NgxKoalaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgxKoalaModule, providers: [
24
+ NgxKoalaModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: NgxKoalaModule, providers: [
25
25
  KoalaOAuth2Service
26
- ], imports: [[
27
- CommonModule,
28
- HttpClientModule,
29
- KoalaPageModule
30
- ], HttpClientModule,
26
+ ], imports: [CommonModule,
27
+ HttpClientModule,
28
+ KoalaPageModule, HttpClientModule,
31
29
  KoalaPageModule] });
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NgxKoalaModule, decorators: [{
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: NgxKoalaModule, decorators: [{
33
31
  type: NgModule,
34
32
  args: [{
35
33
  imports: [
@@ -46,4 +44,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
46
44
  ]
47
45
  }]
48
46
  }] });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWtvYWxhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9uZ3gta29hbGEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQTZCLE1BQU0saUNBQWlDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQWdCM0QsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFzQztRQUNuRCxXQUFXLENBQUMsb0JBQW9CLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixJQUFJLHFCQUFxQixDQUFDO1FBQzdGLFdBQVcsQ0FBQyxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUM7UUFFaEYsZ0JBQWdCLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUzQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7U0FDaEMsQ0FBQztJQUNKLENBQUM7OzRHQVhVLGNBQWM7NkdBQWQsY0FBYyxZQVp2QixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGVBQWUsYUFHZixnQkFBZ0I7UUFDaEIsZUFBZTs2R0FNTixjQUFjLGFBSmQ7UUFDVCxrQkFBa0I7S0FDbkIsWUFYUTtZQUNQLFlBQVk7WUFDWixnQkFBZ0I7WUFDaEIsZUFBZTtTQUNoQixFQUVDLGdCQUFnQjtRQUNoQixlQUFlOzRGQU1OLGNBQWM7a0JBZDFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osZ0JBQWdCO3dCQUNoQixlQUFlO3FCQUNoQjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsZ0JBQWdCO3dCQUNoQixlQUFlO3FCQUNoQjtvQkFDRCxTQUFTLEVBQUU7d0JBQ1Qsa0JBQWtCO3FCQUNuQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgSHR0cENsaWVudE1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEtvYWxhT0F1dGgyU2VydmljZSB9IGZyb20gXCIuL3NlcnZpY2VzL29wZW5pZC9rb2FsYS5vYXV0aDIuc2VydmljZVwiO1xuaW1wb3J0IHsgS29hbGFFbnZpcm9ubWVudCwgS29hbGFFbnZpcm9ubWVudEludGVyZmFjZSB9IGZyb20gXCIuL2Vudmlyb25tZW50cy9rb2FsYUVudmlyb25tZW50XCI7XG5pbXBvcnQgeyBLb2FsYVBhZ2VNb2R1bGUgfSBmcm9tIFwiLi9wYWdlL2tvYWxhLnBhZ2UubW9kdWxlXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgSHR0cENsaWVudE1vZHVsZSxcbiAgICBLb2FsYVBhZ2VNb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgS29hbGFQYWdlTW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIEtvYWxhT0F1dGgyU2VydmljZVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIE5neEtvYWxhTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoZW52aXJvbm1lbnQ6IEtvYWxhRW52aXJvbm1lbnRJbnRlcmZhY2UpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neEtvYWxhTW9kdWxlPiB7XG4gICAgZW52aXJvbm1lbnQuc3RvcmFnZU9BdXRoVHlwZU5hbWUgPSBlbnZpcm9ubWVudC5zdG9yYWdlT0F1dGhUeXBlTmFtZSA/PyAna29hbGFfdWlfb2F1dGhfdHlwZSc7XG4gICAgZW52aXJvbm1lbnQuc3RvcmFnZVRva2VuTmFtZSA9IGVudmlyb25tZW50LnN0b3JhZ2VUb2tlbk5hbWUgPz8gJ2tvYWxhX3VpX3Rva2VuJztcblxuICAgIEtvYWxhRW52aXJvbm1lbnQuZW52aXJvbm1lbnQgPSBlbnZpcm9ubWVudDtcblxuICAgIHJldHVybiB7XG4gICAgICBuZ01vZHVsZTogTmd4S29hbGFNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtLb2FsYU9BdXRoMlNlcnZpY2VdXG4gICAgfTtcbiAgfVxufVxuIl19
47
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWtvYWxhLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9uZ3gta29hbGEubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM1RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQTZCLE1BQU0saUNBQWlDLENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQWdCM0QsTUFBTSxPQUFPLGNBQWM7SUFDekIsTUFBTSxDQUFDLE9BQU8sQ0FBQyxXQUFzQztRQUNuRCxXQUFXLENBQUMsb0JBQW9CLEdBQUcsV0FBVyxDQUFDLG9CQUFvQixJQUFJLHFCQUFxQixDQUFDO1FBQzdGLFdBQVcsQ0FBQyxnQkFBZ0IsR0FBRyxXQUFXLENBQUMsZ0JBQWdCLElBQUksZ0JBQWdCLENBQUM7UUFFaEYsZ0JBQWdCLENBQUMsV0FBVyxHQUFHLFdBQVcsQ0FBQztRQUUzQyxPQUFPO1lBQ0wsUUFBUSxFQUFFLGNBQWM7WUFDeEIsU0FBUyxFQUFFLENBQUMsa0JBQWtCLENBQUM7U0FDaEMsQ0FBQztJQUNKLENBQUM7OzJHQVhVLGNBQWM7NEdBQWQsY0FBYyxZQVp2QixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGVBQWUsYUFHZixnQkFBZ0I7UUFDaEIsZUFBZTs0R0FNTixjQUFjLGFBSmQ7UUFDVCxrQkFBa0I7S0FDbkIsWUFWQyxZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGVBQWUsRUFHZixnQkFBZ0I7UUFDaEIsZUFBZTsyRkFNTixjQUFjO2tCQWQxQixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDaEI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGdCQUFnQjt3QkFDaEIsZUFBZTtxQkFDaEI7b0JBQ0QsU0FBUyxFQUFFO3dCQUNULGtCQUFrQjtxQkFDbkI7aUJBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBLb2FsYU9BdXRoMlNlcnZpY2UgfSBmcm9tIFwiLi9zZXJ2aWNlcy9vcGVuaWQva29hbGEub2F1dGgyLnNlcnZpY2VcIjtcbmltcG9ydCB7IEtvYWxhRW52aXJvbm1lbnQsIEtvYWxhRW52aXJvbm1lbnRJbnRlcmZhY2UgfSBmcm9tIFwiLi9lbnZpcm9ubWVudHMva29hbGFFbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgS29hbGFQYWdlTW9kdWxlIH0gZnJvbSBcIi4vcGFnZS9rb2FsYS5wYWdlLm1vZHVsZVwiO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIEh0dHBDbGllbnRNb2R1bGUsXG4gICAgS29hbGFQYWdlTW9kdWxlXG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBIdHRwQ2xpZW50TW9kdWxlLFxuICAgIEtvYWxhUGFnZU1vZHVsZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICBLb2FsYU9BdXRoMlNlcnZpY2VcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hLb2FsYU1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KGVudmlyb25tZW50OiBLb2FsYUVudmlyb25tZW50SW50ZXJmYWNlKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hLb2FsYU1vZHVsZT4ge1xuICAgIGVudmlyb25tZW50LnN0b3JhZ2VPQXV0aFR5cGVOYW1lID0gZW52aXJvbm1lbnQuc3RvcmFnZU9BdXRoVHlwZU5hbWUgPz8gJ2tvYWxhX3VpX29hdXRoX3R5cGUnO1xuICAgIGVudmlyb25tZW50LnN0b3JhZ2VUb2tlbk5hbWUgPSBlbnZpcm9ubWVudC5zdG9yYWdlVG9rZW5OYW1lID8/ICdrb2FsYV91aV90b2tlbic7XG5cbiAgICBLb2FsYUVudmlyb25tZW50LmVudmlyb25tZW50ID0gZW52aXJvbm1lbnQ7XG5cbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5neEtvYWxhTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbS29hbGFPQXV0aDJTZXJ2aWNlXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -17,8 +17,8 @@ import { RouterModule } from "@angular/router";
17
17
  import * as i0 from "@angular/core";
18
18
  export class KoalaPageModule {
19
19
  }
20
- KoalaPageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
21
- KoalaPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaPageModule, declarations: [PageComponent,
20
+ KoalaPageModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaPageModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
21
+ KoalaPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.3", ngImport: i0, type: KoalaPageModule, declarations: [PageComponent,
22
22
  NotificationComponent,
23
23
  LoaderBarPageComponent], imports: [CommonModule,
24
24
  RouterModule,
@@ -33,21 +33,19 @@ KoalaPageModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version
33
33
  MatListModule,
34
34
  MatMenuModule], exports: [PageComponent,
35
35
  RouterModule] });
36
- KoalaPageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaPageModule, imports: [[
37
- CommonModule,
38
- RouterModule,
39
- MatBadgeModule,
40
- MatProgressSpinnerModule,
41
- MatProgressBarModule,
42
- MatToolbarModule,
43
- MatTooltipModule,
44
- MatButtonModule,
45
- MatIconModule,
46
- MatSidenavModule,
47
- MatListModule,
48
- MatMenuModule
49
- ], RouterModule] });
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaPageModule, decorators: [{
36
+ KoalaPageModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaPageModule, imports: [CommonModule,
37
+ RouterModule,
38
+ MatBadgeModule,
39
+ MatProgressSpinnerModule,
40
+ MatProgressBarModule,
41
+ MatToolbarModule,
42
+ MatTooltipModule,
43
+ MatButtonModule,
44
+ MatIconModule,
45
+ MatSidenavModule,
46
+ MatListModule,
47
+ MatMenuModule, RouterModule] });
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaPageModule, decorators: [{
51
49
  type: NgModule,
52
50
  args: [{
53
51
  declarations: [
@@ -75,4 +73,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
75
73
  ]
76
74
  }]
77
75
  }] });
78
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEucGFnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvcGFnZS9rb2FsYS5wYWdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBMkIvQyxNQUFNLE9BQU8sZUFBZTs7NkdBQWYsZUFBZTs4R0FBZixlQUFlLGlCQXZCeEIsYUFBYTtRQUNiLHFCQUFxQjtRQUNyQixzQkFBc0IsYUFPdEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsd0JBQXdCO1FBQ3hCLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixhQUFhLGFBZmIsYUFBYTtRQUNiLFlBQVk7OEdBaUJILGVBQWUsWUFmakI7WUFDUCxZQUFZO1lBQ1osWUFBWTtZQUNaLGNBQWM7WUFDZCx3QkFBd0I7WUFDeEIsb0JBQW9CO1lBQ3BCLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIsZUFBZTtZQUNmLGFBQWE7WUFDYixnQkFBZ0I7WUFDaEIsYUFBYTtZQUNiLGFBQWE7U0FDZCxFQWZDLFlBQVk7NEZBaUJILGVBQWU7a0JBekIzQixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixhQUFhO3dCQUNiLHFCQUFxQjt3QkFDckIsc0JBQXNCO3FCQUN2QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsYUFBYTt3QkFDYixZQUFZO3FCQUNiO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLFlBQVk7d0JBQ1osY0FBYzt3QkFDZCx3QkFBd0I7d0JBQ3hCLG9CQUFvQjt3QkFDcEIsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsYUFBYTtxQkFDZDtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IFBhZ2VDb21wb25lbnQgfSBmcm9tIFwiLi9wYWdlLmNvbXBvbmVudFwiO1xuaW1wb3J0IHsgTm90aWZpY2F0aW9uQ29tcG9uZW50IH0gZnJvbSBcIi4vbm90aWZpY2F0aW9ucy9ub3RpZmljYXRpb24uY29tcG9uZW50XCI7XG5pbXBvcnQgeyBMb2FkZXJCYXJQYWdlQ29tcG9uZW50IH0gZnJvbSBcIi4uL2xvYWRlci9sb2FkZXItYmFyLXBhZ2UuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBNYXRCYWRnZU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9iYWRnZVwiO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3MtYmFyXCI7XG5pbXBvcnQgeyBNYXRUb29sYmFyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXJcIjtcbmltcG9ydCB7IE1hdFRvb2x0aXBNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbHRpcFwiO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2J1dHRvblwiO1xuaW1wb3J0IHsgTWF0SWNvbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9pY29uXCI7XG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3NpZGVuYXZcIjtcbmltcG9ydCB7IE1hdExpc3RNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdFwiO1xuaW1wb3J0IHsgTWF0TWVudU1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9tZW51XCI7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvcHJvZ3Jlc3Mtc3Bpbm5lclwiO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL3JvdXRlclwiO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBQYWdlQ29tcG9uZW50LFxuICAgIE5vdGlmaWNhdGlvbkNvbXBvbmVudCxcbiAgICBMb2FkZXJCYXJQYWdlQ29tcG9uZW50XG4gIF0sXG4gIGV4cG9ydHM6IFtcbiAgICBQYWdlQ29tcG9uZW50LFxuICAgIFJvdXRlck1vZHVsZVxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFJvdXRlck1vZHVsZSxcbiAgICBNYXRCYWRnZU1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc1NwaW5uZXJNb2R1bGUsXG4gICAgTWF0UHJvZ3Jlc3NCYXJNb2R1bGUsXG4gICAgTWF0VG9vbGJhck1vZHVsZSxcbiAgICBNYXRUb29sdGlwTW9kdWxlLFxuICAgIE1hdEJ1dHRvbk1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIE1hdFNpZGVuYXZNb2R1bGUsXG4gICAgTWF0TGlzdE1vZHVsZSxcbiAgICBNYXRNZW51TW9kdWxlXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgS29hbGFQYWdlTW9kdWxlIHt9XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEucGFnZS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvcGFnZS9rb2FsYS5wYWdlLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7O0FBMkIvQyxNQUFNLE9BQU8sZUFBZTs7NEdBQWYsZUFBZTs2R0FBZixlQUFlLGlCQXZCeEIsYUFBYTtRQUNiLHFCQUFxQjtRQUNyQixzQkFBc0IsYUFPdEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsd0JBQXdCO1FBQ3hCLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixhQUFhLGFBZmIsYUFBYTtRQUNiLFlBQVk7NkdBaUJILGVBQWUsWUFkeEIsWUFBWTtRQUNaLFlBQVk7UUFDWixjQUFjO1FBQ2Qsd0JBQXdCO1FBQ3hCLG9CQUFvQjtRQUNwQixnQkFBZ0I7UUFDaEIsZ0JBQWdCO1FBQ2hCLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixhQUFhLEVBZGIsWUFBWTsyRkFpQkgsZUFBZTtrQkF6QjNCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFO3dCQUNaLGFBQWE7d0JBQ2IscUJBQXFCO3dCQUNyQixzQkFBc0I7cUJBQ3ZCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxhQUFhO3dCQUNiLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osWUFBWTt3QkFDWixjQUFjO3dCQUNkLHdCQUF3Qjt3QkFDeEIsb0JBQW9CO3dCQUNwQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixhQUFhO3FCQUNkO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHsgUGFnZUNvbXBvbmVudCB9IGZyb20gXCIuL3BhZ2UuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25Db21wb25lbnQgfSBmcm9tIFwiLi9ub3RpZmljYXRpb25zL25vdGlmaWNhdGlvbi5jb21wb25lbnRcIjtcbmltcG9ydCB7IExvYWRlckJhclBhZ2VDb21wb25lbnQgfSBmcm9tIFwiLi4vbG9hZGVyL2xvYWRlci1iYXItcGFnZS5jb21wb25lbnRcIjtcbmltcG9ydCB7IE1hdEJhZGdlTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2JhZGdlXCI7XG5pbXBvcnQgeyBNYXRQcm9ncmVzc0Jhck1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXJcIjtcbmltcG9ydCB7IE1hdFRvb2xiYXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvdG9vbGJhclwiO1xuaW1wb3J0IHsgTWF0VG9vbHRpcE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC90b29sdGlwXCI7XG5pbXBvcnQgeyBNYXRCdXR0b25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uXCI7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL2ljb25cIjtcbmltcG9ydCB7IE1hdFNpZGVuYXZNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdlwiO1xuaW1wb3J0IHsgTWF0TGlzdE1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9saXN0XCI7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcbmltcG9ydCB7IE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1zcGlubmVyXCI7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvcm91dGVyXCI7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFBhZ2VDb21wb25lbnQsXG4gICAgTm90aWZpY2F0aW9uQ29tcG9uZW50LFxuICAgIExvYWRlckJhclBhZ2VDb21wb25lbnRcbiAgXSxcbiAgZXhwb3J0czogW1xuICAgIFBhZ2VDb21wb25lbnQsXG4gICAgUm91dGVyTW9kdWxlXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgUm91dGVyTW9kdWxlLFxuICAgIE1hdEJhZGdlTW9kdWxlLFxuICAgIE1hdFByb2dyZXNzU3Bpbm5lck1vZHVsZSxcbiAgICBNYXRQcm9ncmVzc0Jhck1vZHVsZSxcbiAgICBNYXRUb29sYmFyTW9kdWxlLFxuICAgIE1hdFRvb2x0aXBNb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0U2lkZW5hdk1vZHVsZSxcbiAgICBNYXRMaXN0TW9kdWxlLFxuICAgIE1hdE1lbnVNb2R1bGVcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBLb2FsYVBhZ2VNb2R1bGUge31cbiJdfQ==
@@ -1,11 +1,11 @@
1
1
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/material/icon";
4
- import * as i2 from "@angular/material/button";
5
- import * as i3 from "@angular/material/list";
6
- import * as i4 from "@angular/common";
7
- import * as i5 from "@angular/material/tooltip";
8
- import * as i6 from "@angular/router";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/router";
5
+ import * as i3 from "@angular/material/tooltip";
6
+ import * as i4 from "@angular/material/button";
7
+ import * as i5 from "@angular/material/icon";
8
+ import * as i6 from "@angular/material/list";
9
9
  import * as i7 from "@angular/material/core";
10
10
  export class NotificationComponent {
11
11
  constructor() {
@@ -28,11 +28,11 @@ export class NotificationComponent {
28
28
  this.delete.emit(notification);
29
29
  }
30
30
  }
31
- NotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
- NotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: NotificationComponent, selector: "koala-notification-list", inputs: { notifications: "notifications" }, outputs: { deleteAll: "deleteAll", delete: "delete" }, usesOnChanges: true, ngImport: i0, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:unset!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"], components: [{ type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i2.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: i3.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { type: i3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }], directives: [{ type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { type: i3.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }, { type: i7.MatLine, selector: "[mat-line], [matLine]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: NotificationComponent, decorators: [{
31
+ NotificationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: NotificationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
32
+ NotificationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: NotificationComponent, selector: "koala-notification-list", inputs: { notifications: "notifications" }, outputs: { deleteAll: "deleteAll", delete: "delete" }, usesOnChanges: true, ngImport: i0, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:inherit!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: ":not(a):not(area)[routerLink]", inputs: ["queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo", "routerLink"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: i4.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"] }, { kind: "component", type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i6.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { kind: "component", type: i6.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["disableRipple", "disabled"], exportAs: ["matListItem"] }, { kind: "directive", type: i7.MatLine, selector: "[mat-line], [matLine]" }, { kind: "directive", type: i6.MatListIconCssMatStyler, selector: "[mat-list-icon], [matListIcon]" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: NotificationComponent, decorators: [{
34
34
  type: Component,
35
- args: [{ selector: 'koala-notification-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:unset!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"] }]
35
+ args: [{ selector: 'koala-notification-list', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div (click)=\"$event.stopPropagation()\" class=\"notifications-content\">\n <div class=\"title\">\n <mat-icon>info</mat-icon>\n <h2>Notifica\u00E7\u00F5es</h2>\n <span class=\"spacer\"></span>\n <button (click)=\"deleteAllNotifications()\" *ngIf=\"notifications.length > 0\" class=\"btn-delete-all\"\n mat-icon-button\n matTooltip=\"Excluir Todas\" matTooltipPosition=\"above\">\n <mat-icon>delete_sweep</mat-icon>\n </button>\n </div>\n <mat-action-list *ngIf=\"notifications.length > 0 else noNotifications\">\n <mat-list-item *ngFor=\"let notification of notifications\" [routerLink]=\"notification.redirectTo\" class=\"itemList\">\n <button (click)=\"deleteNotification(notification)\" class=\"delete-notification\" color=\"warn\" mat-icon-button\n matTooltip=\"Excluir\" matTooltipPosition=\"above\"\n mat-list-icon>\n <mat-icon>delete</mat-icon>\n </button>\n <mat-icon class=\"iconList\" mat-list-icon>announcement</mat-icon>\n <h4 class=\"titleList\" mat-line>{{notification.title}}</h4>\n <p [innerHTML]=\"notification.text\" class=\"textList\" mat-line></p>\n </mat-list-item>\n </mat-action-list>\n <ng-template #noNotifications>\n <div class=\"empty\">\n <mat-icon>mood</mat-icon>\n <p>Tudo certo por aqui!</p>\n </div>\n </ng-template>\n</div>\n", styles: [".title{color:#616161;padding:5px 20px 15px}.title h2{vertical-align:middle;display:inline-flex;padding:0 10px;margin:0;font-family:OpenSans,sans-serif;font-size:.8em}.title mat-icon{vertical-align:middle;display:inline-flex;width:22px;height:22px;font-size:22px;line-height:22px}.title .btn-delete-all{position:absolute;right:20px;top:5px}.iconList{color:#1976d2}.titleList{font-family:OpenSansLight,sans-serif;font-size:.7em!important;color:#616161}.textList{font-family:OpenSans,sans-serif;font-size:.9em!important;color:#212121;white-space:inherit!important}.itemList{height:-webkit-fit-content!important;height:-moz-fit-content!important;height:fit-content!important;padding:8px 0!important}.delete-notification{background:#b71c1c;border-radius:0!important;height:100%!important;margin-left:-75px;margin-right:10px;position:absolute;transition:.3s;width:50px!important}.delete-notification mat-icon{color:#fff;vertical-align:middle}mat-action-list{max-height:70vh;overflow-y:auto}mat-list-item:hover .delete-notification{margin-left:-15px}.empty{padding:50px;text-align:center;color:#616161}.empty mat-icon{width:40px;height:40px;font-size:40px;line-height:40px}.empty p{text-align:center;font-family:OpenSansLight,sans-serif;font-size:1em}\n"] }]
36
36
  }], ctorParameters: function () { return []; }, propDecorators: { notifications: [{
37
37
  type: Input
38
38
  }], deleteAll: [{
@@ -40,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
40
40
  }], delete: [{
41
41
  type: Output
42
42
  }] } });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTMUgsTUFBTSxPQUFPLHFCQUFxQjtJQU9oQztRQUxVLGNBQVMsR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM3QyxXQUFNLEdBQUcsSUFBSSxZQUFZLENBQTZCLElBQUksQ0FBQyxDQUFDO0lBSXZELENBQUM7SUFFaEIsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUNsRyxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFELFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbkU7YUFBTTtZQUNMLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFlBQXdDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O21IQXhCVSxxQkFBcUI7dUdBQXJCLHFCQUFxQix1TENUbEMsNjJDQThCQTs0RkRyQmEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTTswRUFHdEMsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLb2FsYU5vdGlmaWNhdGlvbkludGVyZmFjZSB9IGZyb20gJy4va29hbGEubm90aWZpY2F0aW9uLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2tvYWxhLW5vdGlmaWNhdGlvbi1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICdub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbm90aWZpY2F0aW9uLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbm90aWZpY2F0aW9uczogS29hbGFOb3RpZmljYXRpb25JbnRlcmZhY2VbXTtcbiAgQE91dHB1dCgpIGRlbGV0ZUFsbCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxLb2FsYU5vdGlmaWNhdGlvbkludGVyZmFjZT4obnVsbCk7XG5cbiAgcHJpdmF0ZSBhcHBOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLmFwcE5hbWUgPSBkb2N1bWVudC50aXRsZS5pbmRleE9mKCcpICcpID49IDAgPyBkb2N1bWVudC50aXRsZS5zcGxpdCgnKSAnKVsxXSA6IGRvY3VtZW50LnRpdGxlO1xuICAgIGlmIChjaGFuZ2VzLm5vdGlmaWNhdGlvbnMgJiYgdGhpcy5ub3RpZmljYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIGRvY3VtZW50LnRpdGxlID0gYCgke3RoaXMubm90aWZpY2F0aW9ucy5sZW5ndGh9KSAke3RoaXMuYXBwTmFtZX1gO1xuICAgIH0gZWxzZSB7XG4gICAgICBkb2N1bWVudC50aXRsZSA9IHRoaXMuYXBwTmFtZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsTm90aWZpY2F0aW9ucygpIHtcbiAgICB0aGlzLmRlbGV0ZUFsbC5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb246IEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlKSB7XG4gICAgdGhpcy5kZWxldGUuZW1pdChub3RpZmljYXRpb24pO1xuICB9XG59XG4iLCI8ZGl2IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICA8bWF0LWljb24+aW5mbzwvbWF0LWljb24+XG4gICAgPGgyPk5vdGlmaWNhw6fDtWVzPC9oMj5cbiAgICA8c3BhbiBjbGFzcz1cInNwYWNlclwiPjwvc3Bhbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVBbGxOb3RpZmljYXRpb25zKClcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMFwiIGNsYXNzPVwiYnRuLWRlbGV0ZS1hbGxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRXhjbHVpciBUb2Rhc1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+XG4gICAgICA8bWF0LWljb24+ZGVsZXRlX3N3ZWVwPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxtYXQtYWN0aW9uLWxpc3QgKm5nSWY9XCJub3RpZmljYXRpb25zLmxlbmd0aCA+IDAgZWxzZSBub05vdGlmaWNhdGlvbnNcIj5cbiAgICA8bWF0LWxpc3QtaXRlbSAqbmdGb3I9XCJsZXQgbm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnNcIiBbcm91dGVyTGlua109XCJub3RpZmljYXRpb24ucmVkaXJlY3RUb1wiIGNsYXNzPVwiaXRlbUxpc3RcIj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImRlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24pXCIgY2xhc3M9XCJkZWxldGUtbm90aWZpY2F0aW9uXCIgY29sb3I9XCJ3YXJuXCIgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFeGNsdWlyXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICAgICAgICAgICAgICBtYXQtbGlzdC1pY29uPlxuICAgICAgICA8bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbkxpc3RcIiBtYXQtbGlzdC1pY29uPmFubm91bmNlbWVudDwvbWF0LWljb24+XG4gICAgICA8aDQgY2xhc3M9XCJ0aXRsZUxpc3RcIiBtYXQtbGluZT57e25vdGlmaWNhdGlvbi50aXRsZX19PC9oND5cbiAgICAgIDxwIFtpbm5lckhUTUxdPVwibm90aWZpY2F0aW9uLnRleHRcIiBjbGFzcz1cInRleHRMaXN0XCIgbWF0LWxpbmU+PC9wPlxuICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgPC9tYXQtYWN0aW9uLWxpc3Q+XG4gIDxuZy10ZW1wbGF0ZSAjbm9Ob3RpZmljYXRpb25zPlxuICAgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgPG1hdC1pY29uPm1vb2Q8L21hdC1pY29uPlxuICAgICAgPHA+VHVkbyBjZXJ0byBwb3IgYXF1aSE8L3A+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm90aWZpY2F0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL25vdGlmaWNhdGlvbnMvbm90aWZpY2F0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBYSxNQUFNLEVBQWlCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFTMUgsTUFBTSxPQUFPLHFCQUFxQjtJQU9oQztRQUxVLGNBQVMsR0FBRyxJQUFJLFlBQVksQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUM3QyxXQUFNLEdBQUcsSUFBSSxZQUFZLENBQTZCLElBQUksQ0FBQyxDQUFDO0lBSXZELENBQUM7SUFFaEIsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksQ0FBQyxPQUFPLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQztRQUNsRyxJQUFJLE9BQU8sQ0FBQyxhQUFhLElBQUksSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO1lBQzFELFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbkU7YUFBTTtZQUNMLFFBQVEsQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFTSxzQkFBc0I7UUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVNLGtCQUFrQixDQUFDLFlBQXdDO1FBQ2hFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O2tIQXhCVSxxQkFBcUI7c0dBQXJCLHFCQUFxQix1TENUbEMsNjJDQThCQTsyRkRyQmEscUJBQXFCO2tCQU5qQyxTQUFTOytCQUNFLHlCQUF5QixtQkFHbEIsdUJBQXVCLENBQUMsTUFBTTswRUFHdEMsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNO2dCQUNHLE1BQU07c0JBQWYsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uQ2hhbmdlcywgT3V0cHV0LCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBLb2FsYU5vdGlmaWNhdGlvbkludGVyZmFjZSB9IGZyb20gJy4va29hbGEubm90aWZpY2F0aW9uLmludGVyZmFjZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2tvYWxhLW5vdGlmaWNhdGlvbi1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICdub3RpZmljYXRpb24uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnbm90aWZpY2F0aW9uLmNvbXBvbmVudC5jc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgTm90aWZpY2F0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgbm90aWZpY2F0aW9uczogS29hbGFOb3RpZmljYXRpb25JbnRlcmZhY2VbXTtcbiAgQE91dHB1dCgpIGRlbGV0ZUFsbCA9IG5ldyBFdmVudEVtaXR0ZXI8Ym9vbGVhbj4oZmFsc2UpO1xuICBAT3V0cHV0KCkgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxLb2FsYU5vdGlmaWNhdGlvbkludGVyZmFjZT4obnVsbCk7XG5cbiAgcHJpdmF0ZSBhcHBOYW1lOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoKSB7fVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICB0aGlzLmFwcE5hbWUgPSBkb2N1bWVudC50aXRsZS5pbmRleE9mKCcpICcpID49IDAgPyBkb2N1bWVudC50aXRsZS5zcGxpdCgnKSAnKVsxXSA6IGRvY3VtZW50LnRpdGxlO1xuICAgIGlmIChjaGFuZ2VzLm5vdGlmaWNhdGlvbnMgJiYgdGhpcy5ub3RpZmljYXRpb25zLmxlbmd0aCA+IDApIHtcbiAgICAgIGRvY3VtZW50LnRpdGxlID0gYCgke3RoaXMubm90aWZpY2F0aW9ucy5sZW5ndGh9KSAke3RoaXMuYXBwTmFtZX1gO1xuICAgIH0gZWxzZSB7XG4gICAgICBkb2N1bWVudC50aXRsZSA9IHRoaXMuYXBwTmFtZTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgZGVsZXRlQWxsTm90aWZpY2F0aW9ucygpIHtcbiAgICB0aGlzLmRlbGV0ZUFsbC5lbWl0KHRydWUpO1xuICB9XG5cbiAgcHVibGljIGRlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb246IEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlKSB7XG4gICAgdGhpcy5kZWxldGUuZW1pdChub3RpZmljYXRpb24pO1xuICB9XG59XG4iLCI8ZGl2IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiBjbGFzcz1cIm5vdGlmaWNhdGlvbnMtY29udGVudFwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICA8bWF0LWljb24+aW5mbzwvbWF0LWljb24+XG4gICAgPGgyPk5vdGlmaWNhw6fDtWVzPC9oMj5cbiAgICA8c3BhbiBjbGFzcz1cInNwYWNlclwiPjwvc3Bhbj5cbiAgICA8YnV0dG9uIChjbGljayk9XCJkZWxldGVBbGxOb3RpZmljYXRpb25zKClcIiAqbmdJZj1cIm5vdGlmaWNhdGlvbnMubGVuZ3RoID4gMFwiIGNsYXNzPVwiYnRuLWRlbGV0ZS1hbGxcIlxuICAgICAgICAgICAgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICBtYXRUb29sdGlwPVwiRXhjbHVpciBUb2Rhc1wiIG1hdFRvb2x0aXBQb3NpdGlvbj1cImFib3ZlXCI+XG4gICAgICA8bWF0LWljb24+ZGVsZXRlX3N3ZWVwPC9tYXQtaWNvbj5cbiAgICA8L2J1dHRvbj5cbiAgPC9kaXY+XG4gIDxtYXQtYWN0aW9uLWxpc3QgKm5nSWY9XCJub3RpZmljYXRpb25zLmxlbmd0aCA+IDAgZWxzZSBub05vdGlmaWNhdGlvbnNcIj5cbiAgICA8bWF0LWxpc3QtaXRlbSAqbmdGb3I9XCJsZXQgbm90aWZpY2F0aW9uIG9mIG5vdGlmaWNhdGlvbnNcIiBbcm91dGVyTGlua109XCJub3RpZmljYXRpb24ucmVkaXJlY3RUb1wiIGNsYXNzPVwiaXRlbUxpc3RcIj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImRlbGV0ZU5vdGlmaWNhdGlvbihub3RpZmljYXRpb24pXCIgY2xhc3M9XCJkZWxldGUtbm90aWZpY2F0aW9uXCIgY29sb3I9XCJ3YXJuXCIgbWF0LWljb24tYnV0dG9uXG4gICAgICAgICAgICAgIG1hdFRvb2x0aXA9XCJFeGNsdWlyXCIgbWF0VG9vbHRpcFBvc2l0aW9uPVwiYWJvdmVcIlxuICAgICAgICAgICAgICBtYXQtbGlzdC1pY29uPlxuICAgICAgICA8bWF0LWljb24+ZGVsZXRlPC9tYXQtaWNvbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgICAgPG1hdC1pY29uIGNsYXNzPVwiaWNvbkxpc3RcIiBtYXQtbGlzdC1pY29uPmFubm91bmNlbWVudDwvbWF0LWljb24+XG4gICAgICA8aDQgY2xhc3M9XCJ0aXRsZUxpc3RcIiBtYXQtbGluZT57e25vdGlmaWNhdGlvbi50aXRsZX19PC9oND5cbiAgICAgIDxwIFtpbm5lckhUTUxdPVwibm90aWZpY2F0aW9uLnRleHRcIiBjbGFzcz1cInRleHRMaXN0XCIgbWF0LWxpbmU+PC9wPlxuICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgPC9tYXQtYWN0aW9uLWxpc3Q+XG4gIDxuZy10ZW1wbGF0ZSAjbm9Ob3RpZmljYXRpb25zPlxuICAgIDxkaXYgY2xhc3M9XCJlbXB0eVwiPlxuICAgICAgPG1hdC1pY29uPm1vb2Q8L21hdC1pY29uPlxuICAgICAgPHA+VHVkbyBjZXJ0byBwb3IgYXF1aSE8L3A+XG4gICAgPC9kaXY+XG4gIDwvbmctdGVtcGxhdGU+XG48L2Rpdj5cbiJdfQ==
@@ -15,16 +15,16 @@ import * as i3 from "../services/loader/koala.loader.service";
15
15
  import * as i4 from "@koalarx/ui/menu";
16
16
  import * as i5 from "../services/openid/koala.oauth2.service";
17
17
  import * as i6 from "ngx-device-detector";
18
- import * as i7 from "@angular/material/progress-spinner";
19
- import * as i8 from "../loader/loader-bar-page.component";
20
- import * as i9 from "@angular/material/sidenav";
18
+ import * as i7 from "@angular/common";
19
+ import * as i8 from "@angular/material/badge";
20
+ import * as i9 from "@angular/material/progress-spinner";
21
21
  import * as i10 from "@angular/material/toolbar";
22
22
  import * as i11 from "@angular/material/button";
23
23
  import * as i12 from "@angular/material/icon";
24
- import * as i13 from "@angular/material/menu";
25
- import * as i14 from "./notifications/notification.component";
26
- import * as i15 from "@angular/common";
27
- import * as i16 from "@angular/material/badge";
24
+ import * as i13 from "@angular/material/sidenav";
25
+ import * as i14 from "@angular/material/menu";
26
+ import * as i15 from "./notifications/notification.component";
27
+ import * as i16 from "../loader/loader-bar-page.component";
28
28
  export class PageComponent {
29
29
  constructor(tokenService, router, loaderService, menuService, oauth2Service, deviceService) {
30
30
  this.tokenService = tokenService;
@@ -360,9 +360,9 @@ koala-menu ul li li.active a koala-icon * {fill: ${this.palletColors.menuOptions
360
360
  }
361
361
  }
362
362
  }
363
- PageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PageComponent, deps: [{ token: i1.KoalaTokenService }, { token: i2.Router }, { token: i3.KoalaLoaderService }, { token: i4.KoalaMenuService }, { token: i5.KoalaOAuth2Service }, { token: i6.DeviceDetectorService }], target: i0.ɵɵFactoryTarget.Component });
364
- PageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.11", type: PageComponent, selector: "koala-page", inputs: { showMenu: "showMenu", color: "color", logo: "logo", startMenuOpened: "startMenuOpened", showLoaderPage: "showLoaderPage", messageLoaderPage: "messageLoaderPage", defaultPage: "defaultPage", openPages: "openPages", notifications: "notifications", userMenuOptions: "userMenuOptions", palletColors: "palletColors", language: "language" }, outputs: { validatingScope: "validatingScope", logoutEmitter: "logoutEmitter", deleteAllNotifications: "deleteAllNotifications", deleteNotification: "deleteNotification" }, providers: [KoalaTokenService], viewQueries: [{ propertyName: "menu", first: true, predicate: ["drawer"], descendants: true, static: true }], ngImport: i0, template: "<div *ngIf=\"showLoaderPage | async\" class=\"koala-loader-pg\">\n <div class=\"loader-content\">\n <figure>\n <img [src]=\"logo\" alt=\"Logotipo\"/>\n <figcaption *ngIf=\"(messageLoaderPage | async) as messageLoader\" [innerHTML]=\"messageLoader\"></figcaption>\n </figure>\n <mat-spinner></mat-spinner>\n </div>\n</div>\n<app-loader-page *ngIf=\"(loaderSubject | async) as loader\" [progress]=\"loader.progress\" [show]=\"loader.show\"\n [typeLoader]=\"loader.typeLoader\"></app-loader-page>\n<mat-drawer-container autosize class=\"menu-container\">\n <mat-drawer #drawer class=\"menu-options\" [mode]=\"isMobile ? 'push' : 'side'\">\n <img [src]=\"logo\" alt=\"Logotipo\" id=\"logotipo\"/>\n <ng-content *ngIf=\"showMenu\" select=\"[menu-options]\"></ng-content>\n </mat-drawer>\n\n <mat-toolbar *ngIf=\"!!(logged$ | async) && (username$ | async)\" class=\"toolbar\">\n <img *ngIf=\"!showMenu\" [src]=\"logo\" alt=\"Logotipo Toolbar\" id=\"logotipo-toolbar\"/>\n <button (click)=\"toogleMenu()\" *ngIf=\"showMenu\" [color]=\"color\" class=\"btn-collapse-menu\" mat-icon-button>\n <mat-icon>menu</mat-icon>\n </button>\n <span class=\"spacer\"></span>\n\t <div class=\"menu-toolbar\">\n\t\t <ng-content select=\"[menu-toolbar]\"></ng-content>\n\t </div>\n <div *ngIf=\"(notifications | async) as notificationList\">\n <button *ngIf=\"notifications\" [color]=\"color\" [matMenuTriggerFor]=\"notificationsMenu\" class=\"btn-toolbar\"\n mat-icon-button>\n <mat-icon\n\t [matBadgeHidden]=\"notificationList.length === 0\"\n\t [matBadge]=\"notificationList.length.toString()\"\n\t matBadgeColor=\"warn\">notifications\n </mat-icon>\n </button>\n <mat-menu #notificationsMenu=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n <koala-notification-list\n (delete)=\"deleteNotification.emit($event)\"\n (deleteAll)=\"deleteAllNotifications.emit($event)\"\n [notifications]=\"notificationList\">\n </koala-notification-list>\n </mat-menu>\n </div>\n <button [color]=\"color\" [matMenuTriggerFor]=\"userOptions\" class=\"btn-toolbar\" mat-button>\n <span>{{username$ | async}}</span>\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span>\n </button>\n <mat-menu #userOptions=\"matMenu\" class=\"user-menu menu-list\" yPosition=\"below\">\n <div class=\"user-presentation\">\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span><br/>\n <span class=\"username\">{{username$ | async}}</span>\n </div>\n <button (click)=\"btn.action()\" *ngFor=\"let btn of userMenuOptions\" mat-menu-item>\n <mat-icon>{{btn.icon}}</mat-icon>\n <span>{{btn.name}}</span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <mat-icon>exit_to_app</mat-icon>\n <span>{{language === 'ptBr' ? 'Sair' : 'Logout'}}</span>\n </button>\n </mat-menu>\n </mat-toolbar>\n\n <ng-content class=\"page-content\" select=\"[page-content]\"></ng-content>\n\n</mat-drawer-container>\n\n<ng-content class=\"loading-info-content\" select=\"[loading-info-content]\"></ng-content>\n", styles: [".menu-container{height:100vh;width:100vw}.menu-options{border:none;padding:20px 0 0;width:250px}.page-content{align-items:center;display:flex;height:100%;justify-content:center}img#logotipo,img#logotipo-toolbar{display:block;height:auto;margin:0 auto 25px;position:relative;width:120px}.toolbar{box-shadow:none;padding:0 7px 0 13px}.toolbar img#logotipo-toolbar{margin:0;padding:0 10px}.menu-toolbar{margin:0 10px}.spacer{flex:1 1 auto}.btn-toolbar{display:inline-block;margin-right:10px;position:relative}.btn-toolbar span{padding:0 10px 0 0}.btn-toolbar span.icon-user,.user-presentation span.icon-user{border-radius:50%;display:inline-block;height:10px;line-height:10px;padding:5px;width:10px}.user-presentation{min-width:260px;padding:50px 10px;text-align:center}.user-presentation span.icon-user{font-size:30px;height:30px;line-height:30px;margin-bottom:10px;width:30px}.user-presentation span.username{font-family:OpenSansLight,sans-serif;word-break:break-all}@media (max-width: 900px){.btn-toolbar span:first-child{display:none}.btn-toolbar span.icon-user,.user-presentation span.icon-user{height:20px;line-height:20px;width:20px}}\n"], components: [{ type: i7.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { type: i8.LoaderBarPageComponent, selector: "app-loader-page", inputs: ["show", "progress", "typeLoader"] }, { type: i9.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { type: i9.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { type: i10.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { type: i11.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: i12.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i13.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i14.NotificationComponent, selector: "koala-notification-list", inputs: ["notifications"], outputs: ["deleteAll", "delete"] }, { type: i13.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }], directives: [{ type: i15.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i13.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i16.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { type: i15.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "async": i15.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
365
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: PageComponent, decorators: [{
363
+ PageComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PageComponent, deps: [{ token: i1.KoalaTokenService }, { token: i2.Router }, { token: i3.KoalaLoaderService }, { token: i4.KoalaMenuService }, { token: i5.KoalaOAuth2Service }, { token: i6.DeviceDetectorService }], target: i0.ɵɵFactoryTarget.Component });
364
+ PageComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.3", type: PageComponent, selector: "koala-page", inputs: { showMenu: "showMenu", color: "color", logo: "logo", startMenuOpened: "startMenuOpened", showLoaderPage: "showLoaderPage", messageLoaderPage: "messageLoaderPage", defaultPage: "defaultPage", openPages: "openPages", notifications: "notifications", userMenuOptions: "userMenuOptions", palletColors: "palletColors", language: "language" }, outputs: { validatingScope: "validatingScope", logoutEmitter: "logoutEmitter", deleteAllNotifications: "deleteAllNotifications", deleteNotification: "deleteNotification" }, providers: [KoalaTokenService], viewQueries: [{ propertyName: "menu", first: true, predicate: ["drawer"], descendants: true, static: true }], ngImport: i0, template: "<div *ngIf=\"showLoaderPage | async\" class=\"koala-loader-pg\">\n <div class=\"loader-content\">\n <figure>\n <img [src]=\"logo\" alt=\"Logotipo\"/>\n <figcaption *ngIf=\"(messageLoaderPage | async) as messageLoader\" [innerHTML]=\"messageLoader\"></figcaption>\n </figure>\n <mat-spinner></mat-spinner>\n </div>\n</div>\n<app-loader-page *ngIf=\"(loaderSubject | async) as loader\" [progress]=\"loader.progress\" [show]=\"loader.show\"\n [typeLoader]=\"loader.typeLoader\"></app-loader-page>\n<mat-drawer-container autosize class=\"menu-container\">\n <mat-drawer #drawer class=\"menu-options\" [mode]=\"isMobile ? 'push' : 'side'\">\n <img [src]=\"logo\" alt=\"Logotipo\" id=\"logotipo\"/>\n <ng-content *ngIf=\"showMenu\" select=\"[menu-options]\"></ng-content>\n </mat-drawer>\n\n <mat-toolbar *ngIf=\"!!(logged$ | async) && (username$ | async)\" class=\"toolbar\">\n <img *ngIf=\"!showMenu\" [src]=\"logo\" alt=\"Logotipo Toolbar\" id=\"logotipo-toolbar\"/>\n <button (click)=\"toogleMenu()\" *ngIf=\"showMenu\" [color]=\"color\" class=\"btn-collapse-menu\" mat-icon-button>\n <mat-icon>menu</mat-icon>\n </button>\n <span class=\"spacer\"></span>\n\t <div class=\"menu-toolbar\">\n\t\t <ng-content select=\"[menu-toolbar]\"></ng-content>\n\t </div>\n <div *ngIf=\"(notifications | async) as notificationList\">\n <button *ngIf=\"notifications\" [color]=\"color\" [matMenuTriggerFor]=\"notificationsMenu\" class=\"btn-toolbar\"\n mat-icon-button>\n <mat-icon\n\t [matBadgeHidden]=\"notificationList.length === 0\"\n\t [matBadge]=\"notificationList.length.toString()\"\n\t matBadgeColor=\"warn\">notifications\n </mat-icon>\n </button>\n <mat-menu #notificationsMenu=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n <koala-notification-list\n (delete)=\"deleteNotification.emit($event)\"\n (deleteAll)=\"deleteAllNotifications.emit($event)\"\n [notifications]=\"notificationList\">\n </koala-notification-list>\n </mat-menu>\n </div>\n <button [color]=\"color\" [matMenuTriggerFor]=\"userOptions\" class=\"btn-toolbar\" mat-button>\n <span>{{username$ | async}}</span>\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span>\n </button>\n <mat-menu #userOptions=\"matMenu\" class=\"user-menu menu-list\" yPosition=\"below\">\n <div class=\"user-presentation\">\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span><br/>\n <span class=\"username\">{{username$ | async}}</span>\n </div>\n <button (click)=\"btn.action()\" *ngFor=\"let btn of userMenuOptions\" mat-menu-item>\n <mat-icon>{{btn.icon}}</mat-icon>\n <span>{{btn.name}}</span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <mat-icon>exit_to_app</mat-icon>\n <span>{{language === 'ptBr' ? 'Sair' : 'Logout'}}</span>\n </button>\n </mat-menu>\n </mat-toolbar>\n\n <ng-content class=\"page-content\" select=\"[page-content]\"></ng-content>\n\n</mat-drawer-container>\n\n<ng-content class=\"loading-info-content\" select=\"[loading-info-content]\"></ng-content>\n", styles: [".menu-container{height:100vh;width:100vw}.menu-options{border:none;padding:20px 0 0;width:250px}.page-content{align-items:center;display:flex;height:100%;justify-content:center}img#logotipo,img#logotipo-toolbar{display:block;height:auto;margin:0 auto 25px;position:relative;width:120px}.toolbar{box-shadow:none;padding:0 7px 0 13px}.toolbar img#logotipo-toolbar{margin:0;padding:0 10px}.menu-toolbar{margin:0 10px}.spacer{flex:1 1 auto}.btn-toolbar{display:inline-block;margin-right:10px;position:relative}.btn-toolbar span{padding:0 10px 0 0}.btn-toolbar span.icon-user,.user-presentation span.icon-user{border-radius:50%;display:inline-block;height:10px;line-height:10px;padding:5px;width:10px}.user-presentation{min-width:260px;padding:50px 10px;text-align:center}.user-presentation span.icon-user{font-size:30px;height:30px;line-height:30px;margin-bottom:10px;width:30px}.user-presentation span.username{font-family:OpenSansLight,sans-serif;word-break:break-all}@media (max-width: 900px){.btn-toolbar span:first-child{display:none}.btn-toolbar span.icon-user,.user-presentation span.icon-user{height:20px;line-height:20px;width:20px}}\n"], dependencies: [{ kind: "directive", type: i7.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i7.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i8.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }, { kind: "component", type: i9.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "diameter", "strokeWidth", "mode", "value"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i10.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: i11.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"] }, { kind: "component", type: i12.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i13.MatDrawer, selector: "mat-drawer", inputs: ["position", "mode", "disableClose", "autoFocus", "opened"], outputs: ["openedChange", "opened", "openedStart", "closed", "closedStart", "positionChanged"], exportAs: ["matDrawer"] }, { kind: "component", type: i13.MatDrawerContainer, selector: "mat-drawer-container", inputs: ["autosize", "hasBackdrop"], outputs: ["backdropClick"], exportAs: ["matDrawerContainer"] }, { kind: "component", type: i14.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i14.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i14.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i15.NotificationComponent, selector: "koala-notification-list", inputs: ["notifications"], outputs: ["deleteAll", "delete"] }, { kind: "component", type: i16.LoaderBarPageComponent, selector: "app-loader-page", inputs: ["show", "progress", "typeLoader"] }, { kind: "pipe", type: i7.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
365
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: PageComponent, decorators: [{
366
366
  type: Component,
367
367
  args: [{ selector: 'koala-page', providers: [KoalaTokenService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div *ngIf=\"showLoaderPage | async\" class=\"koala-loader-pg\">\n <div class=\"loader-content\">\n <figure>\n <img [src]=\"logo\" alt=\"Logotipo\"/>\n <figcaption *ngIf=\"(messageLoaderPage | async) as messageLoader\" [innerHTML]=\"messageLoader\"></figcaption>\n </figure>\n <mat-spinner></mat-spinner>\n </div>\n</div>\n<app-loader-page *ngIf=\"(loaderSubject | async) as loader\" [progress]=\"loader.progress\" [show]=\"loader.show\"\n [typeLoader]=\"loader.typeLoader\"></app-loader-page>\n<mat-drawer-container autosize class=\"menu-container\">\n <mat-drawer #drawer class=\"menu-options\" [mode]=\"isMobile ? 'push' : 'side'\">\n <img [src]=\"logo\" alt=\"Logotipo\" id=\"logotipo\"/>\n <ng-content *ngIf=\"showMenu\" select=\"[menu-options]\"></ng-content>\n </mat-drawer>\n\n <mat-toolbar *ngIf=\"!!(logged$ | async) && (username$ | async)\" class=\"toolbar\">\n <img *ngIf=\"!showMenu\" [src]=\"logo\" alt=\"Logotipo Toolbar\" id=\"logotipo-toolbar\"/>\n <button (click)=\"toogleMenu()\" *ngIf=\"showMenu\" [color]=\"color\" class=\"btn-collapse-menu\" mat-icon-button>\n <mat-icon>menu</mat-icon>\n </button>\n <span class=\"spacer\"></span>\n\t <div class=\"menu-toolbar\">\n\t\t <ng-content select=\"[menu-toolbar]\"></ng-content>\n\t </div>\n <div *ngIf=\"(notifications | async) as notificationList\">\n <button *ngIf=\"notifications\" [color]=\"color\" [matMenuTriggerFor]=\"notificationsMenu\" class=\"btn-toolbar\"\n mat-icon-button>\n <mat-icon\n\t [matBadgeHidden]=\"notificationList.length === 0\"\n\t [matBadge]=\"notificationList.length.toString()\"\n\t matBadgeColor=\"warn\">notifications\n </mat-icon>\n </button>\n <mat-menu #notificationsMenu=\"matMenu\" class=\"menu-list\" yPosition=\"below\">\n <koala-notification-list\n (delete)=\"deleteNotification.emit($event)\"\n (deleteAll)=\"deleteAllNotifications.emit($event)\"\n [notifications]=\"notificationList\">\n </koala-notification-list>\n </mat-menu>\n </div>\n <button [color]=\"color\" [matMenuTriggerFor]=\"userOptions\" class=\"btn-toolbar\" mat-button>\n <span>{{username$ | async}}</span>\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span>\n </button>\n <mat-menu #userOptions=\"matMenu\" class=\"user-menu menu-list\" yPosition=\"below\">\n <div class=\"user-presentation\">\n <span class=\"icon-user\">{{firstUserLetter$ | async}}</span><br/>\n <span class=\"username\">{{username$ | async}}</span>\n </div>\n <button (click)=\"btn.action()\" *ngFor=\"let btn of userMenuOptions\" mat-menu-item>\n <mat-icon>{{btn.icon}}</mat-icon>\n <span>{{btn.name}}</span>\n </button>\n <button (click)=\"logout()\" mat-menu-item>\n <mat-icon>exit_to_app</mat-icon>\n <span>{{language === 'ptBr' ? 'Sair' : 'Logout'}}</span>\n </button>\n </mat-menu>\n </mat-toolbar>\n\n <ng-content class=\"page-content\" select=\"[page-content]\"></ng-content>\n\n</mat-drawer-container>\n\n<ng-content class=\"loading-info-content\" select=\"[loading-info-content]\"></ng-content>\n", styles: [".menu-container{height:100vh;width:100vw}.menu-options{border:none;padding:20px 0 0;width:250px}.page-content{align-items:center;display:flex;height:100%;justify-content:center}img#logotipo,img#logotipo-toolbar{display:block;height:auto;margin:0 auto 25px;position:relative;width:120px}.toolbar{box-shadow:none;padding:0 7px 0 13px}.toolbar img#logotipo-toolbar{margin:0;padding:0 10px}.menu-toolbar{margin:0 10px}.spacer{flex:1 1 auto}.btn-toolbar{display:inline-block;margin-right:10px;position:relative}.btn-toolbar span{padding:0 10px 0 0}.btn-toolbar span.icon-user,.user-presentation span.icon-user{border-radius:50%;display:inline-block;height:10px;line-height:10px;padding:5px;width:10px}.user-presentation{min-width:260px;padding:50px 10px;text-align:center}.user-presentation span.icon-user{font-size:30px;height:30px;line-height:30px;margin-bottom:10px;width:30px}.user-presentation span.username{font-family:OpenSansLight,sans-serif;word-break:break-all}@media (max-width: 900px){.btn-toolbar span:first-child{display:none}.btn-toolbar span.icon-user,.user-presentation span.icon-user{height:20px;line-height:20px;width:20px}}\n"] }]
368
368
  }], ctorParameters: function () { return [{ type: i1.KoalaTokenService }, { type: i2.Router }, { type: i3.KoalaLoaderService }, { type: i4.KoalaMenuService }, { type: i5.KoalaOAuth2Service }, { type: i6.DeviceDetectorService }]; }, propDecorators: { showMenu: [{
@@ -401,4 +401,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
401
401
  type: ViewChild,
402
402
  args: ['drawer', { static: true }]
403
403
  }] } });
404
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvcGFnZS9wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL3BhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFFNUcsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFNMUUsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RFLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFL0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFekUsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVakYsTUFBTSxPQUFPLGFBQWE7SUE2RHhCLFlBQ1UsWUFBK0IsRUFDL0IsTUFBYyxFQUNkLGFBQWlDLEVBQ2pDLFdBQTZCLEVBQzdCLGFBQWlDLEVBQ2pDLGFBQW9DO1FBTHBDLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qs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Q0FBQztpQkFDbEM7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7MkdBeFdVLGFBQWE7K0ZBQWIsYUFBYSw0aUJBSGIsQ0FBQyxpQkFBaUIsQ0FBQyx3SUN6QmhDLHlxR0FvRUE7NEZEeENhLGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYLENBQUMsaUJBQWlCLENBQUMsbUJBQ2IsdUJBQXVCLENBQUMsTUFBTTtrUUFHdEMsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLHNCQUFzQjtzQkFBL0IsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBMkNzQyxJQUFJO3NCQUFoRCxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25DYW5jZWwsIE5hdmlnYXRpb25FbmQsIE5hdmlnYXRpb25FcnJvciwgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9hZGVyQmFyUGFnZUludGVyZmFjZSB9IGZyb20gJy4uL2xvYWRlci9sb2FkZXItYmFyLXBhZ2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLb2FsYVRva2VuU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Rva2VuL2tvYWxhLnRva2VuLnNlcnZpY2UnO1xuaW1wb3J0IHsgS29hbGFMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbG9hZGVyL2tvYWxhLmxvYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL2tvYWxhLm5vdGlmaWNhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgS29hbGFVc2VyTWVudU9wdGlvbnNJbnRlcmZhY2UgfSBmcm9tICcuL2tvYWxhLnVzZXItbWVudS1vcHRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBLb2FsYVBhZ2VQYWxsZXRDb2xvcnNJbnRlcmZhY2UgfSBmcm9tICcuL2tvYWxhLXBhZ2UtcGFsbGV0LWNvbG9ycy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTWF0RHJhd2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBLb2FsYU1lbnVTZXJ2aWNlLCBtZW51U3RhdGVTdWJqZWN0IH0gZnJvbSAnQGtvYWxhcngvdWkvbWVudSc7XG5pbXBvcnQgand0RW5jb2RlIGZyb20gXCJqd3QtZW5jb2RlXCI7XG5pbXBvcnQgeyBUb2tlbkZhY3RvcnkgfSBmcm9tIFwiLi4vc2VydmljZXMvdG9rZW4vdG9rZW4uZmFjdG9yeVwiO1xuaW1wb3J0IHsgS29hbGFPQXV0aDJTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL29wZW5pZC9rb2FsYS5vYXV0aDIuc2VydmljZVwiO1xuaW1wb3J0IHsgS29hbGFFbnZpcm9ubWVudCB9IGZyb20gXCIuLi9lbnZpcm9ubWVudHMva29hbGFFbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgS29hbGFPYXV0aENvbmZpZyB9IGZyb20gXCIuLi9zZXJ2aWNlcy9vcGVuaWQva29hbGEub2F1dGguY29uZmlnXCI7XG5pbXBvcnQgeyBLb2FsYU9hdXRoMkNvbmZpZ0ludGVyZmFjZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9vcGVuaWQva29hbGEtb2F1dGgyLWNvbmZpZy5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IEtvYWxhTGFuZ3VhZ2VIZWxwZXIsIEtvYWxhTGFuZ3VhZ2VUeXBlIH0gZnJvbSBcIi4va29hbGEtbGFuZ3VhZ2UuaGVscGVyXCI7XG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tIFwibmd4LWRldmljZS1kZXRlY3RvclwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrb2FsYS1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICdwYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ3BhZ2UuY29tcG9uZW50LmNzcyddLFxuICBwcm92aWRlcnM6IFtLb2FsYVRva2VuU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBzaG93TWVudTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG4gIEBJbnB1dCgpIGxvZ286IHN0cmluZztcbiAgQElucHV0KCkgc3RhcnRNZW51T3BlbmVkID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0xvYWRlclBhZ2U6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgQElucHV0KCkgbWVzc2FnZUxvYWRlclBhZ2U6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+O1xuICBASW5wdXQoKSBkZWZhdWx0UGFnZTogc3RyaW5nO1xuICBASW5wdXQoKSBvcGVuUGFnZXM6IHN0cmluZ1tdO1xuICBASW5wdXQoKSBub3RpZmljYXRpb25zOiBCZWhhdmlvclN1YmplY3Q8S29hbGFOb3RpZmljYXRpb25JbnRlcmZhY2VbXT47XG4gIEBJbnB1dCgpIHVzZXJNZW51T3B0aW9uczogS29hbGFVc2VyTWVudU9wdGlvbnNJbnRlcmZhY2VbXSA9IFtdO1xuICBASW5wdXQoKSBwYWxsZXRDb2xvcnM6IEtvYWxhUGFnZVBhbGxldENvbG9yc0ludGVyZmFjZTtcbiAgQElucHV0KCkgbGFuZ3VhZ2U6IEtvYWxhTGFuZ3VhZ2VUeXBlID0gJ3B0QnInO1xuICBAT3V0cHV0KCkgdmFsaWRhdGluZ1Njb3BlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBsb2dvdXRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBkZWxldGVBbGxOb3RpZmljYXRpb25zID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBkZWxldGVOb3RpZmljYXRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlPihudWxsKTtcblxuICBwdWJsaWMgbG9hZGVyU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PExvYWRlckJhclBhZ2VJbnRlcmZhY2U+O1xuICBwdWJsaWMgdXNlcm5hbWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHVibGljIGZpcnN0VXNlckxldHRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwdWJsaWMgY3VycmVudFVybDogc3RyaW5nO1xuICBwdWJsaWMgbG9nZ2VkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgdmFsaWRhdGlvblNjb3BlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNNb2JpbGU6IGJvb2xlYW4gPSB0aGlzLmRldmljZVNlcnZpY2UuaXNNb2JpbGUoKTtcblxuICBwcml2YXRlIGRlZmF1bHRQYWxsZXRDb2xvcnM6IEtvYWxhUGFnZVBhbGxldENvbG9yc0ludGVyZmFjZSA9IHtcbiAgICBzY3JvbGxiYXJDb2xvcjogJyMxOTc2RDInLFxuICAgIHNjcm9sbGJhckNvbG9ySG92ZXI6ICcjMTU2NUMwJyxcbiAgICB1c2VyUHJlc2VudGF0aW9uQmFja2dyb3VuZDogJyNmMWYxZjEnLFxuICAgIHVzZXJQcmVzZW50YXRpb25Vc2VyQmFja2dyb3VuZDogJyMxOTc2RDInLFxuICAgIHVzZXJQcmVzZW50YXRpb25Vc2VyRm9udENvbG9yOiAnI2ZmZicsXG4gICAgZmlyc3RDb2xvcjogJyNmZmYnLFxuICAgIHNlY29uZENvbG9yOiAnI0YxRjFGMScsXG4gICAgYm9keUJhY2tncm91bmQ6ICcjZWVlZWVlJyxcbiAgICBjaGVja2JveEJhY2tncm91bmQ6ICcjMTk3NmQyJyxcbiAgICBjaGVja2JveENvbG9yOiAnI2ZmZmZmZicsXG4gICAgZm9udENvbG9yOiAnIzE5NzZEMicsXG4gICAgZm9udEhvdmVyQ29sb3I6ICcjMTk3NkQyJyxcbiAgICBmb250QWN0aXZlQ29sb3I6ICcjMTU2NUMwJyxcbiAgICBtZW51VGl0bGVCYWNrZ3JvdW5kOiAncmdiYSgwLDAsMCwuMSknLFxuICAgIG1lbnVUaXRsZUNvbG9yOiAncmdiYSgwLDAsMCwuMyknLFxuICAgIG1lbnVCYWNrZ3JvdW5kOiAnI2ZhZmFmYScsXG4gICAgbWVudU9wdGlvbnNCYWNrZ3JvdW5kOiAnI2VhZWFlYScsXG4gICAgbWVudU9wdGlvbnNDb2xvcjogJyNhNWE1YTUnLFxuICAgIG1lbnVPcHRpb25zQ29sb3JIb3ZlcjogJyMxOTc2RDInLFxuICAgIG1lbnVPcHRpb25zQ29sb3JBY3RpdmU6ICcjMTU2NWMwJyxcbiAgICB0b29sYmFyQmFja2dyb3VuZDogJyNmZmZmZmYnLFxuICAgIHRvb2xiYXJDb2xvcjogJyMxOTc2ZDInLFxuICAgIGxpc3RCYWNrZ3JvdW5kOiAnI2ZmZicsXG4gICAgbGlzdENvbnRlbnRCYWNrZ3JvdW5kOiAnI2ZmZicsXG4gICAgbGlzdFRpdGxlSXRlbUNvbG9yOiAnIzgzODM4MycsXG4gICAgbGlzdEl0ZW1Db2xvcjogJyMzZTNlM2UnLFxuICAgIGxpc3RJdGVtQmFja2dyb3VkSG92ZXI6ICcjRjFGMUYxJyxcbiAgICBsaXN0SXRlbUJhY2tncm91bmRBY3RpdmU6ICcjRUVFJyxcbiAgICBzaGFkb3dDb2xvclRhYmxlTGlzdDogJ3JnYmEoMjUsIDExOCwgMjEwLCAuNCknXG4gIH07XG4gIHByaXZhdGUgb2F1dGhFdmVudHNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBAVmlld0NoaWxkKCdkcmF3ZXInLCB7c3RhdGljOiB0cnVlfSkgcHJpdmF0ZSBtZW51OiBNYXREcmF3ZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0b2tlblNlcnZpY2U6IEtvYWxhVG9rZW5TZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBsb2FkZXJTZXJ2aWNlOiBLb2FsYUxvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZW51U2VydmljZTogS29hbGFNZW51U2VydmljZSxcbiAgICBwcml2YXRlIG9hdXRoMlNlcnZpY2U6IEtvYWxhT0F1dGgyU2VydmljZSxcbiAgICBwcml2YXRlIGRldmljZVNlcnZpY2U6IERldmljZURldGVjdG9yU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5sb2FkZXJTdWJqZWN0ID0gbG9hZGVyU2VydmljZS5nZXRMb2FkZXJTdWJqZWN0KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBLb2FsYUxhbmd1YWdlSGVscGVyLnNldExhbmd1YWdlKHRoaXMubGFuZ3VhZ2UpO1xuICAgIHRoaXMuaW5pdE9BdXRoMigpO1xuICAgIGlmICh0aGlzLm9wZW5QYWdlcykge1xuICAgICAgaWYgKHRoaXMub3BlblBhZ2VzLmluZGV4T2YoJy8nKSA8IDApIHtcbiAgICAgICAgdGhpcy5vcGVuUGFnZXMucHVzaCgnLycpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMub3BlblBhZ2VzLmluZGV4T2YoJy9sb2dpbicpIDwgMCkge1xuICAgICAgICB0aGlzLm9wZW5QYWdlcy5wdXNoKCcvbG9naW4nKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuUGFnZXMgPSBbXG4gICAgICAgICcvJyxcbiAgICAgICAgJy9sb2dpbidcbiAgICAgIF07XG4gICAgfVxuXG4gICAgdGhpcy50b2tlblNlcnZpY2UuZ2V0VG9rZW4oKT8uc3Vic2NyaWJlKHRva2VuID0+IHtcbiAgICAgIHRoaXMubG9nZ2VkJC5uZXh0KCEhdG9rZW4pO1xuICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpKSB7XG4gICAgICAgIGNvbnN0IGRlY29kZWRUb2tlbiA9IHRoaXMudG9rZW5TZXJ2aWNlLmdldERlY29kZWRUb2tlbjx7IGxvZ2luOiBzdHJpbmcgfT4oKTtcbiAgICAgICAgdGhpcy51c2VybmFtZSQubmV4dChkZWNvZGVkVG9rZW4ubG9naW4pO1xuICAgICAgICB0aGlzLmZpcnN0VXNlckxldHRlciQubmV4dChkZWNvZGVkVG9rZW4ubG9naW4uY2hhckF0KDApLnRvVXBwZXJDYXNlKCkpO1xuICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLm9wZW4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpICYmIHRoaXMub3BlblBhZ2VzPy5pbmRleE9mKHRoaXMuY3VycmVudFVybCkgPj0gMCAmJiB0aGlzLmRlZmF1bHRQYWdlKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmRlZmF1bHRQYWdlXSkudGhlbigpO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy5sb2dnZWQkLmdldFZhbHVlKCkgJiYgdGhpcy5jdXJyZW50VXJsICYmIHRoaXMub3BlblBhZ2VzPy5pbmRleE9mKHRoaXMuY3VycmVudFVybCkgPCAwKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbG9naW4nXSkudGhlbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgY2FzZSBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydDoge1xuICAgICAgICAgIHRoaXMubG9hZGVyU2VydmljZS5jcmVhdGUoe3R5cGVMb2FkZXI6ICdpbmRldGVybWluYXRlJ30pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQ6XG4gICAgICAgIGNhc2UgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsOlxuICAgICAgICBjYXNlIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yOiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXJTZXJ2aWNlLmRpc21pc3MoKTtcbiAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLmNsb3NlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybCA9IGV2ZW50LnVybC5zcGxpdCgnPycpWzBdO1xuXG4gICAgICAgICAgICBpZiAoZXZlbnQudXJsLmluZGV4T2YoJy9sb2dpbj9jbGllbnRJZD0nKSA8IDApIHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpICYmIHRoaXMuZGVmYXVsdFBhZ2UgJiYgdGhpcy5vcGVuUGFnZXM/LmluZGV4T2YodGhpcy5jdXJyZW50VXJsKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuZGVmYXVsdFBhZ2VdKS50aGVuKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmxvZ2dlZCQuZ2V0VmFsdWUoKSAmJiB0aGlzLm9wZW5QYWdlcz8uaW5kZXhPZih0aGlzLmN1cnJlbnRVcmwpIDwgMCkge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbG9naW4nXSkudGhlbigpO1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAodGhpcy5wYWxsZXRDb2xvcnMpIHtcbiAgICAgIE9iamVjdC5rZXlzKHRoaXMuZGVmYXVsdFBhbGxldENvbG9ycykuZm9yRWFjaChpbmRleE5hbWUgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIXRoaXMucGFsbGV0Q29sb3JzLmhhc093blByb3BlcnR5KGluZGV4TmFtZSkgfHxcbiAgICAgICAgICAhdGhpcy5wYWxsZXRDb2xvcnNbaW5kZXhOYW1lXVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLnBhbGxldENvbG9yc1tpbmRleE5hbWVdID0gdGhpcy5kZWZhdWx0UGFsbGV0Q29sb3JzW2luZGV4TmFtZV07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhbGxldENvbG9ycyA9IHRoaXMuZGVmYXVsdFBhbGxldENvbG9ycztcbiAgICB9XG4gICAgdGhpcy5kZWZpbmVDb2xvcigpO1xuXG4gICAgaWYgKHRoaXMuc2hvd01lbnUpIHtcbiAgICAgIG1lbnVTdGF0ZVN1YmplY3Quc3Vic2NyaWJlKGFzeW5jIChzdGF0ZSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5tZW51KSB7XG4gICAgICAgICAgaWYgKHN0YXRlID09PSAnY2xvc2UnKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tZW51Lm9wZW5lZCkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1lbnUuY2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2UgaWYgKHN0YXRlID09PSAnb3BlbicpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5tZW51Lm9wZW5lZCkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1lbnUub3BlbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAodGhpcy5zdGFydE1lbnVPcGVuZWQgJiYgdGhpcy5sb2dnZWQkLmdldFZhbHVlKCkpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgdGhpcy5tZW51U2VydmljZS5vcGVuKCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubWVudVNlcnZpY2UuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tZW51U2VydmljZS5jbG9zZSgpO1xuICAgIH1cblxuICAgIHRoaXMudmFsaWRhdGlvblNjb3BlJC5zdWJzY3JpYmUoc2NvcGUgPT4gdGhpcy52YWxpZGF0aW5nU2NvcGUuZW1pdChzY29wZSkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHRvb2dsZU1lbnUoKSB7XG4gICAgdGhpcy5tZW51U2VydmljZS5jbGVhckNvbmZpZygpO1xuICAgIGlmICh0aGlzLm1lbnUpIHtcbiAgICAgIGF3YWl0IHRoaXMubWVudS50b2dnbGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9nb3V0KCkge1xuICAgIGlmIChLb2FsYUVudmlyb25tZW50LmVudmlyb25tZW50Py5vYXV0aENvbmZpZykge1xuICAgICAgdGhpcy5vYXV0aDJTZXJ2aWNlLmxvZ291dCgpO1xuICAgIH1cbiAgICB0aGlzLm1lbnVTZXJ2aWNlLmNsb3NlKCk7XG4gICAgdGhpcy50b2tlblNlcnZpY2UucmVtb3ZlVG9rZW4oKTtcbiAgICB0aGlzLnRva2VuU2VydmljZS5nZXRUb2tlbigpLm5leHQobnVsbCk7XG4gICAgdGhpcy5sb2dvdXRFbWl0dGVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgZGVmaW5lQ29sb3IoKSB7XG4gICAgY29uc3QgY3NzID0gYFxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuc2Nyb2xsYmFyQ29sb3J9O3dpZHRoOiAycHg7fVxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuc2Nyb2xsYmFyQ29sb3JIb3Zlcn07fVxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCwgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cywgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlciB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLm1lbnUtY29udGFpbmVyLFxuYm9keSB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5ib2R5QmFja2dyb3VuZH0haW1wb3J0YW50O31cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIgey13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4ICR7dGhpcy5wYWxsZXRDb2xvcnMuZmlyc3RDb2xvcn0gaW5zZXQgIWltcG9ydGFudDt9XG4ubWF0LWJ1dHRvbi1kaXNhYmxlZCxcbmlucHV0OjpwbGFjZWhvbGRlcixcbi5tYXQtZm9ybS1maWVsZC1hcHBlYXJhbmNlLW91dGxpbmUgLm1hdC1mb3JtLWZpZWxkLW91dGxpbmUge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O29wYWNpdHk6IC42O31cbi5tYXQtaGludCxcbi5tYXQtZXhwYW5zaW9uLWluZGljYXRvcjo6YWZ0ZXIsXG4ubW9yZS1pdGVtcy1jb250ZW50IC5pdGVtcyAudGl0bGVGb3JtLFxuZmllbGRzZXQgbGVnZW5kLFxuLm1hdC1wYWdpbmF0b3ItY29udGFpbmVyLFxuLm1hdC1mb3JtLWZpZWxkLWZsZXggbWF0LWljb24ge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtcGFnaW5hdG9yLWNvbnRhaW5lcixcbi5tYXQtY2FyZCxcbi5tYXQtZXhwYW5zaW9uLXBhbmVsLFxuLm1hdC1zZWxlY3QtcGFuZWwsXG4ubWF0LWF1dG9jb21wbGV0ZS1wYW5lbCxcbi5tYXQtbWVudS1wYW5lbCB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5maXJzdENvbG9yfX1cbi5tYXQtc2VsZWN0ZWQge2JhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjMpIWltcG9ydGFudDt9XG4ucXVlc3Rpb24gcCxcbi5hbGVydC1tZXNzYWdlLFxuLm1hdC1hY3Rpb24tcm93LFxuLm1hdC1vcHRpb24sXG4ubWF0LW1lbnUtaXRlbSxcbi5tYXQtbWVudS1pdGVtIG1hdC1pY29uIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9IWltcG9ydGFudH1cbi5tYXQtc2VsZWN0LXZhbHVlLFxuLm1hdC1zZWxlY3QtYXJyb3csXG4ubWF0LWZvcm0tZmllbGQgaW5wdXQsXG4ubWF0LWZvcm0tZmllbGQgdGV4dGFyZWEsXG4ubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1vdXRsaW5lOm5vdCgubWF0LWZvcm0tZmllbGQtaW52YWxpZCkgLm1hdC1mb3JtLWZpZWxkLW91dGxpbmUtdGhpY2ssXG4ubWF0LWZvcm0tZmllbGQgbGFiZWwsXG4uc2VsZWN0LW11bHRpcGxlLW5hdGl2ZSBzZWxlY3Qge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O2NhcmV0LWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmUsXG4ubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1maWxsIC5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmU6OmJlZm9yZSxcbi5tYXQtZm9ybS1maWVsZC1yaXBwbGUge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLm1hdC1jaGVja2JveC1jaGVja2VkLm1hdC1hY2NlbnQgLm1hdC1jaGVja2JveC1iYWNrZ3JvdW5kLCAubWF0LWNoZWNrYm94LWluZGV0ZXJtaW5hdGUubWF0LWFjY2VudCAubWF0LWNoZWNrYm94LWJhY2tncm91bmQsXG4ubWF0LWNoZWNrYm94Om5vdCgubWF0LWNoZWNrYm94LWRpc2FibGVkKS5tYXQtYWNjZW50IC5tYXQtY2hlY2tib3gtcmlwcGxlIC5tYXQtcmlwcGxlLWVsZW1lbnQge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hCYWNrZ3JvdW5kfSAhaW1wb3J0YW50O31cbi5tYXQtY2hlY2tib3gtY2hlY2ttYXJrLXBhdGgge3N0cm9rZTogJHt0aGlzLnBhbGxldENvbG9ycy5jaGVja2JveENvbG9yfSAhaW1wb3J0YW50O31cbi5tYXQtY2hlY2tib3gtY2hlY2ttYXJrIHtmaWxsOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94Q29sb3J9ICFpbXBvcnRhbnQ7fVxuLm1hdC1jaGVja2JveC1taXhlZG1hcmsge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hDb2xvcn0gIWltcG9ydGFudDt9XG4ubWF0LWNoZWNrYm94LWZyYW1lIHtib3JkZXItY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hPdXRsaW5lQ29sb3J9IWltcG9ydGFudDt9XG4ubWF0LWNoZWNrYm94LWxhYmVsIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9IWltcG9ydGFudDt9XG4ubWF0LXJhZGlvLW91dGVyLWNpcmNsZSB7Ym9yZGVyLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94QmFja2dyb3VuZH0haW1wb3J0YW50O31cbi5tYXQtcmFkaW8tcmlwcGxlIC5tYXQtcmlwcGxlLWVsZW1lbnQsIC5tYXQtcmFkaW8taW5uZXItY2lyY2xlIHtiYWNrZ3JvdW5kLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94QmFja2dyb3VuZH0gIWltcG9ydGFudDt9XG4uaG9tZS1saXN0LWNhcmRzIC5saXN0IC5tYXQtbGlzdC1pdGVtLWNvbnRlbnQgLm1hdC1pY29uIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9O31cbi5ob21lLWxpc3QtY2FyZHMgLmxpc3QgYnV0dG9uIC5tYXQtYmFkZ2UtY29udGVudCB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9O31cbi5rb2FsYS1kaWFsb2cgLm1hdC1kaWFsb2ctdGl0bGUgaDIge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLmtvYWxhLWRpYWxvZyAubWF0LWRpYWxvZy10aXRsZSBtYXQtaWNvbiB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLmtvYWxhLWRpYWxvZyAubWF0LWRpYWxvZy1jb250YWluZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZmlyc3RDb2xvcn19XG4ubGlzdC1maWx0ZXIgbWF0LWljb24ge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpbHRlckljb25Db2xvcn0haW1wb3J0YW50O31cbmtvYWxhLXBhZ2UgLm1lbnUtb3B0aW9ucyB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51QmFja2dyb3VuZH07fVxua29hbGEtcGFnZSAudG9vbGJhciB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy50b29sYmFyQmFja2dyb3VuZH07fVxua29hbGEtcGFnZSAudG9vbGJhciAuYnRuLWNvbGxhcHNlLW1lbnUsXG5rb2FsYS1wYWdlIC5idG4tdG9vbGJhciBzcGFue2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLnRvb2xiYXJDb2xvcn07fVxua29hbGEtcGFnZSAuYnRuLXRvb2xiYXIgc3Bhbi5pY29uLXVzZXIsXG4udXNlci1wcmVzZW50YXRpb24gc3Bhbi5pY29uLXVzZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMudXNlclByZXNlbnRhdGlvblVzZXJCYWNrZ3JvdW5kfTtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy51c2VyUHJlc2VudGF0aW9uVXNlckZvbnRDb2xvcn07fVxuLnVzZXItcHJlc2VudGF0aW9uIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLnVzZXJQcmVzZW50YXRpb25CYWNrZ3JvdW5kfTt9XG4udXNlci1wcmVzZW50YXRpb24gc3Bhbi51c2VybmFtZSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMudG9vbGJhckNvbG9yfTt9XG4ubWF0LWRyYXdlci5tYXQtZHJhd2VyLXB1c2gge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuYm9keUJhY2tncm91bmR9O31cbmtvYWxhLW1lbnUgLnRpdGxlIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVUaXRsZUJhY2tncm91bmR9O2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVUaXRsZUNvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpLFxua29hbGEtbWVudSB1bCBsaSBhIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyLFxua29hbGEtbWVudSB1bCBsaTpob3ZlciBhIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9ySG92ZXJ9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaS5hY3RpdmUsXG5rb2FsYS1tZW51IHVsIGxpLmV4cGFuZGVkIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yQWN0aXZlfSAhaW1wb3J0YW50O2JvcmRlci1sZWZ0OiA0cHggc29saWQgJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yQWN0aXZlfSAhaW1wb3J0YW50O2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNCYWNrZ3JvdW5kfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkuYWN0aXZlIGEsXG5rb2FsYS1tZW51IHVsIGxpLmV4cGFuZGVkIGEge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVPcHRpb25zQ29sb3JBY3RpdmV9ICFpbXBvcnRhbnQ7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0JhY2tncm91bmR9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaSBsaTpob3ZlcixcbmtvYWxhLW1lbnUgdWwgbGkgbGk6aG92ZXIgYSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckhvdmVyfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlLFxua29hbGEtbWVudSB1bCBsaSBsaS5hY3RpdmUgYSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckFjdGl2ZX0gIWltcG9ydGFudDt9XG5rb2FsYS1tZW51IHVsIGxpIGtvYWxhLWljb24gc3ZnICosXG5rb2FsYS1tZW51IHVsIGxpIGEga29hbGEtaWNvbiBzdmcgKiB7ZmlsbDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyIGtvYWxhLWljb24gc3ZnICosXG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyIGEga29hbGEtaWNvbiBzdmcgKiB7ZmlsbDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9ySG92ZXJ9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaS5hY3RpdmUga29hbGEtaWNvbiAqLFxua29hbGEtbWVudSB1bCBsaS5leHBhbmRlZCBrb2FsYS1pY29uICoge2ZpbGw6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckFjdGl2ZX0gIWltcG9ydGFudDt9XG5rb2FsYS1tZW51IHVsIGxpIGxpOmhvdmVyIGtvYWxhLWljb24gKixcbmtvYWxhLW1lbnUgdWwgbGkgbGk6aG92ZXIgYSBrb2FsYS1pY29uICoge2ZpbGw6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckhvdmVyfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlIGtvYWxhLWljb24gKixcbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlIGEga29hbGEtaWNvbiAqIHtmaWxsOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVPcHRpb25zQ29sb3JBY3RpdmV9IWltcG9ydGFudDt9XG4ubm90aWZpY2F0aW9ucy1jb250ZW50IC50aXRsZSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubm90aWZpY2F0aW9uVGl0bGVDb2xvcn0haW1wb3J0YW50O31cbi5ub3RpZmljYXRpb25zLWNvbnRlbnQgLmVtcHR5LFxuLm5vdGlmaWNhdGlvbnMtY29udGVudCAudGl0bGVMaXN0IHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5ub3RpZmljYXRpb25Db250ZW50VGl0bGVDb2xvcn0haW1wb3J0YW50O31cbi5ub3RpZmljYXRpb25zLWNvbnRlbnQgLmljb25MaXN0IHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5ub3RpZmljYXRpb25Db250ZW50SWNvbkNvbG9yfSFpbXBvcnRhbnQ7fVxuLm5vdGlmaWNhdGlvbnMtY29udGVudCAudGV4dExpc3Qge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm5vdGlmaWNhdGlvblRpdGxlQ29sb3J9IWltcG9ydGFudDt9XG4ubGlzdC1jb250YWluZXIge2JveC1zaGFkb3c6IDAgMXB4IDNweCAke3RoaXMucGFsbGV0Q29sb3JzLnNoYWRvd0NvbG9yVGFibGVMaXN0fTt9XG4ubGlzdC1jb250YWluZXIgLmxpc3QgdGFibGUudGFibGUtaG92ZXIgdHI6aG92ZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEl0ZW1CYWNrZ3JvdWRIb3Zlcn07fVxuLmxpc3QtY29udGFpbmVyIC5saXN0IHRhYmxlLnRhYmxlLWhvdmVyIHRyOmFjdGl2ZSB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5saXN0SXRlbUJhY2tncm91bmRBY3RpdmV9O31cbi5saXN0LWNvbnRhaW5lciAubGlzdC1maWx0ZXIgLmFkdmFuY2VkIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpcnN0Q29sb3J9O31cbi5saXN0LWNvbnRhaW5lciBuYXYubWVudS1saXN0IHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpcnN0Q29sb3J9O2NvbG9yOiByZ2JhKDI1LCAxMTgsIDIxMCwgLjMpO31cbi5jb250ZW50IHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmxpc3RDb250ZW50QmFja2dyb3VuZH07fVxuLm1hdC10YWItZ3JvdXAgLm1hdC10YWItbGFiZWwge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLm1hdC10YWItZ3JvdXAgLm1hdC1pbmstYmFyIHtiYWNrZ3JvdW5kLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtdGFibGUge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEJhY2tncm91bmR9O2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLm1hdC10YWJsZSB0aCB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdFRpdGxlSXRlbUNvbG9yfSFpbXBvcnRhbnQ7fVxuLm1hdC1zb3J0LWhlYWRlci1hcnJvdyB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEl0ZW1Db2xvcn0haW1wb3J0YW50O31cbi5tYXQtdGFibGUgdGQge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmxpc3RJdGVtQ29sb3J9IWltcG9ydGFudDt9YDtcbiAgICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICAgIGNvbnN0IHN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcbiAgICBzdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdE9BdXRoMigpIHtcbiAgICBLb2FsYU9hdXRoQ29uZmlnLmNvbmZpZy5zdWJzY3JpYmUoY29uZmlnID0+IHRoaXMuc3RhcnRDb25maWcoY29uZmlnKSk7XG4gICAgaWYgKEtvYWxhT2F1dGhDb25maWcuaGFzQ29uZmlnKCkpIHtcbiAgICAgIEtvYWxhT2F1dGhDb25maWcuc2V0Q29uZmlnKEtvYWxhT2F1dGhDb25maWcuZ2V0Q29uZmlnKCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRDb25maWcoY29uZmlnOiBLb2FsYU9hdXRoMkNvbmZpZ0ludGVyZmFjZSkge1xuICAgIGlmIChjb25maWcuY2xpZW50SWQpIHtcbiAgICAgIHRoaXMub2F1dGgyU2VydmljZS5jb25maWd1cmUoe1xuICAgICAgICByZWRpcmVjdFVyaTogd2luZG93LmxvY2F0aW9uLm9yaWdpbixcbiAgICAgICAgcmVkaXJlY3RVcmlBZnRlckF1dGg6IHRoaXMuZGVmYXVsdFBhZ2UsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2NvZGUnLFxuICAgICAgICBjbGllbnRJZDogY29uZmlnLmNsaWVudElkLFxuICAgICAgICBzY29wZTogY29uZmlnLnNjb3BlLFxuICAgICAgICBpc3N1ZXI6IGNvbmZpZy5kb21haW4sXG4gICAgICAgIGN1c3RvbVF1ZXJ5UGFyYW1zOiBjb25maWcuY3VzdG9tUXVlcnlQYXJhbXMsXG4gICAgICAgIGVuZHBvaW50VG9rZW46IGNvbmZpZy5lbmRwb2ludFRva2VuID8/IG51bGwsXG4gICAgICAgIGVuZHBvaW50Q2xhaW1zOiBjb25maWcuZW5kcG9pbnRDbGFpbXMgPz8gbnVsbFxuICAgICAgfSk7XG4gICAgICB0aGlzLm9hdXRoMlNlcnZpY2UubG9hZERpc2NvdmVyeURvY3VtZW50QW5kVHJ5TG9naW4oKS50aGVuKCk7XG5cbiAgICAgIGlmICh0aGlzLm9hdXRoRXZlbnRzU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMub2F1dGhFdmVudHNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMub2F1dGhFdmVudHNTdWJzY3JpcHRpb24gPSB0aGlzLm9hdXRoMlNlcnZpY2UuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudCA9PT0gJ3VzZXJBdXRoZW50aWNhdGVkJyB8fCBldmVudCA9PT0gJ3JlZnJlc2hUb2tlbicpIHtcbiAgICAgICAgICBjb25zdCBjbGFpbXMgPSB0aGlzLm9hdXRoMlNlcnZpY2UuZ2V0SWRlbnRpdHlDbGFpbXMoKTtcbiAgICAgICAgICBpZiAoY2xhaW1zICYmIChcbiAgICAgICAgICAgICFUb2tlbkZhY3RvcnkuaGFzVG9rZW4oKSB8fFxuICAgICAgICAgICAgKFRva2VuRmFjdG9yeS5oYXNUb2tlbigpICYmIGV2ZW50ID09PSAncmVmcmVzaFRva2VuJylcbiAgICAgICAgICApKSB7XG4gICAgICAgICAgICB0aGlzLnRva2VuU2VydmljZS5zZXRUb2tlbihqd3RFbmNvZGUoe1xuICAgICAgICAgICAgICBhY2Nlc3NUb2tlbjogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCksXG4gICAgICAgICAgICAgIGlkVG9rZW46IHRoaXMub2F1dGgyU2VydmljZS5nZXRJZFRva2VuKCksXG4gICAgICAgICAgICAgIHJlZnJlc2hUb2tlbjogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldFJlZnJlc2hUb2tlbigpLFxuICAgICAgICAgICAgICBsb2dpbjogY2xhaW1zW2NvbmZpZy5pbmRleExvZ2luTmFtZV0gPz8gJ1VuZGVmaW5lZCcsXG4gICAgICAgICAgICAgIGV4cGlyZWQ6IHRoaXMub2F1dGgyU2VydmljZS5nZXRBY2Nlc3NUb2tlbkV4cGlyYXRpb24oKSxcbiAgICAgICAgICAgICAgY29kZTogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldENvZGUoKVxuICAgICAgICAgICAgfSwgJ3NlY3JldCcpKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChldmVudCA9PT0gJ3VzZXJBdXRoZW50aWNhdGVkJykge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnZhbGlkYXRpb25TY29wZSQubmV4dChmYWxzZSksIDMwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAnZ2V0VG9rZW4nKSB7XG4gICAgICAgICAgdGhpcy52YWxpZGF0aW9uU2NvcGUkLm5leHQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cInNob3dMb2FkZXJQYWdlIHwgYXN5bmNcIiBjbGFzcz1cImtvYWxhLWxvYWRlci1wZ1wiPlxuICA8ZGl2IGNsYXNzPVwibG9hZGVyLWNvbnRlbnRcIj5cbiAgICA8ZmlndXJlPlxuICAgICAgPGltZyBbc3JjXT1cImxvZ29cIiBhbHQ9XCJMb2dvdGlwb1wiLz5cbiAgICAgIDxmaWdjYXB0aW9uICpuZ0lmPVwiKG1lc3NhZ2VMb2FkZXJQYWdlIHwgYXN5bmMpIGFzIG1lc3NhZ2VMb2FkZXJcIiBbaW5uZXJIVE1MXT1cIm1lc3NhZ2VMb2FkZXJcIj48L2ZpZ2NhcHRpb24+XG4gICAgPC9maWd1cmU+XG4gICAgPG1hdC1zcGlubmVyPjwvbWF0LXNwaW5uZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG48YXBwLWxvYWRlci1wYWdlICpuZ0lmPVwiKGxvYWRlclN1YmplY3QgfCBhc3luYykgYXMgbG9hZGVyXCIgW3Byb2dyZXNzXT1cImxvYWRlci5wcm9ncmVzc1wiIFtzaG93XT1cImxvYWRlci5zaG93XCJcbiAgICAgICAgICAgICAgICAgW3R5cGVMb2FkZXJdPVwibG9hZGVyLnR5cGVMb2FkZXJcIj48L2FwcC1sb2FkZXItcGFnZT5cbjxtYXQtZHJhd2VyLWNvbnRhaW5lciBhdXRvc2l6ZSBjbGFzcz1cIm1lbnUtY29udGFpbmVyXCI+XG4gIDxtYXQtZHJhd2VyICNkcmF3ZXIgY2xhc3M9XCJtZW51LW9wdGlvbnNcIiBbbW9kZV09XCJpc01vYmlsZSA/ICdwdXNoJyA6ICdzaWRlJ1wiPlxuICAgIDxpbWcgW3NyY109XCJsb2dvXCIgYWx0PVwiTG9nb3RpcG9cIiBpZD1cImxvZ290aXBvXCIvPlxuICAgIDxuZy1jb250ZW50ICpuZ0lmPVwic2hvd01lbnVcIiBzZWxlY3Q9XCJbbWVudS1vcHRpb25zXVwiPjwvbmctY29udGVudD5cbiAgPC9tYXQtZHJhd2VyPlxuXG4gIDxtYXQtdG9vbGJhciAqbmdJZj1cIiEhKGxvZ2dlZCQgfCBhc3luYykgJiYgKHVzZXJuYW1lJCB8IGFzeW5jKVwiIGNsYXNzPVwidG9vbGJhclwiPlxuICAgIDxpbWcgKm5nSWY9XCIhc2hvd01lbnVcIiBbc3JjXT1cImxvZ29cIiBhbHQ9XCJMb2dvdGlwbyBUb29sYmFyXCIgaWQ9XCJsb2dvdGlwby10b29sYmFyXCIvPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInRvb2dsZU1lbnUoKVwiICpuZ0lmPVwic2hvd01lbnVcIiBbY29sb3JdPVwiY29sb3JcIiBjbGFzcz1cImJ0bi1jb2xsYXBzZS1tZW51XCIgbWF0LWljb24tYnV0dG9uPlxuICAgICAgPG1hdC1pY29uPm1lbnU8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxzcGFuIGNsYXNzPVwic3BhY2VyXCI+PC9zcGFuPlxuXHQgIDxkaXYgY2xhc3M9XCJtZW51LXRvb2xiYXJcIj5cblx0XHQgIDxuZy1jb250ZW50IHNlbGVjdD1cIlttZW51LXRvb2xiYXJdXCI+PC9uZy1jb250ZW50PlxuXHQgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIobm90aWZpY2F0aW9ucyB8IGFzeW5jKSBhcyBub3RpZmljYXRpb25MaXN0XCI+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwibm90aWZpY2F0aW9uc1wiIFtjb2xvcl09XCJjb2xvclwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJub3RpZmljYXRpb25zTWVudVwiIGNsYXNzPVwiYnRuLXRvb2xiYXJcIlxuICAgICAgICAgICAgICBtYXQtaWNvbi1idXR0b24+XG4gICAgICAgIDxtYXQtaWNvblxuXHQgICAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMFwiXG5cdCAgICAgICAgW21hdEJhZGdlXT1cIm5vdGlmaWNhdGlvbkxpc3QubGVuZ3RoLnRvU3RyaW5nKClcIlxuXHQgICAgICAgIG1hdEJhZGdlQ29sb3I9XCJ3YXJuXCI+bm90aWZpY2F0aW9uc1xuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8bWF0LW1lbnUgI25vdGlmaWNhdGlvbnNNZW51PVwibWF0TWVudVwiIGNsYXNzPVwibWVudS1saXN0XCIgeVBvc2l0aW9uPVwiYmVsb3dcIj5cbiAgICAgICAgPGtvYWxhLW5vdGlmaWNhdGlvbi1saXN0XG4gICAgICAgICAgKGRlbGV0ZSk9XCJkZWxldGVOb3RpZmljYXRpb24uZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAoZGVsZXRlQWxsKT1cImRlbGV0ZUFsbE5vdGlmaWNhdGlvbnMuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICBbbm90aWZpY2F0aW9uc109XCJub3RpZmljYXRpb25MaXN0XCI+XG4gICAgICAgIDwva29hbGEtbm90aWZpY2F0aW9uLWxpc3Q+XG4gICAgICA8L21hdC1tZW51PlxuICAgIDwvZGl2PlxuICAgIDxidXR0b24gW2NvbG9yXT1cImNvbG9yXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInVzZXJPcHRpb25zXCIgY2xhc3M9XCJidG4tdG9vbGJhclwiIG1hdC1idXR0b24+XG4gICAgICA8c3Bhbj57e3VzZXJuYW1lJCB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cImljb24tdXNlclwiPnt7Zmlyc3RVc2VyTGV0dGVyJCB8IGFzeW5jfX08L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICAgPG1hdC1tZW51ICN1c2VyT3B0aW9ucz1cIm1hdE1lbnVcIiBjbGFzcz1cInVzZXItbWVudSBtZW51LWxpc3RcIiB5UG9zaXRpb249XCJiZWxvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInVzZXItcHJlc2VudGF0aW9uXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi11c2VyXCI+e3tmaXJzdFVzZXJMZXR0ZXIkIHwgYXN5bmN9fTwvc3Bhbj48YnIvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInVzZXJuYW1lXCI+e3t1c2VybmFtZSQgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJidG4uYWN0aW9uKClcIiAqbmdGb3I9XCJsZXQgYnRuIG9mIHVzZXJNZW51T3B0aW9uc1wiIG1hdC1tZW51LWl0ZW0+XG4gICAgICAgIDxtYXQtaWNvbj57e2J0bi5pY29ufX08L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57e2J0bi5uYW1lfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImxvZ291dCgpXCIgbWF0LW1lbnUtaXRlbT5cbiAgICAgICAgPG1hdC1pY29uPmV4aXRfdG9fYXBwPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3tsYW5ndWFnZSA9PT0gJ3B0QnInID8gJ1NhaXInIDogJ0xvZ291dCd9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LW1lbnU+XG4gIDwvbWF0LXRvb2xiYXI+XG5cbiAgPG5nLWNvbnRlbnQgY2xhc3M9XCJwYWdlLWNvbnRlbnRcIiBzZWxlY3Q9XCJbcGFnZS1jb250ZW50XVwiPjwvbmctY29udGVudD5cblxuPC9tYXQtZHJhd2VyLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRlbnQgY2xhc3M9XCJsb2FkaW5nLWluZm8tY29udGVudFwiIHNlbGVjdD1cIltsb2FkaW5nLWluZm8tY29udGVudF1cIj48L25nLWNvbnRlbnQ+XG4iXX0=
404
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlL3NyYy9saWIvcGFnZS9wYWdlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9wYWdlL3BhZ2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFFNUcsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSxNQUFNLENBQUM7QUFDckQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFNMUUsT0FBTyxFQUFvQixnQkFBZ0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3RFLE9BQU8sU0FBUyxNQUFNLFlBQVksQ0FBQztBQUNuQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFL0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDcEUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFFekUsT0FBTyxFQUFFLG1CQUFtQixFQUFxQixNQUFNLHlCQUF5QixDQUFDOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFVakYsTUFBTSxPQUFPLGFBQWE7SUE2RHhCLFlBQ1UsWUFBK0IsRUFDL0IsTUFBYyxFQUNkLGFBQWlDLEVBQ2pDLFdBQTZCLEVBQzdCLGFBQWlDLEVBQ2pDLGFBQW9DO1FBTHBDLGlCQUFZLEdBQVosWUFBWSxDQUFtQjtRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2Qs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Q0FBQztpQkFDbEM7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQzs7MEdBeFdVLGFBQWE7OEZBQWIsYUFBYSw0aUJBSGIsQ0FBQyxpQkFBaUIsQ0FBQyx3SUN6QmhDLHlxR0FvRUE7MkZEeENhLGFBQWE7a0JBUHpCLFNBQVM7K0JBQ0UsWUFBWSxhQUdYLENBQUMsaUJBQWlCLENBQUMsbUJBQ2IsdUJBQXVCLENBQUMsTUFBTTtrUUFHdEMsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0ksZUFBZTtzQkFBeEIsTUFBTTtnQkFDRyxhQUFhO3NCQUF0QixNQUFNO2dCQUNHLHNCQUFzQjtzQkFBL0IsTUFBTTtnQkFDRyxrQkFBa0I7c0JBQTNCLE1BQU07Z0JBMkNzQyxJQUFJO3NCQUFoRCxTQUFTO3VCQUFDLFFBQVEsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUaGVtZVBhbGV0dGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25DYW5jZWwsIE5hdmlnYXRpb25FbmQsIE5hdmlnYXRpb25FcnJvciwgTmF2aWdhdGlvblN0YXJ0LCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9hZGVyQmFyUGFnZUludGVyZmFjZSB9IGZyb20gJy4uL2xvYWRlci9sb2FkZXItYmFyLXBhZ2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBLb2FsYVRva2VuU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3Rva2VuL2tvYWxhLnRva2VuLnNlcnZpY2UnO1xuaW1wb3J0IHsgS29hbGFMb2FkZXJTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvbG9hZGVyL2tvYWxhLmxvYWRlci5zZXJ2aWNlJztcbmltcG9ydCB7IEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlIH0gZnJvbSAnLi9ub3RpZmljYXRpb25zL2tvYWxhLm5vdGlmaWNhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgS29hbGFVc2VyTWVudU9wdGlvbnNJbnRlcmZhY2UgfSBmcm9tICcuL2tvYWxhLnVzZXItbWVudS1vcHRpb25zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBLb2FsYVBhZ2VQYWxsZXRDb2xvcnNJbnRlcmZhY2UgfSBmcm9tICcuL2tvYWxhLXBhZ2UtcGFsbGV0LWNvbG9ycy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgTWF0RHJhd2VyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQgeyBLb2FsYU1lbnVTZXJ2aWNlLCBtZW51U3RhdGVTdWJqZWN0IH0gZnJvbSAnQGtvYWxhcngvdWkvbWVudSc7XG5pbXBvcnQgand0RW5jb2RlIGZyb20gXCJqd3QtZW5jb2RlXCI7XG5pbXBvcnQgeyBUb2tlbkZhY3RvcnkgfSBmcm9tIFwiLi4vc2VydmljZXMvdG9rZW4vdG9rZW4uZmFjdG9yeVwiO1xuaW1wb3J0IHsgS29hbGFPQXV0aDJTZXJ2aWNlIH0gZnJvbSBcIi4uL3NlcnZpY2VzL29wZW5pZC9rb2FsYS5vYXV0aDIuc2VydmljZVwiO1xuaW1wb3J0IHsgS29hbGFFbnZpcm9ubWVudCB9IGZyb20gXCIuLi9lbnZpcm9ubWVudHMva29hbGFFbnZpcm9ubWVudFwiO1xuaW1wb3J0IHsgS29hbGFPYXV0aENvbmZpZyB9IGZyb20gXCIuLi9zZXJ2aWNlcy9vcGVuaWQva29hbGEub2F1dGguY29uZmlnXCI7XG5pbXBvcnQgeyBLb2FsYU9hdXRoMkNvbmZpZ0ludGVyZmFjZSB9IGZyb20gXCIuLi9zZXJ2aWNlcy9vcGVuaWQva29hbGEtb2F1dGgyLWNvbmZpZy5pbnRlcmZhY2VcIjtcbmltcG9ydCB7IEtvYWxhTGFuZ3VhZ2VIZWxwZXIsIEtvYWxhTGFuZ3VhZ2VUeXBlIH0gZnJvbSBcIi4va29hbGEtbGFuZ3VhZ2UuaGVscGVyXCI7XG5pbXBvcnQgeyBEZXZpY2VEZXRlY3RvclNlcnZpY2UgfSBmcm9tIFwibmd4LWRldmljZS1kZXRlY3RvclwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdrb2FsYS1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICdwYWdlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJ3BhZ2UuY29tcG9uZW50LmNzcyddLFxuICBwcm92aWRlcnM6IFtLb2FsYVRva2VuU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFBhZ2VDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBzaG93TWVudTogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGNvbG9yOiBUaGVtZVBhbGV0dGU7XG4gIEBJbnB1dCgpIGxvZ286IHN0cmluZztcbiAgQElucHV0KCkgc3RhcnRNZW51T3BlbmVkID0gdHJ1ZTtcbiAgQElucHV0KCkgc2hvd0xvYWRlclBhZ2U6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgQElucHV0KCkgbWVzc2FnZUxvYWRlclBhZ2U6IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+O1xuICBASW5wdXQoKSBkZWZhdWx0UGFnZTogc3RyaW5nO1xuICBASW5wdXQoKSBvcGVuUGFnZXM6IHN0cmluZ1tdO1xuICBASW5wdXQoKSBub3RpZmljYXRpb25zOiBCZWhhdmlvclN1YmplY3Q8S29hbGFOb3RpZmljYXRpb25JbnRlcmZhY2VbXT47XG4gIEBJbnB1dCgpIHVzZXJNZW51T3B0aW9uczogS29hbGFVc2VyTWVudU9wdGlvbnNJbnRlcmZhY2VbXSA9IFtdO1xuICBASW5wdXQoKSBwYWxsZXRDb2xvcnM6IEtvYWxhUGFnZVBhbGxldENvbG9yc0ludGVyZmFjZTtcbiAgQElucHV0KCkgbGFuZ3VhZ2U6IEtvYWxhTGFuZ3VhZ2VUeXBlID0gJ3B0QnInO1xuICBAT3V0cHV0KCkgdmFsaWRhdGluZ1Njb3BlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBsb2dvdXRFbWl0dGVyID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBkZWxldGVBbGxOb3RpZmljYXRpb25zID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPihmYWxzZSk7XG4gIEBPdXRwdXQoKSBkZWxldGVOb3RpZmljYXRpb24gPSBuZXcgRXZlbnRFbWl0dGVyPEtvYWxhTm90aWZpY2F0aW9uSW50ZXJmYWNlPihudWxsKTtcblxuICBwdWJsaWMgbG9hZGVyU3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PExvYWRlckJhclBhZ2VJbnRlcmZhY2U+O1xuICBwdWJsaWMgdXNlcm5hbWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxzdHJpbmc+KCcnKTtcbiAgcHVibGljIGZpcnN0VXNlckxldHRlciQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICBwdWJsaWMgY3VycmVudFVybDogc3RyaW5nO1xuICBwdWJsaWMgbG9nZ2VkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgdmFsaWRhdGlvblNjb3BlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwdWJsaWMgaXNNb2JpbGU6IGJvb2xlYW4gPSB0aGlzLmRldmljZVNlcnZpY2UuaXNNb2JpbGUoKTtcblxuICBwcml2YXRlIGRlZmF1bHRQYWxsZXRDb2xvcnM6IEtvYWxhUGFnZVBhbGxldENvbG9yc0ludGVyZmFjZSA9IHtcbiAgICBzY3JvbGxiYXJDb2xvcjogJyMxOTc2RDInLFxuICAgIHNjcm9sbGJhckNvbG9ySG92ZXI6ICcjMTU2NUMwJyxcbiAgICB1c2VyUHJlc2VudGF0aW9uQmFja2dyb3VuZDogJyNmMWYxZjEnLFxuICAgIHVzZXJQcmVzZW50YXRpb25Vc2VyQmFja2dyb3VuZDogJyMxOTc2RDInLFxuICAgIHVzZXJQcmVzZW50YXRpb25Vc2VyRm9udENvbG9yOiAnI2ZmZicsXG4gICAgZmlyc3RDb2xvcjogJyNmZmYnLFxuICAgIHNlY29uZENvbG9yOiAnI0YxRjFGMScsXG4gICAgYm9keUJhY2tncm91bmQ6ICcjZWVlZWVlJyxcbiAgICBjaGVja2JveEJhY2tncm91bmQ6ICcjMTk3NmQyJyxcbiAgICBjaGVja2JveENvbG9yOiAnI2ZmZmZmZicsXG4gICAgZm9udENvbG9yOiAnIzE5NzZEMicsXG4gICAgZm9udEhvdmVyQ29sb3I6ICcjMTk3NkQyJyxcbiAgICBmb250QWN0aXZlQ29sb3I6ICcjMTU2NUMwJyxcbiAgICBtZW51VGl0bGVCYWNrZ3JvdW5kOiAncmdiYSgwLDAsMCwuMSknLFxuICAgIG1lbnVUaXRsZUNvbG9yOiAncmdiYSgwLDAsMCwuMyknLFxuICAgIG1lbnVCYWNrZ3JvdW5kOiAnI2ZhZmFmYScsXG4gICAgbWVudU9wdGlvbnNCYWNrZ3JvdW5kOiAnI2VhZWFlYScsXG4gICAgbWVudU9wdGlvbnNDb2xvcjogJyNhNWE1YTUnLFxuICAgIG1lbnVPcHRpb25zQ29sb3JIb3ZlcjogJyMxOTc2RDInLFxuICAgIG1lbnVPcHRpb25zQ29sb3JBY3RpdmU6ICcjMTU2NWMwJyxcbiAgICB0b29sYmFyQmFja2dyb3VuZDogJyNmZmZmZmYnLFxuICAgIHRvb2xiYXJDb2xvcjogJyMxOTc2ZDInLFxuICAgIGxpc3RCYWNrZ3JvdW5kOiAnI2ZmZicsXG4gICAgbGlzdENvbnRlbnRCYWNrZ3JvdW5kOiAnI2ZmZicsXG4gICAgbGlzdFRpdGxlSXRlbUNvbG9yOiAnIzgzODM4MycsXG4gICAgbGlzdEl0ZW1Db2xvcjogJyMzZTNlM2UnLFxuICAgIGxpc3RJdGVtQmFja2dyb3VkSG92ZXI6ICcjRjFGMUYxJyxcbiAgICBsaXN0SXRlbUJhY2tncm91bmRBY3RpdmU6ICcjRUVFJyxcbiAgICBzaGFkb3dDb2xvclRhYmxlTGlzdDogJ3JnYmEoMjUsIDExOCwgMjEwLCAuNCknXG4gIH07XG4gIHByaXZhdGUgb2F1dGhFdmVudHNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICBAVmlld0NoaWxkKCdkcmF3ZXInLCB7c3RhdGljOiB0cnVlfSkgcHJpdmF0ZSBtZW51OiBNYXREcmF3ZXI7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSB0b2tlblNlcnZpY2U6IEtvYWxhVG9rZW5TZXJ2aWNlLFxuICAgIHByaXZhdGUgcm91dGVyOiBSb3V0ZXIsXG4gICAgcHJpdmF0ZSBsb2FkZXJTZXJ2aWNlOiBLb2FsYUxvYWRlclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBtZW51U2VydmljZTogS29hbGFNZW51U2VydmljZSxcbiAgICBwcml2YXRlIG9hdXRoMlNlcnZpY2U6IEtvYWxhT0F1dGgyU2VydmljZSxcbiAgICBwcml2YXRlIGRldmljZVNlcnZpY2U6IERldmljZURldGVjdG9yU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5sb2FkZXJTdWJqZWN0ID0gbG9hZGVyU2VydmljZS5nZXRMb2FkZXJTdWJqZWN0KCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICBLb2FsYUxhbmd1YWdlSGVscGVyLnNldExhbmd1YWdlKHRoaXMubGFuZ3VhZ2UpO1xuICAgIHRoaXMuaW5pdE9BdXRoMigpO1xuICAgIGlmICh0aGlzLm9wZW5QYWdlcykge1xuICAgICAgaWYgKHRoaXMub3BlblBhZ2VzLmluZGV4T2YoJy8nKSA8IDApIHtcbiAgICAgICAgdGhpcy5vcGVuUGFnZXMucHVzaCgnLycpO1xuICAgICAgfVxuICAgICAgaWYgKHRoaXMub3BlblBhZ2VzLmluZGV4T2YoJy9sb2dpbicpIDwgMCkge1xuICAgICAgICB0aGlzLm9wZW5QYWdlcy5wdXNoKCcvbG9naW4nKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vcGVuUGFnZXMgPSBbXG4gICAgICAgICcvJyxcbiAgICAgICAgJy9sb2dpbidcbiAgICAgIF07XG4gICAgfVxuXG4gICAgdGhpcy50b2tlblNlcnZpY2UuZ2V0VG9rZW4oKT8uc3Vic2NyaWJlKHRva2VuID0+IHtcbiAgICAgIHRoaXMubG9nZ2VkJC5uZXh0KCEhdG9rZW4pO1xuICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpKSB7XG4gICAgICAgIGNvbnN0IGRlY29kZWRUb2tlbiA9IHRoaXMudG9rZW5TZXJ2aWNlLmdldERlY29kZWRUb2tlbjx7IGxvZ2luOiBzdHJpbmcgfT4oKTtcbiAgICAgICAgdGhpcy51c2VybmFtZSQubmV4dChkZWNvZGVkVG9rZW4ubG9naW4pO1xuICAgICAgICB0aGlzLmZpcnN0VXNlckxldHRlciQubmV4dChkZWNvZGVkVG9rZW4ubG9naW4uY2hhckF0KDApLnRvVXBwZXJDYXNlKCkpO1xuICAgICAgICBpZiAoIXRoaXMuaXNNb2JpbGUpIHtcbiAgICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLm9wZW4oKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpICYmIHRoaXMub3BlblBhZ2VzPy5pbmRleE9mKHRoaXMuY3VycmVudFVybCkgPj0gMCAmJiB0aGlzLmRlZmF1bHRQYWdlKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFt0aGlzLmRlZmF1bHRQYWdlXSkudGhlbigpO1xuICAgICAgfSBlbHNlIGlmICghdGhpcy5sb2dnZWQkLmdldFZhbHVlKCkgJiYgdGhpcy5jdXJyZW50VXJsICYmIHRoaXMub3BlblBhZ2VzPy5pbmRleE9mKHRoaXMuY3VycmVudFVybCkgPCAwKSB7XG4gICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbG9naW4nXSkudGhlbigpO1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gICAgdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgY2FzZSBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25TdGFydDoge1xuICAgICAgICAgIHRoaXMubG9hZGVyU2VydmljZS5jcmVhdGUoe3R5cGVMb2FkZXI6ICdpbmRldGVybWluYXRlJ30pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgY2FzZSBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQ6XG4gICAgICAgIGNhc2UgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uQ2FuY2VsOlxuICAgICAgICBjYXNlIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVycm9yOiB7XG4gICAgICAgICAgdGhpcy5sb2FkZXJTZXJ2aWNlLmRpc21pc3MoKTtcbiAgICAgICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5pc01vYmlsZSkge1xuICAgICAgICAgICAgICB0aGlzLm1lbnVTZXJ2aWNlLmNsb3NlKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY3VycmVudFVybCA9IGV2ZW50LnVybC5zcGxpdCgnPycpWzBdO1xuXG4gICAgICAgICAgICBpZiAoZXZlbnQudXJsLmluZGV4T2YoJy9sb2dpbj9jbGllbnRJZD0nKSA8IDApIHtcbiAgICAgICAgICAgICAgaWYgKHRoaXMubG9nZ2VkJC5nZXRWYWx1ZSgpICYmIHRoaXMuZGVmYXVsdFBhZ2UgJiYgdGhpcy5vcGVuUGFnZXM/LmluZGV4T2YodGhpcy5jdXJyZW50VXJsKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3RoaXMuZGVmYXVsdFBhZ2VdKS50aGVuKCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICAgICAgICB9IGVsc2UgaWYgKCF0aGlzLmxvZ2dlZCQuZ2V0VmFsdWUoKSAmJiB0aGlzLm9wZW5QYWdlcz8uaW5kZXhPZih0aGlzLmN1cnJlbnRVcmwpIDwgMCkge1xuICAgICAgICAgICAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnbG9naW4nXSkudGhlbigpO1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAodGhpcy5wYWxsZXRDb2xvcnMpIHtcbiAgICAgIE9iamVjdC5rZXlzKHRoaXMuZGVmYXVsdFBhbGxldENvbG9ycykuZm9yRWFjaChpbmRleE5hbWUgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgIXRoaXMucGFsbGV0Q29sb3JzLmhhc093blByb3BlcnR5KGluZGV4TmFtZSkgfHxcbiAgICAgICAgICAhdGhpcy5wYWxsZXRDb2xvcnNbaW5kZXhOYW1lXVxuICAgICAgICApIHtcbiAgICAgICAgICB0aGlzLnBhbGxldENvbG9yc1tpbmRleE5hbWVdID0gdGhpcy5kZWZhdWx0UGFsbGV0Q29sb3JzW2luZGV4TmFtZV07XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhbGxldENvbG9ycyA9IHRoaXMuZGVmYXVsdFBhbGxldENvbG9ycztcbiAgICB9XG4gICAgdGhpcy5kZWZpbmVDb2xvcigpO1xuXG4gICAgaWYgKHRoaXMuc2hvd01lbnUpIHtcbiAgICAgIG1lbnVTdGF0ZVN1YmplY3Quc3Vic2NyaWJlKGFzeW5jIChzdGF0ZSkgPT4ge1xuICAgICAgICBpZiAodGhpcy5tZW51KSB7XG4gICAgICAgICAgaWYgKHN0YXRlID09PSAnY2xvc2UnKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5tZW51Lm9wZW5lZCkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1lbnUuY2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9IGVsc2UgaWYgKHN0YXRlID09PSAnb3BlbicpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy5tZW51Lm9wZW5lZCkge1xuICAgICAgICAgICAgICBhd2FpdCB0aGlzLm1lbnUub3BlbigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICBpZiAodGhpcy5zdGFydE1lbnVPcGVuZWQgJiYgdGhpcy5sb2dnZWQkLmdldFZhbHVlKCkpIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzTW9iaWxlKSB7XG4gICAgICAgICAgdGhpcy5tZW51U2VydmljZS5vcGVuKCk7XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMubWVudVNlcnZpY2UuY2xvc2UoKTtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tZW51U2VydmljZS5jbG9zZSgpO1xuICAgIH1cblxuICAgIHRoaXMudmFsaWRhdGlvblNjb3BlJC5zdWJzY3JpYmUoc2NvcGUgPT4gdGhpcy52YWxpZGF0aW5nU2NvcGUuZW1pdChzY29wZSkpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHRvb2dsZU1lbnUoKSB7XG4gICAgdGhpcy5tZW51U2VydmljZS5jbGVhckNvbmZpZygpO1xuICAgIGlmICh0aGlzLm1lbnUpIHtcbiAgICAgIGF3YWl0IHRoaXMubWVudS50b2dnbGUoKTtcbiAgICB9XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgbG9nb3V0KCkge1xuICAgIGlmIChLb2FsYUVudmlyb25tZW50LmVudmlyb25tZW50Py5vYXV0aENvbmZpZykge1xuICAgICAgdGhpcy5vYXV0aDJTZXJ2aWNlLmxvZ291dCgpO1xuICAgIH1cbiAgICB0aGlzLm1lbnVTZXJ2aWNlLmNsb3NlKCk7XG4gICAgdGhpcy50b2tlblNlcnZpY2UucmVtb3ZlVG9rZW4oKTtcbiAgICB0aGlzLnRva2VuU2VydmljZS5nZXRUb2tlbigpLm5leHQobnVsbCk7XG4gICAgdGhpcy5sb2dvdXRFbWl0dGVyLmVtaXQodHJ1ZSk7XG4gIH1cblxuICBwdWJsaWMgZGVmaW5lQ29sb3IoKSB7XG4gICAgY29uc3QgY3NzID0gYFxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuc2Nyb2xsYmFyQ29sb3J9O3dpZHRoOiAycHg7fVxuKjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuc2Nyb2xsYmFyQ29sb3JIb3Zlcn07fVxuaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCwgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cywgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbDpob3ZlciB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLm1lbnUtY29udGFpbmVyLFxuYm9keSB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5ib2R5QmFja2dyb3VuZH0haW1wb3J0YW50O31cbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMsIGlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIgey13ZWJraXQtYm94LXNoYWRvdzogMCAwIDAgMTAwMHB4ICR7dGhpcy5wYWxsZXRDb2xvcnMuZmlyc3RDb2xvcn0gaW5zZXQgIWltcG9ydGFudDt9XG4ubWF0LWJ1dHRvbi1kaXNhYmxlZCxcbmlucHV0OjpwbGFjZWhvbGRlcixcbi5tYXQtZm9ybS1maWVsZC1hcHBlYXJhbmNlLW91dGxpbmUgLm1hdC1mb3JtLWZpZWxkLW91dGxpbmUge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O29wYWNpdHk6IC42O31cbi5tYXQtaGludCxcbi5tYXQtZXhwYW5zaW9uLWluZGljYXRvcjo6YWZ0ZXIsXG4ubW9yZS1pdGVtcy1jb250ZW50IC5pdGVtcyAudGl0bGVGb3JtLFxuZmllbGRzZXQgbGVnZW5kLFxuLm1hdC1wYWdpbmF0b3ItY29udGFpbmVyLFxuLm1hdC1mb3JtLWZpZWxkLWZsZXggbWF0LWljb24ge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtcGFnaW5hdG9yLWNvbnRhaW5lcixcbi5tYXQtY2FyZCxcbi5tYXQtZXhwYW5zaW9uLXBhbmVsLFxuLm1hdC1zZWxlY3QtcGFuZWwsXG4ubWF0LWF1dG9jb21wbGV0ZS1wYW5lbCxcbi5tYXQtbWVudS1wYW5lbCB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5maXJzdENvbG9yfX1cbi5tYXQtc2VsZWN0ZWQge2JhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjMpIWltcG9ydGFudDt9XG4ucXVlc3Rpb24gcCxcbi5hbGVydC1tZXNzYWdlLFxuLm1hdC1hY3Rpb24tcm93LFxuLm1hdC1vcHRpb24sXG4ubWF0LW1lbnUtaXRlbSxcbi5tYXQtbWVudS1pdGVtIG1hdC1pY29uIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9IWltcG9ydGFudH1cbi5tYXQtc2VsZWN0LXZhbHVlLFxuLm1hdC1zZWxlY3QtYXJyb3csXG4ubWF0LWZvcm0tZmllbGQgaW5wdXQsXG4ubWF0LWZvcm0tZmllbGQgdGV4dGFyZWEsXG4ubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1vdXRsaW5lOm5vdCgubWF0LWZvcm0tZmllbGQtaW52YWxpZCkgLm1hdC1mb3JtLWZpZWxkLW91dGxpbmUtdGhpY2ssXG4ubWF0LWZvcm0tZmllbGQgbGFiZWwsXG4uc2VsZWN0LW11bHRpcGxlLW5hdGl2ZSBzZWxlY3Qge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O2NhcmV0LWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmUsXG4ubWF0LWZvcm0tZmllbGQtYXBwZWFyYW5jZS1maWxsIC5tYXQtZm9ybS1maWVsZC11bmRlcmxpbmU6OmJlZm9yZSxcbi5tYXQtZm9ybS1maWVsZC1yaXBwbGUge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLm1hdC1jaGVja2JveC1jaGVja2VkLm1hdC1hY2NlbnQgLm1hdC1jaGVja2JveC1iYWNrZ3JvdW5kLCAubWF0LWNoZWNrYm94LWluZGV0ZXJtaW5hdGUubWF0LWFjY2VudCAubWF0LWNoZWNrYm94LWJhY2tncm91bmQsXG4ubWF0LWNoZWNrYm94Om5vdCgubWF0LWNoZWNrYm94LWRpc2FibGVkKS5tYXQtYWNjZW50IC5tYXQtY2hlY2tib3gtcmlwcGxlIC5tYXQtcmlwcGxlLWVsZW1lbnQge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hCYWNrZ3JvdW5kfSAhaW1wb3J0YW50O31cbi5tYXQtY2hlY2tib3gtY2hlY2ttYXJrLXBhdGgge3N0cm9rZTogJHt0aGlzLnBhbGxldENvbG9ycy5jaGVja2JveENvbG9yfSAhaW1wb3J0YW50O31cbi5tYXQtY2hlY2tib3gtY2hlY2ttYXJrIHtmaWxsOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94Q29sb3J9ICFpbXBvcnRhbnQ7fVxuLm1hdC1jaGVja2JveC1taXhlZG1hcmsge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hDb2xvcn0gIWltcG9ydGFudDt9XG4ubWF0LWNoZWNrYm94LWZyYW1lIHtib3JkZXItY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuY2hlY2tib3hPdXRsaW5lQ29sb3J9IWltcG9ydGFudDt9XG4ubWF0LWNoZWNrYm94LWxhYmVsIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9IWltcG9ydGFudDt9XG4ubWF0LXJhZGlvLW91dGVyLWNpcmNsZSB7Ym9yZGVyLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94QmFja2dyb3VuZH0haW1wb3J0YW50O31cbi5tYXQtcmFkaW8tcmlwcGxlIC5tYXQtcmlwcGxlLWVsZW1lbnQsIC5tYXQtcmFkaW8taW5uZXItY2lyY2xlIHtiYWNrZ3JvdW5kLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmNoZWNrYm94QmFja2dyb3VuZH0gIWltcG9ydGFudDt9XG4uaG9tZS1saXN0LWNhcmRzIC5saXN0IC5tYXQtbGlzdC1pdGVtLWNvbnRlbnQgLm1hdC1pY29uIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9O31cbi5ob21lLWxpc3QtY2FyZHMgLmxpc3QgYnV0dG9uIC5tYXQtYmFkZ2UtY29udGVudCB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5mb250Q29sb3J9O31cbi5rb2FsYS1kaWFsb2cgLm1hdC1kaWFsb2ctdGl0bGUgaDIge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLmtvYWxhLWRpYWxvZyAubWF0LWRpYWxvZy10aXRsZSBtYXQtaWNvbiB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZm9udENvbG9yfSFpbXBvcnRhbnQ7fVxuLmtvYWxhLWRpYWxvZyAubWF0LWRpYWxvZy1jb250YWluZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMuZmlyc3RDb2xvcn19XG4ubGlzdC1maWx0ZXIgbWF0LWljb24ge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpbHRlckljb25Db2xvcn0haW1wb3J0YW50O31cbmtvYWxhLXBhZ2UgLm1lbnUtb3B0aW9ucyB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51QmFja2dyb3VuZH07fVxua29hbGEtcGFnZSAudG9vbGJhciB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy50b29sYmFyQmFja2dyb3VuZH07fVxua29hbGEtcGFnZSAudG9vbGJhciAuYnRuLWNvbGxhcHNlLW1lbnUsXG5rb2FsYS1wYWdlIC5idG4tdG9vbGJhciBzcGFue2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLnRvb2xiYXJDb2xvcn07fVxua29hbGEtcGFnZSAuYnRuLXRvb2xiYXIgc3Bhbi5pY29uLXVzZXIsXG4udXNlci1wcmVzZW50YXRpb24gc3Bhbi5pY29uLXVzZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMudXNlclByZXNlbnRhdGlvblVzZXJCYWNrZ3JvdW5kfTtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy51c2VyUHJlc2VudGF0aW9uVXNlckZvbnRDb2xvcn07fVxuLnVzZXItcHJlc2VudGF0aW9uIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLnVzZXJQcmVzZW50YXRpb25CYWNrZ3JvdW5kfTt9XG4udXNlci1wcmVzZW50YXRpb24gc3Bhbi51c2VybmFtZSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMudG9vbGJhckNvbG9yfTt9XG4ubWF0LWRyYXdlci5tYXQtZHJhd2VyLXB1c2gge2JhY2tncm91bmQtY29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMuYm9keUJhY2tncm91bmR9O31cbmtvYWxhLW1lbnUgLnRpdGxlIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVUaXRsZUJhY2tncm91bmR9O2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVUaXRsZUNvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpLFxua29hbGEtbWVudSB1bCBsaSBhIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyLFxua29hbGEtbWVudSB1bCBsaTpob3ZlciBhIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9ySG92ZXJ9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaS5hY3RpdmUsXG5rb2FsYS1tZW51IHVsIGxpLmV4cGFuZGVkIHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yQWN0aXZlfSAhaW1wb3J0YW50O2JvcmRlci1sZWZ0OiA0cHggc29saWQgJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yQWN0aXZlfSAhaW1wb3J0YW50O2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNCYWNrZ3JvdW5kfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkuYWN0aXZlIGEsXG5rb2FsYS1tZW51IHVsIGxpLmV4cGFuZGVkIGEge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVPcHRpb25zQ29sb3JBY3RpdmV9ICFpbXBvcnRhbnQ7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0JhY2tncm91bmR9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaSBsaTpob3ZlcixcbmtvYWxhLW1lbnUgdWwgbGkgbGk6aG92ZXIgYSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckhvdmVyfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlLFxua29hbGEtbWVudSB1bCBsaSBsaS5hY3RpdmUgYSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckFjdGl2ZX0gIWltcG9ydGFudDt9XG5rb2FsYS1tZW51IHVsIGxpIGtvYWxhLWljb24gc3ZnICosXG5rb2FsYS1tZW51IHVsIGxpIGEga29hbGEtaWNvbiBzdmcgKiB7ZmlsbDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9yfTt9XG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyIGtvYWxhLWljb24gc3ZnICosXG5rb2FsYS1tZW51IHVsIGxpOmhvdmVyIGEga29hbGEtaWNvbiBzdmcgKiB7ZmlsbDogJHt0aGlzLnBhbGxldENvbG9ycy5tZW51T3B0aW9uc0NvbG9ySG92ZXJ9ICFpbXBvcnRhbnQ7fVxua29hbGEtbWVudSB1bCBsaS5hY3RpdmUga29hbGEtaWNvbiAqLFxua29hbGEtbWVudSB1bCBsaS5leHBhbmRlZCBrb2FsYS1pY29uICoge2ZpbGw6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckFjdGl2ZX0gIWltcG9ydGFudDt9XG5rb2FsYS1tZW51IHVsIGxpIGxpOmhvdmVyIGtvYWxhLWljb24gKixcbmtvYWxhLW1lbnUgdWwgbGkgbGk6aG92ZXIgYSBrb2FsYS1pY29uICoge2ZpbGw6ICR7dGhpcy5wYWxsZXRDb2xvcnMubWVudU9wdGlvbnNDb2xvckhvdmVyfSAhaW1wb3J0YW50O31cbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlIGtvYWxhLWljb24gKixcbmtvYWxhLW1lbnUgdWwgbGkgbGkuYWN0aXZlIGEga29hbGEtaWNvbiAqIHtmaWxsOiAke3RoaXMucGFsbGV0Q29sb3JzLm1lbnVPcHRpb25zQ29sb3JBY3RpdmV9IWltcG9ydGFudDt9XG4ubm90aWZpY2F0aW9ucy1jb250ZW50IC50aXRsZSB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubm90aWZpY2F0aW9uVGl0bGVDb2xvcn0haW1wb3J0YW50O31cbi5ub3RpZmljYXRpb25zLWNvbnRlbnQgLmVtcHR5LFxuLm5vdGlmaWNhdGlvbnMtY29udGVudCAudGl0bGVMaXN0IHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5ub3RpZmljYXRpb25Db250ZW50VGl0bGVDb2xvcn0haW1wb3J0YW50O31cbi5ub3RpZmljYXRpb25zLWNvbnRlbnQgLmljb25MaXN0IHtjb2xvcjogJHt0aGlzLnBhbGxldENvbG9ycy5ub3RpZmljYXRpb25Db250ZW50SWNvbkNvbG9yfSFpbXBvcnRhbnQ7fVxuLm5vdGlmaWNhdGlvbnMtY29udGVudCAudGV4dExpc3Qge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLm5vdGlmaWNhdGlvblRpdGxlQ29sb3J9IWltcG9ydGFudDt9XG4ubGlzdC1jb250YWluZXIge2JveC1zaGFkb3c6IDAgMXB4IDNweCAke3RoaXMucGFsbGV0Q29sb3JzLnNoYWRvd0NvbG9yVGFibGVMaXN0fTt9XG4ubGlzdC1jb250YWluZXIgLmxpc3QgdGFibGUudGFibGUtaG92ZXIgdHI6aG92ZXIge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEl0ZW1CYWNrZ3JvdWRIb3Zlcn07fVxuLmxpc3QtY29udGFpbmVyIC5saXN0IHRhYmxlLnRhYmxlLWhvdmVyIHRyOmFjdGl2ZSB7YmFja2dyb3VuZDogJHt0aGlzLnBhbGxldENvbG9ycy5saXN0SXRlbUJhY2tncm91bmRBY3RpdmV9O31cbi5saXN0LWNvbnRhaW5lciAubGlzdC1maWx0ZXIgLmFkdmFuY2VkIHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpcnN0Q29sb3J9O31cbi5saXN0LWNvbnRhaW5lciBuYXYubWVudS1saXN0IHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmZpcnN0Q29sb3J9O2NvbG9yOiByZ2JhKDI1LCAxMTgsIDIxMCwgLjMpO31cbi5jb250ZW50IHtiYWNrZ3JvdW5kOiAke3RoaXMucGFsbGV0Q29sb3JzLmxpc3RDb250ZW50QmFja2dyb3VuZH07fVxuLm1hdC10YWItZ3JvdXAgLm1hdC10YWItbGFiZWwge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLm1hdC10YWItZ3JvdXAgLm1hdC1pbmstYmFyIHtiYWNrZ3JvdW5kLWNvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn0haW1wb3J0YW50O31cbi5tYXQtdGFibGUge2JhY2tncm91bmQ6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEJhY2tncm91bmR9O2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmZvbnRDb2xvcn07fVxuLm1hdC10YWJsZSB0aCB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdFRpdGxlSXRlbUNvbG9yfSFpbXBvcnRhbnQ7fVxuLm1hdC1zb3J0LWhlYWRlci1hcnJvdyB7Y29sb3I6ICR7dGhpcy5wYWxsZXRDb2xvcnMubGlzdEl0ZW1Db2xvcn0haW1wb3J0YW50O31cbi5tYXQtdGFibGUgdGQge2NvbG9yOiAke3RoaXMucGFsbGV0Q29sb3JzLmxpc3RJdGVtQ29sb3J9IWltcG9ydGFudDt9YDtcbiAgICBjb25zdCBoZWFkID0gZG9jdW1lbnQuaGVhZCB8fCBkb2N1bWVudC5nZXRFbGVtZW50c0J5VGFnTmFtZSgnaGVhZCcpWzBdO1xuICAgIGNvbnN0IHN0eWxlID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnc3R5bGUnKTtcbiAgICBoZWFkLmFwcGVuZENoaWxkKHN0eWxlKTtcbiAgICBzdHlsZS5hcHBlbmRDaGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShjc3MpKTtcbiAgfVxuXG4gIHByaXZhdGUgaW5pdE9BdXRoMigpIHtcbiAgICBLb2FsYU9hdXRoQ29uZmlnLmNvbmZpZy5zdWJzY3JpYmUoY29uZmlnID0+IHRoaXMuc3RhcnRDb25maWcoY29uZmlnKSk7XG4gICAgaWYgKEtvYWxhT2F1dGhDb25maWcuaGFzQ29uZmlnKCkpIHtcbiAgICAgIEtvYWxhT2F1dGhDb25maWcuc2V0Q29uZmlnKEtvYWxhT2F1dGhDb25maWcuZ2V0Q29uZmlnKCkpO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRDb25maWcoY29uZmlnOiBLb2FsYU9hdXRoMkNvbmZpZ0ludGVyZmFjZSkge1xuICAgIGlmIChjb25maWcuY2xpZW50SWQpIHtcbiAgICAgIHRoaXMub2F1dGgyU2VydmljZS5jb25maWd1cmUoe1xuICAgICAgICByZWRpcmVjdFVyaTogd2luZG93LmxvY2F0aW9uLm9yaWdpbixcbiAgICAgICAgcmVkaXJlY3RVcmlBZnRlckF1dGg6IHRoaXMuZGVmYXVsdFBhZ2UsXG4gICAgICAgIHJlc3BvbnNlVHlwZTogJ2NvZGUnLFxuICAgICAgICBjbGllbnRJZDogY29uZmlnLmNsaWVudElkLFxuICAgICAgICBzY29wZTogY29uZmlnLnNjb3BlLFxuICAgICAgICBpc3N1ZXI6IGNvbmZpZy5kb21haW4sXG4gICAgICAgIGN1c3RvbVF1ZXJ5UGFyYW1zOiBjb25maWcuY3VzdG9tUXVlcnlQYXJhbXMsXG4gICAgICAgIGVuZHBvaW50VG9rZW46IGNvbmZpZy5lbmRwb2ludFRva2VuID8/IG51bGwsXG4gICAgICAgIGVuZHBvaW50Q2xhaW1zOiBjb25maWcuZW5kcG9pbnRDbGFpbXMgPz8gbnVsbFxuICAgICAgfSk7XG4gICAgICB0aGlzLm9hdXRoMlNlcnZpY2UubG9hZERpc2NvdmVyeURvY3VtZW50QW5kVHJ5TG9naW4oKS50aGVuKCk7XG5cbiAgICAgIGlmICh0aGlzLm9hdXRoRXZlbnRzU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgIHRoaXMub2F1dGhFdmVudHNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICAgIHRoaXMub2F1dGhFdmVudHNTdWJzY3JpcHRpb24gPSB0aGlzLm9hdXRoMlNlcnZpY2UuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgIGlmIChldmVudCA9PT0gJ3VzZXJBdXRoZW50aWNhdGVkJyB8fCBldmVudCA9PT0gJ3JlZnJlc2hUb2tlbicpIHtcbiAgICAgICAgICBjb25zdCBjbGFpbXMgPSB0aGlzLm9hdXRoMlNlcnZpY2UuZ2V0SWRlbnRpdHlDbGFpbXMoKTtcbiAgICAgICAgICBpZiAoY2xhaW1zICYmIChcbiAgICAgICAgICAgICFUb2tlbkZhY3RvcnkuaGFzVG9rZW4oKSB8fFxuICAgICAgICAgICAgKFRva2VuRmFjdG9yeS5oYXNUb2tlbigpICYmIGV2ZW50ID09PSAncmVmcmVzaFRva2VuJylcbiAgICAgICAgICApKSB7XG4gICAgICAgICAgICB0aGlzLnRva2VuU2VydmljZS5zZXRUb2tlbihqd3RFbmNvZGUoe1xuICAgICAgICAgICAgICBhY2Nlc3NUb2tlbjogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCksXG4gICAgICAgICAgICAgIGlkVG9rZW46IHRoaXMub2F1dGgyU2VydmljZS5nZXRJZFRva2VuKCksXG4gICAgICAgICAgICAgIHJlZnJlc2hUb2tlbjogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldFJlZnJlc2hUb2tlbigpLFxuICAgICAgICAgICAgICBsb2dpbjogY2xhaW1zW2NvbmZpZy5pbmRleExvZ2luTmFtZV0gPz8gJ1VuZGVmaW5lZCcsXG4gICAgICAgICAgICAgIGV4cGlyZWQ6IHRoaXMub2F1dGgyU2VydmljZS5nZXRBY2Nlc3NUb2tlbkV4cGlyYXRpb24oKSxcbiAgICAgICAgICAgICAgY29kZTogdGhpcy5vYXV0aDJTZXJ2aWNlLmdldENvZGUoKVxuICAgICAgICAgICAgfSwgJ3NlY3JldCcpKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGlmIChldmVudCA9PT0gJ3VzZXJBdXRoZW50aWNhdGVkJykge1xuICAgICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnZhbGlkYXRpb25TY29wZSQubmV4dChmYWxzZSksIDMwMCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50ID09PSAnZ2V0VG9rZW4nKSB7XG4gICAgICAgICAgdGhpcy52YWxpZGF0aW9uU2NvcGUkLm5leHQodHJ1ZSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgfVxufVxuIiwiPGRpdiAqbmdJZj1cInNob3dMb2FkZXJQYWdlIHwgYXN5bmNcIiBjbGFzcz1cImtvYWxhLWxvYWRlci1wZ1wiPlxuICA8ZGl2IGNsYXNzPVwibG9hZGVyLWNvbnRlbnRcIj5cbiAgICA8ZmlndXJlPlxuICAgICAgPGltZyBbc3JjXT1cImxvZ29cIiBhbHQ9XCJMb2dvdGlwb1wiLz5cbiAgICAgIDxmaWdjYXB0aW9uICpuZ0lmPVwiKG1lc3NhZ2VMb2FkZXJQYWdlIHwgYXN5bmMpIGFzIG1lc3NhZ2VMb2FkZXJcIiBbaW5uZXJIVE1MXT1cIm1lc3NhZ2VMb2FkZXJcIj48L2ZpZ2NhcHRpb24+XG4gICAgPC9maWd1cmU+XG4gICAgPG1hdC1zcGlubmVyPjwvbWF0LXNwaW5uZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG48YXBwLWxvYWRlci1wYWdlICpuZ0lmPVwiKGxvYWRlclN1YmplY3QgfCBhc3luYykgYXMgbG9hZGVyXCIgW3Byb2dyZXNzXT1cImxvYWRlci5wcm9ncmVzc1wiIFtzaG93XT1cImxvYWRlci5zaG93XCJcbiAgICAgICAgICAgICAgICAgW3R5cGVMb2FkZXJdPVwibG9hZGVyLnR5cGVMb2FkZXJcIj48L2FwcC1sb2FkZXItcGFnZT5cbjxtYXQtZHJhd2VyLWNvbnRhaW5lciBhdXRvc2l6ZSBjbGFzcz1cIm1lbnUtY29udGFpbmVyXCI+XG4gIDxtYXQtZHJhd2VyICNkcmF3ZXIgY2xhc3M9XCJtZW51LW9wdGlvbnNcIiBbbW9kZV09XCJpc01vYmlsZSA/ICdwdXNoJyA6ICdzaWRlJ1wiPlxuICAgIDxpbWcgW3NyY109XCJsb2dvXCIgYWx0PVwiTG9nb3RpcG9cIiBpZD1cImxvZ290aXBvXCIvPlxuICAgIDxuZy1jb250ZW50ICpuZ0lmPVwic2hvd01lbnVcIiBzZWxlY3Q9XCJbbWVudS1vcHRpb25zXVwiPjwvbmctY29udGVudD5cbiAgPC9tYXQtZHJhd2VyPlxuXG4gIDxtYXQtdG9vbGJhciAqbmdJZj1cIiEhKGxvZ2dlZCQgfCBhc3luYykgJiYgKHVzZXJuYW1lJCB8IGFzeW5jKVwiIGNsYXNzPVwidG9vbGJhclwiPlxuICAgIDxpbWcgKm5nSWY9XCIhc2hvd01lbnVcIiBbc3JjXT1cImxvZ29cIiBhbHQ9XCJMb2dvdGlwbyBUb29sYmFyXCIgaWQ9XCJsb2dvdGlwby10b29sYmFyXCIvPlxuICAgIDxidXR0b24gKGNsaWNrKT1cInRvb2dsZU1lbnUoKVwiICpuZ0lmPVwic2hvd01lbnVcIiBbY29sb3JdPVwiY29sb3JcIiBjbGFzcz1cImJ0bi1jb2xsYXBzZS1tZW51XCIgbWF0LWljb24tYnV0dG9uPlxuICAgICAgPG1hdC1pY29uPm1lbnU8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICAgIDxzcGFuIGNsYXNzPVwic3BhY2VyXCI+PC9zcGFuPlxuXHQgIDxkaXYgY2xhc3M9XCJtZW51LXRvb2xiYXJcIj5cblx0XHQgIDxuZy1jb250ZW50IHNlbGVjdD1cIlttZW51LXRvb2xiYXJdXCI+PC9uZy1jb250ZW50PlxuXHQgIDwvZGl2PlxuICAgIDxkaXYgKm5nSWY9XCIobm90aWZpY2F0aW9ucyB8IGFzeW5jKSBhcyBub3RpZmljYXRpb25MaXN0XCI+XG4gICAgICA8YnV0dG9uICpuZ0lmPVwibm90aWZpY2F0aW9uc1wiIFtjb2xvcl09XCJjb2xvclwiIFttYXRNZW51VHJpZ2dlckZvcl09XCJub3RpZmljYXRpb25zTWVudVwiIGNsYXNzPVwiYnRuLXRvb2xiYXJcIlxuICAgICAgICAgICAgICBtYXQtaWNvbi1idXR0b24+XG4gICAgICAgIDxtYXQtaWNvblxuXHQgICAgICAgIFttYXRCYWRnZUhpZGRlbl09XCJub3RpZmljYXRpb25MaXN0Lmxlbmd0aCA9PT0gMFwiXG5cdCAgICAgICAgW21hdEJhZGdlXT1cIm5vdGlmaWNhdGlvbkxpc3QubGVuZ3RoLnRvU3RyaW5nKClcIlxuXHQgICAgICAgIG1hdEJhZGdlQ29sb3I9XCJ3YXJuXCI+bm90aWZpY2F0aW9uc1xuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgICA8bWF0LW1lbnUgI25vdGlmaWNhdGlvbnNNZW51PVwibWF0TWVudVwiIGNsYXNzPVwibWVudS1saXN0XCIgeVBvc2l0aW9uPVwiYmVsb3dcIj5cbiAgICAgICAgPGtvYWxhLW5vdGlmaWNhdGlvbi1saXN0XG4gICAgICAgICAgKGRlbGV0ZSk9XCJkZWxldGVOb3RpZmljYXRpb24uZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICAoZGVsZXRlQWxsKT1cImRlbGV0ZUFsbE5vdGlmaWNhdGlvbnMuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgICBbbm90aWZpY2F0aW9uc109XCJub3RpZmljYXRpb25MaXN0XCI+XG4gICAgICAgIDwva29hbGEtbm90aWZpY2F0aW9uLWxpc3Q+XG4gICAgICA8L21hdC1tZW51PlxuICAgIDwvZGl2PlxuICAgIDxidXR0b24gW2NvbG9yXT1cImNvbG9yXCIgW21hdE1lbnVUcmlnZ2VyRm9yXT1cInVzZXJPcHRpb25zXCIgY2xhc3M9XCJidG4tdG9vbGJhclwiIG1hdC1idXR0b24+XG4gICAgICA8c3Bhbj57e3VzZXJuYW1lJCB8IGFzeW5jfX08L3NwYW4+XG4gICAgICA8c3BhbiBjbGFzcz1cImljb24tdXNlclwiPnt7Zmlyc3RVc2VyTGV0dGVyJCB8IGFzeW5jfX08L3NwYW4+XG4gICAgPC9idXR0b24+XG4gICAgPG1hdC1tZW51ICN1c2VyT3B0aW9ucz1cIm1hdE1lbnVcIiBjbGFzcz1cInVzZXItbWVudSBtZW51LWxpc3RcIiB5UG9zaXRpb249XCJiZWxvd1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInVzZXItcHJlc2VudGF0aW9uXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiaWNvbi11c2VyXCI+e3tmaXJzdFVzZXJMZXR0ZXIkIHwgYXN5bmN9fTwvc3Bhbj48YnIvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cInVzZXJuYW1lXCI+e3t1c2VybmFtZSQgfCBhc3luY319PC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJidG4uYWN0aW9uKClcIiAqbmdGb3I9XCJsZXQgYnRuIG9mIHVzZXJNZW51T3B0aW9uc1wiIG1hdC1tZW51LWl0ZW0+XG4gICAgICAgIDxtYXQtaWNvbj57e2J0bi5pY29ufX08L21hdC1pY29uPlxuICAgICAgICA8c3Bhbj57e2J0bi5uYW1lfX08L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImxvZ291dCgpXCIgbWF0LW1lbnUtaXRlbT5cbiAgICAgICAgPG1hdC1pY29uPmV4aXRfdG9fYXBwPC9tYXQtaWNvbj5cbiAgICAgICAgPHNwYW4+e3tsYW5ndWFnZSA9PT0gJ3B0QnInID8gJ1NhaXInIDogJ0xvZ291dCd9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvbWF0LW1lbnU+XG4gIDwvbWF0LXRvb2xiYXI+XG5cbiAgPG5nLWNvbnRlbnQgY2xhc3M9XCJwYWdlLWNvbnRlbnRcIiBzZWxlY3Q9XCJbcGFnZS1jb250ZW50XVwiPjwvbmctY29udGVudD5cblxuPC9tYXQtZHJhd2VyLWNvbnRhaW5lcj5cblxuPG5nLWNvbnRlbnQgY2xhc3M9XCJsb2FkaW5nLWluZm8tY29udGVudFwiIHNlbGVjdD1cIltsb2FkaW5nLWluZm8tY29udGVudF1cIj48L25nLWNvbnRlbnQ+XG4iXX0=
@@ -10,9 +10,9 @@ export class KoalaParameterHashLocationStrategy extends HashLocationStrategy {
10
10
  super.prepareExternalUrl(internal);
11
11
  }
12
12
  }
13
- KoalaParameterHashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaParameterHashLocationStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
14
- KoalaParameterHashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaParameterHashLocationStrategy });
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: KoalaParameterHashLocationStrategy, decorators: [{
13
+ KoalaParameterHashLocationStrategy.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaParameterHashLocationStrategy, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
14
+ KoalaParameterHashLocationStrategy.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaParameterHashLocationStrategy });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.3", ngImport: i0, type: KoalaParameterHashLocationStrategy, decorators: [{
16
16
  type: Injectable
17
17
  }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEucGFyYW1ldGVyLWhhc2gtbG9jYXRpb24tc3RhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9yb3V0ZXIva29hbGEucGFyYW1ldGVyLWhhc2gtbG9jYXRpb24tc3RhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUdwRSxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsb0JBQW9CO0lBQzFFLGtCQUFrQixDQUFDLFFBQWdCO1FBQ2pDLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3hGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNYLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzdELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDOztnSUFOVSxrQ0FBa0M7b0lBQWxDLGtDQUFrQzs0RkFBbEMsa0NBQWtDO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBIYXNoTG9jYXRpb25TdHJhdGVneSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IEtvYWxhRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vZW52aXJvbm1lbnRzL2tvYWxhRW52aXJvbm1lbnRcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEtvYWxhUGFyYW1ldGVySGFzaExvY2F0aW9uU3RyYXRlZ3kgZXh0ZW5kcyBIYXNoTG9jYXRpb25TdHJhdGVneSB7XG4gIHByZXBhcmVFeHRlcm5hbFVybChpbnRlcm5hbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBoYXNUb2tlbiA9ICEhbG9jYWxTdG9yYWdlLmdldEl0ZW0oS29hbGFFbnZpcm9ubWVudC5lbnZpcm9ubWVudD8uc3RvcmFnZVRva2VuTmFtZSk7XG4gICAgcmV0dXJuICFoYXNUb2tlbiA/XG4gICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5zZWFyY2ggKyBzdXBlci5wcmVwYXJlRXh0ZXJuYWxVcmwoaW50ZXJuYWwpIDpcbiAgICAgICAgICAgc3VwZXIucHJlcGFyZUV4dGVybmFsVXJsKGludGVybmFsKTtcbiAgfVxufVxuIl19
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia29hbGEucGFyYW1ldGVyLWhhc2gtbG9jYXRpb24tc3RhdGVneS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvcmUvc3JjL2xpYi9yb3V0ZXIva29hbGEucGFyYW1ldGVyLWhhc2gtbG9jYXRpb24tc3RhdGVneS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOztBQUdwRSxNQUFNLE9BQU8sa0NBQW1DLFNBQVEsb0JBQW9CO0lBQzFFLGtCQUFrQixDQUFDLFFBQWdCO1FBQ2pDLE1BQU0sUUFBUSxHQUFHLENBQUMsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3hGLE9BQU8sQ0FBQyxRQUFRLENBQUMsQ0FBQztZQUNYLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1lBQzdELEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM1QyxDQUFDOzsrSEFOVSxrQ0FBa0M7bUlBQWxDLGtDQUFrQzsyRkFBbEMsa0NBQWtDO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBIYXNoTG9jYXRpb25TdHJhdGVneSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7IEtvYWxhRW52aXJvbm1lbnQgfSBmcm9tIFwiLi4vZW52aXJvbm1lbnRzL2tvYWxhRW52aXJvbm1lbnRcIjtcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEtvYWxhUGFyYW1ldGVySGFzaExvY2F0aW9uU3RyYXRlZ3kgZXh0ZW5kcyBIYXNoTG9jYXRpb25TdHJhdGVneSB7XG4gIHByZXBhcmVFeHRlcm5hbFVybChpbnRlcm5hbDogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBjb25zdCBoYXNUb2tlbiA9ICEhbG9jYWxTdG9yYWdlLmdldEl0ZW0oS29hbGFFbnZpcm9ubWVudC5lbnZpcm9ubWVudD8uc3RvcmFnZVRva2VuTmFtZSk7XG4gICAgcmV0dXJuICFoYXNUb2tlbiA/XG4gICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5zZWFyY2ggKyBzdXBlci5wcmVwYXJlRXh0ZXJuYWxVcmwoaW50ZXJuYWwpIDpcbiAgICAgICAgICAgc3VwZXIucHJlcGFyZUV4dGVybmFsVXJsKGludGVybmFsKTtcbiAgfVxufVxuIl19