@magicx-eng/ai-autocomplete-angular 0.12.0 → 0.13.1
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/README.md +34 -15
- package/esm2020/lib/ai-autocomplete/ai-autocomplete.component.mjs +3 -3
- package/esm2020/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.mjs +44 -5
- package/esm2020/lib/controller/ai-autocomplete.controller.mjs +3 -3
- package/esm2020/lib/internal/date-grid/date-grid.component.mjs +9 -3
- package/esm2020/lib/internal/layout/grid.component.mjs +10 -4
- package/esm2020/lib/internal/suggestion-grid/suggestion-grid.component.mjs +79 -18
- package/esm2020/lib/internal/suggestion-item/suggestion-item.component.mjs +25 -4
- package/esm2020/lib/shared/types.mjs +1 -1
- package/fesm2015/magicx-eng-ai-autocomplete-angular.mjs +165 -29
- package/fesm2015/magicx-eng-ai-autocomplete-angular.mjs.map +1 -1
- package/fesm2020/magicx-eng-ai-autocomplete-angular.mjs +162 -29
- package/fesm2020/magicx-eng-ai-autocomplete-angular.mjs.map +1 -1
- package/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.d.ts +17 -2
- package/lib/ai-autocomplete-dropdown/ai-autocomplete-dropdown.component.d.ts.map +1 -1
- package/lib/controller/ai-autocomplete.controller.d.ts +1 -1
- package/lib/controller/ai-autocomplete.controller.d.ts.map +1 -1
- package/lib/internal/date-grid/date-grid.component.d.ts +2 -0
- package/lib/internal/date-grid/date-grid.component.d.ts.map +1 -1
- package/lib/internal/layout/grid.component.d.ts +10 -2
- package/lib/internal/layout/grid.component.d.ts.map +1 -1
- package/lib/internal/suggestion-grid/suggestion-grid.component.d.ts +30 -9
- package/lib/internal/suggestion-grid/suggestion-grid.component.d.ts.map +1 -1
- package/lib/internal/suggestion-item/suggestion-item.component.d.ts +16 -2
- package/lib/internal/suggestion-item/suggestion-item.component.d.ts.map +1 -1
- package/lib/shared/types.d.ts +1 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CommonModule } from "@angular/common";
|
|
2
|
-
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, inject, Output, ViewEncapsulation, } from "@angular/core";
|
|
3
|
-
import {
|
|
2
|
+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, EventEmitter, HostListener, Input, inject, Output, ViewChild, ViewEncapsulation, } from "@angular/core";
|
|
3
|
+
import { isOptionsGridMobileViewport, measureOptionsGrid, needsOptionsGridMeasurement, optionEnterDelayMs, planOptionsGrid, } from "@magicx-eng/ai-autocomplete-vanilla";
|
|
4
4
|
import { GridComponent } from "../layout/grid.component";
|
|
5
5
|
import { SuggestionItemComponent } from "../suggestion-item/suggestion-item.component";
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
@@ -26,35 +26,91 @@ export class SuggestionGridComponent {
|
|
|
26
26
|
* from the first one instead of from the previous list's scroll offset.
|
|
27
27
|
*/
|
|
28
28
|
this.groupKey = "";
|
|
29
|
+
/**
|
|
30
|
+
* Which side of the input the dropdown opens on. The rows' entrance starts
|
|
31
|
+
* from the input's side outward, so "above" reverses the order.
|
|
32
|
+
*/
|
|
33
|
+
this.optionsPosition = "below";
|
|
29
34
|
this.select = new EventEmitter();
|
|
30
35
|
this.highlight = new EventEmitter();
|
|
31
36
|
this.cdr = inject(ChangeDetectorRef);
|
|
32
|
-
|
|
37
|
+
/**
|
|
38
|
+
* The measured layout plan. Starts as the measurement-free baseline (one
|
|
39
|
+
* column); after each view update the rendered rows are measured and the
|
|
40
|
+
* plan upgrades to two columns when they provably fit — same two-pass the
|
|
41
|
+
* React grid does with its layout effect, all through `planOptionsGrid`.
|
|
42
|
+
*/
|
|
43
|
+
this.plan = planOptionsGrid(0, false, null, null);
|
|
44
|
+
this.needsMeasure = true;
|
|
45
|
+
/**
|
|
46
|
+
* The group is part of the identity: a new suggestion's options are new
|
|
47
|
+
* rows and get the entrance animation even when one spells the same as a
|
|
48
|
+
* row already on screen.
|
|
49
|
+
*/
|
|
50
|
+
this.trackByOptionText = (_, opt) => `${this.groupKey}\0${opt.text}`;
|
|
33
51
|
}
|
|
34
|
-
//
|
|
35
|
-
//
|
|
52
|
+
// Re-measure when the viewport changes (breakpoint or width both matter to
|
|
53
|
+
// the two-column fit).
|
|
36
54
|
onResize() {
|
|
55
|
+
this.needsMeasure = true;
|
|
37
56
|
this.cdr.markForCheck();
|
|
38
57
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
58
|
+
ngOnChanges(changes) {
|
|
59
|
+
// Only the inputs the plan depends on reset it — activeIndex changes on
|
|
60
|
+
// every arrow key and must not knock a measured two-column grid back to
|
|
61
|
+
// the baseline (the React grid's layout effect excludes it the same way).
|
|
62
|
+
if (!changes["options"] && !changes["loading"])
|
|
63
|
+
return;
|
|
64
|
+
this.needsMeasure = true;
|
|
65
|
+
// The pre-measure baseline for the new inputs, so the first paint is the
|
|
66
|
+
// same one-column layout the other packages start from.
|
|
67
|
+
this.plan = planOptionsGrid(this.options.length, isOptionsGridMobileViewport(), null, null);
|
|
68
|
+
}
|
|
69
|
+
ngAfterViewChecked() {
|
|
70
|
+
if (!this.needsMeasure)
|
|
71
|
+
return;
|
|
72
|
+
this.needsMeasure = false;
|
|
73
|
+
const isMobile = isOptionsGridMobileViewport();
|
|
74
|
+
const grid = this.gridComp?.gridRef?.nativeElement;
|
|
75
|
+
// Measuring clones every row and forces a layout — skip it whenever the
|
|
76
|
+
// plan would ignore the result (mobile, fewer than five options).
|
|
77
|
+
const shouldMeasure = grid && !this.loading && needsOptionsGridMeasurement(this.options.length, isMobile);
|
|
78
|
+
const measured = shouldMeasure ? measureOptionsGrid(grid) : null;
|
|
79
|
+
const next = planOptionsGrid(this.options.length, isMobile, measured?.rowWidths ?? null, measured?.gridWidth ?? null);
|
|
80
|
+
const unchanged = next.template === this.plan.template &&
|
|
81
|
+
next.maxHeight === this.plan.maxHeight &&
|
|
82
|
+
next.scrollHintIndices.join() === this.plan.scrollHintIndices.join();
|
|
83
|
+
if (unchanged)
|
|
84
|
+
return;
|
|
85
|
+
// The view was already checked this cycle — apply the measured plan in a
|
|
86
|
+
// fresh microtask so OnPush picks it up without an
|
|
87
|
+
// ExpressionChangedAfterItHasBeenChecked error.
|
|
88
|
+
queueMicrotask(() => {
|
|
89
|
+
this.plan = next;
|
|
90
|
+
this.cdr.markForCheck();
|
|
91
|
+
});
|
|
45
92
|
}
|
|
46
|
-
|
|
47
|
-
return this.
|
|
93
|
+
isScrollHint(index) {
|
|
94
|
+
return !this.loading && this.plan.scrollHintIndices.includes(index);
|
|
48
95
|
}
|
|
49
|
-
|
|
50
|
-
|
|
96
|
+
/**
|
|
97
|
+
* Start delay of row `index`'s entrance — each row rises in a beat after
|
|
98
|
+
* the one nearer the input. Skeleton rows fade in together (they're
|
|
99
|
+
* placeholders, not content arriving).
|
|
100
|
+
*/
|
|
101
|
+
enterDelayMs(index) {
|
|
102
|
+
if (this.loading)
|
|
103
|
+
return 0;
|
|
104
|
+
// Across the columns the measured plan settled on — the two-column
|
|
105
|
+
// upgrade only decides that after the rows exist.
|
|
106
|
+
return optionEnterDelayMs(index, this.plan.cols, this.options.length, this.optionsPosition);
|
|
51
107
|
}
|
|
52
108
|
}
|
|
53
109
|
SuggestionGridComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionGridComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
54
|
-
SuggestionGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SuggestionGridComponent, isStandalone: true, selector: "aia-suggestion-grid", inputs: { options: "options", activeIndex: "activeIndex", listboxId: "listboxId", loading: "loading", groupKey: "groupKey" }, outputs: { select: "select", highlight: "highlight" }, host: { listeners: { "window:resize": "onResize()" } }, ngImport: i0, template: "<!-- max=\"1fr\": columns share out the full width, so a lone column spans the\n whole options box instead of stopping at 250px. -->\n<aia-grid\n min=\"250px\"\n max=\"1fr\"\n gap=\"0\"\n [scroll]=\"true\"\n [scrollResetKey]=\"groupKey\"\n [
|
|
110
|
+
SuggestionGridComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SuggestionGridComponent, isStandalone: true, selector: "aia-suggestion-grid", inputs: { options: "options", activeIndex: "activeIndex", listboxId: "listboxId", loading: "loading", groupKey: "groupKey", optionsPosition: "optionsPosition" }, outputs: { select: "select", highlight: "highlight" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "gridComp", first: true, predicate: GridComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<!-- max=\"1fr\": columns share out the full width, so a lone column spans the\n whole options box instead of stopping at 250px. -->\n<aia-grid\n min=\"250px\"\n max=\"1fr\"\n gap=\"0\"\n [scroll]=\"true\"\n [scrollResetKey]=\"groupKey\"\n [template]=\"plan.template\"\n [maxHeight]=\"plan.maxHeight\"\n [group]=\"groupKey\"\n>\n <aia-suggestion-item\n *ngFor=\"let option of options; trackBy: trackByOptionText; let i = index\"\n [option]=\"option\"\n [isHighlighted]=\"i === activeIndex\"\n [id]=\"listboxId + '-option-' + i\"\n [loading]=\"loading\"\n [scrollHint]=\"isScrollHint(i)\"\n [enterDelayMs]=\"enterDelayMs(i)\"\n (select)=\"select.emit($event)\"\n (highlight)=\"highlight.emit(i)\"\n ></aia-suggestion-item>\n</aia-grid>\n", dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: GridComponent, selector: "aia-grid", inputs: ["min", "max", "gap", "scroll", "maxHeight", "scrollResetKey", "cols", "template", "group"] }, { kind: "component", type: SuggestionItemComponent, selector: "aia-suggestion-item", inputs: ["option", "isHighlighted", "id", "loading", "scrollHint", "enterDelayMs"], outputs: ["select", "highlight"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
55
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionGridComponent, decorators: [{
|
|
56
112
|
type: Component,
|
|
57
|
-
args: [{ selector: "aia-suggestion-grid", standalone: true, imports: [CommonModule, GridComponent, SuggestionItemComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<!-- max=\"1fr\": columns share out the full width, so a lone column spans the\n whole options box instead of stopping at 250px. -->\n<aia-grid\n min=\"250px\"\n max=\"1fr\"\n gap=\"0\"\n [scroll]=\"true\"\n [scrollResetKey]=\"groupKey\"\n [
|
|
113
|
+
args: [{ selector: "aia-suggestion-grid", standalone: true, imports: [CommonModule, GridComponent, SuggestionItemComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<!-- max=\"1fr\": columns share out the full width, so a lone column spans the\n whole options box instead of stopping at 250px. -->\n<aia-grid\n min=\"250px\"\n max=\"1fr\"\n gap=\"0\"\n [scroll]=\"true\"\n [scrollResetKey]=\"groupKey\"\n [template]=\"plan.template\"\n [maxHeight]=\"plan.maxHeight\"\n [group]=\"groupKey\"\n>\n <aia-suggestion-item\n *ngFor=\"let option of options; trackBy: trackByOptionText; let i = index\"\n [option]=\"option\"\n [isHighlighted]=\"i === activeIndex\"\n [id]=\"listboxId + '-option-' + i\"\n [loading]=\"loading\"\n [scrollHint]=\"isScrollHint(i)\"\n [enterDelayMs]=\"enterDelayMs(i)\"\n (select)=\"select.emit($event)\"\n (highlight)=\"highlight.emit(i)\"\n ></aia-suggestion-item>\n</aia-grid>\n" }]
|
|
58
114
|
}], propDecorators: { options: [{
|
|
59
115
|
type: Input
|
|
60
116
|
}], activeIndex: [{
|
|
@@ -65,12 +121,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
65
121
|
type: Input
|
|
66
122
|
}], groupKey: [{
|
|
67
123
|
type: Input
|
|
124
|
+
}], optionsPosition: [{
|
|
125
|
+
type: Input
|
|
68
126
|
}], select: [{
|
|
69
127
|
type: Output
|
|
70
128
|
}], highlight: [{
|
|
71
129
|
type: Output
|
|
130
|
+
}], gridComp: [{
|
|
131
|
+
type: ViewChild,
|
|
132
|
+
args: [GridComponent, { static: false }]
|
|
72
133
|
}], onResize: [{
|
|
73
134
|
type: HostListener,
|
|
74
135
|
args: ["window:resize"]
|
|
75
136
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvaW50ZXJuYWwvc3VnZ2VzdGlvbi1ncmlkL3N1Z2dlc3Rpb24tZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3N1Z2dlc3Rpb24tZ3JpZC9zdWdnZXN0aW9uLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wsd0JBQXdCLEVBQ3hCLDJCQUEyQixHQUU1QixNQUFNLHFDQUFxQyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQzs7O0FBRXZGOzs7Ozs7OztHQVFHO0FBU0gsTUFBTSxPQUFPLHVCQUF1QjtJQVJwQztRQVNXLFlBQU8sR0FBdUIsRUFBRSxDQUFDO1FBQ2pDLGdCQUFXLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakIsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUNmLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDekI7Ozs7V0FJRztRQUNNLGFBQVEsR0FBRyxFQUFFLENBQUM7UUFFSixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQW9CLENBQUM7UUFDOUMsY0FBUyxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFFekMsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBd0JqRCxzQkFBaUIsR0FBRyxDQUFDLENBQVMsRUFBRSxHQUFxQixFQUFVLEVBQUUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDO0tBQzVFO0lBdkJDLHVFQUF1RTtJQUN2RSw4RUFBOEU7SUFFOUUsUUFBUTtRQUNOLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQVksTUFBTTtRQUNoQixPQUFPLHdCQUF3QixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLDJCQUEyQixFQUFFLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQztJQUMvQixDQUFDOztxSEFyQ1UsdUJBQXVCO3lHQUF2Qix1QkFBdUIsNFRDckNwQywycEJBcUJBLDJDRFdZLFlBQVksNEpBQUUsYUFBYSxxSUFBRSx1QkFBdUI7NEZBS25ELHVCQUF1QjtrQkFSbkMsU0FBUzsrQkFDRSxxQkFBcUIsY0FDbkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLGFBQWEsRUFBRSx1QkFBdUIsQ0FBQyxtQkFDOUMsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkFJNUIsT0FBTztzQkFBZixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTUcsUUFBUTtzQkFBaEIsS0FBSztnQkFFYSxNQUFNO3NCQUF4QixNQUFNO2dCQUNZLFNBQVM7c0JBQTNCLE1BQU07Z0JBT1AsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBpbmplY3QsXG4gIE91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1xuICBjb21wdXRlT3B0aW9uc0dyaWRMYXlvdXQsXG4gIGlzT3B0aW9uc0dyaWRNb2JpbGVWaWV3cG9ydCxcbiAgdHlwZSBTdWdnZXN0aW9uT3B0aW9uLFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcbmltcG9ydCB7IEdyaWRDb21wb25lbnQgfSBmcm9tIFwiLi4vbGF5b3V0L2dyaWQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gXCIuLi9zdWdnZXN0aW9uLWl0ZW0vc3VnZ2VzdGlvbi1pdGVtLmNvbXBvbmVudFwiO1xuXG4vKipcbiAqIEludGVybmFsIGdyaWQgb2Ygc3VnZ2VzdGlvbiBvcHRpb25zLiBNaXJyb3JzXG4gKiBgcGFja2FnZXMvcmVhY3Qvc3JjL2NvbXBvbmVudHMvU3VnZ2VzdGlvbkdyaWQudHN4YCDigJQgYSB0aGluIHdyYXBwZXIgb3ZlciB0aGVcbiAqIGBHcmlkYCBsYXlvdXQgcHJpbWl0aXZlICh3aGljaCBvd25zIHRoZSBhdXRvLWZpdCBjb2x1bW5zIGFuZCB0aGVcbiAqIGNhcHBlZC1oZWlnaHQgc2Nyb2xsKS4gSXQgb25seSB3aXJlcyBlYWNoIG9wdGlvbiB0byBpdHNcbiAqIHNlbGVjdC9oaWdobGlnaHQgaGFuZGxlcnMgYW5kIGxpc3Rib3gtc2NvcGVkIGlkLlxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYWlhLXN1Z2dlc3Rpb24tZ3JpZFwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBHcmlkQ29tcG9uZW50LCBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N1Z2dlc3Rpb24tZ3JpZC5jb21wb25lbnQuaHRtbFwiLFxufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uR3JpZENvbXBvbmVudCB7XG4gIEBJbnB1dCgpIG9wdGlvbnM6IFN1Z2dlc3Rpb25PcHRpb25bXSA9IFtdO1xuICBASW5wdXQoKSBhY3RpdmVJbmRleCA9IC0xO1xuICBASW5wdXQoKSBsaXN0Ym94SWQgPSBcIlwiO1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIC8qKlxuICAgKiBJZGVudGl0eSBvZiB0aGUgc3VnZ2VzdGlvbiB0aGVzZSBvcHRpb25zIGJlbG9uZyB0by4gV2hlbiBpdCBjaGFuZ2VzIHRoZVxuICAgKiBncmlkIHNjcm9sbHMgYmFjayB0byB0aGUgdG9wLCBzbyB0aGUgbmV4dCBwYXJhbWV0ZXIncyBvcHRpb25zIGFyZSByZWFkXG4gICAqIGZyb20gdGhlIGZpcnN0IG9uZSBpbnN0ZWFkIG9mIGZyb20gdGhlIHByZXZpb3VzIGxpc3QncyBzY3JvbGwgb2Zmc2V0LlxuICAgKi9cbiAgQElucHV0KCkgZ3JvdXBLZXkgPSBcIlwiO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPFN1Z2dlc3Rpb25PcHRpb24+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBoaWdobGlnaHQgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNkciA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgLy8gUmVjb21wdXRlIHRoZSByZXNwb25zaXZlIGxheW91dCB3aGVuIHRoZSB2aWV3cG9ydCBjcm9zc2VzIHRoZSBtb2JpbGVcbiAgLy8gYnJlYWtwb2ludCAoT25QdXNoIGdldHRlcnMgb25seSByZS1ydW4gd2hlbiBjaGFuZ2UgZGV0ZWN0aW9uIGlzIHRyaWdnZXJlZCkuXG4gIEBIb3N0TGlzdGVuZXIoXCJ3aW5kb3c6cmVzaXplXCIpXG4gIG9uUmVzaXplKCk6IHZvaWQge1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJvd3MvY29sdW1ucyBwb2xpY3kg4oCUIG93bmVkIGJ5IHRoZSBjb3JlIHNvIHZhbmlsbGEsIFJlYWN0IGFuZCBBbmd1bGFyIGFsbFxuICAgKiBsYXkgdGhlIG9wdGlvbnMgZ3JpZCBvdXQgaWRlbnRpY2FsbHkuIFNlZSBgY29tcHV0ZU9wdGlvbnNHcmlkTGF5b3V0YC5cbiAgICovXG4gIHByaXZhdGUgZ2V0IGxheW91dCgpIHtcbiAgICByZXR1cm4gY29tcHV0ZU9wdGlvbnNHcmlkTGF5b3V0KHRoaXMub3B0aW9ucy5sZW5ndGgsIGlzT3B0aW9uc0dyaWRNb2JpbGVWaWV3cG9ydCgpKTtcbiAgfVxuXG4gIGdldCBncmlkQ29scygpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLmxheW91dC5jb2xzO1xuICB9XG4gIGdldCBncmlkTWF4SGVpZ2h0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMubGF5b3V0Lm1heEhlaWdodDtcbiAgfVxuXG4gIHRyYWNrQnlPcHRpb25UZXh0ID0gKF86IG51bWJlciwgb3B0OiBTdWdnZXN0aW9uT3B0aW9uKTogc3RyaW5nID0+IG9wdC50ZXh0O1xufVxuIiwiPCEtLSBtYXg9XCIxZnJcIjogY29sdW1ucyBzaGFyZSBvdXQgdGhlIGZ1bGwgd2lkdGgsIHNvIGEgbG9uZSBjb2x1bW4gc3BhbnMgdGhlXG4gICAgIHdob2xlIG9wdGlvbnMgYm94IGluc3RlYWQgb2Ygc3RvcHBpbmcgYXQgMjUwcHguIC0tPlxuPGFpYS1ncmlkXG4gIG1pbj1cIjI1MHB4XCJcbiAgbWF4PVwiMWZyXCJcbiAgZ2FwPVwiMFwiXG4gIFtzY3JvbGxdPVwidHJ1ZVwiXG4gIFtzY3JvbGxSZXNldEtleV09XCJncm91cEtleVwiXG4gIFtjb2xzXT1cImdyaWRDb2xzXCJcbiAgW21heEhlaWdodF09XCJncmlkTWF4SGVpZ2h0XCJcbj5cbiAgPGFpYS1zdWdnZXN0aW9uLWl0ZW1cbiAgICAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIG9wdGlvbnM7IHRyYWNrQnk6IHRyYWNrQnlPcHRpb25UZXh0OyBsZXQgaSA9IGluZGV4XCJcbiAgICBbb3B0aW9uXT1cIm9wdGlvblwiXG4gICAgW2lzSGlnaGxpZ2h0ZWRdPVwiaSA9PT0gYWN0aXZlSW5kZXhcIlxuICAgIFtpZF09XCJsaXN0Ym94SWQgKyAnLW9wdGlvbi0nICsgaVwiXG4gICAgW2xvYWRpbmddPVwibG9hZGluZ1wiXG4gICAgKHNlbGVjdCk9XCJzZWxlY3QuZW1pdCgkZXZlbnQpXCJcbiAgICAoaGlnaGxpZ2h0KT1cImhpZ2hsaWdodC5lbWl0KGkpXCJcbiAgPjwvYWlhLXN1Z2dlc3Rpb24taXRlbT5cbjwvYWlhLWdyaWQ+XG4iXX0=
|
|
137
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi1ncmlkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvaW50ZXJuYWwvc3VnZ2VzdGlvbi1ncmlkL3N1Z2dlc3Rpb24tZ3JpZC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3N1Z2dlc3Rpb24tZ3JpZC9zdWdnZXN0aW9uLWdyaWQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBRU4sTUFBTSxFQUVOLFNBQVMsRUFDVCxpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNMLDJCQUEyQixFQUMzQixrQkFBa0IsRUFDbEIsMkJBQTJCLEVBRTNCLGtCQUFrQixFQUNsQixlQUFlLEdBRWhCLE1BQU0scUNBQXFDLENBQUM7QUFDN0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3pELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhDQUE4QyxDQUFDOzs7QUFFdkY7Ozs7Ozs7O0dBUUc7QUFTSCxNQUFNLE9BQU8sdUJBQXVCO0lBUnBDO1FBU1csWUFBTyxHQUF1QixFQUFFLENBQUM7UUFDakMsZ0JBQVcsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqQixjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUN6Qjs7OztXQUlHO1FBQ00sYUFBUSxHQUFHLEVBQUUsQ0FBQztRQUN2Qjs7O1dBR0c7UUFDTSxvQkFBZSxHQUFzQixPQUFPLENBQUM7UUFFbkMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBQzlDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBRXpDLFFBQUcsR0FBRyxNQUFNLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUlqRDs7Ozs7V0FLRztRQUNILFNBQUksR0FBb0IsZUFBZSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ3RELGlCQUFZLEdBQUcsSUFBSSxDQUFDO1FBbUU1Qjs7OztXQUlHO1FBQ0gsc0JBQWlCLEdBQUcsQ0FBQyxDQUFTLEVBQUUsR0FBcUIsRUFBVSxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxLQUFLLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztLQUNuRztJQXZFQywyRUFBMkU7SUFDM0UsdUJBQXVCO0lBRXZCLFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQztRQUN6QixJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxXQUFXLENBQUMsT0FBc0I7UUFDaEMsd0VBQXdFO1FBQ3hFLHdFQUF3RTtRQUN4RSwwRUFBMEU7UUFDMUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUM7WUFBRSxPQUFPO1FBQ3ZELElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLHlFQUF5RTtRQUN6RSx3REFBd0Q7UUFDeEQsSUFBSSxDQUFDLElBQUksR0FBRyxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsMkJBQTJCLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDOUYsQ0FBQztJQUVELGtCQUFrQjtRQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVk7WUFBRSxPQUFPO1FBQy9CLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO1FBQzFCLE1BQU0sUUFBUSxHQUFHLDJCQUEyQixFQUFFLENBQUM7UUFDL0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxPQUFPLEVBQUUsYUFBYSxDQUFDO1FBQ25ELHdFQUF3RTtRQUN4RSxrRUFBa0U7UUFDbEUsTUFBTSxhQUFhLEdBQ2pCLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksMkJBQTJCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDdEYsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQ2pFLE1BQU0sSUFBSSxHQUFHLGVBQWUsQ0FDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQ25CLFFBQVEsRUFDUixRQUFRLEVBQUUsU0FBUyxJQUFJLElBQUksRUFDM0IsUUFBUSxFQUFFLFNBQVMsSUFBSSxJQUFJLENBQzVCLENBQUM7UUFDRixNQUFNLFNBQVMsR0FDYixJQUFJLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUNwQyxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUztZQUN0QyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2RSxJQUFJLFNBQVM7WUFBRSxPQUFPO1FBQ3RCLHlFQUF5RTtRQUN6RSxtREFBbUQ7UUFDbkQsZ0RBQWdEO1FBQ2hELGNBQWMsQ0FBQyxHQUFHLEVBQUU7WUFDbEIsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7WUFDakIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZLENBQUMsS0FBYTtRQUN4QixPQUFPLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFlBQVksQ0FBQyxLQUFhO1FBQ3hCLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPLENBQUMsQ0FBQztRQUMzQixtRUFBbUU7UUFDbkUsa0RBQWtEO1FBQ2xELE9BQU8sa0JBQWtCLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM5RixDQUFDOztxSEFoR1UsdUJBQXVCO3lHQUF2Qix1QkFBdUIsMFlBc0J2QixhQUFhLHFFQ25FMUIsMndCQXdCQSwyQ0RnQlksWUFBWSw0SkFBRSxhQUFhLDBKQUFFLHVCQUF1Qjs0RkFLbkQsdUJBQXVCO2tCQVJuQyxTQUFTOytCQUNFLHFCQUFxQixjQUNuQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsYUFBYSxFQUFFLHVCQUF1QixDQUFDLG1CQUM5Qyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzhCQUk1QixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFNRyxRQUFRO3NCQUFoQixLQUFLO2dCQUtHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRWEsTUFBTTtzQkFBeEIsTUFBTTtnQkFDWSxTQUFTO3NCQUEzQixNQUFNO2dCQUk4QyxRQUFRO3NCQUE1RCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBYzNDLFFBQVE7c0JBRFAsWUFBWTt1QkFBQyxlQUFlIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSBcIkBhbmd1bGFyL2NvbW1vblwiO1xuaW1wb3J0IHtcbiAgdHlwZSBBZnRlclZpZXdDaGVja2VkLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBIb3N0TGlzdGVuZXIsXG4gIElucHV0LFxuICBpbmplY3QsXG4gIHR5cGUgT25DaGFuZ2VzLFxuICBPdXRwdXQsXG4gIHR5cGUgU2ltcGxlQ2hhbmdlcyxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIGlzT3B0aW9uc0dyaWRNb2JpbGVWaWV3cG9ydCxcbiAgbWVhc3VyZU9wdGlvbnNHcmlkLFxuICBuZWVkc09wdGlvbnNHcmlkTWVhc3VyZW1lbnQsXG4gIHR5cGUgT3B0aW9uc0dyaWRQbGFuLFxuICBvcHRpb25FbnRlckRlbGF5TXMsXG4gIHBsYW5PcHRpb25zR3JpZCxcbiAgdHlwZSBTdWdnZXN0aW9uT3B0aW9uLFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcbmltcG9ydCB7IEdyaWRDb21wb25lbnQgfSBmcm9tIFwiLi4vbGF5b3V0L2dyaWQuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudCB9IGZyb20gXCIuLi9zdWdnZXN0aW9uLWl0ZW0vc3VnZ2VzdGlvbi1pdGVtLmNvbXBvbmVudFwiO1xuXG4vKipcbiAqIEludGVybmFsIGdyaWQgb2Ygc3VnZ2VzdGlvbiBvcHRpb25zLiBNaXJyb3JzXG4gKiBgcGFja2FnZXMvcmVhY3Qvc3JjL2NvbXBvbmVudHMvU3VnZ2VzdGlvbkdyaWQudHN4YCDigJQgYSB0aGluIHdyYXBwZXIgb3ZlciB0aGVcbiAqIGBHcmlkYCBsYXlvdXQgcHJpbWl0aXZlICh3aGljaCBvd25zIHRoZSBhdXRvLWZpdCBjb2x1bW5zIGFuZCB0aGVcbiAqIGNhcHBlZC1oZWlnaHQgc2Nyb2xsKS4gSXQgb25seSB3aXJlcyBlYWNoIG9wdGlvbiB0byBpdHNcbiAqIHNlbGVjdC9oaWdobGlnaHQgaGFuZGxlcnMgYW5kIGxpc3Rib3gtc2NvcGVkIGlkLlxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYWlhLXN1Z2dlc3Rpb24tZ3JpZFwiLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBHcmlkQ29tcG9uZW50LCBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N1Z2dlc3Rpb24tZ3JpZC5jb21wb25lbnQuaHRtbFwiLFxufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uR3JpZENvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3Q2hlY2tlZCB7XG4gIEBJbnB1dCgpIG9wdGlvbnM6IFN1Z2dlc3Rpb25PcHRpb25bXSA9IFtdO1xuICBASW5wdXQoKSBhY3RpdmVJbmRleCA9IC0xO1xuICBASW5wdXQoKSBsaXN0Ym94SWQgPSBcIlwiO1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIC8qKlxuICAgKiBJZGVudGl0eSBvZiB0aGUgc3VnZ2VzdGlvbiB0aGVzZSBvcHRpb25zIGJlbG9uZyB0by4gV2hlbiBpdCBjaGFuZ2VzIHRoZVxuICAgKiBncmlkIHNjcm9sbHMgYmFjayB0byB0aGUgdG9wLCBzbyB0aGUgbmV4dCBwYXJhbWV0ZXIncyBvcHRpb25zIGFyZSByZWFkXG4gICAqIGZyb20gdGhlIGZpcnN0IG9uZSBpbnN0ZWFkIG9mIGZyb20gdGhlIHByZXZpb3VzIGxpc3QncyBzY3JvbGwgb2Zmc2V0LlxuICAgKi9cbiAgQElucHV0KCkgZ3JvdXBLZXkgPSBcIlwiO1xuICAvKipcbiAgICogV2hpY2ggc2lkZSBvZiB0aGUgaW5wdXQgdGhlIGRyb3Bkb3duIG9wZW5zIG9uLiBUaGUgcm93cycgZW50cmFuY2Ugc3RhcnRzXG4gICAqIGZyb20gdGhlIGlucHV0J3Mgc2lkZSBvdXR3YXJkLCBzbyBcImFib3ZlXCIgcmV2ZXJzZXMgdGhlIG9yZGVyLlxuICAgKi9cbiAgQElucHV0KCkgb3B0aW9uc1Bvc2l0aW9uOiBcImFib3ZlXCIgfCBcImJlbG93XCIgPSBcImJlbG93XCI7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8U3VnZ2VzdGlvbk9wdGlvbj4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGhpZ2hsaWdodCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcblxuICBAVmlld0NoaWxkKEdyaWRDb21wb25lbnQsIHsgc3RhdGljOiBmYWxzZSB9KSBwcml2YXRlIGdyaWRDb21wPzogR3JpZENvbXBvbmVudDtcblxuICAvKipcbiAgICogVGhlIG1lYXN1cmVkIGxheW91dCBwbGFuLiBTdGFydHMgYXMgdGhlIG1lYXN1cmVtZW50LWZyZWUgYmFzZWxpbmUgKG9uZVxuICAgKiBjb2x1bW4pOyBhZnRlciBlYWNoIHZpZXcgdXBkYXRlIHRoZSByZW5kZXJlZCByb3dzIGFyZSBtZWFzdXJlZCBhbmQgdGhlXG4gICAqIHBsYW4gdXBncmFkZXMgdG8gdHdvIGNvbHVtbnMgd2hlbiB0aGV5IHByb3ZhYmx5IGZpdCDigJQgc2FtZSB0d28tcGFzcyB0aGVcbiAgICogUmVhY3QgZ3JpZCBkb2VzIHdpdGggaXRzIGxheW91dCBlZmZlY3QsIGFsbCB0aHJvdWdoIGBwbGFuT3B0aW9uc0dyaWRgLlxuICAgKi9cbiAgcGxhbjogT3B0aW9uc0dyaWRQbGFuID0gcGxhbk9wdGlvbnNHcmlkKDAsIGZhbHNlLCBudWxsLCBudWxsKTtcbiAgcHJpdmF0ZSBuZWVkc01lYXN1cmUgPSB0cnVlO1xuXG4gIC8vIFJlLW1lYXN1cmUgd2hlbiB0aGUgdmlld3BvcnQgY2hhbmdlcyAoYnJlYWtwb2ludCBvciB3aWR0aCBib3RoIG1hdHRlciB0b1xuICAvLyB0aGUgdHdvLWNvbHVtbiBmaXQpLlxuICBASG9zdExpc3RlbmVyKFwid2luZG93OnJlc2l6ZVwiKVxuICBvblJlc2l6ZSgpOiB2b2lkIHtcbiAgICB0aGlzLm5lZWRzTWVhc3VyZSA9IHRydWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgLy8gT25seSB0aGUgaW5wdXRzIHRoZSBwbGFuIGRlcGVuZHMgb24gcmVzZXQgaXQg4oCUIGFjdGl2ZUluZGV4IGNoYW5nZXMgb25cbiAgICAvLyBldmVyeSBhcnJvdyBrZXkgYW5kIG11c3Qgbm90IGtub2NrIGEgbWVhc3VyZWQgdHdvLWNvbHVtbiBncmlkIGJhY2sgdG9cbiAgICAvLyB0aGUgYmFzZWxpbmUgKHRoZSBSZWFjdCBncmlkJ3MgbGF5b3V0IGVmZmVjdCBleGNsdWRlcyBpdCB0aGUgc2FtZSB3YXkpLlxuICAgIGlmICghY2hhbmdlc1tcIm9wdGlvbnNcIl0gJiYgIWNoYW5nZXNbXCJsb2FkaW5nXCJdKSByZXR1cm47XG4gICAgdGhpcy5uZWVkc01lYXN1cmUgPSB0cnVlO1xuICAgIC8vIFRoZSBwcmUtbWVhc3VyZSBiYXNlbGluZSBmb3IgdGhlIG5ldyBpbnB1dHMsIHNvIHRoZSBmaXJzdCBwYWludCBpcyB0aGVcbiAgICAvLyBzYW1lIG9uZS1jb2x1bW4gbGF5b3V0IHRoZSBvdGhlciBwYWNrYWdlcyBzdGFydCBmcm9tLlxuICAgIHRoaXMucGxhbiA9IHBsYW5PcHRpb25zR3JpZCh0aGlzLm9wdGlvbnMubGVuZ3RoLCBpc09wdGlvbnNHcmlkTW9iaWxlVmlld3BvcnQoKSwgbnVsbCwgbnVsbCk7XG4gIH1cblxuICBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLm5lZWRzTWVhc3VyZSkgcmV0dXJuO1xuICAgIHRoaXMubmVlZHNNZWFzdXJlID0gZmFsc2U7XG4gICAgY29uc3QgaXNNb2JpbGUgPSBpc09wdGlvbnNHcmlkTW9iaWxlVmlld3BvcnQoKTtcbiAgICBjb25zdCBncmlkID0gdGhpcy5ncmlkQ29tcD8uZ3JpZFJlZj8ubmF0aXZlRWxlbWVudDtcbiAgICAvLyBNZWFzdXJpbmcgY2xvbmVzIGV2ZXJ5IHJvdyBhbmQgZm9yY2VzIGEgbGF5b3V0IOKAlCBza2lwIGl0IHdoZW5ldmVyIHRoZVxuICAgIC8vIHBsYW4gd291bGQgaWdub3JlIHRoZSByZXN1bHQgKG1vYmlsZSwgZmV3ZXIgdGhhbiBmaXZlIG9wdGlvbnMpLlxuICAgIGNvbnN0IHNob3VsZE1lYXN1cmUgPVxuICAgICAgZ3JpZCAmJiAhdGhpcy5sb2FkaW5nICYmIG5lZWRzT3B0aW9uc0dyaWRNZWFzdXJlbWVudCh0aGlzLm9wdGlvbnMubGVuZ3RoLCBpc01vYmlsZSk7XG4gICAgY29uc3QgbWVhc3VyZWQgPSBzaG91bGRNZWFzdXJlID8gbWVhc3VyZU9wdGlvbnNHcmlkKGdyaWQpIDogbnVsbDtcbiAgICBjb25zdCBuZXh0ID0gcGxhbk9wdGlvbnNHcmlkKFxuICAgICAgdGhpcy5vcHRpb25zLmxlbmd0aCxcbiAgICAgIGlzTW9iaWxlLFxuICAgICAgbWVhc3VyZWQ/LnJvd1dpZHRocyA/PyBudWxsLFxuICAgICAgbWVhc3VyZWQ/LmdyaWRXaWR0aCA/PyBudWxsLFxuICAgICk7XG4gICAgY29uc3QgdW5jaGFuZ2VkID1cbiAgICAgIG5leHQudGVtcGxhdGUgPT09IHRoaXMucGxhbi50ZW1wbGF0ZSAmJlxuICAgICAgbmV4dC5tYXhIZWlnaHQgPT09IHRoaXMucGxhbi5tYXhIZWlnaHQgJiZcbiAgICAgIG5leHQuc2Nyb2xsSGludEluZGljZXMuam9pbigpID09PSB0aGlzLnBsYW4uc2Nyb2xsSGludEluZGljZXMuam9pbigpO1xuICAgIGlmICh1bmNoYW5nZWQpIHJldHVybjtcbiAgICAvLyBUaGUgdmlldyB3YXMgYWxyZWFkeSBjaGVja2VkIHRoaXMgY3ljbGUg4oCUIGFwcGx5IHRoZSBtZWFzdXJlZCBwbGFuIGluIGFcbiAgICAvLyBmcmVzaCBtaWNyb3Rhc2sgc28gT25QdXNoIHBpY2tzIGl0IHVwIHdpdGhvdXQgYW5cbiAgICAvLyBFeHByZXNzaW9uQ2hhbmdlZEFmdGVySXRIYXNCZWVuQ2hlY2tlZCBlcnJvci5cbiAgICBxdWV1ZU1pY3JvdGFzaygoKSA9PiB7XG4gICAgICB0aGlzLnBsYW4gPSBuZXh0O1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSk7XG4gIH1cblxuICBpc1Njcm9sbEhpbnQoaW5kZXg6IG51bWJlcik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5sb2FkaW5nICYmIHRoaXMucGxhbi5zY3JvbGxIaW50SW5kaWNlcy5pbmNsdWRlcyhpbmRleCk7XG4gIH1cblxuICAvKipcbiAgICogU3RhcnQgZGVsYXkgb2Ygcm93IGBpbmRleGAncyBlbnRyYW5jZSDigJQgZWFjaCByb3cgcmlzZXMgaW4gYSBiZWF0IGFmdGVyXG4gICAqIHRoZSBvbmUgbmVhcmVyIHRoZSBpbnB1dC4gU2tlbGV0b24gcm93cyBmYWRlIGluIHRvZ2V0aGVyICh0aGV5J3JlXG4gICAqIHBsYWNlaG9sZGVycywgbm90IGNvbnRlbnQgYXJyaXZpbmcpLlxuICAgKi9cbiAgZW50ZXJEZWxheU1zKGluZGV4OiBudW1iZXIpOiBudW1iZXIge1xuICAgIGlmICh0aGlzLmxvYWRpbmcpIHJldHVybiAwO1xuICAgIC8vIEFjcm9zcyB0aGUgY29sdW1ucyB0aGUgbWVhc3VyZWQgcGxhbiBzZXR0bGVkIG9uIOKAlCB0aGUgdHdvLWNvbHVtblxuICAgIC8vIHVwZ3JhZGUgb25seSBkZWNpZGVzIHRoYXQgYWZ0ZXIgdGhlIHJvd3MgZXhpc3QuXG4gICAgcmV0dXJuIG9wdGlvbkVudGVyRGVsYXlNcyhpbmRleCwgdGhpcy5wbGFuLmNvbHMsIHRoaXMub3B0aW9ucy5sZW5ndGgsIHRoaXMub3B0aW9uc1Bvc2l0aW9uKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGUgZ3JvdXAgaXMgcGFydCBvZiB0aGUgaWRlbnRpdHk6IGEgbmV3IHN1Z2dlc3Rpb24ncyBvcHRpb25zIGFyZSBuZXdcbiAgICogcm93cyBhbmQgZ2V0IHRoZSBlbnRyYW5jZSBhbmltYXRpb24gZXZlbiB3aGVuIG9uZSBzcGVsbHMgdGhlIHNhbWUgYXMgYVxuICAgKiByb3cgYWxyZWFkeSBvbiBzY3JlZW4uXG4gICAqL1xuICB0cmFja0J5T3B0aW9uVGV4dCA9IChfOiBudW1iZXIsIG9wdDogU3VnZ2VzdGlvbk9wdGlvbik6IHN0cmluZyA9PiBgJHt0aGlzLmdyb3VwS2V5fVxcMCR7b3B0LnRleHR9YDtcbn1cbiIsIjwhLS0gbWF4PVwiMWZyXCI6IGNvbHVtbnMgc2hhcmUgb3V0IHRoZSBmdWxsIHdpZHRoLCBzbyBhIGxvbmUgY29sdW1uIHNwYW5zIHRoZVxuICAgICB3aG9sZSBvcHRpb25zIGJveCBpbnN0ZWFkIG9mIHN0b3BwaW5nIGF0IDI1MHB4LiAtLT5cbjxhaWEtZ3JpZFxuICBtaW49XCIyNTBweFwiXG4gIG1heD1cIjFmclwiXG4gIGdhcD1cIjBcIlxuICBbc2Nyb2xsXT1cInRydWVcIlxuICBbc2Nyb2xsUmVzZXRLZXldPVwiZ3JvdXBLZXlcIlxuICBbdGVtcGxhdGVdPVwicGxhbi50ZW1wbGF0ZVwiXG4gIFttYXhIZWlnaHRdPVwicGxhbi5tYXhIZWlnaHRcIlxuICBbZ3JvdXBdPVwiZ3JvdXBLZXlcIlxuPlxuICA8YWlhLXN1Z2dlc3Rpb24taXRlbVxuICAgICpuZ0Zvcj1cImxldCBvcHRpb24gb2Ygb3B0aW9uczsgdHJhY2tCeTogdHJhY2tCeU9wdGlvblRleHQ7IGxldCBpID0gaW5kZXhcIlxuICAgIFtvcHRpb25dPVwib3B0aW9uXCJcbiAgICBbaXNIaWdobGlnaHRlZF09XCJpID09PSBhY3RpdmVJbmRleFwiXG4gICAgW2lkXT1cImxpc3Rib3hJZCArICctb3B0aW9uLScgKyBpXCJcbiAgICBbbG9hZGluZ109XCJsb2FkaW5nXCJcbiAgICBbc2Nyb2xsSGludF09XCJpc1Njcm9sbEhpbnQoaSlcIlxuICAgIFtlbnRlckRlbGF5TXNdPVwiZW50ZXJEZWxheU1zKGkpXCJcbiAgICAoc2VsZWN0KT1cInNlbGVjdC5lbWl0KCRldmVudClcIlxuICAgIChoaWdobGlnaHQpPVwiaGlnaGxpZ2h0LmVtaXQoaSlcIlxuICA+PC9haWEtc3VnZ2VzdGlvbi1pdGVtPlxuPC9haWEtZ3JpZD5cbiJdfQ==
|
|
@@ -7,7 +7,7 @@ import * as i1 from "@angular/common";
|
|
|
7
7
|
* `packages/react/src/components/SuggestionItem.tsx`. Handles:
|
|
8
8
|
*
|
|
9
9
|
* - Tappable vs non-tappable cursor + hover styling
|
|
10
|
-
* - Pressed-state
|
|
10
|
+
* - Pressed-state compress animation (500ms, single-flight)
|
|
11
11
|
* - Keyboard activation (Enter/Space)
|
|
12
12
|
* - ARIA `role="option"` + `aria-selected` for the listbox pattern
|
|
13
13
|
* - Loading skeleton when `loading=true`
|
|
@@ -19,11 +19,28 @@ export class SuggestionItemComponent {
|
|
|
19
19
|
this.isHighlighted = false;
|
|
20
20
|
this.id = "";
|
|
21
21
|
this.loading = false;
|
|
22
|
+
/** Fade this option's text toward its bottom edge (last visible row of a scrollable grid). */
|
|
23
|
+
this.scrollHint = false;
|
|
24
|
+
/**
|
|
25
|
+
* The captured delay; `null` until the first `enterDelayMs` binding lands.
|
|
26
|
+
* The template binds it to `--aia-option-enter-delay` (the core's
|
|
27
|
+
* OPTION_ENTER_DELAY_VAR), which the stylesheet's entrance rule reads.
|
|
28
|
+
*/
|
|
29
|
+
this.enterDelay = null;
|
|
22
30
|
this.select = new EventEmitter();
|
|
23
31
|
this.highlight = new EventEmitter();
|
|
24
32
|
this.pressed = false;
|
|
25
33
|
this.cdr = inject(ChangeDetectorRef);
|
|
26
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Start delay of this row's entrance animation (ms) — each row rises in a
|
|
37
|
+
* beat after the one nearer the input. Captured once, on first render, so a
|
|
38
|
+
* later change-detection pass can't restart a row mid-rise.
|
|
39
|
+
*/
|
|
40
|
+
set enterDelayMs(value) {
|
|
41
|
+
if (this.enterDelay === null)
|
|
42
|
+
this.enterDelay = value;
|
|
43
|
+
}
|
|
27
44
|
ngOnDestroy() {
|
|
28
45
|
if (this.pressedTimer !== undefined)
|
|
29
46
|
clearTimeout(this.pressedTimer);
|
|
@@ -56,10 +73,10 @@ export class SuggestionItemComponent {
|
|
|
56
73
|
}
|
|
57
74
|
}
|
|
58
75
|
SuggestionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
59
|
-
SuggestionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SuggestionItemComponent, isStandalone: true, selector: "aia-suggestion-item", inputs: { option: "option", isHighlighted: "isHighlighted", id: "id", loading: "loading" }, outputs: { select: "select", highlight: "highlight" }, ngImport: i0, template: "<div\n [id]=\"id\"\n role=\"option\"\n data-aia-option=\"\"\n [attr.data-aia-loading]=\"loading ? '' : null\"\n [attr.aria-selected]=\"isHighlighted\"\n class=\"aia-suggestion-item\"\n [class.aia-suggestion-item-highlighted]=\"isHighlighted && !loading\"\n [class.aia-suggestion-item-tappable]=\"option.is_tappable\"\n [class.aia-suggestion-item-non-tappable]=\"!option.is_tappable\"\n [class.aia-suggestion-item-pressed]=\"pressed\"\n [attr.tabindex]=\"loading || !option.is_tappable ? -1 : 0\"\n (click)=\"onSelect()\"\n (keydown)=\"onKeyDown($event)\"\n (mouseenter)=\"onMouseEnter()\"\n>\n <
|
|
76
|
+
SuggestionItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: SuggestionItemComponent, isStandalone: true, selector: "aia-suggestion-item", inputs: { option: "option", isHighlighted: "isHighlighted", id: "id", loading: "loading", scrollHint: "scrollHint", enterDelayMs: "enterDelayMs" }, outputs: { select: "select", highlight: "highlight" }, ngImport: i0, template: "<div\n [id]=\"id\"\n role=\"option\"\n data-aia-option=\"\"\n [attr.data-aia-loading]=\"loading ? '' : null\"\n [attr.aria-selected]=\"isHighlighted\"\n class=\"aia-suggestion-item\"\n [style.--aia-option-enter-delay]=\"(enterDelay ?? 0) + 'ms'\"\n [class.aia-suggestion-item-highlighted]=\"isHighlighted && !loading\"\n [class.aia-suggestion-item-tappable]=\"option.is_tappable\"\n [class.aia-suggestion-item-non-tappable]=\"!option.is_tappable\"\n [class.aia-suggestion-item-pressed]=\"pressed\"\n [class.aia-suggestion-item-scroll-hint]=\"scrollHint\"\n [attr.tabindex]=\"loading || !option.is_tappable ? -1 : 0\"\n (click)=\"onSelect()\"\n (keydown)=\"onKeyDown($event)\"\n (mouseenter)=\"onMouseEnter()\"\n>\n <span class=\"aia-suggestion-content\">\n <span class=\"aia-suggestion-text\">\n <ng-container *ngIf=\"option.icon; else noIcon\"\n >{{ option.icon }} {{ option.text }}</ng-container\n >\n <ng-template #noIcon>{{ option.text }}</ng-template>\n </span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:visible;display:flex;align-items:flex-start;font-family:inherit;font-size:var(--aia-option-font-size, 16px);font-weight:450;line-height:21px;color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));white-space:normal;word-break:break-word;border-radius:8px;padding:8px 10px;animation:aiaSuggestionFadeIn .15s ease-out both,aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both;animation-delay:var(--aia-option-enter-delay, 0ms)}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2}.aia-suggestion-item-tappable{cursor:pointer}.aia-suggestion-item-tappable:hover{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff))}.aia-suggestion-item-non-tappable{cursor:default}.aia-suggestion-item-highlighted{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff));background:var(--aia-option-bg, transparent);font-weight:500}.aia-suggestion-tag{font-size:11px;margin-left:6px;opacity:.5}.aia-suggestion-item-pressed{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff));animation:aiaPressCompress .5s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity .15s ease}@keyframes aiaPressCompress{0%{transform:scale(1)}25%{transform:scale(.93)}60%{transform:scale(.93)}to{transform:scale(1)}}.aia-suggestion-item-scroll-hint .aia-suggestion-content{mask-image:linear-gradient(to bottom,rgb(0 0 0),rgb(0 0 0 / .6))}.aia-suggestion-item[data-aia-loading]{cursor:default;animation:aiaSuggestionSkeletonPulse 1.4s ease-in-out infinite}.aia-suggestion-item[data-aia-loading] .aia-suggestion-text{color:transparent;background:var(--aia-skeleton-bg, var(--aia-pill-bg, rgba(189, 189, 189, .25)));border-radius:999px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
60
77
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionItemComponent, decorators: [{
|
|
61
78
|
type: Component,
|
|
62
|
-
args: [{ selector: "aia-suggestion-item", standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n [id]=\"id\"\n role=\"option\"\n data-aia-option=\"\"\n [attr.data-aia-loading]=\"loading ? '' : null\"\n [attr.aria-selected]=\"isHighlighted\"\n class=\"aia-suggestion-item\"\n [class.aia-suggestion-item-highlighted]=\"isHighlighted && !loading\"\n [class.aia-suggestion-item-tappable]=\"option.is_tappable\"\n [class.aia-suggestion-item-non-tappable]=\"!option.is_tappable\"\n [class.aia-suggestion-item-pressed]=\"pressed\"\n [attr.tabindex]=\"loading || !option.is_tappable ? -1 : 0\"\n (click)=\"onSelect()\"\n (keydown)=\"onKeyDown($event)\"\n (mouseenter)=\"onMouseEnter()\"\n>\n <
|
|
79
|
+
args: [{ selector: "aia-suggestion-item", standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div\n [id]=\"id\"\n role=\"option\"\n data-aia-option=\"\"\n [attr.data-aia-loading]=\"loading ? '' : null\"\n [attr.aria-selected]=\"isHighlighted\"\n class=\"aia-suggestion-item\"\n [style.--aia-option-enter-delay]=\"(enterDelay ?? 0) + 'ms'\"\n [class.aia-suggestion-item-highlighted]=\"isHighlighted && !loading\"\n [class.aia-suggestion-item-tappable]=\"option.is_tappable\"\n [class.aia-suggestion-item-non-tappable]=\"!option.is_tappable\"\n [class.aia-suggestion-item-pressed]=\"pressed\"\n [class.aia-suggestion-item-scroll-hint]=\"scrollHint\"\n [attr.tabindex]=\"loading || !option.is_tappable ? -1 : 0\"\n (click)=\"onSelect()\"\n (keydown)=\"onKeyDown($event)\"\n (mouseenter)=\"onMouseEnter()\"\n>\n <span class=\"aia-suggestion-content\">\n <span class=\"aia-suggestion-text\">\n <ng-container *ngIf=\"option.icon; else noIcon\"\n >{{ option.icon }} {{ option.text }}</ng-container\n >\n <ng-template #noIcon>{{ option.text }}</ng-template>\n </span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:visible;display:flex;align-items:flex-start;font-family:inherit;font-size:var(--aia-option-font-size, 16px);font-weight:450;line-height:21px;color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));white-space:normal;word-break:break-word;border-radius:8px;padding:8px 10px;animation:aiaSuggestionFadeIn .15s ease-out both,aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both;animation-delay:var(--aia-option-enter-delay, 0ms)}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2}.aia-suggestion-item-tappable{cursor:pointer}.aia-suggestion-item-tappable:hover{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff))}.aia-suggestion-item-non-tappable{cursor:default}.aia-suggestion-item-highlighted{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff));background:var(--aia-option-bg, transparent);font-weight:500}.aia-suggestion-tag{font-size:11px;margin-left:6px;opacity:.5}.aia-suggestion-item-pressed{color:var(--aia-option-color-selected, var(--aia-color-text-default, #fff));animation:aiaPressCompress .5s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity .15s ease}@keyframes aiaPressCompress{0%{transform:scale(1)}25%{transform:scale(.93)}60%{transform:scale(.93)}to{transform:scale(1)}}.aia-suggestion-item-scroll-hint .aia-suggestion-content{mask-image:linear-gradient(to bottom,rgb(0 0 0),rgb(0 0 0 / .6))}.aia-suggestion-item[data-aia-loading]{cursor:default;animation:aiaSuggestionSkeletonPulse 1.4s ease-in-out infinite}.aia-suggestion-item[data-aia-loading] .aia-suggestion-text{color:transparent;background:var(--aia-skeleton-bg, var(--aia-pill-bg, rgba(189, 189, 189, .25)));border-radius:999px;-webkit-box-decoration-break:clone;box-decoration-break:clone}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}\n"] }]
|
|
63
80
|
}], propDecorators: { option: [{
|
|
64
81
|
type: Input
|
|
65
82
|
}], isHighlighted: [{
|
|
@@ -68,9 +85,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
|
|
|
68
85
|
type: Input
|
|
69
86
|
}], loading: [{
|
|
70
87
|
type: Input
|
|
88
|
+
}], scrollHint: [{
|
|
89
|
+
type: Input
|
|
90
|
+
}], enterDelayMs: [{
|
|
91
|
+
type: Input
|
|
71
92
|
}], select: [{
|
|
72
93
|
type: Output
|
|
73
94
|
}], highlight: [{
|
|
74
95
|
type: Output
|
|
75
96
|
}] } });
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvaW50ZXJuYWwvc3VnZ2VzdGlvbi1pdGVtL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3N1Z2dlc3Rpb24taXRlbS9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7QUFHdkI7Ozs7Ozs7Ozs7O0dBV0c7QUFVSCxNQUFNLE9BQU8sdUJBQXVCO0lBVHBDO1FBV1csa0JBQWEsR0FBRyxLQUFLLENBQUM7UUFDdEIsT0FBRSxHQUFHLEVBQUUsQ0FBQztRQUNSLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDekIsOEZBQThGO1FBQ3JGLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFTNUI7Ozs7V0FJRztRQUNILGVBQVUsR0FBa0IsSUFBSSxDQUFDO1FBRWQsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFvQixDQUFDO1FBQzlDLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO1FBRXhELFlBQU8sR0FBRyxLQUFLLENBQUM7UUFFQyxRQUFHLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7S0ErQmxEO0lBbkRDOzs7O09BSUc7SUFDSCxJQUFhLFlBQVksQ0FBQyxLQUFhO1FBQ3JDLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxJQUFJO1lBQUUsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7SUFDeEQsQ0FBQztJQWdCRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVM7WUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ3JFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztZQUFFLE9BQU87UUFDckQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztZQUFFLE9BQU87UUFDckQsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRTtZQUM5QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQzs7cUhBekRVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLDBSQ25DcEMsK2xDQTRCQSwwd0VEQ1ksWUFBWTs0RkFNWCx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFDTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzhCQUs1QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTU8sWUFBWTtzQkFBeEIsS0FBSztnQkFVYSxNQUFNO3NCQUF4QixNQUFNO2dCQUNZLFNBQVM7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgaW5qZWN0LFxuICB0eXBlIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB0eXBlIHsgU3VnZ2VzdGlvbk9wdGlvbiB9IGZyb20gXCJAbWFnaWN4LWVuZy9haS1hdXRvY29tcGxldGUtdmFuaWxsYVwiO1xuXG4vKipcbiAqIEludGVybmFsIHNpbmdsZS1vcHRpb24gY2VsbCB1c2VkIGluc2lkZSB0aGUgc3VnZ2VzdGlvbiBncmlkLiBNaXJyb3JzXG4gKiBgcGFja2FnZXMvcmVhY3Qvc3JjL2NvbXBvbmVudHMvU3VnZ2VzdGlvbkl0ZW0udHN4YC4gSGFuZGxlczpcbiAqXG4gKiAtIFRhcHBhYmxlIHZzIG5vbi10YXBwYWJsZSBjdXJzb3IgKyBob3ZlciBzdHlsaW5nXG4gKiAtIFByZXNzZWQtc3RhdGUgY29tcHJlc3MgYW5pbWF0aW9uICg1MDBtcywgc2luZ2xlLWZsaWdodClcbiAqIC0gS2V5Ym9hcmQgYWN0aXZhdGlvbiAoRW50ZXIvU3BhY2UpXG4gKiAtIEFSSUEgYHJvbGU9XCJvcHRpb25cImAgKyBgYXJpYS1zZWxlY3RlZGAgZm9yIHRoZSBsaXN0Ym94IHBhdHRlcm5cbiAqIC0gTG9hZGluZyBza2VsZXRvbiB3aGVuIGBsb2FkaW5nPXRydWVgXG4gKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhaWEtc3VnZ2VzdGlvbi1pdGVtXCIsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgdGVtcGxhdGVVcmw6IFwiLi9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQuY3NzXCJdLFxufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIG9wdGlvbiE6IFN1Z2dlc3Rpb25PcHRpb247XG4gIEBJbnB1dCgpIGlzSGlnaGxpZ2h0ZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaWQgPSBcIlwiO1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIC8qKiBGYWRlIHRoaXMgb3B0aW9uJ3MgdGV4dCB0b3dhcmQgaXRzIGJvdHRvbSBlZGdlIChsYXN0IHZpc2libGUgcm93IG9mIGEgc2Nyb2xsYWJsZSBncmlkKS4gKi9cbiAgQElucHV0KCkgc2Nyb2xsSGludCA9IGZhbHNlO1xuICAvKipcbiAgICogU3RhcnQgZGVsYXkgb2YgdGhpcyByb3cncyBlbnRyYW5jZSBhbmltYXRpb24gKG1zKSDigJQgZWFjaCByb3cgcmlzZXMgaW4gYVxuICAgKiBiZWF0IGFmdGVyIHRoZSBvbmUgbmVhcmVyIHRoZSBpbnB1dC4gQ2FwdHVyZWQgb25jZSwgb24gZmlyc3QgcmVuZGVyLCBzbyBhXG4gICAqIGxhdGVyIGNoYW5nZS1kZXRlY3Rpb24gcGFzcyBjYW4ndCByZXN0YXJ0IGEgcm93IG1pZC1yaXNlLlxuICAgKi9cbiAgQElucHV0KCkgc2V0IGVudGVyRGVsYXlNcyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgaWYgKHRoaXMuZW50ZXJEZWxheSA9PT0gbnVsbCkgdGhpcy5lbnRlckRlbGF5ID0gdmFsdWU7XG4gIH1cbiAgLyoqXG4gICAqIFRoZSBjYXB0dXJlZCBkZWxheTsgYG51bGxgIHVudGlsIHRoZSBmaXJzdCBgZW50ZXJEZWxheU1zYCBiaW5kaW5nIGxhbmRzLlxuICAgKiBUaGUgdGVtcGxhdGUgYmluZHMgaXQgdG8gYC0tYWlhLW9wdGlvbi1lbnRlci1kZWxheWAgKHRoZSBjb3JlJ3NcbiAgICogT1BUSU9OX0VOVEVSX0RFTEFZX1ZBUiksIHdoaWNoIHRoZSBzdHlsZXNoZWV0J3MgZW50cmFuY2UgcnVsZSByZWFkcy5cbiAgICovXG4gIGVudGVyRGVsYXk6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIEBPdXRwdXQoKSByZWFkb25seSBzZWxlY3QgPSBuZXcgRXZlbnRFbWl0dGVyPFN1Z2dlc3Rpb25PcHRpb24+KCk7XG4gIEBPdXRwdXQoKSByZWFkb25seSBoaWdobGlnaHQgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHJlc3NlZCA9IGZhbHNlO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY2RyID0gaW5qZWN0KENoYW5nZURldGVjdG9yUmVmKTtcbiAgcHJpdmF0ZSBwcmVzc2VkVGltZXI6IFJldHVyblR5cGU8dHlwZW9mIHNldFRpbWVvdXQ+IHwgdW5kZWZpbmVkO1xuXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLnByZXNzZWRUaW1lciAhPT0gdW5kZWZpbmVkKSBjbGVhclRpbWVvdXQodGhpcy5wcmVzc2VkVGltZXIpO1xuICB9XG5cbiAgb25TZWxlY3QoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9hZGluZyB8fCAhdGhpcy5vcHRpb24uaXNfdGFwcGFibGUgfHwgdGhpcy5wcmVzc2VkKSByZXR1cm47XG4gICAgdGhpcy5wcmVzc2VkID0gdHJ1ZTtcbiAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB0aGlzLnNlbGVjdC5lbWl0KHRoaXMub3B0aW9uKTtcbiAgICBpZiAodGhpcy5wcmVzc2VkVGltZXIgIT09IHVuZGVmaW5lZCkgY2xlYXJUaW1lb3V0KHRoaXMucHJlc3NlZFRpbWVyKTtcbiAgICB0aGlzLnByZXNzZWRUaW1lciA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5wcmVzc2VkID0gZmFsc2U7XG4gICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9LCA1MDApO1xuICB9XG5cbiAgb25Nb3VzZUVudGVyKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgIXRoaXMub3B0aW9uLmlzX3RhcHBhYmxlKSByZXR1cm47XG4gICAgdGhpcy5oaWdobGlnaHQuZW1pdCgpO1xuICB9XG5cbiAgb25LZXlEb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgaWYgKHRoaXMubG9hZGluZyB8fCAhdGhpcy5vcHRpb24uaXNfdGFwcGFibGUpIHJldHVybjtcbiAgICBpZiAoZXZlbnQua2V5ID09PSBcIkVudGVyXCIgfHwgZXZlbnQua2V5ID09PSBcIiBcIikge1xuICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgIHRoaXMub25TZWxlY3QoKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXZcbiAgW2lkXT1cImlkXCJcbiAgcm9sZT1cIm9wdGlvblwiXG4gIGRhdGEtYWlhLW9wdGlvbj1cIlwiXG4gIFthdHRyLmRhdGEtYWlhLWxvYWRpbmddPVwibG9hZGluZyA/ICcnIDogbnVsbFwiXG4gIFthdHRyLmFyaWEtc2VsZWN0ZWRdPVwiaXNIaWdobGlnaHRlZFwiXG4gIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24taXRlbVwiXG4gIFtzdHlsZS4tLWFpYS1vcHRpb24tZW50ZXItZGVsYXldPVwiKGVudGVyRGVsYXkgPz8gMCkgKyAnbXMnXCJcbiAgW2NsYXNzLmFpYS1zdWdnZXN0aW9uLWl0ZW0taGlnaGxpZ2h0ZWRdPVwiaXNIaWdobGlnaHRlZCAmJiAhbG9hZGluZ1wiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLXRhcHBhYmxlXT1cIm9wdGlvbi5pc190YXBwYWJsZVwiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLW5vbi10YXBwYWJsZV09XCIhb3B0aW9uLmlzX3RhcHBhYmxlXCJcbiAgW2NsYXNzLmFpYS1zdWdnZXN0aW9uLWl0ZW0tcHJlc3NlZF09XCJwcmVzc2VkXCJcbiAgW2NsYXNzLmFpYS1zdWdnZXN0aW9uLWl0ZW0tc2Nyb2xsLWhpbnRdPVwic2Nyb2xsSGludFwiXG4gIFthdHRyLnRhYmluZGV4XT1cImxvYWRpbmcgfHwgIW9wdGlvbi5pc190YXBwYWJsZSA/IC0xIDogMFwiXG4gIChjbGljayk9XCJvblNlbGVjdCgpXCJcbiAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudClcIlxuICAobW91c2VlbnRlcik9XCJvbk1vdXNlRW50ZXIoKVwiXG4+XG4gIDxzcGFuIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tY29udGVudFwiPlxuICAgIDxzcGFuIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGV4dFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm9wdGlvbi5pY29uOyBlbHNlIG5vSWNvblwiXG4gICAgICAgID57eyBvcHRpb24uaWNvbiB9fSB7eyBvcHRpb24udGV4dCB9fTwvbmctY29udGFpbmVyXG4gICAgICA+XG4gICAgICA8bmctdGVtcGxhdGUgI25vSWNvbj57eyBvcHRpb24udGV4dCB9fTwvbmctdGVtcGxhdGU+XG4gICAgPC9zcGFuPlxuICAgIDxzcGFuICpuZ0lmPVwib3B0aW9uLnRhZ1wiIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGFnXCI+e3sgb3B0aW9uLnRhZyB9fTwvc3Bhbj5cbiAgPC9zcGFuPlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NoYXJlZC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBBUElDb25maWcsXG4gIEF1dG9jb21wbGV0ZVJlc3VsdCxcbiAgQ29tcGxldGVkUGFyYW1TdGF0ZSxcbiAgRGF0ZU1vbnRoVmlldyxcbiAgRm9ybWF0VHlwZSxcbiAgT3B0aW9uT3ZlcnJpZGVzLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0c0NvbmZpZyxcbiAgU2VnbWVudCxcbiAgU2tpcHBlZFBhcmFtU3RhdGUsXG4gIFN1Z2dlc3Rpb24sXG59IGZyb20gXCJAbWFnaWN4LWVuZy9haS1hdXRvY29tcGxldGUtdmFuaWxsYVwiO1xuXG4vKipcbiAqIENvbnN0cnVjdGlvbi10aW1lIG9wdGlvbnMgZm9yIHtAbGluayBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJ9LlxuICpcbiAqIE1pcnJvcnMgdGhlIHByb3BzIHRoZSBSZWFjdCBgdXNlQUlBdXRvY29tcGxldGUoKWAgaG9vayBhY2NlcHRzLCBtaW51cyB0aGVcbiAqIGZpZWxkcyB0aGF0IG9ubHkgbWFrZSBzZW5zZSBmb3IgYSBSZWFjdCBjb21wb25lbnQgc2hlbGwgKGBjb2x1bW5zYCBpcyBoZXJlO1xuICogYGF1dG9Gb2N1c2AsIGBjbGFzc05hbWVgLCBgcGlsbFBsYWNlbWVudGAsIGV0Yy4gbGl2ZSBvbiB0aGUgVGllciAxXG4gKiBgPGFpLWF1dG9jb21wbGV0ZT5gIGNvbXBvbmVudCkuXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlck9wdGlvbnMge1xuICAvKiogUnVudGltZSBBUEkgY29uZmlndXJhdGlvbiAoYXBpS2V5LCBlbmRwb2ludCwgZXRjLikuICovXG4gIGFwaUNvbmZpZz86IEFQSUNvbmZpZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHVzZXIgY29udGV4dC4gSW5jbHVkZSB3aGF0ZXZlciB5b3Uga25vdyBhYm91dCB0aGUgdXNlciDigJQgYVxuICAgKiBwcm9maWxlLCBwcmVmZXJlbmNlcywgd29ya3NwYWNlLCBhbnl0aGluZyDigJQgdG8gcGVyc29uYWxpemUgc3VnZ2VzdGVkXG4gICAqIHBhcmFtZXRlcnMgYW5kIG9wdGlvbnMgdG8gdGhlbS5cbiAgICovXG4gIGFkZGl0aW9uYWxDb250ZXh0PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIC8qKiBQZXItc3VnZ2VzdGlvbi10eXBlIGNsaWVudC1zaWRlIG9wdGlvbiBvdmVycmlkZXMuICovXG4gIG9wdGlvbk92ZXJyaWRlcz86IE9wdGlvbk92ZXJyaWRlcztcbiAgLyoqIFdoZW4gdHJ1ZSwgY29tcGxldGVkIHBhcmFtcycgbGl0ZXJhbCB0ZXh0IGlzIG9taXR0ZWQgZnJvbSBBUEkgcmVxdWVzdHMuICovXG4gIG1hc2tDb21wbGV0ZWRUZXh0PzogYm9vbGVhbjtcbiAgLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBkcm9wZG93biBncmlkLiBEZWZhdWx0OiAyLiAqL1xuICBjb2x1bW5zPzogbnVtYmVyO1xuICAvKipcbiAgICogV2hlcmUgdGhlIGRyb3Bkb3duIG9wZW5zIHJlbGF0aXZlIHRvIHRoZSBpbnB1dC4gRGVmYXVsdDogXCJiZWxvd1wiLlxuICAgKlxuICAgKiBSZWFkIGJ5IHRoZSBrZXlib2FyZCBjb250cm9sbGVyIHRvIGRlY2lkZSB3aGljaCB2ZXJ0aWNhbC1hcnJvdyBrZXkgb3BlbnNcbiAgICogdGhlIGRyb3Bkb3duIGZyb20gdGhlIGlucHV0IOKAlCBBcnJvd0Rvd24gd2hlbiB0aGUgZHJvcGRvd24gaXMgYmVsb3csXG4gICAqIEFycm93VXAgd2hlbiBpdCdzIGFib3ZlLlxuICAgKi9cbiAgb3B0aW9uc1Bvc2l0aW9uPzogXCJhYm92ZVwiIHwgXCJiZWxvd1wiO1xuICAvKipcbiAgICogV2hlbiB0aGUgZHJvcGRvd24gYXBwZWFycy4gXCJhdXRvXCIgKGRlZmF1bHQpIHNob3dzIHdoZW4gb3B0aW9ucyBhcmVcbiAgICogYXZhaWxhYmxlOyBcIm1hbnVhbFwiIHNob3dzIG9ubHkgb24gcGlsbCB0YXA7IFwiaGlkZGVuXCIgbmV2ZXIgc2hvd3MuXG4gICAqL1xuICBkcm9wZG93blRyaWdnZXI/OiBcImF1dG9cIiB8IFwibWFudWFsXCIgfCBcImhpZGRlblwiO1xuICAvKiogV2hlbiB0cnVlIChkZWZhdWx0KSwgdGhlIGRyb3Bkb3duIGNsb3NlcyBpZiB0aGUgaW5wdXQgbG9zZXMgZm9jdXMuICovXG4gIGNsb3NlRHJvcGRvd25PbkJsdXI/OiBib29sZWFuO1xuICAvKiogV2hlbiB0cnVlIChkZWZhdWx0KSwgbm9uLXRhcHBhYmxlIG9wdGlvbnMgcmVuZGVyIGFsb25nc2lkZSB0YXBwYWJsZSBvbmVzLiAqL1xuICBzaG93Tm9uVGFwcGFibGVPcHRpb25zPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRlbGVtZXRyeSBzdXJmYWNlIGlkZW50aWZpZXIuIFNldCBhdXRvbWF0aWNhbGx5IHRvIFwiZnVsbC1zZGtcIiBieSB0aGVcbiAgICogVGllciAxIGA8YWktYXV0b2NvbXBsZXRlPmAgY29tcG9uZW50LiBEZWZhdWx0cyB0byBcImhlYWRsZXNzLXNka1wiLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHNvdXJjZT86IFwiZnVsbC1zZGtcIiB8IFwiaGVhZGxlc3Mtc2RrXCI7XG4gIC8qKiBDYWxsZWQgd2hlbiB0aGUgdXNlciBzdWJtaXRzIChFbnRlciBrZXkgb3IgYHN1Ym1pdCgpYCBhY3Rpb24pLiAqL1xuICBvblN1Ym1pdD86IChyZXN1bHQ6IEF1dG9jb21wbGV0ZVJlc3VsdCkgPT4gdm9pZDtcbiAgLyoqIENhbGxlZCB3aGVuIGEgZmV0Y2ggZmFpbHMuICovXG4gIG9uRXJyb3I/OiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuICAvKiogQ2FsbGVkIHdoZW4gdGhlIGVkaXRvciB0ZXh0IGNoYW5nZXMgKGNvbnRyb2xsZWQtbW9kZSBzaWduYWwpLiAqL1xuICBvbkNoYW5nZT86ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIC8qKiBDYWxsZWQgd2hlbiBjb21wbGV0ZWQgcGFyYW1zIGNoYW5nZSAoY29udHJvbGxlZC1tb2RlIHNpZ25hbCkuICovXG4gIG9uUGFyYW1zQ2hhbmdlPzogKHBhcmFtczogQ29tcGxldGVkUGFyYW1TdGF0ZVtdKSA9PiB2b2lkO1xuICAvKiogQ2FsbGVkIHdoZW4gdGhlIGlucHV0IGdhaW5zIGZvY3VzLiAqL1xuICBvbkZvY3VzPzogKCkgPT4gdm9pZDtcbiAgLyoqIENhbGxlZCB3aGVuIHRoZSBpbnB1dCBsb3NlcyBmb2N1cy4gKi9cbiAgb25CbHVyPzogKCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIE9wdC1pbiBwcm9kdWN0IHN0cmlwLiBXaGVuIHNldCwgdGhlIGRyb3Bkb3duIHJlbmRlcnMgYSBob3Jpem9udGFsIHJvdyBvZlxuICAgKiBwcm9kdWN0IGNhcmRzIGJlbG93IHRoZSBvcHRpb25zIGdyaWQsIGZlZCBieSB0aGUgaW50ZWdyYXRpb24ncyBvd24gc2VhcmNoXG4gICAqIGVuZHBvaW50IG9uIHRoZSBTREsncyBleGlzdGluZyBmZXRjaCBjYWRlbmNlLiBPbWl0IGl0IGFuZCBub3RoaW5nIGFib3V0XG4gICAqIHRoZSBkcm9wZG93biBjaGFuZ2VzIOKAlCBubyByZXF1ZXN0LCBubyBtYXJrdXAsIG5vIGxheW91dCBzaGlmdC5cbiAgICovXG4gIHByb2R1Y3RzPzogUHJvZHVjdHNDb25maWc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgdXNlciBhY3RpdmF0ZXMgYSBwcm9kdWN0IGNhcmQuIFRoZSBTREsgZG9lcyBub3QgbmF2aWdhdGUg4oCUXG4gICAqIHRoZSBpbnRlZ3JhdGlvbiBkZWNpZGVzIHdoYXQgYSBzZWxlY3Rpb24gbWVhbnMuIE1vZGlmaWVyIC8gbWlkZGxlIGNsaWNrc1xuICAgKiBhcmUgbGVmdCB0byB0aGUgYnJvd3NlciAoY21kLWNsaWNrIHN0aWxsIG9wZW5zIGEgdGFiKSBhbmQgZG9uJ3QgZmlyZSB0aGlzLlxuICAgKi9cbiAgb25Qcm9kdWN0U2VsZWN0PzogKHByb2R1Y3Q6IFByb2R1Y3QpID0+IHZvaWQ7XG4gIC8qKiBJbml0aWFsIGNvbnRyb2xsZWQgdGV4dCB2YWx1ZS4gKi9cbiAgdmFsdWU/OiBzdHJpbmc7XG4gIC8qKiBJbml0aWFsIGNvbnRyb2xsZWQgY29tcGxldGVkIHBhcmFtcy4gKi9cbiAgY29tcGxldGVkUGFyYW1zPzogQ29tcGxldGVkUGFyYW1TdGF0ZVtdO1xuICAvKipcbiAgICogQ2FyZXQtc2V0IGNhbGxiYWNrLiBJbnZva2VkIGJ5IHRoZSBjb3JlIHdoZW4gcmUtZWRpdCAvIEJhY2tzcGFjZSBmbG93c1xuICAgKiBuZWVkIHRoZSBlZGl0b3IgY2FyZXQgcGFya2VkIGF0IGEgc3BlY2lmaWMgcGxhaW4tdGV4dCBvZmZzZXQuIFRoZSBUaWVyIDFcbiAgICogYDxhaS1hdXRvY29tcGxldGU+YCBjb21wb25lbnQgd2lyZXMgdGhpcyBmcm9tIGl0cyBlZGl0b3IgaG9zdDsgaGVhZGxlc3NcbiAgICogY29uc3VtZXJzIGNhbiBsZWF2ZSBpdCB1bnNldC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBzZXRDdXJzb3I/OiAob2Zmc2V0OiBudW1iZXIpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogU3Vic2V0IG9mIHtAbGluayBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJPcHRpb25zfSB0aGF0IGNhbiBiZSBjaGFuZ2VkIGFmdGVyXG4gKiBjb25zdHJ1Y3Rpb24uIEV4Y2x1ZGVzIGV2ZW50IGNhbGxiYWNrcyAodGhvc2UgYXJlIHJlZ2lzdGVyZWQgb25jZSBhdFxuICogY29uc3RydWN0aW9uIOKAlCBzZWUgdmFuaWxsYSBgQ29yZVVwZGF0ZU9wdGlvbnNgKS5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlclVwZGF0ZSA9IFBhcnRpYWw8XG4gIE9taXQ8XG4gICAgQUlBdXRvY29tcGxldGVDb250cm9sbGVyT3B0aW9ucyxcbiAgICB8IFwib25TdWJtaXRcIlxuICAgIHwgXCJvbkVycm9yXCJcbiAgICB8IFwib25DaGFuZ2VcIlxuICAgIHwgXCJvblBhcmFtc0NoYW5nZVwiXG4gICAgfCBcIm9uRm9jdXNcIlxuICAgIHwgXCJvbkJsdXJcIlxuICAgIHwgXCJvblByb2R1Y3RTZWxlY3RcIlxuICAgIHwgXCJzZXRDdXJzb3JcIlxuICA+XG4+O1xuXG4vKipcbiAqIFNuYXBzaG90IG9mIHRoZSBjb250cm9sbGVyJ3MgcmVhY3RpdmUgc3RhdGUuIEVhY2ggZmllbGQgaXMgYWxzbyBleHBvc2VkIGFzXG4gKiBhIHN0YW5kLWFsb25lIG9ic2VydmFibGUgb24gdGhlIGNvbnRyb2xsZXIgKGUuZy4gYGNvbnRyb2xsZXIudGV4dCRgKS5cbiAqXG4gKiBgc3VnZ2VzdGlvblBpbGxzYCBtaXJyb3JzIFJlYWN0J3MgYHN1Z2dlc3Rpb25QaWxsc2Ag4oCUIHRoZSBhY3Rpb25hYmxlXG4gKiBzdWJzZXQgb2YgYHN1Z2dlc3Rpb25zYCByZWFkeSBmb3IgcGlsbCByZW5kZXJpbmcuIGBpc0xvYWRpbmdgIGlzIHRoZVxuICogVUktdmlzaWJsZSBsb2FkaW5nIGZsYWcgKHN1cHByZXNzZWQgZHVyaW5nIHRoZSBwb3N0LXNlbGVjdCBzdHJlYWtcbiAqIGFuaW1hdGlvbiBhbmQgZHVyaW5nIHJlLWVkaXQsIHdoZXJlIGNhY2hlZCBvcHRpb25zIHN0YXkgdmlzaWJsZSkuXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlclN0YXRlIHtcbiAgdGV4dDogc3RyaW5nO1xuICBjb21wbGV0ZWRQYXJhbXM6IENvbXBsZXRlZFBhcmFtU3RhdGVbXTtcbiAgLyoqXG4gICAqIFN1Z2dlc3Rpb25zIHRoZSB1c2VyIGRpc21pc3NlZCB3aXRoIHRoZSBza2lwIGtleSAo4oaSKS4gTm90aGluZyByZW5kZXJzXG4gICAqIHRoZW0g4oCUIHBhc3MgdGhlbSB0byBgYnVpbGRTdWJtaXRSZXN1bHRgIHNvIGEgaGFuZC1yb2xsZWQgc3VibWl0IGNhcnJpZXNcbiAgICogdGhlIHNhbWUgYHRleHQ6IFwic2tpcHBlZFwiYCBlbnRyaWVzIHRoZSBTREsncyBvd24gcmVxdWVzdHMgZG8uXG4gICAqL1xuICBza2lwcGVkUGFyYW1zOiBTa2lwcGVkUGFyYW1TdGF0ZVtdO1xuICBzdWdnZXN0aW9uUGlsbHM6IFN1Z2dlc3Rpb25bXTtcbiAgc2VnbWVudHM6IFNlZ21lbnRbXTtcbiAgbmV3UGFyYW1JZDogc3RyaW5nIHwgbnVsbDtcbiAgc3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25bXTtcbiAgLyoqXG4gICAqIFJlc3VsdHMgb2YgdGhlIGxhdGVzdCBwcm9kdWN0IHNlYXJjaC4gQWx3YXlzIGVtcHR5IHVubGVzcyBgcHJvZHVjdHNgIGlzXG4gICAqIGNvbmZpZ3VyZWQuIEFscmVhZHkgZm9sZGVkIGludG8gdGhlIGRyb3Bkb3duIHNuYXBzaG90IOKAlCByZWFkIGl0IGhlcmUgb25seVxuICAgKiB3aGVuIHJlbmRlcmluZyB5b3VyIG93biBzdHJpcC5cbiAgICovXG4gIHByb2R1Y3RzOiBQcm9kdWN0W107XG4gIGFjdGl2ZUluZGV4OiBudW1iZXI7XG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbiAgaXNSZWFkeTogYm9vbGVhbjtcbiAgaXNGb2N1c2VkOiBib29sZWFuO1xuICBpc0Ryb3Bkb3duT3BlbjogYm9vbGVhbjtcbiAgcGxhY2Vob2xkZXJUZXh0OiBzdHJpbmc7XG4gIGVycm9yOiBFcnJvciB8IG51bGw7XG4gIGVkaXRpbmdQYXJhbTogQ29tcGxldGVkUGFyYW1TdGF0ZSB8IG51bGw7XG4gIC8qKlxuICAgKiBTZXQgd2hpbGUgdGhlIHVzZXIgaXMgcGlja2luZyBhIGRhdGUgZm9yIGEgc3BhbiB0aGUgc2VydmVyIGlkZW50aWZpZWQgYXNcbiAgICogb25lIOKAlCBcInNlcHRlbWJlciA1dGhcIiBpbiBcImZseSB0byB2ZWdhcyBvbiBzZXB0ZW1iZXIgNXRoXCIuIE51bGwgb3RoZXJ3aXNlLlxuICAgKi9cbiAgZWRpdGluZ0lkZW50aWZpZWQ6IHtcbiAgICBpZDogc3RyaW5nO1xuICAgIHR5cGU6IHN0cmluZztcbiAgICBhbmNob3I6IG51bWJlcjtcbiAgICB0YWlsOiBudW1iZXI7XG4gICAgaXNvOiBzdHJpbmcgfCBudWxsO1xuICB9IHwgbnVsbDtcbiAgZWRpdGluZ0FuY2hvcjogbnVtYmVyIHwgbnVsbDtcbiAgY2FyZXRPZmZzZXQ6IG51bWJlciB8IG51bGw7XG59XG5cbi8qKlxuICogQ29tcG9zaXRlIHN0YXRlIHNoYXBlIGZvciB0aGUgZHJvcGRvd24gdmlldyBsYXllci4gVGllciAyIGNvbnN1bWVycyBiaW5kXG4gKiB0aGUgZHJvcGRvd24gY29tcG9uZW50IHRvIHRoaXMgc25hcHNob3Q7IFRpZXIgMSB1c2VzIHRoZSBzYW1lIHNoYXBlXG4gKiBpbnRlcm5hbGx5LlxuICpcbiAqIEBwdWJsaWNcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBSUF1dG9jb21wbGV0ZURyb3Bkb3duU3RhdGUge1xuICAvKiogQWN0aXZlIHN1Z2dlc3Rpb24gKyBmaWx0ZXJlZCBvcHRpb25zIHRvIHJlbmRlciBpbiB0aGUgZ3JpZC4gKi9cbiAgc3VnZ2VzdGlvbnM6IFN1Z2dlc3Rpb25bXTtcbiAgLyoqIEN1cnJlbnRseSBoaWdobGlnaHRlZCBvcHRpb24gaW5kZXguIC0xIHdoZW4gbm9uZS4gKi9cbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgLyoqIFdoZXRoZXIgdGhlIGRyb3Bkb3duIHNob3VsZCBiZSB2aXNpYmxlLiAqL1xuICBpc09wZW46IGJvb2xlYW47XG4gIC8qKiBQaWxscyB0byByZW5kZXIgaW4gdGhlIGRyb3Bkb3duJ3MgcGlsbGJhciAocmUtZWRpdCBwaWxsIG9yIGFsbCBzdWdnZXN0aW9uIHBpbGxzKS4gKi9cbiAgcGlsbHM6IFN1Z2dlc3Rpb25bXTtcbiAgLyoqIFdoZXRoZXIgdGhlIGFjdGl2ZSBwaWxsIHJlbmRlcnMgc2VsZWN0ZWQgKGZ1bGwgb3BhY2l0eSkgdnMuIHRoZSBgZmlyc3RgIHRpZXIuICovXG4gIGlzQWN0aXZlUGlsbFNlbGVjdGVkOiBib29sZWFuO1xuICAvKiogVHJ1ZSB3aGVuIHRoZSBkcm9wZG93biBzaG91bGQgcmVuZGVyIGl0cyBsb2FkaW5nIHNrZWxldG9uLiAqL1xuICBpc0xvYWRpbmc6IGJvb2xlYW47XG4gIC8qKiBXaGV0aGVyIHRoZSBpbnB1dCBoYXMgbm8gdHlwZWQgdGV4dCDigJQgdGhlIHNvbGUgc3RhdGUgdGhhdCBzdXJmYWNlcyBcInRhYiB0byBzZWxlY3RcIiBpbiB0aGUgZm9vdGVyIGhpbnQuICovXG4gIGlzSW5wdXRFbXB0eTogYm9vbGVhbjtcbiAgLyoqIFByb2R1Y3QgY2FyZHMgdG8gcmVuZGVyIGJlbG93IHRoZSBvcHRpb25zIGdyaWQuIEVtcHR5ICh0aGUgZGVmYXVsdCkgcmVuZGVycyBubyBzdHJpcC4gKi9cbiAgcHJvZHVjdHM6IFByb2R1Y3RbXTtcbiAgLyoqXG4gICAqIFRydWUgd2hpbGUgYSBjb21wbGV0ZWQgcGFyYW0gaXMgYmVpbmcgcmUtZWRpdGVkLiBUaGUgcGlsbGJhciB0aGVuIHNob3dzXG4gICAqIHRoZSBwYXJhbSBiZWluZyByZS1lZGl0ZWQg4oCUIG5vdCBza2lwcGFibGUg4oCUIHNvIHRoZSBza2lwIGJ1dHRvbiBoaWRlcy5cbiAgICogT3B0aW9uYWwgKHVuZGVmaW5lZCDih5Igbm90IGVkaXRpbmcpIHNvIGV4aXN0aW5nIGNvbnN1bWVyIGNvZGUgY29uc3RydWN0aW5nXG4gICAqIHRoaXMgc3RhdGUg4oCUIHRlc3QgZml4dHVyZXMsIGZha2UgY29udHJvbGxlcnMg4oCUIGtlZXBzIGNvbXBpbGluZyBhY3Jvc3MgdGhlXG4gICAqIG1pbm9yIGJ1bXAgdGhhdCBpbnRyb2R1Y2VkIGl0LlxuICAgKi9cbiAgaXNFZGl0aW5nPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRydWUgZm9yIHRoZSB+NTAwbXMgd2luZG93IGFmdGVyIGFuIG9wdGlvbiBpcyBzZWxlY3RlZCwgd2hpbGUgdGhlIGFuc3dlcmVkXG4gICAqIHN1Z2dlc3Rpb24gYW5pbWF0ZXMgb3V0LiBgaXNMb2FkaW5nYCBpcyBkZWxpYmVyYXRlbHkgc3VwcHJlc3NlZCBpbiB0aGF0XG4gICAqIHdpbmRvdywgYnV0IHRoZSBjb3JlJ3MgYHNraXBBY3RpdmVQaWxsKClgIG5vLW9wcyBpbiBpdCDigJQgdGhlIHNraXAgYnV0dG9uXG4gICAqIHJlbmRlcnMgZGlzYWJsZWQgb2ZmIHRoaXMgZmxhZyBpbnN0ZWFkIG9mIHN3YWxsb3dpbmcgY2xpY2tzIHNpbGVudGx5LlxuICAgKiBPcHRpb25hbCAodW5kZWZpbmVkIOKHkiBmYWxzZSkgZm9yIHRoZSBzYW1lIGNvbXBpbGUtY29tcGF0IHJlYXNvbiBhc1xuICAgKiBgaXNFZGl0aW5nYC5cbiAgICovXG4gIGluU2VsZWN0aW9uQW5pbWF0aW9uPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFdoZXJlIHRoZSBkcm9wZG93biBvcGVucyByZWxhdGl2ZSB0byB0aGUgaW5wdXQg4oCUIG1pcnJvcnMgdGhlIGNvbnRyb2xsZXInc1xuICAgKiBgb3B0aW9uc1Bvc2l0aW9uYCBvcHRpb24uIGA8YWktYXV0b2NvbXBsZXRlLWRyb3Bkb3duPmAgcmVhZHMgaXQgZnJvbSBoZXJlLCBzb1xuICAgKiBwbGFjZW1lbnQgaXMgY29uZmlndXJlZCBvbmNlIG9uIHRoZSBjb250cm9sbGVyIChubyBzZXBhcmF0ZSBpbnB1dCB0byBzeW5jKS5cbiAgICovXG4gIG9wdGlvbnNQb3NpdGlvbjogXCJhYm92ZVwiIHwgXCJiZWxvd1wiO1xuICAvKipcbiAgICogSG93IHRoZSBhY3RpdmUgcGlsbCBpcyBhbnN3ZXJlZC4gYFwiZGF0ZVwiYCByZW5kZXJzIGEgY2FsZW5kYXIgaW4gcGxhY2Ugb2ZcbiAgICogdGhlIG9wdGlvbnMgZ3JpZCwgYW5kIGBzdWdnZXN0aW9uc1swXS5vcHRpb25zYCB0aGVuIGNhcnJpZXMgdGhhdCBtb250aCdzXG4gICAqIGNlbGxzIHJhdGhlciB0aGFuIHRoZSBwYXJhbWV0ZXIncyBvd24gb3B0aW9ucyDigJQgdGhlIGNvcmUgc3dhcHMgdGhlbSBiZWZvcmVcbiAgICogdGhleSByZWFjaCBoZXJlLiBPcHRpb25hbCAodW5kZWZpbmVkIOKHkiBgXCJvcHRpb25zXCJgKSBmb3IgdGhlIHNhbWVcbiAgICogY29tcGlsZS1jb21wYXQgcmVhc29uIGFzIGBpc0VkaXRpbmdgLlxuICAgKi9cbiAgZm9ybWF0VHlwZT86IEZvcm1hdFR5cGU7XG4gIC8qKiBUaGUgbW9udGggdGhlIGNhbGVuZGFyIHNob3dzLiBOdWxsL3VuZGVmaW5lZCB1bmxlc3MgYGZvcm1hdFR5cGVgIGlzIGBcImRhdGVcImAuICovXG4gIGRhdGVWaWV3PzogRGF0ZU1vbnRoVmlldyB8IG51bGw7XG4gIC8qKiBgWVlZWS1NTS1ERGAgYWxyZWFkeSBoZWxkIGJ5IHRoZSBwYXJhbSBiZWluZyByZS1lZGl0ZWQsIHNvIGl0cyBjZWxsIHJlYWRzIGFzIHRoZSBjdXJyZW50IGFuc3dlci4gKi9cbiAgc2VsZWN0ZWREYXRlSXNvPzogc3RyaW5nIHwgbnVsbDtcbn1cbiJdfQ==
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL3NoYXJlZC90eXBlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUge1xuICBBUElDb25maWcsXG4gIEF1dG9jb21wbGV0ZVJlc3VsdCxcbiAgQ29tcGxldGVkUGFyYW1TdGF0ZSxcbiAgRGF0ZU1vbnRoVmlldyxcbiAgRm9ybWF0VHlwZSxcbiAgT3B0aW9uT3ZlcnJpZGVzLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0c0NvbmZpZyxcbiAgU2VnbWVudCxcbiAgU2tpcHBlZFBhcmFtU3RhdGUsXG4gIFN1Z2dlc3Rpb24sXG59IGZyb20gXCJAbWFnaWN4LWVuZy9haS1hdXRvY29tcGxldGUtdmFuaWxsYVwiO1xuXG4vKipcbiAqIENvbnN0cnVjdGlvbi10aW1lIG9wdGlvbnMgZm9yIHtAbGluayBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJ9LlxuICpcbiAqIE1pcnJvcnMgdGhlIHByb3BzIHRoZSBSZWFjdCBgdXNlQUlBdXRvY29tcGxldGUoKWAgaG9vayBhY2NlcHRzLCBtaW51cyB0aGVcbiAqIGZpZWxkcyB0aGF0IG9ubHkgbWFrZSBzZW5zZSBmb3IgYSBSZWFjdCBjb21wb25lbnQgc2hlbGwgKGBjb2x1bW5zYCBpcyBoZXJlO1xuICogYGF1dG9Gb2N1c2AsIGBjbGFzc05hbWVgLCBgcGlsbFBsYWNlbWVudGAsIGV0Yy4gbGl2ZSBvbiB0aGUgVGllciAxXG4gKiBgPGFpLWF1dG9jb21wbGV0ZT5gIGNvbXBvbmVudCkuXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlck9wdGlvbnMge1xuICAvKiogUnVudGltZSBBUEkgY29uZmlndXJhdGlvbiAoYXBpS2V5LCBlbmRwb2ludCwgZXRjLikuICovXG4gIGFwaUNvbmZpZz86IEFQSUNvbmZpZztcbiAgLyoqXG4gICAqIE9wdGlvbmFsIHVzZXIgY29udGV4dC4gSW5jbHVkZSB3aGF0ZXZlciB5b3Uga25vdyBhYm91dCB0aGUgdXNlciDigJQgYVxuICAgKiBwcm9maWxlLCBwcmVmZXJlbmNlcywgd29ya3NwYWNlLCBhbnl0aGluZyDigJQgdG8gcGVyc29uYWxpemUgc3VnZ2VzdGVkXG4gICAqIHBhcmFtZXRlcnMgYW5kIG9wdGlvbnMgdG8gdGhlbS5cbiAgICovXG4gIGFkZGl0aW9uYWxDb250ZXh0PzogUmVjb3JkPHN0cmluZywgdW5rbm93bj47XG4gIC8qKiBQZXItc3VnZ2VzdGlvbi10eXBlIGNsaWVudC1zaWRlIG9wdGlvbiBvdmVycmlkZXMuICovXG4gIG9wdGlvbk92ZXJyaWRlcz86IE9wdGlvbk92ZXJyaWRlcztcbiAgLyoqIFdoZW4gdHJ1ZSwgY29tcGxldGVkIHBhcmFtcycgbGl0ZXJhbCB0ZXh0IGlzIG9taXR0ZWQgZnJvbSBBUEkgcmVxdWVzdHMuICovXG4gIG1hc2tDb21wbGV0ZWRUZXh0PzogYm9vbGVhbjtcbiAgLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBkcm9wZG93biBncmlkLiBEZWZhdWx0OiAyLiAqL1xuICBjb2x1bW5zPzogbnVtYmVyO1xuICAvKipcbiAgICogV2hlcmUgdGhlIGRyb3Bkb3duIG9wZW5zIHJlbGF0aXZlIHRvIHRoZSBpbnB1dC4gRGVmYXVsdDogXCJiZWxvd1wiLlxuICAgKlxuICAgKiBSZWFkIGJ5IHRoZSBrZXlib2FyZCBjb250cm9sbGVyIHRvIGRlY2lkZSB3aGljaCB2ZXJ0aWNhbC1hcnJvdyBrZXkgb3BlbnNcbiAgICogdGhlIGRyb3Bkb3duIGZyb20gdGhlIGlucHV0IOKAlCBBcnJvd0Rvd24gd2hlbiB0aGUgZHJvcGRvd24gaXMgYmVsb3csXG4gICAqIEFycm93VXAgd2hlbiBpdCdzIGFib3ZlLlxuICAgKi9cbiAgb3B0aW9uc1Bvc2l0aW9uPzogXCJhYm92ZVwiIHwgXCJiZWxvd1wiO1xuICAvKipcbiAgICogV2hlbiB0aGUgZHJvcGRvd24gYXBwZWFycy4gXCJhdXRvXCIgKGRlZmF1bHQpIHNob3dzIHdoZW4gb3B0aW9ucyBhcmVcbiAgICogYXZhaWxhYmxlOyBcIm1hbnVhbFwiIHNob3dzIG9ubHkgb24gcGlsbCB0YXA7IFwiaGlkZGVuXCIgbmV2ZXIgc2hvd3MuXG4gICAqL1xuICBkcm9wZG93blRyaWdnZXI/OiBcImF1dG9cIiB8IFwibWFudWFsXCIgfCBcImhpZGRlblwiO1xuICAvKiogV2hlbiB0cnVlIChkZWZhdWx0KSwgdGhlIGRyb3Bkb3duIGNsb3NlcyBpZiB0aGUgaW5wdXQgbG9zZXMgZm9jdXMuICovXG4gIGNsb3NlRHJvcGRvd25PbkJsdXI/OiBib29sZWFuO1xuICAvKiogV2hlbiB0cnVlIChkZWZhdWx0KSwgbm9uLXRhcHBhYmxlIG9wdGlvbnMgcmVuZGVyIGFsb25nc2lkZSB0YXBwYWJsZSBvbmVzLiAqL1xuICBzaG93Tm9uVGFwcGFibGVPcHRpb25zPzogYm9vbGVhbjtcbiAgLyoqXG4gICAqIFRlbGVtZXRyeSBzdXJmYWNlIGlkZW50aWZpZXIuIFNldCBhdXRvbWF0aWNhbGx5IHRvIFwiZnVsbC1zZGtcIiBieSB0aGVcbiAgICogVGllciAxIGA8YWktYXV0b2NvbXBsZXRlPmAgY29tcG9uZW50LiBEZWZhdWx0cyB0byBcImhlYWRsZXNzLXNka1wiLlxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHNvdXJjZT86IFwiZnVsbC1zZGtcIiB8IFwiaGVhZGxlc3Mtc2RrXCI7XG4gIC8qKiBDYWxsZWQgd2hlbiB0aGUgdXNlciBzdWJtaXRzIChFbnRlciBrZXkgb3IgYHN1Ym1pdCgpYCBhY3Rpb24pLiAqL1xuICBvblN1Ym1pdD86IChyZXN1bHQ6IEF1dG9jb21wbGV0ZVJlc3VsdCkgPT4gdm9pZDtcbiAgLyoqIENhbGxlZCB3aGVuIGEgZmV0Y2ggZmFpbHMuICovXG4gIG9uRXJyb3I/OiAoZXJyb3I6IEVycm9yKSA9PiB2b2lkO1xuICAvKiogQ2FsbGVkIHdoZW4gdGhlIGVkaXRvciB0ZXh0IGNoYW5nZXMgKGNvbnRyb2xsZWQtbW9kZSBzaWduYWwpLiAqL1xuICBvbkNoYW5nZT86ICh0ZXh0OiBzdHJpbmcpID0+IHZvaWQ7XG4gIC8qKiBDYWxsZWQgd2hlbiBjb21wbGV0ZWQgcGFyYW1zIGNoYW5nZSAoY29udHJvbGxlZC1tb2RlIHNpZ25hbCkuICovXG4gIG9uUGFyYW1zQ2hhbmdlPzogKHBhcmFtczogQ29tcGxldGVkUGFyYW1TdGF0ZVtdKSA9PiB2b2lkO1xuICAvKiogQ2FsbGVkIHdoZW4gdGhlIGlucHV0IGdhaW5zIGZvY3VzLiAqL1xuICBvbkZvY3VzPzogKCkgPT4gdm9pZDtcbiAgLyoqIENhbGxlZCB3aGVuIHRoZSBpbnB1dCBsb3NlcyBmb2N1cy4gKi9cbiAgb25CbHVyPzogKCkgPT4gdm9pZDtcbiAgLyoqXG4gICAqIE9wdC1pbiBwcm9kdWN0IHN0cmlwLiBXaGVuIHNldCwgdGhlIGRyb3Bkb3duIHJlbmRlcnMgYSBob3Jpem9udGFsIHJvdyBvZlxuICAgKiBwcm9kdWN0IGNhcmRzIGJlbG93IHRoZSBvcHRpb25zIGdyaWQsIGZlZCBieSB0aGUgaW50ZWdyYXRpb24ncyBvd24gc2VhcmNoXG4gICAqIGVuZHBvaW50IG9uIHRoZSBTREsncyBleGlzdGluZyBmZXRjaCBjYWRlbmNlLiBPbWl0IGl0IGFuZCBub3RoaW5nIGFib3V0XG4gICAqIHRoZSBkcm9wZG93biBjaGFuZ2VzIOKAlCBubyByZXF1ZXN0LCBubyBtYXJrdXAsIG5vIGxheW91dCBzaGlmdC5cbiAgICovXG4gIHByb2R1Y3RzPzogUHJvZHVjdHNDb25maWc7XG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgdXNlciBhY3RpdmF0ZXMgYSBwcm9kdWN0IGNhcmQuIFRoZSBTREsgZG9lcyBub3QgbmF2aWdhdGUg4oCUXG4gICAqIHRoZSBpbnRlZ3JhdGlvbiBkZWNpZGVzIHdoYXQgYSBzZWxlY3Rpb24gbWVhbnMuIE1vZGlmaWVyIC8gbWlkZGxlIGNsaWNrc1xuICAgKiBhcmUgbGVmdCB0byB0aGUgYnJvd3NlciAoY21kLWNsaWNrIHN0aWxsIG9wZW5zIGEgdGFiKSBhbmQgZG9uJ3QgZmlyZSB0aGlzLlxuICAgKi9cbiAgb25Qcm9kdWN0U2VsZWN0PzogKHByb2R1Y3Q6IFByb2R1Y3QpID0+IHZvaWQ7XG4gIC8qKiBJbml0aWFsIGNvbnRyb2xsZWQgdGV4dCB2YWx1ZS4gKi9cbiAgdmFsdWU/OiBzdHJpbmc7XG4gIC8qKiBJbml0aWFsIGNvbnRyb2xsZWQgY29tcGxldGVkIHBhcmFtcy4gKi9cbiAgY29tcGxldGVkUGFyYW1zPzogQ29tcGxldGVkUGFyYW1TdGF0ZVtdO1xuICAvKipcbiAgICogQ2FyZXQtc2V0IGNhbGxiYWNrLiBJbnZva2VkIGJ5IHRoZSBjb3JlIHdoZW4gcmUtZWRpdCAvIEJhY2tzcGFjZSBmbG93c1xuICAgKiBuZWVkIHRoZSBlZGl0b3IgY2FyZXQgcGFya2VkIGF0IGEgc3BlY2lmaWMgcGxhaW4tdGV4dCBvZmZzZXQuIFRoZSBUaWVyIDFcbiAgICogYDxhaS1hdXRvY29tcGxldGU+YCBjb21wb25lbnQgd2lyZXMgdGhpcyBmcm9tIGl0cyBlZGl0b3IgaG9zdDsgaGVhZGxlc3NcbiAgICogY29uc3VtZXJzIGNhbiBsZWF2ZSBpdCB1bnNldC5cbiAgICogQGludGVybmFsXG4gICAqL1xuICBzZXRDdXJzb3I/OiAob2Zmc2V0OiBudW1iZXIpID0+IHZvaWQ7XG59XG5cbi8qKlxuICogU3Vic2V0IG9mIHtAbGluayBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJPcHRpb25zfSB0aGF0IGNhbiBiZSBjaGFuZ2VkIGFmdGVyXG4gKiBjb25zdHJ1Y3Rpb24uIEV4Y2x1ZGVzIGV2ZW50IGNhbGxiYWNrcyAodGhvc2UgYXJlIHJlZ2lzdGVyZWQgb25jZSBhdFxuICogY29uc3RydWN0aW9uIOKAlCBzZWUgdmFuaWxsYSBgQ29yZVVwZGF0ZU9wdGlvbnNgKS5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCB0eXBlIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlclVwZGF0ZSA9IFBhcnRpYWw8XG4gIE9taXQ8XG4gICAgQUlBdXRvY29tcGxldGVDb250cm9sbGVyT3B0aW9ucyxcbiAgICB8IFwib25TdWJtaXRcIlxuICAgIHwgXCJvbkVycm9yXCJcbiAgICB8IFwib25DaGFuZ2VcIlxuICAgIHwgXCJvblBhcmFtc0NoYW5nZVwiXG4gICAgfCBcIm9uRm9jdXNcIlxuICAgIHwgXCJvbkJsdXJcIlxuICAgIHwgXCJvblByb2R1Y3RTZWxlY3RcIlxuICAgIHwgXCJzZXRDdXJzb3JcIlxuICA+XG4+O1xuXG4vKipcbiAqIFNuYXBzaG90IG9mIHRoZSBjb250cm9sbGVyJ3MgcmVhY3RpdmUgc3RhdGUuIEVhY2ggZmllbGQgaXMgYWxzbyBleHBvc2VkIGFzXG4gKiBhIHN0YW5kLWFsb25lIG9ic2VydmFibGUgb24gdGhlIGNvbnRyb2xsZXIgKGUuZy4gYGNvbnRyb2xsZXIudGV4dCRgKS5cbiAqXG4gKiBgc3VnZ2VzdGlvblBpbGxzYCBtaXJyb3JzIFJlYWN0J3MgYHN1Z2dlc3Rpb25QaWxsc2Ag4oCUIHRoZSBhY3Rpb25hYmxlXG4gKiBzdWJzZXQgb2YgYHN1Z2dlc3Rpb25zYCByZWFkeSBmb3IgcGlsbCByZW5kZXJpbmcuIGBpc0xvYWRpbmdgIGlzIHRoZVxuICogVUktdmlzaWJsZSBsb2FkaW5nIGZsYWcgKHN1cHByZXNzZWQgZHVyaW5nIHRoZSBwb3N0LXNlbGVjdCBwcmVzc1xuICogYW5pbWF0aW9uIGFuZCBkdXJpbmcgcmUtZWRpdCwgd2hlcmUgY2FjaGVkIG9wdGlvbnMgc3RheSB2aXNpYmxlKS5cbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQUlBdXRvY29tcGxldGVDb250cm9sbGVyU3RhdGUge1xuICB0ZXh0OiBzdHJpbmc7XG4gIGNvbXBsZXRlZFBhcmFtczogQ29tcGxldGVkUGFyYW1TdGF0ZVtdO1xuICAvKipcbiAgICogU3VnZ2VzdGlvbnMgdGhlIHVzZXIgZGlzbWlzc2VkIHdpdGggdGhlIHNraXAga2V5ICjihpIpLiBOb3RoaW5nIHJlbmRlcnNcbiAgICogdGhlbSDigJQgcGFzcyB0aGVtIHRvIGBidWlsZFN1Ym1pdFJlc3VsdGAgc28gYSBoYW5kLXJvbGxlZCBzdWJtaXQgY2Fycmllc1xuICAgKiB0aGUgc2FtZSBgdGV4dDogXCJza2lwcGVkXCJgIGVudHJpZXMgdGhlIFNESydzIG93biByZXF1ZXN0cyBkby5cbiAgICovXG4gIHNraXBwZWRQYXJhbXM6IFNraXBwZWRQYXJhbVN0YXRlW107XG4gIHN1Z2dlc3Rpb25QaWxsczogU3VnZ2VzdGlvbltdO1xuICBzZWdtZW50czogU2VnbWVudFtdO1xuICBuZXdQYXJhbUlkOiBzdHJpbmcgfCBudWxsO1xuICBzdWdnZXN0aW9uczogU3VnZ2VzdGlvbltdO1xuICAvKipcbiAgICogUmVzdWx0cyBvZiB0aGUgbGF0ZXN0IHByb2R1Y3Qgc2VhcmNoLiBBbHdheXMgZW1wdHkgdW5sZXNzIGBwcm9kdWN0c2AgaXNcbiAgICogY29uZmlndXJlZC4gQWxyZWFkeSBmb2xkZWQgaW50byB0aGUgZHJvcGRvd24gc25hcHNob3Qg4oCUIHJlYWQgaXQgaGVyZSBvbmx5XG4gICAqIHdoZW4gcmVuZGVyaW5nIHlvdXIgb3duIHN0cmlwLlxuICAgKi9cbiAgcHJvZHVjdHM6IFByb2R1Y3RbXTtcbiAgYWN0aXZlSW5kZXg6IG51bWJlcjtcbiAgaXNMb2FkaW5nOiBib29sZWFuO1xuICBpc1JlYWR5OiBib29sZWFuO1xuICBpc0ZvY3VzZWQ6IGJvb2xlYW47XG4gIGlzRHJvcGRvd25PcGVuOiBib29sZWFuO1xuICBwbGFjZWhvbGRlclRleHQ6IHN0cmluZztcbiAgZXJyb3I6IEVycm9yIHwgbnVsbDtcbiAgZWRpdGluZ1BhcmFtOiBDb21wbGV0ZWRQYXJhbVN0YXRlIHwgbnVsbDtcbiAgLyoqXG4gICAqIFNldCB3aGlsZSB0aGUgdXNlciBpcyBwaWNraW5nIGEgZGF0ZSBmb3IgYSBzcGFuIHRoZSBzZXJ2ZXIgaWRlbnRpZmllZCBhc1xuICAgKiBvbmUg4oCUIFwic2VwdGVtYmVyIDV0aFwiIGluIFwiZmx5IHRvIHZlZ2FzIG9uIHNlcHRlbWJlciA1dGhcIi4gTnVsbCBvdGhlcndpc2UuXG4gICAqL1xuICBlZGl0aW5nSWRlbnRpZmllZDoge1xuICAgIGlkOiBzdHJpbmc7XG4gICAgdHlwZTogc3RyaW5nO1xuICAgIGFuY2hvcjogbnVtYmVyO1xuICAgIHRhaWw6IG51bWJlcjtcbiAgICBpc286IHN0cmluZyB8IG51bGw7XG4gIH0gfCBudWxsO1xuICBlZGl0aW5nQW5jaG9yOiBudW1iZXIgfCBudWxsO1xuICBjYXJldE9mZnNldDogbnVtYmVyIHwgbnVsbDtcbn1cblxuLyoqXG4gKiBDb21wb3NpdGUgc3RhdGUgc2hhcGUgZm9yIHRoZSBkcm9wZG93biB2aWV3IGxheWVyLiBUaWVyIDIgY29uc3VtZXJzIGJpbmRcbiAqIHRoZSBkcm9wZG93biBjb21wb25lbnQgdG8gdGhpcyBzbmFwc2hvdDsgVGllciAxIHVzZXMgdGhlIHNhbWUgc2hhcGVcbiAqIGludGVybmFsbHkuXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgaW50ZXJmYWNlIEFJQXV0b2NvbXBsZXRlRHJvcGRvd25TdGF0ZSB7XG4gIC8qKiBBY3RpdmUgc3VnZ2VzdGlvbiArIGZpbHRlcmVkIG9wdGlvbnMgdG8gcmVuZGVyIGluIHRoZSBncmlkLiAqL1xuICBzdWdnZXN0aW9uczogU3VnZ2VzdGlvbltdO1xuICAvKiogQ3VycmVudGx5IGhpZ2hsaWdodGVkIG9wdGlvbiBpbmRleC4gLTEgd2hlbiBub25lLiAqL1xuICBhY3RpdmVJbmRleDogbnVtYmVyO1xuICAvKiogV2hldGhlciB0aGUgZHJvcGRvd24gc2hvdWxkIGJlIHZpc2libGUuICovXG4gIGlzT3BlbjogYm9vbGVhbjtcbiAgLyoqIFBpbGxzIHRvIHJlbmRlciBpbiB0aGUgZHJvcGRvd24ncyBwaWxsYmFyIChyZS1lZGl0IHBpbGwgb3IgYWxsIHN1Z2dlc3Rpb24gcGlsbHMpLiAqL1xuICBwaWxsczogU3VnZ2VzdGlvbltdO1xuICAvKiogV2hldGhlciB0aGUgYWN0aXZlIHBpbGwgcmVuZGVycyBzZWxlY3RlZCAoZnVsbCBvcGFjaXR5KSB2cy4gdGhlIGBmaXJzdGAgdGllci4gKi9cbiAgaXNBY3RpdmVQaWxsU2VsZWN0ZWQ6IGJvb2xlYW47XG4gIC8qKiBUcnVlIHdoZW4gdGhlIGRyb3Bkb3duIHNob3VsZCByZW5kZXIgaXRzIGxvYWRpbmcgc2tlbGV0b24uICovXG4gIGlzTG9hZGluZzogYm9vbGVhbjtcbiAgLyoqIFdoZXRoZXIgdGhlIGlucHV0IGhhcyBubyB0eXBlZCB0ZXh0IOKAlCB0aGUgc29sZSBzdGF0ZSB0aGF0IHN1cmZhY2VzIFwidGFiIHRvIHNlbGVjdFwiIGluIHRoZSBmb290ZXIgaGludC4gKi9cbiAgaXNJbnB1dEVtcHR5OiBib29sZWFuO1xuICAvKiogUHJvZHVjdCBjYXJkcyB0byByZW5kZXIgYmVsb3cgdGhlIG9wdGlvbnMgZ3JpZC4gRW1wdHkgKHRoZSBkZWZhdWx0KSByZW5kZXJzIG5vIHN0cmlwLiAqL1xuICBwcm9kdWN0czogUHJvZHVjdFtdO1xuICAvKipcbiAgICogVHJ1ZSB3aGlsZSBhIGNvbXBsZXRlZCBwYXJhbSBpcyBiZWluZyByZS1lZGl0ZWQuIFRoZSBwaWxsYmFyIHRoZW4gc2hvd3NcbiAgICogdGhlIHBhcmFtIGJlaW5nIHJlLWVkaXRlZCDigJQgbm90IHNraXBwYWJsZSDigJQgc28gdGhlIHNraXAgYnV0dG9uIGhpZGVzLlxuICAgKiBPcHRpb25hbCAodW5kZWZpbmVkIOKHkiBub3QgZWRpdGluZykgc28gZXhpc3RpbmcgY29uc3VtZXIgY29kZSBjb25zdHJ1Y3RpbmdcbiAgICogdGhpcyBzdGF0ZSDigJQgdGVzdCBmaXh0dXJlcywgZmFrZSBjb250cm9sbGVycyDigJQga2VlcHMgY29tcGlsaW5nIGFjcm9zcyB0aGVcbiAgICogbWlub3IgYnVtcCB0aGF0IGludHJvZHVjZWQgaXQuXG4gICAqL1xuICBpc0VkaXRpbmc/OiBib29sZWFuO1xuICAvKipcbiAgICogVHJ1ZSBmb3IgdGhlIH41MDBtcyB3aW5kb3cgYWZ0ZXIgYW4gb3B0aW9uIGlzIHNlbGVjdGVkLCB3aGlsZSB0aGUgYW5zd2VyZWRcbiAgICogc3VnZ2VzdGlvbiBhbmltYXRlcyBvdXQuIGBpc0xvYWRpbmdgIGlzIGRlbGliZXJhdGVseSBzdXBwcmVzc2VkIGluIHRoYXRcbiAgICogd2luZG93LCBidXQgdGhlIGNvcmUncyBgc2tpcEFjdGl2ZVBpbGwoKWAgbm8tb3BzIGluIGl0IOKAlCB0aGUgc2tpcCBidXR0b25cbiAgICogcmVuZGVycyBkaXNhYmxlZCBvZmYgdGhpcyBmbGFnIGluc3RlYWQgb2Ygc3dhbGxvd2luZyBjbGlja3Mgc2lsZW50bHkuXG4gICAqIE9wdGlvbmFsICh1bmRlZmluZWQg4oeSIGZhbHNlKSBmb3IgdGhlIHNhbWUgY29tcGlsZS1jb21wYXQgcmVhc29uIGFzXG4gICAqIGBpc0VkaXRpbmdgLlxuICAgKi9cbiAgaW5TZWxlY3Rpb25BbmltYXRpb24/OiBib29sZWFuO1xuICAvKipcbiAgICogV2hlcmUgdGhlIGRyb3Bkb3duIG9wZW5zIHJlbGF0aXZlIHRvIHRoZSBpbnB1dCDigJQgbWlycm9ycyB0aGUgY29udHJvbGxlcidzXG4gICAqIGBvcHRpb25zUG9zaXRpb25gIG9wdGlvbi4gYDxhaS1hdXRvY29tcGxldGUtZHJvcGRvd24+YCByZWFkcyBpdCBmcm9tIGhlcmUsIHNvXG4gICAqIHBsYWNlbWVudCBpcyBjb25maWd1cmVkIG9uY2Ugb24gdGhlIGNvbnRyb2xsZXIgKG5vIHNlcGFyYXRlIGlucHV0IHRvIHN5bmMpLlxuICAgKi9cbiAgb3B0aW9uc1Bvc2l0aW9uOiBcImFib3ZlXCIgfCBcImJlbG93XCI7XG4gIC8qKlxuICAgKiBIb3cgdGhlIGFjdGl2ZSBwaWxsIGlzIGFuc3dlcmVkLiBgXCJkYXRlXCJgIHJlbmRlcnMgYSBjYWxlbmRhciBpbiBwbGFjZSBvZlxuICAgKiB0aGUgb3B0aW9ucyBncmlkLCBhbmQgYHN1Z2dlc3Rpb25zWzBdLm9wdGlvbnNgIHRoZW4gY2FycmllcyB0aGF0IG1vbnRoJ3NcbiAgICogY2VsbHMgcmF0aGVyIHRoYW4gdGhlIHBhcmFtZXRlcidzIG93biBvcHRpb25zIOKAlCB0aGUgY29yZSBzd2FwcyB0aGVtIGJlZm9yZVxuICAgKiB0aGV5IHJlYWNoIGhlcmUuIE9wdGlvbmFsICh1bmRlZmluZWQg4oeSIGBcIm9wdGlvbnNcImApIGZvciB0aGUgc2FtZVxuICAgKiBjb21waWxlLWNvbXBhdCByZWFzb24gYXMgYGlzRWRpdGluZ2AuXG4gICAqL1xuICBmb3JtYXRUeXBlPzogRm9ybWF0VHlwZTtcbiAgLyoqIFRoZSBtb250aCB0aGUgY2FsZW5kYXIgc2hvd3MuIE51bGwvdW5kZWZpbmVkIHVubGVzcyBgZm9ybWF0VHlwZWAgaXMgYFwiZGF0ZVwiYC4gKi9cbiAgZGF0ZVZpZXc/OiBEYXRlTW9udGhWaWV3IHwgbnVsbDtcbiAgLyoqIGBZWVlZLU1NLUREYCBhbHJlYWR5IGhlbGQgYnkgdGhlIHBhcmFtIGJlaW5nIHJlLWVkaXRlZCwgc28gaXRzIGNlbGwgcmVhZHMgYXMgdGhlIGN1cnJlbnQgYW5zd2VyLiAqL1xuICBzZWxlY3RlZERhdGVJc28/OiBzdHJpbmcgfCBudWxsO1xufVxuIl19
|