@tolle_/tolle-ui 0.0.31-beta → 0.0.32-beta
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/badge.component.mjs +6 -8
- package/esm2022/lib/breadcrumb-item.component.mjs +1 -1
- package/esm2022/lib/button.component.mjs +2 -2
- package/esm2022/lib/segment.component.mjs +5 -5
- package/esm2022/lib/sidebar.component.mjs +48 -21
- package/fesm2022/tolle-ui.mjs +57 -32
- package/fesm2022/tolle-ui.mjs.map +1 -1
- package/lib/sidebar.component.d.ts +14 -5
- package/package.json +1 -1
|
@@ -13,7 +13,7 @@ export class BadgeComponent {
|
|
|
13
13
|
get computedClass() {
|
|
14
14
|
return cn(
|
|
15
15
|
// Base styles - Pills are always rounded-full
|
|
16
|
-
'
|
|
16
|
+
'flex items-center justify-center rounded-md border px-2 py-0.5 font-medium transition-colors gap-1',
|
|
17
17
|
// Variants (Google Dark Mode theme)
|
|
18
18
|
this.variant === 'default' && 'border-transparent bg-primary text-primary-foreground', this.variant === 'secondary' && 'border-transparent bg-secondary text-secondary-foreground', this.variant === 'outline' && 'text-foreground border-border bg-transparent', this.variant === 'destructive' && 'border-transparent bg-destructive text-destructive-foreground',
|
|
19
19
|
// Sizing
|
|
@@ -31,9 +31,8 @@ export class BadgeComponent {
|
|
|
31
31
|
<button
|
|
32
32
|
*ngIf="removable"
|
|
33
33
|
(click)="onRemove.emit($event)"
|
|
34
|
-
class="ml-1 -mr-1 rounded-md
|
|
35
|
-
|
|
36
|
-
<i class="ri-close-line text-[1.1em]"></i>
|
|
34
|
+
class="ml-1 -mr-1 rounded-md hover:bg-foreground/20 transition-colors outline-none">
|
|
35
|
+
<i class="ri-close-line"></i>
|
|
37
36
|
</button>
|
|
38
37
|
</div>
|
|
39
38
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
|
|
@@ -55,9 +54,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
55
54
|
<button
|
|
56
55
|
*ngIf="removable"
|
|
57
56
|
(click)="onRemove.emit($event)"
|
|
58
|
-
class="ml-1 -mr-1 rounded-md
|
|
59
|
-
|
|
60
|
-
<i class="ri-close-line text-[1.1em]"></i>
|
|
57
|
+
class="ml-1 -mr-1 rounded-md hover:bg-foreground/20 transition-colors outline-none">
|
|
58
|
+
<i class="ri-close-line"></i>
|
|
61
59
|
</button>
|
|
62
60
|
</div>
|
|
63
61
|
`,
|
|
@@ -73,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
73
71
|
}], onRemove: [{
|
|
74
72
|
type: Output
|
|
75
73
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFkZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvdG9sbGUvc3JjL2xpYi9iYWRnZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN2RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7O0FBdUJoQyxNQUFNLE9BQU8sY0FBYztJQUNoQixPQUFPLEdBQXdELFNBQVMsQ0FBQztJQUN6RSxJQUFJLEdBQTRCLFNBQVMsQ0FBQztJQUMxQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUMsZ0NBQWdDO0lBQ25ELEtBQUssR0FBRyxFQUFFLENBQUM7SUFFVixRQUFRLEdBQUcsSUFBSSxZQUFZLEVBQWMsQ0FBQztJQUVqQyxFQUFFLEdBQUcsRUFBRSxDQUFDO0lBRTNCLElBQUksYUFBYTtRQUNmLE9BQU8sRUFBRTtRQUNQLDhDQUE4QztRQUM5QyxvR0FBb0c7UUFFcEcsb0NBQW9DO1FBQ3BDLElBQUksQ0FBQyxPQUFPLEtBQUssU0FBUyxJQUFJLHVEQUF1RCxFQUNyRixJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSwyREFBMkQsRUFDM0YsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksOENBQThDLEVBQzVFLElBQUksQ0FBQyxPQUFPLEtBQUssYUFBYSxJQUFJLCtEQUErRDtRQUVqRyxTQUFTO1FBQ1QsSUFBSSxDQUFDLElBQUksS0FBSyxJQUFJLElBQUkseUJBQXlCLEVBQy9DLElBQUksQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLHVCQUF1QixFQUM3QyxJQUFJLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxTQUFTLEVBRXBDLElBQUksQ0FBQyxLQUFLLENBQ1gsQ0FBQztJQUNKLENBQUM7d0dBNUJVLGNBQWM7NEZBQWQsY0FBYyxnTUFqQmY7Ozs7Ozs7Ozs7Ozs7OztHQWVULDJEQWhCUyxZQUFZOzs0RkFrQlgsY0FBYztrQkFyQjFCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUM7b0JBQ3ZCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7O0dBZVQ7aUJBQ0Y7OEJBRVUsT0FBTztzQkFBZixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBjbiB9IGZyb20gJy4vdXRpbHMvY24nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b2xsZS1iYWRnZScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgW2NsYXNzXT1cImNvbXB1dGVkQ2xhc3NcIj5cbiAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltwcmVmaXhdXCI+PC9uZy1jb250ZW50PlxuXG4gICAgICA8c3BhbiBjbGFzcz1cInRydW5jYXRlXCI+XG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDwvc3Bhbj5cblxuICAgICAgPGJ1dHRvblxuICAgICAgICAqbmdJZj1cInJlbW92YWJsZVwiXG4gICAgICAgIChjbGljayk9XCJvblJlbW92ZS5lbWl0KCRldmVudClcIlxuICAgICAgICBjbGFzcz1cIm1sLTEgLW1yLTEgcm91bmRlZC1tZCBob3ZlcjpiZy1mb3JlZ3JvdW5kLzIwIHRyYW5zaXRpb24tY29sb3JzIG91dGxpbmUtbm9uZVwiPlxuICAgICAgICA8aSBjbGFzcz1cInJpLWNsb3NlLWxpbmVcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cbiAgYCxcbn0pXG5leHBvcnQgY2xhc3MgQmFkZ2VDb21wb25lbnQge1xuICBASW5wdXQoKSB2YXJpYW50OiAnZGVmYXVsdCcgfCAnc2Vjb25kYXJ5JyB8ICdvdXRsaW5lJyB8ICdkZXN0cnVjdGl2ZScgPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHNpemU6ICd4cycgfCAnc20nIHwgJ2RlZmF1bHQnID0gJ2RlZmF1bHQnO1xuICBASW5wdXQoKSByZW1vdmFibGUgPSBmYWxzZTsgLy8gVG9nZ2xlIHRoZSBcIlBpbGxcIiByZW1vdmUgaWNvblxuICBASW5wdXQoKSBjbGFzcyA9ICcnO1xuXG4gIEBPdXRwdXQoKSBvblJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY24gPSBjbjtcblxuICBnZXQgY29tcHV0ZWRDbGFzcygpIHtcbiAgICByZXR1cm4gY24oXG4gICAgICAvLyBCYXNlIHN0eWxlcyAtIFBpbGxzIGFyZSBhbHdheXMgcm91bmRlZC1mdWxsXG4gICAgICAnZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1tZCBib3JkZXIgcHgtMiBweS0wLjUgZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1jb2xvcnMgZ2FwLTEnLFxuXG4gICAgICAvLyBWYXJpYW50cyAoR29vZ2xlIERhcmsgTW9kZSB0aGVtZSlcbiAgICAgIHRoaXMudmFyaWFudCA9PT0gJ2RlZmF1bHQnICYmICdib3JkZXItdHJhbnNwYXJlbnQgYmctcHJpbWFyeSB0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCcsXG4gICAgICB0aGlzLnZhcmlhbnQgPT09ICdzZWNvbmRhcnknICYmICdib3JkZXItdHJhbnNwYXJlbnQgYmctc2Vjb25kYXJ5IHRleHQtc2Vjb25kYXJ5LWZvcmVncm91bmQnLFxuICAgICAgdGhpcy52YXJpYW50ID09PSAnb3V0bGluZScgJiYgJ3RleHQtZm9yZWdyb3VuZCBib3JkZXItYm9yZGVyIGJnLXRyYW5zcGFyZW50JyxcbiAgICAgIHRoaXMudmFyaWFudCA9PT0gJ2Rlc3RydWN0aXZlJyAmJiAnYm9yZGVyLXRyYW5zcGFyZW50IGJnLWRlc3RydWN0aXZlIHRleHQtZGVzdHJ1Y3RpdmUtZm9yZWdyb3VuZCcsXG5cbiAgICAgIC8vIFNpemluZ1xuICAgICAgdGhpcy5zaXplID09PSAneHMnICYmICdweC0xLjUgcHktMCB0ZXh0LVsxMHB4XScsXG4gICAgICB0aGlzLnNpemUgPT09ICdzbScgJiYgJ3B4LTIgcHktMCB0ZXh0LVsxMXB4XScsXG4gICAgICB0aGlzLnNpemUgPT09ICdkZWZhdWx0JyAmJiAndGV4dC14cycsXG5cbiAgICAgIHRoaXMuY2xhc3NcbiAgICApO1xuICB9XG59XG4iXX0=
|
|
@@ -16,4 +16,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
16
16
|
</li>
|
|
17
17
|
` }]
|
|
18
18
|
}] });
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RvbGxlL3NyYy9saWIvYnJlYWRjcnVtYi1pdGVtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFpQixNQUFNLGVBQWUsQ0FBQzs7QUFheEQsTUFBTSxPQUFPLHVCQUF1Qjt3R0FBdkIsdUJBQXVCOzRGQUF2Qix1QkFBdUIsaUZBUHhCOzs7O0dBSVQ7OzRGQUdVLHVCQUF1QjtrQkFYbkMsU0FBUzsrQkFDRSx1QkFBdUIsY0FDckIsSUFBSSxXQUNQLEVBQUUsWUFDRDs7OztHQUlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIGluamVjdCwgT25Jbml0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG9sbGUtYnJlYWRjcnVtYi1pdGVtJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW10sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGxpIGNsYXNzPVwiaW5saW5lLWZsZXggaXRlbXMtY2VudGVyIGdhcC0xLjVcIj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICA8L2xpPlxuICBgLFxuICBzdHlsZXM6IGBgXG59KVxuZXhwb3J0IGNsYXNzIEJyZWFkY3J1bWJJdGVtQ29tcG9uZW50IHtcblxufVxuIl19
|
|
@@ -12,7 +12,7 @@ const buttonVariants = cva("tolle-button-base inline-flex items-center justify-c
|
|
|
12
12
|
outline: "border border-input bg-transparent hover:bg-accent hover:text-accent-foreground",
|
|
13
13
|
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
14
14
|
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
15
|
-
link: "text-primary underline-offset-4 hover:underline",
|
|
15
|
+
link: "text-primary-foreground underline-offset-4 hover:underline",
|
|
16
16
|
},
|
|
17
17
|
size: {
|
|
18
18
|
default: "h-10 px-4 py-2",
|
|
@@ -103,4 +103,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
103
103
|
}], busy: [{
|
|
104
104
|
type: Input
|
|
105
105
|
}] } });
|
|
106
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL3RvbGxlL3NyYy9saWIvYnV0dG9uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLEdBQUcsRUFBcUIsTUFBTSwwQkFBMEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sWUFBWSxDQUFDOzs7QUFFaEMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUN4Qix5U0FBeVMsRUFDelM7SUFDRSxRQUFRLEVBQUU7UUFDUixPQUFPLEVBQUU7WUFDUCxPQUFPLEVBQUUsd0RBQXdEO1lBQ2pFLFdBQVcsRUFBRSxvRUFBb0U7WUFDakYsT0FBTyxFQUFFLGlGQUFpRjtZQUMxRixTQUFTLEVBQUUsOERBQThEO1lBQ3pFLEtBQUssRUFBRSw4Q0FBOEM7WUFDckQsSUFBSSxFQUFFLDREQUE0RDtTQUNuRTtRQUNELElBQUksRUFBRTtZQUNKLE9BQU8sRUFBRSxnQkFBZ0I7WUFDekIsRUFBRSxFQUFFLHVCQUF1QjtZQUMzQixFQUFFLEVBQUUscUJBQXFCO1lBQ3pCLEVBQUUsRUFBRSxzQkFBc0I7WUFDMUIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsU0FBUyxFQUFFLFNBQVM7WUFDcEIsSUFBSSxFQUFFLFdBQVc7WUFDakIsU0FBUyxFQUFFLFdBQVc7U0FDdkI7UUFDRCxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsK0RBQStELEVBQUU7S0FDaEY7SUFDRCxlQUFlLEVBQUU7UUFDZixPQUFPLEVBQUUsU0FBUztRQUNsQixJQUFJLEVBQUUsU0FBUztLQUNoQjtDQUNGLENBQ0YsQ0FBQztBQThCRixNQUFNLE9BQU8sZUFBZTtJQUNqQixLQUFLLEdBQVcsRUFBRSxDQUFDO0lBQ25CLE9BQU8sR0FBMkIsU0FBUyxDQUFDO0lBQzVDLElBQUksR0FBd0IsU0FBUyxDQUFDO0lBQ3RDLFFBQVEsR0FBWSxLQUFLLENBQUM7SUFDMUIsSUFBSSxHQUFZLEtBQUssQ0FBQztJQUUvQixJQUFJLGFBQWE7UUFDZixPQUFPLEVBQUUsQ0FDUCxjQUFjLENBQUM7WUFDYixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDckIsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1lBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJO1NBQ2hCLENBQUMsRUFDRixJQUFJLENBQUMsS0FBSyxDQUNYLENBQUM7SUFDSixDQUFDO3dHQWhCVSxlQUFlOzRGQUFmLGVBQWUsc1BBdEJoQjs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQsMkRBbEJTLFlBQVk7OzRGQXVCWCxlQUFlO2tCQTFCM0IsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztvQkFDdkIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7OztHQWlCVDtvQkFDRCxJQUFJLEVBQUU7d0JBQ0osT0FBTyxFQUFFLGdEQUFnRDtxQkFDMUQ7aUJBQ0Y7OEJBRVUsS0FBSztzQkFBYixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgY3ZhLCB0eXBlIFZhcmlhbnRQcm9wcyB9IGZyb20gJ2NsYXNzLXZhcmlhbmNlLWF1dGhvcml0eSc7XG5pbXBvcnQgeyBjbiB9IGZyb20gJy4vdXRpbHMvY24nO1xuXG5jb25zdCBidXR0b25WYXJpYW50cyA9IGN2YShcbiAgXCJ0b2xsZS1idXR0b24tYmFzZSBpbmxpbmUtZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgcm91bmRlZC1tZCB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRyYW5zaXRpb24tYWxsIGZvY3VzLXZpc2libGU6b3V0bGluZS1ub25lIGZvY3VzLXZpc2libGU6cmluZy0yIGZvY3VzLXZpc2libGU6cmluZy1yaW5nIGZvY3VzLXZpc2libGU6cmluZy1vZmZzZXQtMiBkaXNhYmxlZDpvcGFjaXR5LTUwIGRpc2FibGVkOnBvaW50ZXItZXZlbnRzLW5vbmUgcmluZy1vZmZzZXQtYmFja2dyb3VuZCBhY3RpdmU6c2NhbGUtWzAuOThdXCIsXG4gIHtcbiAgICB2YXJpYW50czoge1xuICAgICAgdmFyaWFudDoge1xuICAgICAgICBkZWZhdWx0OiBcImJnLXByaW1hcnkgdGV4dC1wcmltYXJ5LWZvcmVncm91bmQgaG92ZXI6YmctcHJpbWFyeS85MFwiLFxuICAgICAgICBkZXN0cnVjdGl2ZTogXCJiZy1kZXN0cnVjdGl2ZSB0ZXh0LWRlc3RydWN0aXZlLWZvcmVncm91bmQgaG92ZXI6YmctZGVzdHJ1Y3RpdmUvOTBcIixcbiAgICAgICAgb3V0bGluZTogXCJib3JkZXIgYm9yZGVyLWlucHV0IGJnLXRyYW5zcGFyZW50IGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kXCIsXG4gICAgICAgIHNlY29uZGFyeTogXCJiZy1zZWNvbmRhcnkgdGV4dC1zZWNvbmRhcnktZm9yZWdyb3VuZCBob3ZlcjpiZy1zZWNvbmRhcnkvODBcIixcbiAgICAgICAgZ2hvc3Q6IFwiaG92ZXI6YmctYWNjZW50IGhvdmVyOnRleHQtYWNjZW50LWZvcmVncm91bmRcIixcbiAgICAgICAgbGluazogXCJ0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCB1bmRlcmxpbmUtb2Zmc2V0LTQgaG92ZXI6dW5kZXJsaW5lXCIsXG4gICAgICB9LFxuICAgICAgc2l6ZToge1xuICAgICAgICBkZWZhdWx0OiBcImgtMTAgcHgtNCBweS0yXCIsXG4gICAgICAgIHhzOiBcImgtOCBweC0yIHB5LTEgdGV4dC14c1wiLFxuICAgICAgICBzbTogXCJoLTkgcm91bmRlZC1tZCBweC0zXCIsXG4gICAgICAgIGxnOiBcImgtMTEgcm91bmRlZC1tZCBweC04XCIsXG4gICAgICAgIFwiaWNvbi14c1wiOiBcImgtOCB3LThcIixcbiAgICAgICAgXCJpY29uLXNtXCI6IFwiaC05IHctOVwiLFxuICAgICAgICBpY29uOiBcImgtMTAgdy0xMFwiLFxuICAgICAgICBcImljb24tbGdcIjogXCJoLTExIHctMTFcIixcbiAgICAgIH0sXG4gICAgICBidXN5OiB7IHRydWU6IFwidG9sbGUtYnV0dG9uLS1idXN5IHJlbGF0aXZlICFjdXJzb3Itd2FpdCAhcG9pbnRlci1ldmVudHMtbm9uZVwiIH1cbiAgICB9LFxuICAgIGRlZmF1bHRWYXJpYW50czoge1xuICAgICAgdmFyaWFudDogXCJkZWZhdWx0XCIsXG4gICAgICBzaXplOiBcImRlZmF1bHRcIixcbiAgICB9LFxuICB9XG4pO1xuXG5leHBvcnQgdHlwZSBCdXR0b25Qcm9wcyA9IFZhcmlhbnRQcm9wczx0eXBlb2YgYnV0dG9uVmFyaWFudHM+O1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b2xsZS1idXR0b24nLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YnV0dG9uXG4gICAgICBbY2xhc3NdPVwiY29tcHV0ZWRDbGFzc1wiXG4gICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgYnVzeVwiXG4gICAgICBbYXR0ci5hcmlhLWJ1c3ldPVwiYnVzeVwiXG4gICAgPlxuICAgICAgPGRpdiAqbmdJZj1cImJ1c3lcIiBjbGFzcz1cImFic29sdXRlIGluc2V0LTAgZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXJcIj5cbiAgICAgICAgPHN2ZyBjbGFzcz1cImFuaW1hdGUtc3BpbiBoLTUgdy01IHRleHQtY3VycmVudFwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiBmaWxsPVwibm9uZVwiIHZpZXdCb3g9XCIwIDAgMjQgMjRcIj5cbiAgICAgICAgICA8Y2lyY2xlIGNsYXNzPVwib3BhY2l0eS0yNVwiIGN4PVwiMTJcIiBjeT1cIjEyXCIgcj1cIjEwXCIgc3Ryb2tlPVwiY3VycmVudENvbG9yXCIgc3Ryb2tlLXdpZHRoPVwiNFwiPjwvY2lyY2xlPlxuICAgICAgICAgIDxwYXRoIGNsYXNzPVwib3BhY2l0eS03NVwiIGZpbGw9XCJjdXJyZW50Q29sb3JcIiBkPVwiTTQgMTJhOCA4IDAgMDE4LThWMEM1LjM3MyAwIDAgNS4zNzMgMCAxMmg0em0yIDUuMjkxQTcuOTYyIDcuOTYyIDAgMDE0IDEySDBjMCAzLjA0MiAxLjEzNSA1LjgyNCAzIDcuOTM4bDMtMi42NDd6XCI+PC9wYXRoPlxuICAgICAgICA8L3N2Zz5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8c3BhbiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGp1c3RpZnktY2VudGVyIHctZnVsbCBoLWZ1bGwgcG9pbnRlci1ldmVudHMtbm9uZVwiIFtjbGFzcy5pbnZpc2libGVdPVwiYnVzeVwiPlxuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8L3NwYW4+XG4gICAgPC9idXR0b24+XG4gIGAsXG4gIGhvc3Q6IHtcbiAgICAnY2xhc3MnOiAndG9sbGUtYnV0dG9uLXdyYXBwZXIgaW5saW5lLWJsb2NrIGFsaWduLW1pZGRsZSdcbiAgfVxufSlcbmV4cG9ydCBjbGFzcyBCdXR0b25Db21wb25lbnQge1xuICBASW5wdXQoKSBjbGFzczogc3RyaW5nID0gJyc7XG4gIEBJbnB1dCgpIHZhcmlhbnQ6IEJ1dHRvblByb3BzWyd2YXJpYW50J10gPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIHNpemU6IEJ1dHRvblByb3BzWydzaXplJ10gPSAnZGVmYXVsdCc7XG4gIEBJbnB1dCgpIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIGJ1c3k6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBnZXQgY29tcHV0ZWRDbGFzcygpIHtcbiAgICByZXR1cm4gY24oXG4gICAgICBidXR0b25WYXJpYW50cyh7XG4gICAgICAgIHZhcmlhbnQ6IHRoaXMudmFyaWFudCxcbiAgICAgICAgc2l6ZTogdGhpcy5zaXplLFxuICAgICAgICBidXN5OiB0aGlzLmJ1c3lcbiAgICAgIH0pLFxuICAgICAgdGhpcy5jbGFzc1xuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -86,7 +86,7 @@ export class SegmentedComponent {
|
|
|
86
86
|
role="tablist"
|
|
87
87
|
>
|
|
88
88
|
<div
|
|
89
|
-
class="absolute top-1 bottom-1 bg-
|
|
89
|
+
class="absolute top-1 bottom-1 bg-primary shadow-sm rounded-md transition-all duration-300 ease-[cubic-bezier(0.2,0.0,0.2,1)]"
|
|
90
90
|
[style.left.px]="gliderLeft"
|
|
91
91
|
[style.width.px]="gliderWidth"
|
|
92
92
|
[class.opacity-0]="!hasValue"
|
|
@@ -104,7 +104,7 @@ export class SegmentedComponent {
|
|
|
104
104
|
'relative z-10 flex-1 px-3 py-1.5 text-sm font-medium transition-colors duration-200 rounded-md text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
|
|
105
105
|
'flex items-center justify-center gap-2',
|
|
106
106
|
value === item.value
|
|
107
|
-
? 'text-foreground'
|
|
107
|
+
? 'text-primary-foreground'
|
|
108
108
|
: 'text-muted-foreground hover:text-foreground/70',
|
|
109
109
|
item.disabled && 'opacity-50 cursor-not-allowed',
|
|
110
110
|
item.class
|
|
@@ -141,7 +141,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
141
141
|
role="tablist"
|
|
142
142
|
>
|
|
143
143
|
<div
|
|
144
|
-
class="absolute top-1 bottom-1 bg-
|
|
144
|
+
class="absolute top-1 bottom-1 bg-primary shadow-sm rounded-md transition-all duration-300 ease-[cubic-bezier(0.2,0.0,0.2,1)]"
|
|
145
145
|
[style.left.px]="gliderLeft"
|
|
146
146
|
[style.width.px]="gliderWidth"
|
|
147
147
|
[class.opacity-0]="!hasValue"
|
|
@@ -159,7 +159,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
159
159
|
'relative z-10 flex-1 px-3 py-1.5 text-sm font-medium transition-colors duration-200 rounded-md text-center focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2',
|
|
160
160
|
'flex items-center justify-center gap-2',
|
|
161
161
|
value === item.value
|
|
162
|
-
? 'text-foreground'
|
|
162
|
+
? 'text-primary-foreground'
|
|
163
163
|
: 'text-muted-foreground hover:text-foreground/70',
|
|
164
164
|
item.disabled && 'opacity-50 cursor-not-allowed',
|
|
165
165
|
item.class
|
|
@@ -189,4 +189,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
189
189
|
type: ViewChildren,
|
|
190
190
|
args: ['itemEls']
|
|
191
191
|
}] } });
|
|
192
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90b2xsZS9zcmMvbGliL3NlZ21lbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFVBQVUsRUFFVixZQUFZLEVBT2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7O0FBMEVoQyxNQUFNLE9BQU8sa0JBQWtCO0lBZ0JUO0lBZlgsS0FBSyxHQUFrQixFQUFFLENBQUM7SUFDMUIsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNYLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsWUFBWSxDQUFvQixDQUFDLHVCQUF1QjtJQUVqRSxLQUFLLEdBQVEsSUFBSSxDQUFDO0lBQ2xCLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDZixXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFUSxZQUFZLENBQXNDO0lBRTNFLFFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFDekIsU0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUUxQixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUFHLENBQUM7SUFFOUMsZUFBZTtRQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLDZEQUE2RDtRQUM3RCxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0RCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7UUFDeEMsQ0FBQztJQUNILENBQUM7SUFFRCxNQUFNLENBQUMsR0FBUTtRQUNiLElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxPQUFPO1FBQzFCLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNuRCxJQUFJLElBQUksRUFBRSxRQUFRO1lBQUUsT0FBTztRQUUzQixJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsQ0FBQztRQUNqQixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTTtZQUFFLE9BQU87UUFFckQsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVoRSxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDO1lBQ3JCLE9BQU87UUFDVCxDQUFDO1FBRUQsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsYUFBYSxDQUFDO1FBRWxFLElBQUksYUFBYSxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7WUFDckIsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQUMsVUFBVSxDQUFDO1lBQzNDLElBQUksQ0FBQyxXQUFXLEdBQUcsYUFBYSxDQUFDLFdBQVcsQ0FBQztZQUM3QyxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQscUJBQXFCO0lBQ3JCLFVBQVUsQ0FBQyxHQUFRO1FBQ2pCLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDO1FBQ2pCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsRUFBTyxJQUFVLElBQUksQ0FBQyxRQUFRLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUN2RCxpQkFBaUIsQ0FBQyxFQUFPLElBQVUsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBRXpELGdCQUFnQixDQUFDLFVBQW1CO1FBQ2xDLElBQUksQ0FBQyxRQUFRLEdBQUcsVUFBVSxDQUFDO1FBQzNCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVTLEVBQUUsR0FBRyxFQUFFLENBQUM7d0dBM0VQLGtCQUFrQjs0RkFBbEIsa0JBQWtCLDRKQTNEbEI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO2dCQUNqRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsMklBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZDVCwrRkFyRFMsWUFBWSxzYUFBRSxXQUFXOzs0RkE0RHhCLGtCQUFrQjtrQkEvRDlCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsYUFDekI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZDVDtzRkFRUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFPbUIsWUFBWTtzQkFBcEMsWUFBWTt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgZm9yd2FyZFJlZixcbiAgRWxlbWVudFJlZixcbiAgVmlld0NoaWxkcmVuLFxuICBRdWVyeUxpc3QsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjbiB9IGZyb20gJy4vdXRpbHMvY24nO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50SXRlbSA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IGFueTtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBpY29uPzogc3RyaW5nOyAgIC8vIEFkZGVkOiBPcHRpb25hbCBpY29uIGNsYXNzIChlLmcuLCAncmktaG9tZS1saW5lJylcbiAgY2xhc3M/OiBzdHJpbmc7ICAvLyBBZGRlZDogQ3VzdG9tIGNsYXNzIGZvciBzcGVjaWZpYyBpdGVtIHdyYXBwZXJcbiAgZGF0YT86IGFueTsgICAgICAvLyBBZGRlZDogRXh0cmEgZGF0YSBwYXlsb2FkIGZvciBjdXN0b20gdGVtcGxhdGVzXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvbGxlLXNlZ21lbnQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VnbWVudGVkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgICNjb250YWluZXJcbiAgICAgIFtjbGFzc109XCJjbihcbiAgICAgICAgJ3JlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIHAtMSBiZy1tdXRlZCByb3VuZGVkLWxnIHNlbGVjdC1ub25lIHctZnVsbCBnYXAtMScsXG4gICAgICAgIGNsYXNzXG4gICAgICApXCJcbiAgICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgdG9wLTEgYm90dG9tLTEgYmctYmFja2dyb3VuZCBzaGFkb3ctc20gcm91bmRlZC1tZCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgZWFzZS1bY3ViaWMtYmV6aWVyKDAuMiwwLjAsMC4yLDEpXVwiXG4gICAgICAgIFtzdHlsZS5sZWZ0LnB4XT1cImdsaWRlckxlZnRcIlxuICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiZ2xpZGVyV2lkdGhcIlxuICAgICAgICBbY2xhc3Mub3BhY2l0eS0wXT1cIiFoYXNWYWx1ZVwiXG4gICAgICA+PC9kaXY+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIlxuICAgICAgICAjaXRlbUVsc1xuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkIHx8IGRpc2FibGVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJ2YWx1ZSA9PT0gaXRlbS52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3QoaXRlbS52YWx1ZSlcIlxuICAgICAgICBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgJ3JlbGF0aXZlIHotMTAgZmxleC0xIHB4LTMgcHktMS41IHRleHQtc20gZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1jb2xvcnMgZHVyYXRpb24tMjAwIHJvdW5kZWQtbWQgdGV4dC1jZW50ZXIgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLW9mZnNldC0yJyxcbiAgICAgICAgICAnZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTInLFxuICAgICAgICAgIHZhbHVlID09PSBpdGVtLnZhbHVlXG4gICAgICAgICAgICA/ICd0ZXh0LWZvcmVncm91bmQnXG4gICAgICAgICAgICA6ICd0ZXh0LW11dGVkLWZvcmVncm91bmQgaG92ZXI6dGV4dC1mb3JlZ3JvdW5kLzcwJyxcbiAgICAgICAgICBpdGVtLmRpc2FibGVkICYmICdvcGFjaXR5LTUwIGN1cnNvci1ub3QtYWxsb3dlZCcsXG4gICAgICAgICAgaXRlbS5jbGFzc1xuICAgICAgICApXCJcbiAgICAgID5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW1UZW1wbGF0ZTsgZWxzZSBkZWZhdWx0Q29udGVudFwiPlxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGU7IGNvbnRleHQ6IHsgJGltcGxpY2l0OiBpdGVtLCBzZWxlY3RlZDogdmFsdWUgPT09IGl0ZW0udmFsdWUgfVwiPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8bmctdGVtcGxhdGUgI2RlZmF1bHRDb250ZW50PlxuICAgICAgICAgIDxpICpuZ0lmPVwiaXRlbS5pY29uXCIgW2NsYXNzXT1cIml0ZW0uaWNvblwiPjwvaT5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInRydW5jYXRlXCI+e3sgaXRlbS5sYWJlbCB9fTwvc3Bhbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3Qge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICBgXVxufSlcbmV4cG9ydCBjbGFzcyBTZWdtZW50ZWRDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgaXRlbXM6IFNlZ21lbnRJdGVtW10gPSBbXTtcbiAgQElucHV0KCkgY2xhc3MgPSAnJztcbiAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaXRlbVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjsgLy8gQWxsb3cgY3VzdG9tIGNvbnRlbnRcblxuICB2YWx1ZTogYW55ID0gbnVsbDtcbiAgZ2xpZGVyTGVmdCA9IDA7XG4gIGdsaWRlcldpZHRoID0gMDtcbiAgaGFzVmFsdWUgPSBmYWxzZTtcblxuICBAVmlld0NoaWxkcmVuKCdpdGVtRWxzJykgaXRlbUVsZW1lbnRzITogUXVlcnlMaXN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PjtcblxuICBvbkNoYW5nZTogYW55ID0gKCkgPT4ge307XG4gIG9uVG91Y2hlZDogYW55ID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMudXBkYXRlR2xpZGVyKCkpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIC8vIFJlY2FsY3VsYXRlIGlmIGl0ZW1zIGNoYW5nZSBvciBpZiB2YWx1ZSBjaGFuZ2VzIGV4dGVybmFsbHlcbiAgICBpZiAoY2hhbmdlc1snaXRlbXMnXSAmJiAhY2hhbmdlc1snaXRlbXMnXS5maXJzdENoYW5nZSkge1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnVwZGF0ZUdsaWRlcigpKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3QodmFsOiBhbnkpIHtcbiAgICBpZiAodGhpcy5kaXNhYmxlZCkgcmV0dXJuO1xuICAgIGNvbnN0IGl0ZW0gPSB0aGlzLml0ZW1zLmZpbmQoaSA9PiBpLnZhbHVlID09PSB2YWwpO1xuICAgIGlmIChpdGVtPy5kaXNhYmxlZCkgcmV0dXJuO1xuXG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICB0aGlzLm9uQ2hhbmdlKHZhbCk7XG4gICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICB0aGlzLnVwZGF0ZUdsaWRlcigpO1xuICB9XG5cbiAgdXBkYXRlR2xpZGVyKCkge1xuICAgIGlmICghdGhpcy5pdGVtRWxlbWVudHMgfHwgIXRoaXMuaXRlbXMubGVuZ3RoKSByZXR1cm47XG5cbiAgICBjb25zdCBpbmRleCA9IHRoaXMuaXRlbXMuZmluZEluZGV4KGkgPT4gaS52YWx1ZSA9PT0gdGhpcy52YWx1ZSk7XG5cbiAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICB0aGlzLmhhc1ZhbHVlID0gZmFsc2U7XG4gICAgICB0aGlzLmdsaWRlcldpZHRoID0gMDtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb25zdCBhY3RpdmVFbGVtZW50ID0gdGhpcy5pdGVtRWxlbWVudHMuZ2V0KGluZGV4KT8ubmF0aXZlRWxlbWVudDtcblxuICAgIGlmIChhY3RpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmhhc1ZhbHVlID0gdHJ1ZTtcbiAgICAgIHRoaXMuZ2xpZGVyTGVmdCA9IGFjdGl2ZUVsZW1lbnQub2Zmc2V0TGVmdDtcbiAgICAgIHRoaXMuZ2xpZGVyV2lkdGggPSBhY3RpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENWQSBJbXBsZW1lbnRhdGlvblxuICB3cml0ZVZhbHVlKHZhbDogYW55KTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZSA9IHZhbDtcbiAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMudXBkYXRlR2xpZGVyKCkpO1xuICB9XG5cbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogYW55KTogdm9pZCB7IHRoaXMub25DaGFuZ2UgPSBmbjsgfVxuICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7IHRoaXMub25Ub3VjaGVkID0gZm47IH1cblxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBjbiA9IGNuO1xufVxuIl19
|
|
192
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90b2xsZS9zcmMvbGliL3NlZ21lbnQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFVBQVUsRUFFVixZQUFZLEVBT2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEYsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLFlBQVksQ0FBQzs7O0FBMEVoQyxNQUFNLE9BQU8sa0JBQWtCO0lBZ0JUO0lBZlgsS0FBSyxHQUFrQixFQUFFLENBQUM7SUFDMUIsS0FBSyxHQUFHLEVBQUUsQ0FBQztJQUNYLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsWUFBWSxDQUFvQixDQUFDLHVCQUF1QjtJQUVqRSxLQUFLLEdBQVEsSUFBSSxDQUFDO0lBQ2xCLFVBQVUsR0FBRyxDQUFDLENBQUM7SUFDZixXQUFXLEdBQUcsQ0FBQyxDQUFDO0lBQ2hCLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFFUSxZQUFZLENBQXNDO0lBRTNFLFFBQVEsR0FBUSxHQUFHLEVBQUUsR0FBRSxDQUFDLENBQUM7SUFDekIsU0FBUyxHQUFRLEdBQUcsRUFBRSxHQUFFLENBQUMsQ0FBQztJQUUxQixZQUFvQixHQUFzQjtRQUF0QixRQUFHLEdBQUgsR0FBRyxDQUFtQjtJQUFHLENBQUM7SUFFOUMsZUFBZTtRQUNiLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLDZEQUE2RDtRQUM3RCxJQUFJLE9BQU8sQ0FBQyxPQUFPLENB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V0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsYUFDekI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsbUJBQW1CLENBQUM7NEJBQ2pELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLFlBQ1M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTZDVDtzRkFRUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFPbUIsWUFBWTtzQkFBcEMsWUFBWTt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgZm9yd2FyZFJlZixcbiAgRWxlbWVudFJlZixcbiAgVmlld0NoaWxkcmVuLFxuICBRdWVyeUxpc3QsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxuICBPbkNoYW5nZXMsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFRlbXBsYXRlUmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiwgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjbiB9IGZyb20gJy4vdXRpbHMvY24nO1xuXG5leHBvcnQgdHlwZSBTZWdtZW50SXRlbSA9IHtcbiAgbGFiZWw6IHN0cmluZztcbiAgdmFsdWU6IGFueTtcbiAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICBpY29uPzogc3RyaW5nOyAgIC8vIEFkZGVkOiBPcHRpb25hbCBpY29uIGNsYXNzIChlLmcuLCAncmktaG9tZS1saW5lJylcbiAgY2xhc3M/OiBzdHJpbmc7ICAvLyBBZGRlZDogQ3VzdG9tIGNsYXNzIGZvciBzcGVjaWZpYyBpdGVtIHdyYXBwZXJcbiAgZGF0YT86IGFueTsgICAgICAvLyBBZGRlZDogRXh0cmEgZGF0YSBwYXlsb2FkIGZvciBjdXN0b20gdGVtcGxhdGVzXG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvbGxlLXNlZ21lbnQnLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZV0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU2VnbWVudGVkQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlXG4gICAgfVxuICBdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXZcbiAgICAgICNjb250YWluZXJcbiAgICAgIFtjbGFzc109XCJjbihcbiAgICAgICAgJ3JlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIHAtMSBiZy1tdXRlZCByb3VuZGVkLWxnIHNlbGVjdC1ub25lIHctZnVsbCBnYXAtMScsXG4gICAgICAgIGNsYXNzXG4gICAgICApXCJcbiAgICAgIHJvbGU9XCJ0YWJsaXN0XCJcbiAgICA+XG4gICAgICA8ZGl2XG4gICAgICAgIGNsYXNzPVwiYWJzb2x1dGUgdG9wLTEgYm90dG9tLTEgYmctcHJpbWFyeSBzaGFkb3ctc20gcm91bmRlZC1tZCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAgZWFzZS1bY3ViaWMtYmV6aWVyKDAuMiwwLjAsMC4yLDEpXVwiXG4gICAgICAgIFtzdHlsZS5sZWZ0LnB4XT1cImdsaWRlckxlZnRcIlxuICAgICAgICBbc3R5bGUud2lkdGgucHhdPVwiZ2xpZGVyV2lkdGhcIlxuICAgICAgICBbY2xhc3Mub3BhY2l0eS0wXT1cIiFoYXNWYWx1ZVwiXG4gICAgICA+PC9kaXY+XG5cbiAgICAgIDxidXR0b25cbiAgICAgICAgKm5nRm9yPVwibGV0IGl0ZW0gb2YgaXRlbXNcIlxuICAgICAgICAjaXRlbUVsc1xuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgcm9sZT1cInRhYlwiXG4gICAgICAgIFtkaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkIHx8IGRpc2FibGVkXCJcbiAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJ2YWx1ZSA9PT0gaXRlbS52YWx1ZVwiXG4gICAgICAgIChjbGljayk9XCJzZWxlY3QoaXRlbS52YWx1ZSlcIlxuICAgICAgICBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgJ3JlbGF0aXZlIHotMTAgZmxleC0xIHB4LTMgcHktMS41IHRleHQtc20gZm9udC1tZWRpdW0gdHJhbnNpdGlvbi1jb2xvcnMgZHVyYXRpb24tMjAwIHJvdW5kZWQtbWQgdGV4dC1jZW50ZXIgZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZm9jdXMtdmlzaWJsZTpyaW5nLW9mZnNldC0yJyxcbiAgICAgICAgICAnZmxleCBpdGVtcy1jZW50ZXIganVzdGlmeS1jZW50ZXIgZ2FwLTInLFxuICAgICAgICAgIHZhbHVlID09PSBpdGVtLnZhbHVlXG4gICAgICAgICAgICA/ICd0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCdcbiAgICAgICAgICAgIDogJ3RleHQtbXV0ZWQtZm9yZWdyb3VuZCBob3Zlcjp0ZXh0LWZvcmVncm91bmQvNzAnLFxuICAgICAgICAgIGl0ZW0uZGlzYWJsZWQgJiYgJ29wYWNpdHktNTAgY3Vyc29yLW5vdC1hbGxvd2VkJyxcbiAgICAgICAgICBpdGVtLmNsYXNzXG4gICAgICAgIClcIlxuICAgICAgPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbVRlbXBsYXRlOyBlbHNlIGRlZmF1bHRDb250ZW50XCI+XG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyAkaW1wbGljaXQ6IGl0ZW0sIHNlbGVjdGVkOiB2YWx1ZSA9PT0gaXRlbS52YWx1ZSB9XCI+XG4gICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjZGVmYXVsdENvbnRlbnQ+XG4gICAgICAgICAgPGkgKm5nSWY9XCJpdGVtLmljb25cIiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9pPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj57eyBpdGVtLmxhYmVsIH19PC9zcGFuPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICA6aG9zdCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIGBdXG59KVxuZXhwb3J0IGNsYXNzIFNlZ21lbnRlZENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBBZnRlclZpZXdJbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBpdGVtczogU2VnbWVudEl0ZW1bXSA9IFtdO1xuICBASW5wdXQoKSBjbGFzcyA9ICcnO1xuICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICBASW5wdXQoKSBpdGVtVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+OyAvLyBBbGxvdyBjdXN0b20gY29udGVudFxuXG4gIHZhbHVlOiBhbnkgPSBudWxsO1xuICBnbGlkZXJMZWZ0ID0gMDtcbiAgZ2xpZGVyV2lkdGggPSAwO1xuICBoYXNWYWx1ZSA9IGZhbHNlO1xuXG4gIEBWaWV3Q2hpbGRyZW4oJ2l0ZW1FbHMnKSBpdGVtRWxlbWVudHMhOiBRdWVyeUxpc3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+O1xuXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKSA9PiB7fTtcbiAgb25Ub3VjaGVkOiBhbnkgPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy51cGRhdGVHbGlkZXIoKSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgLy8gUmVjYWxjdWxhdGUgaWYgaXRlbXMgY2hhbmdlIG9yIGlmIHZhbHVlIGNoYW5nZXMgZXh0ZXJuYWxseVxuICAgIGlmIChjaGFuZ2VzWydpdGVtcyddICYmICFjaGFuZ2VzWydpdGVtcyddLmZpcnN0Q2hhbmdlKSB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMudXBkYXRlR2xpZGVyKCkpO1xuICAgIH1cbiAgfVxuXG4gIHNlbGVjdCh2YWw6IGFueSkge1xuICAgIGlmICh0aGlzLmRpc2FibGVkKSByZXR1cm47XG4gICAgY29uc3QgaXRlbSA9IHRoaXMuaXRlbXMuZmluZChpID0+IGkudmFsdWUgPT09IHZhbCk7XG4gICAgaWYgKGl0ZW0/LmRpc2FibGVkKSByZXR1cm47XG5cbiAgICB0aGlzLnZhbHVlID0gdmFsO1xuICAgIHRoaXMub25DaGFuZ2UodmFsKTtcbiAgICB0aGlzLm9uVG91Y2hlZCgpO1xuICAgIHRoaXMudXBkYXRlR2xpZGVyKCk7XG4gIH1cblxuICB1cGRhdGVHbGlkZXIoKSB7XG4gICAgaWYgKCF0aGlzLml0ZW1FbGVtZW50cyB8fCAhdGhpcy5pdGVtcy5sZW5ndGgpIHJldHVybjtcblxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pdGVtcy5maW5kSW5kZXgoaSA9PiBpLnZhbHVlID09PSB0aGlzLnZhbHVlKTtcblxuICAgIGlmIChpbmRleCA9PT0gLTEpIHtcbiAgICAgIHRoaXMuaGFzVmFsdWUgPSBmYWxzZTtcbiAgICAgIHRoaXMuZ2xpZGVyV2lkdGggPSAwO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSB0aGlzLml0ZW1FbGVtZW50cy5nZXQoaW5kZXgpPy5uYXRpdmVFbGVtZW50O1xuXG4gICAgaWYgKGFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgIHRoaXMuaGFzVmFsdWUgPSB0cnVlO1xuICAgICAgdGhpcy5nbGlkZXJMZWZ0ID0gYWN0aXZlRWxlbWVudC5vZmZzZXRMZWZ0O1xuICAgICAgdGhpcy5nbGlkZXJXaWR0aCA9IGFjdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gQ1ZBIEltcGxlbWVudGF0aW9uXG4gIHdyaXRlVmFsdWUodmFsOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnZhbHVlID0gdmFsO1xuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy51cGRhdGVHbGlkZXIoKSk7XG4gIH1cblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHsgdGhpcy5vbkNoYW5nZSA9IGZuOyB9XG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHsgdGhpcy5vblRvdWNoZWQgPSBmbjsgfVxuXG4gIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgIHRoaXMuZGlzYWJsZWQgPSBpc0Rpc2FibGVkO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNuID0gY247XG59XG4iXX0=
|
|
@@ -8,9 +8,28 @@ export class SidebarComponent {
|
|
|
8
8
|
items = [];
|
|
9
9
|
collapsed = false;
|
|
10
10
|
class = '';
|
|
11
|
+
/**
|
|
12
|
+
* Styling variant for active items.
|
|
13
|
+
* - default: Solid primary background, light text (Matches Badge Default)
|
|
14
|
+
* - secondary: Solid secondary background
|
|
15
|
+
* - ghost: Transparent background, accent text (Shadcn standard)
|
|
16
|
+
* - outline: Bordered
|
|
17
|
+
*/
|
|
18
|
+
variant = 'default';
|
|
11
19
|
expandedParents = new Set();
|
|
12
20
|
expandedChildren = new Set();
|
|
13
21
|
cn = cn;
|
|
22
|
+
get activeClasses() {
|
|
23
|
+
return cn('transition-colors',
|
|
24
|
+
// Default: Solid Primary (Badge-like) with lighter opacity (80% instead of 90%)
|
|
25
|
+
this.variant === 'default' && 'bg-primary/80 text-primary-foreground hover:bg-primary hover:text-primary-foreground',
|
|
26
|
+
// Secondary: Solid Secondary
|
|
27
|
+
this.variant === 'secondary' && 'bg-secondary text-secondary-foreground hover:bg-secondary/80',
|
|
28
|
+
// Ghost: Subtle background (Sidebar standard)
|
|
29
|
+
this.variant === 'ghost' && 'bg-accent text-accent-foreground',
|
|
30
|
+
// Outline: Bordered
|
|
31
|
+
this.variant === 'outline' && 'border border-border bg-background text-foreground hover:bg-accent hover:text-accent-foreground');
|
|
32
|
+
}
|
|
14
33
|
ngOnChanges(changes) {
|
|
15
34
|
if (changes['collapsed'] && this.collapsed) {
|
|
16
35
|
this.collapseAll();
|
|
@@ -43,7 +62,7 @@ export class SidebarComponent {
|
|
|
43
62
|
});
|
|
44
63
|
});
|
|
45
64
|
}
|
|
46
|
-
// --- ID GENERATORS
|
|
65
|
+
// --- ID GENERATORS ---
|
|
47
66
|
getGroupId(group, index) {
|
|
48
67
|
return group.id || group.title || `g-${index}`;
|
|
49
68
|
}
|
|
@@ -62,7 +81,6 @@ export class SidebarComponent {
|
|
|
62
81
|
if (this.collapsed)
|
|
63
82
|
return;
|
|
64
83
|
const id = this.getParentId(group, item, gIndex, iIndex);
|
|
65
|
-
// Create new Set reference to ensure Change Detection triggers
|
|
66
84
|
const newSet = new Set(this.expandedParents);
|
|
67
85
|
if (newSet.has(id)) {
|
|
68
86
|
newSet.delete(id);
|
|
@@ -74,7 +92,6 @@ export class SidebarComponent {
|
|
|
74
92
|
}
|
|
75
93
|
toggleChild(group, parent, subItem, gIndex, iIndex, sIndex) {
|
|
76
94
|
const id = this.getChildId(group, parent, subItem, gIndex, iIndex, sIndex);
|
|
77
|
-
// Create new Set reference
|
|
78
95
|
const newSet = new Set(this.expandedChildren);
|
|
79
96
|
if (newSet.has(id)) {
|
|
80
97
|
newSet.delete(id);
|
|
@@ -96,13 +113,13 @@ export class SidebarComponent {
|
|
|
96
113
|
return this.expandedChildren.has(this.getChildId(group, parent, subItem, gIndex, iIndex, sIndex));
|
|
97
114
|
}
|
|
98
115
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
99
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SidebarComponent, isStandalone: true, selector: "tolle-sidebar", inputs: { items: "items", collapsed: "collapsed", class: "class" }, usesOnChanges: true, ngImport: i0, template: `
|
|
116
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: SidebarComponent, isStandalone: true, selector: "tolle-sidebar", inputs: { items: "items", collapsed: "collapsed", class: "class", variant: "variant" }, usesOnChanges: true, ngImport: i0, template: `
|
|
100
117
|
<aside [class]="cn(
|
|
101
|
-
'flex flex-col h-full
|
|
118
|
+
'flex flex-col h-full bg-background transition-[width] duration-300 ease-in-out shrink-0 overflow-hidden',
|
|
102
119
|
collapsed ? 'w-16' : 'w-64',
|
|
103
120
|
class
|
|
104
121
|
)">
|
|
105
|
-
<div class="flex h-14 shrink-0 items-center
|
|
122
|
+
<div class="flex h-14 shrink-0 items-center px-3 overflow-hidden whitespace-nowrap">
|
|
106
123
|
<ng-content select="[header]"></ng-content>
|
|
107
124
|
</div>
|
|
108
125
|
|
|
@@ -122,6 +139,7 @@ export class SidebarComponent {
|
|
|
122
139
|
@for (item of group.items; track item.id || item.title || $index; let i = $index) {
|
|
123
140
|
|
|
124
141
|
@if (item.items && item.items.length) {
|
|
142
|
+
<!-- Parent Item (Group) -->
|
|
125
143
|
<div class="relative">
|
|
126
144
|
<button
|
|
127
145
|
type="button"
|
|
@@ -156,6 +174,7 @@ export class SidebarComponent {
|
|
|
156
174
|
}
|
|
157
175
|
</button>
|
|
158
176
|
|
|
177
|
+
<!-- Submenu Grid Transition -->
|
|
159
178
|
<div [class]="cn(
|
|
160
179
|
'grid transition-[grid-template-rows] duration-300 ease-in-out',
|
|
161
180
|
isParentExpanded(group, item, gIndex, i) && !collapsed ? 'grid-rows-[1fr] opacity-100' : 'grid-rows-[0fr] opacity-0'
|
|
@@ -164,8 +183,8 @@ export class SidebarComponent {
|
|
|
164
183
|
<div class="flex flex-col gap-1 mt-1 ml-4 border-l border-border/50 pl-2">
|
|
165
184
|
|
|
166
185
|
@for (subItem of item.items; track subItem.id || subItem.title || $index; let j = $index) {
|
|
167
|
-
|
|
168
186
|
@if (subItem.items && subItem.items.length) {
|
|
187
|
+
<!-- Grandchild Item Group (Recursive-ish logic for depth 2) -->
|
|
169
188
|
<div class="relative">
|
|
170
189
|
<button
|
|
171
190
|
type="button"
|
|
@@ -193,7 +212,7 @@ export class SidebarComponent {
|
|
|
193
212
|
@for (grandChild of subItem.items; track grandChild.title) {
|
|
194
213
|
<a
|
|
195
214
|
[routerLink]="grandChild.url"
|
|
196
|
-
routerLinkActive="
|
|
215
|
+
[routerLinkActive]="activeClasses"
|
|
197
216
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
198
217
|
class="flex items-center gap-2 hover:no-underline rounded-md px-3 py-1.5 text-sm transition-colors hover:bg-accent hover:text-accent-foreground text-muted-foreground whitespace-nowrap"
|
|
199
218
|
>
|
|
@@ -207,9 +226,10 @@ export class SidebarComponent {
|
|
|
207
226
|
</div>
|
|
208
227
|
}
|
|
209
228
|
@else {
|
|
229
|
+
<!-- Standard Sub Item -->
|
|
210
230
|
<a
|
|
211
231
|
[routerLink]="subItem.url"
|
|
212
|
-
routerLinkActive="
|
|
232
|
+
[routerLinkActive]="activeClasses"
|
|
213
233
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
214
234
|
class="flex items-center gap-2 hover:no-underline rounded-md px-3 py-1.5 text-sm transition-colors hover:bg-accent hover:text-accent-foreground text-muted-foreground whitespace-nowrap"
|
|
215
235
|
>
|
|
@@ -224,9 +244,10 @@ export class SidebarComponent {
|
|
|
224
244
|
</div>
|
|
225
245
|
}
|
|
226
246
|
@else {
|
|
247
|
+
<!-- Standard Top-Level Item -->
|
|
227
248
|
<a
|
|
228
249
|
[routerLink]="item.url"
|
|
229
|
-
routerLinkActive="
|
|
250
|
+
[routerLinkActive]="activeClasses"
|
|
230
251
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
231
252
|
[class]="cn(
|
|
232
253
|
'group relative hover:no-underline flex items-center rounded-md px-3 py-2 text-sm font-medium transition-colors',
|
|
@@ -253,21 +274,21 @@ export class SidebarComponent {
|
|
|
253
274
|
}
|
|
254
275
|
</div>
|
|
255
276
|
|
|
256
|
-
<div class="
|
|
277
|
+
<div class="shrink-0 p-3 overflow-hidden whitespace-nowrap">
|
|
257
278
|
<ng-content select="[footer]"></ng-content>
|
|
258
279
|
</div>
|
|
259
280
|
</aside>
|
|
260
|
-
`, isInline: true, styles: [":host{display:block;height:100%}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:20px}button:disabled{cursor:not-allowed;opacity:.6}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}
|
|
281
|
+
`, isInline: true, styles: [":host{display:block;height:100%}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:20px}button:disabled{cursor:not-allowed;opacity:.6}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: RouterModule }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] });
|
|
261
282
|
}
|
|
262
283
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SidebarComponent, decorators: [{
|
|
263
284
|
type: Component,
|
|
264
285
|
args: [{ selector: 'tolle-sidebar', standalone: true, imports: [CommonModule, RouterModule], template: `
|
|
265
286
|
<aside [class]="cn(
|
|
266
|
-
'flex flex-col h-full
|
|
287
|
+
'flex flex-col h-full bg-background transition-[width] duration-300 ease-in-out shrink-0 overflow-hidden',
|
|
267
288
|
collapsed ? 'w-16' : 'w-64',
|
|
268
289
|
class
|
|
269
290
|
)">
|
|
270
|
-
<div class="flex h-14 shrink-0 items-center
|
|
291
|
+
<div class="flex h-14 shrink-0 items-center px-3 overflow-hidden whitespace-nowrap">
|
|
271
292
|
<ng-content select="[header]"></ng-content>
|
|
272
293
|
</div>
|
|
273
294
|
|
|
@@ -287,6 +308,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
287
308
|
@for (item of group.items; track item.id || item.title || $index; let i = $index) {
|
|
288
309
|
|
|
289
310
|
@if (item.items && item.items.length) {
|
|
311
|
+
<!-- Parent Item (Group) -->
|
|
290
312
|
<div class="relative">
|
|
291
313
|
<button
|
|
292
314
|
type="button"
|
|
@@ -321,6 +343,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
321
343
|
}
|
|
322
344
|
</button>
|
|
323
345
|
|
|
346
|
+
<!-- Submenu Grid Transition -->
|
|
324
347
|
<div [class]="cn(
|
|
325
348
|
'grid transition-[grid-template-rows] duration-300 ease-in-out',
|
|
326
349
|
isParentExpanded(group, item, gIndex, i) && !collapsed ? 'grid-rows-[1fr] opacity-100' : 'grid-rows-[0fr] opacity-0'
|
|
@@ -329,8 +352,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
329
352
|
<div class="flex flex-col gap-1 mt-1 ml-4 border-l border-border/50 pl-2">
|
|
330
353
|
|
|
331
354
|
@for (subItem of item.items; track subItem.id || subItem.title || $index; let j = $index) {
|
|
332
|
-
|
|
333
355
|
@if (subItem.items && subItem.items.length) {
|
|
356
|
+
<!-- Grandchild Item Group (Recursive-ish logic for depth 2) -->
|
|
334
357
|
<div class="relative">
|
|
335
358
|
<button
|
|
336
359
|
type="button"
|
|
@@ -358,7 +381,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
358
381
|
@for (grandChild of subItem.items; track grandChild.title) {
|
|
359
382
|
<a
|
|
360
383
|
[routerLink]="grandChild.url"
|
|
361
|
-
routerLinkActive="
|
|
384
|
+
[routerLinkActive]="activeClasses"
|
|
362
385
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
363
386
|
class="flex items-center gap-2 hover:no-underline rounded-md px-3 py-1.5 text-sm transition-colors hover:bg-accent hover:text-accent-foreground text-muted-foreground whitespace-nowrap"
|
|
364
387
|
>
|
|
@@ -372,9 +395,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
372
395
|
</div>
|
|
373
396
|
}
|
|
374
397
|
@else {
|
|
398
|
+
<!-- Standard Sub Item -->
|
|
375
399
|
<a
|
|
376
400
|
[routerLink]="subItem.url"
|
|
377
|
-
routerLinkActive="
|
|
401
|
+
[routerLinkActive]="activeClasses"
|
|
378
402
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
379
403
|
class="flex items-center gap-2 hover:no-underline rounded-md px-3 py-1.5 text-sm transition-colors hover:bg-accent hover:text-accent-foreground text-muted-foreground whitespace-nowrap"
|
|
380
404
|
>
|
|
@@ -389,9 +413,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
389
413
|
</div>
|
|
390
414
|
}
|
|
391
415
|
@else {
|
|
416
|
+
<!-- Standard Top-Level Item -->
|
|
392
417
|
<a
|
|
393
418
|
[routerLink]="item.url"
|
|
394
|
-
routerLinkActive="
|
|
419
|
+
[routerLinkActive]="activeClasses"
|
|
395
420
|
[routerLinkActiveOptions]="{ exact: true }"
|
|
396
421
|
[class]="cn(
|
|
397
422
|
'group relative hover:no-underline flex items-center rounded-md px-3 py-2 text-sm font-medium transition-colors',
|
|
@@ -418,16 +443,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
418
443
|
}
|
|
419
444
|
</div>
|
|
420
445
|
|
|
421
|
-
<div class="
|
|
446
|
+
<div class="shrink-0 p-3 overflow-hidden whitespace-nowrap">
|
|
422
447
|
<ng-content select="[footer]"></ng-content>
|
|
423
448
|
</div>
|
|
424
449
|
</aside>
|
|
425
|
-
`, styles: [":host{display:block;height:100%}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:20px}button:disabled{cursor:not-allowed;opacity:.6}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}
|
|
450
|
+
`, styles: [":host{display:block;height:100%}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(156,163,175,.3) transparent}.custom-scrollbar::-webkit-scrollbar{width:4px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:#9ca3af4d;border-radius:20px}button:disabled{cursor:not-allowed;opacity:.6}*{transition-timing-function:cubic-bezier(.4,0,.2,1)}\n"] }]
|
|
426
451
|
}], propDecorators: { items: [{
|
|
427
452
|
type: Input
|
|
428
453
|
}], collapsed: [{
|
|
429
454
|
type: Input
|
|
430
455
|
}], class: [{
|
|
431
456
|
type: Input
|
|
457
|
+
}], variant: [{
|
|
458
|
+
type: Input
|
|
432
459
|
}] } });
|
|
433
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90b2xsZS9zcmMvbGliL3NpZGViYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQXFNaEMsTUFBTSxPQUFPLGdCQUFnQjtJQUNsQixLQUFLLEdBQW1CLEVBQUUsQ0FBQztJQUMzQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLEtBQUssR0FBRyxFQUFFLENBQUM7SUFFcEIsZUFBZSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDcEMsZ0JBQWdCLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUVsQixFQUFFLEdBQUcsRUFBRSxDQUFDO0lBRTNCLFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxJQUFJLE9BQU8sQ0FBQyxXQUFXLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDM0MsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ25CLE9BQU87UUFDVCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsQ0FBQztJQUNILENBQUM7SUFFRCxxQkFBcUI7SUFDYixlQUFlO1FBQ3JCLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBRXhCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUMsS0FB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LE1BQWM7UUFDNUgsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDO0lBQ3BHLENBQUM7d0dBdkdVLGdCQUFnQjs0RkFBaEIsZ0JBQWdCLGtLQTlLakI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUtULHVpQkFsS1MsWUFBWSw4QkFBRSxZQUFZOzs0RkErS3pCLGdCQUFnQjtrQkFsTDVCLFNBQVM7K0JBQ0UsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxZQUFZLENBQUMsWUFDM0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUtUOzhCQWNRLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBjbiB9IGZyb20gJy4vdXRpbHMvY24nO1xuXG4vLyAtLS0gSW50ZXJmYWNlcyAtLS1cbmV4cG9ydCBpbnRlcmZhY2UgU2lkZWJhckl0ZW0ge1xuICB0aXRsZTogc3RyaW5nO1xuICB1cmw/OiBzdHJpbmc7XG4gIGljb24/OiBzdHJpbmc7XG4gIGlzQWN0aXZlPzogYm9vbGVhbjtcbiAgaXRlbXM/OiBTaWRlYmFySXRlbVtdO1xuICBpZD86IHN0cmluZztcbiAgZXhwYW5kZWQ/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNpZGViYXJHcm91cCB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGl0ZW1zOiBTaWRlYmFySXRlbVtdO1xuICBpZD86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG9sbGUtc2lkZWJhcicsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFJvdXRlck1vZHVsZV0sXG4gIHRlbXBsYXRlOiBgXG4gICAgPGFzaWRlIFtjbGFzc109XCJjbihcbiAgICAgICdmbGV4IGZsZXgtY29sIGgtZnVsbCBib3JkZXItciBiZy1iYWNrZ3JvdW5kIHRyYW5zaXRpb24tW3dpZHRoXSBkdXJhdGlvbi0zMDAgZWFzZS1pbi1vdXQgc2hyaW5rLTAgb3ZlcmZsb3ctaGlkZGVuJyxcbiAgICAgIGNvbGxhcHNlZCA/ICd3LTE2JyA6ICd3LTY0JyxcbiAgICAgIGNsYXNzXG4gICAgKVwiPlxuICAgICAgPGRpdiBjbGFzcz1cImZsZXggaC0xNCBzaHJpbmstMCBpdGVtcy1jZW50ZXIgYm9yZGVyLWIgcHgtMyBvdmVyZmxvdy1oaWRkZW4gd2hpdGVzcGFjZS1ub3dyYXBcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2hlYWRlcl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImZsZXgtMSBtaW4taC0wIG92ZXJmbG93LXktYXV0byBvdmVyZmxvdy14LWhpZGRlbiBweS00IHB4LTMgY3VzdG9tLXNjcm9sbGJhclwiPlxuXG4gICAgICAgIEBmb3IgKGdyb3VwIG9mIGl0ZW1zOyB0cmFjayBncm91cC5pZCB8fCBncm91cC50aXRsZSB8fCAkaW5kZXg7IGxldCBnSW5kZXggPSAkaW5kZXgpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibWItNlwiPlxuXG4gICAgICAgICAgICA8ZGl2IFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgJ21iLTIgcHgtMiB0ZXh0LXhzIGZvbnQtc2VtaWJvbGQgdXBwZXJjYXNlIHRyYWNraW5nLXdpZGVyIHRleHQtbXV0ZWQtZm9yZWdyb3VuZC83MCB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0yMDAgb3ZlcmZsb3ctaGlkZGVuJyxcbiAgICAgICAgICAgICAgY29sbGFwc2VkID8gJ29wYWNpdHktMCBoLTAgbWItMCBweC0wJyA6ICdvcGFjaXR5LTEwMCBoLWF1dG8nXG4gICAgICAgICAgICApXCI+XG4gICAgICAgICAgICAgIHt7IGdyb3VwLnRpdGxlIH19XG4gICAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTFcIj5cbiAgICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBncm91cC5pdGVtczsgdHJhY2sgaXRlbS5pZCB8fCBpdGVtLnRpdGxlIHx8ICRpbmRleDsgbGV0IGkgPSAkaW5kZXgpIHtcblxuICAgICAgICAgICAgICAgIEBpZiAoaXRlbS5pdGVtcyAmJiBpdGVtLml0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInJlbGF0aXZlXCI+XG4gICAgICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwidG9nZ2xlUGFyZW50KGdyb3VwLCBpdGVtLCBnSW5kZXgsIGkpXCJcbiAgICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwiY29sbGFwc2VkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWV4cGFuZGVkXT1cImlzUGFyZW50RXhwYW5kZWQoZ3JvdXAsIGl0ZW0sIGdJbmRleCwgaSlcIlxuICAgICAgICAgICAgICAgICAgICAgIFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgICAgICAgICAgICdncm91cCB3LWZ1bGwgcmVsYXRpdmUgZmxleCBpdGVtcy1jZW50ZXIgcm91bmRlZC1tZCBweC0zIHB5LTIgdGV4dC1zbSBmb250LW1lZGl1bSB0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAgICAgICAgICAgICAgICAgICAnaG92ZXI6YmctYWNjZW50IGhvdmVyOnRleHQtYWNjZW50LWZvcmVncm91bmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgaXNQYXJlbnRFeHBhbmRlZChncm91cCwgaXRlbSwgZ0luZGV4LCBpKSA/ICd0ZXh0LWZvcmVncm91bmQgYmctYWNjZW50LzUwJyA6ICd0ZXh0LW11dGVkLWZvcmVncm91bmQnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sbGFwc2VkID8gJ2p1c3RpZnktY2VudGVyJyA6ICdqdXN0aWZ5LXN0YXJ0J1xuICAgICAgICAgICAgICAgICAgICAgIClcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gfHwgJ3JpLWNpcmNsZS1maWxsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ2gtNCB3LTQgdGV4dC1sZyBzaHJpbmstMCB0cmFuc2l0aW9uLXRyYW5zZm9ybScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICFjb2xsYXBzZWQgJiYgJ2dyb3VwLWhvdmVyOnNjYWxlLTExMCdcbiAgICAgICAgICAgICAgICAgICAgICAgIClcIj48L2k+XG5cbiAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAndHJ1bmNhdGUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbGxhcHNlZCA/ICdvcGFjaXR5LTAgdy0wIG1sLTAnIDogJ29wYWNpdHktMTAwIHctYXV0byBtbC0zJ1xuICAgICAgICAgICAgICAgICAgICAgIClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG5cbiAgICAgICAgICAgICAgICAgICAgICBAaWYgKCFjb2xsYXBzZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpIFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgJ3JpLWFycm93LWRvd24tcy1saW5lIG1sLWF1dG8gdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tMzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaXNQYXJlbnRFeHBhbmRlZChncm91cCwgaXRlbSwgZ0luZGV4LCBpKSA/ICdyb3RhdGUtMTgwJyA6ICcnXG4gICAgICAgICAgICAgICAgICAgICAgICApXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgPC9idXR0b24+XG5cbiAgICAgICAgICAgICAgICAgICAgPGRpdiBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgJ2dyaWQgdHJhbnNpdGlvbi1bZ3JpZC10ZW1wbGF0ZS1yb3dzXSBkdXJhdGlvbi0zMDAgZWFzZS1pbi1vdXQnLFxuICAgICAgICAgICAgICAgICAgICAgIGlzUGFyZW50RXhwYW5kZWQoZ3JvdXAsIGl0ZW0sIGdJbmRleCwgaSkgJiYgIWNvbGxhcHNlZCA/ICdncmlkLXJvd3MtWzFmcl0gb3BhY2l0eS0xMDAnIDogJ2dyaWQtcm93cy1bMGZyXSBvcGFjaXR5LTAnXG4gICAgICAgICAgICAgICAgICAgIClcIj5cbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwib3ZlcmZsb3ctaGlkZGVuXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMSBtdC0xIG1sLTQgYm9yZGVyLWwgYm9yZGVyLWJvcmRlci81MCBwbC0yXCI+XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgQGZvciAoc3ViSXRlbSBvZiBpdGVtLml0ZW1zOyB0cmFjayBzdWJJdGVtLmlkIHx8IHN1Ykl0ZW0udGl0bGUgfHwgJGluZGV4OyBsZXQgaiA9ICRpbmRleCkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChzdWJJdGVtLml0ZW1zICYmIHN1Ykl0ZW0uaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVDaGlsZChncm91cCwgaXRlbSwgc3ViSXRlbSwgZ0luZGV4LCBpLCBqKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ3JvdXAgdy1mdWxsIHJlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIHJvdW5kZWQtbWQgcHgtMyBweS0xLjUgdGV4dC1zbSBmb250LW1lZGl1bSB0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaG92ZXI6YmctYWNjZW50IGhvdmVyOnRleHQtYWNjZW50LWZvcmVncm91bmQgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzQ2hpbGRFeHBhbmRlZChncm91cCwgaXRlbSwgc3ViSXRlbSwgZ0luZGV4LCBpLCBqKSA/ICd0ZXh0LWZvcmVncm91bmQgYmctYWNjZW50LzMwJyA6ICcnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMS41IGgtMS41IHJvdW5kZWQtZnVsbCBiZy1ib3JkZXIgc2hyaW5rLTBcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtbC0yIHRydW5jYXRlXCI+e3sgc3ViSXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmktYXJyb3ctcmlnaHQtcy1saW5lIG1sLWF1dG8gdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tMzAwIHRleHQteHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNDaGlsZEV4cGFuZGVkKGdyb3VwLCBpdGVtLCBzdWJJdGVtLCBnSW5kZXgsIGksIGopID8gJ3JvdGF0ZS05MCcgOiAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdncmlkIHRyYW5zaXRpb24tW2dyaWQtdGVtcGxhdGUtcm93c10gZHVyYXRpb24tMzAwIGVhc2UtaW4tb3V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0NoaWxkRXhwYW5kZWQoZ3JvdXAsIGl0ZW0sIHN1Ykl0ZW0sIGdJbmRleCwgaSwgaikgPyAnZ3JpZC1yb3dzLVsxZnJdIG9wYWNpdHktMTAwJyA6ICdncmlkLXJvd3MtWzBmcl0gb3BhY2l0eS0wJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTEgbXQtMSBtbC00IGJvcmRlci1sIGJvcmRlci1ib3JkZXIvMzAgcGwtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChncmFuZENoaWxkIG9mIHN1Ykl0ZW0uaXRlbXM7IHRyYWNrIGdyYW5kQ2hpbGQudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiZ3JhbmRDaGlsZC51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcm91dGVyTGlua0FjdGl2ZT1cImJnLWFjY2VudC81MCB0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJ7IGV4YWN0OiB0cnVlIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBob3Zlcjpuby11bmRlcmxpbmUgcm91bmRlZC1tZCBweC0zIHB5LTEuNSB0ZXh0LXNtIHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB3aGl0ZXNwYWNlLW5vd3JhcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ3LTEuNSBoLTEuNSByb3VuZGVkLWZ1bGwgYmctYm9yZGVyLzcwIHNocmluay0wXCI+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0cnVuY2F0ZVwiPnt7IGdyYW5kQ2hpbGQudGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwic3ViSXRlbS51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYmctYWNjZW50LzUwIHRleHQtYWNjZW50LWZvcmVncm91bmRcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwieyBleGFjdDogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBob3Zlcjpuby11bmRlcmxpbmUgcm91bmRlZC1tZCBweC0zIHB5LTEuNSB0ZXh0LXNtIHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB3aGl0ZXNwYWNlLW5vd3JhcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0xLjUgaC0xLjUgcm91bmRlZC1mdWxsIGJnLWJvcmRlciBzaHJpbmstMFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0cnVuY2F0ZVwiPnt7IHN1Ykl0ZW0udGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgPGFcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiaXRlbS51cmxcIlxuICAgICAgICAgICAgICAgICAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYmctcHJpbWFyeS8xMCB0ZXh0LXByaW1hcnlcIlxuICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwieyBleGFjdDogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICdncm91cCByZWxhdGl2ZSBob3Zlcjpuby11bmRlcmxpbmUgZmxleCBpdGVtcy1jZW50ZXIgcm91bmRlZC1tZCBweC0zIHB5LTIgdGV4dC1zbSBmb250LW1lZGl1bSB0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAgICAgICAgICAgICAgICAgJ2hvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCcsXG4gICAgICAgICAgICAgICAgICAgICAgY29sbGFwc2VkID8gJ2p1c3RpZnktY2VudGVyJyA6ICdqdXN0aWZ5LXN0YXJ0J1xuICAgICAgICAgICAgICAgICAgICApXCJcbiAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgaXRlbS5pY29uIHx8ICdyaS1jaXJjbGUtZmlsbCcsXG4gICAgICAgICAgICAgICAgICAgICAgICAnaC00IHctNCB0ZXh0LWxnIHNocmluay0wIHRyYW5zaXRpb24tdHJhbnNmb3JtJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICFjb2xsYXBzZWQgJiYgJ2dyb3VwLWhvdmVyOnNjYWxlLTExMCdcbiAgICAgICAgICAgICAgICAgICAgICApXCI+PC9pPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgJ3RydW5jYXRlIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTMwMCcsXG4gICAgICAgICAgICAgICAgICAgICAgY29sbGFwc2VkID8gJ29wYWNpdHktMCB3LTAgbWwtMCcgOiAnb3BhY2l0eS0xMDAgdy1hdXRvIG1sLTMnXG4gICAgICAgICAgICAgICAgICAgIClcIj5cbiAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImJvcmRlci10IHNocmluay0wIHAtMyBvdmVyZmxvdy1oaWRkZW4gd2hpdGVzcGFjZS1ub3dyYXBcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2Zvb3Rlcl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2FzaWRlPlxuICBgLFxuICBzdHlsZXM6IFtgXG4gICAgOmhvc3QgeyBkaXNwbGF5OiBibG9jazsgaGVpZ2h0OiAxMDAlOyB9XG4gICAgLmN1c3RvbS1zY3JvbGxiYXIgeyBzY3JvbGxiYXItd2lkdGg6IHRoaW47IHNjcm9sbGJhci1jb2xvcjogcmdiYSgxNTYsIDE2MywgMTc1LCAwLjMpIHRyYW5zcGFyZW50OyB9XG4gICAgLmN1c3RvbS1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyIHsgd2lkdGg6IDRweDsgfVxuICAgIC5jdXN0b20tc2Nyb2xsYmFyOjotd2Via2l0LXNjcm9sbGJhci10cmFjayB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG4gICAgLmN1c3RvbS1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHsgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTYsIDE2MywgMTc1LCAwLjMpOyBib3JkZXItcmFkaXVzOiAyMHB4OyB9XG4gICAgYnV0dG9uOmRpc2FibGVkIHsgY3Vyc29yOiBub3QtYWxsb3dlZDsgb3BhY2l0eTogMC42OyB9XG4gICAgKiB7IHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC40LCAwLCAwLjIsIDEpOyB9XG4gICAgLm1sLTQgeyBtYXJnaW4tbGVmdDogMXJlbTsgfVxuICAgIC5ib3JkZXItbCB7IGJvcmRlci1sZWZ0LXdpZHRoOiAxcHg7IH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgU2lkZWJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGl0ZW1zOiBTaWRlYmFyR3JvdXBbXSA9IFtdO1xuICBASW5wdXQoKSBjb2xsYXBzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgY2xhc3MgPSAnJztcblxuICBleHBhbmRlZFBhcmVudHMgPSBuZXcgU2V0PHN0cmluZz4oKTtcbiAgZXhwYW5kZWRDaGlsZHJlbiA9IG5ldyBTZXQ8c3RyaW5nPigpO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBjbiA9IGNuO1xuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpIHtcbiAgICBpZiAoY2hhbmdlc1snY29sbGFwc2VkJ10gJiYgdGhpcy5jb2xsYXBzZWQpIHtcbiAgICAgIHRoaXMuY29sbGFwc2VBbGwoKTtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXNbJ2l0ZW1zJ10pIHtcbiAgICAgIHRoaXMuaW5pdGlhbGl6ZVN0YXRlKCk7XG4gICAgfVxuICB9XG5cbiAgLy8gLS0tIFNUQVRFIElOSVQgLS0tXG4gIHByaXZhdGUgaW5pdGlhbGl6ZVN0YXRlKCkge1xuICAgIHRoaXMuY29sbGFwc2VBbGwoKTtcbiAgICBpZiAoIXRoaXMuaXRlbXMpIHJldHVybjtcblxuICAgIHRoaXMuaXRlbXMuZm9yRWFjaCgoZ3JvdXAsIGdJbmRleCkgPT4ge1xuICAgICAgZ3JvdXAuaXRlbXMuZm9yRWFjaCgoaXRlbSwgaUluZGV4KSA9PiB7XG4gICAgICAgIGNvbnN0IHBhcmVudElkID0gdGhpcy5nZXRQYXJlbnRJZChncm91cCwgaXRlbSwgZ0luZGV4LCBpSW5kZXgpO1xuXG4gICAgICAgIGlmIChpdGVtLmV4cGFuZGVkKSB7XG4gICAgICAgICAgdGhpcy5leHBhbmRlZFBhcmVudHMuYWRkKHBhcmVudElkKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChpdGVtLml0ZW1zKSB7XG4gICAgICAgICAgaXRlbS5pdGVtcy5mb3JFYWNoKChzdWJJdGVtLCBzSW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChzdWJJdGVtLmV4cGFuZGVkKSB7XG4gICAgICAgICAgICAgIGNvbnN0IGNoaWxkSWQgPSB0aGlzLmdldENoaWxkSWQoZ3JvdXAsIGl0ZW0sIHN1Ykl0ZW0sIGdJbmRleCwgaUluZGV4LCBzSW5kZXgpO1xuICAgICAgICAgICAgICB0aGlzLmV4cGFuZGVkQ2hpbGRyZW4uYWRkKGNoaWxkSWQpO1xuICAgICAgICAgICAgICB0aGlzLmV4cGFuZGVkUGFyZW50cy5hZGQocGFyZW50SWQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIC0tLSBJRCBHRU5FUkFUT1JTIChOb3cgdXNpbmcgR3JvdXAgSW5kZXggY29ycmVjdGx5KSAtLS1cbiAgZ2V0R3JvdXBJZChncm91cDogU2lkZWJhckdyb3VwLCBpbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICByZXR1cm4gZ3JvdXAuaWQgfHwgZ3JvdXAudGl0bGUgfHwgYGctJHtpbmRleH1gO1xuICB9XG5cbiAgZ2V0UGFyZW50SWQoZ3JvdXA6IFNpZGViYXJHcm91cCwgaXRlbTogU2lkZWJhckl0ZW0sIGdJbmRleDogbnVtYmVyLCBpSW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgZ3JvdXBJZCA9IHRoaXMuZ2V0R3JvdXBJZChncm91cCwgZ0luZGV4KTtcbiAgICBjb25zdCBpdGVtSWQgPSBpdGVtLmlkIHx8IGl0ZW0udGl0bGUgfHwgYHAtJHtpSW5kZXh9YDtcbiAgICByZXR1cm4gYCR7Z3JvdXBJZH1fXyR7aXRlbUlkfWA7XG4gIH1cblxuICBnZXRDaGlsZElkKGdyb3VwOiBTaWRlYmFyR3JvdXAsIHBhcmVudDogU2lkZWJhckl0ZW0sIHN1Ykl0ZW06IFNpZGViYXJJdGVtLCBnSW5kZXg6IG51bWJlciwgaUluZGV4OiBudW1iZXIsIHNJbmRleDogbnVtYmVyKTogc3RyaW5nIHtcbiAgICBjb25zdCBwYXJlbnRJZCA9IHRoaXMuZ2V0UGFyZW50SWQoZ3JvdXAsIHBhcmVudCwgZ0luZGV4LCBpSW5kZXgpO1xuICAgIGNvbnN0IHN1Ykl0ZW1JZCA9IHN1Ykl0ZW0uaWQgfHwgc3ViSXRlbS50aXRsZSB8fCBgYy0ke3NJbmRleH1gO1xuICAgIHJldHVybiBgJHtwYXJlbnRJZH1fXyR7c3ViSXRlbUlkfWA7XG4gIH1cblxuICAvLyAtLS0gQUNUSU9OUyAtLS1cbiAgdG9nZ2xlUGFyZW50KGdyb3VwOiBTaWRlYmFyR3JvdXAsIGl0ZW06IFNpZGViYXJJdGVtLCBnSW5kZXg6IG51bWJlciwgaUluZGV4OiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5jb2xsYXBzZWQpIHJldHVybjtcbiAgICBjb25zdCBpZCA9IHRoaXMuZ2V0UGFyZW50SWQoZ3JvdXAsIGl0ZW0sIGdJbmRleCwgaUluZGV4KTtcblxuICAgIC8vIENyZWF0ZSBuZXcgU2V0IHJlZmVyZW5jZSB0byBlbnN1cmUgQ2hhbmdlIERldGVjdGlvbiB0cmlnZ2Vyc1xuICAgIGNvbnN0IG5ld1NldCA9IG5ldyBTZXQodGhpcy5leHBhbmRlZFBhcmVudHMpO1xuICAgIGlmIChuZXdTZXQuaGFzKGlkKSkge1xuICAgICAgbmV3U2V0LmRlbGV0ZShpZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5ld1NldC5hZGQoaWQpO1xuICAgIH1cbiAgICB0aGlzLmV4cGFuZGVkUGFyZW50cyA9IG5ld1NldDtcbiAgfVxuXG4gIHRvZ2dsZUNoaWxkKGdyb3VwOiBTaWRlYmFyR3JvdXAsIHBhcmVudDogU2lkZWJhckl0ZW0sIHN1Ykl0ZW06IFNpZGViYXJJdGVtLCBnSW5kZXg6IG51bWJlciwgaUluZGV4OiBudW1iZXIsIHNJbmRleDogbnVtYmVyKSB7XG4gICAgY29uc3QgaWQgPSB0aGlzLmdldENoaWxkSWQoZ3JvdXAsIHBhcmVudCwgc3ViSXRlbSwgZ0luZGV4LCBpSW5kZXgsIHNJbmRleCk7XG5cbiAgICAvLyBDcmVhdGUgbmV3IFNldCByZWZlcmVuY2VcbiAgICBjb25zdCBuZXdTZXQgPSBuZXcgU2V0KHRoaXMuZXhwYW5kZWRDaGlsZHJlbik7XG4gICAgaWYgKG5ld1NldC5oYXMoaWQpKSB7XG4gICAgICBuZXdTZXQuZGVsZXRlKGlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgbmV3U2V0LmFkZChpZCk7XG4gICAgfVxuICAgIHRoaXMuZXhwYW5kZWRDaGlsZHJlbiA9IG5ld1NldDtcbiAgfVxuXG4gIHByaXZhdGUgY29sbGFwc2VBbGwoKSB7XG4gICAgdGhpcy5leHBhbmRlZFBhcmVudHMgPSBuZXcgU2V0KCk7XG4gICAgdGhpcy5leHBhbmRlZENoaWxkcmVuID0gbmV3IFNldCgpO1xuICB9XG5cbiAgLy8gLS0tIFRFTVBMQVRFIEhFTFBFUlMgLS0tXG4gIGlzUGFyZW50RXhwYW5kZWQoZ3JvdXA6IFNpZGViYXJHcm91cCwgaXRlbTogU2lkZWJhckl0ZW0sIGdJbmRleDogbnVtYmVyLCBpSW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4cGFuZGVkUGFyZW50cy5oYXModGhpcy5nZXRQYXJlbnRJZChncm91cCwgaXRlbSwgZ0luZGV4LCBpSW5kZXgpKTtcbiAgfVxuXG4gIGlzQ2hpbGRFeHBhbmRlZChncm91cDogU2lkZWJhckdyb3VwLCBwYXJlbnQ6IFNpZGViYXJJdGVtLCBzdWJJdGVtOiBTaWRlYmFySXRlbSwgZ0luZGV4OiBudW1iZXIsIGlJbmRleDogbnVtYmVyLCBzSW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmV4cGFuZGVkQ2hpbGRyZW4uaGFzKHRoaXMuZ2V0Q2hpbGRJZChncm91cCwgcGFyZW50LCBzdWJJdGVtLCBnSW5kZXgsIGlJbmRleCwgc0luZGV4KSk7XG4gIH1cbn1cbiJdfQ==
|
|
460
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy90b2xsZS9zcmMvbGliL3NpZGViYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxZQUFZLENBQUM7OztBQXVNaEMsTUFBTSxPQUFPLGdCQUFnQjtJQUNsQixLQUFLLEdBQW1CLEVBQUUsQ0FBQztJQUMzQixTQUFTLEdBQUcsS0FBSyxDQUFDO0lBQ2xCLEtBQUssR0FBRyxFQUFFLENBQUM7SUFFcEI7Ozs7OztPQU1HO0lBQ00sT0FBTyxHQUFrRCxTQUFTLENBQUM7SUFFNUUsZUFBZSxHQUFHLElBQUksR0FBRyxFQUFVLENBQUM7SUFDcEMsZ0JBQWdCLEdBQUcsSUFBSSxHQUFHLEVBQVUsQ0FBQztJQUVsQixFQUFFLEdBQUcsRUFBRSxDQUFDO0lBRTNCLElBQUksYUFBYTtRQUNmLE9BQU8sRUFBRSxDQUNQLG1CQUFtQjtRQUNuQixnRkFBZ0Y7UUFDaEYsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksc0ZBQXNGO1FBRXBILDZCQUE2QjtRQUM3QixJQUFJLENBQUMsT0FBTyxLQUFLLFdBQVcsSUFBSSw4REFBOEQ7UUFFOUYsOENBQThDO1FBQzlDLElBQUksQ0FBQyxPQUFPLEtBQUssT0FBTyxJQUFJLGtDQUFrQztRQUU5RCxvQkFBb0I7UUFDcEIsSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLElBQUksaUdBQWlHLENBQ2hJLENBQUM7SUFDSixDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FB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Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXFLVDs4QkFZUSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBU0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgUm91dGVyTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IGNuIH0gZnJvbSAnLi91dGlscy9jbic7XG5cbi8vIC0tLSBJbnRlcmZhY2VzIC0tLVxuZXhwb3J0IHR5cGUgU2lkZWJhckl0ZW0gPSB7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIHVybD86IHN0cmluZztcbiAgaWNvbj86IHN0cmluZztcbiAgaXNBY3RpdmU/OiBib29sZWFuO1xuICBpdGVtcz86IFNpZGViYXJJdGVtW107XG4gIGlkPzogc3RyaW5nO1xuICBleHBhbmRlZD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCB0eXBlIFNpZGViYXJHcm91cCA9IHtcbiAgdGl0bGU6IHN0cmluZztcbiAgaXRlbXM6IFNpZGViYXJJdGVtW107XG4gIGlkPzogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b2xsZS1zaWRlYmFyJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgUm91dGVyTW9kdWxlXSxcbiAgdGVtcGxhdGU6IGBcbiAgICA8YXNpZGUgW2NsYXNzXT1cImNuKFxuICAgICAgJ2ZsZXggZmxleC1jb2wgaC1mdWxsIGJnLWJhY2tncm91bmQgdHJhbnNpdGlvbi1bd2lkdGhdIGR1cmF0aW9uLTMwMCBlYXNlLWluLW91dCBzaHJpbmstMCBvdmVyZmxvdy1oaWRkZW4nLFxuICAgICAgY29sbGFwc2VkID8gJ3ctMTYnIDogJ3ctNjQnLFxuICAgICAgY2xhc3NcbiAgICApXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleCBoLTE0IHNocmluay0wIGl0ZW1zLWNlbnRlciBweC0zIG92ZXJmbG93LWhpZGRlbiB3aGl0ZXNwYWNlLW5vd3JhcFwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaGVhZGVyXVwiPjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZmxleC0xIG1pbi1oLTAgb3ZlcmZsb3cteS1hdXRvIG92ZXJmbG93LXgtaGlkZGVuIHB5LTQgcHgtMyBjdXN0b20tc2Nyb2xsYmFyXCI+XG5cbiAgICAgICAgQGZvciAoZ3JvdXAgb2YgaXRlbXM7IHRyYWNrIGdyb3VwLmlkIHx8IGdyb3VwLnRpdGxlIHx8ICRpbmRleDsgbGV0IGdJbmRleCA9ICRpbmRleCkge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYi02XCI+XG5cbiAgICAgICAgICAgIDxkaXYgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAnbWItMiBweC0yIHRleHQteHMgZm9udC1zZW1pYm9sZCB1cHBlcmNhc2UgdHJhY2tpbmctd2lkZXIgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kLzcwIHRyYW5zaXRpb24tYWxsIGR1cmF0aW9uLTIwMCBvdmVyZmxvdy1oaWRkZW4nLFxuICAgICAgICAgICAgICBjb2xsYXBzZWQgPyAnb3BhY2l0eS0wIGgtMCBtYi0wIHB4LTAnIDogJ29wYWNpdHktMTAwIGgtYXV0bydcbiAgICAgICAgICAgIClcIj5cbiAgICAgICAgICAgICAge3sgZ3JvdXAudGl0bGUgfX1cbiAgICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleCBmbGV4LWNvbCBnYXAtMVwiPlxuICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIGdyb3VwLml0ZW1zOyB0cmFjayBpdGVtLmlkIHx8IGl0ZW0udGl0bGUgfHwgJGluZGV4OyBsZXQgaSA9ICRpbmRleCkge1xuXG4gICAgICAgICAgICAgICAgQGlmIChpdGVtLml0ZW1zICYmIGl0ZW0uaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICA8IS0tIFBhcmVudCBJdGVtIChHcm91cCkgLS0+XG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVQYXJlbnQoZ3JvdXAsIGl0ZW0sIGdJbmRleCwgaSlcIlxuICAgICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJjb2xsYXBzZWRcIlxuICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtZXhwYW5kZWRdPVwiaXNQYXJlbnRFeHBhbmRlZChncm91cCwgaXRlbSwgZ0luZGV4LCBpKVwiXG4gICAgICAgICAgICAgICAgICAgICAgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2dyb3VwIHctZnVsbCByZWxhdGl2ZSBmbGV4IGl0ZW1zLWNlbnRlciByb3VuZGVkLW1kIHB4LTMgcHktMiB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRyYW5zaXRpb24tY29sb3JzJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdob3ZlcjpiZy1hY2NlbnQgaG92ZXI6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBpc1BhcmVudEV4cGFuZGVkKGdyb3VwLCBpdGVtLCBnSW5kZXgsIGkpID8gJ3RleHQtZm9yZWdyb3VuZCBiZy1hY2NlbnQvNTAnIDogJ3RleHQtbXV0ZWQtZm9yZWdyb3VuZCcsXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xsYXBzZWQgPyAnanVzdGlmeS1jZW50ZXInIDogJ2p1c3RpZnktc3RhcnQnXG4gICAgICAgICAgICAgICAgICAgICAgKVwiXG4gICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uaWNvbiB8fCAncmktY2lyY2xlLWZpbGwnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAnaC00IHctNCB0ZXh0LWxnIHNocmluay0wIHRyYW5zaXRpb24tdHJhbnNmb3JtJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgIWNvbGxhcHNlZCAmJiAnZ3JvdXAtaG92ZXI6c2NhbGUtMTEwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgKVwiPjwvaT5cblxuICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgICAgICAgICAgICd0cnVuY2F0ZSB0cmFuc2l0aW9uLWFsbCBkdXJhdGlvbi0zMDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgY29sbGFwc2VkID8gJ29wYWNpdHktMCB3LTAgbWwtMCcgOiAnb3BhY2l0eS0xMDAgdy1hdXRvIG1sLTMnXG4gICAgICAgICAgICAgICAgICAgICAgKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgaXRlbS50aXRsZSB9fVxuICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cblxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAoIWNvbGxhcHNlZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgPGkgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAncmktYXJyb3ctZG93bi1zLWxpbmUgbWwtYXV0byB0cmFuc2l0aW9uLXRyYW5zZm9ybSBkdXJhdGlvbi0zMDAnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBpc1BhcmVudEV4cGFuZGVkKGdyb3VwLCBpdGVtLCBnSW5kZXgsIGkpID8gJ3JvdGF0ZS0xODAnIDogJydcbiAgICAgICAgICAgICAgICAgICAgICAgIClcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cblxuICAgICAgICAgICAgICAgICAgICA8IS0tIFN1Ym1lbnUgR3JpZCBUcmFuc2l0aW9uIC0tPlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgICAgICAgICAnZ3JpZCB0cmFuc2l0aW9uLVtncmlkLXRlbXBsYXRlLXJvd3NdIGR1cmF0aW9uLTMwMCBlYXNlLWluLW91dCcsXG4gICAgICAgICAgICAgICAgICAgICAgaXNQYXJlbnRFeHBhbmRlZChncm91cCwgaXRlbSwgZ0luZGV4LCBpKSAmJiAhY29sbGFwc2VkID8gJ2dyaWQtcm93cy1bMWZyXSBvcGFjaXR5LTEwMCcgOiAnZ3JpZC1yb3dzLVswZnJdIG9wYWNpdHktMCdcbiAgICAgICAgICAgICAgICAgICAgKVwiPlxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJvdmVyZmxvdy1oaWRkZW5cIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4IGZsZXgtY29sIGdhcC0xIG10LTEgbWwtNCBib3JkZXItbCBib3JkZXItYm9yZGVyLzUwIHBsLTJcIj5cblxuICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChzdWJJdGVtIG9mIGl0ZW0uaXRlbXM7IHRyYWNrIHN1Ykl0ZW0uaWQgfHwgc3ViSXRlbS50aXRsZSB8fCAkaW5kZXg7IGxldCBqID0gJGluZGV4KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQGlmIChzdWJJdGVtLml0ZW1zICYmIHN1Ykl0ZW0uaXRlbXMubGVuZ3RoKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8IS0tIEdyYW5kY2hpbGQgSXRlbSBHcm91cCAoUmVjdXJzaXZlLWlzaCBsb2dpYyBmb3IgZGVwdGggMikgLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicmVsYXRpdmVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJ0b2dnbGVDaGlsZChncm91cCwgaXRlbSwgc3ViSXRlbSwgZ0luZGV4LCBpLCBqKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnZ3JvdXAgdy1mdWxsIHJlbGF0aXZlIGZsZXggaXRlbXMtY2VudGVyIHJvdW5kZWQtbWQgcHgtMyBweS0xLjUgdGV4dC1zbSBmb250LW1lZGl1bSB0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnaG92ZXI6YmctYWNjZW50IGhvdmVyOnRleHQtYWNjZW50LWZvcmVncm91bmQgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlzQ2hpbGRFeHBhbmRlZChncm91cCwgaXRlbSwgc3ViSXRlbSwgZ0luZGV4LCBpLCBqKSA/ICd0ZXh0LWZvcmVncm91bmQgYmctYWNjZW50LzMwJyA6ICcnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInctMS41IGgtMS41IHJvdW5kZWQtZnVsbCBiZy1ib3JkZXIgc2hyaW5rLTBcIj48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJtbC0yIHRydW5jYXRlXCI+e3sgc3ViSXRlbS50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncmktYXJyb3ctcmlnaHQtcy1saW5lIG1sLWF1dG8gdHJhbnNpdGlvbi10cmFuc2Zvcm0gZHVyYXRpb24tMzAwIHRleHQteHMnLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNDaGlsZEV4cGFuZGVkKGdyb3VwLCBpdGVtLCBzdWJJdGVtLCBnSW5kZXgsIGksIGopID8gJ3JvdGF0ZS05MCcgOiAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2NsYXNzXT1cImNuKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICdncmlkIHRyYW5zaXRpb24tW2dyaWQtdGVtcGxhdGUtcm93c10gZHVyYXRpb24tMzAwIGVhc2UtaW4tb3V0JyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0NoaWxkRXhwYW5kZWQoZ3JvdXAsIGl0ZW0sIHN1Ykl0ZW0sIGdJbmRleCwgaSwgaikgPyAnZ3JpZC1yb3dzLVsxZnJdIG9wYWNpdHktMTAwJyA6ICdncmlkLXJvd3MtWzBmcl0gb3BhY2l0eS0wJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm92ZXJmbG93LWhpZGRlblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZsZXggZmxleC1jb2wgZ2FwLTEgbXQtMSBtbC00IGJvcmRlci1sIGJvcmRlci1ib3JkZXIvMzAgcGwtMlwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAZm9yIChncmFuZENoaWxkIG9mIHN1Ykl0ZW0uaXRlbXM7IHRyYWNrIGdyYW5kQ2hpbGQudGl0bGUpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtdPVwiZ3JhbmRDaGlsZC51cmxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtBY3RpdmVdPVwiYWN0aXZlQ2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwieyBleGFjdDogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTIgaG92ZXI6bm8tdW5kZXJsaW5lIHJvdW5kZWQtbWQgcHgtMyBweS0xLjUgdGV4dC1zbSB0cmFuc2l0aW9uLWNvbG9ycyBob3ZlcjpiZy1hY2NlbnQgaG92ZXI6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCB0ZXh0LW11dGVkLWZvcmVncm91bmQgd2hpdGVzcGFjZS1ub3dyYXBcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0xLjUgaC0xLjUgcm91bmRlZC1mdWxsIGJnLWJvcmRlci83MCBzaHJpbmstMFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidHJ1bmNhdGVcIj57eyBncmFuZENoaWxkLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gU3RhbmRhcmQgU3ViIEl0ZW0gLS0+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJzdWJJdGVtLnVybFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlXT1cImFjdGl2ZUNsYXNzZXNcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua0FjdGl2ZU9wdGlvbnNdPVwieyBleGFjdDogdHJ1ZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMiBob3Zlcjpuby11bmRlcmxpbmUgcm91bmRlZC1tZCBweC0zIHB5LTEuNSB0ZXh0LXNtIHRyYW5zaXRpb24tY29sb3JzIGhvdmVyOmJnLWFjY2VudCBob3Zlcjp0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB3aGl0ZXNwYWNlLW5vd3JhcFwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidy0xLjUgaC0xLjUgcm91bmRlZC1mdWxsIGJnLWJvcmRlciBzaHJpbmstMFwiPjwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0cnVuY2F0ZVwiPnt7IHN1Ykl0ZW0udGl0bGUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGVsc2Uge1xuICAgICAgICAgICAgICAgICAgPCEtLSBTdGFuZGFyZCBUb3AtTGV2ZWwgSXRlbSAtLT5cbiAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIml0ZW0udXJsXCJcbiAgICAgICAgICAgICAgICAgICAgW3JvdXRlckxpbmtBY3RpdmVdPVwiYWN0aXZlQ2xhc3Nlc1wiXG4gICAgICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rQWN0aXZlT3B0aW9uc109XCJ7IGV4YWN0OiB0cnVlIH1cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgJ2dyb3VwIHJlbGF0aXZlIGhvdmVyOm5vLXVuZGVybGluZSBmbGV4IGl0ZW1zLWNlbnRlciByb3VuZGVkLW1kIHB4LTMgcHktMiB0ZXh0LXNtIGZvbnQtbWVkaXVtIHRyYW5zaXRpb24tY29sb3JzJyxcbiAgICAgICAgICAgICAgICAgICAgICAnaG92ZXI6YmctYWNjZW50IGhvdmVyOnRleHQtYWNjZW50LWZvcmVncm91bmQgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kJyxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsYXBzZWQgPyAnanVzdGlmeS1jZW50ZXInIDogJ2p1c3RpZnktc3RhcnQnXG4gICAgICAgICAgICAgICAgICAgIClcIlxuICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICA8aSBbY2xhc3NdPVwiY24oXG4gICAgICAgICAgICAgICAgICAgICAgICBpdGVtLmljb24gfHwgJ3JpLWNpcmNsZS1maWxsJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICdoLTQgdy00IHRleHQtbGcgc2hyaW5rLTAgdHJhbnNpdGlvbi10cmFuc2Zvcm0nLFxuICAgICAgICAgICAgICAgICAgICAgICAgIWNvbGxhcHNlZCAmJiAnZ3JvdXAtaG92ZXI6c2NhbGUtMTEwJ1xuICAgICAgICAgICAgICAgICAgICAgIClcIj48L2k+XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIFtjbGFzc109XCJjbihcbiAgICAgICAgICAgICAgICAgICAgICAndHJ1bmNhdGUgdHJhbnNpdGlvbi1hbGwgZHVyYXRpb24tMzAwJyxcbiAgICAgICAgICAgICAgICAgICAgICBjb2xsYXBzZWQgPyAnb3BhY2l0eS0wIHctMCBtbC0wJyA6ICdvcGFjaXR5LTEwMCB3LWF1dG8gbWwtMydcbiAgICAgICAgICAgICAgICAgICAgKVwiPlxuICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0udGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwic2hyaW5rLTAgcC0zIG92ZXJmbG93LWhpZGRlbiB3aGl0ZXNwYWNlLW5vd3JhcFwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbZm9vdGVyXVwiPjwvbmctY29udGVudD5cbiAgICAgIDwvZGl2PlxuICAgIDwvYXNpZGU+XG4gIGAsXG4gIHN0eWxlczogW2BcbiAgICA6aG9zdCB7IGRpc3BsYXk6IGJsb2NrOyBoZWlnaHQ6IDEwMCU7IH1cbiAgICAuY3VzdG9tLXNjcm9sbGJhciB7IHNjcm9sbGJhci13aWR0aDogdGhpbjsgc2Nyb2xsYmFyLWNvbG9yOiByZ2JhKDE1NiwgMTYzLCAxNzUsIDAuMykgdHJhbnNwYXJlbnQ7IH1cbiAgICAuY3VzdG9tLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXIgeyB3aWR0aDogNHB4OyB9XG4gICAgLmN1c3RvbS1zY3JvbGxiYXI6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHsgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7IH1cbiAgICAuY3VzdG9tLXNjcm9sbGJhcjo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWIgeyBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1NiwgMTYzLCAxNzUsIDAuMyk7IGJvcmRlci1yYWRpdXM6IDIwcHg7IH1cbiAgICBidXR0b246ZGlzYWJsZWQgeyBjdXJzb3I6IG5vdC1hbGxvd2VkOyBvcGFjaXR5OiAwLjY7IH1cbiAgICAqIHsgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjQsIDAsIDAuMiwgMSk7IH1cbiAgYF1cbn0pXG5leHBvcnQgY2xhc3MgU2lkZWJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIGl0ZW1zOiBTaWRlYmFyR3JvdXBbXSA9IFtdO1xuICBASW5wdXQoKSBjb2xsYXBzZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgY2xhc3MgPSAnJztcblxuICAvKipcbiAgICogU3R5bGluZyB2YXJpYW50IGZvciBhY3RpdmUgaXRlbXMuXG4gICAqIC0gZGVmYXVsdDogU29saWQgcHJpbWFyeSBiYWNrZ3JvdW5kLCBsaWdodCB0ZXh0IChNYXRjaGVzIEJhZGdlIERlZmF1bHQpXG4gICAqIC0gc2Vjb25kYXJ5OiBTb2xpZCBzZWNvbmRhcnkgYmFja2dyb3VuZFxuICAgKiAtIGdob3N0OiBUcmFuc3BhcmVudCBiYWNrZ3JvdW5kLCBhY2NlbnQgdGV4dCAoU2hhZGNuIHN0YW5kYXJkKVxuICAgKiAtIG91dGxpbmU6IEJvcmRlcmVkXG4gICAqL1xuICBASW5wdXQoKSB2YXJpYW50OiAnZGVmYXVsdCcgfCAnc2Vjb25kYXJ5JyB8ICdnaG9zdCcgfCAnb3V0bGluZScgPSAnZGVmYXVsdCc7XG5cbiAgZXhwYW5kZWRQYXJlbnRzID0gbmV3IFNldDxzdHJpbmc+KCk7XG4gIGV4cGFuZGVkQ2hpbGRyZW4gPSBuZXcgU2V0PHN0cmluZz4oKTtcblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgY24gPSBjbjtcblxuICBnZXQgYWN0aXZlQ2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBjbihcbiAgICAgICd0cmFuc2l0aW9uLWNvbG9ycycsXG4gICAgICAvLyBEZWZhdWx0OiBTb2xpZCBQcmltYXJ5IChCYWRnZS1saWtlKSB3aXRoIGxpZ2h0ZXIgb3BhY2l0eSAoODAlIGluc3RlYWQgb2YgOTAlKVxuICAgICAgdGhpcy52YXJpYW50ID09PSAnZGVmYXVsdCcgJiYgJ2JnLXByaW1hcnkvODAgdGV4dC1wcmltYXJ5LWZvcmVncm91bmQgaG92ZXI6YmctcHJpbWFyeSBob3Zlcjp0ZXh0LXByaW1hcnktZm9yZWdyb3VuZCcsXG5cbiAgICAgIC8vIFNlY29uZGFyeTogU29saWQgU2Vjb25kYXJ5XG4gICAgICB0aGlzLnZhcmlhbnQgPT09ICdzZWNvbmRhcnknICYmICdiZy1zZWNvbmRhcnkgdGV4dC1zZWNvbmRhcnktZm9yZWdyb3VuZCBob3ZlcjpiZy1zZWNvbmRhcnkvODAnLFxuXG4gICAgICAvLyBHaG9zdDogU3VidGxlIGJhY2tncm91bmQgKFNpZGViYXIgc3RhbmRhcmQpXG4gICAgICB0aGlzLnZhcmlhbnQgPT09ICdnaG9zdCcgJiYgJ2JnLWFjY2VudCB0ZXh0LWFjY2VudC1mb3JlZ3JvdW5kJyxcblxuICAgICAgLy8gT3V0bGluZTogQm9yZGVyZWRcbiAgICAgIHRoaXMudmFyaWFudCA9PT0gJ291dGxpbmUnICYmICdib3JkZXIgYm9yZGVyLWJvcmRlciBiZy1iYWNrZ3JvdW5kIHRleHQtZm9yZWdyb3VuZCBob3ZlcjpiZy1hY2NlbnQgaG92ZXI6dGV4dC1hY2NlbnQtZm9yZWdyb3VuZCdcbiAgICApO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydjb2xsYXBzZWQnXSAmJiB0aGlzLmNvbGxhcHNlZCkge1xuICAgICAgdGhpcy5jb2xsYXBzZUFsbCgpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlc1snaXRlbXMnXSkge1xuICAgICAgdGhpcy5pbml0aWFsaXplU3RhdGUoKTtcbiAgICB9XG4gIH1cblxuICAvLyAtLS0gU1RBVEUgSU5JVCAtLS1cbiAgcHJpdmF0ZSBpbml0aWFsaXplU3RhdGUoKSB7XG4gICAgdGhpcy5jb2xsYXBzZUFsbCgpO1xuICAgIGlmICghdGhpcy5pdGVtcykgcmV0dXJuO1xuXG4gICAgdGhpcy5pdGVtcy5mb3JFYWNoKChncm91cCwgZ0luZGV4KSA9PiB7XG4gICAgICBncm91cC5pdGVtcy5mb3JFYWNoKChpdGVtLCBpSW5kZXgpID0+IHtcbiAgICAgICAgY29uc3QgcGFyZW50SWQgPSB0aGlzLmdldFBhcmVudElkKGdyb3VwLCBpdGVtLCBnSW5kZXgsIGlJbmRleCk7XG5cbiAgICAgICAgaWYgKGl0ZW0uZXhwYW5kZWQpIHtcbiAgICAgICAgICB0aGlzLmV4cGFuZGVkUGFyZW50cy5hZGQocGFyZW50SWQpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGl0ZW0uaXRlbXMpIHtcbiAgICAgICAgICBpdGVtLml0ZW1zLmZvckVhY2goKHN1Ykl0ZW0sIHNJbmRleCkgPT4ge1xuICAgICAgICAgICAgaWYgKHN1Ykl0ZW0uZXhwYW5kZWQpIHtcbiAgICAgICAgICAgICAgY29uc3QgY2hpbGRJZCA9IHRoaXMuZ2V0Q2hpbGRJZChncm91cCwgaXRlbSwgc3ViSXRlbSwgZ0luZGV4LCBpSW5kZXgsIHNJbmRleCk7XG4gICAgICAgICAgICAgIHRoaXMuZXhwYW5kZWRDaGlsZHJlbi5hZGQoY2hpbGRJZCk7XG4gICAgICAgICAgICAgIHRoaXMuZXhwYW5kZWRQYXJlbnRzLmFkZChwYXJlbnRJZCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLy8gLS0tIElEIEdFTkVSQVRPUlMgLS0tXG4gIGdldEdyb3VwSWQoZ3JvdXA6IFNpZGViYXJHcm91cCwgaW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgcmV0dXJuIGdyb3VwLmlkIHx8IGdyb3VwLnRpdGxlIHx8IGBnLSR7aW5kZXh9YDtcbiAgfVxuXG4gIGdldFBhcmVudElkKGdyb3VwOiBTaWRlYmFyR3JvdXAsIGl0ZW06IFNpZGViYXJJdGVtLCBnSW5kZXg6IG51bWJlciwgaUluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIGNvbnN0IGdyb3VwSWQgPSB0aGlzLmdldEdyb3VwSWQoZ3JvdXAsIGdJbmRleCk7XG4gICAgY29uc3QgaXRlbUlkID0gaXRlbS5pZCB8fCBpdGVtLnRpdGxlIHx8IGBwLSR7aUluZGV4fWA7XG4gICAgcmV0dXJuIGAke2dyb3VwSWR9X18ke2l0ZW1JZH1gO1xuICB9XG5cbiAgZ2V0Q2hpbGRJZChncm91cDogU2lkZWJhckdyb3VwLCBwYXJlbnQ6IFNpZGViYXJJdGVtLCBzdWJJdGVtOiBTaWRlYmFySXRlbSwgZ0luZGV4OiBudW1iZXIsIGlJbmRleDogbnVtYmVyLCBzSW5kZXg6IG51bWJlcik6IHN0cmluZyB7XG4gICAgY29uc3QgcGFyZW50SWQgPSB0aGlzLmdldFBhcmVudElkKGdyb3VwLCBwYXJlbnQsIGdJbmRleCwgaUluZGV4KTtcbiAgICBjb25zdCBzdWJJdGVtSWQgPSBzdWJJdGVtLmlkIHx8IHN1Ykl0ZW0udGl0bGUgfHwgYGMtJHtzSW5kZXh9YDtcbiAgICByZXR1cm4gYCR7cGFyZW50SWR9X18ke3N1Ykl0ZW1JZH1gO1xuICB9XG5cbiAgLy8gLS0tIEFDVElPTlMgLS0tXG4gIHRvZ2dsZVBhcmVudChncm91cDogU2lkZWJhckdyb3VwLCBpdGVtOiBTaWRlYmFySXRlbSwgZ0luZGV4OiBudW1iZXIsIGlJbmRleDogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuY29sbGFwc2VkKSByZXR1cm47XG4gICAgY29uc3QgaWQgPSB0aGlzLmdldFBhcmVudElkKGdyb3VwLCBpdGVtLCBnSW5kZXgsIGlJbmRleCk7XG5cbiAgICBjb25zdCBuZXdTZXQgPSBuZXcgU2V0KHRoaXMuZXhwYW5kZWRQYXJlbnRzKTtcbiAgICBpZiAobmV3U2V0LmhhcyhpZCkpIHtcbiAgICAgIG5ld1NldC5kZWxldGUoaWQpO1xuICAgIH0gZWxzZSB7XG4gICAgICBuZXdTZXQuYWRkKGlkKTtcbiAgICB9XG4gICAgdGhpcy5leHBhbmRlZFBhcmVudHMgPSBuZXdTZXQ7XG4gIH1cblxuICB0b2dnbGVDaGlsZChncm91cDogU2lkZWJhckdyb3VwLCBwYXJlbnQ6IFNpZGViYXJJdGVtLCBzdWJJdGVtOiBTaWRlYmFySXRlbSwgZ0luZGV4OiBudW1iZXIsIGlJbmRleDogbnVtYmVyLCBzSW5kZXg6IG51bWJlcikge1xuICAgIGNvbnN0IGlkID0gdGhpcy5nZXRDaGlsZElkKGdyb3VwLCBwYXJlbnQsIHN1Ykl0ZW0sIGdJbmRleCwgaUluZGV4LCBzSW5kZXgpO1xuXG4gICAgY29uc3QgbmV3U2V0ID0gbmV3IFNldCh0aGlzLmV4cGFuZGVkQ2hpbGRyZW4pO1xuICAgIGlmIChuZXdTZXQuaGFzKGlkKSkge1xuICAgICAgbmV3U2V0LmRlbGV0ZShpZCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIG5ld1NldC5hZGQoaWQpO1xuICAgIH1cbiAgICB0aGlzLmV4cGFuZGVkQ2hpbGRyZW4gPSBuZXdTZXQ7XG4gIH1cblxuICBwcml2YXRlIGNvbGxhcHNlQWxsKCkge1xuICAgIHRoaXMuZXhwYW5kZWRQYXJlbnRzID0gbmV3IFNldCgpO1xuICAgIHRoaXMuZXhwYW5kZWRDaGlsZHJlbiA9IG5ldyBTZXQoKTtcbiAgfVxuXG4gIC8vIC0tLSBURU1QTEFURSBIRUxQRVJTIC0tLVxuICBpc1BhcmVudEV4cGFuZGVkKGdyb3VwOiBTaWRlYmFyR3JvdXAsIGl0ZW06IFNpZGViYXJJdGVtLCBnSW5kZXg6IG51bWJlciwgaUluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRlZFBhcmVudHMuaGFzKHRoaXMuZ2V0UGFyZW50SWQoZ3JvdXAsIGl0ZW0sIGdJbmRleCwgaUluZGV4KSk7XG4gIH1cblxuICBpc0NoaWxkRXhwYW5kZWQoZ3JvdXA6IFNpZGViYXJHcm91cCwgcGFyZW50OiBTaWRlYmFySXRlbSwgc3ViSXRlbTogU2lkZWJhckl0ZW0sIGdJbmRleDogbnVtYmVyLCBpSW5kZXg6IG51bWJlciwgc0luZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5leHBhbmRlZENoaWxkcmVuLmhhcyh0aGlzLmdldENoaWxkSWQoZ3JvdXAsIHBhcmVudCwgc3ViSXRlbSwgZ0luZGV4LCBpSW5kZXgsIHNJbmRleCkpO1xuICB9XG59XG4iXX0=
|