keevo-components 1.5.93 → 1.5.95

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 (43) hide show
  1. package/esm2020/lib/api/components/chart/orchart.config.mjs +2 -0
  2. package/esm2020/lib/api/components/chart/orchart.item.mjs +2 -0
  3. package/esm2020/lib/api/modules/primeng.module.mjs +12 -4
  4. package/esm2020/lib/chart/chart.component.mjs +2 -2
  5. package/esm2020/lib/inputs/check/check.component.mjs +2 -2
  6. package/esm2020/lib/inputs/dropdown/dropdown.component.mjs +2 -2
  7. package/esm2020/lib/inputs/input-calendar/input-calendar.component.mjs +2 -2
  8. package/esm2020/lib/inputs/input-mask/input-mask.component.mjs +2 -2
  9. package/esm2020/lib/inputs/input-number/input-number.component.mjs +2 -2
  10. package/esm2020/lib/inputs/input-password/input-password.component.mjs +2 -2
  11. package/esm2020/lib/inputs/input-text/input-text.component.mjs +2 -2
  12. package/esm2020/lib/inputs/input-textarea/input-textarea.component.mjs +2 -2
  13. package/esm2020/lib/inputs/input-time/input-time.component.mjs +2 -2
  14. package/esm2020/lib/inputs/multi-select/multi-select.component.mjs +2 -2
  15. package/esm2020/lib/inputs/radio-group/radio-group.component.mjs +2 -2
  16. package/esm2020/lib/inputs/switch/switch.component.mjs +2 -2
  17. package/esm2020/lib/keevo-components.module.mjs +28 -7
  18. package/esm2020/lib/menu/menu.component.mjs +38 -10
  19. package/esm2020/lib/orgchart/orgchart.component.mjs +90 -0
  20. package/esm2020/lib/orgchart/orgchart.module.mjs +24 -0
  21. package/esm2020/lib/picklist/kvpicklist.module.mjs +32 -0
  22. package/esm2020/lib/picklist/picklist.component.mjs +48 -0
  23. package/esm2020/lib/table/table.component.mjs +3 -3
  24. package/esm2020/lib/tree-table/kv-treetable.component.mjs +240 -0
  25. package/esm2020/lib/tree-table/kv-treetable.module.mjs +28 -0
  26. package/esm2020/public-api.mjs +7 -1
  27. package/fesm2015/keevo-components.mjs +533 -52
  28. package/fesm2015/keevo-components.mjs.map +1 -1
  29. package/fesm2020/keevo-components.mjs +531 -52
  30. package/fesm2020/keevo-components.mjs.map +1 -1
  31. package/lib/api/components/chart/orchart.config.d.ts +35 -0
  32. package/lib/api/components/chart/orchart.item.d.ts +26 -0
  33. package/lib/api/modules/primeng.module.d.ts +3 -1
  34. package/lib/keevo-components.module.d.ts +4 -1
  35. package/lib/menu/menu.component.d.ts +9 -2
  36. package/lib/orgchart/orgchart.component.d.ts +25 -0
  37. package/lib/orgchart/orgchart.module.d.ts +9 -0
  38. package/lib/picklist/kvpicklist.module.d.ts +10 -0
  39. package/lib/picklist/picklist.component.d.ts +20 -0
  40. package/lib/tree-table/kv-treetable.component.d.ts +60 -0
  41. package/lib/tree-table/kv-treetable.module.d.ts +10 -0
  42. package/package.json +6 -2
  43. package/public-api.d.ts +6 -0
@@ -5,6 +5,9 @@ import { KvTableModule } from './table/kvtable.module';
5
5
  import { KvtreeViewModule } from './tree-view/kvtree-view.module';
6
6
  import { KvChartModule } from './chart/kvchart.module';
7
7
  import { KvMenuModule } from './menu/kvmenu.module';
8
+ import { KvPickListModule } from './picklist/kvpicklist.module';
9
+ import { KVTreeTableModule } from './tree-table/kv-treetable.module';
10
+ import { OrgchartModule } from './orgchart/orgchart.module';
8
11
  import * as i0 from "@angular/core";
9
12
  export class KeevoComponentsModule {
10
13
  }
@@ -14,23 +17,35 @@ KeevoComponentsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", v
14
17
  KvTableModule,
15
18
  KvtreeViewModule,
16
19
  KvChartModule,
17
- KvMenuModule], exports: [KvInputsModule,
20
+ KvMenuModule,
21
+ KvPickListModule,
22
+ KVTreeTableModule,
23
+ OrgchartModule], exports: [KvInputsModule,
18
24
  KvButtonsModule,
19
25
  KvTableModule,
20
26
  KvtreeViewModule,
21
27
  KvChartModule,
22
- KvMenuModule] });
28
+ KvMenuModule,
29
+ KvPickListModule,
30
+ KVTreeTableModule,
31
+ OrgchartModule] });
23
32
  KeevoComponentsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KeevoComponentsModule, imports: [KvInputsModule,
24
33
  KvButtonsModule,
25
34
  KvTableModule,
26
35
  KvtreeViewModule,
27
36
  KvChartModule,
28
- KvMenuModule, KvInputsModule,
37
+ KvMenuModule,
38
+ KvPickListModule,
39
+ KVTreeTableModule,
40
+ OrgchartModule, KvInputsModule,
29
41
  KvButtonsModule,
30
42
  KvTableModule,
31
43
  KvtreeViewModule,
32
44
  KvChartModule,
33
- KvMenuModule] });
45
+ KvMenuModule,
46
+ KvPickListModule,
47
+ KVTreeTableModule,
48
+ OrgchartModule] });
34
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KeevoComponentsModule, decorators: [{
35
50
  type: NgModule,
36
51
  args: [{
@@ -41,7 +56,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
41
56
  KvTableModule,
42
57
  KvtreeViewModule,
43
58
  KvChartModule,
44
- KvMenuModule
59
+ KvMenuModule,
60
+ KvPickListModule,
61
+ KVTreeTableModule,
62
+ OrgchartModule
45
63
  ],
46
64
  exports: [
47
65
  KvInputsModule,
@@ -49,8 +67,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
49
67
  KvTableModule,
50
68
  KvtreeViewModule,
51
69
  KvChartModule,
52
- KvMenuModule
70
+ KvMenuModule,
71
+ KvPickListModule,
72
+ KVTreeTableModule,
73
+ OrgchartModule
53
74
  ]
54
75
  }]
55
76
  }] });
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2Vldm8tY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIva2Vldm8tY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQXNCcEQsTUFBTSxPQUFPLHFCQUFxQjs7a0hBQXJCLHFCQUFxQjttSEFBckIscUJBQXFCLFlBaEI5QixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLFlBQVksYUFHWixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLFlBQVk7bUhBR0gscUJBQXFCLFlBaEI5QixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLFlBQVksRUFHWixjQUFjO1FBQ2QsZUFBZTtRQUNmLGFBQWE7UUFDYixnQkFBZ0I7UUFDaEIsYUFBYTtRQUNiLFlBQVk7MkZBR0gscUJBQXFCO2tCQXBCakMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsRUFDYjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsY0FBYzt3QkFDZCxlQUFlO3dCQUNmLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixhQUFhO3dCQUNiLFlBQVk7cUJBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixZQUFZO3FCQUNiO2lCQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgS3ZCdXR0b25zTW9kdWxlIH0gZnJvbSAnLi9idXR0b25zL2t2YnV0dG9uLm1vZHVsZSc7XHJcbmltcG9ydCB7IEt2SW5wdXRzTW9kdWxlIH0gZnJvbSAnLi9pbnB1dHMva3ZpbnB1dHMubW9kdWxlJztcclxuaW1wb3J0IHsgS3ZUYWJsZU1vZHVsZSB9IGZyb20gJy4vdGFibGUva3Z0YWJsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdnRyZWVWaWV3TW9kdWxlIH0gZnJvbSAnLi90cmVlLXZpZXcva3Z0cmVlLXZpZXcubW9kdWxlJztcclxuaW1wb3J0IHsgS3ZDaGFydE1vZHVsZSB9IGZyb20gJy4vY2hhcnQva3ZjaGFydC5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdk1lbnVNb2R1bGUgfSBmcm9tICcuL21lbnUva3ZtZW51Lm1vZHVsZSc7XHJcblxyXG5ATmdNb2R1bGUoe1xyXG4gIGRlY2xhcmF0aW9uczogW1xyXG4gIF0sXHJcbiAgaW1wb3J0czogW1xyXG4gICAgS3ZJbnB1dHNNb2R1bGUsXHJcbiAgICBLdkJ1dHRvbnNNb2R1bGUsXHJcbiAgICBLdlRhYmxlTW9kdWxlLFxyXG4gICAgS3Z0cmVlVmlld01vZHVsZSxcclxuICAgIEt2Q2hhcnRNb2R1bGUsXHJcbiAgICBLdk1lbnVNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIEt2SW5wdXRzTW9kdWxlLFxyXG4gICAgS3ZCdXR0b25zTW9kdWxlLFxyXG4gICAgS3ZUYWJsZU1vZHVsZSxcclxuICAgIEt2dHJlZVZpZXdNb2R1bGUsXHJcbiAgICBLdkNoYXJ0TW9kdWxlLFxyXG4gICAgS3ZNZW51TW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS2Vldm9Db21wb25lbnRzTW9kdWxlIHsgfVxyXG4iXX0=
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2Vldm8tY29tcG9uZW50cy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIva2Vldm8tY29tcG9uZW50cy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNsRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUE0QjVELE1BQU0sT0FBTyxxQkFBcUI7O2tIQUFyQixxQkFBcUI7bUhBQXJCLHFCQUFxQixZQXRCOUIsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjQUFjLGFBR2QsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjQUFjO21IQUdMLHFCQUFxQixZQXRCOUIsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjQUFjLEVBR2QsY0FBYztRQUNkLGVBQWU7UUFDZixhQUFhO1FBQ2IsZ0JBQWdCO1FBQ2hCLGFBQWE7UUFDYixZQUFZO1FBQ1osZ0JBQWdCO1FBQ2hCLGlCQUFpQjtRQUNqQixjQUFjOzJGQUdMLHFCQUFxQjtrQkExQmpDLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLEVBQ2I7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLGNBQWM7d0JBQ2QsZUFBZTt3QkFDZixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsYUFBYTt3QkFDYixZQUFZO3dCQUNaLGdCQUFnQjt3QkFDaEIsaUJBQWlCO3dCQUNqQixjQUFjO3FCQUNmO29CQUNELE9BQU8sRUFBRTt3QkFDUCxjQUFjO3dCQUNkLGVBQWU7d0JBQ2YsYUFBYTt3QkFDYixnQkFBZ0I7d0JBQ2hCLGFBQWE7d0JBQ2IsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsY0FBYztxQkFDZjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEt2QnV0dG9uc01vZHVsZSB9IGZyb20gJy4vYnV0dG9ucy9rdmJ1dHRvbi5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdklucHV0c01vZHVsZSB9IGZyb20gJy4vaW5wdXRzL2t2aW5wdXRzLm1vZHVsZSc7XHJcbmltcG9ydCB7IEt2VGFibGVNb2R1bGUgfSBmcm9tICcuL3RhYmxlL2t2dGFibGUubW9kdWxlJztcclxuaW1wb3J0IHsgS3Z0cmVlVmlld01vZHVsZSB9IGZyb20gJy4vdHJlZS12aWV3L2t2dHJlZS12aWV3Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEt2Q2hhcnRNb2R1bGUgfSBmcm9tICcuL2NoYXJ0L2t2Y2hhcnQubW9kdWxlJztcclxuaW1wb3J0IHsgS3ZNZW51TW9kdWxlIH0gZnJvbSAnLi9tZW51L2t2bWVudS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBLdlBpY2tMaXN0TW9kdWxlIH0gZnJvbSAnLi9waWNrbGlzdC9rdnBpY2tsaXN0Lm1vZHVsZSc7XHJcbmltcG9ydCB7IEtWVHJlZVRhYmxlTW9kdWxlIH0gZnJvbSAnLi90cmVlLXRhYmxlL2t2LXRyZWV0YWJsZS5tb2R1bGUnO1xyXG5pbXBvcnQgeyBPcmdjaGFydE1vZHVsZSB9IGZyb20gJy4vb3JnY2hhcnQvb3JnY2hhcnQubW9kdWxlJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgZGVjbGFyYXRpb25zOiBbXHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBLdklucHV0c01vZHVsZSxcclxuICAgIEt2QnV0dG9uc01vZHVsZSxcclxuICAgIEt2VGFibGVNb2R1bGUsXHJcbiAgICBLdnRyZWVWaWV3TW9kdWxlLFxyXG4gICAgS3ZDaGFydE1vZHVsZSxcclxuICAgIEt2TWVudU1vZHVsZSxcclxuICAgIEt2UGlja0xpc3RNb2R1bGUsXHJcbiAgICBLVlRyZWVUYWJsZU1vZHVsZSxcclxuICAgIE9yZ2NoYXJ0TW9kdWxlXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBLdklucHV0c01vZHVsZSxcclxuICAgIEt2QnV0dG9uc01vZHVsZSxcclxuICAgIEt2VGFibGVNb2R1bGUsXHJcbiAgICBLdnRyZWVWaWV3TW9kdWxlLFxyXG4gICAgS3ZDaGFydE1vZHVsZSxcclxuICAgIEt2TWVudU1vZHVsZSxcclxuICAgIEt2UGlja0xpc3RNb2R1bGUsXHJcbiAgICBLVlRyZWVUYWJsZU1vZHVsZSxcclxuICAgIE9yZ2NoYXJ0TW9kdWxlXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgS2Vldm9Db21wb25lbnRzTW9kdWxlIHsgfVxyXG4iXX0=
@@ -1,25 +1,42 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
1
+ import { Component, HostListener, Input, ViewChild } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  import * as i1 from "@angular/common";
4
4
  import * as i2 from "primeng/api";
5
5
  import * as i3 from "primeng/button";
