@magicx-eng/ai-autocomplete-angular 0.25.2 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import { CommonModule } from "@angular/common";
2
2
  import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation, } from "@angular/core";
3
- import { attachProductRowWheel, } from "@magicx-eng/ai-autocomplete-vanilla";
3
+ import { attachProductRowWheel, productInitial, } from "@magicx-eng/ai-autocomplete-vanilla";
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  /**
@@ -36,6 +36,9 @@ export class ProductStripComponent {
36
36
  this.focusable = true;
37
37
  /** How the cards lay out — a scrolling row, or stacked as full-width rows. Default: "row". */
38
38
  this.layout = "row";
39
+ this.imageFallback = "image";
40
+ this.initial = productInitial;
41
+ this.failedImages = new Map();
39
42
  this.select = new EventEmitter();
40
43
  /**
41
44
  * Focus moved into / out of the strip. The panel closes on blur by default
@@ -58,6 +61,22 @@ export class ProductStripComponent {
58
61
  product.vendor ?? "",
59
62
  ].join("\0");
60
63
  }
64
+ ngOnChanges() {
65
+ const sources = new Map(this.products.map((product) => [product.id, product.imageUrl?.trim()]));
66
+ for (const [id, src] of this.failedImages) {
67
+ if (sources.get(id) !== src)
68
+ this.failedImages.delete(id);
69
+ }
70
+ }
71
+ imageSource(product) {
72
+ const src = product.imageUrl?.trim();
73
+ return src && this.failedImages.get(product.id) !== src ? src : null;
74
+ }
75
+ onImageError(product) {
76
+ const src = product.imageUrl?.trim();
77
+ if (src)
78
+ this.failedImages.set(product.id, src);
79
+ }
61
80
  /**
62
81
  * A mouse wheel over the row scrolls it sideways. The row sits inside the
63
82
  * section's `*ngIf`, so the query fires with the element as products arrive
@@ -104,10 +123,10 @@ export class ProductStripComponent {
104
123
  }
105
124
  }
106
125
  ProductStripComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ProductStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
107
- ProductStripComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ProductStripComponent, isStandalone: true, selector: "aia-product-strip", inputs: { products: "products", listboxId: "listboxId", focusable: "focusable", layout: "layout" }, outputs: { select: "select", focusChange: "focusChange" }, viewQueries: [{ propertyName: "row", first: true, predicate: ["row"], descendants: true }], ngImport: i0, template: "<!-- `group` is the one role a listbox accepts around a set of options, so the\n strip stays inside the listbox without breaking its content model. -->\n<section\n *ngIf=\"products.length > 0\"\n class=\"aia-products\"\n data-aia-products=\"\"\n [attr.data-aia-products-layout]=\"layout\"\n role=\"group\"\n [attr.aria-labelledby]=\"labelId\"\n>\n <!-- data-aia-products-label: the scroll arrow centres itself on this row. -->\n <div class=\"aia-products-label\" [id]=\"labelId\" data-aia-products-label=\"\">Products</div>\n\n <!-- #row: the component binds wheel-to-sideways scrolling on it. -->\n <div #row class=\"aia-products-row\" data-aia-products-row=\"\">\n <!-- A real <a href> rather than a <div>: it keeps the browser's own link\n affordances \u2014 cmd/ctrl-click for a new tab, middle-click, right-click \u2192\n \"copy link address\". role=\"option\" overrides how assistive tech\n announces it, which is correct inside a listbox; the deliberate trade\n is that AT no longer calls it a link. An attribute binding, so a\n product without a url gets no href at all rather than \"null\". -->\n <a\n *ngFor=\"let product of products; let i = index; trackBy: trackByProduct\"\n [id]=\"cardId(i)\"\n class=\"aia-product\"\n data-aia-product=\"\"\n role=\"option\"\n [attr.aria-selected]=\"false\"\n [attr.href]=\"product.url ?? null\"\n [attr.tabindex]=\"focusable ? 0 : -1\"\n (click)=\"onClick($event, product)\"\n (keydown)=\"onKeyDown($event, product)\"\n (focus)=\"onCardFocus()\"\n (blur)=\"onCardBlur($event)\"\n >\n <!-- Catalogues without images are common enough that the placeholder is\n a first-class state, not an error state. -->\n <span\n class=\"aia-product-media\"\n [attr.data-aia-product-placeholder]=\"product.imageUrl ? null : ''\"\n >\n <!-- alt=\"\" on purpose: the title is already the card's accessible\n name, and repeating it would have a screen reader read it twice. -->\n <img\n *ngIf=\"product.imageUrl\"\n class=\"aia-product-image\"\n [src]=\"product.imageUrl\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n </span>\n\n <!-- Every field but the title is optional, so absent ones render no\n element at all \u2014 the column gap can't leave a hole for a box that\n isn't there. -->\n <span class=\"aia-product-body\">\n <span *ngIf=\"product.vendor\" class=\"aia-product-vendor\">{{ product.vendor }}</span>\n <span class=\"aia-product-title\">{{ product.title }}</span>\n <span *ngIf=\"product.price\" class=\"aia-product-price\">{{ product.price }}</span>\n </span>\n </a>\n </div>\n</section>\n", styles: [".aia-products{display:flex;flex-direction:column;gap:6px;padding:0 10px;min-width:0}.aia-products-label{font-family:inherit;font-size:var(--aia-products-label-font-size, 11px);font-weight:500;line-height:18px;letter-spacing:.02em;color:var( --aia-products-label-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) )}.aia-products-row{display:flex;gap:var(--aia-product-gap, 8px);min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;margin-inline:-6px;scrollbar-width:none;-ms-overflow-style:none}.aia-products-row::-webkit-scrollbar{display:none}.aia-product{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;width:var(--aia-product-card-width, 116px);padding:6px;border-radius:10px;background:var(--aia-product-bg, transparent);color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));text-decoration:none;cursor:pointer;transition:background-color .15s ease}.aia-product:hover{background:var(--aia-product-bg-active, var(--aia-option-bg, transparent))}.aia-product:focus-visible{outline:2px solid var(--aia-product-focus-ring, var(--aia-option-color-selected, currentColor));outline-offset:-2px}.aia-product-media{display:block;position:relative;width:100%;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:var(--aia-product-media-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .25)))}.aia-product-image{display:block;width:100%;height:100%;object-fit:cover}.aia-product-media[data-aia-product-placeholder]:after{content:\"\";position:absolute;inset:22%;background:var( --aia-product-placeholder-image, url(\"data:image/svg+xml,%3Csvg viewBox='0 -0.5 32 32' fill-rule='evenodd' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(1,0,0,1,-384,-144)'%3E%3Cg transform='matrix(0.875,0,0,0.875,90.25,19.125)'%3E%3Cpath d='M340.924,147.74C341.224,146.789 342.107,146.143 343.104,146.143C347.705,146.143 360.491,146.143 364.985,146.143C365.965,146.143 366.836,146.768 367.15,147.697C368.119,150.386 370,155.73 370,157C370,159.208 368.208,161 366,161C363.792,161 362,159.208 362,157C362,159.208 360.208,161 358,161C355.792,161 354,159.208 354,157C354,159.208 352.208,161 350,161C347.792,161 346,159.208 346,157C346,159.208 344.208,161 342,161C340.53,161 339.244,160.205 338.549,159.022C338.057,158.185 337.944,157.179 338.236,156.254C338.787,154.507 340.172,150.121 340.924,147.74Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1.32454,48,-56.1457)'%3E%3Cpath d='M341.026,160.675C341.026,160.675 341.01,168.196 341.003,171.488C341.002,171.889 341.213,172.273 341.588,172.557C341.963,172.841 342.472,173 343.003,173C347.188,173 356.817,173 361,173C361.53,173 362.039,172.841 362.414,172.558C362.789,172.275 363,171.891 363,171.49C363,168.2 363,160.675 363,160.675' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1,48,0)'%3E%3Cpath d='M355,168C355,166.895 354.105,166 353,166C352.356,166 351.644,166 351,166C349.895,166 349,166.895 349,168C349,170.069 349,173 349,173L355,173L355,168Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1.11111,0,0,1.11111,-47.2678,-87.5361)'%3E%3Ccircle cx='411.5' cy='213.5' r='4.5' fill='%2390e0ef'%3E%3C/circle%3E%3C/g%3E%3Cpath d='M405.529,146C406.628,144.773 408.225,144 410,144C413.311,144 416,146.689 416,150C416,151.549 415.412,152.962 414.446,154.027C414.775,155.15 415,156.076 415,156.5C415,158.459 413.746,160.127 411.998,160.744L411.998,171C411.998,171.796 411.682,172.559 411.119,173.121C410.557,173.684 409.794,174 408.998,174L391.002,174C390.205,174 389.441,173.683 388.879,173.119C388.316,172.555 388,171.79 388.002,170.994L388.024,160.752C387.007,160.399 386.155,159.691 385.618,158.776L385.618,158.776C385.044,157.799 384.912,156.626 385.253,155.546L387.605,148.097C387.999,146.849 389.157,146 390.466,146L405.529,146ZM409.998,160.972C408.79,160.838 407.726,160.225 407,159.327C406.175,160.347 404.913,161 403.5,161C402.087,161 400.825,160.347 400,159.327C399.175,160.347 397.913,161 396.5,161C395.087,161 393.825,160.347 393,159.327C392.278,160.219 391.222,160.831 390.023,160.97L390.002,170.998C390.002,171.263 390.107,171.518 390.294,171.706C390.482,171.894 390.736,172 391.002,172L396,172L396,168C396,166.343 397.343,165 399,165L401,165C402.657,165 404,166.343 404,168L404,172L408.998,172C409.263,172 409.517,171.895 409.705,171.707C409.893,171.52 409.998,171.265 409.998,171L409.998,160.972ZM402,172L398,172L398,168C398,167.448 398.448,167 399,167C399,167 401,167 401,167C401.552,167 402,167.448 402,168L402,172ZM404.342,148L390.466,148C390.03,148 389.644,148.283 389.512,148.699L387.16,156.148C386.99,156.688 387.056,157.275 387.342,157.763C387.777,158.503 388.581,159 389.5,159C390.88,159 392,157.88 392,156.5C392,155.003 394,155.003 394,156.5C394,157.88 395.12,159 396.5,159C397.88,159 399,157.88 399,156.5C399,155.004 401,155.004 401,156.5C401,157.88 402.12,159 403.5,159C404.88,159 406,157.88 406,156.5C406,154.986 408,154.986 408,156.5C408,157.88 409.12,159 410.5,159C411.88,159 413,157.88 413,156.5C413,156.259 412.917,155.843 412.779,155.318C411.948,155.753 411.003,156 410,156C406.689,156 404,153.311 404,150C404,149.299 404.12,148.626 404.342,148ZM410,146C412.208,146 414,147.792 414,150C414,152.208 412.208,154 410,154C407.792,154 406,152.208 406,150C406,147.792 407.792,146 410,146ZM407.543,151.207L408.546,152.21C408.733,152.397 408.988,152.503 409.253,152.503C409.519,152.503 409.773,152.397 409.961,152.209L412.458,149.706C412.848,149.316 412.847,148.682 412.456,148.292C412.066,147.902 411.432,147.903 411.042,148.294L409.252,150.088C409.252,150.088 408.957,149.793 408.957,149.793C408.567,149.403 407.933,149.403 407.543,149.793C407.153,150.183 407.153,150.817 407.543,151.207Z' fill='%231990a7'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\") ) center / contain no-repeat}.aia-product-body{display:flex;flex-direction:column;gap:2px;min-width:0}.aia-product-vendor{font-family:inherit;font-size:var(--aia-product-vendor-font-size, 10px);line-height:14px;color:var( --aia-product-vendor-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) );opacity:.8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.aia-product-title{font-family:inherit;font-size:var(--aia-product-title-font-size, 12px);font-weight:400;line-height:16px;color:var( --aia-product-title-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) );display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.aia-product-price{font-family:inherit;font-size:var(--aia-product-price-font-size, 11px);font-weight:500;line-height:15px;color:var( --aia-product-price-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) )}.aia-products[data-aia-products-layout=list] .aia-products-row{flex-direction:column;gap:var(--aia-product-list-gap, 2px);max-height:var(--aia-product-list-max-height, 320px);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}.aia-products[data-aia-products-layout=list] .aia-product{flex-direction:row;align-items:center;gap:10px;width:auto;padding:6px 8px}.aia-products[data-aia-products-layout=list] .aia-product-media{flex:0 0 auto;width:var(--aia-product-list-media-size, 44px);height:var(--aia-product-list-media-size, 44px)}.aia-products[data-aia-products-layout=list] .aia-product-body{flex:1 1 auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
126
+ ProductStripComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: ProductStripComponent, isStandalone: true, selector: "aia-product-strip", inputs: { products: "products", listboxId: "listboxId", focusable: "focusable", layout: "layout", imageFallback: "imageFallback" }, outputs: { select: "select", focusChange: "focusChange" }, viewQueries: [{ propertyName: "row", first: true, predicate: ["row"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<!-- `group` is the one role a listbox accepts around a set of options, so the\n strip stays inside the listbox without breaking its content model. -->\n<section\n *ngIf=\"products.length > 0\"\n class=\"aia-products\"\n data-aia-products=\"\"\n [attr.data-aia-products-layout]=\"layout\"\n role=\"group\"\n [attr.aria-labelledby]=\"labelId\"\n>\n <!-- data-aia-products-label: the scroll arrow centres itself on this row. -->\n <div class=\"aia-products-label\" [id]=\"labelId\" data-aia-products-label=\"\">Products</div>\n\n <!-- #row: the component binds wheel-to-sideways scrolling on it. -->\n <div #row class=\"aia-products-row\" data-aia-products-row=\"\">\n <!-- A real <a href> rather than a <div>: it keeps the browser's own link\n affordances \u2014 cmd/ctrl-click for a new tab, middle-click, right-click \u2192\n \"copy link address\". role=\"option\" overrides how assistive tech\n announces it, which is correct inside a listbox; the deliberate trade\n is that AT no longer calls it a link. An attribute binding, so a\n product without a url gets no href at all rather than \"null\". -->\n <a\n *ngFor=\"let product of products; let i = index; trackBy: trackByProduct\"\n [id]=\"cardId(i)\"\n class=\"aia-product\"\n data-aia-product=\"\"\n role=\"option\"\n [attr.aria-selected]=\"false\"\n [attr.href]=\"product.url ?? null\"\n [attr.tabindex]=\"focusable ? 0 : -1\"\n (click)=\"onClick($event, product)\"\n (keydown)=\"onKeyDown($event, product)\"\n (focus)=\"onCardFocus()\"\n (blur)=\"onCardBlur($event)\"\n >\n <span\n class=\"aia-product-media\"\n aria-hidden=\"true\"\n [attr.data-aia-product-placeholder]=\"!imageSource(product) && imageFallback === 'image' ? '' : null\"\n [attr.data-aia-product-initial]=\"!imageSource(product) && imageFallback === 'initial' ? '' : null\"\n >\n <!-- alt=\"\" on purpose: the title is already the card's accessible\n name, and repeating it would have a screen reader read it twice. -->\n <img\n *ngIf=\"imageSource(product) as src\"\n class=\"aia-product-image\"\n [src]=\"src\"\n (error)=\"onImageError(product)\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n <ng-container *ngIf=\"!imageSource(product) && imageFallback === 'initial'\">{{ initial(product.title) }}</ng-container>\n </span>\n\n <!-- Every field but the title is optional, so absent ones render no\n element at all \u2014 the column gap can't leave a hole for a box that\n isn't there. -->\n <span class=\"aia-product-body\">\n <span *ngIf=\"product.vendor\" class=\"aia-product-vendor\">{{ product.vendor }}</span>\n <span class=\"aia-product-title\">{{ product.title }}</span>\n <span *ngIf=\"product.price\" class=\"aia-product-price\">{{ product.price }}</span>\n </span>\n </a>\n </div>\n</section>\n", styles: [".aia-products{display:flex;flex-direction:column;gap:6px;padding:0 10px;min-width:0}.aia-products-label{font-family:inherit;font-size:var(--aia-products-label-font-size, 11px);font-weight:500;line-height:18px;letter-spacing:.02em;color:var( --aia-products-label-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) )}.aia-products-row{display:flex;gap:var(--aia-product-gap, 8px);min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;margin-inline:-6px;scrollbar-width:none;-ms-overflow-style:none}.aia-products-row::-webkit-scrollbar{display:none}.aia-product{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;width:var(--aia-product-card-width, 116px);padding:6px;border-radius:10px;background:var(--aia-product-bg, transparent);color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));text-decoration:none;cursor:pointer;transition:background-color .15s ease}.aia-product:hover{background:var(--aia-product-bg-active, var(--aia-option-bg, transparent))}.aia-product:focus-visible{outline:2px solid var(--aia-product-focus-ring, var(--aia-option-color-selected, currentColor));outline-offset:-2px}.aia-product-media{display:block;position:relative;width:100%;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:var(--aia-product-media-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .25)))}.aia-product-image{display:block;width:100%;height:100%;object-fit:cover}.aia-product-media:where([data-aia-product-initial]){display:flex;align-items:center;justify-content:center;color:var(--aia-product-title-color, var(--aia-option-color-selected, currentColor));font-size:24px;font-weight:600;line-height:1}.aia-product-media[data-aia-product-placeholder]:after{content:\"\";position:absolute;inset:22%;background:var( --aia-product-placeholder-image, url(\"data:image/svg+xml,%3Csvg viewBox='0 -0.5 32 32' fill-rule='evenodd' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(1,0,0,1,-384,-144)'%3E%3Cg transform='matrix(0.875,0,0,0.875,90.25,19.125)'%3E%3Cpath d='M340.924,147.74C341.224,146.789 342.107,146.143 343.104,146.143C347.705,146.143 360.491,146.143 364.985,146.143C365.965,146.143 366.836,146.768 367.15,147.697C368.119,150.386 370,155.73 370,157C370,159.208 368.208,161 366,161C363.792,161 362,159.208 362,157C362,159.208 360.208,161 358,161C355.792,161 354,159.208 354,157C354,159.208 352.208,161 350,161C347.792,161 346,159.208 346,157C346,159.208 344.208,161 342,161C340.53,161 339.244,160.205 338.549,159.022C338.057,158.185 337.944,157.179 338.236,156.254C338.787,154.507 340.172,150.121 340.924,147.74Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1.32454,48,-56.1457)'%3E%3Cpath d='M341.026,160.675C341.026,160.675 341.01,168.196 341.003,171.488C341.002,171.889 341.213,172.273 341.588,172.557C341.963,172.841 342.472,173 343.003,173C347.188,173 356.817,173 361,173C361.53,173 362.039,172.841 362.414,172.558C362.789,172.275 363,171.891 363,171.49C363,168.2 363,160.675 363,160.675' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1,48,0)'%3E%3Cpath d='M355,168C355,166.895 354.105,166 353,166C352.356,166 351.644,166 351,166C349.895,166 349,166.895 349,168C349,170.069 349,173 349,173L355,173L355,168Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1.11111,0,0,1.11111,-47.2678,-87.5361)'%3E%3Ccircle cx='411.5' cy='213.5' r='4.5' fill='%2390e0ef'%3E%3C/circle%3E%3C/g%3E%3Cpath d='M405.529,146C406.628,144.773 408.225,144 410,144C413.311,144 416,146.689 416,150C416,151.549 415.412,152.962 414.446,154.027C414.775,155.15 415,156.076 415,156.5C415,158.459 413.746,160.127 411.998,160.744L411.998,171C411.998,171.796 411.682,172.559 411.119,173.121C410.557,173.684 409.794,174 408.998,174L391.002,174C390.205,174 389.441,173.683 388.879,173.119C388.316,172.555 388,171.79 388.002,170.994L388.024,160.752C387.007,160.399 386.155,159.691 385.618,158.776L385.618,158.776C385.044,157.799 384.912,156.626 385.253,155.546L387.605,148.097C387.999,146.849 389.157,146 390.466,146L405.529,146ZM409.998,160.972C408.79,160.838 407.726,160.225 407,159.327C406.175,160.347 404.913,161 403.5,161C402.087,161 400.825,160.347 400,159.327C399.175,160.347 397.913,161 396.5,161C395.087,161 393.825,160.347 393,159.327C392.278,160.219 391.222,160.831 390.023,160.97L390.002,170.998C390.002,171.263 390.107,171.518 390.294,171.706C390.482,171.894 390.736,172 391.002,172L396,172L396,168C396,166.343 397.343,165 399,165L401,165C402.657,165 404,166.343 404,168L404,172L408.998,172C409.263,172 409.517,171.895 409.705,171.707C409.893,171.52 409.998,171.265 409.998,171L409.998,160.972ZM402,172L398,172L398,168C398,167.448 398.448,167 399,167C399,167 401,167 401,167C401.552,167 402,167.448 402,168L402,172ZM404.342,148L390.466,148C390.03,148 389.644,148.283 389.512,148.699L387.16,156.148C386.99,156.688 387.056,157.275 387.342,157.763C387.777,158.503 388.581,159 389.5,159C390.88,159 392,157.88 392,156.5C392,155.003 394,155.003 394,156.5C394,157.88 395.12,159 396.5,159C397.88,159 399,157.88 399,156.5C399,155.004 401,155.004 401,156.5C401,157.88 402.12,159 403.5,159C404.88,159 406,157.88 406,156.5C406,154.986 408,154.986 408,156.5C408,157.88 409.12,159 410.5,159C411.88,159 413,157.88 413,156.5C413,156.259 412.917,155.843 412.779,155.318C411.948,155.753 411.003,156 410,156C406.689,156 404,153.311 404,150C404,149.299 404.12,148.626 404.342,148ZM410,146C412.208,146 414,147.792 414,150C414,152.208 412.208,154 410,154C407.792,154 406,152.208 406,150C406,147.792 407.792,146 410,146ZM407.543,151.207L408.546,152.21C408.733,152.397 408.988,152.503 409.253,152.503C409.519,152.503 409.773,152.397 409.961,152.209L412.458,149.706C412.848,149.316 412.847,148.682 412.456,148.292C412.066,147.902 411.432,147.903 411.042,148.294L409.252,150.088C409.252,150.088 408.957,149.793 408.957,149.793C408.567,149.403 407.933,149.403 407.543,149.793C407.153,150.183 407.153,150.817 407.543,151.207Z' fill='%231990a7'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\") ) center / contain no-repeat}.aia-product-body{display:flex;flex-direction:column;gap:2px;min-width:0}.aia-product-vendor{font-family:inherit;font-size:var(--aia-product-vendor-font-size, 10px);line-height:14px;color:var( --aia-product-vendor-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) );opacity:.8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.aia-product-title{font-family:inherit;font-size:var(--aia-product-title-font-size, 12px);font-weight:400;line-height:16px;color:var( --aia-product-title-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) );display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.aia-product-price{font-family:inherit;font-size:var(--aia-product-price-font-size, 11px);font-weight:500;line-height:15px;color:var( --aia-product-price-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) )}.aia-products[data-aia-products-layout=list] .aia-products-row{flex-direction:column;gap:var(--aia-product-list-gap, 2px);max-height:var(--aia-product-list-max-height, 320px);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}.aia-products[data-aia-products-layout=list] .aia-product{flex-direction:row;align-items:center;gap:10px;width:auto;padding:6px 8px}.aia-products[data-aia-products-layout=list] .aia-product-media{flex:0 0 auto;width:var(--aia-product-list-media-size, 44px);height:var(--aia-product-list-media-size, 44px)}.aia-products[data-aia-products-layout=list] .aia-product-body{flex:1 1 auto}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
108
127
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: ProductStripComponent, decorators: [{
109
128
  type: Component,
110
- args: [{ selector: "aia-product-strip", standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<!-- `group` is the one role a listbox accepts around a set of options, so the\n strip stays inside the listbox without breaking its content model. -->\n<section\n *ngIf=\"products.length > 0\"\n class=\"aia-products\"\n data-aia-products=\"\"\n [attr.data-aia-products-layout]=\"layout\"\n role=\"group\"\n [attr.aria-labelledby]=\"labelId\"\n>\n <!-- data-aia-products-label: the scroll arrow centres itself on this row. -->\n <div class=\"aia-products-label\" [id]=\"labelId\" data-aia-products-label=\"\">Products</div>\n\n <!-- #row: the component binds wheel-to-sideways scrolling on it. -->\n <div #row class=\"aia-products-row\" data-aia-products-row=\"\">\n <!-- A real <a href> rather than a <div>: it keeps the browser's own link\n affordances \u2014 cmd/ctrl-click for a new tab, middle-click, right-click \u2192\n \"copy link address\". role=\"option\" overrides how assistive tech\n announces it, which is correct inside a listbox; the deliberate trade\n is that AT no longer calls it a link. An attribute binding, so a\n product without a url gets no href at all rather than \"null\". -->\n <a\n *ngFor=\"let product of products; let i = index; trackBy: trackByProduct\"\n [id]=\"cardId(i)\"\n class=\"aia-product\"\n data-aia-product=\"\"\n role=\"option\"\n [attr.aria-selected]=\"false\"\n [attr.href]=\"product.url ?? null\"\n [attr.tabindex]=\"focusable ? 0 : -1\"\n (click)=\"onClick($event, product)\"\n (keydown)=\"onKeyDown($event, product)\"\n (focus)=\"onCardFocus()\"\n (blur)=\"onCardBlur($event)\"\n >\n <!-- Catalogues without images are common enough that the placeholder is\n a first-class state, not an error state. -->\n <span\n class=\"aia-product-media\"\n [attr.data-aia-product-placeholder]=\"product.imageUrl ? null : ''\"\n >\n <!-- alt=\"\" on purpose: the title is already the card's accessible\n name, and repeating it would have a screen reader read it twice. -->\n <img\n *ngIf=\"product.imageUrl\"\n class=\"aia-product-image\"\n [src]=\"product.imageUrl\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n </span>\n\n <!-- Every field but the title is optional, so absent ones render no\n element at all \u2014 the column gap can't leave a hole for a box that\n isn't there. -->\n <span class=\"aia-product-body\">\n <span *ngIf=\"product.vendor\" class=\"aia-product-vendor\">{{ product.vendor }}</span>\n <span class=\"aia-product-title\">{{ product.title }}</span>\n <span *ngIf=\"product.price\" class=\"aia-product-price\">{{ product.price }}</span>\n </span>\n </a>\n </div>\n</section>\n", styles: [".aia-products{display:flex;flex-direction:column;gap:6px;padding:0 10px;min-width:0}.aia-products-label{font-family:inherit;font-size:var(--aia-products-label-font-size, 11px);font-weight:500;line-height:18px;letter-spacing:.02em;color:var( --aia-products-label-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) )}.aia-products-row{display:flex;gap:var(--aia-product-gap, 8px);min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;margin-inline:-6px;scrollbar-width:none;-ms-overflow-style:none}.aia-products-row::-webkit-scrollbar{display:none}.aia-product{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;width:var(--aia-product-card-width, 116px);padding:6px;border-radius:10px;background:var(--aia-product-bg, transparent);color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));text-decoration:none;cursor:pointer;transition:background-color .15s ease}.aia-product:hover{background:var(--aia-product-bg-active, var(--aia-option-bg, transparent))}.aia-product:focus-visible{outline:2px solid var(--aia-product-focus-ring, var(--aia-option-color-selected, currentColor));outline-offset:-2px}.aia-product-media{display:block;position:relative;width:100%;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:var(--aia-product-media-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .25)))}.aia-product-image{display:block;width:100%;height:100%;object-fit:cover}.aia-product-media[data-aia-product-placeholder]:after{content:\"\";position:absolute;inset:22%;background:var( --aia-product-placeholder-image, url(\"data:image/svg+xml,%3Csvg viewBox='0 -0.5 32 32' fill-rule='evenodd' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(1,0,0,1,-384,-144)'%3E%3Cg transform='matrix(0.875,0,0,0.875,90.25,19.125)'%3E%3Cpath d='M340.924,147.74C341.224,146.789 342.107,146.143 343.104,146.143C347.705,146.143 360.491,146.143 364.985,146.143C365.965,146.143 366.836,146.768 367.15,147.697C368.119,150.386 370,155.73 370,157C370,159.208 368.208,161 366,161C363.792,161 362,159.208 362,157C362,159.208 360.208,161 358,161C355.792,161 354,159.208 354,157C354,159.208 352.208,161 350,161C347.792,161 346,159.208 346,157C346,159.208 344.208,161 342,161C340.53,161 339.244,160.205 338.549,159.022C338.057,158.185 337.944,157.179 338.236,156.254C338.787,154.507 340.172,150.121 340.924,147.74Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1.32454,48,-56.1457)'%3E%3Cpath d='M341.026,160.675C341.026,160.675 341.01,168.196 341.003,171.488C341.002,171.889 341.213,172.273 341.588,172.557C341.963,172.841 342.472,173 343.003,173C347.188,173 356.817,173 361,173C361.53,173 362.039,172.841 362.414,172.558C362.789,172.275 363,171.891 363,171.49C363,168.2 363,160.675 363,160.675' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1,48,0)'%3E%3Cpath d='M355,168C355,166.895 354.105,166 353,166C352.356,166 351.644,166 351,166C349.895,166 349,166.895 349,168C349,170.069 349,173 349,173L355,173L355,168Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1.11111,0,0,1.11111,-47.2678,-87.5361)'%3E%3Ccircle cx='411.5' cy='213.5' r='4.5' fill='%2390e0ef'%3E%3C/circle%3E%3C/g%3E%3Cpath d='M405.529,146C406.628,144.773 408.225,144 410,144C413.311,144 416,146.689 416,150C416,151.549 415.412,152.962 414.446,154.027C414.775,155.15 415,156.076 415,156.5C415,158.459 413.746,160.127 411.998,160.744L411.998,171C411.998,171.796 411.682,172.559 411.119,173.121C410.557,173.684 409.794,174 408.998,174L391.002,174C390.205,174 389.441,173.683 388.879,173.119C388.316,172.555 388,171.79 388.002,170.994L388.024,160.752C387.007,160.399 386.155,159.691 385.618,158.776L385.618,158.776C385.044,157.799 384.912,156.626 385.253,155.546L387.605,148.097C387.999,146.849 389.157,146 390.466,146L405.529,146ZM409.998,160.972C408.79,160.838 407.726,160.225 407,159.327C406.175,160.347 404.913,161 403.5,161C402.087,161 400.825,160.347 400,159.327C399.175,160.347 397.913,161 396.5,161C395.087,161 393.825,160.347 393,159.327C392.278,160.219 391.222,160.831 390.023,160.97L390.002,170.998C390.002,171.263 390.107,171.518 390.294,171.706C390.482,171.894 390.736,172 391.002,172L396,172L396,168C396,166.343 397.343,165 399,165L401,165C402.657,165 404,166.343 404,168L404,172L408.998,172C409.263,172 409.517,171.895 409.705,171.707C409.893,171.52 409.998,171.265 409.998,171L409.998,160.972ZM402,172L398,172L398,168C398,167.448 398.448,167 399,167C399,167 401,167 401,167C401.552,167 402,167.448 402,168L402,172ZM404.342,148L390.466,148C390.03,148 389.644,148.283 389.512,148.699L387.16,156.148C386.99,156.688 387.056,157.275 387.342,157.763C387.777,158.503 388.581,159 389.5,159C390.88,159 392,157.88 392,156.5C392,155.003 394,155.003 394,156.5C394,157.88 395.12,159 396.5,159C397.88,159 399,157.88 399,156.5C399,155.004 401,155.004 401,156.5C401,157.88 402.12,159 403.5,159C404.88,159 406,157.88 406,156.5C406,154.986 408,154.986 408,156.5C408,157.88 409.12,159 410.5,159C411.88,159 413,157.88 413,156.5C413,156.259 412.917,155.843 412.779,155.318C411.948,155.753 411.003,156 410,156C406.689,156 404,153.311 404,150C404,149.299 404.12,148.626 404.342,148ZM410,146C412.208,146 414,147.792 414,150C414,152.208 412.208,154 410,154C407.792,154 406,152.208 406,150C406,147.792 407.792,146 410,146ZM407.543,151.207L408.546,152.21C408.733,152.397 408.988,152.503 409.253,152.503C409.519,152.503 409.773,152.397 409.961,152.209L412.458,149.706C412.848,149.316 412.847,148.682 412.456,148.292C412.066,147.902 411.432,147.903 411.042,148.294L409.252,150.088C409.252,150.088 408.957,149.793 408.957,149.793C408.567,149.403 407.933,149.403 407.543,149.793C407.153,150.183 407.153,150.817 407.543,151.207Z' fill='%231990a7'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\") ) center / contain no-repeat}.aia-product-body{display:flex;flex-direction:column;gap:2px;min-width:0}.aia-product-vendor{font-family:inherit;font-size:var(--aia-product-vendor-font-size, 10px);line-height:14px;color:var( --aia-product-vendor-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) );opacity:.8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.aia-product-title{font-family:inherit;font-size:var(--aia-product-title-font-size, 12px);font-weight:400;line-height:16px;color:var( --aia-product-title-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) );display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.aia-product-price{font-family:inherit;font-size:var(--aia-product-price-font-size, 11px);font-weight:500;line-height:15px;color:var( --aia-product-price-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) )}.aia-products[data-aia-products-layout=list] .aia-products-row{flex-direction:column;gap:var(--aia-product-list-gap, 2px);max-height:var(--aia-product-list-max-height, 320px);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}.aia-products[data-aia-products-layout=list] .aia-product{flex-direction:row;align-items:center;gap:10px;width:auto;padding:6px 8px}.aia-products[data-aia-products-layout=list] .aia-product-media{flex:0 0 auto;width:var(--aia-product-list-media-size, 44px);height:var(--aia-product-list-media-size, 44px)}.aia-products[data-aia-products-layout=list] .aia-product-body{flex:1 1 auto}\n"] }]
129
+ args: [{ selector: "aia-product-strip", standalone: true, imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<!-- `group` is the one role a listbox accepts around a set of options, so the\n strip stays inside the listbox without breaking its content model. -->\n<section\n *ngIf=\"products.length > 0\"\n class=\"aia-products\"\n data-aia-products=\"\"\n [attr.data-aia-products-layout]=\"layout\"\n role=\"group\"\n [attr.aria-labelledby]=\"labelId\"\n>\n <!-- data-aia-products-label: the scroll arrow centres itself on this row. -->\n <div class=\"aia-products-label\" [id]=\"labelId\" data-aia-products-label=\"\">Products</div>\n\n <!-- #row: the component binds wheel-to-sideways scrolling on it. -->\n <div #row class=\"aia-products-row\" data-aia-products-row=\"\">\n <!-- A real <a href> rather than a <div>: it keeps the browser's own link\n affordances \u2014 cmd/ctrl-click for a new tab, middle-click, right-click \u2192\n \"copy link address\". role=\"option\" overrides how assistive tech\n announces it, which is correct inside a listbox; the deliberate trade\n is that AT no longer calls it a link. An attribute binding, so a\n product without a url gets no href at all rather than \"null\". -->\n <a\n *ngFor=\"let product of products; let i = index; trackBy: trackByProduct\"\n [id]=\"cardId(i)\"\n class=\"aia-product\"\n data-aia-product=\"\"\n role=\"option\"\n [attr.aria-selected]=\"false\"\n [attr.href]=\"product.url ?? null\"\n [attr.tabindex]=\"focusable ? 0 : -1\"\n (click)=\"onClick($event, product)\"\n (keydown)=\"onKeyDown($event, product)\"\n (focus)=\"onCardFocus()\"\n (blur)=\"onCardBlur($event)\"\n >\n <span\n class=\"aia-product-media\"\n aria-hidden=\"true\"\n [attr.data-aia-product-placeholder]=\"!imageSource(product) && imageFallback === 'image' ? '' : null\"\n [attr.data-aia-product-initial]=\"!imageSource(product) && imageFallback === 'initial' ? '' : null\"\n >\n <!-- alt=\"\" on purpose: the title is already the card's accessible\n name, and repeating it would have a screen reader read it twice. -->\n <img\n *ngIf=\"imageSource(product) as src\"\n class=\"aia-product-image\"\n [src]=\"src\"\n (error)=\"onImageError(product)\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n />\n <ng-container *ngIf=\"!imageSource(product) && imageFallback === 'initial'\">{{ initial(product.title) }}</ng-container>\n </span>\n\n <!-- Every field but the title is optional, so absent ones render no\n element at all \u2014 the column gap can't leave a hole for a box that\n isn't there. -->\n <span class=\"aia-product-body\">\n <span *ngIf=\"product.vendor\" class=\"aia-product-vendor\">{{ product.vendor }}</span>\n <span class=\"aia-product-title\">{{ product.title }}</span>\n <span *ngIf=\"product.price\" class=\"aia-product-price\">{{ product.price }}</span>\n </span>\n </a>\n </div>\n</section>\n", styles: [".aia-products{display:flex;flex-direction:column;gap:6px;padding:0 10px;min-width:0}.aia-products-label{font-family:inherit;font-size:var(--aia-products-label-font-size, 11px);font-weight:500;line-height:18px;letter-spacing:.02em;color:var( --aia-products-label-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) )}.aia-products-row{display:flex;gap:var(--aia-product-gap, 8px);min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;padding-bottom:2px;margin-inline:-6px;scrollbar-width:none;-ms-overflow-style:none}.aia-products-row::-webkit-scrollbar{display:none}.aia-product{flex:0 0 auto;display:flex;flex-direction:column;gap:6px;width:var(--aia-product-card-width, 116px);padding:6px;border-radius:10px;background:var(--aia-product-bg, transparent);color:var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb));text-decoration:none;cursor:pointer;transition:background-color .15s ease}.aia-product:hover{background:var(--aia-product-bg-active, var(--aia-option-bg, transparent))}.aia-product:focus-visible{outline:2px solid var(--aia-product-focus-ring, var(--aia-option-color-selected, currentColor));outline-offset:-2px}.aia-product-media{display:block;position:relative;width:100%;aspect-ratio:1 / 1;border-radius:8px;overflow:hidden;background:var(--aia-product-media-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .25)))}.aia-product-image{display:block;width:100%;height:100%;object-fit:cover}.aia-product-media:where([data-aia-product-initial]){display:flex;align-items:center;justify-content:center;color:var(--aia-product-title-color, var(--aia-option-color-selected, currentColor));font-size:24px;font-weight:600;line-height:1}.aia-product-media[data-aia-product-placeholder]:after{content:\"\";position:absolute;inset:22%;background:var( --aia-product-placeholder-image, url(\"data:image/svg+xml,%3Csvg viewBox='0 -0.5 32 32' fill-rule='evenodd' xmlns='http://www.w3.org/2000/svg'%3E%3Cg transform='matrix(1,0,0,1,-384,-144)'%3E%3Cg transform='matrix(0.875,0,0,0.875,90.25,19.125)'%3E%3Cpath d='M340.924,147.74C341.224,146.789 342.107,146.143 343.104,146.143C347.705,146.143 360.491,146.143 364.985,146.143C365.965,146.143 366.836,146.768 367.15,147.697C368.119,150.386 370,155.73 370,157C370,159.208 368.208,161 366,161C363.792,161 362,159.208 362,157C362,159.208 360.208,161 358,161C355.792,161 354,159.208 354,157C354,159.208 352.208,161 350,161C347.792,161 346,159.208 346,157C346,159.208 344.208,161 342,161C340.53,161 339.244,160.205 338.549,159.022C338.057,158.185 337.944,157.179 338.236,156.254C338.787,154.507 340.172,150.121 340.924,147.74Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1.32454,48,-56.1457)'%3E%3Cpath d='M341.026,160.675C341.026,160.675 341.01,168.196 341.003,171.488C341.002,171.889 341.213,172.273 341.588,172.557C341.963,172.841 342.472,173 343.003,173C347.188,173 356.817,173 361,173C361.53,173 362.039,172.841 362.414,172.558C362.789,172.275 363,171.891 363,171.49C363,168.2 363,160.675 363,160.675' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1,0,0,1,48,0)'%3E%3Cpath d='M355,168C355,166.895 354.105,166 353,166C352.356,166 351.644,166 351,166C349.895,166 349,166.895 349,168C349,170.069 349,173 349,173L355,173L355,168Z' fill='%2390e0ef'%3E%3C/path%3E%3C/g%3E%3Cg transform='matrix(1.11111,0,0,1.11111,-47.2678,-87.5361)'%3E%3Ccircle cx='411.5' cy='213.5' r='4.5' fill='%2390e0ef'%3E%3C/circle%3E%3C/g%3E%3Cpath d='M405.529,146C406.628,144.773 408.225,144 410,144C413.311,144 416,146.689 416,150C416,151.549 415.412,152.962 414.446,154.027C414.775,155.15 415,156.076 415,156.5C415,158.459 413.746,160.127 411.998,160.744L411.998,171C411.998,171.796 411.682,172.559 411.119,173.121C410.557,173.684 409.794,174 408.998,174L391.002,174C390.205,174 389.441,173.683 388.879,173.119C388.316,172.555 388,171.79 388.002,170.994L388.024,160.752C387.007,160.399 386.155,159.691 385.618,158.776L385.618,158.776C385.044,157.799 384.912,156.626 385.253,155.546L387.605,148.097C387.999,146.849 389.157,146 390.466,146L405.529,146ZM409.998,160.972C408.79,160.838 407.726,160.225 407,159.327C406.175,160.347 404.913,161 403.5,161C402.087,161 400.825,160.347 400,159.327C399.175,160.347 397.913,161 396.5,161C395.087,161 393.825,160.347 393,159.327C392.278,160.219 391.222,160.831 390.023,160.97L390.002,170.998C390.002,171.263 390.107,171.518 390.294,171.706C390.482,171.894 390.736,172 391.002,172L396,172L396,168C396,166.343 397.343,165 399,165L401,165C402.657,165 404,166.343 404,168L404,172L408.998,172C409.263,172 409.517,171.895 409.705,171.707C409.893,171.52 409.998,171.265 409.998,171L409.998,160.972ZM402,172L398,172L398,168C398,167.448 398.448,167 399,167C399,167 401,167 401,167C401.552,167 402,167.448 402,168L402,172ZM404.342,148L390.466,148C390.03,148 389.644,148.283 389.512,148.699L387.16,156.148C386.99,156.688 387.056,157.275 387.342,157.763C387.777,158.503 388.581,159 389.5,159C390.88,159 392,157.88 392,156.5C392,155.003 394,155.003 394,156.5C394,157.88 395.12,159 396.5,159C397.88,159 399,157.88 399,156.5C399,155.004 401,155.004 401,156.5C401,157.88 402.12,159 403.5,159C404.88,159 406,157.88 406,156.5C406,154.986 408,154.986 408,156.5C408,157.88 409.12,159 410.5,159C411.88,159 413,157.88 413,156.5C413,156.259 412.917,155.843 412.779,155.318C411.948,155.753 411.003,156 410,156C406.689,156 404,153.311 404,150C404,149.299 404.12,148.626 404.342,148ZM410,146C412.208,146 414,147.792 414,150C414,152.208 412.208,154 410,154C407.792,154 406,152.208 406,150C406,147.792 407.792,146 410,146ZM407.543,151.207L408.546,152.21C408.733,152.397 408.988,152.503 409.253,152.503C409.519,152.503 409.773,152.397 409.961,152.209L412.458,149.706C412.848,149.316 412.847,148.682 412.456,148.292C412.066,147.902 411.432,147.903 411.042,148.294L409.252,150.088C409.252,150.088 408.957,149.793 408.957,149.793C408.567,149.403 407.933,149.403 407.543,149.793C407.153,150.183 407.153,150.817 407.543,151.207Z' fill='%231990a7'%3E%3C/path%3E%3C/g%3E%3C/svg%3E\") ) center / contain no-repeat}.aia-product-body{display:flex;flex-direction:column;gap:2px;min-width:0}.aia-product-vendor{font-family:inherit;font-size:var(--aia-product-vendor-font-size, 10px);line-height:14px;color:var( --aia-product-vendor-color, var(--aia-option-color, var(--aia-color-text-muted, #c1c4cb)) );opacity:.8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.aia-product-title{font-family:inherit;font-size:var(--aia-product-title-font-size, 12px);font-weight:400;line-height:16px;color:var( --aia-product-title-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) );display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.aia-product-price{font-family:inherit;font-size:var(--aia-product-price-font-size, 11px);font-weight:500;line-height:15px;color:var( --aia-product-price-color, var(--aia-option-color-selected, var(--aia-color-text-default, #fff)) )}.aia-products[data-aia-products-layout=list] .aia-products-row{flex-direction:column;gap:var(--aia-product-list-gap, 2px);max-height:var(--aia-product-list-max-height, 320px);overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain}.aia-products[data-aia-products-layout=list] .aia-product{flex-direction:row;align-items:center;gap:10px;width:auto;padding:6px 8px}.aia-products[data-aia-products-layout=list] .aia-product-media{flex:0 0 auto;width:var(--aia-product-list-media-size, 44px);height:var(--aia-product-list-media-size, 44px)}.aia-products[data-aia-products-layout=list] .aia-product-body{flex:1 1 auto}\n"] }]
111
130
  }], propDecorators: { products: [{
112
131
  type: Input
113
132
  }], listboxId: [{
@@ -116,6 +135,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
116
135
  type: Input
117
136
  }], layout: [{
118
137
  type: Input
138
+ }], imageFallback: [{
139
+ type: Input
119
140
  }], select: [{
120
141
  type: Output
121
142
  }], focusChange: [{
@@ -124,4 +145,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
124
145
  type: ViewChild,
125
146
  args: ["row"]
126
147
  }] } });
127
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zdHJpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3Byb2R1Y3Qtc3RyaXAvcHJvZHVjdC1zdHJpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3Byb2R1Y3Qtc3RyaXAvcHJvZHVjdC1zdHJpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wscUJBQXFCLEdBR3RCLE1BQU0scUNBQXFDLENBQUM7OztBQUU3Qzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW1CRztBQVVILE1BQU0sT0FBTyxxQkFBcUI7SUFUbEM7UUFVVyxhQUFRLEdBQWMsRUFBRSxDQUFDO1FBQ2xDLDJEQUEyRDtRQUNsRCxjQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ3hCOzs7O1dBSUc7UUFDTSxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDhGQUE4RjtRQUNyRixXQUFNLEdBQW1CLEtBQUssQ0FBQztRQUVyQixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQVcsQ0FBQztRQUN4RDs7Ozs7V0FLRztRQUNnQixnQkFBVyxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFFckQsZ0JBQVcsR0FBd0IsSUFBSSxDQUFDO1FBMEJoRDs7O1dBR0c7UUFDSCxtQkFBYyxHQUFHLENBQUMsQ0FBUyxFQUFFLE9BQWdCLEVBQVUsRUFBRSxDQUN2RDtZQUNFLE9BQU8sQ0FBQyxFQUFFO1lBQ1YsT0FBTyxDQUFDLEtBQUs7WUFDYixPQUFPLENBQUMsR0FBRyxJQUFJLEVBQUU7WUFDakIsT0FBTyxDQUFDLFFBQVEsSUFBSSxFQUFFO1lBQ3RCLE9BQU8sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUNuQixPQUFPLENBQUMsTUFBTSxJQUFJLEVBQUU7U0FDckIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7S0E0QmhCO0lBaEVDOzs7O09BSUc7SUFDSCxJQUNJLEdBQUcsQ0FBQyxHQUF3QztRQUM5QyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7SUFDM0UsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsQ0FBQztRQUNyQixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxHQUFHLElBQUksQ0FBQyxTQUFTLGlCQUFpQixDQUFDO0lBQzVDLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBYTtRQUNsQixPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsWUFBWSxLQUFLLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBZ0JELE9BQU8sQ0FBQyxLQUFpQixFQUFFLE9BQWdCO1FBQ3pDLHlFQUF5RTtRQUN6RSwwRUFBMEU7UUFDMUUsaUVBQWlFO1FBQ2pFLElBQUksS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsT0FBTyxJQUFJLEtBQUssQ0FBQyxRQUFRLElBQUksS0FBSyxDQUFDLE1BQU0sSUFBSSxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUMxRixPQUFPO1NBQ1I7UUFDRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELFNBQVMsQ0FBQyxLQUFvQixFQUFFLE9BQWdCO1FBQzlDLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxHQUFHO1lBQUUsT0FBTztRQUN2RCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsVUFBVSxDQUFDLEtBQWlCO1FBQzFCLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxhQUFtQyxDQUFDO1FBQ3ZELElBQUksSUFBSSxFQUFFLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQztZQUFFLE9BQU87UUFDakQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDL0IsQ0FBQzs7bUhBdkZVLHFCQUFxQjt1R0FBckIscUJBQXFCLHdVQy9DbEMsaXpGQWdFQSxrdE9EdkJZLFlBQVk7NEZBTVgscUJBQXFCO2tCQVRqQyxTQUFTOytCQUNFLG1CQUFtQixjQUNqQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUMsbUJBQ04sdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTs4QkFLNUIsUUFBUTtzQkFBaEIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQU1HLFNBQVM7c0JBQWpCLEtBQUs7Z0JBRUcsTUFBTTtzQkFBZCxLQUFLO2dCQUVhLE1BQU07c0JBQXhCLE1BQU07Z0JBT1ksV0FBVztzQkFBN0IsTUFBTTtnQkFVSCxHQUFHO3NCQUROLFNBQVM7dUJBQUMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIHR5cGUgRWxlbWVudFJlZixcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgdHlwZSBPbkRlc3Ryb3ksXG4gIE91dHB1dCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7XG4gIGF0dGFjaFByb2R1Y3RSb3dXaGVlbCxcbiAgdHlwZSBQcm9kdWN0LFxuICB0eXBlIFByb2R1Y3RzTGF5b3V0LFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcblxuLyoqXG4gKiBJbnRlcm5hbCBwcm9kdWN0IHN0cmlwIHJlbmRlcmVkIGJlbG93IHRoZSBkcm9wZG93bidzIG9wdGlvbnMgZ3JpZC4gTWlycm9yc1xuICogYHBhY2thZ2VzL3JlYWN0L3NyYy9jb21wb25lbnRzL1Byb2R1Y3RTdHJpcC50c3hgIGFuZCB0aGUgdmFuaWxsYSBjb3JlJ3NcbiAqIGByZW5kZXJQcm9kdWN0U3RyaXBgLCBzbyBhbGwgdGhyZWUgcGFja2FnZXMgZW1pdCB0aGUgc2FtZSBzdHJ1Y3R1cmUgYW5kXG4gKiB0aGVtZSBpZGVudGljYWxseS5cbiAqXG4gKiBUd28gbGF5b3V0IG5vdGVzIGNhcnJpZWQgb3ZlciBmcm9tIHRoZSB2YW5pbGxhIGltcGxlbWVudGF0aW9uOlxuICpcbiAqIC0gVGhlIGRyb3Bkb3duIHBhaW50cyBhIGJhY2tncm91bmQgYnV0IG5ldmVyIHNldHMgYGNvbG9yYCwgc28gYW55dGhpbmcgaGVyZVxuICogICByZWx5aW5nIG9uIGBjb2xvcjogaW5oZXJpdGAgd291bGQgcGljayB1cCB0aGUgKmhvc3QgcGFnZSdzKiB0ZXh0IGNvbG91ciDigJRcbiAqICAgYmxhY2sgdGV4dCBvbiBhIGRhcmsgcGFuZWwuIEV2ZXJ5IHRleHQgbm9kZSByZXNvbHZlcyBpdHMgY29sb3VyIHRocm91Z2hcbiAqICAgdGhlIHNhbWUgYC0tYWlhLW9wdGlvbi0qYCBjaGFpbiB0aGUgb3B0aW9ucyB1c2UuXG4gKiAtIFRoZSBvcHRpb25zIGdyaWQgY2FycmllcyBhIG5lZ2F0aXZlIGJvdHRvbSBtYXJnaW4gc28gdGhlIGZvb3RlciByaWRlcyB1cFxuICogICBvdmVyIGl0cyByZXNlcnZlZCBiYW5kLCBhbmQgd2hhdGV2ZXIgZm9sbG93cyB0aGUgZ3JpZCBpbmhlcml0cyB0aGF0IHB1bGwuXG4gKiAgIFRoZSBkcm9wZG93biByb290IGlzIG1hcmtlZCBgZGF0YS1haWEtaGFzLXByb2R1Y3RzYCBhbmQgdGhlIGFwcGVhcmFuY2VcbiAqICAgbGF5ZXIgemVyb2VzIHRoZSBiYW5kIGF0IGl0cyBzb3VyY2UgcmF0aGVyIHRoYW4gdGhlIHN0cmlwIGNhbmNlbGxpbmcgaXRcbiAqICAgZnJvbSBoZXJlLlxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYWlhLXByb2R1Y3Qtc3RyaXBcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZVVybDogXCIuL3Byb2R1Y3Qtc3RyaXAuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3Byb2R1Y3Qtc3RyaXAuY29tcG9uZW50LmNzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdFN0cmlwQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcHJvZHVjdHM6IFByb2R1Y3RbXSA9IFtdO1xuICAvKiogU2NvcGVzIHRoZSBzZWN0aW9uIGxhYmVsJ3MgaWQgdG8gdGhlIG93bmluZyBsaXN0Ym94LiAqL1xuICBASW5wdXQoKSBsaXN0Ym94SWQgPSBcIlwiO1xuICAvKipcbiAgICogRmFsc2Ugd2hpbGUgdGhlIHBhbmVsIGlzIGZhZGluZyBvdXQuIFRoZSBjbG9zZWQgZHJvcGRvd24ga2VlcHMgcmVuZGVyaW5nXG4gICAqIGl0cyBsYXN0IGNvbnRlbnQgZm9yIHRoZSBmYWRlLCBhbmQgZm9jdXNhYmxlIGNhcmRzIGluc2lkZSBpdCB3b3VsZCBzdGlsbFxuICAgKiBhbnN3ZXIgVGFiLlxuICAgKi9cbiAgQElucHV0KCkgZm9jdXNhYmxlID0gdHJ1ZTtcbiAgLyoqIEhvdyB0aGUgY2FyZHMgbGF5IG91dCDigJQgYSBzY3JvbGxpbmcgcm93LCBvciBzdGFja2VkIGFzIGZ1bGwtd2lkdGggcm93cy4gRGVmYXVsdDogXCJyb3dcIi4gKi9cbiAgQElucHV0KCkgbGF5b3V0OiBQcm9kdWN0c0xheW91dCA9IFwicm93XCI7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8UHJvZHVjdD4oKTtcbiAgLyoqXG4gICAqIEZvY3VzIG1vdmVkIGludG8gLyBvdXQgb2YgdGhlIHN0cmlwLiBUaGUgcGFuZWwgY2xvc2VzIG9uIGJsdXIgYnkgZGVmYXVsdFxuICAgKiBhbmQgdGhlIGVkaXRvciBibHVycyB0aGUgbW9tZW50IGEgY2FyZCB0YWtlcyBmb2N1cywgc28gdGhlIGRyb3Bkb3duXG4gICAqIHJlcG9ydHMgZm9jdXMgYXMgc3RpbGwtaW5zaWRlIHJhdGhlciB0aGFuIHNodXR0aW5nIG91dCBmcm9tIHVuZGVyIHRoZSBjYXJkXG4gICAqIHRoZSB1c2VyIGp1c3QgdGFiYmVkIHRvLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGZvY3VzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgZGV0YWNoV2hlZWw6ICgoKSA9PiB2b2lkKSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBBIG1vdXNlIHdoZWVsIG92ZXIgdGhlIHJvdyBzY3JvbGxzIGl0IHNpZGV3YXlzLiBUaGUgcm93IHNpdHMgaW5zaWRlIHRoZVxuICAgKiBzZWN0aW9uJ3MgYCpuZ0lmYCwgc28gdGhlIHF1ZXJ5IGZpcmVzIHdpdGggdGhlIGVsZW1lbnQgYXMgcHJvZHVjdHMgYXJyaXZlXG4gICAqIGFuZCB3aXRoIGB1bmRlZmluZWRgIGFzIHRoZXkgZ287IHRoZSBiaW5kaW5nIGZvbGxvd3MgaXQgZWl0aGVyIHdheS5cbiAgICovXG4gIEBWaWV3Q2hpbGQoXCJyb3dcIilcbiAgc2V0IHJvdyhyZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kZXRhY2hXaGVlbD8uKCk7XG4gICAgdGhpcy5kZXRhY2hXaGVlbCA9IHJlZiA/IGF0dGFjaFByb2R1Y3RSb3dXaGVlbChyZWYubmF0aXZlRWxlbWVudCkgOiBudWxsO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXRhY2hXaGVlbD8uKCk7XG4gICAgdGhpcy5kZXRhY2hXaGVlbCA9IG51bGw7XG4gIH1cblxuICBnZXQgbGFiZWxJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmxpc3Rib3hJZH0tcHJvZHVjdHMtbGFiZWxgO1xuICB9XG5cbiAgY2FyZElkKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmxpc3Rib3hJZH0tcHJvZHVjdC0ke2luZGV4fWA7XG4gIH1cblxuICAvKipcbiAgICogSWRlbnRpdHkgKmFuZCogY29udGVudDogYSBzYW1lLWlkIHJlc3VsdCB3aG9zZSBmaWVsZHMgY2hhbmdlZCBtdXN0XG4gICAqIHJlLXJlbmRlciByYXRoZXIgdGhhbiByZXVzZSB0aGUgcHJldmlvdXMgY2FyZCdzIGJpbmRpbmdzLlxuICAgKi9cbiAgdHJhY2tCeVByb2R1Y3QgPSAoXzogbnVtYmVyLCBwcm9kdWN0OiBQcm9kdWN0KTogc3RyaW5nID0+XG4gICAgW1xuICAgICAgcHJvZHVjdC5pZCxcbiAgICAgIHByb2R1Y3QudGl0bGUsXG4gICAgICBwcm9kdWN0LnVybCA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC5pbWFnZVVybCA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC5wcmljZSA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC52ZW5kb3IgPz8gXCJcIixcbiAgICBdLmpvaW4oXCJcXDBcIik7XG5cbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCwgcHJvZHVjdDogUHJvZHVjdCk6IHZvaWQge1xuICAgIC8vIExldCB0aGUgYnJvd3NlciBrZWVwIHRoZSBjbGlja3MgdGhhdCBtZWFuIFwib3BlbiB0aGlzIHNvbWV3aGVyZSBlbHNlXCIg4oCUXG4gICAgLy8gaW50ZXJjZXB0aW5nIHRoZW0gd291bGQgZGVmZWF0IHRoZSBwb2ludCBvZiByZW5kZXJpbmcgYW4gPGE+LiBUaG9zZSBhcmVcbiAgICAvLyBuYXZpZ2F0aW9ucyB0aGUgdXNlciBhc2tlZCBmb3IgZXhwbGljaXRseSwgc28gdGhleSBkb24ndCBlbWl0LlxuICAgIGlmIChldmVudC5tZXRhS2V5IHx8IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQuc2hpZnRLZXkgfHwgZXZlbnQuYWx0S2V5IHx8IGV2ZW50LmJ1dHRvbiAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuc2VsZWN0LmVtaXQocHJvZHVjdCk7XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIHByb2R1Y3Q6IFByb2R1Y3QpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSBcIkVudGVyXCIgJiYgZXZlbnQua2V5ICE9PSBcIiBcIikgcmV0dXJuO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zZWxlY3QuZW1pdChwcm9kdWN0KTtcbiAgfVxuXG4gIG9uQ2FyZEZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIG9uQ2FyZEJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBuZXh0ID0gZXZlbnQucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgaWYgKG5leHQ/LmNsb3Nlc3QoXCJbZGF0YS1haWEtZHJvcGRvd25dXCIpKSByZXR1cm47XG4gICAgdGhpcy5mb2N1c0NoYW5nZS5lbWl0KGZhbHNlKTtcbiAgfVxufVxuIiwiPCEtLSBgZ3JvdXBgIGlzIHRoZSBvbmUgcm9sZSBhIGxpc3Rib3ggYWNjZXB0cyBhcm91bmQgYSBzZXQgb2Ygb3B0aW9ucywgc28gdGhlXG4gICAgIHN0cmlwIHN0YXlzIGluc2lkZSB0aGUgbGlzdGJveCB3aXRob3V0IGJyZWFraW5nIGl0cyBjb250ZW50IG1vZGVsLiAtLT5cbjxzZWN0aW9uXG4gICpuZ0lmPVwicHJvZHVjdHMubGVuZ3RoID4gMFwiXG4gIGNsYXNzPVwiYWlhLXByb2R1Y3RzXCJcbiAgZGF0YS1haWEtcHJvZHVjdHM9XCJcIlxuICBbYXR0ci5kYXRhLWFpYS1wcm9kdWN0cy1sYXlvdXRdPVwibGF5b3V0XCJcbiAgcm9sZT1cImdyb3VwXCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWRcIlxuPlxuICA8IS0tIGRhdGEtYWlhLXByb2R1Y3RzLWxhYmVsOiB0aGUgc2Nyb2xsIGFycm93IGNlbnRyZXMgaXRzZWxmIG9uIHRoaXMgcm93LiAtLT5cbiAgPGRpdiBjbGFzcz1cImFpYS1wcm9kdWN0cy1sYWJlbFwiIFtpZF09XCJsYWJlbElkXCIgZGF0YS1haWEtcHJvZHVjdHMtbGFiZWw9XCJcIj5Qcm9kdWN0czwvZGl2PlxuXG4gIDwhLS0gI3JvdzogdGhlIGNvbXBvbmVudCBiaW5kcyB3aGVlbC10by1zaWRld2F5cyBzY3JvbGxpbmcgb24gaXQuIC0tPlxuICA8ZGl2ICNyb3cgY2xhc3M9XCJhaWEtcHJvZHVjdHMtcm93XCIgZGF0YS1haWEtcHJvZHVjdHMtcm93PVwiXCI+XG4gICAgPCEtLSBBIHJlYWwgPGEgaHJlZj4gcmF0aGVyIHRoYW4gYSA8ZGl2PjogaXQga2VlcHMgdGhlIGJyb3dzZXIncyBvd24gbGlua1xuICAgICAgICAgYWZmb3JkYW5jZXMg4oCUIGNtZC9jdHJsLWNsaWNrIGZvciBhIG5ldyB0YWIsIG1pZGRsZS1jbGljaywgcmlnaHQtY2xpY2sg4oaSXG4gICAgICAgICBcImNvcHkgbGluayBhZGRyZXNzXCIuIHJvbGU9XCJvcHRpb25cIiBvdmVycmlkZXMgaG93IGFzc2lzdGl2ZSB0ZWNoXG4gICAgICAgICBhbm5vdW5jZXMgaXQsIHdoaWNoIGlzIGNvcnJlY3QgaW5zaWRlIGEgbGlzdGJveDsgdGhlIGRlbGliZXJhdGUgdHJhZGVcbiAgICAgICAgIGlzIHRoYXQgQVQgbm8gbG9uZ2VyIGNhbGxzIGl0IGEgbGluay4gQW4gYXR0cmlidXRlIGJpbmRpbmcsIHNvIGFcbiAgICAgICAgIHByb2R1Y3Qgd2l0aG91dCBhIHVybCBnZXRzIG5vIGhyZWYgYXQgYWxsIHJhdGhlciB0aGFuIFwibnVsbFwiLiAtLT5cbiAgICA8YVxuICAgICAgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgcHJvZHVjdHM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrQnlQcm9kdWN0XCJcbiAgICAgIFtpZF09XCJjYXJkSWQoaSlcIlxuICAgICAgY2xhc3M9XCJhaWEtcHJvZHVjdFwiXG4gICAgICBkYXRhLWFpYS1wcm9kdWN0PVwiXCJcbiAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJmYWxzZVwiXG4gICAgICBbYXR0ci5ocmVmXT1cInByb2R1Y3QudXJsID8/IG51bGxcIlxuICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZm9jdXNhYmxlID8gMCA6IC0xXCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudCwgcHJvZHVjdClcIlxuICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudCwgcHJvZHVjdClcIlxuICAgICAgKGZvY3VzKT1cIm9uQ2FyZEZvY3VzKClcIlxuICAgICAgKGJsdXIpPVwib25DYXJkQmx1cigkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8IS0tIENhdGFsb2d1ZXMgd2l0aG91dCBpbWFnZXMgYXJlIGNvbW1vbiBlbm91Z2ggdGhhdCB0aGUgcGxhY2Vob2xkZXIgaXNcbiAgICAgICAgICAgYSBmaXJzdC1jbGFzcyBzdGF0ZSwgbm90IGFuIGVycm9yIHN0YXRlLiAtLT5cbiAgICAgIDxzcGFuXG4gICAgICAgIGNsYXNzPVwiYWlhLXByb2R1Y3QtbWVkaWFcIlxuICAgICAgICBbYXR0ci5kYXRhLWFpYS1wcm9kdWN0LXBsYWNlaG9sZGVyXT1cInByb2R1Y3QuaW1hZ2VVcmwgPyBudWxsIDogJydcIlxuICAgICAgPlxuICAgICAgICA8IS0tIGFsdD1cIlwiIG9uIHB1cnBvc2U6IHRoZSB0aXRsZSBpcyBhbHJlYWR5IHRoZSBjYXJkJ3MgYWNjZXNzaWJsZVxuICAgICAgICAgICAgIG5hbWUsIGFuZCByZXBlYXRpbmcgaXQgd291bGQgaGF2ZSBhIHNjcmVlbiByZWFkZXIgcmVhZCBpdCB0d2ljZS4gLS0+XG4gICAgICAgIDxpbWdcbiAgICAgICAgICAqbmdJZj1cInByb2R1Y3QuaW1hZ2VVcmxcIlxuICAgICAgICAgIGNsYXNzPVwiYWlhLXByb2R1Y3QtaW1hZ2VcIlxuICAgICAgICAgIFtzcmNdPVwicHJvZHVjdC5pbWFnZVVybFwiXG4gICAgICAgICAgYWx0PVwiXCJcbiAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiXG4gICAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgIC8+XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDwhLS0gRXZlcnkgZmllbGQgYnV0IHRoZSB0aXRsZSBpcyBvcHRpb25hbCwgc28gYWJzZW50IG9uZXMgcmVuZGVyIG5vXG4gICAgICAgICAgIGVsZW1lbnQgYXQgYWxsIOKAlCB0aGUgY29sdW1uIGdhcCBjYW4ndCBsZWF2ZSBhIGhvbGUgZm9yIGEgYm94IHRoYXRcbiAgICAgICAgICAgaXNuJ3QgdGhlcmUuIC0tPlxuICAgICAgPHNwYW4gY2xhc3M9XCJhaWEtcHJvZHVjdC1ib2R5XCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwicHJvZHVjdC52ZW5kb3JcIiBjbGFzcz1cImFpYS1wcm9kdWN0LXZlbmRvclwiPnt7IHByb2R1Y3QudmVuZG9yIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImFpYS1wcm9kdWN0LXRpdGxlXCI+e3sgcHJvZHVjdC50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJwcm9kdWN0LnByaWNlXCIgY2xhc3M9XCJhaWEtcHJvZHVjdC1wcmljZVwiPnt7IHByb2R1Y3QucHJpY2UgfX08L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgPC9hPlxuICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZHVjdC1zdHJpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3Byb2R1Y3Qtc3RyaXAvcHJvZHVjdC1zdHJpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3Byb2R1Y3Qtc3RyaXAvcHJvZHVjdC1zdHJpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUNULGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQ0wscUJBQXFCLEVBSXJCLGNBQWMsR0FDZixNQUFNLHFDQUFxQyxDQUFDOzs7QUFFN0M7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQkc7QUFVSCxNQUFNLE9BQU8scUJBQXFCO0lBVGxDO1FBVVcsYUFBUSxHQUFjLEVBQUUsQ0FBQztRQUNsQywyREFBMkQ7UUFDbEQsY0FBUyxHQUFHLEVBQUUsQ0FBQztRQUN4Qjs7OztXQUlHO1FBQ00sY0FBUyxHQUFHLElBQUksQ0FBQztRQUMxQiw4RkFBOEY7UUFDckYsV0FBTSxHQUFtQixLQUFLLENBQUM7UUFDL0Isa0JBQWEsR0FBeUIsT0FBTyxDQUFDO1FBQzlDLFlBQU8sR0FBRyxjQUFjLENBQUM7UUFDakIsaUJBQVksR0FBRyxJQUFJLEdBQUcsRUFBa0IsQ0FBQztRQW1CdkMsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFXLENBQUM7UUFDeEQ7Ozs7O1dBS0c7UUFDZ0IsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO1FBRXJELGdCQUFXLEdBQXdCLElBQUksQ0FBQztRQTBCaEQ7OztXQUdHO1FBQ0gsbUJBQWMsR0FBRyxD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Q0FBQyxHQUFHLEtBQUssR0FBRztZQUFFLE9BQU87UUFDdkQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELFVBQVUsQ0FBQyxLQUFpQjtRQUMxQixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsYUFBbUMsQ0FBQztRQUN2RCxJQUFJLElBQUksRUFBRSxPQUFPLENBQUMscUJBQXFCLENBQUM7WUFBRSxPQUFPO1FBQ2pELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7O21IQTNHVSxxQkFBcUI7dUdBQXJCLHFCQUFxQiw2WENsRGxDLG1nR0FrRUEsZzhPRHRCWSxZQUFZOzRGQU1YLHFCQUFxQjtrQkFUakMsU0FBUzsrQkFDRSxtQkFBbUIsY0FDakIsSUFBSSxXQUNQLENBQUMsWUFBWSxDQUFDLG1CQUNOLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7OEJBSzVCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFNRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQXFCYSxNQUFNO3NCQUF4QixNQUFNO2dCQU9ZLFdBQVc7c0JBQTdCLE1BQU07Z0JBVUgsR0FBRztzQkFETixTQUFTO3VCQUFDLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICB0eXBlIEVsZW1lbnRSZWYsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIHR5cGUgT25DaGFuZ2VzLFxuICB0eXBlIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtcbiAgYXR0YWNoUHJvZHVjdFJvd1doZWVsLFxuICB0eXBlIFByb2R1Y3QsXG4gIHR5cGUgUHJvZHVjdEltYWdlRmFsbGJhY2ssXG4gIHR5cGUgUHJvZHVjdHNMYXlvdXQsXG4gIHByb2R1Y3RJbml0aWFsLFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcblxuLyoqXG4gKiBJbnRlcm5hbCBwcm9kdWN0IHN0cmlwIHJlbmRlcmVkIGJlbG93IHRoZSBkcm9wZG93bidzIG9wdGlvbnMgZ3JpZC4gTWlycm9yc1xuICogYHBhY2thZ2VzL3JlYWN0L3NyYy9jb21wb25lbnRzL1Byb2R1Y3RTdHJpcC50c3hgIGFuZCB0aGUgdmFuaWxsYSBjb3JlJ3NcbiAqIGByZW5kZXJQcm9kdWN0U3RyaXBgLCBzbyBhbGwgdGhyZWUgcGFja2FnZXMgZW1pdCB0aGUgc2FtZSBzdHJ1Y3R1cmUgYW5kXG4gKiB0aGVtZSBpZGVudGljYWxseS5cbiAqXG4gKiBUd28gbGF5b3V0IG5vdGVzIGNhcnJpZWQgb3ZlciBmcm9tIHRoZSB2YW5pbGxhIGltcGxlbWVudGF0aW9uOlxuICpcbiAqIC0gVGhlIGRyb3Bkb3duIHBhaW50cyBhIGJhY2tncm91bmQgYnV0IG5ldmVyIHNldHMgYGNvbG9yYCwgc28gYW55dGhpbmcgaGVyZVxuICogICByZWx5aW5nIG9uIGBjb2xvcjogaW5oZXJpdGAgd291bGQgcGljayB1cCB0aGUgKmhvc3QgcGFnZSdzKiB0ZXh0IGNvbG91ciDigJRcbiAqICAgYmxhY2sgdGV4dCBvbiBhIGRhcmsgcGFuZWwuIEV2ZXJ5IHRleHQgbm9kZSByZXNvbHZlcyBpdHMgY29sb3VyIHRocm91Z2hcbiAqICAgdGhlIHNhbWUgYC0tYWlhLW9wdGlvbi0qYCBjaGFpbiB0aGUgb3B0aW9ucyB1c2UuXG4gKiAtIFRoZSBvcHRpb25zIGdyaWQgY2FycmllcyBhIG5lZ2F0aXZlIGJvdHRvbSBtYXJnaW4gc28gdGhlIGZvb3RlciByaWRlcyB1cFxuICogICBvdmVyIGl0cyByZXNlcnZlZCBiYW5kLCBhbmQgd2hhdGV2ZXIgZm9sbG93cyB0aGUgZ3JpZCBpbmhlcml0cyB0aGF0IHB1bGwuXG4gKiAgIFRoZSBkcm9wZG93biByb290IGlzIG1hcmtlZCBgZGF0YS1haWEtaGFzLXByb2R1Y3RzYCBhbmQgdGhlIGFwcGVhcmFuY2VcbiAqICAgbGF5ZXIgemVyb2VzIHRoZSBiYW5kIGF0IGl0cyBzb3VyY2UgcmF0aGVyIHRoYW4gdGhlIHN0cmlwIGNhbmNlbGxpbmcgaXRcbiAqICAgZnJvbSBoZXJlLlxuICpcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiYWlhLXByb2R1Y3Qtc3RyaXBcIixcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICB0ZW1wbGF0ZVVybDogXCIuL3Byb2R1Y3Qtc3RyaXAuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3Byb2R1Y3Qtc3RyaXAuY29tcG9uZW50LmNzc1wiXSxcbn0pXG5leHBvcnQgY2xhc3MgUHJvZHVjdFN0cmlwQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwcm9kdWN0czogUHJvZHVjdFtdID0gW107XG4gIC8qKiBTY29wZXMgdGhlIHNlY3Rpb24gbGFiZWwncyBpZCB0byB0aGUgb3duaW5nIGxpc3Rib3guICovXG4gIEBJbnB1dCgpIGxpc3Rib3hJZCA9IFwiXCI7XG4gIC8qKlxuICAgKiBGYWxzZSB3aGlsZSB0aGUgcGFuZWwgaXMgZmFkaW5nIG91dC4gVGhlIGNsb3NlZCBkcm9wZG93biBrZWVwcyByZW5kZXJpbmdcbiAgICogaXRzIGxhc3QgY29udGVudCBmb3IgdGhlIGZhZGUsIGFuZCBmb2N1c2FibGUgY2FyZHMgaW5zaWRlIGl0IHdvdWxkIHN0aWxsXG4gICAqIGFuc3dlciBUYWIuXG4gICAqL1xuICBASW5wdXQoKSBmb2N1c2FibGUgPSB0cnVlO1xuICAvKiogSG93IHRoZSBjYXJkcyBsYXkgb3V0IOKAlCBhIHNjcm9sbGluZyByb3csIG9yIHN0YWNrZWQgYXMgZnVsbC13aWR0aCByb3dzLiBEZWZhdWx0OiBcInJvd1wiLiAqL1xuICBASW5wdXQoKSBsYXlvdXQ6IFByb2R1Y3RzTGF5b3V0ID0gXCJyb3dcIjtcbiAgQElucHV0KCkgaW1hZ2VGYWxsYmFjazogUHJvZHVjdEltYWdlRmFsbGJhY2sgPSBcImltYWdlXCI7XG4gIHJlYWRvbmx5IGluaXRpYWwgPSBwcm9kdWN0SW5pdGlhbDtcbiAgcHJpdmF0ZSByZWFkb25seSBmYWlsZWRJbWFnZXMgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpO1xuXG4gIG5nT25DaGFuZ2VzKCk6IHZvaWQge1xuICAgIGNvbnN0IHNvdXJjZXMgPSBuZXcgTWFwKHRoaXMucHJvZHVjdHMubWFwKChwcm9kdWN0KSA9PiBbcHJvZHVjdC5pZCwgcHJvZHVjdC5pbWFnZVVybD8udHJpbSgpXSkpO1xuICAgIGZvciAoY29uc3QgW2lkLCBzcmNdIG9mIHRoaXMuZmFpbGVkSW1hZ2VzKSB7XG4gICAgICBpZiAoc291cmNlcy5nZXQoaWQpICE9PSBzcmMpIHRoaXMuZmFpbGVkSW1hZ2VzLmRlbGV0ZShpZCk7XG4gICAgfVxuICB9XG5cbiAgaW1hZ2VTb3VyY2UocHJvZHVjdDogUHJvZHVjdCk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IHNyYyA9IHByb2R1Y3QuaW1hZ2VVcmw/LnRyaW0oKTtcbiAgICByZXR1cm4gc3JjICYmIHRoaXMuZmFpbGVkSW1hZ2VzLmdldChwcm9kdWN0LmlkKSAhPT0gc3JjID8gc3JjIDogbnVsbDtcbiAgfVxuXG4gIG9uSW1hZ2VFcnJvcihwcm9kdWN0OiBQcm9kdWN0KTogdm9pZCB7XG4gICAgY29uc3Qgc3JjID0gcHJvZHVjdC5pbWFnZVVybD8udHJpbSgpO1xuICAgIGlmIChzcmMpIHRoaXMuZmFpbGVkSW1hZ2VzLnNldChwcm9kdWN0LmlkLCBzcmMpO1xuICB9XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8UHJvZHVjdD4oKTtcbiAgLyoqXG4gICAqIEZvY3VzIG1vdmVkIGludG8gLyBvdXQgb2YgdGhlIHN0cmlwLiBUaGUgcGFuZWwgY2xvc2VzIG9uIGJsdXIgYnkgZGVmYXVsdFxuICAgKiBhbmQgdGhlIGVkaXRvciBibHVycyB0aGUgbW9tZW50IGEgY2FyZCB0YWtlcyBmb2N1cywgc28gdGhlIGRyb3Bkb3duXG4gICAqIHJlcG9ydHMgZm9jdXMgYXMgc3RpbGwtaW5zaWRlIHJhdGhlciB0aGFuIHNodXR0aW5nIG91dCBmcm9tIHVuZGVyIHRoZSBjYXJkXG4gICAqIHRoZSB1c2VyIGp1c3QgdGFiYmVkIHRvLlxuICAgKi9cbiAgQE91dHB1dCgpIHJlYWRvbmx5IGZvY3VzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gIHByaXZhdGUgZGV0YWNoV2hlZWw6ICgoKSA9PiB2b2lkKSB8IG51bGwgPSBudWxsO1xuXG4gIC8qKlxuICAgKiBBIG1vdXNlIHdoZWVsIG92ZXIgdGhlIHJvdyBzY3JvbGxzIGl0IHNpZGV3YXlzLiBUaGUgcm93IHNpdHMgaW5zaWRlIHRoZVxuICAgKiBzZWN0aW9uJ3MgYCpuZ0lmYCwgc28gdGhlIHF1ZXJ5IGZpcmVzIHdpdGggdGhlIGVsZW1lbnQgYXMgcHJvZHVjdHMgYXJyaXZlXG4gICAqIGFuZCB3aXRoIGB1bmRlZmluZWRgIGFzIHRoZXkgZ287IHRoZSBiaW5kaW5nIGZvbGxvd3MgaXQgZWl0aGVyIHdheS5cbiAgICovXG4gIEBWaWV3Q2hpbGQoXCJyb3dcIilcbiAgc2V0IHJvdyhyZWY6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kZXRhY2hXaGVlbD8uKCk7XG4gICAgdGhpcy5kZXRhY2hXaGVlbCA9IHJlZiA/IGF0dGFjaFByb2R1Y3RSb3dXaGVlbChyZWYubmF0aXZlRWxlbWVudCkgOiBudWxsO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5kZXRhY2hXaGVlbD8uKCk7XG4gICAgdGhpcy5kZXRhY2hXaGVlbCA9IG51bGw7XG4gIH1cblxuICBnZXQgbGFiZWxJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmxpc3Rib3hJZH0tcHJvZHVjdHMtbGFiZWxgO1xuICB9XG5cbiAgY2FyZElkKGluZGV4OiBudW1iZXIpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLmxpc3Rib3hJZH0tcHJvZHVjdC0ke2luZGV4fWA7XG4gIH1cblxuICAvKipcbiAgICogSWRlbnRpdHkgKmFuZCogY29udGVudDogYSBzYW1lLWlkIHJlc3VsdCB3aG9zZSBmaWVsZHMgY2hhbmdlZCBtdXN0XG4gICAqIHJlLXJlbmRlciByYXRoZXIgdGhhbiByZXVzZSB0aGUgcHJldmlvdXMgY2FyZCdzIGJpbmRpbmdzLlxuICAgKi9cbiAgdHJhY2tCeVByb2R1Y3QgPSAoXzogbnVtYmVyLCBwcm9kdWN0OiBQcm9kdWN0KTogc3RyaW5nID0+XG4gICAgW1xuICAgICAgcHJvZHVjdC5pZCxcbiAgICAgIHByb2R1Y3QudGl0bGUsXG4gICAgICBwcm9kdWN0LnVybCA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC5pbWFnZVVybCA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC5wcmljZSA/PyBcIlwiLFxuICAgICAgcHJvZHVjdC52ZW5kb3IgPz8gXCJcIixcbiAgICBdLmpvaW4oXCJcXDBcIik7XG5cbiAgb25DbGljayhldmVudDogTW91c2VFdmVudCwgcHJvZHVjdDogUHJvZHVjdCk6IHZvaWQge1xuICAgIC8vIExldCB0aGUgYnJvd3NlciBrZWVwIHRoZSBjbGlja3MgdGhhdCBtZWFuIFwib3BlbiB0aGlzIHNvbWV3aGVyZSBlbHNlXCIg4oCUXG4gICAgLy8gaW50ZXJjZXB0aW5nIHRoZW0gd291bGQgZGVmZWF0IHRoZSBwb2ludCBvZiByZW5kZXJpbmcgYW4gPGE+LiBUaG9zZSBhcmVcbiAgICAvLyBuYXZpZ2F0aW9ucyB0aGUgdXNlciBhc2tlZCBmb3IgZXhwbGljaXRseSwgc28gdGhleSBkb24ndCBlbWl0LlxuICAgIGlmIChldmVudC5tZXRhS2V5IHx8IGV2ZW50LmN0cmxLZXkgfHwgZXZlbnQuc2hpZnRLZXkgfHwgZXZlbnQuYWx0S2V5IHx8IGV2ZW50LmJ1dHRvbiAhPT0gMCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIHRoaXMuc2VsZWN0LmVtaXQocHJvZHVjdCk7XG4gIH1cblxuICBvbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIHByb2R1Y3Q6IFByb2R1Y3QpOiB2b2lkIHtcbiAgICBpZiAoZXZlbnQua2V5ICE9PSBcIkVudGVyXCIgJiYgZXZlbnQua2V5ICE9PSBcIiBcIikgcmV0dXJuO1xuICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy5zZWxlY3QuZW1pdChwcm9kdWN0KTtcbiAgfVxuXG4gIG9uQ2FyZEZvY3VzKCk6IHZvaWQge1xuICAgIHRoaXMuZm9jdXNDaGFuZ2UuZW1pdCh0cnVlKTtcbiAgfVxuXG4gIG9uQ2FyZEJsdXIoZXZlbnQ6IEZvY3VzRXZlbnQpOiB2b2lkIHtcbiAgICBjb25zdCBuZXh0ID0gZXZlbnQucmVsYXRlZFRhcmdldCBhcyBIVE1MRWxlbWVudCB8IG51bGw7XG4gICAgaWYgKG5leHQ/LmNsb3Nlc3QoXCJbZGF0YS1haWEtZHJvcGRvd25dXCIpKSByZXR1cm47XG4gICAgdGhpcy5mb2N1c0NoYW5nZS5lbWl0KGZhbHNlKTtcbiAgfVxufVxuIiwiPCEtLSBgZ3JvdXBgIGlzIHRoZSBvbmUgcm9sZSBhIGxpc3Rib3ggYWNjZXB0cyBhcm91bmQgYSBzZXQgb2Ygb3B0aW9ucywgc28gdGhlXG4gICAgIHN0cmlwIHN0YXlzIGluc2lkZSB0aGUgbGlzdGJveCB3aXRob3V0IGJyZWFraW5nIGl0cyBjb250ZW50IG1vZGVsLiAtLT5cbjxzZWN0aW9uXG4gICpuZ0lmPVwicHJvZHVjdHMubGVuZ3RoID4gMFwiXG4gIGNsYXNzPVwiYWlhLXByb2R1Y3RzXCJcbiAgZGF0YS1haWEtcHJvZHVjdHM9XCJcIlxuICBbYXR0ci5kYXRhLWFpYS1wcm9kdWN0cy1sYXlvdXRdPVwibGF5b3V0XCJcbiAgcm9sZT1cImdyb3VwXCJcbiAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImxhYmVsSWRcIlxuPlxuICA8IS0tIGRhdGEtYWlhLXByb2R1Y3RzLWxhYmVsOiB0aGUgc2Nyb2xsIGFycm93IGNlbnRyZXMgaXRzZWxmIG9uIHRoaXMgcm93LiAtLT5cbiAgPGRpdiBjbGFzcz1cImFpYS1wcm9kdWN0cy1sYWJlbFwiIFtpZF09XCJsYWJlbElkXCIgZGF0YS1haWEtcHJvZHVjdHMtbGFiZWw9XCJcIj5Qcm9kdWN0czwvZGl2PlxuXG4gIDwhLS0gI3JvdzogdGhlIGNvbXBvbmVudCBiaW5kcyB3aGVlbC10by1zaWRld2F5cyBzY3JvbGxpbmcgb24gaXQuIC0tPlxuICA8ZGl2ICNyb3cgY2xhc3M9XCJhaWEtcHJvZHVjdHMtcm93XCIgZGF0YS1haWEtcHJvZHVjdHMtcm93PVwiXCI+XG4gICAgPCEtLSBBIHJlYWwgPGEgaHJlZj4gcmF0aGVyIHRoYW4gYSA8ZGl2PjogaXQga2VlcHMgdGhlIGJyb3dzZXIncyBvd24gbGlua1xuICAgICAgICAgYWZmb3JkYW5jZXMg4oCUIGNtZC9jdHJsLWNsaWNrIGZvciBhIG5ldyB0YWIsIG1pZGRsZS1jbGljaywgcmlnaHQtY2xpY2sg4oaSXG4gICAgICAgICBcImNvcHkgbGluayBhZGRyZXNzXCIuIHJvbGU9XCJvcHRpb25cIiBvdmVycmlkZXMgaG93IGFzc2lzdGl2ZSB0ZWNoXG4gICAgICAgICBhbm5vdW5jZXMgaXQsIHdoaWNoIGlzIGNvcnJlY3QgaW5zaWRlIGEgbGlzdGJveDsgdGhlIGRlbGliZXJhdGUgdHJhZGVcbiAgICAgICAgIGlzIHRoYXQgQVQgbm8gbG9uZ2VyIGNhbGxzIGl0IGEgbGluay4gQW4gYXR0cmlidXRlIGJpbmRpbmcsIHNvIGFcbiAgICAgICAgIHByb2R1Y3Qgd2l0aG91dCBhIHVybCBnZXRzIG5vIGhyZWYgYXQgYWxsIHJhdGhlciB0aGFuIFwibnVsbFwiLiAtLT5cbiAgICA8YVxuICAgICAgKm5nRm9yPVwibGV0IHByb2R1Y3Qgb2YgcHJvZHVjdHM7IGxldCBpID0gaW5kZXg7IHRyYWNrQnk6IHRyYWNrQnlQcm9kdWN0XCJcbiAgICAgIFtpZF09XCJjYXJkSWQoaSlcIlxuICAgICAgY2xhc3M9XCJhaWEtcHJvZHVjdFwiXG4gICAgICBkYXRhLWFpYS1wcm9kdWN0PVwiXCJcbiAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJmYWxzZVwiXG4gICAgICBbYXR0ci5ocmVmXT1cInByb2R1Y3QudXJsID8/IG51bGxcIlxuICAgICAgW2F0dHIudGFiaW5kZXhdPVwiZm9jdXNhYmxlID8gMCA6IC0xXCJcbiAgICAgIChjbGljayk9XCJvbkNsaWNrKCRldmVudCwgcHJvZHVjdClcIlxuICAgICAgKGtleWRvd24pPVwib25LZXlEb3duKCRldmVudCwgcHJvZHVjdClcIlxuICAgICAgKGZvY3VzKT1cIm9uQ2FyZEZvY3VzKClcIlxuICAgICAgKGJsdXIpPVwib25DYXJkQmx1cigkZXZlbnQpXCJcbiAgICA+XG4gICAgICA8c3BhblxuICAgICAgICBjbGFzcz1cImFpYS1wcm9kdWN0LW1lZGlhXCJcbiAgICAgICAgYXJpYS1oaWRkZW49XCJ0cnVlXCJcbiAgICAgICAgW2F0dHIuZGF0YS1haWEtcHJvZHVjdC1wbGFjZWhvbGRlcl09XCIhaW1hZ2VTb3VyY2UocHJvZHVjdCkgJiYgaW1hZ2VGYWxsYmFjayA9PT0gJ2ltYWdlJyA/ICcnIDogbnVsbFwiXG4gICAgICAgIFthdHRyLmRhdGEtYWlhLXByb2R1Y3QtaW5pdGlhbF09XCIhaW1hZ2VTb3VyY2UocHJvZHVjdCkgJiYgaW1hZ2VGYWxsYmFjayA9PT0gJ2luaXRpYWwnID8gJycgOiBudWxsXCJcbiAgICAgID5cbiAgICAgICAgPCEtLSBhbHQ9XCJcIiBvbiBwdXJwb3NlOiB0aGUgdGl0bGUgaXMgYWxyZWFkeSB0aGUgY2FyZCdzIGFjY2Vzc2libGVcbiAgICAgICAgICAgICBuYW1lLCBhbmQgcmVwZWF0aW5nIGl0IHdvdWxkIGhhdmUgYSBzY3JlZW4gcmVhZGVyIHJlYWQgaXQgdHdpY2UuIC0tPlxuICAgICAgICA8aW1nXG4gICAgICAgICAgKm5nSWY9XCJpbWFnZVNvdXJjZShwcm9kdWN0KSBhcyBzcmNcIlxuICAgICAgICAgIGNsYXNzPVwiYWlhLXByb2R1Y3QtaW1hZ2VcIlxuICAgICAgICAgIFtzcmNdPVwic3JjXCJcbiAgICAgICAgICAoZXJyb3IpPVwib25JbWFnZUVycm9yKHByb2R1Y3QpXCJcbiAgICAgICAgICBhbHQ9XCJcIlxuICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgICBkZWNvZGluZz1cImFzeW5jXCJcbiAgICAgICAgLz5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpbWFnZVNvdXJjZShwcm9kdWN0KSAmJiBpbWFnZUZhbGxiYWNrID09PSAnaW5pdGlhbCdcIj57eyBpbml0aWFsKHByb2R1Y3QudGl0bGUpIH19PC9uZy1jb250YWluZXI+XG4gICAgICA8L3NwYW4+XG5cbiAgICAgIDwhLS0gRXZlcnkgZmllbGQgYnV0IHRoZSB0aXRsZSBpcyBvcHRpb25hbCwgc28gYWJzZW50IG9uZXMgcmVuZGVyIG5vXG4gICAgICAgICAgIGVsZW1lbnQgYXQgYWxsIOKAlCB0aGUgY29sdW1uIGdhcCBjYW4ndCBsZWF2ZSBhIGhvbGUgZm9yIGEgYm94IHRoYXRcbiAgICAgICAgICAgaXNuJ3QgdGhlcmUuIC0tPlxuICAgICAgPHNwYW4gY2xhc3M9XCJhaWEtcHJvZHVjdC1ib2R5XCI+XG4gICAgICAgIDxzcGFuICpuZ0lmPVwicHJvZHVjdC52ZW5kb3JcIiBjbGFzcz1cImFpYS1wcm9kdWN0LXZlbmRvclwiPnt7IHByb2R1Y3QudmVuZG9yIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImFpYS1wcm9kdWN0LXRpdGxlXCI+e3sgcHJvZHVjdC50aXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgPHNwYW4gKm5nSWY9XCJwcm9kdWN0LnByaWNlXCIgY2xhc3M9XCJhaWEtcHJvZHVjdC1wcmljZVwiPnt7IHByb2R1Y3QucHJpY2UgfX08L3NwYW4+XG4gICAgICA8L3NwYW4+XG4gICAgPC9hPlxuICA8L2Rpdj5cbjwvc2VjdGlvbj5cbiJdfQ==
@@ -132,10 +132,10 @@ export class SuggestionItemComponent {
132
132
  }
133
133
  }
134
134
  SuggestionItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
135
- 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", showIcon: "showIcon", showImage: "showImage", showCount: "showCount", 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.data-aia-icon]=\"iconHtml && option.icon ? option.icon : null\"\n [attr.data-aia-image]=\"imageSrc ? '' : null\"\n [attr.data-aia-item-count]=\"countLabel !== null ? option.item_count : 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 <!-- The tile keeps a placeholder fill under the picture, so a slow or\n failed load leaves a neutral square rather than a gap. The picture is\n decorative: the text is the option's accessible name. -->\n <span *ngIf=\"imageSrc as src\" class=\"aia-suggestion-image\" aria-hidden=\"true\">\n <img\n [src]=\"src\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n referrerpolicy=\"no-referrer\"\n draggable=\"false\"\n [hidden]=\"imageFailed\"\n (error)=\"onImageError()\"\n />\n </span>\n <span\n *ngIf=\"iconHtml\"\n class=\"aia-suggestion-icon\"\n aria-hidden=\"true\"\n [innerHTML]=\"iconHtml\"\n ></span>\n <span class=\"aia-suggestion-text\">{{ label }}</span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n <!-- Part of the row's accessible name, read after the option's text. -->\n <span *ngIf=\"countLabel !== null\" class=\"aia-suggestion-count\">{{ countLabel }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:hidden;overflow:clip;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}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item,.aia-suggestion-content{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2;animation:aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both,aiaSuggestionFadeIn .15s ease-out both;animation-delay:var(--aia-option-enter-delay, 0ms)}.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 .17s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity 60ms 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;animation:aiaSkeletonBarIn .1s ease-out}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}.aia-suggestion-icon{display:inline-flex;align-items:center;height:21px;margin-right:8px;vertical-align:top;will-change:transform}.aia-suggestion-icon svg{display:block;width:1em;height:1em}.aia-suggestion-item[data-aia-loading] .aia-suggestion-icon{visibility:hidden}.aia-suggestion-content:not(:has(.aia-suggestion-count)):has(.aia-suggestion-icon){padding-left:calc(1em + 8px);text-indent:calc(-1em - 8px)}.aia-suggestion-content:has(.aia-suggestion-image),.aia-suggestion-content:has(.aia-suggestion-count){display:flex;flex:1 1 auto;align-items:flex-start;min-width:0}.aia-suggestion-content:has(.aia-suggestion-image) .aia-suggestion-text,.aia-suggestion-content:has(.aia-suggestion-count) .aia-suggestion-text{flex:1 1 auto;min-width:0}.aia-suggestion-item[data-aia-loading] .aia-suggestion-content .aia-suggestion-text{flex:0 1 auto}.aia-suggestion-content:has(.aia-suggestion-image){align-items:center;gap:var(--aia-option-image-gap, 12px)}.aia-suggestion-image{flex:0 0 auto;display:block;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);border-radius:var(--aia-option-image-radius, 12px);overflow:hidden;background:var(--aia-option-image-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .083)))}.aia-suggestion-image img{display:block;width:100%;height:100%;object-fit:cover}.aia-suggestion-image img[hidden]{display:none}.aia-suggestion-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:var(--aia-option-count-font-size, 12px);font-weight:400;line-height:21px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--aia-option-count-color, inherit);opacity:var(--aia-option-count-opacity, .6)}.aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit, \"items\")}.aia-suggestion-item[data-aia-item-count=\"1\"] .aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit-one, var(--aia-option-count-unit, \"item\"))}.aia-suggestion-item[data-aia-loading] .aia-suggestion-image img{visibility:hidden}.aia-suggestion-item[data-aia-loading] .aia-suggestion-count{display:none}[data-aia-group]:has(.aia-suggestion-image){--aia-option-row-height: calc(var(--aia-option-image-size, 40px) + 16px)}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-content,[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-text{animation:none}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading]{animation:aiaSkeletonOut .1s ease-in forwards}@keyframes aiaSkeletonBarIn{0%{background-color:transparent;color:inherit}}@keyframes aiaSkeletonOut{to{opacity:0}}\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 });
135
+ 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", showIcon: "showIcon", showImage: "showImage", showCount: "showCount", 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.data-aia-icon]=\"iconHtml && option.icon ? option.icon : null\"\n [attr.data-aia-image]=\"imageSrc ? '' : null\"\n [attr.data-aia-item-count]=\"countLabel !== null ? option.item_count : 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 <!-- The tile keeps a placeholder fill under the picture, so a slow or\n failed load leaves a neutral square rather than a gap. The picture is\n decorative: the text is the option's accessible name. -->\n <span *ngIf=\"imageSrc as src\" class=\"aia-suggestion-image\" aria-hidden=\"true\">\n <img\n [src]=\"src\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n referrerpolicy=\"no-referrer\"\n draggable=\"false\"\n [hidden]=\"imageFailed\"\n (error)=\"onImageError()\"\n />\n </span>\n <span\n *ngIf=\"iconHtml\"\n class=\"aia-suggestion-icon\"\n aria-hidden=\"true\"\n [innerHTML]=\"iconHtml\"\n ></span>\n <span class=\"aia-suggestion-text\">{{ label }}</span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n <!-- Part of the row's accessible name, read after the option's text. -->\n <span *ngIf=\"countLabel !== null\" class=\"aia-suggestion-count\">{{ countLabel }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:hidden;overflow:clip;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}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item,.aia-suggestion-content{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2;animation:aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both,aiaSuggestionFadeIn .15s ease-out both;animation-delay:var(--aia-option-enter-delay, 0ms)}.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 .17s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity 60ms 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;animation:aiaSkeletonBarIn .1s ease-out}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}.aia-suggestion-icon{display:inline-flex;align-items:center;height:21px;margin-right:8px;vertical-align:top;will-change:transform}.aia-suggestion-icon svg{display:block;width:1em;height:1em}.aia-suggestion-item[data-aia-loading] .aia-suggestion-icon{visibility:hidden}.aia-suggestion-content:not(:has(.aia-suggestion-count)):has(.aia-suggestion-icon){padding-left:calc(1em + 8px);text-indent:calc(-1em - 8px)}.aia-suggestion-content:has(.aia-suggestion-image),.aia-suggestion-content:has(.aia-suggestion-count){display:flex;flex:1 1 auto;align-items:flex-start;min-width:0}.aia-suggestion-content:has(.aia-suggestion-image) .aia-suggestion-text,.aia-suggestion-content:has(.aia-suggestion-count) .aia-suggestion-text{flex:1 1 auto;min-width:0}.aia-suggestion-item[data-aia-loading] .aia-suggestion-content .aia-suggestion-text{flex:0 1 auto}.aia-suggestion-content:has(.aia-suggestion-image){align-items:center;gap:var(--aia-option-image-gap, 12px)}.aia-suggestion-image{flex:0 0 auto;display:block;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);border-radius:var(--aia-option-image-radius, 12px);overflow:hidden;background:var(--aia-option-image-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .083)))}.aia-suggestion-image img{display:block;width:100%;height:100%;object-fit:cover}.aia-suggestion-image img[hidden]{display:none}.aia-suggestion-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:var(--aia-option-count-font-size, 12px);font-weight:400;line-height:21px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--aia-option-count-color, inherit);opacity:var(--aia-option-count-opacity, .6)}.aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit, \"items\")}.aia-suggestion-item[data-aia-item-count=\"1\"] .aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit-one, var(--aia-option-count-unit, \"item\"))}.aia-suggestion-item[data-aia-loading] .aia-suggestion-image img{visibility:hidden}.aia-suggestion-item[data-aia-loading] .aia-suggestion-count{display:none}[data-aia-group]:has(.aia-suggestion-image){--aia-option-row-height: calc(var(--aia-option-image-size, 40px) + 16px)}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)){display:flex;flex:1 1 auto;align-items:center;gap:var(--aia-option-image-gap, 12px);min-width:0;min-height:var(--aia-option-image-size, 40px);padding-left:0;text-indent:0}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)) .aia-suggestion-icon{flex:0 0 auto;justify-content:center;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);margin-right:0}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)):not(:has(.aia-suggestion-icon)){padding-left:calc(var(--aia-option-image-size, 40px) + var(--aia-option-image-gap, 12px))}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-content,[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-text{animation:none}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading]{animation:aiaSkeletonOut .1s ease-in forwards}@keyframes aiaSkeletonBarIn{0%{background-color:transparent;color:inherit}}@keyframes aiaSkeletonOut{to{opacity:0}}\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 });
136
136
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: SuggestionItemComponent, decorators: [{
137
137
  type: Component,
138
- 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.data-aia-icon]=\"iconHtml && option.icon ? option.icon : null\"\n [attr.data-aia-image]=\"imageSrc ? '' : null\"\n [attr.data-aia-item-count]=\"countLabel !== null ? option.item_count : 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 <!-- The tile keeps a placeholder fill under the picture, so a slow or\n failed load leaves a neutral square rather than a gap. The picture is\n decorative: the text is the option's accessible name. -->\n <span *ngIf=\"imageSrc as src\" class=\"aia-suggestion-image\" aria-hidden=\"true\">\n <img\n [src]=\"src\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n referrerpolicy=\"no-referrer\"\n draggable=\"false\"\n [hidden]=\"imageFailed\"\n (error)=\"onImageError()\"\n />\n </span>\n <span\n *ngIf=\"iconHtml\"\n class=\"aia-suggestion-icon\"\n aria-hidden=\"true\"\n [innerHTML]=\"iconHtml\"\n ></span>\n <span class=\"aia-suggestion-text\">{{ label }}</span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n <!-- Part of the row's accessible name, read after the option's text. -->\n <span *ngIf=\"countLabel !== null\" class=\"aia-suggestion-count\">{{ countLabel }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:hidden;overflow:clip;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}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item,.aia-suggestion-content{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2;animation:aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both,aiaSuggestionFadeIn .15s ease-out both;animation-delay:var(--aia-option-enter-delay, 0ms)}.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 .17s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity 60ms 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;animation:aiaSkeletonBarIn .1s ease-out}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}.aia-suggestion-icon{display:inline-flex;align-items:center;height:21px;margin-right:8px;vertical-align:top;will-change:transform}.aia-suggestion-icon svg{display:block;width:1em;height:1em}.aia-suggestion-item[data-aia-loading] .aia-suggestion-icon{visibility:hidden}.aia-suggestion-content:not(:has(.aia-suggestion-count)):has(.aia-suggestion-icon){padding-left:calc(1em + 8px);text-indent:calc(-1em - 8px)}.aia-suggestion-content:has(.aia-suggestion-image),.aia-suggestion-content:has(.aia-suggestion-count){display:flex;flex:1 1 auto;align-items:flex-start;min-width:0}.aia-suggestion-content:has(.aia-suggestion-image) .aia-suggestion-text,.aia-suggestion-content:has(.aia-suggestion-count) .aia-suggestion-text{flex:1 1 auto;min-width:0}.aia-suggestion-item[data-aia-loading] .aia-suggestion-content .aia-suggestion-text{flex:0 1 auto}.aia-suggestion-content:has(.aia-suggestion-image){align-items:center;gap:var(--aia-option-image-gap, 12px)}.aia-suggestion-image{flex:0 0 auto;display:block;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);border-radius:var(--aia-option-image-radius, 12px);overflow:hidden;background:var(--aia-option-image-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .083)))}.aia-suggestion-image img{display:block;width:100%;height:100%;object-fit:cover}.aia-suggestion-image img[hidden]{display:none}.aia-suggestion-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:var(--aia-option-count-font-size, 12px);font-weight:400;line-height:21px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--aia-option-count-color, inherit);opacity:var(--aia-option-count-opacity, .6)}.aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit, \"items\")}.aia-suggestion-item[data-aia-item-count=\"1\"] .aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit-one, var(--aia-option-count-unit, \"item\"))}.aia-suggestion-item[data-aia-loading] .aia-suggestion-image img{visibility:hidden}.aia-suggestion-item[data-aia-loading] .aia-suggestion-count{display:none}[data-aia-group]:has(.aia-suggestion-image){--aia-option-row-height: calc(var(--aia-option-image-size, 40px) + 16px)}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-content,[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-text{animation:none}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading]{animation:aiaSkeletonOut .1s ease-in forwards}@keyframes aiaSkeletonBarIn{0%{background-color:transparent;color:inherit}}@keyframes aiaSkeletonOut{to{opacity:0}}\n"] }]
138
+ 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.data-aia-icon]=\"iconHtml && option.icon ? option.icon : null\"\n [attr.data-aia-image]=\"imageSrc ? '' : null\"\n [attr.data-aia-item-count]=\"countLabel !== null ? option.item_count : 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 <!-- The tile keeps a placeholder fill under the picture, so a slow or\n failed load leaves a neutral square rather than a gap. The picture is\n decorative: the text is the option's accessible name. -->\n <span *ngIf=\"imageSrc as src\" class=\"aia-suggestion-image\" aria-hidden=\"true\">\n <img\n [src]=\"src\"\n alt=\"\"\n loading=\"lazy\"\n decoding=\"async\"\n referrerpolicy=\"no-referrer\"\n draggable=\"false\"\n [hidden]=\"imageFailed\"\n (error)=\"onImageError()\"\n />\n </span>\n <span\n *ngIf=\"iconHtml\"\n class=\"aia-suggestion-icon\"\n aria-hidden=\"true\"\n [innerHTML]=\"iconHtml\"\n ></span>\n <span class=\"aia-suggestion-text\">{{ label }}</span>\n <span *ngIf=\"option.tag\" class=\"aia-suggestion-tag\">{{ option.tag }}</span>\n <!-- Part of the row's accessible name, read after the option's text. -->\n <span *ngIf=\"countLabel !== null\" class=\"aia-suggestion-count\">{{ countLabel }}</span>\n </span>\n</div>\n", styles: [".aia-suggestion-item{position:relative;overflow:hidden;overflow:clip;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}@keyframes aiaSuggestionFadeIn{0%{opacity:0}}@keyframes aiaSuggestionRiseIn{0%{transform:translateY(16px)}}@media (prefers-reduced-motion: reduce){.aia-suggestion-item,.aia-suggestion-content{animation-duration:0s;animation-delay:0s}}.aia-suggestion-content{position:relative;z-index:2;animation:aiaSuggestionRiseIn .28s cubic-bezier(.25,.46,.45,.94) both,aiaSuggestionFadeIn .15s ease-out both;animation-delay:var(--aia-option-enter-delay, 0ms)}.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 .17s ease forwards}[role=listbox]:has(.aia-suggestion-item-pressed) .aia-suggestion-item:not(.aia-suggestion-item-pressed){opacity:.35;transition:opacity 60ms 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;animation:aiaSkeletonBarIn .1s ease-out}.aia-suggestion-item[data-aia-loading] .aia-suggestion-tag{display:none}.aia-suggestion-icon{display:inline-flex;align-items:center;height:21px;margin-right:8px;vertical-align:top;will-change:transform}.aia-suggestion-icon svg{display:block;width:1em;height:1em}.aia-suggestion-item[data-aia-loading] .aia-suggestion-icon{visibility:hidden}.aia-suggestion-content:not(:has(.aia-suggestion-count)):has(.aia-suggestion-icon){padding-left:calc(1em + 8px);text-indent:calc(-1em - 8px)}.aia-suggestion-content:has(.aia-suggestion-image),.aia-suggestion-content:has(.aia-suggestion-count){display:flex;flex:1 1 auto;align-items:flex-start;min-width:0}.aia-suggestion-content:has(.aia-suggestion-image) .aia-suggestion-text,.aia-suggestion-content:has(.aia-suggestion-count) .aia-suggestion-text{flex:1 1 auto;min-width:0}.aia-suggestion-item[data-aia-loading] .aia-suggestion-content .aia-suggestion-text{flex:0 1 auto}.aia-suggestion-content:has(.aia-suggestion-image){align-items:center;gap:var(--aia-option-image-gap, 12px)}.aia-suggestion-image{flex:0 0 auto;display:block;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);border-radius:var(--aia-option-image-radius, 12px);overflow:hidden;background:var(--aia-option-image-bg, var(--aia-skeleton-bg, rgba(189, 189, 189, .083)))}.aia-suggestion-image img{display:block;width:100%;height:100%;object-fit:cover}.aia-suggestion-image img[hidden]{display:none}.aia-suggestion-count{flex:0 0 auto;margin-left:auto;padding-left:12px;font-size:var(--aia-option-count-font-size, 12px);font-weight:400;line-height:21px;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--aia-option-count-color, inherit);opacity:var(--aia-option-count-opacity, .6)}.aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit, \"items\")}.aia-suggestion-item[data-aia-item-count=\"1\"] .aia-suggestion-count:after{content:\" \" var(--aia-option-count-unit-one, var(--aia-option-count-unit, \"item\"))}.aia-suggestion-item[data-aia-loading] .aia-suggestion-image img{visibility:hidden}.aia-suggestion-item[data-aia-loading] .aia-suggestion-count{display:none}[data-aia-group]:has(.aia-suggestion-image){--aia-option-row-height: calc(var(--aia-option-image-size, 40px) + 16px)}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)){display:flex;flex:1 1 auto;align-items:center;gap:var(--aia-option-image-gap, 12px);min-width:0;min-height:var(--aia-option-image-size, 40px);padding-left:0;text-indent:0}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)) .aia-suggestion-icon{flex:0 0 auto;justify-content:center;width:var(--aia-option-image-size, 40px);height:var(--aia-option-image-size, 40px);margin-right:0}[data-aia-group]:has(.aia-suggestion-image) .aia-suggestion-content:not(:has(.aia-suggestion-image)):not(:has(.aia-suggestion-icon)){padding-left:calc(var(--aia-option-image-size, 40px) + var(--aia-option-image-gap, 12px))}@keyframes aiaSuggestionSkeletonPulse{0%,to{filter:brightness(1)}50%{filter:brightness(.55)}}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-content,[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading] .aia-suggestion-text{animation:none}[data-aia-skeleton-exiting] .aia-suggestion-item[data-aia-loading]{animation:aiaSkeletonOut .1s ease-in forwards}@keyframes aiaSkeletonBarIn{0%{background-color:transparent;color:inherit}}@keyframes aiaSkeletonOut{to{opacity:0}}\n"] }]
139
139
  }], propDecorators: { option: [{
140
140
  type: Input
141
141
  }], isHighlighted: [{
@@ -159,4 +159,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImpo
159
159
  }], highlight: [{
160
160
  type: Output
161
161
  }] } });
162
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvaW50ZXJuYWwvc3VnZ2VzdGlvbi1pdGVtL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3N1Z2dlc3Rpb24taXRlbS9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWlCLE1BQU0sMkJBQTJCLENBQUM7QUFDeEUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsV0FBVyxFQUVYLHFCQUFxQixHQUN0QixNQUFNLHFDQUFxQyxDQUFDOzs7QUFFN0M7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBVUgsTUFBTSxPQUFPLHVCQUF1QjtJQVRwQztRQVdXLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE9BQUUsR0FBRyxFQUFFLENBQUM7UUFDUixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLDhFQUE4RTtRQUNyRSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLG9IQUFvSDtRQUMzRyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDJGQUEyRjtRQUNsRixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDhGQUE4RjtRQUNyRixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBUzVCOzs7O1dBSUc7UUFDSCxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUVkLFdBQU0sR0FBRyxJQUFJLFlBQVks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QUFqQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTU8sWUFBWTtzQkFBeEIsS0FBSztnQkFVYSxNQUFNO3NCQUF4QixNQUFNO2dCQUNZLFNBQVM7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgaW5qZWN0LFxuICB0eXBlIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IERvbVNhbml0aXplciwgdHlwZSBTYWZlSHRtbCB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5pbXBvcnQge1xuICBmb3JtYXRPcHRpb25Db3VudCxcbiAgb3B0aW9uSW1hZ2VTcmMsXG4gIG9wdGlvbkxhYmVsLFxuICB0eXBlIFN1Z2dlc3Rpb25PcHRpb24sXG4gIHNhbml0aXplT3B0aW9uSWNvblN2Zyxcbn0gZnJvbSBcIkBtYWdpY3gtZW5nL2FpLWF1dG9jb21wbGV0ZS12YW5pbGxhXCI7XG5cbi8qKlxuICogSW50ZXJuYWwgc2luZ2xlLW9wdGlvbiBjZWxsIHVzZWQgaW5zaWRlIHRoZSBzdWdnZXN0aW9uIGdyaWQuIE1pcnJvcnNcbiAqIGBwYWNrYWdlcy9yZWFjdC9zcmMvY29tcG9uZW50cy9TdWdnZXN0aW9uSXRlbS50c3hgLiBIYW5kbGVzOlxuICpcbiAqIC0gVGFwcGFibGUgdnMgbm9uLXRhcHBhYmxlIGN1cnNvciArIGhvdmVyIHN0eWxpbmdcbiAqIC0gUHJlc3NlZC1zdGF0ZSBjb21wcmVzcyBhbmltYXRpb24gKDE3MG1zLCBzaW5nbGUtZmxpZ2h0KVxuICogLSBLZXlib2FyZCBhY3RpdmF0aW9uIChFbnRlci9TcGFjZSlcbiAqIC0gQVJJQSBgcm9sZT1cIm9wdGlvblwiYCArIGBhcmlhLXNlbGVjdGVkYCBmb3IgdGhlIGxpc3Rib3ggcGF0dGVyblxuICogLSBMb2FkaW5nIHNrZWxldG9uIHdoZW4gYGxvYWRpbmc9dHJ1ZWBcbiAqIC0gU2VydmVyLXByb3ZpZGVkIGljb24gKGBpY29uX3N2Z2ApLCBhbGxvd2xpc3RlZCB0aHJvdWdoIHRoZSBjb3JlJ3NcbiAqICAgYHNhbml0aXplT3B0aW9uSWNvblN2Z2AgYmVmb3JlIGl0IGlzIGJvdW5kIGFzIEhUTUxcbiAqIC0gU2VydmVyLXByb3ZpZGVkIHBpY3R1cmUgKGBpbWFnZV91cmxgKSBhcyBhIHNxdWFyZSB0aHVtYm5haWwgaW4gcGxhY2Ugb2ZcbiAqICAgdGhlIGljb24sIGFuZCBpdGVtIGNvdW50IChgaXRlbV9jb3VudGApIGF0IHRoZSByb3cncyB0cmFpbGluZyBlZGdlXG4gKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhaWEtc3VnZ2VzdGlvbi1pdGVtXCIsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgdGVtcGxhdGVVcmw6IFwiLi9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQuY3NzXCJdLFxufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIG9wdGlvbiE6IFN1Z2dlc3Rpb25PcHRpb247XG4gIEBJbnB1dCgpIGlzSGlnaGxpZ2h0ZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaWQgPSBcIlwiO1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRvIGRyYXcgdGhlIG9wdGlvbidzIGBpY29uX3N2Z2AgYmVmb3JlIGl0cyB0ZXh0LiBEZWZhdWx0OiB0cnVlLiAqL1xuICBASW5wdXQoKSBzaG93SWNvbiA9IHRydWU7XG4gIC8qKiBXaGV0aGVyIHRvIGRyYXcgdGhlIG9wdGlvbidzIGBpbWFnZV91cmxgIGFzIGEgdGh1bWJuYWlsIGJlZm9yZSBpdHMgdGV4dCwgaW4gcGxhY2Ugb2YgdGhlIGljb24uIERlZmF1bHQ6IHRydWUuICovXG4gIEBJbnB1dCgpIHNob3dJbWFnZSA9IHRydWU7XG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgdGhlIG9wdGlvbidzIGBpdGVtX2NvdW50YCBhdCB0aGUgcm93J3MgdHJhaWxpbmcgZWRnZS4gRGVmYXVsdDogdHJ1ZS4gKi9cbiAgQElucHV0KCkgc2hvd0NvdW50ID0gdHJ1ZTtcbiAgLyoqIEZhZGUgdGhpcyBvcHRpb24ncyB0ZXh0IHRvd2FyZCBpdHMgYm90dG9tIGVkZ2UgKGxhc3QgdmlzaWJsZSByb3cgb2YgYSBzY3JvbGxhYmxlIGdyaWQpLiAqL1xuICBASW5wdXQoKSBzY3JvbGxIaW50ID0gZmFsc2U7XG4gIC8qKlxuICAgKiBTdGFydCBkZWxheSBvZiB0aGlzIHJvdydzIGVudHJhbmNlIGFuaW1hdGlvbiAobXMpIOKAlCBlYWNoIHJvdyByaXNlcyBpbiBhXG4gICAqIGJlYXQgYWZ0ZXIgdGhlIG9uZSBuZWFyZXIgdGhlIGlucHV0LiBDYXB0dXJlZCBvbmNlLCBvbiBmaXJzdCByZW5kZXIsIHNvIGFcbiAgICogbGF0ZXIgY2hhbmdlLWRldGVjdGlvbiBwYXNzIGNhbid0IHJlc3RhcnQgYSByb3cgbWlkLXJpc2UuXG4gICAqL1xuICBASW5wdXQoKSBzZXQgZW50ZXJEZWxheU1zKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5lbnRlckRlbGF5ID09PSBudWxsKSB0aGlzLmVudGVyRGVsYXkgPSB2YWx1ZTtcbiAgfVxuICAvKipcbiAgICogVGhlIGNhcHR1cmVkIGRlbGF5OyBgbnVsbGAgdW50aWwgdGhlIGZpcnN0IGBlbnRlckRlbGF5TXNgIGJpbmRpbmcgbGFuZHMuXG4gICAqIFRoZSB0ZW1wbGF0ZSBiaW5kcyBpdCB0byBgLS1haWEtb3B0aW9uLWVudGVyLWRlbGF5YCAodGhlIGNvcmUnc1xuICAgKiBPUFRJT05fRU5URVJfREVMQVlfVkFSKSwgd2hpY2ggdGhlIHN0eWxlc2hlZXQncyBlbnRyYW5jZSBydWxlIHJlYWRzLlxuICAgKi9cbiAgZW50ZXJEZWxheTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8U3VnZ2VzdGlvbk9wdGlvbj4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGhpZ2hsaWdodCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcmVzc2VkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwcml2YXRlIHByZXNzZWRUaW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgaWNvblNvdXJjZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIGljb25TYWZlOiBTYWZlSHRtbCB8IG51bGwgPSBudWxsO1xuICAvKiogVGhlIGBzcmNgIHdob3NlIGxvYWQgZmFpbGVkLCBzbyB0aGUgdGlsZSBrZWVwcyBpdHMgcGxhY2Vob2xkZXIgZmlsbCBmb3IgaXQuICovXG4gIHByaXZhdGUgZmFpbGVkU3JjOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKiogVGhlIG9wdGlvbidzIHRleHQuIGBpY29uYCBpcyB0aGUgaWNvbidzIG5hbWUgYW5kIGlzIG5ldmVyIHNob3duIGFzIHRleHQuICovXG4gIGdldCBsYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBvcHRpb25MYWJlbCh0aGlzLm9wdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHBpY3R1cmUncyBgc3JjYCwgb3IgYG51bGxgIHdoZW4gdGhlIHJvdyBkcmF3cyBub25lOiBpbWFnZXMgb2ZmLCBub1xuICAgKiBgaW1hZ2VfdXJsYCwgb3Igb25lIHRoYXQgaXMgbm90IGFuIGh0dHAocykgVVJMLiBBIHBpY3R1cmUgc3RhbmRzIGluIGZvclxuICAgKiB0aGUgaWNvbiDigJQgYSByb3cgbmV2ZXIgbGVhZHMgd2l0aCB0d28gdmlzdWFscy5cbiAgICovXG4gIGdldCBpbWFnZVNyYygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zaG93SW1hZ2UgPyBvcHRpb25JbWFnZVNyYyh0aGlzLm9wdGlvbi5pbWFnZV91cmwpIDogbnVsbDtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSBjdXJyZW50IHBpY3R1cmUgZmFpbGVkIHRvIGxvYWQgKHRoZSB0aWxlJ3MgZmlsbCBzdGF5cykuICovXG4gIGdldCBpbWFnZUZhaWxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mYWlsZWRTcmMgIT09IG51bGwgJiYgdGhpcy5mYWlsZWRTcmMgPT09IHRoaXMuaW1hZ2VTcmM7XG4gIH1cblxuICBvbkltYWdlRXJyb3IoKTogdm9pZCB7XG4gICAgdGhpcy5mYWlsZWRTcmMgPSB0aGlzLmltYWdlU3JjO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjb3VudCBhcyBwcmludGVkIChcIjEsMjg0XCIpLCBvciBgbnVsbGAgd2hlbiB0aGUgcm93IHNob3dzIG5vbmUuIFRoZVxuICAgKiB1bml0IHdvcmQgYWZ0ZXIgaXQgaXMgdGhlIHN0eWxlc2hlZXQncyAoYC0tYWlhLW9wdGlvbi1jb3VudC11bml0YCkuXG4gICAqL1xuICBnZXQgY291bnRMYWJlbCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zaG93Q291bnQgPyBmb3JtYXRPcHRpb25Db3VudCh0aGlzLm9wdGlvbi5pdGVtX2NvdW50KSA6IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG9wdGlvbidzIGljb24gYXMgYmluZGFibGUgSFRNTCwgb3IgYG51bGxgIHdoZW4gaXQgaGFzIG5vbmUgKG9yIGl0c1xuICAgKiBtYXJrdXAgZmFpbGVkIHRoZSBhbGxvd2xpc3QpLiBBbmd1bGFyJ3Mgb3duIEhUTUwgc2FuaXRpemVyIHN0cmlwcyBgPHN2Zz5gXG4gICAqIHdob2xlc2FsZSwgc28gdGhlIGNvcmUncyBhbGxvd2xpc3RlZCBvdXRwdXQgaXMgbWFya2VkIHRydXN0ZWQgaW5zdGVhZCDigJRcbiAgICogaXQgaXMgbmV2ZXIgdGhlIHNlcnZlcidzIHJhdyBzdHJpbmcuIFJlY29tcHV0ZWQgb25seSB3aGVuIHRoZSBtYXJrdXBcbiAgICogY2hhbmdlczsgdGhlIGdldHRlciBydW5zIG9uIGV2ZXJ5IE9uUHVzaCBjaGVjay5cbiAgICovXG4gIGdldCBpY29uSHRtbCgpOiBTYWZlSHRtbCB8IG51bGwge1xuICAgIGNvbnN0IHN2ZyA9IHRoaXMuc2hvd0ljb24gJiYgIXRoaXMuaW1hZ2VTcmMgPyB0aGlzLm9wdGlvbi5pY29uX3N2ZyA6IHVuZGVmaW5lZDtcbiAgICBpZiAoc3ZnICE9PSB0aGlzLmljb25Tb3VyY2UpIHtcbiAgICAgIHRoaXMuaWNvblNvdXJjZSA9IHN2ZztcbiAgICAgIGNvbnN0IGh0bWwgPSBzdmcgPyBzYW5pdGl6ZU9wdGlvbkljb25Tdmcoc3ZnKSA6IG51bGw7XG4gICAgICB0aGlzLmljb25TYWZlID0gaHRtbCA/IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGh0bWwpIDogbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaWNvblNhZmU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcmVzc2VkVGltZXIgIT09IHVuZGVmaW5lZCkgY2xlYXJUaW1lb3V0KHRoaXMucHJlc3NlZFRpbWVyKTtcbiAgfVxuXG4gIG9uU2VsZWN0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgIXRoaXMub3B0aW9uLmlzX3RhcHBhYmxlIHx8IHRoaXMucHJlc3NlZCkgcmV0dXJuO1xuICAgIHRoaXMucHJlc3NlZCA9IHRydWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5zZWxlY3QuZW1pdCh0aGlzLm9wdGlvbik7XG4gICAgaWYgKHRoaXMucHJlc3NlZFRpbWVyICE9PSB1bmRlZmluZWQpIGNsZWFyVGltZW91dCh0aGlzLnByZXNzZWRUaW1lcik7XG4gICAgdGhpcy5wcmVzc2VkVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucHJlc3NlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgMTcwKTtcbiAgfVxuXG4gIG9uTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2FkaW5nIHx8ICF0aGlzLm9wdGlvbi5pc190YXBwYWJsZSkgcmV0dXJuO1xuICAgIHRoaXMuaGlnaGxpZ2h0LmVtaXQoKTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgIXRoaXMub3B0aW9uLmlzX3RhcHBhYmxlKSByZXR1cm47XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gXCJFbnRlclwiIHx8IGV2ZW50LmtleSA9PT0gXCIgXCIpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLm9uU2VsZWN0KCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIFtpZF09XCJpZFwiXG4gIHJvbGU9XCJvcHRpb25cIlxuICBkYXRhLWFpYS1vcHRpb249XCJcIlxuICBbYXR0ci5kYXRhLWFpYS1sb2FkaW5nXT1cImxvYWRpbmcgPyAnJyA6IG51bGxcIlxuICBbYXR0ci5kYXRhLWFpYS1pY29uXT1cImljb25IdG1sICYmIG9wdGlvbi5pY29uID8gb3B0aW9uLmljb24gOiBudWxsXCJcbiAgW2F0dHIuZGF0YS1haWEtaW1hZ2VdPVwiaW1hZ2VTcmMgPyAnJyA6IG51bGxcIlxuICBbYXR0ci5kYXRhLWFpYS1pdGVtLWNvdW50XT1cImNvdW50TGFiZWwgIT09IG51bGwgPyBvcHRpb24uaXRlbV9jb3VudCA6IG51bGxcIlxuICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImlzSGlnaGxpZ2h0ZWRcIlxuICBjbGFzcz1cImFpYS1zdWdnZXN0aW9uLWl0ZW1cIlxuICBbc3R5bGUuLS1haWEtb3B0aW9uLWVudGVyLWRlbGF5XT1cIihlbnRlckRlbGF5ID8/IDApICsgJ21zJ1wiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLWhpZ2hsaWdodGVkXT1cImlzSGlnaGxpZ2h0ZWQgJiYgIWxvYWRpbmdcIlxuICBbY2xhc3MuYWlhLXN1Z2dlc3Rpb24taXRlbS10YXBwYWJsZV09XCJvcHRpb24uaXNfdGFwcGFibGVcIlxuICBbY2xhc3MuYWlhLXN1Z2dlc3Rpb24taXRlbS1ub24tdGFwcGFibGVdPVwiIW9wdGlvbi5pc190YXBwYWJsZVwiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLXByZXNzZWRdPVwicHJlc3NlZFwiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLXNjcm9sbC1oaW50XT1cInNjcm9sbEhpbnRcIlxuICBbYXR0ci50YWJpbmRleF09XCJsb2FkaW5nIHx8ICFvcHRpb24uaXNfdGFwcGFibGUgPyAtMSA6IDBcIlxuICAoY2xpY2spPVwib25TZWxlY3QoKVwiXG4gIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKClcIlxuPlxuICA8c3BhbiBjbGFzcz1cImFpYS1zdWdnZXN0aW9uLWNvbnRlbnRcIj5cbiAgICA8IS0tIFRoZSB0aWxlIGtlZXBzIGEgcGxhY2Vob2xkZXIgZmlsbCB1bmRlciB0aGUgcGljdHVyZSwgc28gYSBzbG93IG9yXG4gICAgICAgICBmYWlsZWQgbG9hZCBsZWF2ZXMgYSBuZXV0cmFsIHNxdWFyZSByYXRoZXIgdGhhbiBhIGdhcC4gVGhlIHBpY3R1cmUgaXNcbiAgICAgICAgIGRlY29yYXRpdmU6IHRoZSB0ZXh0IGlzIHRoZSBvcHRpb24ncyBhY2Nlc3NpYmxlIG5hbWUuIC0tPlxuICAgIDxzcGFuICpuZ0lmPVwiaW1hZ2VTcmMgYXMgc3JjXCIgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1pbWFnZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgPGltZ1xuICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgIGFsdD1cIlwiXG4gICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgIHJlZmVycmVycG9saWN5PVwibm8tcmVmZXJyZXJcIlxuICAgICAgICBkcmFnZ2FibGU9XCJmYWxzZVwiXG4gICAgICAgIFtoaWRkZW5dPVwiaW1hZ2VGYWlsZWRcIlxuICAgICAgICAoZXJyb3IpPVwib25JbWFnZUVycm9yKClcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiaWNvbkh0bWxcIlxuICAgICAgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1pY29uXCJcbiAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICBbaW5uZXJIVE1MXT1cImljb25IdG1sXCJcbiAgICA+PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGV4dFwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDxzcGFuICpuZ0lmPVwib3B0aW9uLnRhZ1wiIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGFnXCI+e3sgb3B0aW9uLnRhZyB9fTwvc3Bhbj5cbiAgICA8IS0tIFBhcnQgb2YgdGhlIHJvdydzIGFjY2Vzc2libGUgbmFtZSwgcmVhZCBhZnRlciB0aGUgb3B0aW9uJ3MgdGV4dC4gLS0+XG4gICAgPHNwYW4gKm5nSWY9XCJjb3VudExhYmVsICE9PSBudWxsXCIgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1jb3VudFwiPnt7IGNvdW50TGFiZWwgfX08L3NwYW4+XG4gIDwvc3Bhbj5cbjwvZGl2PlxuIl19
162
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VnZ2VzdGlvbi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvaW50ZXJuYWwvc3VnZ2VzdGlvbi1pdGVtL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2ludGVybmFsL3N1Z2dlc3Rpb24taXRlbS9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsaUJBQWlCLEVBQ2pCLFNBQVMsRUFDVCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFFTixNQUFNLEVBQ04saUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQWlCLE1BQU0sMkJBQTJCLENBQUM7QUFDeEUsT0FBTyxFQUNMLGlCQUFpQixFQUNqQixjQUFjLEVBQ2QsV0FBVyxFQUVYLHFCQUFxQixHQUN0QixNQUFNLHFDQUFxQyxDQUFDOzs7QUFFN0M7Ozs7Ozs7Ozs7Ozs7OztHQWVHO0FBVUgsTUFBTSxPQUFPLHVCQUF1QjtJQVRwQztRQVdXLGtCQUFhLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLE9BQUUsR0FBRyxFQUFFLENBQUM7UUFDUixZQUFPLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLDhFQUE4RTtRQUNyRSxhQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3pCLG9IQUFvSDtRQUMzRyxjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDJGQUEyRjtRQUNsRixjQUFTLEdBQUcsSUFBSSxDQUFDO1FBQzFCLDhGQUE4RjtRQUNyRixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBUzVCOzs7O1dBSUc7UUFDSCxlQUFVLEdBQWtCLElBQUksQ0FBQztRQUVkLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBb0IsQ0FBQztRQUM5QyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUV4RCxZQUFPLEdBQUcsS0FBSyxDQUFDO1FBRUMsUUFBRyxHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hDLGNBQVMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFHMUMsYUFBUSxHQUFvQixJQUFJLENBQUM7UUFDekMsa0ZBQWtGO1FBQzFFLGNBQVMsR0FBa0IsSUFBSSxDQUFDO0tBK0V6QztJQXpHQzs7OztPQUlHO0lBQ0gsSUFBYSxZQUFZLENBQUMsS0FBYTtRQUNyQyxJQUFJLElBQUksQ0FBQyxVQUFVLEtBQUssSUFBSTtZQUFFLElBQUksQ0FBQyxVQUFVLEdBQUcsS0FBSyxDQUFDO0lBQ3hELENBQUM7SUFxQkQsK0VBQStFO0lBQy9FLElBQUksS0FBSztRQUNQLE9BQU8sV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUN2RSxDQUFDO0lBRUQsMEVBQTBFO0lBQzFFLElBQUksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO1FBQy9CLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVEOzs7T0FHRztJQUNILElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQzNFLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUFJLFFBQVE7UUFDVixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztRQUMvRSxJQUFJLEdBQUcsS0FBSyxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQzNCLElBQUksQ0FBQyxVQUFVLEdBQUcsR0FBRyxDQUFDO1lBQ3RCLE1BQU0sSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztZQUNyRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1NBQzVFO1FBQ0QsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFNBQVM7WUFBRSxZQUFZLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLElBQUksSUFBSSxDQUFDLE9BQU87WUFBRSxPQUFPO1FBQ3JFLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxTQUFTO1lBQUUsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUNyRSxJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUMxQixDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztZQUFFLE9BQU87UUFDckQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsU0FBUyxDQUFDLEtBQW9CO1FBQzVCLElBQUksSUFBSSxDQUFDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVztZQUFFLE9BQU87UUFDckQsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLE9BQU8sSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLEdBQUcsRUFBRTtZQUM5QyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDdkIsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQzs7cUhBckhVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLGdXQzlDcEMsaWdFQWlEQSxrbkxEVFksWUFBWTs0RkFNWCx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFDLFlBQVksQ0FBQyxtQkFDTix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJOzhCQUs1QixNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFDRyxFQUFFO3NCQUFWLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBRUcsU0FBUztzQkFBakIsS0FBSztnQkFFRyxTQUFTO3NCQUFqQixLQUFLO2dCQUVHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBTU8sWUFBWTtzQkFBeEIsS0FBSztnQkFVYSxNQUFNO3NCQUF4QixNQUFNO2dCQUNZLFNBQVM7c0JBQTNCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIENvbXBvbmVudCxcbiAgRXZlbnRFbWl0dGVyLFxuICBJbnB1dCxcbiAgaW5qZWN0LFxuICB0eXBlIE9uRGVzdHJveSxcbiAgT3V0cHV0LFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IERvbVNhbml0aXplciwgdHlwZSBTYWZlSHRtbCB9IGZyb20gXCJAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyXCI7XG5pbXBvcnQge1xuICBmb3JtYXRPcHRpb25Db3VudCxcbiAgb3B0aW9uSW1hZ2VTcmMsXG4gIG9wdGlvbkxhYmVsLFxuICB0eXBlIFN1Z2dlc3Rpb25PcHRpb24sXG4gIHNhbml0aXplT3B0aW9uSWNvblN2Zyxcbn0gZnJvbSBcIkBtYWdpY3gtZW5nL2FpLWF1dG9jb21wbGV0ZS12YW5pbGxhXCI7XG5cbi8qKlxuICogSW50ZXJuYWwgc2luZ2xlLW9wdGlvbiBjZWxsIHVzZWQgaW5zaWRlIHRoZSBzdWdnZXN0aW9uIGdyaWQuIE1pcnJvcnNcbiAqIGBwYWNrYWdlcy9yZWFjdC9zcmMvY29tcG9uZW50cy9TdWdnZXN0aW9uSXRlbS50c3hgLiBIYW5kbGVzOlxuICpcbiAqIC0gVGFwcGFibGUgdnMgbm9uLXRhcHBhYmxlIGN1cnNvciArIGhvdmVyIHN0eWxpbmdcbiAqIC0gUHJlc3NlZC1zdGF0ZSBjb21wcmVzcyBhbmltYXRpb24gKDE3MG1zLCBzaW5nbGUtZmxpZ2h0KVxuICogLSBLZXlib2FyZCBhY3RpdmF0aW9uIChFbnRlci9TcGFjZSlcbiAqIC0gQVJJQSBgcm9sZT1cIm9wdGlvblwiYCArIGBhcmlhLXNlbGVjdGVkYCBmb3IgdGhlIGxpc3Rib3ggcGF0dGVyblxuICogLSBMb2FkaW5nIHNrZWxldG9uIHdoZW4gYGxvYWRpbmc9dHJ1ZWBcbiAqIC0gU2VydmVyLXByb3ZpZGVkIGljb24gKGBpY29uX3N2Z2ApLCBhbGxvd2xpc3RlZCB0aHJvdWdoIHRoZSBjb3JlJ3NcbiAqICAgYHNhbml0aXplT3B0aW9uSWNvblN2Z2AgYmVmb3JlIGl0IGlzIGJvdW5kIGFzIEhUTUxcbiAqIC0gU2VydmVyLXByb3ZpZGVkIHBpY3R1cmUgKGBpbWFnZV91cmxgKSBhcyBhIHNxdWFyZSB0aHVtYm5haWwgaW4gcGxhY2Ugb2ZcbiAqICAgdGhlIGljb24sIGFuZCBpdGVtIGNvdW50IChgaXRlbV9jb3VudGApIGF0IHRoZSByb3cncyB0cmFpbGluZyBlZGdlXG4gKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhaWEtc3VnZ2VzdGlvbi1pdGVtXCIsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgdGVtcGxhdGVVcmw6IFwiLi9zdWdnZXN0aW9uLWl0ZW0uY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVVcmxzOiBbXCIuL3N1Z2dlc3Rpb24taXRlbS5jb21wb25lbnQuY3NzXCJdLFxufSlcbmV4cG9ydCBjbGFzcyBTdWdnZXN0aW9uSXRlbUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIG9wdGlvbiE6IFN1Z2dlc3Rpb25PcHRpb247XG4gIEBJbnB1dCgpIGlzSGlnaGxpZ2h0ZWQgPSBmYWxzZTtcbiAgQElucHV0KCkgaWQgPSBcIlwiO1xuICBASW5wdXQoKSBsb2FkaW5nID0gZmFsc2U7XG4gIC8qKiBXaGV0aGVyIHRvIGRyYXcgdGhlIG9wdGlvbidzIGBpY29uX3N2Z2AgYmVmb3JlIGl0cyB0ZXh0LiBEZWZhdWx0OiB0cnVlLiAqL1xuICBASW5wdXQoKSBzaG93SWNvbiA9IHRydWU7XG4gIC8qKiBXaGV0aGVyIHRvIGRyYXcgdGhlIG9wdGlvbidzIGBpbWFnZV91cmxgIGFzIGEgdGh1bWJuYWlsIGJlZm9yZSBpdHMgdGV4dCwgaW4gcGxhY2Ugb2YgdGhlIGljb24uIERlZmF1bHQ6IHRydWUuICovXG4gIEBJbnB1dCgpIHNob3dJbWFnZSA9IHRydWU7XG4gIC8qKiBXaGV0aGVyIHRvIHNob3cgdGhlIG9wdGlvbidzIGBpdGVtX2NvdW50YCBhdCB0aGUgcm93J3MgdHJhaWxpbmcgZWRnZS4gRGVmYXVsdDogdHJ1ZS4gKi9cbiAgQElucHV0KCkgc2hvd0NvdW50ID0gdHJ1ZTtcbiAgLyoqIEZhZGUgdGhpcyBvcHRpb24ncyB0ZXh0IHRvd2FyZCBpdHMgYm90dG9tIGVkZ2UgKGxhc3QgdmlzaWJsZSByb3cgb2YgYSBzY3JvbGxhYmxlIGdyaWQpLiAqL1xuICBASW5wdXQoKSBzY3JvbGxIaW50ID0gZmFsc2U7XG4gIC8qKlxuICAgKiBTdGFydCBkZWxheSBvZiB0aGlzIHJvdydzIGVudHJhbmNlIGFuaW1hdGlvbiAobXMpIOKAlCBlYWNoIHJvdyByaXNlcyBpbiBhXG4gICAqIGJlYXQgYWZ0ZXIgdGhlIG9uZSBuZWFyZXIgdGhlIGlucHV0LiBDYXB0dXJlZCBvbmNlLCBvbiBmaXJzdCByZW5kZXIsIHNvIGFcbiAgICogbGF0ZXIgY2hhbmdlLWRldGVjdGlvbiBwYXNzIGNhbid0IHJlc3RhcnQgYSByb3cgbWlkLXJpc2UuXG4gICAqL1xuICBASW5wdXQoKSBzZXQgZW50ZXJEZWxheU1zKHZhbHVlOiBudW1iZXIpIHtcbiAgICBpZiAodGhpcy5lbnRlckRlbGF5ID09PSBudWxsKSB0aGlzLmVudGVyRGVsYXkgPSB2YWx1ZTtcbiAgfVxuICAvKipcbiAgICogVGhlIGNhcHR1cmVkIGRlbGF5OyBgbnVsbGAgdW50aWwgdGhlIGZpcnN0IGBlbnRlckRlbGF5TXNgIGJpbmRpbmcgbGFuZHMuXG4gICAqIFRoZSB0ZW1wbGF0ZSBiaW5kcyBpdCB0byBgLS1haWEtb3B0aW9uLWVudGVyLWRlbGF5YCAodGhlIGNvcmUnc1xuICAgKiBPUFRJT05fRU5URVJfREVMQVlfVkFSKSwgd2hpY2ggdGhlIHN0eWxlc2hlZXQncyBlbnRyYW5jZSBydWxlIHJlYWRzLlxuICAgKi9cbiAgZW50ZXJEZWxheTogbnVtYmVyIHwgbnVsbCA9IG51bGw7XG5cbiAgQE91dHB1dCgpIHJlYWRvbmx5IHNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8U3VnZ2VzdGlvbk9wdGlvbj4oKTtcbiAgQE91dHB1dCgpIHJlYWRvbmx5IGhpZ2hsaWdodCA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcblxuICBwcmVzc2VkID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IHNhbml0aXplciA9IGluamVjdChEb21TYW5pdGl6ZXIpO1xuICBwcml2YXRlIHByZXNzZWRUaW1lcjogUmV0dXJuVHlwZTx0eXBlb2Ygc2V0VGltZW91dD4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgaWNvblNvdXJjZTogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICBwcml2YXRlIGljb25TYWZlOiBTYWZlSHRtbCB8IG51bGwgPSBudWxsO1xuICAvKiogVGhlIGBzcmNgIHdob3NlIGxvYWQgZmFpbGVkLCBzbyB0aGUgdGlsZSBrZWVwcyBpdHMgcGxhY2Vob2xkZXIgZmlsbCBmb3IgaXQuICovXG4gIHByaXZhdGUgZmFpbGVkU3JjOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcblxuICAvKiogVGhlIG9wdGlvbidzIHRleHQuIGBpY29uYCBpcyB0aGUgaWNvbidzIG5hbWUgYW5kIGlzIG5ldmVyIHNob3duIGFzIHRleHQuICovXG4gIGdldCBsYWJlbCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBvcHRpb25MYWJlbCh0aGlzLm9wdGlvbik7XG4gIH1cblxuICAvKipcbiAgICogVGhlIHBpY3R1cmUncyBgc3JjYCwgb3IgYG51bGxgIHdoZW4gdGhlIHJvdyBkcmF3cyBub25lOiBpbWFnZXMgb2ZmLCBub1xuICAgKiBgaW1hZ2VfdXJsYCwgb3Igb25lIHRoYXQgaXMgbm90IGFuIGh0dHAocykgVVJMLiBBIHBpY3R1cmUgc3RhbmRzIGluIGZvclxuICAgKiB0aGUgaWNvbiDigJQgYSByb3cgbmV2ZXIgbGVhZHMgd2l0aCB0d28gdmlzdWFscy5cbiAgICovXG4gIGdldCBpbWFnZVNyYygpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zaG93SW1hZ2UgPyBvcHRpb25JbWFnZVNyYyh0aGlzLm9wdGlvbi5pbWFnZV91cmwpIDogbnVsbDtcbiAgfVxuXG4gIC8qKiBXaGV0aGVyIHRoZSBjdXJyZW50IHBpY3R1cmUgZmFpbGVkIHRvIGxvYWQgKHRoZSB0aWxlJ3MgZmlsbCBzdGF5cykuICovXG4gIGdldCBpbWFnZUZhaWxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5mYWlsZWRTcmMgIT09IG51bGwgJiYgdGhpcy5mYWlsZWRTcmMgPT09IHRoaXMuaW1hZ2VTcmM7XG4gIH1cblxuICBvbkltYWdlRXJyb3IoKTogdm9pZCB7XG4gICAgdGhpcy5mYWlsZWRTcmMgPSB0aGlzLmltYWdlU3JjO1xuICAgIHRoaXMuY2RyLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBjb3VudCBhcyBwcmludGVkIChcIjEsMjg0XCIpLCBvciBgbnVsbGAgd2hlbiB0aGUgcm93IHNob3dzIG5vbmUuIFRoZVxuICAgKiB1bml0IHdvcmQgYWZ0ZXIgaXQgaXMgdGhlIHN0eWxlc2hlZXQncyAoYC0tYWlhLW9wdGlvbi1jb3VudC11bml0YCkuXG4gICAqL1xuICBnZXQgY291bnRMYWJlbCgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5zaG93Q291bnQgPyBmb3JtYXRPcHRpb25Db3VudCh0aGlzLm9wdGlvbi5pdGVtX2NvdW50KSA6IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogVGhlIG9wdGlvbidzIGljb24gYXMgYmluZGFibGUgSFRNTCwgb3IgYG51bGxgIHdoZW4gaXQgaGFzIG5vbmUgKG9yIGl0c1xuICAgKiBtYXJrdXAgZmFpbGVkIHRoZSBhbGxvd2xpc3QpLiBBbmd1bGFyJ3Mgb3duIEhUTUwgc2FuaXRpemVyIHN0cmlwcyBgPHN2Zz5gXG4gICAqIHdob2xlc2FsZSwgc28gdGhlIGNvcmUncyBhbGxvd2xpc3RlZCBvdXRwdXQgaXMgbWFya2VkIHRydXN0ZWQgaW5zdGVhZCDigJRcbiAgICogaXQgaXMgbmV2ZXIgdGhlIHNlcnZlcidzIHJhdyBzdHJpbmcuIFJlY29tcHV0ZWQgb25seSB3aGVuIHRoZSBtYXJrdXBcbiAgICogY2hhbmdlczsgdGhlIGdldHRlciBydW5zIG9uIGV2ZXJ5IE9uUHVzaCBjaGVjay5cbiAgICovXG4gIGdldCBpY29uSHRtbCgpOiBTYWZlSHRtbCB8IG51bGwge1xuICAgIGNvbnN0IHN2ZyA9IHRoaXMuc2hvd0ljb24gJiYgIXRoaXMuaW1hZ2VTcmMgPyB0aGlzLm9wdGlvbi5pY29uX3N2ZyA6IHVuZGVmaW5lZDtcbiAgICBpZiAoc3ZnICE9PSB0aGlzLmljb25Tb3VyY2UpIHtcbiAgICAgIHRoaXMuaWNvblNvdXJjZSA9IHN2ZztcbiAgICAgIGNvbnN0IGh0bWwgPSBzdmcgPyBzYW5pdGl6ZU9wdGlvbkljb25Tdmcoc3ZnKSA6IG51bGw7XG4gICAgICB0aGlzLmljb25TYWZlID0gaHRtbCA/IHRoaXMuc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RIdG1sKGh0bWwpIDogbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuaWNvblNhZmU7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5wcmVzc2VkVGltZXIgIT09IHVuZGVmaW5lZCkgY2xlYXJUaW1lb3V0KHRoaXMucHJlc3NlZFRpbWVyKTtcbiAgfVxuXG4gIG9uU2VsZWN0KCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgIXRoaXMub3B0aW9uLmlzX3RhcHBhYmxlIHx8IHRoaXMucHJlc3NlZCkgcmV0dXJuO1xuICAgIHRoaXMucHJlc3NlZCA9IHRydWU7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgdGhpcy5zZWxlY3QuZW1pdCh0aGlzLm9wdGlvbik7XG4gICAgaWYgKHRoaXMucHJlc3NlZFRpbWVyICE9PSB1bmRlZmluZWQpIGNsZWFyVGltZW91dCh0aGlzLnByZXNzZWRUaW1lcik7XG4gICAgdGhpcy5wcmVzc2VkVGltZXIgPSBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgIHRoaXMucHJlc3NlZCA9IGZhbHNlO1xuICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgfSwgMTcwKTtcbiAgfVxuXG4gIG9uTW91c2VFbnRlcigpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5sb2FkaW5nIHx8ICF0aGlzLm9wdGlvbi5pc190YXBwYWJsZSkgcmV0dXJuO1xuICAgIHRoaXMuaGlnaGxpZ2h0LmVtaXQoKTtcbiAgfVxuXG4gIG9uS2V5RG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmxvYWRpbmcgfHwgIXRoaXMub3B0aW9uLmlzX3RhcHBhYmxlKSByZXR1cm47XG4gICAgaWYgKGV2ZW50LmtleSA9PT0gXCJFbnRlclwiIHx8IGV2ZW50LmtleSA9PT0gXCIgXCIpIHtcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICB0aGlzLm9uU2VsZWN0KCk7XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2XG4gIFtpZF09XCJpZFwiXG4gIHJvbGU9XCJvcHRpb25cIlxuICBkYXRhLWFpYS1vcHRpb249XCJcIlxuICBbYXR0ci5kYXRhLWFpYS1sb2FkaW5nXT1cImxvYWRpbmcgPyAnJyA6IG51bGxcIlxuICBbYXR0ci5kYXRhLWFpYS1pY29uXT1cImljb25IdG1sICYmIG9wdGlvbi5pY29uID8gb3B0aW9uLmljb24gOiBudWxsXCJcbiAgW2F0dHIuZGF0YS1haWEtaW1hZ2VdPVwiaW1hZ2VTcmMgPyAnJyA6IG51bGxcIlxuICBbYXR0ci5kYXRhLWFpYS1pdGVtLWNvdW50XT1cImNvdW50TGFiZWwgIT09IG51bGwgPyBvcHRpb24uaXRlbV9jb3VudCA6IG51bGxcIlxuICBbYXR0ci5hcmlhLXNlbGVjdGVkXT1cImlzSGlnaGxpZ2h0ZWRcIlxuICBjbGFzcz1cImFpYS1zdWdnZXN0aW9uLWl0ZW1cIlxuICBbc3R5bGUuLS1haWEtb3B0aW9uLWVudGVyLWRlbGF5XT1cIihlbnRlckRlbGF5ID8/IDApICsgJ21zJ1wiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLWhpZ2hsaWdodGVkXT1cImlzSGlnaGxpZ2h0ZWQgJiYgIWxvYWRpbmdcIlxuICBbY2xhc3MuYWlhLXN1Z2dlc3Rpb24taXRlbS10YXBwYWJsZV09XCJvcHRpb24uaXNfdGFwcGFibGVcIlxuICBbY2xhc3MuYWlhLXN1Z2dlc3Rpb24taXRlbS1ub24tdGFwcGFibGVdPVwiIW9wdGlvbi5pc190YXBwYWJsZVwiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLXByZXNzZWRdPVwicHJlc3NlZFwiXG4gIFtjbGFzcy5haWEtc3VnZ2VzdGlvbi1pdGVtLXNjcm9sbC1oaW50XT1cInNjcm9sbEhpbnRcIlxuICBbYXR0ci50YWJpbmRleF09XCJsb2FkaW5nIHx8ICFvcHRpb24uaXNfdGFwcGFibGUgPyAtMSA6IDBcIlxuICAoY2xpY2spPVwib25TZWxlY3QoKVwiXG4gIChrZXlkb3duKT1cIm9uS2V5RG93bigkZXZlbnQpXCJcbiAgKG1vdXNlZW50ZXIpPVwib25Nb3VzZUVudGVyKClcIlxuPlxuICA8c3BhbiBjbGFzcz1cImFpYS1zdWdnZXN0aW9uLWNvbnRlbnRcIj5cbiAgICA8IS0tIFRoZSB0aWxlIGtlZXBzIGEgcGxhY2Vob2xkZXIgZmlsbCB1bmRlciB0aGUgcGljdHVyZSwgc28gYSBzbG93IG9yXG4gICAgICAgICBmYWlsZWQgbG9hZCBsZWF2ZXMgYSBuZXV0cmFsIHNxdWFyZSByYXRoZXIgdGhhbiBhIGdhcC4gVGhlIHBpY3R1cmUgaXNcbiAgICAgICAgIGRlY29yYXRpdmU6IHRoZSB0ZXh0IGlzIHRoZSBvcHRpb24ncyBhY2Nlc3NpYmxlIG5hbWUuIC0tPlxuICAgIDxzcGFuICpuZ0lmPVwiaW1hZ2VTcmMgYXMgc3JjXCIgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1pbWFnZVwiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPlxuICAgICAgPGltZ1xuICAgICAgICBbc3JjXT1cInNyY1wiXG4gICAgICAgIGFsdD1cIlwiXG4gICAgICAgIGxvYWRpbmc9XCJsYXp5XCJcbiAgICAgICAgZGVjb2Rpbmc9XCJhc3luY1wiXG4gICAgICAgIHJlZmVycmVycG9saWN5PVwibm8tcmVmZXJyZXJcIlxuICAgICAgICBkcmFnZ2FibGU9XCJmYWxzZVwiXG4gICAgICAgIFtoaWRkZW5dPVwiaW1hZ2VGYWlsZWRcIlxuICAgICAgICAoZXJyb3IpPVwib25JbWFnZUVycm9yKClcIlxuICAgICAgLz5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW5cbiAgICAgICpuZ0lmPVwiaWNvbkh0bWxcIlxuICAgICAgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1pY29uXCJcbiAgICAgIGFyaWEtaGlkZGVuPVwidHJ1ZVwiXG4gICAgICBbaW5uZXJIVE1MXT1cImljb25IdG1sXCJcbiAgICA+PC9zcGFuPlxuICAgIDxzcGFuIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGV4dFwiPnt7IGxhYmVsIH19PC9zcGFuPlxuICAgIDxzcGFuICpuZ0lmPVwib3B0aW9uLnRhZ1wiIGNsYXNzPVwiYWlhLXN1Z2dlc3Rpb24tdGFnXCI+e3sgb3B0aW9uLnRhZyB9fTwvc3Bhbj5cbiAgICA8IS0tIFBhcnQgb2YgdGhlIHJvdydzIGFjY2Vzc2libGUgbmFtZSwgcmVhZCBhZnRlciB0aGUgb3B0aW9uJ3MgdGV4dC4gLS0+XG4gICAgPHNwYW4gKm5nSWY9XCJjb3VudExhYmVsICE9PSBudWxsXCIgY2xhc3M9XCJhaWEtc3VnZ2VzdGlvbi1jb3VudFwiPnt7IGNvdW50TGFiZWwgfX08L3NwYW4+XG4gIDwvc3Bhbj5cbjwvZGl2PlxuIl19
@@ -61,4 +61,4 @@ export { AIAutocompleteDropdownComponent } from "./lib/ai-autocomplete-dropdown"
61
61
  export { AIAutocompleteController } from "./lib/controller";
62
62
  // === Tier 2: Input binder + ControlValueAccessor ===
63
63
  export { AIAutocompleteInputDirective } from "./lib/input";
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBa0NILDZFQUE2RTtBQUM3RSxPQUFPLEVBQ0wsaUJBQWlCLElBQUksa0JBQWtCLEVBQ3ZDLE9BQU8sSUFBSSxRQUFRLEVBQ25CLE9BQU8sSUFBSSxRQUFRLEVBQ25CLG1CQUFtQixJQUFJLG9CQUFvQixFQUMzQyxxQkFBcUIsSUFBSSxzQkFBc0IsRUFDL0MseUJBQXlCLElBQUksMEJBQTBCLEVBQ3ZELGFBQWEsSUFBSSxjQUFjLEVBQy9CLFVBQVUsSUFBSSxXQUFXLEVBQ3pCLGVBQWUsSUFBSSxnQkFBZ0IsRUFDbkMsaUJBQWlCLElBQUksa0JBQWtCLEVBQ3ZDLE9BQU8sSUFBSSxRQUFRLEVBQ25CLFVBQVUsSUFBSSxXQUFXLEVBQ3pCLGdCQUFnQixJQUFJLGlCQUFpQixFQUNyQyxjQUFjLElBQUksZUFBZSxFQUNqQyxjQUFjLElBQUksZUFBZSxFQUNqQyxXQUFXLElBQUksWUFBWSxFQUMzQixtQkFBbUIsSUFBSSxvQkFBb0IsRUFDM0MsU0FBUyxJQUFJLFVBQVUsRUFDdkIsY0FBYyxJQUFJLGVBQWUsRUFDakMsbUJBQW1CLElBQUksb0JBQW9CLEVBQzNDLHNCQUFzQixJQUFJLHVCQUF1QixFQUNqRCx3QkFBd0IsSUFBSSx5QkFBeUIsRUFDckQscUJBQXFCLElBQUksc0JBQXNCLEVBQy9DLGdCQUFnQixJQUFJLGlCQUFpQixFQUNyQyxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFDckMsY0FBYyxJQUFJLGVBQWUsRUFDakMsaUJBQWlCLElBQUksa0JBQWtCLEdBQ3hDLE1BQU0scUNBQXFDLENBQUM7QUFFN0M7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztBQUNwRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztBQUNwRCx3RUFBd0U7QUFDeEUseUNBQXlDO0FBQ3pDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUM7QUFDaEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUM7QUFDaEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQztBQUN0QyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQztBQUM5Qyx3RUFBd0U7QUFDeEUsOEVBQThFO0FBQzlFLDREQUE0RDtBQUM1RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxvQkFBb0IsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUM1RCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQztBQUNoRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxvQkFBb0IsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQztBQUNsRCxvRUFBb0U7QUFDcEUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUM1RCwyRUFBMkU7QUFDM0UsMkJBQTJCO0FBQzNCLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLDBCQUEwQixDQUFDO0FBQ3BFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLGtCQUFrQixDQUFDO0FBQ3BELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLGlCQUFpQixDQUFDO0FBQ2xELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQztBQUM5QyxzRUFBc0U7QUFDdEUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsb0JBQW9CLENBQUM7QUFDeEQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsdUJBQXVCLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcseUJBQXlCLENBQUM7QUFDbEUsaUNBQWlDO0FBQ2pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxxQ0FBcUM7QUFDckMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakYsb0RBQW9EO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVELHNEQUFzRDtBQUN0RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFB1YmxpYyBBUEkgc3VyZmFjZSBmb3IgQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLWFuZ3VsYXIuXG4gKlxuICogUG9wdWxhdGVkIGluY3JlbWVudGFsbHkgYXMgZmVhdHVyZXMgbGFuZC4gT25seSBzeW1ib2xzIHJlLWV4cG9ydGVkIGhlcmVcbiAqIGFyZSBjb25zaWRlcmVkIHBhcnQgb2YgdGhlIHBhY2thZ2UncyBwdWJsaWMgY29udHJhY3QuXG4gKi9cblxuLy8gPT09IFJlLWV4cG9ydGVkIHdpcmUgdHlwZXMgPT09XG5leHBvcnQgdHlwZSB7XG4gIEFjY2Vzc1Rva2VuQ29uZmlnLFxuICBBY2Nlc3NUb2tlblJlc3VsdCxcbiAgQVBJQ29uZmlnLFxuICBBUElLZXlDb25maWcsXG4gIEFwcGVhcmFuY2VNb2RlLFxuICBBdXRvY29tcGxldGVSZXN1bHQsXG4gIENvbXBsZXRlZFBhcmFtLFxuICBDb21wbGV0ZWRQYXJhbVN0YXRlLFxuICBDdXN0b21GaWVsZHNSZXBvcnQsXG4gIERhdGVNb250aFZpZXcsXG4gIERhdGVSYW5nZSxcbiAgRXhwcmVzc2VkRmlsdGVyLFxuICBGaWx0ZXJPcCxcbiAgRm9ybWF0VHlwZSxcbiAgSWRlbnRpZmllZFBhcmFtLFxuICBJZGVudGlmaWVkUGFyYW1TdGF0ZSxcbiAgTWF0Y2hlZEl0ZW0sXG4gIE1hdGNoZWRJdGVtcyxcbiAgT3B0aW9uT3ZlcnJpZGVzLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0c0NvbmZpZyxcbiAgUHJvZHVjdHNMYXlvdXQsXG4gIFNlZ21lbnQsXG4gIFNraXBwZWRQYXJhbVN0YXRlLFxuICBTdWJtaXRSZXN1bHRFeHRyYXMsXG4gIFN1Z2dlc3Rpb24sXG4gIFN1Z2dlc3Rpb25PcHRpb24sXG4gIFRhc2tLaW5kLFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcblxuLy8gPT09IFN1Ym1pdC1yZXN1bHQgYnVpbGRlciAoZm9sZHMgc2tpcHBlZCBwYXJhbXMgaW50byBjb21wbGV0ZWRfcGFyYW1zKSA9PT1cbmltcG9ydCB7XG4gIGJ1aWxkU3VibWl0UmVzdWx0IGFzIF9idWlsZFN1Ym1pdFJlc3VsdCxcbiAgY2VsbERheSBhcyBfY2VsbERheSxcbiAgY2VsbElzbyBhcyBfY2VsbElzbyxcbiAgREFURV9SQU5HRV9NRVRBX0VORCBhcyBfREFURV9SQU5HRV9NRVRBX0VORCxcbiAgREFURV9SQU5HRV9NRVRBX1NUQVJUIGFzIF9EQVRFX1JBTkdFX01FVEFfU1RBUlQsXG4gIERFRkFVTFRfT1BUSU9OX0NPVU5UX1VOSVQgYXMgX0RFRkFVTFRfT1BUSU9OX0NPVU5UX1VOSVQsXG4gIGRhdGVDZWxsTWFya3MgYXMgX2RhdGVDZWxsTWFya3MsXG4gIGZvcm1hdERhdGUgYXMgX2Zvcm1hdERhdGUsXG4gIGZvcm1hdERhdGVSYW5nZSBhcyBfZm9ybWF0RGF0ZVJhbmdlLFxuICBmb3JtYXRPcHRpb25Db3VudCBhcyBfZm9ybWF0T3B0aW9uQ291bnQsXG4gIGlzb0RhdGUgYXMgX2lzb0RhdGUsXG4gIG1vbnRoTGFiZWwgYXMgX21vbnRoTGFiZWwsXG4gIG9wdGlvbkNvdW50TGFiZWwgYXMgX29wdGlvbkNvdW50TGFiZWwsXG4gIG9wdGlvbkhhc0ltYWdlIGFzIF9vcHRpb25IYXNJbWFnZSxcbiAgb3B0aW9uSW1hZ2VTcmMgYXMgX29wdGlvbkltYWdlU3JjLFxuICBvcHRpb25MYWJlbCBhcyBfb3B0aW9uTGFiZWwsXG4gIFBST0RVQ1RfUEFUSF9QUkVGSVggYXMgX1BST0RVQ1RfUEFUSF9QUkVGSVgsXG4gIHBhcnNlRGF0ZSBhcyBfcGFyc2VEYXRlLFxuICBwYXJzZUxvb3NlRGF0ZSBhcyBfcGFyc2VMb29zZURhdGUsXG4gIHBhcnNlTG9vc2VEYXRlUmFuZ2UgYXMgX3BhcnNlTG9vc2VEYXRlUmFuZ2UsXG4gIHByb2R1Y3RGcm9tTWF0Y2hlZEl0ZW0gYXMgX3Byb2R1Y3RGcm9tTWF0Y2hlZEl0ZW0sXG4gIHByb2R1Y3RzRnJvbUN1c3RvbUZpZWxkcyBhcyBfcHJvZHVjdHNGcm9tQ3VzdG9tRmllbGRzLFxuICBzYW5pdGl6ZU9wdGlvbkljb25TdmcgYXMgX3Nhbml0aXplT3B0aW9uSWNvblN2ZyxcbiAgc2VsZWN0ZWRSYW5nZUZvciBhcyBfc2VsZWN0ZWRSYW5nZUZvcixcbiAgdmlzaWJsZURhdGVSYW5nZSBhcyBfdmlzaWJsZURhdGVSYW5nZSxcbiAgV0VFS0RBWV9MQUJFTFMgYXMgX1dFRUtEQVlfTEFCRUxTLFxuICB3aXRoU2tpcHBlZFBhcmFtcyBhcyBfd2l0aFNraXBwZWRQYXJhbXMsXG59IGZyb20gXCJAbWFnaWN4LWVuZy9haS1hdXRvY29tcGxldGUtdmFuaWxsYVwiO1xuXG4vKipcbiAqIFJlLWV4cG9ydGVkIHRocm91Z2ggbG9jYWwgYmluZGluZ3MgcmF0aGVyIHRoYW4gYGV4cG9ydCAuLi4gZnJvbWAuXG4gKlxuICogbmctcGFja2FncidzIGZsYXQgYnVuZGxlcyBkcm9wIGEgYmFyZSBgZXhwb3J0IHsgeCB9IGZyb20gXCI8ZXh0ZXJuYWw+XCJgOiB0aGVcbiAqIG5hbWUgc3Vydml2ZXMgaW4gdGhlIGdlbmVyYXRlZCBgLmQudHNgLCBzbyBjb25zdW1lciBjb2RlIHR5cGVjaGVja3MsIGJ1dCB0aGVcbiAqIHN5bWJvbCBpcyBhYnNlbnQgZnJvbSBgZmVzbTIwMjBgIOKAlCB0aGUgZW50cnkgcG9pbnQgdGhlIGBleHBvcnRzYCBtYXAgcmVzb2x2ZXNcbiAqIGJ5IGRlZmF1bHQg4oCUIGFuZCBpcyBgdW5kZWZpbmVkYCBhdCBydW50aW1lLiBCaW5kaW5nIHRvIGEgbG9jYWwgY29uc3QgZm9yY2VzXG4gKiBpdCBpbnRvIHRoZSBidW5kbGUuXG4gKi9cbmV4cG9ydCBjb25zdCBidWlsZFN1Ym1pdFJlc3VsdCA9IF9idWlsZFN1Ym1pdFJlc3VsdDtcbmV4cG9ydCBjb25zdCB3aXRoU2tpcHBlZFBhcmFtcyA9IF93aXRoU2tpcHBlZFBhcmFtcztcbi8vIERhdGUgaGVscGVycywgZm9yIHR1cm5pbmcgYSBjb21taXR0ZWQgZGF0ZSBiYWNrIGludG8gYSBgRGF0ZWAgYW5kIGZvclxuLy8gcmVuZGVyaW5nIGEgY3VzdG9tIGNhbGVuZGFyIGluIFRpZXIgMy5cbmV4cG9ydCBjb25zdCBjZWxsRGF5ID0gX2NlbGxEYXk7XG5leHBvcnQgY29uc3QgY2VsbElzbyA9IF9jZWxsSXNvO1xuZXhwb3J0IGNvbnN0IGZvcm1hdERhdGUgPSBfZm9ybWF0RGF0ZTtcbmV4cG9ydCBjb25zdCBpc29EYXRlID0gX2lzb0RhdGU7XG5leHBvcnQgY29uc3QgbW9udGhMYWJlbCA9IF9tb250aExhYmVsO1xuZXhwb3J0IGNvbnN0IHBhcnNlRGF0ZSA9IF9wYXJzZURhdGU7XG5leHBvcnQgY29uc3QgcGFyc2VMb29zZURhdGUgPSBfcGFyc2VMb29zZURhdGU7XG5leHBvcnQgY29uc3QgV0VFS0RBWV9MQUJFTFMgPSBfV0VFS0RBWV9MQUJFTFM7XG4vLyBSYW5nZSBoZWxwZXJzLCBmb3IgYSBjdXN0b20gY2FsZW5kYXIgdGhhdCBhbnN3ZXJzIGEgc3BhbiBpbiB0d28gdGFwcy5cbi8vIFRoZSB0d28gbWV0YWRhdGEga2V5cyBhcmUgd2hhdCBhIGNvbW1pdHRlZCByYW5nZSByZWNvcmRzIGl0cyBlbmRzIHVuZGVyLCBzb1xuLy8gYSBjb25zdW1lciByZWFkaW5nIHRoZW0gYmFjayBuZXZlciBoYXJkY29kZXMgdGhlIHN0cmluZ3MuXG5leHBvcnQgY29uc3QgREFURV9SQU5HRV9NRVRBX0VORCA9IF9EQVRFX1JBTkdFX01FVEFfRU5EO1xuZXhwb3J0IGNvbnN0IERBVEVfUkFOR0VfTUVUQV9TVEFSVCA9IF9EQVRFX1JBTkdFX01FVEFfU1RBUlQ7XG5leHBvcnQgY29uc3QgZGF0ZUNlbGxNYXJrcyA9IF9kYXRlQ2VsbE1hcmtzO1xuZXhwb3J0IGNvbnN0IGZvcm1hdERhdGVSYW5nZSA9IF9mb3JtYXREYXRlUmFuZ2U7XG5leHBvcnQgY29uc3QgcGFyc2VMb29zZURhdGVSYW5nZSA9IF9wYXJzZUxvb3NlRGF0ZVJhbmdlO1xuZXhwb3J0IGNvbnN0IHNlbGVjdGVkUmFuZ2VGb3IgPSBfc2VsZWN0ZWRSYW5nZUZvcjtcbmV4cG9ydCBjb25zdCB2aXNpYmxlRGF0ZVJhbmdlID0gX3Zpc2libGVEYXRlUmFuZ2U7XG4vLyBPcHRpb24gaWNvbnMsIGZvciBhIGN1c3RvbSBkcm9wZG93biB0aGF0IGRyYXdzIGBpY29uX3N2Z2AgaXRzZWxmLlxuZXhwb3J0IGNvbnN0IG9wdGlvbkxhYmVsID0gX29wdGlvbkxhYmVsO1xuZXhwb3J0IGNvbnN0IHNhbml0aXplT3B0aW9uSWNvblN2ZyA9IF9zYW5pdGl6ZU9wdGlvbkljb25Tdmc7XG4vLyBPcHRpb24gcGljdHVyZXMgYW5kIGNvdW50cywgZm9yIGEgY3VzdG9tIGRyb3Bkb3duIHRoYXQgZHJhd3MgYGltYWdlX3VybGBcbi8vIGFuZCBgaXRlbV9jb3VudGAgaXRzZWxmLlxuZXhwb3J0IGNvbnN0IERFRkFVTFRfT1BUSU9OX0NPVU5UX1VOSVQgPSBfREVGQVVMVF9PUFRJT05fQ09VTlRfVU5JVDtcbmV4cG9ydCBjb25zdCBmb3JtYXRPcHRpb25Db3VudCA9IF9mb3JtYXRPcHRpb25Db3VudDtcbmV4cG9ydCBjb25zdCBvcHRpb25Db3VudExhYmVsID0gX29wdGlvbkNvdW50TGFiZWw7XG5leHBvcnQgY29uc3Qgb3B0aW9uSGFzSW1hZ2UgPSBfb3B0aW9uSGFzSW1hZ2U7XG5leHBvcnQgY29uc3Qgb3B0aW9uSW1hZ2VTcmMgPSBfb3B0aW9uSW1hZ2VTcmM7XG4vLyBQcm9kdWN0IHN0cmlwIGhlbHBlcnMsIGZvciBhIGN1c3RvbSBzdHJpcCBmZWQgZnJvbSBgY3VzdG9tRmllbGRzJGAuXG5leHBvcnQgY29uc3QgUFJPRFVDVF9QQVRIX1BSRUZJWCA9IF9QUk9EVUNUX1BBVEhfUFJFRklYO1xuZXhwb3J0IGNvbnN0IHByb2R1Y3RGcm9tTWF0Y2hlZEl0ZW0gPSBfcHJvZHVjdEZyb21NYXRjaGVkSXRlbTtcbmV4cG9ydCBjb25zdCBwcm9kdWN0c0Zyb21DdXN0b21GaWVsZHMgPSBfcHJvZHVjdHNGcm9tQ3VzdG9tRmllbGRzO1xuLy8gPT09IFRpZXIgMTogRnVsbCBjb21wb25lbnQgPT09XG5leHBvcnQgeyBBSUF1dG9jb21wbGV0ZUNvbXBvbmVudCB9IGZyb20gXCIuL2xpYi9haS1hdXRvY29tcGxldGVcIjtcbi8vID09PSBDb252ZW5pZW5jZSBOZ01vZHVsZSA9PT1cbmV4cG9ydCB7IEFJQXV0b2NvbXBsZXRlTW9kdWxlIH0gZnJvbSBcIi4vbGliL2FpLWF1dG9jb21wbGV0ZS5tb2R1bGVcIjtcbi8vID09PSBUaWVyIDI6IERyb3Bkb3duIGNvbXBvbmVudCA9PT1cbmV4cG9ydCB7IEFJQXV0b2NvbXBsZXRlRHJvcGRvd25Db21wb25lbnQgfSBmcm9tIFwiLi9saWIvYWktYXV0b2NvbXBsZXRlLWRyb3Bkb3duXCI7XG4vLyA9PT0gVGllciAyOiBDb250cm9sbGVyIChoZWFkbGVzcyBsb2dpYyBjbGFzcykgPT09XG5leHBvcnQgeyBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXIgfSBmcm9tIFwiLi9saWIvY29udHJvbGxlclwiO1xuLy8gPT09IFRpZXIgMjogSW5wdXQgYmluZGVyICsgQ29udHJvbFZhbHVlQWNjZXNzb3IgPT09XG5leHBvcnQgeyBBSUF1dG9jb21wbGV0ZUlucHV0RGlyZWN0aXZlIH0gZnJvbSBcIi4vbGliL2lucHV0XCI7XG4vLyA9PT0gQW5ndWxhci1zcGVjaWZpYyBwdWJsaWMgdHlwZXMgPT09XG5leHBvcnQgdHlwZSB7XG4gIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlck9wdGlvbnMsXG4gIEFJQXV0b2NvbXBsZXRlQ29udHJvbGxlclN0YXRlLFxuICBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJVcGRhdGUsXG4gIEFJQXV0b2NvbXBsZXRlRHJvcGRvd25TdGF0ZSxcbn0gZnJvbSBcIi4vbGliL3NoYXJlZC90eXBlc1wiO1xuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7OztHQUtHO0FBbUNILDZFQUE2RTtBQUM3RSxPQUFPLEVBQ0wsaUJBQWlCLElBQUksa0JBQWtCLEVBQ3ZDLE9BQU8sSUFBSSxRQUFRLEVBQ25CLE9BQU8sSUFBSSxRQUFRLEVBQ25CLG1CQUFtQixJQUFJLG9CQUFvQixFQUMzQyxxQkFBcUIsSUFBSSxzQkFBc0IsRUFDL0MseUJBQXlCLElBQUksMEJBQTBCLEVBQ3ZELGFBQWEsSUFBSSxjQUFjLEVBQy9CLFVBQVUsSUFBSSxXQUFXLEVBQ3pCLGVBQWUsSUFBSSxnQkFBZ0IsRUFDbkMsaUJBQWlCLElBQUksa0JBQWtCLEVBQ3ZDLE9BQU8sSUFBSSxRQUFRLEVBQ25CLFVBQVUsSUFBSSxXQUFXLEVBQ3pCLGdCQUFnQixJQUFJLGlCQUFpQixFQUNyQyxjQUFjLElBQUksZUFBZSxFQUNqQyxjQUFjLElBQUksZUFBZSxFQUNqQyxXQUFXLElBQUksWUFBWSxFQUMzQixtQkFBbUIsSUFBSSxvQkFBb0IsRUFDM0MsU0FBUyxJQUFJLFVBQVUsRUFDdkIsY0FBYyxJQUFJLGVBQWUsRUFDakMsbUJBQW1CLElBQUksb0JBQW9CLEVBQzNDLHNCQUFzQixJQUFJLHVCQUF1QixFQUNqRCx3QkFBd0IsSUFBSSx5QkFBeUIsRUFDckQscUJBQXFCLElBQUksc0JBQXNCLEVBQy9DLGdCQUFnQixJQUFJLGlCQUFpQixFQUNyQyxnQkFBZ0IsSUFBSSxpQkFBaUIsRUFDckMsY0FBYyxJQUFJLGVBQWUsRUFDakMsaUJBQWlCLElBQUksa0JBQWtCLEdBQ3hDLE1BQU0scUNBQXFDLENBQUM7QUFFN0M7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztBQUNwRCxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxrQkFBa0IsQ0FBQztBQUNwRCx3RUFBd0U7QUFDeEUseUNBQXlDO0FBQ3pDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUM7QUFDaEMsTUFBTSxDQUFDLE1BQU0sT0FBTyxHQUFHLFFBQVEsQ0FBQztBQUNoQyxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsV0FBVyxDQUFDO0FBQ3RDLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUM7QUFDaEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLFdBQVcsQ0FBQztBQUN0QyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDO0FBQ3BDLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQztBQUM5Qyx3RUFBd0U7QUFDeEUsOEVBQThFO0FBQzlFLDREQUE0RDtBQUM1RCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxvQkFBb0IsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUM1RCxNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsY0FBYyxDQUFDO0FBQzVDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxnQkFBZ0IsQ0FBQztBQUNoRCxNQUFNLENBQUMsTUFBTSxtQkFBbUIsR0FBRyxvQkFBb0IsQ0FBQztBQUN4RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQztBQUNsRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxpQkFBaUIsQ0FBQztBQUNsRCxvRUFBb0U7QUFDcEUsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQztBQUN4QyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxzQkFBc0IsQ0FBQztBQUM1RCwyRUFBMkU7QUFDM0UsMkJBQTJCO0FBQzNCLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLDBCQUEwQixDQUFDO0FBQ3BFLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLGtCQUFrQixDQUFDO0FBQ3BELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLGlCQUFpQixDQUFDO0FBQ2xELE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxlQUFlLENBQUM7QUFDOUMsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLGVBQWUsQ0FBQztBQUM5QyxzRUFBc0U7QUFDdEUsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsb0JBQW9CLENBQUM7QUFDeEQsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsdUJBQXVCLENBQUM7QUFDOUQsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcseUJBQXlCLENBQUM7QUFDbEUsaUNBQWlDO0FBQ2pDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ2hFLCtCQUErQjtBQUMvQixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRSxxQ0FBcUM7QUFDckMsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDakYsb0RBQW9EO0FBQ3BELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQzVELHNEQUFzRDtBQUN0RCxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxhQUFhLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFB1YmxpYyBBUEkgc3VyZmFjZSBmb3IgQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLWFuZ3VsYXIuXG4gKlxuICogUG9wdWxhdGVkIGluY3JlbWVudGFsbHkgYXMgZmVhdHVyZXMgbGFuZC4gT25seSBzeW1ib2xzIHJlLWV4cG9ydGVkIGhlcmVcbiAqIGFyZSBjb25zaWRlcmVkIHBhcnQgb2YgdGhlIHBhY2thZ2UncyBwdWJsaWMgY29udHJhY3QuXG4gKi9cblxuLy8gPT09IFJlLWV4cG9ydGVkIHdpcmUgdHlwZXMgPT09XG5leHBvcnQgdHlwZSB7XG4gIEFjY2Vzc1Rva2VuQ29uZmlnLFxuICBBY2Nlc3NUb2tlblJlc3VsdCxcbiAgQVBJQ29uZmlnLFxuICBBUElLZXlDb25maWcsXG4gIEFwcGVhcmFuY2VNb2RlLFxuICBBdXRvY29tcGxldGVSZXN1bHQsXG4gIENvbXBsZXRlZFBhcmFtLFxuICBDb21wbGV0ZWRQYXJhbVN0YXRlLFxuICBDdXN0b21GaWVsZHNSZXBvcnQsXG4gIERhdGVNb250aFZpZXcsXG4gIERhdGVSYW5nZSxcbiAgRXhwcmVzc2VkRmlsdGVyLFxuICBGaWx0ZXJPcCxcbiAgRm9ybWF0VHlwZSxcbiAgSWRlbnRpZmllZFBhcmFtLFxuICBJZGVudGlmaWVkUGFyYW1TdGF0ZSxcbiAgTWF0Y2hlZEl0ZW0sXG4gIE1hdGNoZWRJdGVtcyxcbiAgT3B0aW9uT3ZlcnJpZGVzLFxuICBQcm9kdWN0LFxuICBQcm9kdWN0SW1hZ2VGYWxsYmFjayxcbiAgUHJvZHVjdHNDb25maWcsXG4gIFByb2R1Y3RzTGF5b3V0LFxuICBTZWdtZW50LFxuICBTa2lwcGVkUGFyYW1TdGF0ZSxcbiAgU3VibWl0UmVzdWx0RXh0cmFzLFxuICBTdWdnZXN0aW9uLFxuICBTdWdnZXN0aW9uT3B0aW9uLFxuICBUYXNrS2luZCxcbn0gZnJvbSBcIkBtYWdpY3gtZW5nL2FpLWF1dG9jb21wbGV0ZS12YW5pbGxhXCI7XG5cbi8vID09PSBTdWJtaXQtcmVzdWx0IGJ1aWxkZXIgKGZvbGRzIHNraXBwZWQgcGFyYW1zIGludG8gY29tcGxldGVkX3BhcmFtcykgPT09XG5pbXBvcnQge1xuICBidWlsZFN1Ym1pdFJlc3VsdCBhcyBfYnVpbGRTdWJtaXRSZXN1bHQsXG4gIGNlbGxEYXkgYXMgX2NlbGxEYXksXG4gIGNlbGxJc28gYXMgX2NlbGxJc28sXG4gIERBVEVfUkFOR0VfTUVUQV9FTkQgYXMgX0RBVEVfUkFOR0VfTUVUQV9FTkQsXG4gIERBVEVfUkFOR0VfTUVUQV9TVEFSVCBhcyBfREFURV9SQU5HRV9NRVRBX1NUQVJULFxuICBERUZBVUxUX09QVElPTl9DT1VOVF9VTklUIGFzIF9ERUZBVUxUX09QVElPTl9DT1VOVF9VTklULFxuICBkYXRlQ2VsbE1hcmtzIGFzIF9kYXRlQ2VsbE1hcmtzLFxuICBmb3JtYXREYXRlIGFzIF9mb3JtYXREYXRlLFxuICBmb3JtYXREYXRlUmFuZ2UgYXMgX2Zvcm1hdERhdGVSYW5nZSxcbiAgZm9ybWF0T3B0aW9uQ291bnQgYXMgX2Zvcm1hdE9wdGlvbkNvdW50LFxuICBpc29EYXRlIGFzIF9pc29EYXRlLFxuICBtb250aExhYmVsIGFzIF9tb250aExhYmVsLFxuICBvcHRpb25Db3VudExhYmVsIGFzIF9vcHRpb25Db3VudExhYmVsLFxuICBvcHRpb25IYXNJbWFnZSBhcyBfb3B0aW9uSGFzSW1hZ2UsXG4gIG9wdGlvbkltYWdlU3JjIGFzIF9vcHRpb25JbWFnZVNyYyxcbiAgb3B0aW9uTGFiZWwgYXMgX29wdGlvbkxhYmVsLFxuICBQUk9EVUNUX1BBVEhfUFJFRklYIGFzIF9QUk9EVUNUX1BBVEhfUFJFRklYLFxuICBwYXJzZURhdGUgYXMgX3BhcnNlRGF0ZSxcbiAgcGFyc2VMb29zZURhdGUgYXMgX3BhcnNlTG9vc2VEYXRlLFxuICBwYXJzZUxvb3NlRGF0ZVJhbmdlIGFzIF9wYXJzZUxvb3NlRGF0ZVJhbmdlLFxuICBwcm9kdWN0RnJvbU1hdGNoZWRJdGVtIGFzIF9wcm9kdWN0RnJvbU1hdGNoZWRJdGVtLFxuICBwcm9kdWN0c0Zyb21DdXN0b21GaWVsZHMgYXMgX3Byb2R1Y3RzRnJvbUN1c3RvbUZpZWxkcyxcbiAgc2FuaXRpemVPcHRpb25JY29uU3ZnIGFzIF9zYW5pdGl6ZU9wdGlvbkljb25TdmcsXG4gIHNlbGVjdGVkUmFuZ2VGb3IgYXMgX3NlbGVjdGVkUmFuZ2VGb3IsXG4gIHZpc2libGVEYXRlUmFuZ2UgYXMgX3Zpc2libGVEYXRlUmFuZ2UsXG4gIFdFRUtEQVlfTEFCRUxTIGFzIF9XRUVLREFZX0xBQkVMUyxcbiAgd2l0aFNraXBwZWRQYXJhbXMgYXMgX3dpdGhTa2lwcGVkUGFyYW1zLFxufSBmcm9tIFwiQG1hZ2ljeC1lbmcvYWktYXV0b2NvbXBsZXRlLXZhbmlsbGFcIjtcblxuLyoqXG4gKiBSZS1leHBvcnRlZCB0aHJvdWdoIGxvY2FsIGJpbmRpbmdzIHJhdGhlciB0aGFuIGBleHBvcnQgLi4uIGZyb21gLlxuICpcbiAqIG5nLXBhY2thZ3IncyBmbGF0IGJ1bmRsZXMgZHJvcCBhIGJhcmUgYGV4cG9ydCB7IHggfSBmcm9tIFwiPGV4dGVybmFsPlwiYDogdGhlXG4gKiBuYW1lIHN1cnZpdmVzIGluIHRoZSBnZW5lcmF0ZWQgYC5kLnRzYCwgc28gY29uc3VtZXIgY29kZSB0eXBlY2hlY2tzLCBidXQgdGhlXG4gKiBzeW1ib2wgaXMgYWJzZW50IGZyb20gYGZlc20yMDIwYCDigJQgdGhlIGVudHJ5IHBvaW50IHRoZSBgZXhwb3J0c2AgbWFwIHJlc29sdmVzXG4gKiBieSBkZWZhdWx0IOKAlCBhbmQgaXMgYHVuZGVmaW5lZGAgYXQgcnVudGltZS4gQmluZGluZyB0byBhIGxvY2FsIGNvbnN0IGZvcmNlc1xuICogaXQgaW50byB0aGUgYnVuZGxlLlxuICovXG5leHBvcnQgY29uc3QgYnVpbGRTdWJtaXRSZXN1bHQgPSBfYnVpbGRTdWJtaXRSZXN1bHQ7XG5leHBvcnQgY29uc3Qgd2l0aFNraXBwZWRQYXJhbXMgPSBfd2l0aFNraXBwZWRQYXJhbXM7XG4vLyBEYXRlIGhlbHBlcnMsIGZvciB0dXJuaW5nIGEgY29tbWl0dGVkIGRhdGUgYmFjayBpbnRvIGEgYERhdGVgIGFuZCBmb3Jcbi8vIHJlbmRlcmluZyBhIGN1c3RvbSBjYWxlbmRhciBpbiBUaWVyIDMuXG5leHBvcnQgY29uc3QgY2VsbERheSA9IF9jZWxsRGF5O1xuZXhwb3J0IGNvbnN0IGNlbGxJc28gPSBfY2VsbElzbztcbmV4cG9ydCBjb25zdCBmb3JtYXREYXRlID0gX2Zvcm1hdERhdGU7XG5leHBvcnQgY29uc3QgaXNvRGF0ZSA9IF9pc29EYXRlO1xuZXhwb3J0IGNvbnN0IG1vbnRoTGFiZWwgPSBfbW9udGhMYWJlbDtcbmV4cG9ydCBjb25zdCBwYXJzZURhdGUgPSBfcGFyc2VEYXRlO1xuZXhwb3J0IGNvbnN0IHBhcnNlTG9vc2VEYXRlID0gX3BhcnNlTG9vc2VEYXRlO1xuZXhwb3J0IGNvbnN0IFdFRUtEQVlfTEFCRUxTID0gX1dFRUtEQVlfTEFCRUxTO1xuLy8gUmFuZ2UgaGVscGVycywgZm9yIGEgY3VzdG9tIGNhbGVuZGFyIHRoYXQgYW5zd2VycyBhIHNwYW4gaW4gdHdvIHRhcHMuXG4vLyBUaGUgdHdvIG1ldGFkYXRhIGtleXMgYXJlIHdoYXQgYSBjb21taXR0ZWQgcmFuZ2UgcmVjb3JkcyBpdHMgZW5kcyB1bmRlciwgc29cbi8vIGEgY29uc3VtZXIgcmVhZGluZyB0aGVtIGJhY2sgbmV2ZXIgaGFyZGNvZGVzIHRoZSBzdHJpbmdzLlxuZXhwb3J0IGNvbnN0IERBVEVfUkFOR0VfTUVUQV9FTkQgPSBfREFURV9SQU5HRV9NRVRBX0VORDtcbmV4cG9ydCBjb25zdCBEQVRFX1JBTkdFX01FVEFfU1RBUlQgPSBfREFURV9SQU5HRV9NRVRBX1NUQVJUO1xuZXhwb3J0IGNvbnN0IGRhdGVDZWxsTWFya3MgPSBfZGF0ZUNlbGxNYXJrcztcbmV4cG9ydCBjb25zdCBmb3JtYXREYXRlUmFuZ2UgPSBfZm9ybWF0RGF0ZVJhbmdlO1xuZXhwb3J0IGNvbnN0IHBhcnNlTG9vc2VEYXRlUmFuZ2UgPSBfcGFyc2VMb29zZURhdGVSYW5nZTtcbmV4cG9ydCBjb25zdCBzZWxlY3RlZFJhbmdlRm9yID0gX3NlbGVjdGVkUmFuZ2VGb3I7XG5leHBvcnQgY29uc3QgdmlzaWJsZURhdGVSYW5nZSA9IF92aXNpYmxlRGF0ZVJhbmdlO1xuLy8gT3B0aW9uIGljb25zLCBmb3IgYSBjdXN0b20gZHJvcGRvd24gdGhhdCBkcmF3cyBgaWNvbl9zdmdgIGl0c2VsZi5cbmV4cG9ydCBjb25zdCBvcHRpb25MYWJlbCA9IF9vcHRpb25MYWJlbDtcbmV4cG9ydCBjb25zdCBzYW5pdGl6ZU9wdGlvbkljb25TdmcgPSBfc2FuaXRpemVPcHRpb25JY29uU3ZnO1xuLy8gT3B0aW9uIHBpY3R1cmVzIGFuZCBjb3VudHMsIGZvciBhIGN1c3RvbSBkcm9wZG93biB0aGF0IGRyYXdzIGBpbWFnZV91cmxgXG4vLyBhbmQgYGl0ZW1fY291bnRgIGl0c2VsZi5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09QVElPTl9DT1VOVF9VTklUID0gX0RFRkFVTFRfT1BUSU9OX0NPVU5UX1VOSVQ7XG5leHBvcnQgY29uc3QgZm9ybWF0T3B0aW9uQ291bnQgPSBfZm9ybWF0T3B0aW9uQ291bnQ7XG5leHBvcnQgY29uc3Qgb3B0aW9uQ291bnRMYWJlbCA9IF9vcHRpb25Db3VudExhYmVsO1xuZXhwb3J0IGNvbnN0IG9wdGlvbkhhc0ltYWdlID0gX29wdGlvbkhhc0ltYWdlO1xuZXhwb3J0IGNvbnN0IG9wdGlvbkltYWdlU3JjID0gX29wdGlvbkltYWdlU3JjO1xuLy8gUHJvZHVjdCBzdHJpcCBoZWxwZXJzLCBmb3IgYSBjdXN0b20gc3RyaXAgZmVkIGZyb20gYGN1c3RvbUZpZWxkcyRgLlxuZXhwb3J0IGNvbnN0IFBST0RVQ1RfUEFUSF9QUkVGSVggPSBfUFJPRFVDVF9QQVRIX1BSRUZJWDtcbmV4cG9ydCBjb25zdCBwcm9kdWN0RnJvbU1hdGNoZWRJdGVtID0gX3Byb2R1Y3RGcm9tTWF0Y2hlZEl0ZW07XG5leHBvcnQgY29uc3QgcHJvZHVjdHNGcm9tQ3VzdG9tRmllbGRzID0gX3Byb2R1Y3RzRnJvbUN1c3RvbUZpZWxkcztcbi8vID09PSBUaWVyIDE6IEZ1bGwgY29tcG9uZW50ID09PVxuZXhwb3J0IHsgQUlBdXRvY29tcGxldGVDb21wb25lbnQgfSBmcm9tIFwiLi9saWIvYWktYXV0b2NvbXBsZXRlXCI7XG4vLyA9PT0gQ29udmVuaWVuY2UgTmdNb2R1bGUgPT09XG5leHBvcnQgeyBBSUF1dG9jb21wbGV0ZU1vZHVsZSB9IGZyb20gXCIuL2xpYi9haS1hdXRvY29tcGxldGUubW9kdWxlXCI7XG4vLyA9PT0gVGllciAyOiBEcm9wZG93biBjb21wb25lbnQgPT09XG5leHBvcnQgeyBBSUF1dG9jb21wbGV0ZURyb3Bkb3duQ29tcG9uZW50IH0gZnJvbSBcIi4vbGliL2FpLWF1dG9jb21wbGV0ZS1kcm9wZG93blwiO1xuLy8gPT09IFRpZXIgMjogQ29udHJvbGxlciAoaGVhZGxlc3MgbG9naWMgY2xhc3MpID09PVxuZXhwb3J0IHsgQUlBdXRvY29tcGxldGVDb250cm9sbGVyIH0gZnJvbSBcIi4vbGliL2NvbnRyb2xsZXJcIjtcbi8vID09PSBUaWVyIDI6IElucHV0IGJpbmRlciArIENvbnRyb2xWYWx1ZUFjY2Vzc29yID09PVxuZXhwb3J0IHsgQUlBdXRvY29tcGxldGVJbnB1dERpcmVjdGl2ZSB9IGZyb20gXCIuL2xpYi9pbnB1dFwiO1xuLy8gPT09IEFuZ3VsYXItc3BlY2lmaWMgcHVibGljIHR5cGVzID09PVxuZXhwb3J0IHR5cGUge1xuICBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJPcHRpb25zLFxuICBBSUF1dG9jb21wbGV0ZUNvbnRyb2xsZXJTdGF0ZSxcbiAgQUlBdXRvY29tcGxldGVDb250cm9sbGVyVXBkYXRlLFxuICBBSUF1dG9jb21wbGV0ZURyb3Bkb3duU3RhdGUsXG59IGZyb20gXCIuL2xpYi9zaGFyZWQvdHlwZXNcIjtcbiJdfQ==