6
- import * as i4 from "primeng/tooltip";
7
- import * as i5 from "primeng/ripple";
8
- import * as i6 from "primeng/sidebar";
9
- import * as i7 from "primeng/styleclass";
6
+ import * as i4 from "primeng/card";
7
+ import * as i5 from "primeng/tooltip";
8
+ import * as i6 from "primeng/divider";
9
+ import * as i7 from "primeng/overlaypanel";
10
+ import * as i8 from "primeng/ripple";
11
+ import * as i9 from "primeng/sidebar";
12
+ import * as i10 from "primeng/styleclass";
13
+ import * as i11 from "primeng/breadcrumb";
10
14
  export class MenuComponent {
15
+ onWindowResize() {
16
+ this.heigthCard = Number(document.getElementById('page-content')?.offsetHeight);
17
+ this.widthTopBar = Number(document.getElementById('top-bar-content')?.offsetWidth);
18
+ }
11
19
  closeCallback(e) {
12
20
  this.sidebarRef.close(e);
13
21
  }
22
+ testeAlo() {
23
+ this.sidebarRef.style.width = '50px !importante';
24
+ console.log();
25
+ }
14
26
  constructor() {
15
27
  this.menuCompleto = [];
28
+ this.breadCrumbItems = [];
16
29
  this.menus = [];
17
30
  }
18
31
  ngOnInit() {
19
- this.definirMenusPorSistema(this.menuCompleto[0].sistema.idsistema);
32
+ setTimeout(() => this.definirMenusPorSistema(this.menuCompleto[0]?.sistema.idsistema), 1200);
33
+ console.log(this.menuCompleto, 'OAKOKODA');
34
+ this.breadCrumbItems = [{ label: 'Computer', routerLink: '/computer' }, { label: 'Notebook', routerLink: '/Notebook' }, { label: 'Accessories', routerLink: '/Accessories' }, { label: 'Backpacks', routerLink: '/Backpacks' }];
35
+ this.heigthCard = Number(document.getElementById('page-content')?.offsetHeight);
36
+ this.widthTopBar = Number(document.getElementById('top-bar-content')?.offsetWidth);
20
37
  }
21
38
  MascaraNomeLincenca(nomeLicenca) {
22
- return nomeLicenca.substring(0, 30) + '...';
39
+ return nomeLicenca.substring(0, 24) + '...';
23
40
  }
24
41
  definirMenusPorSistema(idsistema) {
25
42
  console.log("def", idsistema);
@@ -28,22 +45,33 @@ export class MenuComponent {
28
45
  this.menuCompleto.find((x) => x.sistema.idsistema == idsistema)?.menus ||
29
46
  [];
30
47
  console.log("menu dps", this.menus);
48
+ console.log('entrei', idsistema);
31
49
  }
32
50
  retornarMenuFilhos(idsistema, idmenu) {
33
51
  return this.menuCompleto
34
52
  .find((x) => x.sistema.idsistema == idsistema)
35
53
  ?.menus.filter((x) => x.idmenupai == idmenu);
36
54
  }
55
+ callRoute(e) {
56
+ console.log(e, 'event');
57
+ console.log(e.item.routerLink, 'event');
58
+ // this.router.navigate(e.item.routerLink)
59
+ }
37
60
  }
38
61
  MenuComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
39
- MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: MenuComponent, selector: "kv-menu", inputs: { menuCompleto: "menuCompleto" }, viewQueries: [{ propertyName: "sidebarRef", first: true, predicate: ["sidebarRef"], descendants: true }], ngImport: i0, template: "<p-sidebar\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n styleClass=\"w-3rem barrasistemas sidebar-header-sistema\"\r\n [modal]=\"false\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"flex flex-column align-items-center justify-content-center\">\r\n <button\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n icon=\"pi pi-user\"\r\n ></button></div\r\n ></ng-template>\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex flex-column gap-2 align-items-center\">\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-sidebar>\r\n\r\n<p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n styleClass=\"w-18rem barramenu\"\r\n>\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column h-full\">\r\n <div\r\n class=\"flex flex-column gap-2 justify-content-between px-4 flex-shrink-0\"\r\n >\r\n <div>\r\n <img alt=\"Card\" src=\"../../assets/images/LogoEvo.png\" width=\"150\" />\r\n </div>\r\n\r\n <div class=\"flex flex-column gap-2\">\r\n <div class=\"text-sm\"><b>Licen\u00E7a:</b></div>\r\n <div\r\n class=\"text-xs\"\r\n pTooltip=\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\"\r\n >\r\n {{\r\n MascaraNomeLincenca(\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\")\r\n }}\r\n </div>\r\n <div class=\"text-xs\">33.600.466/0001-87</div>\r\n </div>\r\n </div>\r\n <div class=\"overflow-y-auto\">\r\n <ul class=\"list-none ajuste-padding m-0\">\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n *ngIf=\"!menu.menupai && menu.idmenupai == 0\"\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i class=\"pi pi-home mr-2\"></i>\r\n <span class=\"text-base\">{{ menu.descricaomenu }}</span>\r\n </a>\r\n\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.menupai\">\r\n <a\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2\"\r\n *ngIf=\"menu.icone && menu.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base\">{{ menu.descricaomenu }}</span>\r\n <i class=\"pi pi-chevron-down ml-auto\"></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <ul\r\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\r\n >\r\n <li\r\n *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idsistema, menu.idmenu)\r\n \"\r\n >\r\n <a\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2\"\r\n *ngIf=\"filho.icone && filho.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base\">{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-sidebar>\r\n", styles: ["::ng-deep .barrasistemas{background-color:#002542;color:#fff;border:0 none;box-shadow:0 1px 3px #0000004d}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .barramenu{margin-left:49px}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.ajuste-padding{padding:.8rem 1rem .8rem .7rem}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}.btn-sistema-2{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;overflow:visible;transform:translateZ(0);transition:background .4s cubic-bezier(.25,.8,.25,1),box-shadow .28s cubic-bezier(.4,0,.2,1);min-width:0;border-radius:50%;width:34px;height:34px;padding:0;flex-shrink:0}\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.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "directive", type: i4.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "directive", type: i5.Ripple, selector: "[pRipple]" }, { kind: "component", type: i6.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i7.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }] });
62
+ MenuComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: MenuComponent, selector: "kv-menu", inputs: { menuCompleto: "menuCompleto", breadCrumbItems: "breadCrumbItems" }, host: { listeners: { "window:resize": "onWindowResize($event)" } }, viewQueries: [{ propertyName: "sidebarRef", first: true, predicate: ["sidebarRef"], descendants: true }], ngImport: i0, template: "<!-- <p-sidebar\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n styleClass=\"w-3rem barrasistemas sidebar-header-sistema\"\r\n [modal]=\"false\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"flex flex-column align-items-center justify-content-center\">\r\n <button\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n icon=\"pi pi-user\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex flex-column gap-2 align-items-center\">\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-sidebar> -->\r\n\r\n<div class=\"flex flex-row\">\r\n\r\n <p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n [style]=\"{widthTopBar: '50px'}\"\r\n >\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column h-full\">\r\n <div class=\"flex flex-column gap-2 justify-content-between px-4 flex-shrink-0\">\r\n <div class=\"flex flex-row align-items-center justify-content-between py-3\">\r\n <img\r\n alt=\"Card\"\r\n src=\"../../assets/images/LogoEvo.png\"\r\n width=\"150\"\r\n />\r\n\r\n <button\r\n pButton\r\n icon=\"pi pi-bars\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n [pTooltip]=\"'Ocutar Menu'\"\r\n [tooltipPosition]=\"'right'\"\r\n (click)=\"testeAlo()\"\r\n ></button>\r\n </div>\r\n\r\n <div class=\"flex flex-row align-items-center justify-content-between\">\r\n <div class=\"flex flex-column\">\r\n <span\r\n class=\"text-sm font-semibold mr-2\"\r\n pTooltip=\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\"\r\n >\r\n {{\r\n MascaraNomeLincenca(\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\")\r\n }}\r\n </span>\r\n <span class=\"text-sm mt-1\">33.600.466/0001-87</span>\r\n </div>\r\n\r\n <button\r\n pButton\r\n icon=\"pi pi-arrow-right-arrow-left\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n [pTooltip]=\"'Alterar Licen\u00E7a'\"\r\n [tooltipPosition]=\"'right'\"\r\n ></button>\r\n </div>\r\n <p-divider type=\"solid\"></p-divider>\r\n\r\n </div>\r\n\r\n <div class=\"overflow-y-auto\">\r\n <ul class=\"list-none ajuste-padding m-0\">\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n *ngIf=\"!menu.menupai && menu.idmenupai == 0\"\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i class=\"pi pi-home mr-2 text-blue-900 adjust-icon-menu\"></i>\r\n <span class=\"text-base text-blue-900 font-semibold\">{{ menu.descricaomenu }}</span>\r\n </a>\r\n\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.menupai\">\r\n <a\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2 text-blue-900 adjust-icon-menu\"\r\n *ngIf=\"menu.icone && menu.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base text-blue-900 font-semibold\">{{ menu.descricaomenu }}</span>\r\n <i class=\"pi pi-chevron-down ml-auto text-blue-900 adjust-icon-menu\"></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <ul\r\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\r\n >\r\n <li *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idsistema, menu.idmenu)\r\n \">\r\n <a\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2 adjust-icon-menu\"\r\n *ngIf=\"filho.icone && filho.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base text-blue-900\">{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-sidebar>\r\n\r\n\r\n <div\r\n class=\"w-full h-screen page-content\"\r\n style=\"margin-left: 320px;\"\r\n id=\"page-content\"\r\n >\r\n\r\n <div>\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-between m-3\"\r\n id=\"top-bar-content\"\r\n >\r\n <div style=\"width: 400px;\">\r\n <p class=\"text-xl font-semibold text-blue-900\">{{breadCrumbItems[breadCrumbItems.length - 1].label}}</p>\r\n <p-breadcrumb\r\n styleClass=\"border-none p-0 flex align-items-center h-2rem\"\r\n [model]=\"breadCrumbItems\"\r\n [style]=\"{backgroundColor: '#d4d3d3'}\"\r\n (onItemClick)=\"callRoute($event)\"\r\n ></p-breadcrumb>\r\n </div>\r\n\r\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\r\n <button\r\n pButton\r\n icon=\"pi pi-th-large\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n (click)=\"sistemasPanel.toggle($event)\"\r\n [pTooltip]=\"'Sistemas'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></button>\r\n <button\r\n pButton\r\n icon=\"pi pi-user\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n (click)=\"meusDadosPanel.toggle($event)\"\r\n [pTooltip]=\"'Meus Dados'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></button>\r\n </div>\r\n </div>\r\n\r\n <!-- <div\r\n [style]=\"{height: heigthCard - 105 + 'px'}\"\r\n class=\" overflow-y-auto overflow-x-hidden card-container\"\r\n >\r\n <p-card styleClass=\"m-3 border-noround\">\r\n\r\n <ng-content></ng-content>\r\n </p-card>\r\n </div> -->\r\n\r\n\r\n <p-card\r\n class=\"card-container\"\r\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\r\n [style]=\"{height: heigthCard - 105 + 'px'}\"\r\n >\r\n <ng-content class=\"w-full\"></ng-content>\r\n\r\n </p-card>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n<!-- \r\n<div #menu> asdasasdadas</div> -->\r\n\r\n<!-- <p-overlayPanel #overlayPanel>\r\n <ng-template pTemplate=\"content\">\r\n <h4>Custom Content</h4>\r\n </ng-template>\r\n</p-overlayPanel> -->\r\n\r\n<p-overlayPanel\r\n #sistemasPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Sistemas</p>\r\n <div\r\n class=\"flex flex-row flex-wrap align-items-center gap-2 align-items-center justify-content-center mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n >\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n <img\r\n alt=\"logo\"\r\n src=\"https://primefaces.org/cdn/primeng/images/primeng-icon.svg\"\r\n style=\"width: 2rem; height: 2rem;\"\r\n />\r\n <!-- {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }} -->\r\n\r\n </button>\r\n\r\n\r\n <!-- <p-button styleClass=\"p-button-outlined\">\r\n <img alt=\"logo\" src=\"https://primefaces.org/cdn/primeng/images/primeng-icon.svg\" style=\"width: 1.5rem\" />\r\n <span class=\"ml-2 font-bold\">PrimeNG</span>\r\n </p-button> -->\r\n\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #meusDadosPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Ol\u00E1, Usu\u00E1rio !</p>\r\n <div\r\n class=\"mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n ></div>\r\n\r\n <p-button\r\n icon=\"pi pi-lock\"\r\n label=\"Ger\u00EAnciar KeevoPass\"\r\n styleClass=\"border-noround w-full p-button-text text-blue-900\"\r\n ></p-button>\r\n <p-button\r\n icon=\"pi pi-sign-out\"\r\n label=\"Sair\"\r\n styleClass=\"border-noround w-full p-button-text text-blue-900\"\r\n ></p-button>\r\n\r\n </ng-template>\r\n</p-overlayPanel>", styles: ["@charset \"UTF-8\";.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.ajuste-padding{padding:.8rem 1rem .8rem .7rem;color:red}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px}.page-content{background:linear-gradient(to bottom,#d4d3d3 20%,#ffffff 30%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol}::ng-deep .p-breadcrumb ul li:last-child .p-menuitem-text{font-weight:700}::ng-deep .p-breadcrumb ul li .p-menuitem-link .p-menuitem-text{color:#0c3e66!important;font-weight:500}span{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol}::ng-deep .card-container::-webkit-scrollbar{width:8px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}.adjust-icon-menu{position:relative;top:2px}\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.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "directive", type: i3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading"] }, { kind: "component", type: i3.Button, selector: "p-button", inputs: ["type", "iconPos", "icon", "badge", "label", "disabled", "loading", "loadingIcon", "style", "styleClass", "badgeClass", "ariaLabel"], outputs: ["onClick", "onFocus", "onBlur"] }, { kind: "component", type: i4.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "directive", type: i5.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }, { kind: "component", type: i6.Divider, selector: "p-divider", inputs: ["styleClass", "style", "layout", "type", "align"] }, { kind: "component", type: i7.OverlayPanel, selector: "p-overlayPanel", inputs: ["dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }, { kind: "directive", type: i8.Ripple, selector: "[pRipple]" }, { kind: "component", type: i9.Sidebar, selector: "p-sidebar", inputs: ["appendTo", "blockScroll", "style", "styleClass", "ariaCloseLabel", "autoZIndex", "baseZIndex", "modal", "dismissible", "showCloseIcon", "closeOnEscape", "transitionOptions", "visible", "position", "fullScreen"], outputs: ["onShow", "onHide", "visibleChange"] }, { kind: "directive", type: i10.StyleClass, selector: "[pStyleClass]", inputs: ["pStyleClass", "enterClass", "enterActiveClass", "enterToClass", "leaveClass", "leaveActiveClass", "leaveToClass", "hideOnOutsideClick", "toggleClass", "hideOnEscape"] }, { kind: "component", type: i11.Breadcrumb, selector: "p-breadcrumb", inputs: ["model", "style", "styleClass", "home", "homeAriaLabel"], outputs: ["onItemClick"] }] });
40
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MenuComponent, decorators: [{
41
64
  type: Component,
42
- args: [{ selector: 'kv-menu', template: "<p-sidebar\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n styleClass=\"w-3rem barrasistemas sidebar-header-sistema\"\r\n [modal]=\"false\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"flex flex-column align-items-center justify-content-center\">\r\n <button\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n icon=\"pi pi-user\"\r\n ></button></div\r\n ></ng-template>\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex flex-column gap-2 align-items-center\">\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-sidebar>\r\n\r\n<p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n styleClass=\"w-18rem barramenu\"\r\n>\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column h-full\">\r\n <div\r\n class=\"flex flex-column gap-2 justify-content-between px-4 flex-shrink-0\"\r\n >\r\n <div>\r\n <img alt=\"Card\" src=\"../../assets/images/LogoEvo.png\" width=\"150\" />\r\n </div>\r\n\r\n <div class=\"flex flex-column gap-2\">\r\n <div class=\"text-sm\"><b>Licen\u00E7a:</b></div>\r\n <div\r\n class=\"text-xs\"\r\n pTooltip=\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\"\r\n >\r\n {{\r\n MascaraNomeLincenca(\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\")\r\n }}\r\n </div>\r\n <div class=\"text-xs\">33.600.466/0001-87</div>\r\n </div>\r\n </div>\r\n <div class=\"overflow-y-auto\">\r\n <ul class=\"list-none ajuste-padding m-0\">\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n *ngIf=\"!menu.menupai && menu.idmenupai == 0\"\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i class=\"pi pi-home mr-2\"></i>\r\n <span class=\"text-base\">{{ menu.descricaomenu }}</span>\r\n </a>\r\n\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.menupai\">\r\n <a\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2\"\r\n *ngIf=\"menu.icone && menu.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base\">{{ menu.descricaomenu }}</span>\r\n <i class=\"pi pi-chevron-down ml-auto\"></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <ul\r\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\r\n >\r\n <li\r\n *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idsistema, menu.idmenu)\r\n \"\r\n >\r\n <a\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2\"\r\n *ngIf=\"filho.icone && filho.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base\">{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </ng-template>\r\n</p-sidebar>\r\n", styles: ["::ng-deep .barrasistemas{background-color:#002542;color:#fff;border:0 none;box-shadow:0 1px 3px #0000004d}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .barramenu{margin-left:49px}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.ajuste-padding{padding:.8rem 1rem .8rem .7rem}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}.btn-sistema-2{box-sizing:border-box;position:relative;-webkit-user-select:none;user-select:none;cursor:pointer;outline:none;border:none;-webkit-tap-highlight-color:rgba(0,0,0,0);white-space:nowrap;text-decoration:none;vertical-align:baseline;text-align:center;margin:0;min-width:64px;line-height:36px;overflow:visible;transform:translateZ(0);transition:background .4s cubic-bezier(.25,.8,.25,1),box-shadow .28s cubic-bezier(.4,0,.2,1);min-width:0;border-radius:50%;width:34px;height:34px;padding:0;flex-shrink:0}\n"] }]
65
+ args: [{ selector: 'kv-menu', template: "<!-- <p-sidebar\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n styleClass=\"w-3rem barrasistemas sidebar-header-sistema\"\r\n [modal]=\"false\"\r\n>\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"flex flex-column align-items-center justify-content-center\">\r\n <button\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n icon=\"pi pi-user\"\r\n ></button>\r\n </div>\r\n </ng-template>\r\n <ng-template pTemplate=\"footer\">\r\n <div class=\"flex flex-column gap-2 align-items-center\">\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }}\r\n </button>\r\n </div>\r\n </ng-template>\r\n</p-sidebar> -->\r\n\r\n<div class=\"flex flex-row\">\r\n\r\n <p-sidebar\r\n #sidebarRef\r\n [visible]=\"true\"\r\n [showCloseIcon]=\"false\"\r\n [modal]=\"false\"\r\n [style]=\"{widthTopBar: '50px'}\"\r\n >\r\n <ng-template pTemplate=\"headless\">\r\n <div class=\"flex flex-column h-full\">\r\n <div class=\"flex flex-column gap-2 justify-content-between px-4 flex-shrink-0\">\r\n <div class=\"flex flex-row align-items-center justify-content-between py-3\">\r\n <img\r\n alt=\"Card\"\r\n src=\"../../assets/images/LogoEvo.png\"\r\n width=\"150\"\r\n />\r\n\r\n <button\r\n pButton\r\n icon=\"pi pi-bars\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n [pTooltip]=\"'Ocutar Menu'\"\r\n [tooltipPosition]=\"'right'\"\r\n (click)=\"testeAlo()\"\r\n ></button>\r\n </div>\r\n\r\n <div class=\"flex flex-row align-items-center justify-content-between\">\r\n <div class=\"flex flex-column\">\r\n <span\r\n class=\"text-sm font-semibold mr-2\"\r\n pTooltip=\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\"\r\n >\r\n {{\r\n MascaraNomeLincenca(\"CERTMASTER TECNOLOGIA DA INFORMA\u00C7\u00C3O LTDA\")\r\n }}\r\n </span>\r\n <span class=\"text-sm mt-1\">33.600.466/0001-87</span>\r\n </div>\r\n\r\n <button\r\n pButton\r\n icon=\"pi pi-arrow-right-arrow-left\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n [pTooltip]=\"'Alterar Licen\u00E7a'\"\r\n [tooltipPosition]=\"'right'\"\r\n ></button>\r\n </div>\r\n <p-divider type=\"solid\"></p-divider>\r\n\r\n </div>\r\n\r\n <div class=\"overflow-y-auto\">\r\n <ul class=\"list-none ajuste-padding m-0\">\r\n <!-- menus -->\r\n <li *ngFor=\"let menu of menus\">\r\n <!-- menu que n\u00E3o tem filho -->\r\n <a\r\n *ngIf=\"!menu.menupai && menu.idmenupai == 0\"\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i class=\"pi pi-home mr-2 text-blue-900 adjust-icon-menu\"></i>\r\n <span class=\"text-base text-blue-900 font-semibold\">{{ menu.descricaomenu }}</span>\r\n </a>\r\n\r\n <!-- menu com filho -->\r\n <div *ngIf=\"menu.menupai\">\r\n <a\r\n pRipple\r\n pStyleClass=\"@next\"\r\n enterClass=\"hidden\"\r\n enterActiveClass=\"slidedown\"\r\n leaveToClass=\"hidden\"\r\n leaveActiveClass=\"slideup\"\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2 text-blue-900 adjust-icon-menu\"\r\n *ngIf=\"menu.icone && menu.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base text-blue-900 font-semibold\">{{ menu.descricaomenu }}</span>\r\n <i class=\"pi pi-chevron-down ml-auto text-blue-900 adjust-icon-menu\"></i>\r\n </a>\r\n\r\n <!-- filhos -->\r\n <ul\r\n class=\"list-none py-0 pl-3 pr-0 m-0 hidden overflow-y-hidden transition-all transition-duration-400 transition-ease-in-out\"\r\n >\r\n <li *ngFor=\"\r\n let filho of retornarMenuFilhos(menu.idsistema, menu.idmenu)\r\n \">\r\n <a\r\n pRipple\r\n class=\"flex align-items-start cursor-pointer ajuste-padding border-round text-700 hover:bg-green-600 hover:text-white transition-duration-150 transition-colors p-ripple\"\r\n >\r\n <i\r\n class=\"pi pi-chart-line mr-2 adjust-icon-menu\"\r\n *ngIf=\"filho.icone && filho.icone !== ''\"\r\n ></i>\r\n <span class=\"text-base text-blue-900\">{{ filho.descricaomenu }}</span>\r\n </a>\r\n </li>\r\n </ul>\r\n </div>\r\n </li>\r\n </ul>\r\n </div>\r\n </div>\r\n </ng-template>\r\n </p-sidebar>\r\n\r\n\r\n <div\r\n class=\"w-full h-screen page-content\"\r\n style=\"margin-left: 320px;\"\r\n id=\"page-content\"\r\n >\r\n\r\n <div>\r\n <div\r\n class=\"flex flex-row align-items-center justify-content-between m-3\"\r\n id=\"top-bar-content\"\r\n >\r\n <div style=\"width: 400px;\">\r\n <p class=\"text-xl font-semibold text-blue-900\">{{breadCrumbItems[breadCrumbItems.length - 1].label}}</p>\r\n <p-breadcrumb\r\n styleClass=\"border-none p-0 flex align-items-center h-2rem\"\r\n [model]=\"breadCrumbItems\"\r\n [style]=\"{backgroundColor: '#d4d3d3'}\"\r\n (onItemClick)=\"callRoute($event)\"\r\n ></p-breadcrumb>\r\n </div>\r\n\r\n <div class=\"w-auto flex flex-row align-items-center gap-2\">\r\n <button\r\n pButton\r\n icon=\"pi pi-th-large\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n (click)=\"sistemasPanel.toggle($event)\"\r\n [pTooltip]=\"'Sistemas'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></button>\r\n <button\r\n pButton\r\n icon=\"pi pi-user\"\r\n class=\"p-button-rounded h-2rem w-2rem\"\r\n (click)=\"meusDadosPanel.toggle($event)\"\r\n [pTooltip]=\"'Meus Dados'\"\r\n [tooltipPosition]=\"'left'\"\r\n ></button>\r\n </div>\r\n </div>\r\n\r\n <!-- <div\r\n [style]=\"{height: heigthCard - 105 + 'px'}\"\r\n class=\" overflow-y-auto overflow-x-hidden card-container\"\r\n >\r\n <p-card styleClass=\"m-3 border-noround\">\r\n\r\n <ng-content></ng-content>\r\n </p-card>\r\n </div> -->\r\n\r\n\r\n <p-card\r\n class=\"card-container\"\r\n styleClass=\"m-3 border-noround overflow-y-auto card-container\"\r\n [style]=\"{height: heigthCard - 105 + 'px'}\"\r\n >\r\n <ng-content class=\"w-full\"></ng-content>\r\n\r\n </p-card>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n</div>\r\n<!-- \r\n<div #menu> asdasasdadas</div> -->\r\n\r\n<!-- <p-overlayPanel #overlayPanel>\r\n <ng-template pTemplate=\"content\">\r\n <h4>Custom Content</h4>\r\n </ng-template>\r\n</p-overlayPanel> -->\r\n\r\n<p-overlayPanel\r\n #sistemasPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Sistemas</p>\r\n <div\r\n class=\"flex flex-row flex-wrap align-items-center gap-2 align-items-center justify-content-center mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n >\r\n <button\r\n *ngFor=\"let menu of menuCompleto\"\r\n pButton\r\n pRipple\r\n class=\"btn-sistema-2 btn-sistema hover-btn-cor-padrao remove-focus h-4rem w-4rem\"\r\n (click)=\"definirMenusPorSistema(menu.sistema.idsistema)\"\r\n [pTooltip]=\"menu.sistema.descricaosistema\"\r\n >\r\n <img\r\n alt=\"logo\"\r\n src=\"https://primefaces.org/cdn/primeng/images/primeng-icon.svg\"\r\n style=\"width: 2rem; height: 2rem;\"\r\n />\r\n <!-- {{ menu.sistema.nomesistema.charAt(0).toUpperCase() }} -->\r\n\r\n </button>\r\n\r\n\r\n <!-- <p-button styleClass=\"p-button-outlined\">\r\n <img alt=\"logo\" src=\"https://primefaces.org/cdn/primeng/images/primeng-icon.svg\" style=\"width: 1.5rem\" />\r\n <span class=\"ml-2 font-bold\">PrimeNG</span>\r\n </p-button> -->\r\n\r\n </div>\r\n </ng-template>\r\n</p-overlayPanel>\r\n\r\n<p-overlayPanel\r\n #meusDadosPanel\r\n [showTransitionOptions]=\"'350ms ease-out'\"\r\n [hideTransitionOptions]=\"'250ms ease-in'\"\r\n>\r\n\r\n <ng-template pTemplate=\"container\">\r\n\r\n <p class=\"title-style mt-3\">Ol\u00E1, Usu\u00E1rio !</p>\r\n <div\r\n class=\"mt-5 mb-3\"\r\n style=\"width: 250px; height: 100%;\"\r\n ></div>\r\n\r\n <p-button\r\n icon=\"pi pi-lock\"\r\n label=\"Ger\u00EAnciar KeevoPass\"\r\n styleClass=\"border-noround w-full p-button-text text-blue-900\"\r\n ></p-button>\r\n <p-button\r\n icon=\"pi pi-sign-out\"\r\n label=\"Sair\"\r\n styleClass=\"border-noround w-full p-button-text text-blue-900\"\r\n ></p-button>\r\n\r\n </ng-template>\r\n</p-overlayPanel>", styles: ["@charset \"UTF-8\";.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:1em;display:inline-block;width:1em;height:1em;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;-moz-osx-font-smoothing:grayscale;font-feature-settings:\"liga\"}::ng-deep .p-button:focus{box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none}::ng-deep .p-overlaypanel .p-overlaypanel-content{padding:0}::ng-deep .hover-btn-cor-padrao.p-button:enabled:hover{background:#0c3e66;border-color:#002542}.p-button.p-button-icon-only.p-button-rounded{background:#0c3e66;border-color:#002542}::ng-deep .remove-focus:focus{border:none}::ng-deep .p-sidebar .p-sidebar-content{padding:0}::ng-deep .sidebar-header-sistema.p-sidebar .p-sidebar-header{padding-top:.5rem;padding-right:0;padding-bottom:0;padding-left:0;display:block}.ajuste-padding{padding:.8rem 1rem .8rem .7rem;color:red}.btn-sistema{display:flex;align-items:center;justify-content:center;background-color:#0c3e66;font-size:20px}::ng-deep .p-sidebar .p-sidebar-header{padding:0rem!important}::ng-deep body{margin:0!important}::ng-deep .p-breadcrumb ul li.p-breadcrumb-chevron{position:relative;top:3px}.page-content{background:linear-gradient(to bottom,#d4d3d3 20%,#ffffff 30%)}*{margin:0}p .item-menu{color:#0c3e66;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol}::ng-deep .p-breadcrumb ul li:last-child .p-menuitem-text{font-weight:700}::ng-deep .p-breadcrumb ul li .p-menuitem-link .p-menuitem-text{color:#0c3e66!important;font-weight:500}span{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol}::ng-deep .card-container::-webkit-scrollbar{width:8px}::ng-deep .card-container::-webkit-scrollbar:hover{background-color:#dededebf}::ng-deep .card-container::-webkit-scrollbar-thumb{border-radius:4px;background-color:transparent}::ng-deep .card-container:hover::-webkit-scrollbar-thumb{background-color:#00000080}::ng-deep .card-container::-webkit-scrollbar-track{background-color:#dededebf}.title-style{position:relative;top:10px;margin-left:20px;font-size:25px;color:#002542;border-bottom:2px solid green;font-weight:600;display:inline}.adjust-icon-menu{position:relative;top:2px}\n"] }]
43
66
  }], ctorParameters: function () { return []; }, propDecorators: { menuCompleto: [{
44
67
  type: Input
68
+ }], breadCrumbItems: [{
69
+ type: Input
45
70
  }], sidebarRef: [{
46
71
  type: ViewChild,
47
72
  args: ['sidebarRef']
73
+ }], onWindowResize: [{
74
+ type: HostListener,
75
+ args: ['window:resize', ['$event']]
48
76
  }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvbWVudS9tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9tZW51L21lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7Ozs7QUFXcEUsTUFBTSxPQUFPLGFBQWE7SUFPeEIsYUFBYSxDQUFDLENBQU07UUFDbEIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEO1FBVlMsaUJBQVksR0FBd0IsRUFBRSxDQUFDO1FBRWhELFVBQUssR0FBZ0IsRUFBRSxDQUFDO0lBUVQsQ0FBQztJQUVoQixRQUFRO1FBQ04sSUFBSSxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxXQUFtQjtRQUNyQyxPQUFPLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQztJQUM5QyxDQUFDO0lBRUQsc0JBQXNCLENBQUMsU0FBaUI7UUFDdEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUMsU0FBUyxDQUFDLENBQUE7UUFDNUIsT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFBO1FBQ3BDLElBQUksQ0FBQyxLQUFLO1lBQ1IsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsU0FBUyxJQUFJLFNBQVMsQ0FBQyxFQUFFLEtBQUs7Z0JBQ3RFLEVBQUUsQ0FBQztRQUNILE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxFQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtJQUN0QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsU0FBaUIsRUFBRSxNQUFjO1FBQ2xELE9BQU8sSUFBSSxDQUFDLFlBQVk7YUFDckIsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUM7WUFDOUMsRUFBRSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsU0FBUyxJQUFJLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELENBQUM7OzBHQWxDVSxhQUFhOzhGQUFiLGFBQWEsbU1DWDFCLHNwSkF5SEE7MkZEOUdhLGFBQWE7a0JBTHpCLFNBQVM7K0JBQ0UsU0FBUzswRUFLVixZQUFZO3NCQUFwQixLQUFLO2dCQUltQixVQUFVO3NCQUFsQyxTQUFTO3VCQUFDLFlBQVkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBtZW51Q29tcGxldG9Nb2RlbCB9IGZyb20gJy4uL2FwaS9tb2RlbHMvbWVudS9tZW51Y29tcGxldG8ubW9kZWwnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgU2lkZWJhciB9IGZyb20gJ3ByaW1lbmcvc2lkZWJhcic7XHJcbmltcG9ydCB7IG1lbnVNb2RlbCB9IGZyb20gJy4uL2FwaS9tb2RlbHMvbWVudS9tZW51Lm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtbWVudScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIG1lbnVDb21wbGV0bzogbWVudUNvbXBsZXRvTW9kZWxbXSA9IFtdO1xyXG5cclxuICBtZW51czogbWVudU1vZGVsW10gPSBbXTtcclxuXHJcbiAgQFZpZXdDaGlsZCgnc2lkZWJhclJlZicpIHNpZGViYXJSZWYhOiBTaWRlYmFyO1xyXG5cclxuICBjbG9zZUNhbGxiYWNrKGU6IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5zaWRlYmFyUmVmLmNsb3NlKGUpO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuZGVmaW5pck1lbnVzUG9yU2lzdGVtYSh0aGlzLm1lbnVDb21wbGV0b1swXS5zaXN0ZW1hLmlkc2lzdGVtYSk7XHJcbiAgfVxyXG5cclxuICBNYXNjYXJhTm9tZUxpbmNlbmNhKG5vbWVMaWNlbmNhOiBzdHJpbmcpOiBzdHJpbmcge1xyXG4gICAgcmV0dXJuIG5vbWVMaWNlbmNhLnN1YnN0cmluZygwLCAzMCkgKyAnLi4uJztcclxuICB9XHJcblxyXG4gIGRlZmluaXJNZW51c1BvclNpc3RlbWEoaWRzaXN0ZW1hOiBudW1iZXIpIHtcclxuICAgIGNvbnNvbGUubG9nKFwiZGVmXCIsaWRzaXN0ZW1hKVxyXG4gICAgY29uc29sZS5sb2coXCJtZW51IGFudGVzXCIsdGhpcy5tZW51cylcclxuICAgIHRoaXMubWVudXMgPVxyXG4gICAgICB0aGlzLm1lbnVDb21wbGV0by5maW5kKCh4KSA9PiB4LnNpc3RlbWEuaWRzaXN0ZW1hID09IGlkc2lzdGVtYSk/Lm1lbnVzIHx8XHJcbiAgICAgIFtdO1xyXG4gICAgICBjb25zb2xlLmxvZyhcIm1lbnUgZHBzXCIsdGhpcy5tZW51cylcclxuICB9XHJcblxyXG4gIHJldG9ybmFyTWVudUZpbGhvcyhpZHNpc3RlbWE6IG51bWJlciwgaWRtZW51OiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLm1lbnVDb21wbGV0b1xyXG4gICAgICAuZmluZCgoeCkgPT4geC5zaXN0ZW1hLmlkc2lzdGVtYSA9PSBpZHNpc3RlbWEpXHJcbiAgICAgID8ubWVudXMuZmlsdGVyKCh4KSA9PiB4LmlkbWVudXBhaSA9PSBpZG1lbnUpO1xyXG4gIH1cclxufVxyXG4iLCI8cC1zaWRlYmFyXHJcbiAgW3Zpc2libGVdPVwidHJ1ZVwiXHJcbiAgW3Nob3dDbG9zZUljb25dPVwiZmFsc2VcIlxyXG4gIHN0eWxlQ2xhc3M9XCJ3LTNyZW0gYmFycmFzaXN0ZW1hcyBzaWRlYmFyLWhlYWRlci1zaXN0ZW1hXCJcclxuICBbbW9kYWxdPVwiZmFsc2VcIlxyXG4+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXJcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIHBCdXR0b25cclxuICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgY2xhc3M9XCJidG4tc2lzdGVtYS0yIGJ0bi1zaXN0ZW1hIGhvdmVyLWJ0bi1jb3ItcGFkcmFvIHJlbW92ZS1mb2N1c1wiXHJcbiAgICAgICAgaWNvbj1cInBpIHBpLXVzZXJcIlxyXG4gICAgICA+PC9idXR0b24+PC9kaXZcclxuICA+PC9uZy10ZW1wbGF0ZT5cclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiZm9vdGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBnYXAtMiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgICpuZ0Zvcj1cImxldCBtZW51IG9mIG1lbnVDb21wbGV0b1wiXHJcbiAgICAgICAgcEJ1dHRvblxyXG4gICAgICAgIHBSaXBwbGVcclxuICAgICAgICBjbGFzcz1cImJ0bi1zaXN0ZW1hLTIgYnRuLXNpc3RlbWEgaG92ZXItYnRuLWNvci1wYWRyYW8gcmVtb3ZlLWZvY3VzXCJcclxuICAgICAgICAoY2xpY2spPVwiZGVmaW5pck1lbnVzUG9yU2lzdGVtYShtZW51LnNpc3RlbWEuaWRzaXN0ZW1hKVwiXHJcbiAgICAgICAgW3BUb29sdGlwXT1cIm1lbnUuc2lzdGVtYS5kZXNjcmljYW9zaXN0ZW1hXCJcclxuICAgICAgPlxyXG4gICAgICAgIHt7IG1lbnUuc2lzdGVtYS5ub21lc2lzdGVtYS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSB9fVxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1zaWRlYmFyPlxyXG5cclxuPHAtc2lkZWJhclxyXG4gICNzaWRlYmFyUmVmXHJcbiAgW3Zpc2libGVdPVwidHJ1ZVwiXHJcbiAgW3Nob3dDbG9zZUljb25dPVwiZmFsc2VcIlxyXG4gIFttb2RhbF09XCJmYWxzZVwiXHJcbiAgc3R5bGVDbGFzcz1cInctMThyZW0gYmFycmFtZW51XCJcclxuPlxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJoZWFkbGVzc1wiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gaC1mdWxsXCI+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gZ2FwLTIganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHgtNCBmbGV4LXNocmluay0wXCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXY+XHJcbiAgICAgICAgICA8aW1nIGFsdD1cIkNhcmRcIiBzcmM9XCIuLi8uLi9hc3NldHMvaW1hZ2VzL0xvZ29Fdm8ucG5nXCIgd2lkdGg9XCIxNTBcIiAvPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBnYXAtMlwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cInRleHQtc21cIj48Yj5MaWNlbsOnYTo8L2I+PC9kaXY+XHJcbiAgICAgICAgICA8ZGl2XHJcbiAgICAgICAgICAgIGNsYXNzPVwidGV4dC14c1wiXHJcbiAgICAgICAgICAgIHBUb29sdGlwPVwiQ0VSVE1BU1RFUiBURUNOT0xPR0lBIERBIElORk9STUHDh8ODTyBMVERBXCJcclxuICAgICAgICAgID5cclxuICAgICAgICAgICAge3tcclxuICAgICAgICAgICAgICBNYXNjYXJhTm9tZUxpbmNlbmNhKFwiQ0VSVE1BU1RFUiBURUNOT0xPR0lBIERBIElORk9STUHDh8ODTyBMVERBXCIpXHJcbiAgICAgICAgICAgIH19XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0LXhzXCI+MzMuNjAwLjQ2Ni8wMDAxLTg3PC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwib3ZlcmZsb3cteS1hdXRvXCI+XHJcbiAgICAgICAgPHVsIGNsYXNzPVwibGlzdC1ub25lIGFqdXN0ZS1wYWRkaW5nIG0tMFwiPlxyXG4gICAgICAgICAgPCEtLSBtZW51cyAtLT5cclxuICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51c1wiPlxyXG4gICAgICAgICAgICA8IS0tIG1lbnUgcXVlIG7Do28gdGVtIGZpbGhvIC0tPlxyXG4gICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICpuZ0lmPVwiIW1lbnUubWVudXBhaSAmJiBtZW51LmlkbWVudXBhaSA9PSAwXCJcclxuICAgICAgICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGN1cnNvci1wb2ludGVyIGFqdXN0ZS1wYWRkaW5nIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgID5cclxuICAgICAgICAgICAgICA8aSBjbGFzcz1cInBpIHBpLWhvbWUgbXItMlwiPjwvaT5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmFzZVwiPnt7IG1lbnUuZGVzY3JpY2FvbWVudSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICAgICAgPCEtLSBtZW51IGNvbSBmaWxobyAtLT5cclxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIm1lbnUubWVudXBhaVwiPlxyXG4gICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgICAgICAgICBwU3R5bGVDbGFzcz1cIkBuZXh0XCJcclxuICAgICAgICAgICAgICAgIGVudGVyQ2xhc3M9XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgZW50ZXJBY3RpdmVDbGFzcz1cInNsaWRlZG93blwiXHJcbiAgICAgICAgICAgICAgICBsZWF2ZVRvQ2xhc3M9XCJoaWRkZW5cIlxyXG4gICAgICAgICAgICAgICAgbGVhdmVBY3RpdmVDbGFzcz1cInNsaWRldXBcIlxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGN1cnNvci1wb2ludGVyIGFqdXN0ZS1wYWRkaW5nIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1jaGFydC1saW5lIG1yLTJcIlxyXG4gICAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmUgJiYgbWVudS5pY29uZSAhPT0gJydcIlxyXG4gICAgICAgICAgICAgICAgPjwvaT5cclxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlXCI+e3sgbWVudS5kZXNjcmljYW9tZW51IH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1jaGV2cm9uLWRvd24gbWwtYXV0b1wiPjwvaT5cclxuICAgICAgICAgICAgICA8L2E+XHJcblxyXG4gICAgICAgICAgICAgIDwhLS0gZmlsaG9zIC0tPlxyXG4gICAgICAgICAgICAgIDx1bFxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJsaXN0LW5vbmUgcHktMCBwbC0zIHByLTAgbS0wIGhpZGRlbiBvdmVyZmxvdy15LWhpZGRlbiB0cmFuc2l0aW9uLWFsbCB0cmFuc2l0aW9uLWR1cmF0aW9uLTQwMCB0cmFuc2l0aW9uLWVhc2UtaW4tb3V0XCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICA8bGlcclxuICAgICAgICAgICAgICAgICAgKm5nRm9yPVwiXHJcbiAgICAgICAgICAgICAgICAgICAgbGV0IGZpbGhvIG9mIHJldG9ybmFyTWVudUZpbGhvcyhtZW51Lmlkc2lzdGVtYSwgbWVudS5pZG1lbnUpXHJcbiAgICAgICAgICAgICAgICAgIFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxhXHJcbiAgICAgICAgICAgICAgICAgICAgcFJpcHBsZVxyXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBhbGlnbi1pdGVtcy1zdGFydCBjdXJzb3ItcG9pbnRlciBhanVzdGUtcGFkZGluZyBib3JkZXItcm91bmQgdGV4dC03MDAgaG92ZXI6YmctZ3JlZW4tNjAwIGhvdmVyOnRleHQtd2hpdGUgdHJhbnNpdGlvbi1kdXJhdGlvbi0xNTAgdHJhbnNpdGlvbi1jb2xvcnMgcC1yaXBwbGVcIlxyXG4gICAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwicGkgcGktY2hhcnQtbGluZSBtci0yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZmlsaG8uaWNvbmUgJiYgZmlsaG8uaWNvbmUgIT09ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICA+PC9pPlxyXG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1iYXNlXCI+e3sgZmlsaG8uZGVzY3JpY2FvbWVudSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgPC9saT5cclxuICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgPC91bD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L3Atc2lkZWJhcj5cclxuIl19
77
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvbWVudS9tZW51LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9tZW51L21lbnUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVlsRixNQUFNLE9BQU8sYUFBYTtJQWV4QixjQUFjO1FBQ1osSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxjQUFjLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUNoRixJQUFJLENBQUMsV0FBVyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDckYsQ0FBQztJQUVELGFBQWEsQ0FBQyxDQUFRO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLGtCQUFrQixDQUFBO1FBQ2hELE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQTtJQUNmLENBQUM7SUFFRDtRQTVCUyxpQkFBWSxHQUF3QixFQUFFLENBQUM7UUFDdkMsb0JBQWUsR0FBZSxFQUFFLENBQUM7UUFJMUMsVUFBSyxHQUFnQixFQUFFLENBQUM7SUF1QlIsQ0FBQztJQUVqQixRQUFRO1FBRU4sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQTtRQUM1RixPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLENBQUE7UUFFMUMsSUFBSSxDQUFDLGVBQWUsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUVoTyxJQUFJLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBQ2hGLElBQUksQ0FBQyxXQUFXLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUdyRixDQUFDO0lBRUQsbUJBQW1CLENBQUMsV0FBbUI7UUFDckMsT0FBTyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUM7SUFDOUMsQ0FBQztJQUVELHNCQUFzQixDQUFDLFNBQWlCO1FBQ3RDLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFBO1FBQzdCLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQTtRQUNyQyxJQUFJLENBQUMsS0FBSztZQUNSLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLFNBQVMsSUFBSSxTQUFTLENBQUMsRUFBRSxLQUFLO2dCQUN0RSxFQUFFLENBQUM7UUFDTCxPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDbkMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUE7SUFDbEMsQ0FBQztJQUVELGtCQUFrQixDQUFDLFNBQWlCLEVBQUUsTUFBYztRQUNsRCxPQUFPLElBQUksQ0FBQyxZQUFZO2FBQ3JCLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxTQUFTLElBQUksU0FBUyxDQUFDO1lBQzlDLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsSUFBSSxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsU0FBUyxDQUFDLENBQU07UUFDZCxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxPQUFPLENBQUMsQ0FBQTtRQUN2QixPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFBO1FBRXZDLDBDQUEwQztJQUM1QyxDQUFDOzswR0FyRVUsYUFBYTs4RkFBYixhQUFhLDJTQ1oxQiwrclVBZ1NpQjsyRkRwUkosYUFBYTtrQkFMekIsU0FBUzsrQkFDRSxTQUFTOzBFQUtWLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFTbUIsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUl2QixjQUFjO3NCQURiLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0TGlzdGVuZXIsIElucHV0LCBPbkluaXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBtZW51Q29tcGxldG9Nb2RlbCB9IGZyb20gJy4uL2FwaS9tb2RlbHMvbWVudS9tZW51Y29tcGxldG8ubW9kZWwnO1xyXG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJ3ByaW1lbmcvYXBpJztcclxuaW1wb3J0IHsgU2lkZWJhciB9IGZyb20gJ3ByaW1lbmcvc2lkZWJhcic7XHJcbmltcG9ydCB7IG1lbnVNb2RlbCB9IGZyb20gJy4uL2FwaS9tb2RlbHMvbWVudS9tZW51Lm1vZGVsJztcclxuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtbWVudScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL21lbnUuY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE1lbnVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBJbnB1dCgpIG1lbnVDb21wbGV0bzogbWVudUNvbXBsZXRvTW9kZWxbXSA9IFtdO1xyXG4gIEBJbnB1dCgpIGJyZWFkQ3J1bWJJdGVtczogTWVudUl0ZW1bXSA9IFtdO1xyXG5cclxuXHJcblxyXG4gIG1lbnVzOiBtZW51TW9kZWxbXSA9IFtdO1xyXG5cclxuICBoZWlndGhDYXJkITogbnVtYmVyO1xyXG4gIHdpZHRoVG9wQmFyITogbnVtYmVyO1xyXG5cclxuICBAVmlld0NoaWxkKCdzaWRlYmFyUmVmJykgc2lkZWJhclJlZiE6IFNpZGViYXI7XHJcbiAgXHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIG9uV2luZG93UmVzaXplKCkge1xyXG4gICAgdGhpcy5oZWlndGhDYXJkID0gTnVtYmVyKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdlLWNvbnRlbnQnKT8ub2Zmc2V0SGVpZ2h0KTtcclxuICAgIHRoaXMud2lkdGhUb3BCYXIgPSBOdW1iZXIoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RvcC1iYXItY29udGVudCcpPy5vZmZzZXRXaWR0aCk7XHJcbiAgfVxyXG5cclxuICBjbG9zZUNhbGxiYWNrKGU6IEV2ZW50KTogdm9pZCB7XHJcbiAgICB0aGlzLnNpZGViYXJSZWYuY2xvc2UoZSk7XHJcbiAgfVxyXG5cclxuICB0ZXN0ZUFsbygpIHtcclxuICAgIHRoaXMuc2lkZWJhclJlZi5zdHlsZS53aWR0aCA9ICc1MHB4ICFpbXBvcnRhbnRlJ1xyXG4gICAgY29uc29sZS5sb2coKVxyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcblxyXG4gICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmRlZmluaXJNZW51c1BvclNpc3RlbWEodGhpcy5tZW51Q29tcGxldG9bMF0/LnNpc3RlbWEuaWRzaXN0ZW1hKSwgMTIwMClcclxuICAgIGNvbnNvbGUubG9nKHRoaXMubWVudUNvbXBsZXRvLCAnT0FLT0tPREEnKVxyXG5cclxuICAgIHRoaXMuYnJlYWRDcnVtYkl0ZW1zID0gW3sgbGFiZWw6ICdDb21wdXRlcicsIHJvdXRlckxpbms6ICcvY29tcHV0ZXInIH0sIHsgbGFiZWw6ICdOb3RlYm9vaycsIHJvdXRlckxpbms6ICcvTm90ZWJvb2snIH0sIHsgbGFiZWw6ICdBY2Nlc3NvcmllcycsIHJvdXRlckxpbms6ICcvQWNjZXNzb3JpZXMnIH0sIHsgbGFiZWw6ICdCYWNrcGFja3MnLCByb3V0ZXJMaW5rOiAnL0JhY2twYWNrcycgfV07XHJcblxyXG4gICAgdGhpcy5oZWlndGhDYXJkID0gTnVtYmVyKGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdwYWdlLWNvbnRlbnQnKT8ub2Zmc2V0SGVpZ2h0KTtcclxuICAgIHRoaXMud2lkdGhUb3BCYXIgPSBOdW1iZXIoZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3RvcC1iYXItY29udGVudCcpPy5vZmZzZXRXaWR0aCk7XHJcblxyXG5cclxuICB9XHJcblxyXG4gIE1hc2NhcmFOb21lTGluY2VuY2Eobm9tZUxpY2VuY2E6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gbm9tZUxpY2VuY2Euc3Vic3RyaW5nKDAsIDI0KSArICcuLi4nO1xyXG4gIH1cclxuXHJcbiAgZGVmaW5pck1lbnVzUG9yU2lzdGVtYShpZHNpc3RlbWE6IG51bWJlcikge1xyXG4gICAgY29uc29sZS5sb2coXCJkZWZcIiwgaWRzaXN0ZW1hKVxyXG4gICAgY29uc29sZS5sb2coXCJtZW51IGFudGVzXCIsIHRoaXMubWVudXMpXHJcbiAgICB0aGlzLm1lbnVzID1cclxuICAgICAgdGhpcy5tZW51Q29tcGxldG8uZmluZCgoeCkgPT4geC5zaXN0ZW1hLmlkc2lzdGVtYSA9PSBpZHNpc3RlbWEpPy5tZW51cyB8fFxyXG4gICAgICBbXTtcclxuICAgIGNvbnNvbGUubG9nKFwibWVudSBkcHNcIiwgdGhpcy5tZW51cylcclxuICAgIGNvbnNvbGUubG9nKCdlbnRyZWknLCBpZHNpc3RlbWEpXHJcbiAgfVxyXG5cclxuICByZXRvcm5hck1lbnVGaWxob3MoaWRzaXN0ZW1hOiBudW1iZXIsIGlkbWVudTogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5tZW51Q29tcGxldG9cclxuICAgICAgLmZpbmQoKHgpID0+IHguc2lzdGVtYS5pZHNpc3RlbWEgPT0gaWRzaXN0ZW1hKVxyXG4gICAgICA/Lm1lbnVzLmZpbHRlcigoeCkgPT4geC5pZG1lbnVwYWkgPT0gaWRtZW51KTtcclxuICB9XHJcblxyXG4gIGNhbGxSb3V0ZShlOiBhbnkpIHtcclxuICAgIGNvbnNvbGUubG9nKGUsICdldmVudCcpXHJcbiAgICBjb25zb2xlLmxvZyhlLml0ZW0ucm91dGVyTGluaywgJ2V2ZW50JylcclxuXHJcbiAgICAvLyB0aGlzLnJvdXRlci5uYXZpZ2F0ZShlLml0ZW0ucm91dGVyTGluaylcclxuICB9XHJcblxyXG5cclxufVxyXG4iLCI8IS0tIDxwLXNpZGViYXJcclxuICBbdmlzaWJsZV09XCJ0cnVlXCJcclxuICBbc2hvd0Nsb3NlSWNvbl09XCJmYWxzZVwiXHJcbiAgc3R5bGVDbGFzcz1cInctM3JlbSBiYXJyYXNpc3RlbWFzIHNpZGViYXItaGVhZGVyLXNpc3RlbWFcIlxyXG4gIFttb2RhbF09XCJmYWxzZVwiXHJcbj5cclxuICA8bmctdGVtcGxhdGUgcFRlbXBsYXRlPVwiaGVhZGVyXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWNlbnRlclwiPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgcEJ1dHRvblxyXG4gICAgICAgIHBSaXBwbGVcclxuICAgICAgICBjbGFzcz1cImJ0bi1zaXN0ZW1hLTIgYnRuLXNpc3RlbWEgaG92ZXItYnRuLWNvci1wYWRyYW8gcmVtb3ZlLWZvY3VzXCJcclxuICAgICAgICBpY29uPVwicGkgcGktdXNlclwiXHJcbiAgICAgID48L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbiAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImZvb3RlclwiPlxyXG4gICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2x1bW4gZ2FwLTIgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICAqbmdGb3I9XCJsZXQgbWVudSBvZiBtZW51Q29tcGxldG9cIlxyXG4gICAgICAgIHBCdXR0b25cclxuICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgY2xhc3M9XCJidG4tc2lzdGVtYS0yIGJ0bi1zaXN0ZW1hIGhvdmVyLWJ0bi1jb3ItcGFkcmFvIHJlbW92ZS1mb2N1c1wiXHJcbiAgICAgICAgKGNsaWNrKT1cImRlZmluaXJNZW51c1BvclNpc3RlbWEobWVudS5zaXN0ZW1hLmlkc2lzdGVtYSlcIlxyXG4gICAgICAgIFtwVG9vbHRpcF09XCJtZW51LnNpc3RlbWEuZGVzY3JpY2Fvc2lzdGVtYVwiXHJcbiAgICAgID5cclxuICAgICAgICB7eyBtZW51LnNpc3RlbWEubm9tZXNpc3RlbWEuY2hhckF0KDApLnRvVXBwZXJDYXNlKCkgfX1cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuICA8L25nLXRlbXBsYXRlPlxyXG48L3Atc2lkZWJhcj4gLS0+XHJcblxyXG48ZGl2IGNsYXNzPVwiZmxleCBmbGV4LXJvd1wiPlxyXG5cclxuICA8cC1zaWRlYmFyXHJcbiAgICAjc2lkZWJhclJlZlxyXG4gICAgW3Zpc2libGVdPVwidHJ1ZVwiXHJcbiAgICBbc2hvd0Nsb3NlSWNvbl09XCJmYWxzZVwiXHJcbiAgICBbbW9kYWxdPVwiZmFsc2VcIlxyXG4gICAgW3N0eWxlXT1cInt3aWR0aFRvcEJhcjogJzUwcHgnfVwiXHJcbiAgPlxyXG4gICAgPG5nLXRlbXBsYXRlIHBUZW1wbGF0ZT1cImhlYWRsZXNzXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGgtZnVsbFwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sdW1uIGdhcC0yIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHB4LTQgZmxleC1zaHJpbmstMFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHB5LTNcIj5cclxuICAgICAgICAgICAgPGltZ1xyXG4gICAgICAgICAgICAgIGFsdD1cIkNhcmRcIlxyXG4gICAgICAgICAgICAgIHNyYz1cIi4uLy4uL2Fzc2V0cy9pbWFnZXMvTG9nb0V2by5wbmdcIlxyXG4gICAgICAgICAgICAgIHdpZHRoPVwiMTUwXCJcclxuICAgICAgICAgICAgLz5cclxuXHJcbiAgICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgICAgICAgaWNvbj1cInBpIHBpLWJhcnNcIlxyXG4gICAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBoLTJyZW0gdy0ycmVtXCJcclxuICAgICAgICAgICAgICBbcFRvb2x0aXBdPVwiJ09jdXRhciBNZW51J1wiXHJcbiAgICAgICAgICAgICAgW3Rvb2x0aXBQb3NpdGlvbl09XCIncmlnaHQnXCJcclxuICAgICAgICAgICAgICAoY2xpY2spPVwidGVzdGVBbG8oKVwiXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlblwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInRleHQtc20gZm9udC1zZW1pYm9sZCBtci0yXCJcclxuICAgICAgICAgICAgICAgIHBUb29sdGlwPVwiQ0VSVE1BU1RFUiBURUNOT0xPR0lBIERBIElORk9STUHDh8ODTyBMVERBXCJcclxuICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICB7e1xyXG4gICAgICAgICAgICAgICAgTWFzY2FyYU5vbWVMaW5jZW5jYShcIkNFUlRNQVNURVIgVEVDTk9MT0dJQSBEQSBJTkZPUk1Bw4fDg08gTFREQVwiKVxyXG4gICAgICAgICAgICAgICAgfX1cclxuICAgICAgICAgICAgICA8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LXNtIG10LTFcIj4zMy42MDAuNDY2LzAwMDEtODc8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgIHBCdXR0b25cclxuICAgICAgICAgICAgICBpY29uPVwicGkgcGktYXJyb3ctcmlnaHQtYXJyb3ctbGVmdFwiXHJcbiAgICAgICAgICAgICAgY2xhc3M9XCJwLWJ1dHRvbi1yb3VuZGVkIGgtMnJlbSB3LTJyZW1cIlxyXG4gICAgICAgICAgICAgIFtwVG9vbHRpcF09XCInQWx0ZXJhciBMaWNlbsOnYSdcIlxyXG4gICAgICAgICAgICAgIFt0b29sdGlwUG9zaXRpb25dPVwiJ3JpZ2h0J1wiXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPHAtZGl2aWRlciB0eXBlPVwic29saWRcIj48L3AtZGl2aWRlcj5cclxuXHJcbiAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy15LWF1dG9cIj5cclxuICAgICAgICAgIDx1bCBjbGFzcz1cImxpc3Qtbm9uZSBhanVzdGUtcGFkZGluZyBtLTBcIj5cclxuICAgICAgICAgICAgPCEtLSBtZW51cyAtLT5cclxuICAgICAgICAgICAgPGxpICpuZ0Zvcj1cImxldCBtZW51IG9mIG1lbnVzXCI+XHJcbiAgICAgICAgICAgICAgPCEtLSBtZW51IHF1ZSBuw6NvIHRlbSBmaWxobyAtLT5cclxuICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgKm5nSWY9XCIhbWVudS5tZW51cGFpICYmIG1lbnUuaWRtZW51cGFpID09IDBcIlxyXG4gICAgICAgICAgICAgICAgcFJpcHBsZVxyXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGN1cnNvci1wb2ludGVyIGFqdXN0ZS1wYWRkaW5nIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJwaSBwaS1ob21lIG1yLTIgdGV4dC1ibHVlLTkwMCBhZGp1c3QtaWNvbi1tZW51XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWJhc2UgdGV4dC1ibHVlLTkwMCBmb250LXNlbWlib2xkXCI+e3sgbWVudS5kZXNjcmljYW9tZW51IH19PC9zcGFuPlxyXG4gICAgICAgICAgICAgIDwvYT5cclxuXHJcbiAgICAgICAgICAgICAgPCEtLSBtZW51IGNvbSBmaWxobyAtLT5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwibWVudS5tZW51cGFpXCI+XHJcbiAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICBwUmlwcGxlXHJcbiAgICAgICAgICAgICAgICAgIHBTdHlsZUNsYXNzPVwiQG5leHRcIlxyXG4gICAgICAgICAgICAgICAgICBlbnRlckNsYXNzPVwiaGlkZGVuXCJcclxuICAgICAgICAgICAgICAgICAgZW50ZXJBY3RpdmVDbGFzcz1cInNsaWRlZG93blwiXHJcbiAgICAgICAgICAgICAgICAgIGxlYXZlVG9DbGFzcz1cImhpZGRlblwiXHJcbiAgICAgICAgICAgICAgICAgIGxlYXZlQWN0aXZlQ2xhc3M9XCJzbGlkZXVwXCJcclxuICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGN1cnNvci1wb2ludGVyIGFqdXN0ZS1wYWRkaW5nIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxpXHJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1jaGFydC1saW5lIG1yLTIgdGV4dC1ibHVlLTkwMCBhZGp1c3QtaWNvbi1tZW51XCJcclxuICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1lbnUuaWNvbmUgJiYgbWVudS5pY29uZSAhPT0gJydcIlxyXG4gICAgICAgICAgICAgICAgICA+PC9pPlxyXG4gICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmFzZSB0ZXh0LWJsdWUtOTAwIGZvbnQtc2VtaWJvbGRcIj57eyBtZW51LmRlc2NyaWNhb21lbnUgfX08L3NwYW4+XHJcbiAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwicGkgcGktY2hldnJvbi1kb3duIG1sLWF1dG8gdGV4dC1ibHVlLTkwMCBhZGp1c3QtaWNvbi1tZW51XCI+PC9pPlxyXG4gICAgICAgICAgICAgICAgPC9hPlxyXG5cclxuICAgICAgICAgICAgICAgIDwhLS0gZmlsaG9zIC0tPlxyXG4gICAgICAgICAgICAgICAgPHVsXHJcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwibGlzdC1ub25lIHB5LTAgcGwtMyBwci0wIG0tMCBoaWRkZW4gb3ZlcmZsb3cteS1oaWRkZW4gdHJhbnNpdGlvbi1hbGwgdHJhbnNpdGlvbi1kdXJhdGlvbi00MDAgdHJhbnNpdGlvbi1lYXNlLWluLW91dFwiXHJcbiAgICAgICAgICAgICAgICA+XHJcbiAgICAgICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJcclxuICAgICAgICAgICAgICAgICAgbGV0IGZpbGhvIG9mIHJldG9ybmFyTWVudUZpbGhvcyhtZW51Lmlkc2lzdGVtYSwgbWVudS5pZG1lbnUpXHJcbiAgICAgICAgICAgICAgICBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8YVxyXG4gICAgICAgICAgICAgICAgICAgICAgcFJpcHBsZVxyXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGN1cnNvci1wb2ludGVyIGFqdXN0ZS1wYWRkaW5nIGJvcmRlci1yb3VuZCB0ZXh0LTcwMCBob3ZlcjpiZy1ncmVlbi02MDAgaG92ZXI6dGV4dC13aGl0ZSB0cmFuc2l0aW9uLWR1cmF0aW9uLTE1MCB0cmFuc2l0aW9uLWNvbG9ycyBwLXJpcHBsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGlcclxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJwaSBwaS1jaGFydC1saW5lIG1yLTIgYWRqdXN0LWljb24tbWVudVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiZmlsaG8uaWNvbmUgJiYgZmlsaG8uaWNvbmUgIT09ICcnXCJcclxuICAgICAgICAgICAgICAgICAgICAgID48L2k+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtYmFzZSB0ZXh0LWJsdWUtOTAwXCI+e3sgZmlsaG8uZGVzY3JpY2FvbWVudSB9fTwvc3Bhbj5cclxuICAgICAgICAgICAgICAgICAgICA8L2E+XHJcbiAgICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgICAgICA8L3VsPlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2xpPlxyXG4gICAgICAgICAgPC91bD5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L25nLXRlbXBsYXRlPlxyXG4gIDwvcC1zaWRlYmFyPlxyXG5cclxuXHJcbiAgPGRpdlxyXG4gICAgY2xhc3M9XCJ3LWZ1bGwgaC1zY3JlZW4gcGFnZS1jb250ZW50XCJcclxuICAgIHN0eWxlPVwibWFyZ2luLWxlZnQ6IDMyMHB4O1wiXHJcbiAgICBpZD1cInBhZ2UtY29udGVudFwiXHJcbiAgPlxyXG5cclxuICAgIDxkaXY+XHJcbiAgICAgIDxkaXZcclxuICAgICAgICBjbGFzcz1cImZsZXggZmxleC1yb3cgYWxpZ24taXRlbXMtY2VudGVyICBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtLTNcIlxyXG4gICAgICAgIGlkPVwidG9wLWJhci1jb250ZW50XCJcclxuICAgICAgPlxyXG4gICAgICAgIDxkaXYgc3R5bGU9XCJ3aWR0aDogNDAwcHg7XCI+XHJcbiAgICAgICAgICA8cCBjbGFzcz1cInRleHQteGwgZm9udC1zZW1pYm9sZCB0ZXh0LWJsdWUtOTAwXCI+e3ticmVhZENydW1iSXRlbXNbYnJlYWRDcnVtYkl0ZW1zLmxlbmd0aCAtIDFdLmxhYmVsfX08L3A+XHJcbiAgICAgICAgICA8cC1icmVhZGNydW1iXHJcbiAgICAgICAgICAgIHN0eWxlQ2xhc3M9XCJib3JkZXItbm9uZSBwLTAgZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgaC0ycmVtXCJcclxuICAgICAgICAgICAgW21vZGVsXT1cImJyZWFkQ3J1bWJJdGVtc1wiXHJcbiAgICAgICAgICAgIFtzdHlsZV09XCJ7YmFja2dyb3VuZENvbG9yOiAnI2Q0ZDNkMyd9XCJcclxuICAgICAgICAgICAgKG9uSXRlbUNsaWNrKT1cImNhbGxSb3V0ZSgkZXZlbnQpXCJcclxuICAgICAgICAgID48L3AtYnJlYWRjcnVtYj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cInctYXV0byBmbGV4IGZsZXgtcm93IGFsaWduLWl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG4gICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgICAgIGljb249XCJwaSBwaS10aC1sYXJnZVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBoLTJyZW0gdy0ycmVtXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cInNpc3RlbWFzUGFuZWwudG9nZ2xlKCRldmVudClcIlxyXG4gICAgICAgICAgICBbcFRvb2x0aXBdPVwiJ1Npc3RlbWFzJ1wiXHJcbiAgICAgICAgICAgIFt0b29sdGlwUG9zaXRpb25dPVwiJ2xlZnQnXCJcclxuICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgcEJ1dHRvblxyXG4gICAgICAgICAgICBpY29uPVwicGkgcGktdXNlclwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwicC1idXR0b24tcm91bmRlZCBoLTJyZW0gdy0ycmVtXCJcclxuICAgICAgICAgICAgKGNsaWNrKT1cIm1ldXNEYWRvc1BhbmVsLnRvZ2dsZSgkZXZlbnQpXCJcclxuICAgICAgICAgICAgW3BUb29sdGlwXT1cIidNZXVzIERhZG9zJ1wiXHJcbiAgICAgICAgICAgIFt0b29sdGlwUG9zaXRpb25dPVwiJ2xlZnQnXCJcclxuICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9kaXY+XHJcblxyXG4gICAgICA8IS0tIDxkaXZcclxuICAgICAgICBbc3R5bGVdPVwie2hlaWdodDogaGVpZ3RoQ2FyZCAtIDEwNSArICdweCd9XCJcclxuICAgICAgICBjbGFzcz1cIiBvdmVyZmxvdy15LWF1dG8gb3ZlcmZsb3cteC1oaWRkZW4gY2FyZC1jb250YWluZXJcIlxyXG4gICAgICA+XHJcbiAgICAgICAgPHAtY2FyZCBzdHlsZUNsYXNzPVwibS0zIGJvcmRlci1ub3JvdW5kXCI+XHJcblxyXG4gICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvcC1jYXJkPlxyXG4gICAgICA8L2Rpdj4gLS0+XHJcblxyXG5cclxuICAgICAgPHAtY2FyZFxyXG4gICAgICAgIGNsYXNzPVwiY2FyZC1jb250YWluZXJcIlxyXG4gICAgICAgIHN0eWxlQ2xhc3M9XCJtLTMgYm9yZGVyLW5vcm91bmQgIG92ZXJmbG93LXktYXV0byBjYXJkLWNvbnRhaW5lclwiXHJcbiAgICAgICAgW3N0eWxlXT1cIntoZWlnaHQ6IGhlaWd0aENhcmQgLSAxMDUgKyAncHgnfVwiXHJcbiAgICAgID5cclxuICAgICAgICA8bmctY29udGVudCBjbGFzcz1cInctZnVsbFwiPjwvbmctY29udGVudD5cclxuXHJcbiAgICAgIDwvcC1jYXJkPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gIDwvZGl2PlxyXG5cclxuXHJcbjwvZGl2PlxyXG48IS0tIFxyXG48ZGl2ICNtZW51PiBhc2Rhc2FzZGFkYXM8L2Rpdj4gLS0+XHJcblxyXG48IS0tIDxwLW92ZXJsYXlQYW5lbCAjb3ZlcmxheVBhbmVsPlxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250ZW50XCI+XHJcbiAgICAgIDxoND5DdXN0b20gQ29udGVudDwvaDQ+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLW92ZXJsYXlQYW5lbD4gLS0+XHJcblxyXG48cC1vdmVybGF5UGFuZWxcclxuICAjc2lzdGVtYXNQYW5lbFxyXG4gIFtzaG93VHJhbnNpdGlvbk9wdGlvbnNdPVwiJzM1MG1zIGVhc2Utb3V0J1wiXHJcbiAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMjUwbXMgZWFzZS1pbidcIlxyXG4+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250YWluZXJcIj5cclxuXHJcbiAgICA8cCBjbGFzcz1cInRpdGxlLXN0eWxlIG10LTNcIj5TaXN0ZW1hczwvcD5cclxuICAgIDxkaXZcclxuICAgICAgY2xhc3M9XCJmbGV4IGZsZXgtcm93IGZsZXgtd3JhcCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTIgYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1jZW50ZXIgbXQtNSBtYi0zXCJcclxuICAgICAgc3R5bGU9XCJ3aWR0aDogMjUwcHg7IGhlaWdodDogMTAwJTtcIlxyXG4gICAgPlxyXG4gICAgICA8YnV0dG9uXHJcbiAgICAgICAgKm5nRm9yPVwibGV0IG1lbnUgb2YgbWVudUNvbXBsZXRvXCJcclxuICAgICAgICBwQnV0dG9uXHJcbiAgICAgICAgcFJpcHBsZVxyXG4gICAgICAgIGNsYXNzPVwiYnRuLXNpc3RlbWEtMiBidG4tc2lzdGVtYSBob3Zlci1idG4tY29yLXBhZHJhbyByZW1vdmUtZm9jdXMgaC00cmVtIHctNHJlbVwiXHJcbiAgICAgICAgKGNsaWNrKT1cImRlZmluaXJNZW51c1BvclNpc3RlbWEobWVudS5zaXN0ZW1hLmlkc2lzdGVtYSlcIlxyXG4gICAgICAgIFtwVG9vbHRpcF09XCJtZW51LnNpc3RlbWEuZGVzY3JpY2Fvc2lzdGVtYVwiXHJcbiAgICAgID5cclxuICAgICAgICA8aW1nXHJcbiAgICAgICAgICBhbHQ9XCJsb2dvXCJcclxuICAgICAgICAgIHNyYz1cImh0dHBzOi8vcHJpbWVmYWNlcy5vcmcvY2RuL3ByaW1lbmcvaW1hZ2VzL3ByaW1lbmctaWNvbi5zdmdcIlxyXG4gICAgICAgICAgc3R5bGU9XCJ3aWR0aDogMnJlbTsgaGVpZ2h0OiAycmVtO1wiXHJcbiAgICAgICAgLz5cclxuICAgICAgICA8IS0tIHt7IG1lbnUuc2lzdGVtYS5ub21lc2lzdGVtYS5jaGFyQXQoMCkudG9VcHBlckNhc2UoKSB9fSAtLT5cclxuXHJcbiAgICAgIDwvYnV0dG9uPlxyXG5cclxuXHJcbiAgICAgIDwhLS0gPHAtYnV0dG9uIHN0eWxlQ2xhc3M9XCJwLWJ1dHRvbi1vdXRsaW5lZFwiPlxyXG4gICAgICAgIDxpbWcgYWx0PVwibG9nb1wiIHNyYz1cImh0dHBzOi8vcHJpbWVmYWNlcy5vcmcvY2RuL3ByaW1lbmcvaW1hZ2VzL3ByaW1lbmctaWNvbi5zdmdcIiBzdHlsZT1cIndpZHRoOiAxLjVyZW1cIiAvPlxyXG4gICAgICAgIDxzcGFuIGNsYXNzPVwibWwtMiBmb250LWJvbGRcIj5QcmltZU5HPC9zcGFuPlxyXG4gICAgPC9wLWJ1dHRvbj4gLS0+XHJcblxyXG4gICAgPC9kaXY+XHJcbiAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLW92ZXJsYXlQYW5lbD5cclxuXHJcbjxwLW92ZXJsYXlQYW5lbFxyXG4gICNtZXVzRGFkb3NQYW5lbFxyXG4gIFtzaG93VHJhbnNpdGlvbk9wdGlvbnNdPVwiJzM1MG1zIGVhc2Utb3V0J1wiXHJcbiAgW2hpZGVUcmFuc2l0aW9uT3B0aW9uc109XCInMjUwbXMgZWFzZS1pbidcIlxyXG4+XHJcblxyXG4gIDxuZy10ZW1wbGF0ZSBwVGVtcGxhdGU9XCJjb250YWluZXJcIj5cclxuXHJcbiAgICA8cCBjbGFzcz1cInRpdGxlLXN0eWxlIG10LTNcIj5PbMOhLCBVc3XDoXJpbyAhPC9wPlxyXG4gICAgPGRpdlxyXG4gICAgICBjbGFzcz1cIm10LTUgbWItM1wiXHJcbiAgICAgIHN0eWxlPVwid2lkdGg6IDI1MHB4OyBoZWlnaHQ6IDEwMCU7XCJcclxuICAgID48L2Rpdj5cclxuXHJcbiAgICA8cC1idXR0b25cclxuICAgICAgaWNvbj1cInBpIHBpLWxvY2tcIlxyXG4gICAgICBsYWJlbD1cIkdlcsOqbmNpYXIgS2Vldm9QYXNzXCJcclxuICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub3JvdW5kIHctZnVsbCBwLWJ1dHRvbi10ZXh0IHRleHQtYmx1ZS05MDBcIlxyXG4gICAgPjwvcC1idXR0b24+XHJcbiAgICA8cC1idXR0b25cclxuICAgICAgaWNvbj1cInBpIHBpLXNpZ24tb3V0XCJcclxuICAgICAgbGFiZWw9XCJTYWlyXCJcclxuICAgICAgc3R5bGVDbGFzcz1cImJvcmRlci1ub3JvdW5kIHctZnVsbCBwLWJ1dHRvbi10ZXh0IHRleHQtYmx1ZS05MDBcIlxyXG4gICAgPjwvcC1idXR0b24+XHJcblxyXG4gIDwvbmctdGVtcGxhdGU+XHJcbjwvcC1vdmVybGF5UGFuZWw+Il19
@@ -0,0 +1,90 @@
1
+ import { Component, Input, ViewChild, } from '@angular/core';
2
+ import { OrgChart } from 'd3-org-chart';
3
+ import * as d3 from 'd3';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common";
6
+ import * as i2 from "primeng/tooltip";
7
+ export class OrgchartComponent {
8
+ // @Input() applyStyle: Function = (data: any) => '';
9
+ constructor(renderer) {
10
+ this.renderer = renderer;
11
+ this.corDeFundo = 'red';
12
+ this.compact = true;
13
+ this.mostraMenu = false;
14
+ }
15
+ ngOnInit() {
16
+ }
17
+ ngAfterViewInit() {
18
+ if (!this.chart) {
19
+ this.chart = new OrgChart();
20
+ }
21
+ this.updateChart();
22
+ }
23
+ ngOnChanges() {
24
+ this.updateChart();
25
+ }
26
+ updateChart() {
27
+ if (!this.dataSource) {
28
+ return;
29
+ }
30
+ if (!this.chart) {
31
+ return;
32
+ }
33
+ const chartContainer = this.chartContainer.nativeElement;
34
+ this.chart
35
+ .container(chartContainer)
36
+ .data(this.dataSource)
37
+ .nodeWidth(() => this.config.cardWidht)
38
+ .nodeHeight(() => this.config.cardHeight)
39
+ .nodeUpdate(function (d) {
40
+ })
41
+ .linkUpdate((node, index, nodes) => {
42
+ d3.select(nodes[index])
43
+ .attr('stroke-width', this.config.conectionWidth || '2px')
44
+ .style('stroke', this.config.connectionColor || '#d6d6d6').style('backgroundColor', 'red');
45
+ })
46
+ .nodeContent((d) => {
47
+ if (d.data.template) {
48
+ const jsTemplate = this.stringToTemplateLiteral(d.data.template);
49
+ var templateConverter = new Function('data', 'return' + jsTemplate);
50
+ var x = templateConverter(d.data.data);
51
+ }
52
+ else {
53
+ const jsTemplate = this.stringToTemplateLiteral(this.config.templateItem);
54
+ var templateConverter = new Function('data', 'return' + jsTemplate);
55
+ var x = templateConverter(d.data.data);
56
+ }
57
+ return x;
58
+ })
59
+ .defaultFont('Roboto')
60
+ .render();
61
+ }
62
+ stringToTemplateLiteral(string) {
63
+ const convertedTemplate = string.replace(/\{\{([^}]*)\}\}/g, '${$1}');
64
+ return '`' + convertedTemplate + '`';
65
+ }
66
+ compactSwap() {
67
+ this.compact = !this.compact;
68
+ this.chart.compact(this.compact).render();
69
+ }
70
+ }
71
+ OrgchartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OrgchartComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
72
+ OrgchartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: OrgchartComponent, selector: "kv-orgchart", inputs: { dataSource: "dataSource", config: "config", template: "template", nodeTemplate: "nodeTemplate", corDeFundo: "corDeFundo" }, viewQueries: [{ propertyName: "chartContainer", first: true, predicate: ["chartContainer"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\r\n\r\n\r\n <div class=\"div-botoes w-full flex gap-1\" >\r\n\r\n\r\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\r\n\r\n\r\n\r\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\r\n\r\n <div *ngIf=\"mostraMenu\">\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\r\n\r\n\r\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\r\n filter_center_focus\r\n </span>\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\r\n fullscreen\r\n </span>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n</div>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.Tooltip, selector: "[pTooltip]", inputs: ["tooltipPosition", "tooltipEvent", "appendTo", "positionStyle", "tooltipStyleClass", "tooltipZIndex", "escape", "showDelay", "hideDelay", "life", "positionTop", "positionLeft", "autoHide", "fitContent", "hideOnEscape", "pTooltip", "tooltipDisabled", "tooltipOptions"] }] });
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OrgchartComponent, decorators: [{
74
+ type: Component,
75
+ args: [{ selector: 'kv-orgchart', template: "<div #chartContainer id=\"chartContainer\" [ngClass]=\"{'backGround': true}\">\r\n\r\n\r\n <div class=\"div-botoes w-full flex gap-1\" >\r\n\r\n\r\n <span *ngIf=\"!mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Expandir menu\">menu</span>\r\n\r\n\r\n\r\n <span *ngIf=\"mostraMenu\" class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"mostraMenu = !mostraMenu\" pTooltip=\"Recolher menu\">menu_open</span>\r\n\r\n <div *ngIf=\"mostraMenu\">\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomIn()\" pTooltip=\"Zoom +\">zoom_in</span>\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.zoomOut()\" pTooltip=\"Zoom -\">zoom_out</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.collapseAll()\" pTooltip=\"Expandir\">expand_less</span>\r\n\r\n <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"chart.expandAll()\" pTooltip=\"Recolher\">expand_more</span>\r\n\r\n\r\n <!-- <span class=\"surface-300 shadow-4 p-1 m-2 border-circle material-icons cursor-pointer\"\r\n (click)=\"compactSwap()\" pTooltip=\"Compactar\">cached</span> -->\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fit().render()\" pTooltip=\"Centralizar\">\r\n filter_center_focus\r\n </span>\r\n\r\n <span class=\"material-icons surface-300 shadow-4 p-1 m-2 border-circle cursor-pointer\"\r\n (click)=\"chart.fullscreen('#chartContainer')\" pTooltip=\"Tela cheia\" >\r\n fullscreen\r\n </span>\r\n\r\n </div>\r\n\r\n\r\n </div>\r\n\r\n\r\n\r\n\r\n</div>\r\n", styles: ["#chartContainer{height:100%;overflow:hidden}:host ::ng-deep #chartContainer svg.svg-chart-container{height:100%!important;position:relative;width:100%;top:-56px;z-index:0;background-color:#fff}.div-botoes{z-index:1;width:100%;position:relative}\n"] }]
76
+ }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { chartContainer: [{
77
+ type: ViewChild,
78
+ args: ['chartContainer']
79
+ }], dataSource: [{
80
+ type: Input
81
+ }], config: [{
82
+ type: Input
83
+ }], template: [{
84
+ type: Input
85
+ }], nodeTemplate: [{
86
+ type: Input
87
+ }], corDeFundo: [{
88
+ type: Input
89
+ }] } });
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnY2hhcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL29yZ2NoYXJ0L29yZ2NoYXJ0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9vcmdjaGFydC9vcmdjaGFydC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUdULEtBQUssRUFNTCxTQUFTLEdBRVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEtBQUssRUFBRSxNQUFNLElBQUksQ0FBQzs7OztBQVN6QixNQUFNLE9BQU8saUJBQWlCO0lBZ0I1QixxREFBcUQ7SUFFckQsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQVI5QixlQUFVLEdBQVcsS0FBSyxDQUFDO1FBRXBDLFlBQU8sR0FBWSxJQUFJLENBQUM7UUFDeEIsZUFBVSxHQUFZLEtBQUssQ0FBQztJQUtjLENBQUM7SUFFM0MsUUFBUTtJQUNSLENBQUM7SUFHRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZixJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksUUFBUSxFQUFFLENBQUM7U0FDN0I7UUFDRCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDckIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNwQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNmLE9BQU87U0FDUjtRQUlELE1BQU0sY0FBYyxHQUFHLElBQUksQ0FBQyxjQUFjLENBQUMsYUFBYSxDQUFDO1FBQ3pELElBQUksQ0FBQyxLQUFLO2FBQ1AsU0FBUyxDQUFDLGNBQWMsQ0FBQzthQUN6QixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQzthQUNyQixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUM7YUFDdEMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDO2FBQ3hDLFVBQVUsQ0FBQyxVQUFVLENBQUs7UUFDM0IsQ0FBQyxDQUFDO2FBQ0QsVUFBVSxDQUFDLENBQUMsSUFBUSxFQUFFLEtBQVMsRUFBRSxLQUFTLEVBQUMsRUFBRTtZQUM1QyxFQUFFLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztpQkFDcEIsSUFBSSxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLGNBQWMsSUFBSSxLQUFLLENBQUM7aUJBQ3pELEtBQUssQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLElBQUksU0FBUyxDQUFDLENBQUMsS0FBSyxDQUFDLGlCQUFpQixFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQzlGLENBQUMsQ0FBQzthQUNELFdBQVcsQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFO1lBR3RCLElBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUM7Z0JBQ2pCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNqRSxJQUFJLGlCQUFpQixHQUFHLElBQUksUUFBUSxDQUFDLE1BQU0sRUFBRSxRQUFRLEdBQUcsVUFBVSxDQUFDLENBQUM7Z0JBQ3BFLElBQUksQ0FBQyxHQUFHLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDeEM7aUJBQUk7Z0JBQ0gsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHVCQUF1QixDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQzFFLElBQUksaUJBQWlCLEdBQUcsSUFBSSxRQUFRLENBQUMsTUFBTSxFQUFFLFFBQVEsR0FBRyxVQUFVLENBQUMsQ0FBQztnQkFDcEUsSUFBSSxDQUFDLEdBQUcsaUJBQWlCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUN4QztZQUNELE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQyxDQUFDO2FBQ0QsV0FBVyxDQUFDLFFBQVEsQ0FBQzthQUNyQixNQUFNLEVBQUUsQ0FBQTtJQUdiLENBQUM7SUFDRCx1QkFBdUIsQ0FBQyxNQUFjO1FBQ3BDLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FDdEMsa0JBQWtCLEVBQ2xCLE9BQU8sQ0FDUixDQUFDO1FBRUYsT0FBTyxHQUFHLEdBQUcsaUJBQWlCLEdBQUcsR0FBRyxDQUFDO0lBQ3ZDLENBQUM7SUFDRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzVDLENBQUM7OzhHQXhGVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixnVUN2QjlCLGs4REFpREE7MkZEMUJhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxhQUFhO2dHQUtNLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQUdsQixVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBR0csVUFBVTtzQkFBbEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIElucHV0LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgUmVuZGVyZXIyLFxyXG4gIFJlbmRlcmVyRmFjdG9yeTIsXHJcbiAgVGVtcGxhdGVSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIFZpZXdDb250YWluZXJSZWYsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE9yZ0NoYXJ0IH0gZnJvbSAnZDMtb3JnLWNoYXJ0JztcclxuaW1wb3J0ICogYXMgZDMgZnJvbSAnZDMnO1xyXG5pbXBvcnQgT3JnQ2hhcnRJdGVtIGZyb20gJy4uL2FwaS9jb21wb25lbnRzL2NoYXJ0L29yY2hhcnQuaXRlbSc7XHJcbmltcG9ydCBPcmdDaGFydENvbmZpZyBmcm9tICcuLi9hcGkvY29tcG9uZW50cy9jaGFydC9vcmNoYXJ0LmNvbmZpZyc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2t2LW9yZ2NoYXJ0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vb3JnY2hhcnQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL29yZ2NoYXJ0LmNvbXBvbmVudC5zY3NzJyxdLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgT3JnY2hhcnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIEBWaWV3Q2hpbGQoJ2NoYXJ0Q29udGFpbmVyJykgY2hhcnRDb250YWluZXIhOiBFbGVtZW50UmVmO1xyXG4gIGNoYXJ0ITogYW55O1xyXG5cclxuICBASW5wdXQoKSBkYXRhU291cmNlITogT3JnQ2hhcnRJdGVtW107XHJcbiAgQElucHV0KCkgY29uZmlnITogT3JnQ2hhcnRDb25maWc7XHJcbiAgQElucHV0KCkgdGVtcGxhdGUhOiBzdHJpbmc7XHJcbiAgQElucHV0KCkgbm9kZVRlbXBsYXRlITogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcblxyXG4gIEBJbnB1dCgpIGNvckRlRnVuZG86IHN0cmluZyA9ICdyZWQnO1xyXG5cclxuICBjb21wYWN0OiBib29sZWFuID0gdHJ1ZTtcclxuICBtb3N0cmFNZW51OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG5cclxuICAvLyBASW5wdXQoKSBhcHBseVN0eWxlOiBGdW5jdGlvbiA9IChkYXRhOiBhbnkpID0+ICcnO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHt9XHJcblxyXG4gIG5nT25Jbml0KCkge1xyXG4gIH1cclxuXHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIGlmICghdGhpcy5jaGFydCkge1xyXG4gICAgICB0aGlzLmNoYXJ0ID0gbmV3IE9yZ0NoYXJ0KCk7XHJcbiAgICB9XHJcbiAgICB0aGlzLnVwZGF0ZUNoYXJ0KCk7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcygpIHtcclxuICAgIHRoaXMudXBkYXRlQ2hhcnQoKTtcclxuICB9XHJcblxyXG4gIHVwZGF0ZUNoYXJ0KCkge1xyXG4gICAgaWYgKCF0aGlzLmRhdGFTb3VyY2UpIHtcclxuICAgICAgcmV0dXJuO1xyXG4gICAgfVxyXG4gICAgaWYgKCF0aGlzLmNoYXJ0KSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuXHJcblxyXG5cclxuICAgIGNvbnN0IGNoYXJ0Q29udGFpbmVyID0gdGhpcy5jaGFydENvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5jaGFydFxyXG4gICAgICAuY29udGFpbmVyKGNoYXJ0Q29udGFpbmVyKVxyXG4gICAgICAuZGF0YSh0aGlzLmRhdGFTb3VyY2UpXHJcbiAgICAgIC5ub2RlV2lkdGgoKCkgPT4gdGhpcy5jb25maWcuY2FyZFdpZGh0KVxyXG4gICAgICAubm9kZUhlaWdodCgoKSA9PiB0aGlzLmNvbmZpZy5jYXJkSGVpZ2h0KVxyXG4gICAgICAubm9kZVVwZGF0ZShmdW5jdGlvbiAoZDphbnkpIHtcclxuICAgICAgfSlcclxuICAgICAgLmxpbmtVcGRhdGUoKG5vZGU6YW55LCBpbmRleDphbnksIG5vZGVzOmFueSk9PiB7XHJcbiAgICAgICAgZDMuc2VsZWN0KG5vZGVzW2luZGV4XSlcclxuICAgICAgICAgIC5hdHRyKCdzdHJva2Utd2lkdGgnLCB0aGlzLmNvbmZpZy5jb25lY3Rpb25XaWR0aCB8fCAnMnB4JylcclxuICAgICAgICAgIC5zdHlsZSgnc3Ryb2tlJywgdGhpcy5jb25maWcuY29ubmVjdGlvbkNvbG9yIHx8ICcjZDZkNmQ2Jykuc3R5bGUoJ2JhY2tncm91bmRDb2xvcicsICdyZWQnKVxyXG4gICAgICB9KVxyXG4gICAgICAubm9kZUNvbnRlbnQoKGQ6IGFueSkgPT4ge1xyXG5cclxuXHJcbiAgICAgICAgaWYoZC5kYXRhLnRlbXBsYXRlKXtcclxuICAgICAgICAgIGNvbnN0IGpzVGVtcGxhdGUgPSB0aGlzLnN0cmluZ1RvVGVtcGxhdGVMaXRlcmFsKGQuZGF0YS50ZW1wbGF0ZSk7XHJcbiAgICAgICAgICB2YXIgdGVtcGxhdGVDb252ZXJ0ZXIgPSBuZXcgRnVuY3Rpb24oJ2RhdGEnLCAncmV0dXJuJyArIGpzVGVtcGxhdGUpO1xyXG4gICAgICAgICAgdmFyIHggPSB0ZW1wbGF0ZUNvbnZlcnRlcihkLmRhdGEuZGF0YSk7XHJcbiAgICAgICAgfWVsc2V7XHJcbiAgICAgICAgICBjb25zdCBqc1RlbXBsYXRlID0gdGhpcy5zdHJpbmdUb1RlbXBsYXRlTGl0ZXJhbCh0aGlzLmNvbmZpZy50ZW1wbGF0ZUl0ZW0pO1xyXG4gICAgICAgICAgdmFyIHRlbXBsYXRlQ29udmVydGVyID0gbmV3IEZ1bmN0aW9uKCdkYXRhJywgJ3JldHVybicgKyBqc1RlbXBsYXRlKTtcclxuICAgICAgICAgIHZhciB4ID0gdGVtcGxhdGVDb252ZXJ0ZXIoZC5kYXRhLmRhdGEpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4geDtcclxuICAgICAgfSlcclxuICAgICAgLmRlZmF1bHRGb250KCdSb2JvdG8nKVxyXG4gICAgICAucmVuZGVyKClcclxuXHJcblxyXG4gIH1cclxuICBzdHJpbmdUb1RlbXBsYXRlTGl0ZXJhbChzdHJpbmc6IHN0cmluZyk6IHN0cmluZyB7XHJcbiAgICBjb25zdCBjb252ZXJ0ZWRUZW1wbGF0ZSA9IHN0cmluZy5yZXBsYWNlKFxyXG4gICAgICAvXFx7XFx7KFtefV0qKVxcfVxcfS9nLFxyXG4gICAgICAnJHskMX0nXHJcbiAgICApO1xyXG5cclxuICAgIHJldHVybiAnYCcgKyBjb252ZXJ0ZWRUZW1wbGF0ZSArICdgJztcclxuICB9XHJcbiAgY29tcGFjdFN3YXAoKSB7XHJcbiAgICB0aGlzLmNvbXBhY3QgPSAhdGhpcy5jb21wYWN0O1xyXG4gICAgdGhpcy5jaGFydC5jb21wYWN0KHRoaXMuY29tcGFjdCkucmVuZGVyKCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgI2NoYXJ0Q29udGFpbmVyIGlkPVwiY2hhcnRDb250YWluZXJcIiBbbmdDbGFzc109XCJ7J2JhY2tHcm91bmQnOiB0cnVlfVwiPlxyXG5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImRpdi1ib3RvZXMgdy1mdWxsIGZsZXggZ2FwLTFcIiA+XHJcblxyXG5cclxuICAgIDxzcGFuICpuZ0lmPVwiIW1vc3RyYU1lbnVcIiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAoY2xpY2spPVwibW9zdHJhTWVudSA9ICFtb3N0cmFNZW51XCIgcFRvb2x0aXA9XCJFeHBhbmRpciBtZW51XCI+bWVudTwvc3Bhbj5cclxuXHJcblxyXG5cclxuICAgIDxzcGFuICpuZ0lmPVwibW9zdHJhTWVudVwiIGNsYXNzPVwic3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIG1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyXCJcclxuICAgIChjbGljayk9XCJtb3N0cmFNZW51ID0gIW1vc3RyYU1lbnVcIiBwVG9vbHRpcD1cIlJlY29saGVyIG1lbnVcIj5tZW51X29wZW48L3NwYW4+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cIm1vc3RyYU1lbnVcIj5cclxuICAgICAgPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAoY2xpY2spPVwiY2hhcnQuem9vbUluKClcIiBwVG9vbHRpcD1cIlpvb20gK1wiPnpvb21faW48L3NwYW4+XHJcbiAgICA8c3BhbiBjbGFzcz1cInN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBtYXRlcmlhbC1pY29ucyBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgIChjbGljayk9XCJjaGFydC56b29tT3V0KClcIiBwVG9vbHRpcD1cIlpvb20gLVwiPnpvb21fb3V0PC9zcGFuPlxyXG5cclxuICAgIDxzcGFuIGNsYXNzPVwic3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIG1hdGVyaWFsLWljb25zIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgKGNsaWNrKT1cImNoYXJ0LmNvbGxhcHNlQWxsKClcIiBwVG9vbHRpcD1cIkV4cGFuZGlyXCI+ZXhwYW5kX2xlc3M8L3NwYW4+XHJcblxyXG4gICAgPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAoY2xpY2spPVwiY2hhcnQuZXhwYW5kQWxsKClcIiBwVG9vbHRpcD1cIlJlY29saGVyXCI+ZXhwYW5kX21vcmU8L3NwYW4+XHJcblxyXG5cclxuICAgIDwhLS0gPHNwYW4gY2xhc3M9XCJzdXJmYWNlLTMwMCBzaGFkb3ctNCBwLTEgbS0yIGJvcmRlci1jaXJjbGUgbWF0ZXJpYWwtaWNvbnMgY3Vyc29yLXBvaW50ZXJcIlxyXG4gICAgICAoY2xpY2spPVwiY29tcGFjdFN3YXAoKVwiIHBUb29sdGlwPVwiQ29tcGFjdGFyXCI+Y2FjaGVkPC9zcGFuPiAtLT5cclxuXHJcbiAgICA8c3BhbiBjbGFzcz1cIm1hdGVyaWFsLWljb25zIHN1cmZhY2UtMzAwIHNoYWRvdy00IHAtMSBtLTIgYm9yZGVyLWNpcmNsZSBjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgIChjbGljayk9XCJjaGFydC5maXQoKS5yZW5kZXIoKVwiIHBUb29sdGlwPVwiQ2VudHJhbGl6YXJcIj5cclxuICAgICAgZmlsdGVyX2NlbnRlcl9mb2N1c1xyXG4gICAgPC9zcGFuPlxyXG5cclxuICAgIDxzcGFuIGNsYXNzPVwibWF0ZXJpYWwtaWNvbnMgc3VyZmFjZS0zMDAgc2hhZG93LTQgcC0xIG0tMiBib3JkZXItY2lyY2xlIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgKGNsaWNrKT1cImNoYXJ0LmZ1bGxzY3JlZW4oJyNjaGFydENvbnRhaW5lcicpXCIgcFRvb2x0aXA9XCJUZWxhIGNoZWlhXCIgPlxyXG4gICAgICBmdWxsc2NyZWVuXHJcbiAgICA8L3NwYW4+XHJcblxyXG4gICAgPC9kaXY+XHJcblxyXG5cclxuICA8L2Rpdj5cclxuXHJcblxyXG5cclxuXHJcbjwvZGl2PlxyXG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { OrgchartComponent } from './orgchart.component';
4
+ import { PrimeNgModule } from '../../public-api';
5
+ import * as i0 from "@angular/core";
6
+ export class OrgchartModule {
7
+ }
8
+ OrgchartModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OrgchartModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ OrgchartModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: OrgchartModule, declarations: [OrgchartComponent], imports: [CommonModule,
10
+ PrimeNgModule], exports: [OrgchartComponent] });
11
+ OrgchartModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OrgchartModule, imports: [CommonModule,
12
+ PrimeNgModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: OrgchartModule, decorators: [{
14
+ type: NgModule,
15
+ args: [{
16
+ imports: [
17
+ CommonModule,
18
+ PrimeNgModule
19
+ ],
20
+ declarations: [OrgchartComponent],
21
+ exports: [OrgchartComponent]
22
+ }]
23
+ }] });
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JnY2hhcnQubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL29yZ2NoYXJ0L29yZ2NoYXJ0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBVWpELE1BQU0sT0FBTyxjQUFjOzsyR0FBZCxjQUFjOzRHQUFkLGNBQWMsaUJBSFYsaUJBQWlCLGFBSDlCLFlBQVk7UUFDWixhQUFhLGFBR0wsaUJBQWlCOzRHQUVoQixjQUFjLFlBTnZCLFlBQVk7UUFDWixhQUFhOzJGQUtKLGNBQWM7a0JBUjFCLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osYUFBYTtxQkFDZDtvQkFDRCxZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztvQkFDakMsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgT3JnY2hhcnRDb21wb25lbnQgfSBmcm9tICcuL29yZ2NoYXJ0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFByaW1lTmdNb2R1bGUgfSBmcm9tICcuLi8uLi9wdWJsaWMtYXBpJztcclxuXHJcbkBOZ01vZHVsZSh7XHJcbiAgaW1wb3J0czogW1xyXG4gICAgQ29tbW9uTW9kdWxlLFxyXG4gICAgUHJpbWVOZ01vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbT3JnY2hhcnRDb21wb25lbnRdLFxyXG4gIGV4cG9ydHM6IFtPcmdjaGFydENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIE9yZ2NoYXJ0TW9kdWxlIHsgfVxyXG4iXX0=
@@ -0,0 +1,32 @@
1
+ import { FormsModule } from '@angular/forms';
2
+ import { PrimeNgModule } from '../api/modules/primeng.module';
3
+ import { CommonModule } from '@angular/common';
4
+ import { PickListComponent } from './picklist.component';
5
+ import { NgModule } from "@angular/core";
6
+ import * as i0 from "@angular/core";
7
+ export class KvPickListModule {
8
+ }
9
+ KvPickListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvPickListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
10
+ KvPickListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: KvPickListModule, declarations: [PickListComponent], imports: [CommonModule,
11
+ PrimeNgModule,
12
+ FormsModule], exports: [PickListComponent] });
13
+ KvPickListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvPickListModule, imports: [CommonModule,
14
+ PrimeNgModule,
15
+ FormsModule] });
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: KvPickListModule, decorators: [{
17
+ type: NgModule,
18
+ args: [{
19
+ declarations: [
20
+ PickListComponent
21
+ ],
22
+ imports: [
23
+ CommonModule,
24
+ PrimeNgModule,
25
+ FormsModule,
26
+ ],
27
+ exports: [
28
+ PickListComponent
29
+ ]
30
+ }]
31
+ }] });
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia3ZwaWNrbGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZWV2by1jb21wb25lbnRzL3NyYy9saWIvcGlja2xpc3Qva3ZwaWNrbGlzdC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFlekMsTUFBTSxPQUFPLGdCQUFnQjs7NkdBQWhCLGdCQUFnQjs4R0FBaEIsZ0JBQWdCLGlCQVh6QixpQkFBaUIsYUFHakIsWUFBWTtRQUNaLGFBQWE7UUFDYixXQUFXLGFBR1gsaUJBQWlCOzhHQUdSLGdCQUFnQixZQVJ6QixZQUFZO1FBQ1osYUFBYTtRQUNiLFdBQVc7MkZBTUYsZ0JBQWdCO2tCQWI1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixpQkFBaUI7cUJBQ2xCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxZQUFZO3dCQUNaLGFBQWE7d0JBQ2IsV0FBVztxQkFDWjtvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsaUJBQWlCO3FCQUNsQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBQcmltZU5nTW9kdWxlIH0gZnJvbSAnLi4vYXBpL21vZHVsZXMvcHJpbWVuZy5tb2R1bGUnO1xyXG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBQaWNrTGlzdENvbXBvbmVudCB9IGZyb20gJy4vcGlja2xpc3QuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIFBpY2tMaXN0Q29tcG9uZW50XHJcbiAgXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBQcmltZU5nTW9kdWxlLFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgXSxcclxuICBleHBvcnRzOiBbXHJcbiAgICBQaWNrTGlzdENvbXBvbmVudFxyXG4gIF1cclxufSlcclxuZXhwb3J0IGNsYXNzIEt2UGlja0xpc3RNb2R1bGUgeyB9XHJcbiJdfQ==
@@ -0,0 +1,48 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "primeng/api";
5
+ import * as i3 from "primeng/picklist";
6
+ export class PickListComponent {
7
+ constructor() {
8
+ this.sourceHeader = 'Título da lista de origem';
9
+ this.targetHeader = 'Título de lista de destino';
10
+ this.dragdrop = true; // Ativa/Desativa o arrasta e solta
11
+ this.responsive = true; // Ativa/Desativa a responsividade automática
12
+ this.breakpoint = "1400px"; // Define a largura da tela na qual o componente deve alterar seu comportamento responsivo.
13
+ this.stripedRows = false; // Ativa/Desativa linhas com cores alternadas ("zebradas")
14
+ }
15
+ ngOnInit() {
16
+ }
17
+ }
18
+ PickListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PickListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
19
+ PickListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PickListComponent, selector: "kv-picklist", inputs: { source: "source", sourceHeader: "sourceHeader", sourceStyle: "sourceStyle", target: "target", targetHeader: "targetHeader", targetStyle: "targetStyle", dragdrop: "dragdrop", responsive: "responsive", filterBy: "filterBy", breakpoint: "breakpoint", stripedRows: "stripedRows", itemTemplate: "itemTemplate" }, ngImport: i0, template: "<p-pickList \r\n [source]=\"source\" \r\n [sourceHeader]=\"sourceHeader\" \r\n [sourceStyle]=\"sourceStyle\" \r\n [target]=\"target\" \r\n [targetHeader]=\"targetHeader\" \r\n [targetStyle]=\"targetStyle\"\r\n [dragdrop]=\"dragdrop\" \r\n [responsive]=\"responsive\"\r\n [filterBy]=\"filterBy\"\r\n [breakpoint]=\"breakpoint\"\r\n [stripedRows]=\"stripedRows\"\r\n>\r\n <ng-template let-item pTemplate=\"item\" *ngIf=\"itemTemplate\">\r\n <ng-container [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-container>\r\n </ng-template>\r\n</p-pickList>\r\n", styles: ["", "label{font-family:Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:40px}*{margin:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: i3.PickList, selector: "p-pickList", inputs: ["source", "target", "sourceHeader", "rightButtonAriaLabel", "leftButtonAriaLabel", "allRightButtonAriaLabel", "allLeftButtonAriaLabel", "upButtonAriaLabel", "downButtonAriaLabel", "topButtonAriaLabel", "bottomButtonAriaLabel", "targetHeader", "responsive", "filterBy", "filterLocale", "trackBy", "sourceTrackBy", "targetTrackBy", "showSourceFilter", "showTargetFilter", "metaKeySelection", "dragdrop", "style", "styleClass", "sourceStyle", "targetStyle", "showSourceControls", "showTargetControls", "sourceFilterPlaceholder", "targetFilterPlaceholder", "disabled", "ariaSourceFilterLabel", "ariaTargetFilterLabel", "filterMatchMode", "breakpoint", "stripedRows", "keepSelection"], outputs: ["onMoveToSource", "onMoveAllToSource", "onMoveAllToTarget", "onMoveToTarget", "onSourceReorder", "onTargetReorder", "onSourceSelect", "onTargetSelect", "onSourceFilter", "onTargetFilter"] }] });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PickListComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'kv-picklist', template: "<p-pickList \r\n [source]=\"source\" \r\n [sourceHeader]=\"sourceHeader\" \r\n [sourceStyle]=\"sourceStyle\" \r\n [target]=\"target\" \r\n [targetHeader]=\"targetHeader\" \r\n [targetStyle]=\"targetStyle\"\r\n [dragdrop]=\"dragdrop\" \r\n [responsive]=\"responsive\"\r\n [filterBy]=\"filterBy\"\r\n [breakpoint]=\"breakpoint\"\r\n [stripedRows]=\"stripedRows\"\r\n>\r\n <ng-template let-item pTemplate=\"item\" *ngIf=\"itemTemplate\">\r\n <ng-container [ngTemplateOutlet]=\"itemTemplate\" [ngTemplateOutletContext]=\"{ $implicit: item }\"></ng-container>\r\n </ng-template>\r\n</p-pickList>\r\n", styles: ["label{font-family:Roboto,Arial,Helvetica,sans-serif}:host ::ng-deep .inputs{height:40px}*{margin:0}\n"] }]
23
+ }], ctorParameters: function () { return []; }, propDecorators: { source: [{
24
+ type: Input
25
+ }], sourceHeader: [{
26
+ type: Input
27
+ }], sourceStyle: [{
28
+ type: Input
29
+ }], target: [{
30
+ type: Input
31
+ }], targetHeader: [{
32
+ type: Input
33
+ }], targetStyle: [{
34
+ type: Input
35
+ }], dragdrop: [{
36
+ type: Input
37
+ }], responsive: [{
38
+ type: Input
39
+ }], filterBy: [{
40
+ type: Input
41
+ }], breakpoint: [{
42
+ type: Input
43
+ }], stripedRows: [{
44
+ type: Input
45
+ }], itemTemplate: [{
46
+ type: Input
47
+ }] } });
48
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGlja2xpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2Vldm8tY29tcG9uZW50cy9zcmMvbGliL3BpY2tsaXN0L3BpY2tsaXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlZXZvLWNvbXBvbmVudHMvc3JjL2xpYi9waWNrbGlzdC9waWNrbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsTUFBTSxlQUFlLENBQUM7Ozs7O0FBT3RFLE1BQU0sT0FBTyxpQkFBaUI7SUFlNUI7UUFaUyxpQkFBWSxHQUFXLDJCQUEyQixDQUFDO1FBR25ELGlCQUFZLEdBQVcsNEJBQTRCLENBQUM7UUFFcEQsYUFBUSxHQUFZLElBQUksQ0FBQyxDQUFDLG1DQUFtQztRQUM3RCxlQUFVLEdBQVksSUFBSSxDQUFDLENBQUMsNkNBQTZDO1FBRXpFLGVBQVUsR0FBVyxRQUFRLENBQUMsQ0FBQywyRkFBMkY7UUFDMUgsZ0JBQVcsR0FBWSxLQUFLLENBQUMsQ0FBQywwREFBMEQ7SUFHakYsQ0FBQztJQUVqQixRQUFRO0lBQ1IsQ0FBQzs7OEdBbEJVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGlYQ1A5Qixrb0JBaUJBOzJGRFZhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxhQUFhOzBFQU1kLE1BQU07c0JBQWQsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uSW5pdCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAna3YtcGlja2xpc3QnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9waWNrbGlzdC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGlja2xpc3QuY29tcG9uZW50LnNjc3MnLCAnLi4vc3R5bGVzLWNvbXBvbmVudHMuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQaWNrTGlzdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcblxyXG4gIEBJbnB1dCgpIHNvdXJjZSE6IGFueVtdOyAvLyBMaXN0YSBkZSBvcmlnZW1cclxuICBASW5wdXQoKSBzb3VyY2VIZWFkZXI6IHN0cmluZyA9ICdUw610dWxvIGRhIGxpc3RhIGRlIG9yaWdlbSc7XHJcbiAgQElucHV0KCkgc291cmNlU3R5bGUhOiBhbnk7IC8vIEVzdGlsaXphw6fDo28gZGEgbGlzdGEgZGUgb3JpZ2VtXHJcbiAgQElucHV0KCkgdGFyZ2V0ITogYW55W107IC8vIExpc3RhIGRlIGRlc3Rpbm8gKEl0ZW5zIHNlbGVjaW9uYWRvcylcclxuICBASW5wdXQoKSB0YXJnZXRIZWFkZXI6IHN0cmluZyA9ICdUw610dWxvIGRlIGxpc3RhIGRlIGRlc3Rpbm8nOyBcclxuICBASW5wdXQoKSB0YXJnZXRTdHlsZSE6IGFueTsgLy8gRXN0aWxpemHDp8OjbyBkYSBsaXN0YSBkZSBkZXN0aW5vXHJcbiAgQElucHV0KCkgZHJhZ2Ryb3A6IGJvb2xlYW4gPSB0cnVlOyAvLyBBdGl2YS9EZXNhdGl2YSBvIGFycmFzdGEgZSBzb2x0YVxyXG4gIEBJbnB1dCgpIHJlc3BvbnNpdmU6IGJvb2xlYW4gPSB0cnVlOyAvLyBBdGl2YS9EZXNhdGl2YSBhIHJlc3BvbnNpdmlkYWRlIGF1dG9tw6F0aWNhXHJcbiAgQElucHV0KCkgZmlsdGVyQnkhOiBzdHJpbmc7IC8vIENhbXBvIGRlIGZpbHRybyBuYXMgbGlzdGFzLlxyXG4gIEBJbnB1dCgpIGJyZWFrcG9pbnQ6IHN0cmluZyA9IFwiMTQwMHB4XCI7IC8vIERlZmluZSBhIGxhcmd1cmEgZGEgdGVsYSBuYSBxdWFsIG8gY29tcG9uZW50ZSBkZXZlIGFsdGVyYXIgc2V1IGNvbXBvcnRhbWVudG8gcmVzcG9uc2l2by5cclxuICBASW5wdXQoKSBzdHJpcGVkUm93czogYm9vbGVhbiA9IGZhbHNlOyAvLyBBdGl2YS9EZXNhdGl2YSBsaW5oYXMgY29tIGNvcmVzIGFsdGVybmFkYXMgKFwiemVicmFkYXNcIilcclxuICBASW5wdXQoKSBpdGVtVGVtcGxhdGUhOiBUZW1wbGF0ZVJlZjxhbnk+OyAvLyBDb21vIGFzIGxpc3RhcyBzw6NvIGRpbsOibWljYXMsIG9icmlnYXRvcmlhbWVudGUgdW0gdGVtcGxhdGUgZGV2ZSBzZXIgaW5mb3JtYWRvIHBhcmEgZXhpYmlyIG9zIGl0ZW5zIGRhcyBsaXN0YXNcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7IH1cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgfVxyXG59XHJcbiIsIjxwLXBpY2tMaXN0IFxyXG4gICAgW3NvdXJjZV09XCJzb3VyY2VcIiBcclxuICAgIFtzb3VyY2VIZWFkZXJdPVwic291cmNlSGVhZGVyXCIgXHJcbiAgICBbc291cmNlU3R5bGVdPVwic291cmNlU3R5bGVcIiBcclxuICAgIFt0YXJnZXRdPVwidGFyZ2V0XCIgXHJcbiAgICBbdGFyZ2V0SGVhZGVyXT1cInRhcmdldEhlYWRlclwiIFxyXG4gICAgW3RhcmdldFN0eWxlXT1cInRhcmdldFN0eWxlXCJcclxuICAgIFtkcmFnZHJvcF09XCJkcmFnZHJvcFwiIFxyXG4gICAgW3Jlc3BvbnNpdmVdPVwicmVzcG9uc2l2ZVwiXHJcbiAgICBbZmlsdGVyQnldPVwiZmlsdGVyQnlcIlxyXG4gICAgW2JyZWFrcG9pbnRdPVwiYnJlYWtwb2ludFwiXHJcbiAgICBbc3RyaXBlZFJvd3NdPVwic3RyaXBlZFJvd3NcIlxyXG4+XHJcbiAgICA8bmctdGVtcGxhdGUgbGV0LWl0ZW0gcFRlbXBsYXRlPVwiaXRlbVwiICpuZ0lmPVwiaXRlbVRlbXBsYXRlXCI+XHJcbiAgICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtVGVtcGxhdGVcIiBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgPC9uZy10ZW1wbGF0ZT5cclxuPC9wLXBpY2tMaXN0PlxyXG4iXX0=