@geoit/ui 0.0.8 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ai/AGENTS.md +4 -0
- package/ai/README.md +4 -1
- package/ai/catalog.json +202 -56
- package/ai/components/geo-accordion.md +92 -0
- package/ai/components/geo-detail-view.md +91 -0
- package/ai/components/geo-map-admin-filter.md +0 -1
- package/ai/components/geo-map-legend.md +0 -1
- package/ai/components/geo-map-shell.md +3 -7
- package/ai/components/geo-switch.md +76 -0
- package/ai/components/geo-tree.md +0 -2
- package/ai/mockup.html +2 -2
- package/esm2022/lib/figma/geo-accordion/geo-accordion.component.mjs +67 -0
- package/esm2022/lib/figma/geo-accordion/geo-accordion.types.mjs +2 -0
- package/esm2022/lib/figma/geo-chart/geo-chart.component.mjs +3 -14
- package/esm2022/lib/figma/geo-detail-view/geo-detail-view.component.mjs +47 -0
- package/esm2022/lib/figma/geo-detail-view/geo-detail-view.types.mjs +2 -0
- package/esm2022/lib/figma/geo-list-page/geo-list-page.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-admin-filter/geo-map-admin-filter.component.mjs +3 -5
- package/esm2022/lib/figma/geo-map/chrome/geo-map-basemap-switcher/geo-map-basemap-switcher.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-layers-drawer/geo-map-layers-drawer.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-legend/geo-map-legend.component.mjs +3 -5
- package/esm2022/lib/figma/geo-map/chrome/geo-map-locate/geo-map-locate.component.mjs +16 -39
- package/esm2022/lib/figma/geo-map/chrome/geo-map-locate/geo-map-locate.util.mjs +38 -0
- package/esm2022/lib/figma/geo-map/chrome/geo-map-opacity/geo-map-opacity.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-parcel-popup/geo-map-parcel-popup.component.mjs +2 -2
- package/esm2022/lib/figma/geo-map/chrome/geo-map-search/geo-map-search.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-shell/geo-map-shell.component.mjs +23 -20
- package/esm2022/lib/figma/geo-map/chrome/geo-map-snapshot/geo-map-snapshot.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-toolbar/geo-map-toolbar.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/chrome/geo-map-zoom/geo-map-zoom.component.mjs +3 -3
- package/esm2022/lib/figma/geo-map/geo-map.constants.mjs +5 -5
- package/esm2022/lib/figma/geo-switch/geo-switch.component.mjs +44 -0
- package/esm2022/lib/figma/geo-tree/geo-tree.component.mjs +3 -17
- package/esm2022/lib/figma/index.mjs +6 -1
- package/fesm2022/geoit-ui.mjs +262 -130
- package/fesm2022/geoit-ui.mjs.map +1 -1
- package/lib/figma/geo-accordion/geo-accordion.component.d.ts +34 -0
- package/lib/figma/geo-accordion/geo-accordion.types.d.ts +7 -0
- package/lib/figma/geo-chart/geo-chart.component.d.ts +0 -9
- package/lib/figma/geo-detail-view/geo-detail-view.component.d.ts +30 -0
- package/lib/figma/geo-detail-view/geo-detail-view.types.d.ts +8 -0
- package/lib/figma/geo-map/chrome/geo-map-admin-filter/geo-map-admin-filter.component.d.ts +1 -3
- package/lib/figma/geo-map/chrome/geo-map-legend/geo-map-legend.component.d.ts +1 -3
- package/lib/figma/geo-map/chrome/geo-map-locate/geo-map-locate.util.d.ts +16 -0
- package/lib/figma/geo-map/chrome/geo-map-shell/geo-map-shell.component.d.ts +6 -14
- package/lib/figma/geo-map/geo-map.constants.d.ts +3 -3
- package/lib/figma/geo-switch/geo-switch.component.d.ts +25 -0
- package/lib/figma/geo-tree/geo-tree.component.d.ts +1 -5
- package/lib/figma/index.d.ts +5 -0
- package/package.json +1 -1
|
@@ -80,7 +80,7 @@ export class GeoMapOpacityComponent {
|
|
|
80
80
|
return this.layerOptions()[0]?.id ?? null;
|
|
81
81
|
}
|
|
82
82
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapOpacityComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
83
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapOpacityComponent, isStandalone: true, selector: "geo-map-opacity", inputs: { controller: { classPropertyName: "controller", publicName: "controller", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, layerId: { classPropertyName: "layerId", publicName: "layerId", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, applyToFirstLayer: { classPropertyName: "applyToFirstLayer", publicName: "applyToFirstLayer", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { layerId: "layerIdChange", opacity: "opacityChange" }, host: { classAttribute: "geo-map-opacity-host" }, ngImport: i0, template: "@if (variant() === 'compact') {\n <button\n type=\"button\"\n class=\"geo-map-opacity__trigger\"\n nz-dropdown\n nzTrigger=\"click\"\n nzPlacement=\"bottomLeft\"\n nzOverlayClassName=\"geo-map-opacity-overlay\"\n [nzDropdownMenu]=\"menu\"\n [nzVisible]=\"open()\"\n (nzVisibleChange)=\"onVisible($event)\"\n [nz-tooltip]=\"title()\"\n nzTooltipPlacement=\"left\"\n [attr.aria-label]=\"title()\"\n [disabled]=\"!controller()\"\n >\n <geo-icon type=\"bg-colors\" size=\"
|
|
83
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapOpacityComponent, isStandalone: true, selector: "geo-map-opacity", inputs: { controller: { classPropertyName: "controller", publicName: "controller", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, layerId: { classPropertyName: "layerId", publicName: "layerId", isSignal: true, isRequired: false, transformFunction: null }, opacity: { classPropertyName: "opacity", publicName: "opacity", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, applyToFirstLayer: { classPropertyName: "applyToFirstLayer", publicName: "applyToFirstLayer", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { layerId: "layerIdChange", opacity: "opacityChange" }, host: { classAttribute: "geo-map-opacity-host" }, ngImport: i0, template: "@if (variant() === 'compact') {\n <button\n type=\"button\"\n class=\"geo-map-opacity__trigger\"\n nz-dropdown\n nzTrigger=\"click\"\n nzPlacement=\"bottomLeft\"\n nzOverlayClassName=\"geo-map-opacity-overlay\"\n [nzDropdownMenu]=\"menu\"\n [nzVisible]=\"open()\"\n (nzVisibleChange)=\"onVisible($event)\"\n [nz-tooltip]=\"title()\"\n nzTooltipPlacement=\"left\"\n [attr.aria-label]=\"title()\"\n [disabled]=\"!controller()\"\n >\n <geo-icon type=\"bg-colors\" size=\"md\" />\n </button>\n\n <nz-dropdown-menu #menu=\"nzDropdownMenu\">\n <div class=\"geo-map-opacity__panel geo-map-opacity__panel--popup\">\n <div class=\"geo-map-opacity__title\">{{ title() }}</div>\n @if (layerOptions().length > 1) {\n <ul class=\"geo-map-opacity__layers\">\n @for (layer of layerOptions(); track layer.id) {\n <li>\n <button\n type=\"button\"\n class=\"geo-map-opacity__layer\"\n [class.geo-map-opacity__layer--active]=\"\n layer.id === (layerId() || layerOptions()[0].id)\n \"\n (click)=\"selectLayer(layer.id)\"\n >\n {{ layer.title }}\n </button>\n </li>\n }\n </ul>\n } @else if (layerOptions().length === 1) {\n <div class=\"geo-map-opacity__layer-name\">\n {{ layerOptions()[0].title }}\n </div>\n } @else {\n <div class=\"geo-map-opacity__empty\">Ch\u01B0a c\u00F3 l\u1EDBp \u0111\u1EC3 ch\u1EC9nh.</div>\n }\n\n <div class=\"geo-map-opacity__slider\">\n <geo-slider [(value)]=\"opacity\" [min]=\"0\" [max]=\"100\" [step]=\"1\" />\n <span class=\"geo-map-opacity__value\">{{ opacity() }}%</span>\n </div>\n </div>\n </nz-dropdown-menu>\n} @else {\n <div class=\"geo-map-opacity__panel\">\n <div class=\"geo-map-opacity__title\">{{ title() }}</div>\n @if (layerOptions().length > 1) {\n <ul class=\"geo-map-opacity__layers\">\n @for (layer of layerOptions(); track layer.id) {\n <li>\n <button\n type=\"button\"\n class=\"geo-map-opacity__layer\"\n [class.geo-map-opacity__layer--active]=\"\n layer.id === (layerId() || layerOptions()[0].id)\n \"\n (click)=\"selectLayer(layer.id)\"\n >\n {{ layer.title }}\n </button>\n </li>\n }\n </ul>\n } @else if (layerOptions().length === 1) {\n <div class=\"geo-map-opacity__layer-name\">{{ layerOptions()[0].title }}</div>\n } @else {\n <div class=\"geo-map-opacity__empty\">Ch\u01B0a c\u00F3 l\u1EDBp \u0111\u1EC3 ch\u1EC9nh.</div>\n }\n\n <div class=\"geo-map-opacity__slider\">\n <geo-slider [(value)]=\"opacity\" [min]=\"0\" [max]=\"100\" [step]=\"1\" />\n <span class=\"geo-map-opacity__value\">{{ opacity() }}%</span>\n </div>\n </div>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-opacity-host{display:block}.geo-map-opacity__trigger{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:48px;min-height:48px;padding:0}.geo-map-opacity__trigger:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-opacity__trigger:active:not(:disabled){transform:scale(.98)}.geo-map-opacity__trigger:disabled{opacity:.45;cursor:not-allowed}.geo-map-opacity__trigger--active,.geo-map-opacity__trigger--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-opacity__trigger--icon-only{width:40px;padding:0}.geo-map-opacity-overlay .ant-dropdown-menu{padding:0;border:0;background:transparent;box-shadow:none}.geo-map-opacity__panel{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);min-width:220px;padding:10px 12px}.geo-map-opacity__panel--popup{box-shadow:var(--geo-shadow-md)}.geo-map-opacity__title{margin-bottom:8px;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-opacity__layers{display:flex;flex-direction:column;gap:4px;margin:0 0 10px;padding:0;list-style:none}.geo-map-opacity__layer{width:100%;padding:6px 8px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-800);font:inherit;font-size:var(--geo-font-size-body-small);text-align:left;cursor:pointer}.geo-map-opacity__layer:hover{background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-opacity__layer--active{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default);font-weight:var(--geo-font-weight-semibold)}.geo-map-opacity__layer-name,.geo-map-opacity__empty{margin-bottom:8px;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-600)}.geo-map-opacity__slider{display:flex;align-items:center;gap:10px}.geo-map-opacity__slider geo-slider{flex:1;min-width:0}.geo-map-opacity__value{flex-shrink:0;min-width:40px;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-700);text-align:right}\n"], dependencies: [{ kind: "ngmodule", type: NzDropDownModule }, { kind: "directive", type: i1.NzDropDownDirective, selector: "[nz-dropdown]", inputs: ["nzDropdownMenu", "nzTrigger", "nzMatchWidthElement", "nzBackdrop", "nzClickHide", "nzDisabled", "nzVisible", "nzOverlayClassName", "nzOverlayStyle", "nzPlacement"], outputs: ["nzVisibleChange"], exportAs: ["nzDropdown"] }, { kind: "component", type: i1.NzDropdownMenuComponent, selector: "nz-dropdown-menu", exportAs: ["nzDropdownMenu"] }, { kind: "ngmodule", type: NzToolTipModule }, { kind: "directive", type: i2.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "cdkConnectedOverlayPush", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { kind: "component", type: GeoIconComponent, selector: "geo-icon", inputs: ["type", "theme", "spin", "size", "color"] }, { kind: "component", type: GeoSliderComponent, selector: "geo-slider", inputs: ["value", "min", "max", "step", "disabled", "tipFormatter"], outputs: ["valueChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
84
84
|
}
|
|
85
85
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapOpacityComponent, decorators: [{
|
|
86
86
|
type: Component,
|
|
@@ -89,6 +89,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
89
89
|
NzToolTipModule,
|
|
90
90
|
GeoIconComponent,
|
|
91
91
|
GeoSliderComponent,
|
|
92
|
-
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'geo-map-opacity-host' }, template: "@if (variant() === 'compact') {\n <button\n type=\"button\"\n class=\"geo-map-opacity__trigger\"\n nz-dropdown\n nzTrigger=\"click\"\n nzPlacement=\"bottomLeft\"\n nzOverlayClassName=\"geo-map-opacity-overlay\"\n [nzDropdownMenu]=\"menu\"\n [nzVisible]=\"open()\"\n (nzVisibleChange)=\"onVisible($event)\"\n [nz-tooltip]=\"title()\"\n nzTooltipPlacement=\"left\"\n [attr.aria-label]=\"title()\"\n [disabled]=\"!controller()\"\n >\n <geo-icon type=\"bg-colors\" size=\"
|
|
92
|
+
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { class: 'geo-map-opacity-host' }, template: "@if (variant() === 'compact') {\n <button\n type=\"button\"\n class=\"geo-map-opacity__trigger\"\n nz-dropdown\n nzTrigger=\"click\"\n nzPlacement=\"bottomLeft\"\n nzOverlayClassName=\"geo-map-opacity-overlay\"\n [nzDropdownMenu]=\"menu\"\n [nzVisible]=\"open()\"\n (nzVisibleChange)=\"onVisible($event)\"\n [nz-tooltip]=\"title()\"\n nzTooltipPlacement=\"left\"\n [attr.aria-label]=\"title()\"\n [disabled]=\"!controller()\"\n >\n <geo-icon type=\"bg-colors\" size=\"md\" />\n </button>\n\n <nz-dropdown-menu #menu=\"nzDropdownMenu\">\n <div class=\"geo-map-opacity__panel geo-map-opacity__panel--popup\">\n <div class=\"geo-map-opacity__title\">{{ title() }}</div>\n @if (layerOptions().length > 1) {\n <ul class=\"geo-map-opacity__layers\">\n @for (layer of layerOptions(); track layer.id) {\n <li>\n <button\n type=\"button\"\n class=\"geo-map-opacity__layer\"\n [class.geo-map-opacity__layer--active]=\"\n layer.id === (layerId() || layerOptions()[0].id)\n \"\n (click)=\"selectLayer(layer.id)\"\n >\n {{ layer.title }}\n </button>\n </li>\n }\n </ul>\n } @else if (layerOptions().length === 1) {\n <div class=\"geo-map-opacity__layer-name\">\n {{ layerOptions()[0].title }}\n </div>\n } @else {\n <div class=\"geo-map-opacity__empty\">Ch\u01B0a c\u00F3 l\u1EDBp \u0111\u1EC3 ch\u1EC9nh.</div>\n }\n\n <div class=\"geo-map-opacity__slider\">\n <geo-slider [(value)]=\"opacity\" [min]=\"0\" [max]=\"100\" [step]=\"1\" />\n <span class=\"geo-map-opacity__value\">{{ opacity() }}%</span>\n </div>\n </div>\n </nz-dropdown-menu>\n} @else {\n <div class=\"geo-map-opacity__panel\">\n <div class=\"geo-map-opacity__title\">{{ title() }}</div>\n @if (layerOptions().length > 1) {\n <ul class=\"geo-map-opacity__layers\">\n @for (layer of layerOptions(); track layer.id) {\n <li>\n <button\n type=\"button\"\n class=\"geo-map-opacity__layer\"\n [class.geo-map-opacity__layer--active]=\"\n layer.id === (layerId() || layerOptions()[0].id)\n \"\n (click)=\"selectLayer(layer.id)\"\n >\n {{ layer.title }}\n </button>\n </li>\n }\n </ul>\n } @else if (layerOptions().length === 1) {\n <div class=\"geo-map-opacity__layer-name\">{{ layerOptions()[0].title }}</div>\n } @else {\n <div class=\"geo-map-opacity__empty\">Ch\u01B0a c\u00F3 l\u1EDBp \u0111\u1EC3 ch\u1EC9nh.</div>\n }\n\n <div class=\"geo-map-opacity__slider\">\n <geo-slider [(value)]=\"opacity\" [min]=\"0\" [max]=\"100\" [step]=\"1\" />\n <span class=\"geo-map-opacity__value\">{{ opacity() }}%</span>\n </div>\n </div>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-opacity-host{display:block}.geo-map-opacity__trigger{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:48px;min-height:48px;padding:0}.geo-map-opacity__trigger:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-opacity__trigger:active:not(:disabled){transform:scale(.98)}.geo-map-opacity__trigger:disabled{opacity:.45;cursor:not-allowed}.geo-map-opacity__trigger--active,.geo-map-opacity__trigger--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-opacity__trigger--icon-only{width:40px;padding:0}.geo-map-opacity-overlay .ant-dropdown-menu{padding:0;border:0;background:transparent;box-shadow:none}.geo-map-opacity__panel{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);min-width:220px;padding:10px 12px}.geo-map-opacity__panel--popup{box-shadow:var(--geo-shadow-md)}.geo-map-opacity__title{margin-bottom:8px;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-opacity__layers{display:flex;flex-direction:column;gap:4px;margin:0 0 10px;padding:0;list-style:none}.geo-map-opacity__layer{width:100%;padding:6px 8px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-800);font:inherit;font-size:var(--geo-font-size-body-small);text-align:left;cursor:pointer}.geo-map-opacity__layer:hover{background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-opacity__layer--active{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default);font-weight:var(--geo-font-weight-semibold)}.geo-map-opacity__layer-name,.geo-map-opacity__empty{margin-bottom:8px;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-600)}.geo-map-opacity__slider{display:flex;align-items:center;gap:10px}.geo-map-opacity__slider geo-slider{flex:1;min-width:0}.geo-map-opacity__value{flex-shrink:0;min-width:40px;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-700);text-align:right}\n"] }]
|
|
93
93
|
}], ctorParameters: () => [] });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW1hcC1vcGFjaXR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dlby11aS9zcmMvbGliL2ZpZ21hL2dlby1tYXAvY2hyb21lL2dlby1tYXAtb3BhY2l0eS9nZW8tbWFwLW9wYWNpdHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1vcGFjaXR5L2dlby1tYXAtb3BhY2l0eS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFHbkU7Ozs7OztHQU1HO0FBZ0JILE1BQU0sT0FBTyxzQkFBc0I7SUFDeEIsVUFBVSxHQUFHLEtBQUssQ0FBMEIsSUFBSSxDQUFDLENBQUM7SUFDbEQsS0FBSyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQixPQUFPLEdBQUcsS0FBSyxDQUFnQixJQUFJLENBQUMsQ0FBQztJQUM5Qyw2QkFBNkI7SUFDcEIsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNy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TyxRQUFRLENBQUM7UUFDbEIsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUM7SUFDNUMsQ0FBQzt3R0F2RVUsc0JBQXNCOzRGQUF0QixzQkFBc0IsKzlCQ3ZDbkMsazlGQXFGQSw2d0ZEekRJLGdCQUFnQiwwY0FDaEIsZUFBZSx5ZkFDZixnQkFBZ0IseUdBQ2hCLGtCQUFrQjs7NEZBUVQsc0JBQXNCO2tCQWZsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUDt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixrQkFBa0I7cUJBQ25CLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE56RHJvcERvd25Nb2R1bGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2Ryb3Bkb3duJztcbmltcG9ydCB7IE56VG9vbFRpcE1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvdG9vbHRpcCc7XG5pbXBvcnQgeyBHZW9JY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZ2VvLWljb24vZ2VvLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEdlb1NsaWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1zbGlkZXIvZ2VvLXNsaWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0VPX01BUF9CQVNFTUFQX0xBWUVSX0lEIH0gZnJvbSAnLi4vLi4vZ2VvLW1hcC5jb25zdGFudHMnO1xuaW1wb3J0IHsgR2VvTWFwQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2dlby1tYXAuY29udHJvbGxlcic7XG5cbi8qKlxuICogUGljayBhIGxheWVyIGFuZCBhZGp1c3Qgb3BhY2l0eSAw4oCTMTAwJS5cbiAqXG4gKiBAc3VtbWFyeSBMYXllciBvcGFjaXR5IHNsaWRlciBmb3IgbWFwIGNocm9tZS5cbiAqIEB3aGVuVG9Vc2UgxJBp4buBdSBjaOG7iW5oIMSR4buZIHRyb25nIHN14buRdCBraGkgc28gc8OhbmggbOG7m3AuXG4gKiBAZG9Ob3RVc2VXaGVuIEdlbmVyaWMgc2xpZGVycyBvdXRzaWRlIG1hcCDigJQgdXNlIGdlby1zbGlkZXIuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dlby1tYXAtb3BhY2l0eScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOekRyb3BEb3duTW9kdWxlLFxuICAgIE56VG9vbFRpcE1vZHVsZSxcbiAgICBHZW9JY29uQ29tcG9uZW50LFxuICAgIEdlb1NsaWRlckNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dlby1tYXAtb3BhY2l0eS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9nZW8tbWFwLW9wYWNpdHkuY29tcG9uZW50LnNjc3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDogeyBjbGFzczogJ2dlby1tYXAtb3BhY2l0eS1ob3N0JyB9LFxufSlcbmV4cG9ydCBjbGFzcyBHZW9NYXBPcGFjaXR5Q29tcG9uZW50IHtcbiAgcmVhZG9ubHkgY29udHJvbGxlciA9IGlucHV0PEdlb01hcENvbnRyb2xsZXIgfCBudWxsPihudWxsKTtcbiAgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dCgnxJDhu5kgdHJvbmcgc3Xhu5F0Jyk7XG4gIHJlYWRvbmx5IGxheWVySWQgPSBtb2RlbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgLyoqIE9wYWNpdHkgcGVyY2VudCAw4oCTMTAwLiAqL1xuICByZWFkb25seSBvcGFjaXR5ID0gbW9kZWwoMTAwKTtcbiAgcmVhZG9ubHkgdmFyaWFudCA9IGlucHV0PCdwYW5lbCcgfCAnY29tcGFjdCc+KCdwYW5lbCcpO1xuICAvKiogV2hlbiBjb21wYWN0IGFuZCBubyBsYXllcklkLCBhcHBseSB0byBmaXJzdCBub24tYmFzZW1hcCBvdmVybGF5LiAqL1xuICByZWFkb25seSBhcHBseVRvRmlyc3RMYXllciA9IGlucHV0KHRydWUpO1xuXG4gIHJlYWRvbmx5IG9wZW4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGxheWVyT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgaWYgKCFjdHJsKSB7XG4gICAgICByZXR1cm4gW10gYXMgQXJyYXk8eyBpZDogc3RyaW5nOyB0aXRsZTogc3RyaW5nIH0+O1xuICAgIH1cbiAgICByZXR1cm4gY3RybFxuICAgICAgLmdldExheWVycygpXG4gICAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmlkICE9PSBHRU9fTUFQX0JBU0VNQVBfTEFZRVJfSUQpXG4gICAgICAubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgdGl0bGU6IGl0ZW0uY29uZmlnLnRpdGxlIHx8IGl0ZW0uaWQsXG4gICAgICB9KSk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucmVzb2x2ZVRhcmdldElkKCk7XG4gICAgICBpZiAoIWN0cmwgfHwgIWlkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hbmFnZWQgPSBjdHJsLmdldExheWVycygpLmZpbmQoKGl0ZW0pID0+IGl0ZW0uaWQgPT09IGlkKTtcbiAgICAgIGlmICghbWFuYWdlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBwY3QgPSBNYXRoLnJvdW5kKChtYW5hZ2VkLmNvbmZpZy5vcGFjaXR5ID8/IDEpICogMTAwKTtcbiAgICAgIGlmIChwY3QgIT09IHRoaXMub3BhY2l0eSgpKSB7XG4gICAgICAgIHRoaXMub3BhY2l0eS5zZXQocGN0KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucmVzb2x2ZVRhcmdldElkKCk7XG4gICAgICBjb25zdCBwY3QgPSB0aGlzLm9wYWNpdHkoKTtcbiAgICAgIGlmICghY3RybCB8fCAhaWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY3RybC5zZXRMYXllck9wYWNpdHkoaWQsIE1hdGgubWluKDEsIE1hdGgubWF4KDAsIHBjdCAvIDEwMCkpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uVmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuLnNldCh2aXNpYmxlKTtcbiAgfVxuXG4gIHNlbGVjdExheWVyKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmxheWVySWQuc2V0KGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZVRhcmdldElkKCk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IGV4cGxpY2l0ID0gdGhpcy5sYXllcklkKCk7XG4gICAgaWYgKGV4cGxpY2l0KSB7XG4gICAgICByZXR1cm4gZXhwbGljaXQ7XG4gICAgfVxuICAgIGlmICghdGhpcy5hcHBseVRvRmlyc3RMYXllcigpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubGF5ZXJPcHRpb25zKClbMF0/LmlkID8/IG51bGw7XG4gIH1cbn1cbiIsIkBpZiAodmFyaWFudCgpID09PSAnY29tcGFjdCcpIHtcbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X190cmlnZ2VyXCJcbiAgICBuei1kcm9wZG93blxuICAgIG56VHJpZ2dlcj1cImNsaWNrXCJcbiAgICBuelBsYWNlbWVudD1cImJvdHRvbUxlZnRcIlxuICAgIG56T3ZlcmxheUNsYXNzTmFtZT1cImdlby1tYXAtb3BhY2l0eS1vdmVybGF5XCJcbiAgICBbbnpEcm9wZG93bk1lbnVdPVwibWVudVwiXG4gICAgW256VmlzaWJsZV09XCJvcGVuKClcIlxuICAgIChuelZpc2libGVDaGFuZ2UpPVwib25WaXNpYmxlKCRldmVudClcIlxuICAgIFtuei10b29sdGlwXT1cInRpdGxlKClcIlxuICAgIG56VG9vbHRpcFBsYWNlbWVudD1cImxlZnRcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGl0bGUoKVwiXG4gICAgW2Rpc2FibGVkXT1cIiFjb250cm9sbGVyKClcIlxuICA+XG4gICAgPGdlby1pY29uIHR5cGU9XCJiZy1jb2xvcnNcIiBzaXplPVwic21cIiAvPlxuICA8L2J1dHRvbj5cblxuICA8bnotZHJvcGRvd24tbWVudSAjbWVudT1cIm56RHJvcGRvd25NZW51XCI+XG4gICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fcGFuZWwgZ2VvLW1hcC1vcGFjaXR5X19wYW5lbC0tcG9wdXBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3RpdGxlXCI+e3sgdGl0bGUoKSB9fTwvZGl2PlxuICAgICAgQGlmIChsYXllck9wdGlvbnMoKS5sZW5ndGggPiAxKSB7XG4gICAgICAgIDx1bCBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXJzXCI+XG4gICAgICAgICAgQGZvciAobGF5ZXIgb2YgbGF5ZXJPcHRpb25zKCk7IHRyYWNrIGxheWVyLmlkKSB7XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5nZW8tbWFwLW9wYWNpdHlfX2xheWVyLS1hY3RpdmVdPVwiXG4gICAgICAgICAgICAgICAgICBsYXllci5pZCA9PT0gKGxheWVySWQoKSB8fCBsYXllck9wdGlvbnMoKVswXS5pZClcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RMYXllcihsYXllci5pZClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbGF5ZXIudGl0bGUgfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgIH1cbiAgICAgICAgPC91bD5cbiAgICAgIH0gQGVsc2UgaWYgKGxheWVyT3B0aW9ucygpLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19sYXllci1uYW1lXCI+XG4gICAgICAgICAge3sgbGF5ZXJPcHRpb25zKClbMF0udGl0bGUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fZW1wdHlcIj5DaMawYSBjw7MgbOG7m3AgxJHhu4MgY2jhu4luaC48L2Rpdj5cbiAgICAgIH1cblxuICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fc2xpZGVyXCI+XG4gICAgICAgIDxnZW8tc2xpZGVyIFsodmFsdWUpXT1cIm9wYWNpdHlcIiBbbWluXT1cIjBcIiBbbWF4XT1cIjEwMFwiIFtzdGVwXT1cIjFcIiAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fdmFsdWVcIj57eyBvcGFjaXR5KCkgfX0lPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbnotZHJvcGRvd24tbWVudT5cbn0gQGVsc2Uge1xuICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19wYW5lbFwiPlxuICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3RpdGxlXCI+e3sgdGl0bGUoKSB9fTwvZGl2PlxuICAgIEBpZiAobGF5ZXJPcHRpb25zKCkubGVuZ3RoID4gMSkge1xuICAgICAgPHVsIGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19sYXllcnNcIj5cbiAgICAgICAgQGZvciAobGF5ZXIgb2YgbGF5ZXJPcHRpb25zKCk7IHRyYWNrIGxheWVyLmlkKSB7XG4gICAgICAgICAgPGxpPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX2xheWVyXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtb3BhY2l0eV9fbGF5ZXItLWFjdGl2ZV09XCJcbiAgICAgICAgICAgICAgICBsYXllci5pZCA9PT0gKGxheWVySWQoKSB8fCBsYXllck9wdGlvbnMoKVswXS5pZClcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdExheWVyKGxheWVyLmlkKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IGxheWVyLnRpdGxlIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgICA8L3VsPlxuICAgIH0gQGVsc2UgaWYgKGxheWVyT3B0aW9ucygpLmxlbmd0aCA9PT0gMSkge1xuICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXItbmFtZVwiPnt7IGxheWVyT3B0aW9ucygpWzBdLnRpdGxlIH19PC9kaXY+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19lbXB0eVwiPkNoxrBhIGPDsyBs4bubcCDEkeG7gyBjaOG7iW5oLjwvZGl2PlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3NsaWRlclwiPlxuICAgICAgPGdlby1zbGlkZXIgWyh2YWx1ZSldPVwib3BhY2l0eVwiIFttaW5dPVwiMFwiIFttYXhdPVwiMTAwXCIgW3N0ZXBdPVwiMVwiIC8+XG4gICAgICA8c3BhbiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fdmFsdWVcIj57eyBvcGFjaXR5KCkgfX0lPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbn1cbiJdfQ==
|
|
94
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW1hcC1vcGFjaXR5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2dlby11aS9zcmMvbGliL2ZpZ21hL2dlby1tYXAvY2hyb21lL2dlby1tYXAtb3BhY2l0eS9nZW8tbWFwLW9wYWNpdHkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1vcGFjaXR5L2dlby1tYXAtb3BhY2l0eS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxFQUNOLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDeEUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0seUJBQXlCLENBQUM7Ozs7QUFHbkU7Ozs7OztHQU1HO0FBZ0JILE1BQU0sT0FBTyxzQkFBc0I7SUFDeEIsVUFBVSxHQUFHLEtBQUssQ0FBMEIsSUFBSSxDQUFDLENBQUM7SUFDbEQsS0FBSyxHQUFHLEtBQUssQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQixPQUFPLEdBQUcsS0FBSyxDQUFnQixJQUFJLENBQUMsQ0FBQztJQUM5Qyw2QkFBNkI7SUFDcEIsT0FBTyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUNy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TyxRQUFRLENBQUM7UUFDbEIsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxDQUFDO1lBQzlCLE9BQU8sSUFBSSxDQUFDO1FBQ2QsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsSUFBSSxJQUFJLENBQUM7SUFDNUMsQ0FBQzt3R0F2RVUsc0JBQXNCOzRGQUF0QixzQkFBc0IsKzlCQ3ZDbkMsazlGQXFGQSw2eEZEekRJLGdCQUFnQiwwY0FDaEIsZUFBZSx5ZkFDZixnQkFBZ0IseUdBQ2hCLGtCQUFrQjs7NEZBUVQsc0JBQXNCO2tCQWZsQyxTQUFTOytCQUNFLGlCQUFpQixjQUNmLElBQUksV0FDUDt3QkFDUCxnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixrQkFBa0I7cUJBQ25CLG1CQUdnQix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUUsS0FBSyxFQUFFLHNCQUFzQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgaW5wdXQsXG4gIG1vZGVsLFxuICBzaWduYWwsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE56RHJvcERvd25Nb2R1bGUgfSBmcm9tICduZy16b3Jyby1hbnRkL2Ryb3Bkb3duJztcbmltcG9ydCB7IE56VG9vbFRpcE1vZHVsZSB9IGZyb20gJ25nLXpvcnJvLWFudGQvdG9vbHRpcCc7XG5pbXBvcnQgeyBHZW9JY29uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vZ2VvLWljb24vZ2VvLWljb24uY29tcG9uZW50JztcbmltcG9ydCB7IEdlb1NsaWRlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1zbGlkZXIvZ2VvLXNsaWRlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR0VPX01BUF9CQVNFTUFQX0xBWUVSX0lEIH0gZnJvbSAnLi4vLi4vZ2VvLW1hcC5jb25zdGFudHMnO1xuaW1wb3J0IHsgR2VvTWFwQ29udHJvbGxlciB9IGZyb20gJy4uLy4uL2dlby1tYXAuY29udHJvbGxlcic7XG5cbi8qKlxuICogUGljayBhIGxheWVyIGFuZCBhZGp1c3Qgb3BhY2l0eSAw4oCTMTAwJS5cbiAqXG4gKiBAc3VtbWFyeSBMYXllciBvcGFjaXR5IHNsaWRlciBmb3IgbWFwIGNocm9tZS5cbiAqIEB3aGVuVG9Vc2UgxJBp4buBdSBjaOG7iW5oIMSR4buZIHRyb25nIHN14buRdCBraGkgc28gc8OhbmggbOG7m3AuXG4gKiBAZG9Ob3RVc2VXaGVuIEdlbmVyaWMgc2xpZGVycyBvdXRzaWRlIG1hcCDigJQgdXNlIGdlby1zbGlkZXIuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dlby1tYXAtb3BhY2l0eScsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtcbiAgICBOekRyb3BEb3duTW9kdWxlLFxuICAgIE56VG9vbFRpcE1vZHVsZSxcbiAgICBHZW9JY29uQ29tcG9uZW50LFxuICAgIEdlb1NsaWRlckNvbXBvbmVudCxcbiAgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dlby1tYXAtb3BhY2l0eS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9nZW8tbWFwLW9wYWNpdHkuY29tcG9uZW50LnNjc3MnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaG9zdDogeyBjbGFzczogJ2dlby1tYXAtb3BhY2l0eS1ob3N0JyB9LFxufSlcbmV4cG9ydCBjbGFzcyBHZW9NYXBPcGFjaXR5Q29tcG9uZW50IHtcbiAgcmVhZG9ubHkgY29udHJvbGxlciA9IGlucHV0PEdlb01hcENvbnRyb2xsZXIgfCBudWxsPihudWxsKTtcbiAgcmVhZG9ubHkgdGl0bGUgPSBpbnB1dCgnxJDhu5kgdHJvbmcgc3Xhu5F0Jyk7XG4gIHJlYWRvbmx5IGxheWVySWQgPSBtb2RlbDxzdHJpbmcgfCBudWxsPihudWxsKTtcbiAgLyoqIE9wYWNpdHkgcGVyY2VudCAw4oCTMTAwLiAqL1xuICByZWFkb25seSBvcGFjaXR5ID0gbW9kZWwoMTAwKTtcbiAgcmVhZG9ubHkgdmFyaWFudCA9IGlucHV0PCdwYW5lbCcgfCAnY29tcGFjdCc+KCdwYW5lbCcpO1xuICAvKiogV2hlbiBjb21wYWN0IGFuZCBubyBsYXllcklkLCBhcHBseSB0byBmaXJzdCBub24tYmFzZW1hcCBvdmVybGF5LiAqL1xuICByZWFkb25seSBhcHBseVRvRmlyc3RMYXllciA9IGlucHV0KHRydWUpO1xuXG4gIHJlYWRvbmx5IG9wZW4gPSBzaWduYWwoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGxheWVyT3B0aW9ucyA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgaWYgKCFjdHJsKSB7XG4gICAgICByZXR1cm4gW10gYXMgQXJyYXk8eyBpZDogc3RyaW5nOyB0aXRsZTogc3RyaW5nIH0+O1xuICAgIH1cbiAgICByZXR1cm4gY3RybFxuICAgICAgLmdldExheWVycygpXG4gICAgICAuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmlkICE9PSBHRU9fTUFQX0JBU0VNQVBfTEFZRVJfSUQpXG4gICAgICAubWFwKChpdGVtKSA9PiAoe1xuICAgICAgICBpZDogaXRlbS5pZCxcbiAgICAgICAgdGl0bGU6IGl0ZW0uY29uZmlnLnRpdGxlIHx8IGl0ZW0uaWQsXG4gICAgICB9KSk7XG4gIH0pO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucmVzb2x2ZVRhcmdldElkKCk7XG4gICAgICBpZiAoIWN0cmwgfHwgIWlkKSB7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cbiAgICAgIGNvbnN0IG1hbmFnZWQgPSBjdHJsLmdldExheWVycygpLmZpbmQoKGl0ZW0pID0+IGl0ZW0uaWQgPT09IGlkKTtcbiAgICAgIGlmICghbWFuYWdlZCkge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICBjb25zdCBwY3QgPSBNYXRoLnJvdW5kKChtYW5hZ2VkLmNvbmZpZy5vcGFjaXR5ID8/IDEpICogMTAwKTtcbiAgICAgIGlmIChwY3QgIT09IHRoaXMub3BhY2l0eSgpKSB7XG4gICAgICAgIHRoaXMub3BhY2l0eS5zZXQocGN0KTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICBjb25zdCBjdHJsID0gdGhpcy5jb250cm9sbGVyKCk7XG4gICAgICBjb25zdCBpZCA9IHRoaXMucmVzb2x2ZVRhcmdldElkKCk7XG4gICAgICBjb25zdCBwY3QgPSB0aGlzLm9wYWNpdHkoKTtcbiAgICAgIGlmICghY3RybCB8fCAhaWQpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuICAgICAgY3RybC5zZXRMYXllck9wYWNpdHkoaWQsIE1hdGgubWluKDEsIE1hdGgubWF4KDAsIHBjdCAvIDEwMCkpKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uVmlzaWJsZSh2aXNpYmxlOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuLnNldCh2aXNpYmxlKTtcbiAgfVxuXG4gIHNlbGVjdExheWVyKGlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmxheWVySWQuc2V0KGlkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVzb2x2ZVRhcmdldElkKCk6IHN0cmluZyB8IG51bGwge1xuICAgIGNvbnN0IGV4cGxpY2l0ID0gdGhpcy5sYXllcklkKCk7XG4gICAgaWYgKGV4cGxpY2l0KSB7XG4gICAgICByZXR1cm4gZXhwbGljaXQ7XG4gICAgfVxuICAgIGlmICghdGhpcy5hcHBseVRvRmlyc3RMYXllcigpKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMubGF5ZXJPcHRpb25zKClbMF0/LmlkID8/IG51bGw7XG4gIH1cbn1cbiIsIkBpZiAodmFyaWFudCgpID09PSAnY29tcGFjdCcpIHtcbiAgPGJ1dHRvblxuICAgIHR5cGU9XCJidXR0b25cIlxuICAgIGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X190cmlnZ2VyXCJcbiAgICBuei1kcm9wZG93blxuICAgIG56VHJpZ2dlcj1cImNsaWNrXCJcbiAgICBuelBsYWNlbWVudD1cImJvdHRvbUxlZnRcIlxuICAgIG56T3ZlcmxheUNsYXNzTmFtZT1cImdlby1tYXAtb3BhY2l0eS1vdmVybGF5XCJcbiAgICBbbnpEcm9wZG93bk1lbnVdPVwibWVudVwiXG4gICAgW256VmlzaWJsZV09XCJvcGVuKClcIlxuICAgIChuelZpc2libGVDaGFuZ2UpPVwib25WaXNpYmxlKCRldmVudClcIlxuICAgIFtuei10b29sdGlwXT1cInRpdGxlKClcIlxuICAgIG56VG9vbHRpcFBsYWNlbWVudD1cImxlZnRcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwidGl0bGUoKVwiXG4gICAgW2Rpc2FibGVkXT1cIiFjb250cm9sbGVyKClcIlxuICA+XG4gICAgPGdlby1pY29uIHR5cGU9XCJiZy1jb2xvcnNcIiBzaXplPVwibWRcIiAvPlxuICA8L2J1dHRvbj5cblxuICA8bnotZHJvcGRvd24tbWVudSAjbWVudT1cIm56RHJvcGRvd25NZW51XCI+XG4gICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fcGFuZWwgZ2VvLW1hcC1vcGFjaXR5X19wYW5lbC0tcG9wdXBcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3RpdGxlXCI+e3sgdGl0bGUoKSB9fTwvZGl2PlxuICAgICAgQGlmIChsYXllck9wdGlvbnMoKS5sZW5ndGggPiAxKSB7XG4gICAgICAgIDx1bCBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXJzXCI+XG4gICAgICAgICAgQGZvciAobGF5ZXIgb2YgbGF5ZXJPcHRpb25zKCk7IHRyYWNrIGxheWVyLmlkKSB7XG4gICAgICAgICAgICA8bGk+XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXJcIlxuICAgICAgICAgICAgICAgIFtjbGFzcy5nZW8tbWFwLW9wYWNpdHlfX2xheWVyLS1hY3RpdmVdPVwiXG4gICAgICAgICAgICAgICAgICBsYXllci5pZCA9PT0gKGxheWVySWQoKSB8fCBsYXllck9wdGlvbnMoKVswXS5pZClcbiAgICAgICAgICAgICAgICBcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RMYXllcihsYXllci5pZClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAge3sgbGF5ZXIudGl0bGUgfX1cbiAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgIH1cbiAgICAgICAgPC91bD5cbiAgICAgIH0gQGVsc2UgaWYgKGxheWVyT3B0aW9ucygpLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19sYXllci1uYW1lXCI+XG4gICAgICAgICAge3sgbGF5ZXJPcHRpb25zKClbMF0udGl0bGUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fZW1wdHlcIj5DaMawYSBjw7MgbOG7m3AgxJHhu4MgY2jhu4luaC48L2Rpdj5cbiAgICAgIH1cblxuICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fc2xpZGVyXCI+XG4gICAgICAgIDxnZW8tc2xpZGVyIFsodmFsdWUpXT1cIm9wYWNpdHlcIiBbbWluXT1cIjBcIiBbbWF4XT1cIjEwMFwiIFtzdGVwXT1cIjFcIiAvPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fdmFsdWVcIj57eyBvcGFjaXR5KCkgfX0lPC9zcGFuPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvbnotZHJvcGRvd24tbWVudT5cbn0gQGVsc2Uge1xuICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19wYW5lbFwiPlxuICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3RpdGxlXCI+e3sgdGl0bGUoKSB9fTwvZGl2PlxuICAgIEBpZiAobGF5ZXJPcHRpb25zKCkubGVuZ3RoID4gMSkge1xuICAgICAgPHVsIGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19sYXllcnNcIj5cbiAgICAgICAgQGZvciAobGF5ZXIgb2YgbGF5ZXJPcHRpb25zKCk7IHRyYWNrIGxheWVyLmlkKSB7XG4gICAgICAgICAgPGxpPlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX2xheWVyXCJcbiAgICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtb3BhY2l0eV9fbGF5ZXItLWFjdGl2ZV09XCJcbiAgICAgICAgICAgICAgICBsYXllci5pZCA9PT0gKGxheWVySWQoKSB8fCBsYXllck9wdGlvbnMoKVswXS5pZClcbiAgICAgICAgICAgICAgXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cInNlbGVjdExheWVyKGxheWVyLmlkKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHt7IGxheWVyLnRpdGxlIH19XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgICA8L3VsPlxuICAgIH0gQGVsc2UgaWYgKGxheWVyT3B0aW9ucygpLmxlbmd0aCA9PT0gMSkge1xuICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fbGF5ZXItbmFtZVwiPnt7IGxheWVyT3B0aW9ucygpWzBdLnRpdGxlIH19PC9kaXY+XG4gICAgfSBAZWxzZSB7XG4gICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1vcGFjaXR5X19lbXB0eVwiPkNoxrBhIGPDsyBs4bubcCDEkeG7gyBjaOG7iW5oLjwvZGl2PlxuICAgIH1cblxuICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLW9wYWNpdHlfX3NsaWRlclwiPlxuICAgICAgPGdlby1zbGlkZXIgWyh2YWx1ZSldPVwib3BhY2l0eVwiIFttaW5dPVwiMFwiIFttYXhdPVwiMTAwXCIgW3N0ZXBdPVwiMVwiIC8+XG4gICAgICA8c3BhbiBjbGFzcz1cImdlby1tYXAtb3BhY2l0eV9fdmFsdWVcIj57eyBvcGFjaXR5KCkgfX0lPC9zcGFuPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbn1cbiJdfQ==
|
package/esm2022/lib/figma/geo-map/chrome/geo-map-parcel-popup/geo-map-parcel-popup.component.mjs
CHANGED
|
@@ -124,13 +124,13 @@ export class GeoMapParcelPopupComponent {
|
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapParcelPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
127
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapParcelPopupComponent, isStandalone: true, selector: "geo-map-parcel-popup", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, parcel: { classPropertyName: "parcel", publicName: "parcel", isSignal: true, isRequired: false, transformFunction: null }, audience: { classPropertyName: "audience", publicName: "audience", isSignal: true, isRequired: false, transformFunction: null }, showExport: { classPropertyName: "showExport", publicName: "showExport", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange", closed: "closed", back: "back", exportClick: "exportClick", diagramClick: "diagramClick" }, host: { properties: { "class.geo-map-parcel-popup-host--open": "open()" }, classAttribute: "geo-map-parcel-popup-host" }, ngImport: i0, template: "@if (open() && parcel(); as data) {\n <aside class=\"geo-map-parcel-popup\" role=\"dialog\" aria-label=\"Th\u00F4ng tin th\u1EEDa \u0111\u1EA5t\">\n <header class=\"geo-map-parcel-popup__header\">\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__back\"\n aria-label=\"Quay l\u1EA1i\"\n (click)=\"onBack()\"\n >\n <geo-icon type=\"arrow-left\" size=\"sm\" />\n </button>\n <h3 class=\"geo-map-parcel-popup__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__close\"\n aria-label=\"\u0110\u00F3ng chi ti\u1EBFt\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-parcel-popup__body\">\n @for (section of sections(); track section.id) {\n <section class=\"geo-map-parcel-popup__section\">\n <div class=\"geo-map-parcel-popup__section-head\">\n <h4 class=\"geo-map-parcel-popup__section-title\">\n <geo-icon [type]=\"section.icon\" size=\"sm\" />\n <span>{{ section.title }}</span>\n </h4>\n @if (section.diagram) {\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__link\"\n (click)=\"onDiagramDetail()\"\n >\n Chi ti\u1EBFt\n </button>\n }\n </div>\n\n @if (section.rows?.length) {\n <dl class=\"geo-map-parcel-popup__rows\">\n @for (row of section.rows; track row.label) {\n <div class=\"geo-map-parcel-popup__row\">\n <dt>{{ row.label }}:</dt>\n <dd>{{ row.value }}</dd>\n </div>\n }\n </dl>\n } @else if (section.value) {\n <p class=\"geo-map-parcel-popup__value\">{{ section.value }}</p>\n }\n\n @if (section.diagram) {\n <div class=\"geo-map-parcel-popup__diagram\">\n @if (data.diagramUrl) {\n <img\n class=\"geo-map-parcel-popup__diagram-img\"\n [src]=\"data.diagramUrl\"\n alt=\"S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t\"\n />\n } @else {\n <div class=\"geo-map-parcel-popup__diagram-placeholder\" aria-hidden=\"true\">\n <geo-icon type=\"picture\" size=\"lg\" />\n <span>S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t</span>\n </div>\n }\n </div>\n }\n </section>\n }\n </div>\n </aside>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-parcel-popup-host{display:none}.geo-map-parcel-popup-host--open{display:block}.geo-map-parcel-popup{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:flex;flex-direction:column;width:min(400px,100vw - 32px);max-height:min(640px,100dvh - 100px);overflow:hidden;--geo-parcel-content-indent: 24px}.geo-map-parcel-popup__header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-parcel-popup__title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__back,.geo-map-parcel-popup__close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:
|
|
127
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapParcelPopupComponent, isStandalone: true, selector: "geo-map-parcel-popup", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, parcel: { classPropertyName: "parcel", publicName: "parcel", isSignal: true, isRequired: false, transformFunction: null }, audience: { classPropertyName: "audience", publicName: "audience", isSignal: true, isRequired: false, transformFunction: null }, showExport: { classPropertyName: "showExport", publicName: "showExport", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange", closed: "closed", back: "back", exportClick: "exportClick", diagramClick: "diagramClick" }, host: { properties: { "class.geo-map-parcel-popup-host--open": "open()" }, classAttribute: "geo-map-parcel-popup-host" }, ngImport: i0, template: "@if (open() && parcel(); as data) {\n <aside class=\"geo-map-parcel-popup\" role=\"dialog\" aria-label=\"Th\u00F4ng tin th\u1EEDa \u0111\u1EA5t\">\n <header class=\"geo-map-parcel-popup__header\">\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__back\"\n aria-label=\"Quay l\u1EA1i\"\n (click)=\"onBack()\"\n >\n <geo-icon type=\"arrow-left\" size=\"sm\" />\n </button>\n <h3 class=\"geo-map-parcel-popup__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__close\"\n aria-label=\"\u0110\u00F3ng chi ti\u1EBFt\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-parcel-popup__body\">\n @for (section of sections(); track section.id) {\n <section class=\"geo-map-parcel-popup__section\">\n <div class=\"geo-map-parcel-popup__section-head\">\n <h4 class=\"geo-map-parcel-popup__section-title\">\n <geo-icon [type]=\"section.icon\" size=\"sm\" />\n <span>{{ section.title }}</span>\n </h4>\n @if (section.diagram) {\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__link\"\n (click)=\"onDiagramDetail()\"\n >\n Chi ti\u1EBFt\n </button>\n }\n </div>\n\n @if (section.rows?.length) {\n <dl class=\"geo-map-parcel-popup__rows\">\n @for (row of section.rows; track row.label) {\n <div class=\"geo-map-parcel-popup__row\">\n <dt>{{ row.label }}:</dt>\n <dd>{{ row.value }}</dd>\n </div>\n }\n </dl>\n } @else if (section.value) {\n <p class=\"geo-map-parcel-popup__value\">{{ section.value }}</p>\n }\n\n @if (section.diagram) {\n <div class=\"geo-map-parcel-popup__diagram\">\n @if (data.diagramUrl) {\n <img\n class=\"geo-map-parcel-popup__diagram-img\"\n [src]=\"data.diagramUrl\"\n alt=\"S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t\"\n />\n } @else {\n <div class=\"geo-map-parcel-popup__diagram-placeholder\" aria-hidden=\"true\">\n <geo-icon type=\"picture\" size=\"lg\" />\n <span>S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t</span>\n </div>\n }\n </div>\n }\n </section>\n }\n </div>\n </aside>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-parcel-popup-host{display:none}.geo-map-parcel-popup-host--open{display:block}.geo-map-parcel-popup{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:flex;flex-direction:column;width:min(400px,100vw - 32px);max-height:min(640px,100dvh - 100px);overflow:hidden;--geo-parcel-content-indent: 24px}.geo-map-parcel-popup__header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-parcel-popup__title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__back,.geo-map-parcel-popup__close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:36px;min-width:36px;min-height:36px;padding:0}.geo-map-parcel-popup__back:hover:not(:disabled),.geo-map-parcel-popup__close:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back:active:not(:disabled),.geo-map-parcel-popup__close:active:not(:disabled){transform:scale(.98)}.geo-map-parcel-popup__back:disabled,.geo-map-parcel-popup__close:disabled{opacity:.45;cursor:not-allowed}.geo-map-parcel-popup__back--active,.geo-map-parcel-popup__back--checked,.geo-map-parcel-popup__close--active,.geo-map-parcel-popup__close--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back--icon-only,.geo-map-parcel-popup__close--icon-only{width:40px;padding:0}.geo-map-parcel-popup__back{border-radius:var(--geo-radius);background:var(--geo-color-primary-surface-light);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back:hover:not(:disabled){background:var(--geo-color-primary-soft-strong);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__close{color:var(--geo-color-neutral-500)}.geo-map-parcel-popup__body{display:flex;flex-direction:column;gap:16px;padding:14px 16px 18px;overflow:auto}.geo-map-parcel-popup__section{display:flex;flex-direction:column;gap:8px}.geo-map-parcel-popup__section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.geo-map-parcel-popup__section-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.3}.geo-map-parcel-popup__section-title geo-icon,.geo-map-parcel-popup__section-title .geo-icon-host{flex-shrink:0;width:16px;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__link:hover{text-decoration:underline}.geo-map-parcel-popup__link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-parcel-popup__rows{margin:0;padding-left:var(--geo-parcel-content-indent);display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:8px;row-gap:6px}.geo-map-parcel-popup__row{display:contents}.geo-map-parcel-popup__row dt{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-regular, 400);color:var(--geo-color-neutral-600)}.geo-map-parcel-popup__row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-neutral-900);word-break:break-word}.geo-map-parcel-popup__value{margin:0;padding-left:var(--geo-parcel-content-indent);font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-neutral-900);line-height:1.45}.geo-map-parcel-popup__diagram{margin-left:var(--geo-parcel-content-indent);overflow:hidden;border-radius:var(--geo-radius);border:1px solid var(--geo-color-border-default);background:var(--geo-color-neutral-50)}.geo-map-parcel-popup__diagram-img{display:block;width:100%;height:auto;max-height:160px;object-fit:cover}.geo-map-parcel-popup__diagram-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:120px;padding:16px;color:var(--geo-color-neutral-400);font-size:var(--geo-font-size-caption);background:linear-gradient(135deg,color-mix(in srgb,var(--geo-color-primary-soft) 80%,transparent) 0%,transparent 45%),repeating-linear-gradient(-12deg,transparent,transparent 10px,color-mix(in srgb,var(--geo-color-neutral-200) 55%,transparent) 10px,color-mix(in srgb,var(--geo-color-neutral-200) 55%,transparent) 11px)}\n"], dependencies: [{ kind: "component", type: GeoIconComponent, selector: "geo-icon", inputs: ["type", "theme", "spin", "size", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
128
128
|
}
|
|
129
129
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapParcelPopupComponent, decorators: [{
|
|
130
130
|
type: Component,
|
|
131
131
|
args: [{ selector: 'geo-map-parcel-popup', standalone: true, imports: [GeoIconComponent], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
132
132
|
class: 'geo-map-parcel-popup-host',
|
|
133
133
|
'[class.geo-map-parcel-popup-host--open]': 'open()',
|
|
134
|
-
}, template: "@if (open() && parcel(); as data) {\n <aside class=\"geo-map-parcel-popup\" role=\"dialog\" aria-label=\"Th\u00F4ng tin th\u1EEDa \u0111\u1EA5t\">\n <header class=\"geo-map-parcel-popup__header\">\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__back\"\n aria-label=\"Quay l\u1EA1i\"\n (click)=\"onBack()\"\n >\n <geo-icon type=\"arrow-left\" size=\"sm\" />\n </button>\n <h3 class=\"geo-map-parcel-popup__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__close\"\n aria-label=\"\u0110\u00F3ng chi ti\u1EBFt\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-parcel-popup__body\">\n @for (section of sections(); track section.id) {\n <section class=\"geo-map-parcel-popup__section\">\n <div class=\"geo-map-parcel-popup__section-head\">\n <h4 class=\"geo-map-parcel-popup__section-title\">\n <geo-icon [type]=\"section.icon\" size=\"sm\" />\n <span>{{ section.title }}</span>\n </h4>\n @if (section.diagram) {\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__link\"\n (click)=\"onDiagramDetail()\"\n >\n Chi ti\u1EBFt\n </button>\n }\n </div>\n\n @if (section.rows?.length) {\n <dl class=\"geo-map-parcel-popup__rows\">\n @for (row of section.rows; track row.label) {\n <div class=\"geo-map-parcel-popup__row\">\n <dt>{{ row.label }}:</dt>\n <dd>{{ row.value }}</dd>\n </div>\n }\n </dl>\n } @else if (section.value) {\n <p class=\"geo-map-parcel-popup__value\">{{ section.value }}</p>\n }\n\n @if (section.diagram) {\n <div class=\"geo-map-parcel-popup__diagram\">\n @if (data.diagramUrl) {\n <img\n class=\"geo-map-parcel-popup__diagram-img\"\n [src]=\"data.diagramUrl\"\n alt=\"S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t\"\n />\n } @else {\n <div class=\"geo-map-parcel-popup__diagram-placeholder\" aria-hidden=\"true\">\n <geo-icon type=\"picture\" size=\"lg\" />\n <span>S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t</span>\n </div>\n }\n </div>\n }\n </section>\n }\n </div>\n </aside>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-parcel-popup-host{display:none}.geo-map-parcel-popup-host--open{display:block}.geo-map-parcel-popup{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:flex;flex-direction:column;width:min(400px,100vw - 32px);max-height:min(640px,100dvh - 100px);overflow:hidden;--geo-parcel-content-indent: 24px}.geo-map-parcel-popup__header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-parcel-popup__title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__back,.geo-map-parcel-popup__close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:
|
|
134
|
+
}, template: "@if (open() && parcel(); as data) {\n <aside class=\"geo-map-parcel-popup\" role=\"dialog\" aria-label=\"Th\u00F4ng tin th\u1EEDa \u0111\u1EA5t\">\n <header class=\"geo-map-parcel-popup__header\">\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__back\"\n aria-label=\"Quay l\u1EA1i\"\n (click)=\"onBack()\"\n >\n <geo-icon type=\"arrow-left\" size=\"sm\" />\n </button>\n <h3 class=\"geo-map-parcel-popup__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__close\"\n aria-label=\"\u0110\u00F3ng chi ti\u1EBFt\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-parcel-popup__body\">\n @for (section of sections(); track section.id) {\n <section class=\"geo-map-parcel-popup__section\">\n <div class=\"geo-map-parcel-popup__section-head\">\n <h4 class=\"geo-map-parcel-popup__section-title\">\n <geo-icon [type]=\"section.icon\" size=\"sm\" />\n <span>{{ section.title }}</span>\n </h4>\n @if (section.diagram) {\n <button\n type=\"button\"\n class=\"geo-map-parcel-popup__link\"\n (click)=\"onDiagramDetail()\"\n >\n Chi ti\u1EBFt\n </button>\n }\n </div>\n\n @if (section.rows?.length) {\n <dl class=\"geo-map-parcel-popup__rows\">\n @for (row of section.rows; track row.label) {\n <div class=\"geo-map-parcel-popup__row\">\n <dt>{{ row.label }}:</dt>\n <dd>{{ row.value }}</dd>\n </div>\n }\n </dl>\n } @else if (section.value) {\n <p class=\"geo-map-parcel-popup__value\">{{ section.value }}</p>\n }\n\n @if (section.diagram) {\n <div class=\"geo-map-parcel-popup__diagram\">\n @if (data.diagramUrl) {\n <img\n class=\"geo-map-parcel-popup__diagram-img\"\n [src]=\"data.diagramUrl\"\n alt=\"S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t\"\n />\n } @else {\n <div class=\"geo-map-parcel-popup__diagram-placeholder\" aria-hidden=\"true\">\n <geo-icon type=\"picture\" size=\"lg\" />\n <span>S\u01A1 \u0111\u1ED3 th\u1EEDa \u0111\u1EA5t</span>\n </div>\n }\n </div>\n }\n </section>\n }\n </div>\n </aside>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-parcel-popup-host{display:none}.geo-map-parcel-popup-host--open{display:block}.geo-map-parcel-popup{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);display:flex;flex-direction:column;width:min(400px,100vw - 32px);max-height:min(640px,100dvh - 100px);overflow:hidden;--geo-parcel-content-indent: 24px}.geo-map-parcel-popup__header{display:grid;grid-template-columns:36px 1fr 36px;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-parcel-popup__title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__back,.geo-map-parcel-popup__close{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:36px;min-width:36px;min-height:36px;padding:0}.geo-map-parcel-popup__back:hover:not(:disabled),.geo-map-parcel-popup__close:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back:active:not(:disabled),.geo-map-parcel-popup__close:active:not(:disabled){transform:scale(.98)}.geo-map-parcel-popup__back:disabled,.geo-map-parcel-popup__close:disabled{opacity:.45;cursor:not-allowed}.geo-map-parcel-popup__back--active,.geo-map-parcel-popup__back--checked,.geo-map-parcel-popup__close--active,.geo-map-parcel-popup__close--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back--icon-only,.geo-map-parcel-popup__close--icon-only{width:40px;padding:0}.geo-map-parcel-popup__back{border-radius:var(--geo-radius);background:var(--geo-color-primary-surface-light);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__back:hover:not(:disabled){background:var(--geo-color-primary-soft-strong);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__close{color:var(--geo-color-neutral-500)}.geo-map-parcel-popup__body{display:flex;flex-direction:column;gap:16px;padding:14px 16px 18px;overflow:auto}.geo-map-parcel-popup__section{display:flex;flex-direction:column;gap:8px}.geo-map-parcel-popup__section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.geo-map-parcel-popup__section-title{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.3}.geo-map-parcel-popup__section-title geo-icon,.geo-map-parcel-popup__section-title .geo-icon-host{flex-shrink:0;width:16px;color:var(--geo-color-neutral-900)}.geo-map-parcel-popup__link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default)}.geo-map-parcel-popup__link:hover{text-decoration:underline}.geo-map-parcel-popup__link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-parcel-popup__rows{margin:0;padding-left:var(--geo-parcel-content-indent);display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:8px;row-gap:6px}.geo-map-parcel-popup__row{display:contents}.geo-map-parcel-popup__row dt{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-regular, 400);color:var(--geo-color-neutral-600)}.geo-map-parcel-popup__row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-neutral-900);word-break:break-word}.geo-map-parcel-popup__value{margin:0;padding-left:var(--geo-parcel-content-indent);font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-neutral-900);line-height:1.45}.geo-map-parcel-popup__diagram{margin-left:var(--geo-parcel-content-indent);overflow:hidden;border-radius:var(--geo-radius);border:1px solid var(--geo-color-border-default);background:var(--geo-color-neutral-50)}.geo-map-parcel-popup__diagram-img{display:block;width:100%;height:auto;max-height:160px;object-fit:cover}.geo-map-parcel-popup__diagram-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:120px;padding:16px;color:var(--geo-color-neutral-400);font-size:var(--geo-font-size-caption);background:linear-gradient(135deg,color-mix(in srgb,var(--geo-color-primary-soft) 80%,transparent) 0%,transparent 45%),repeating-linear-gradient(-12deg,transparent,transparent 10px,color-mix(in srgb,var(--geo-color-neutral-200) 55%,transparent) 10px,color-mix(in srgb,var(--geo-color-neutral-200) 55%,transparent) 11px)}\n"] }]
|
|
135
135
|
}] });
|
|
136
136
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW1hcC1wYXJjZWwtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1wYXJjZWwtcG9wdXAvZ2VvLW1hcC1wYXJjZWwtcG9wdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1wYXJjZWwtcG9wdXAvZ2VvLW1hcC1wYXJjZWwtcG9wdXAuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQzs7QUF1QnhFOzs7Ozs7R0FNRztBQWNILE1BQU0sT0FBTywwQkFBMEI7SUFDNUIsSUFBSSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwQixLQUFLLEdBQUcsS0FBSyxDQUFDLG9CQUFvQixDQUFDLENBQUM7SUFDcEMsTUFBTSxHQUFHLEtBQUssQ0FBNEIsSUFBSSxDQUFDLENBQUM7SUFDaEQsUUFBUSxHQUFHLEtBQUssQ0FBdUIsU0FBUyxDQUFDLENBQUM7SUFDM0QsZ0ZBQWdGO0lBQ3ZFLFVBQVUsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFFMUIsTUFBTSxHQUFHLE1BQU0sRUFBUSxDQUFDO0lBQ3hCLElBQUksR0FBRyxNQUFNLEVBQVEsQ0FBQztJQUN0QixXQUFXLEdBQUcsTUFBTSxFQUFzQixDQUFDO0lBQzNDLFlBQVksR0FBRyxNQUFNLEVBQXNCLENBQUM7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QUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELFFBQVE7UUFDTixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDM0IsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUNULElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLENBQUM7SUFDSCxDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUMzQixJQUFJLElBQUksRUFBRSxDQUFDO1lBQ1QsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsQ0FBQztJQUNILENBQUM7d0dBbElVLDBCQUEwQjs0RkFBMUIsMEJBQTBCLGk4QkNwRHZDLDBxRkEyRUEsMG9LRGpDWSxnQkFBZ0I7OzRGQVVmLDBCQUEwQjtrQkFidEMsU0FBUzsrQkFDRSxzQkFBc0IsY0FDcEIsSUFBSSxXQUNQLENBQUMsZ0JBQWdCLENBQUMsbUJBR1YsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsMkJBQTJCO3dCQUNsQyx5Q0FBeUMsRUFBRSxRQUFRO3FCQUNwRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgR2VvSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1pY29uL2dlby1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgdHlwZSB7XG4gIEdlb01hcFBhcmNlbEF1ZGllbmNlLFxuICBHZW9NYXBQYXJjZWxEZXRhaWwsXG59IGZyb20gJy4uLy4uL2dlby1tYXAudHlwZXMnO1xuXG5pbnRlcmZhY2UgUGFyY2VsRmllbGRSb3cge1xuICBsYWJlbDogc3RyaW5nO1xuICB2YWx1ZTogc3RyaW5nO1xufVxuXG5pbnRlcmZhY2UgUGFyY2VsU2VjdGlvbiB7XG4gIGlkOiBzdHJpbmc7XG4gIHRpdGxlOiBzdHJpbmc7XG4gIGljb246IHN0cmluZztcbiAgLyoqIEtleS12YWx1ZSByb3dzIChUaMO0bmcgdGluIGNodW5nLCDEkOG7i2EgY2jhu4kpLiAqL1xuICByb3dzPzogUGFyY2VsRmllbGRSb3dbXTtcbiAgLyoqIFNpbmdsZSB2YWx1ZSB1bmRlciBzZWN0aW9uIHRpdGxlIChMb+G6oWkgxJHhuqV0LCBUcuG6oW5nIHRow6FpLCBHacOhIMSR4bqldCkuICovXG4gIHZhbHVlPzogc3RyaW5nO1xuICAvKiogU8ahIMSR4buTIHRo4butYS4gKi9cbiAgZGlhZ3JhbT86IGJvb2xlYW47XG59XG5cbi8qKlxuICogUGFyY2VsIC8gcGxhbm5pbmcgcmVzdWx0IGRldGFpbCBwYW5lbCAoVENRSC4xMikuXG4gKlxuICogQHN1bW1hcnkgUG9wdXAgLyBwYW5lbCBjaGkgdGnhur90IGvhur90IHF14bqjIHRyYSBj4bupdSB0aOG7rWEgxJHhuqV0LlxuICogQHdoZW5Ub1VzZSBIaeG7g24gdGjhu4sgdGjDtG5nIHRpbiB0aOG7rWEgKyBxdXkgaG/huqFjaCBzYXUga2hpIGNo4buNbiBr4bq/dCBxdeG6oy5cbiAqIEBkb05vdFVzZVdoZW4gRnVsbCBDQURBU1RSRSBlZGl0IGZvcm1zLlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdnZW8tbWFwLXBhcmNlbC1wb3B1cCcsXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtHZW9JY29uQ29tcG9uZW50XSxcbiAgdGVtcGxhdGVVcmw6ICcuL2dlby1tYXAtcGFyY2VsLXBvcHVwLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL2dlby1tYXAtcGFyY2VsLXBvcHVwLmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2dlby1tYXAtcGFyY2VsLXBvcHVwLWhvc3QnLFxuICAgICdbY2xhc3MuZ2VvLW1hcC1wYXJjZWwtcG9wdXAtaG9zdC0tb3Blbl0nOiAnb3BlbigpJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgR2VvTWFwUGFyY2VsUG9wdXBDb21wb25lbnQge1xuICByZWFkb25seSBvcGVuID0gbW9kZWwoZmFsc2UpO1xuICByZWFkb25seSB0aXRsZSA9IGlucHV0KCdUaMO0bmcgdGluIHRo4butYSDEkeG6pXQnKTtcbiAgcmVhZG9ubHkgcGFyY2VsID0gaW5wdXQ8R2VvTWFwUGFyY2VsRGV0YWlsIHwgbnVsbD4obnVsbCk7XG4gIHJlYWRvbmx5IGF1ZGllbmNlID0gaW5wdXQ8R2VvTWFwUGFyY2VsQXVkaWVuY2U+KCdjaXRpemVuJyk7XG4gIC8qKiBHaeG7ryB0xrDGoW5nIHRow61jaCBBUEkgY8WpOyBmb290ZXIgeHXhuqV0IGZpbGUga2jDtG5nIGPDsm4gdHJvbmcgbGF5b3V0IHRoaeG6v3Qga+G6vy4gKi9cbiAgcmVhZG9ubHkgc2hvd0V4cG9ydCA9IGlucHV0KGZhbHNlKTtcblxuICByZWFkb25seSBjbG9zZWQgPSBvdXRwdXQ8dm9pZD4oKTtcbiAgcmVhZG9ubHkgYmFjayA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSBleHBvcnRDbGljayA9IG91dHB1dDxHZW9NYXBQYXJjZWxEZXRhaWw+KCk7XG4gIHJlYWRvbmx5IGRpYWdyYW1DbGljayA9IG91dHB1dDxHZW9NYXBQYXJjZWxEZXRhaWw+KCk7XG5cbiAgcmVhZG9ubHkgc2VjdGlvbnMgPSBjb21wdXRlZDxQYXJjZWxTZWN0aW9uW10+KCgpID0+IHtcbiAgICBjb25zdCBkYXRhID0gdGhpcy5wYXJjZWwoKTtcbiAgICBpZiAoIWRhdGEpIHtcbiAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICBjb25zdCBnZW5lcmFsUm93czogUGFyY2VsRmllbGRSb3dbXSA9IFtcbiAgICAgIHsgbGFiZWw6ICdNw6MgdGjhu61hIMSR4bqldCcsIHZhbHVlOiBkYXRhLnBhcmNlbENvZGUgPz8gJycgfSxcbiAgICAgIHsgbGFiZWw6ICdT4buRIHThu50nLCB2YWx1ZTogZGF0YS5zaGVldE51bWJlciA/PyAnJyB9LFxuICAgICAgeyBsYWJlbDogJ1Phu5EgdGjhu61hJywgdmFsdWU6IGRhdGEucGFyY2VsTnVtYmVyID8/ICcnIH0sXG4gICAgICB7IGxhYmVsOiAnRGnhu4duIHTDrWNoJywgdmFsdWU6IGRhdGEuYXJlYSA/PyBkYXRhLmxlZ2FsQXJlYSA/PyAnJyB9LFxuICAgIF0uZmlsdGVyKChyb3cpID0+ICEhcm93LnZhbHVlLnRyaW0oKSk7XG5cbiAgICBjb25zdCBhZGRyZXNzUm93czogUGFyY2VsRmllbGRSb3dbXSA9IFtcbiAgICAgIHsgbGFiZWw6ICdYw6MnLCB2YWx1ZTogZGF0YS53YXJkID8/ICcnIH0sXG4gICAgICB7IGxhYmVsOiAnVOG7iW5oJywgdmFsdWU6IGRhdGEucHJvdmluY2UgPz8gJycgfSxcbiAgICBdLmZpbHRlcigocm93KSA9PiAhIXJvdy52YWx1ZS50cmltKCkpO1xuXG4gICAgY29uc3Qgc2VjdGlvbnM6IFBhcmNlbFNlY3Rpb25bXSA9IFtcbiAgICAgIHtcbiAgICAgICAgaWQ6ICdnZW5lcmFsJyxcbiAgICAgICAgdGl0bGU6ICdUaMO0bmcgdGluIGNodW5nJyxcbiAgICAgICAgaWNvbjogJ2luZm8tY2lyY2xlJyxcbiAgICAgICAgcm93czogZ2VuZXJhbFJvd3MsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ2xhbmRVc2UnLFxuICAgICAgICB0aXRsZTogJ0xv4bqhaSDEkeG6pXQnLFxuICAgICAgICBpY29uOiAnZmlsZS10ZXh0JyxcbiAgICAgICAgdmFsdWU6IGRhdGEubGFuZFVzZSxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnYWRkcmVzcycsXG4gICAgICAgIHRpdGxlOiAnxJDhu4thIGNo4buJJyxcbiAgICAgICAgaWNvbjogJ2Vudmlyb25tZW50JyxcbiAgICAgICAgcm93czogYWRkcmVzc1Jvd3MsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3JlZ2lzdHJhdGlvbicsXG4gICAgICAgIHRpdGxlOiAnVHLhuqFuZyB0aMOhaSDEkcSDbmcga8O9JyxcbiAgICAgICAgaWNvbjogJ3Byb2ZpbGUnLFxuICAgICAgICB2YWx1ZTogZGF0YS5yZWdpc3RyYXRpb25TdGF0dXMsXG4gICAgICB9LFxuICAgICAge1xuICAgICAgICBpZDogJ3ByaWNlJyxcbiAgICAgICAgdGl0bGU6ICdHacOhIMSR4bqldCcsXG4gICAgICAgIGljb246ICdzZWFyY2gnLFxuICAgICAgICB2YWx1ZTogZGF0YS5sYW5kUHJpY2U/LnRyaW0oKSB8fCAnxJBhbmcgY+G6rXAgbmjhuq10JyxcbiAgICAgIH0sXG4gICAgICB7XG4gICAgICAgIGlkOiAnZGlhZ3JhbScsXG4gICAgICAgIHRpdGxlOiAnU8ahIMSR4buTIHRo4butYSDEkeG6pXQnLFxuICAgICAgICBpY29uOiAnZ2xvYmFsJyxcbiAgICAgICAgZGlhZ3JhbTogdHJ1ZSxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGlmICh0aGlzLmF1ZGllbmNlKCkgPT09ICdzcGVjaWFsaXN0JyAmJiBkYXRhLnNoYXBlSW5mbz8udHJpbSgpKSB7XG4gICAgICBzZWN0aW9ucy5zcGxpY2UoLTEsIDAsIHtcbiAgICAgICAgaWQ6ICdzaGFwZScsXG4gICAgICAgIHRpdGxlOiAnVGjDtG5nIHRpbiBow6xuaCB0aOG7gycsXG4gICAgICAgIGljb246ICdib3JkZXItb3V0ZXInLFxuICAgICAgICB2YWx1ZTogZGF0YS5zaGFwZUluZm8sXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5hdWRpZW5jZSgpID09PSAnc3BlY2lhbGlzdCcgJiYgZGF0YS5wbGFubmluZ0luZm8/LnRyaW0oKSkge1xuICAgICAgc2VjdGlvbnMuc3BsaWNlKC0xLCAwLCB7XG4gICAgICAgIGlkOiAncGxhbm5pbmcnLFxuICAgICAgICB0aXRsZTogJ1Row7RuZyB0aW4gcXV5IGhv4bqhY2gnLFxuICAgICAgICBpY29uOiAnYmFuaycsXG4gICAgICAgIHZhbHVlOiBkYXRhLnBsYW5uaW5nSW5mbyxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGZvciAoY29uc3QgZXh0cmEgb2YgZGF0YS5leHRyYUZpZWxkcyA/PyBbXSkge1xuICAgICAgaWYgKCFleHRyYS52YWx1ZT8udHJpbSgpKSB7XG4gICAgICAgIGNvbnRpbnVlO1xuICAgICAgfVxuICAgICAgc2VjdGlvbnMuc3BsaWNlKC0xLCAwLCB7XG4gICAgICAgIGlkOiBgZXh0cmEtJHtleHRyYS5sYWJlbH1gLFxuICAgICAgICB0aXRsZTogZXh0cmEubGFiZWwsXG4gICAgICAgIGljb246ICdmaWxlLXRleHQnLFxuICAgICAgICB2YWx1ZTogZXh0cmEudmFsdWUsXG4gICAgICB9KTtcbiAgICB9XG5cbiAgICByZXR1cm4gc2VjdGlvbnMuZmlsdGVyKFxuICAgICAgKHNlY3Rpb24pID0+XG4gICAgICAgIHNlY3Rpb24uZGlhZ3JhbSB8fFxuICAgICAgICAhIXNlY3Rpb24udmFsdWU/LnRyaW0oKSB8fFxuICAgICAgICAoc2VjdGlvbi5yb3dzPy5sZW5ndGggPz8gMCkgPiAwLFxuICAgICk7XG4gIH0pO1xuXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIHRoaXMub3Blbi5zZXQoZmFsc2UpO1xuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgfVxuXG4gIG9uQmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLm9wZW4uc2V0KGZhbHNlKTtcbiAgICB0aGlzLmJhY2suZW1pdCgpO1xuICB9XG5cbiAgb25FeHBvcnQoKTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMucGFyY2VsKCk7XG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIHRoaXMuZXhwb3J0Q2xpY2suZW1pdChkYXRhKTtcbiAgICB9XG4gIH1cblxuICBvbkRpYWdyYW1EZXRhaWwoKTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMucGFyY2VsKCk7XG4gICAgaWYgKGRhdGEpIHtcbiAgICAgIHRoaXMuZGlhZ3JhbUNsaWNrLmVtaXQoZGF0YSk7XG4gICAgfVxuICB9XG59XG4iLCJAaWYgKG9wZW4oKSAmJiBwYXJjZWwoKTsgYXMgZGF0YSkge1xuICA8YXNpZGUgY2xhc3M9XCJnZW8tbWFwLXBhcmNlbC1wb3B1cFwiIHJvbGU9XCJkaWFsb2dcIiBhcmlhLWxhYmVsPVwiVGjDtG5nIHRpbiB0aOG7rWEgxJHhuqV0XCI+XG4gICAgPGhlYWRlciBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19oZWFkZXJcIj5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZ2VvLW1hcC1wYXJjZWwtcG9wdXBfX2JhY2tcIlxuICAgICAgICBhcmlhLWxhYmVsPVwiUXVheSBs4bqhaVwiXG4gICAgICAgIChjbGljayk9XCJvbkJhY2soKVwiXG4gICAgICA+XG4gICAgICAgIDxnZW8taWNvbiB0eXBlPVwiYXJyb3ctbGVmdFwiIHNpemU9XCJzbVwiIC8+XG4gICAgICA8L2J1dHRvbj5cbiAgICAgIDxoMyBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX190aXRsZVwiPnt7IHRpdGxlKCkgfX08L2gzPlxuICAgICAgPGJ1dHRvblxuICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgY2xhc3M9XCJnZW8tbWFwLXBhcmNlbC1wb3B1cF9fY2xvc2VcIlxuICAgICAgICBhcmlhLWxhYmVsPVwixJDDs25nIGNoaSB0aeG6v3RcIlxuICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICA+XG4gICAgICAgIDxnZW8taWNvbiB0eXBlPVwiY2xvc2VcIiBzaXplPVwic21cIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1wYXJjZWwtcG9wdXBfX2JvZHlcIj5cbiAgICAgIEBmb3IgKHNlY3Rpb24gb2Ygc2VjdGlvbnMoKTsgdHJhY2sgc2VjdGlvbi5pZCkge1xuICAgICAgICA8c2VjdGlvbiBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19zZWN0aW9uXCI+XG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19zZWN0aW9uLWhlYWRcIj5cbiAgICAgICAgICAgIDxoNCBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19zZWN0aW9uLXRpdGxlXCI+XG4gICAgICAgICAgICAgIDxnZW8taWNvbiBbdHlwZV09XCJzZWN0aW9uLmljb25cIiBzaXplPVwic21cIiAvPlxuICAgICAgICAgICAgICA8c3Bhbj57eyBzZWN0aW9uLnRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9oND5cbiAgICAgICAgICAgIEBpZiAoc2VjdGlvbi5kaWFncmFtKSB7XG4gICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19saW5rXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwib25EaWFncmFtRGV0YWlsKClcIlxuICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgQ2hpIHRp4bq/dFxuICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L2Rpdj5cblxuICAgICAgICAgIEBpZiAoc2VjdGlvbi5yb3dzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIDxkbCBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX19yb3dzXCI+XG4gICAgICAgICAgICAgIEBmb3IgKHJvdyBvZiBzZWN0aW9uLnJvd3M7IHRyYWNrIHJvdy5sYWJlbCkge1xuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXBhcmNlbC1wb3B1cF9fcm93XCI+XG4gICAgICAgICAgICAgICAgICA8ZHQ+e3sgcm93LmxhYmVsIH19OjwvZHQ+XG4gICAgICAgICAgICAgICAgICA8ZGQ+e3sgcm93LnZhbHVlIH19PC9kZD5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kbD5cbiAgICAgICAgICB9IEBlbHNlIGlmIChzZWN0aW9uLnZhbHVlKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImdlby1tYXAtcGFyY2VsLXBvcHVwX192YWx1ZVwiPnt7IHNlY3Rpb24udmFsdWUgfX08L3A+XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgQGlmIChzZWN0aW9uLmRpYWdyYW0pIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXBhcmNlbC1wb3B1cF9fZGlhZ3JhbVwiPlxuICAgICAgICAgICAgICBAaWYgKGRhdGEuZGlhZ3JhbVVybCkge1xuICAgICAgICAgICAgICAgIDxpbWdcbiAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZ2VvLW1hcC1wYXJjZWwtcG9wdXBfX2RpYWdyYW0taW1nXCJcbiAgICAgICAgICAgICAgICAgIFtzcmNdPVwiZGF0YS5kaWFncmFtVXJsXCJcbiAgICAgICAgICAgICAgICAgIGFsdD1cIlPGoSDEkeG7kyB0aOG7rWEgxJHhuqV0XCJcbiAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1wYXJjZWwtcG9wdXBfX2RpYWdyYW0tcGxhY2Vob2xkZXJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj5cbiAgICAgICAgICAgICAgICAgIDxnZW8taWNvbiB0eXBlPVwicGljdHVyZVwiIHNpemU9XCJsZ1wiIC8+XG4gICAgICAgICAgICAgICAgICA8c3Bhbj5TxqEgxJHhu5MgdGjhu61hIMSR4bqldDwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgfVxuICAgICAgICA8L3NlY3Rpb24+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvYXNpZGU+XG59XG4iXX0=
|
|
@@ -164,7 +164,7 @@ export class GeoMapSearchComponent {
|
|
|
164
164
|
this.closed.emit();
|
|
165
165
|
}
|
|
166
166
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
167
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapSearchComponent, isStandalone: true, selector: "geo-map-search", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, results: { classPropertyName: "results", publicName: "results", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, pageIndex: { classPropertyName: "pageIndex", publicName: "pageIndex", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null }, emptyText: { classPropertyName: "emptyText", publicName: "emptyText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange", mode: "modeChange", pageIndex: "pageIndexChange", pageSize: "pageSizeChange", search: "search", reset: "reset", resultSelect: "resultSelect", closed: "closed" }, host: { properties: { "class.geo-map-search-host--open": "open()" }, classAttribute: "geo-map-search-host" }, ngImport: i0, template: "@if (open()) {\n <section class=\"geo-map-search\" aria-label=\"Tra c\u1EE9u th\u00F4ng tin quy ho\u1EA1ch\">\n <header class=\"geo-map-search__header\">\n <h3 class=\"geo-map-search__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn\"\n aria-label=\"\u0110\u00F3ng tra c\u1EE9u\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-search__body\">\n <div class=\"geo-map-search__modes\" role=\"listbox\" aria-label=\"H\u00ECnh th\u1EE9c tra c\u1EE9u\">\n @for (tile of modeTiles; track tile.id) {\n <button\n type=\"button\"\n class=\"geo-map-search__mode\"\n role=\"option\"\n [class.geo-map-search__mode--active]=\"formOpen() && mode() === tile.id\"\n [attr.aria-selected]=\"formOpen() && mode() === tile.id\"\n (click)=\"selectMode(tile.id)\"\n >\n <span class=\"geo-map-search__mode-icon\" aria-hidden=\"true\">\n <geo-icon [type]=\"tile.icon\" size=\"md\" />\n </span>\n <span class=\"geo-map-search__mode-label\">{{ tile.label }}</span>\n </button>\n }\n </div>\n\n @if (formOpen()) {\n <section class=\"geo-map-search__form\" [attr.aria-label]=\"modeHeading()\">\n <div class=\"geo-map-search__form-head\">\n <h4 class=\"geo-map-search__form-title\">{{ modeHeading() }}</h4>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn geo-map-search__icon-btn--sm\"\n aria-label=\"Thu g\u1ECDn form t\u00ECm ki\u1EBFm\"\n (click)=\"collapseForm()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </div>\n\n <div\n class=\"geo-map-search__fields\"\n [class.geo-map-search__fields--inline]=\"fieldsInline()\"\n >\n @for (field of fields(); track field.key) {\n <geo-input\n [label]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [type]=\"field.type ?? 'text'\"\n [ngModel]=\"fieldValue(field.key)\"\n (ngModelChange)=\"setField(field.key, $event)\"\n (enterPressed)=\"submit()\"\n [allowClear]=\"true\"\n [block]=\"true\"\n />\n }\n </div>\n\n <div class=\"geo-map-search__actions\">\n <geo-button\n appearance=\"primary\"\n icon=\"search\"\n [disabled]=\"loading()\"\n (clicked)=\"submit()\"\n >\n T\u00ECm ki\u1EBFm\n </geo-button>\n <geo-button\n appearance=\"secondary\"\n icon=\"reload\"\n (clicked)=\"onReset()\"\n >\n \u0110\u1EB7t l\u1EA1i\n </geo-button>\n </div>\n </section>\n }\n\n @if (formOpen() && (loading() || hasSearched())) {\n <div class=\"geo-map-search__results\" aria-live=\"polite\">\n @if (loading()) {\n <p class=\"geo-map-search__hint\">\u0110ang t\u00ECm ki\u1EBFm\u2026</p>\n } @else if (!results().length) {\n <p class=\"geo-map-search__hint\">{{ emptyText() }}</p>\n } @else {\n <ul class=\"geo-map-search__list\">\n @for (item of results(); track item.id) {\n <li class=\"geo-map-search__result\">\n <div class=\"geo-map-search__result-head\">\n <span class=\"geo-map-search__result-map\">{{ mapLabel(item) }}</span>\n <button\n type=\"button\"\n class=\"geo-map-search__detail-link\"\n (click)=\"selectResult(item)\"\n >\n Chi ti\u1EBFt\n </button>\n </div>\n @if (item.parcel; as parcel) {\n <dl class=\"geo-map-search__result-meta\">\n @if (parcel.ward) {\n <div class=\"geo-map-search__result-row\">\n <dt>X\u00E3:</dt>\n <dd>{{ parcel.ward }}</dd>\n </div>\n }\n @if (parcel.province) {\n <div class=\"geo-map-search__result-row\">\n <dt>T\u1EC9nh:</dt>\n <dd>{{ parcel.province }}</dd>\n </div>\n }\n @if (parcel.area) {\n <div class=\"geo-map-search__result-row\">\n <dt>Di\u1EC7n t\u00EDch:</dt>\n <dd>{{ parcel.area }}</dd>\n </div>\n }\n </dl>\n } @else if (item.subtitle) {\n <p class=\"geo-map-search__result-sub\">{{ item.subtitle }}</p>\n }\n </li>\n }\n </ul>\n\n @if (resolvedTotal() > pageSize()) {\n <geo-pagination\n class=\"geo-map-search__paging\"\n [(pageIndex)]=\"pageIndex\"\n [(pageSize)]=\"pageSize\"\n [total]=\"resolvedTotal()\"\n size=\"small\"\n [simple]=\"true\"\n />\n }\n }\n </div>\n }\n </div>\n </section>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-search-host{display:none}.geo-map-search-host--open{display:block}.geo-map-search{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);width:min(420px,100vw - 32px);max-height:min(640px,82vh);overflow:hidden;display:flex;flex-direction:column}.geo-map-search__header{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 40px 12px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-search__title{margin:0;max-width:100%;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;line-height:1.35;color:var(--geo-color-neutral-900)}.geo-map-search__header .geo-map-search__icon-btn{position:absolute;top:8px;right:8px}.geo-map-search__icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:32px;min-width:32px;min-height:32px;padding:0;color:var(--geo-color-neutral-500)}.geo-map-search__icon-btn:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn:active:not(:disabled){transform:scale(.98)}.geo-map-search__icon-btn:disabled{opacity:.45;cursor:not-allowed}.geo-map-search__icon-btn--active,.geo-map-search__icon-btn--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn--icon-only{width:32px;padding:0}.geo-map-search__icon-btn--sm{width:28px;min-width:28px;min-height:28px}.geo-map-search__body{display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px;overflow:auto}.geo-map-search__modes{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 12px}.geo-map-search__mode{display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:104px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--geo-color-primary-default);font:inherit}.geo-map-search__mode:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:var(--geo-radius)}.geo-map-search__mode-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--geo-color-primary-default);background:var(--geo-color-primary-soft, var(--geo-color-primary-surface-light));color:var(--geo-color-primary-default);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.geo-map-search__mode:hover .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-hover)}.geo-map-search__mode--active .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-active);box-shadow:inset 0 0 0 1px var(--geo-color-primary-default)}.geo-map-search__mode-label{text-align:center;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-medium);line-height:1.3;color:var(--geo-color-primary-default)}.geo-map-search__form{display:flex;flex-direction:column;gap:12px;padding-top:4px;border-top:1px solid var(--geo-color-neutral-100)}.geo-map-search__form-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;padding:0 28px}.geo-map-search__form-title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);letter-spacing:.03em;color:var(--geo-color-neutral-900)}.geo-map-search__form-head .geo-map-search__icon-btn{position:absolute;top:50%;right:0;transform:translateY(-50%)}.geo-map-search__fields{display:flex;flex-direction:column;gap:10px}.geo-map-search__fields--inline,.geo-map-search__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.geo-map-search__actions>geo-button{display:block;min-width:0}.geo-map-search__actions .geo-button{width:100%}.geo-map-search__results{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid var(--geo-color-primary-default)}.geo-map-search__hint{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.geo-map-search__result{display:flex;flex-direction:column;gap:8px;padding:0}.geo-map-search__result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.geo-map-search__result-map{font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.4}.geo-map-search__detail-link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default);text-decoration:none}.geo-map-search__detail-link:hover{text-decoration:underline}.geo-map-search__detail-link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-search__result-meta{margin:0;display:flex;flex-direction:column;gap:4px}.geo-map-search__result-row{display:grid;grid-template-columns:88px 1fr;gap:8px;align-items:baseline}.geo-map-search__result-row dt{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__result-row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-search__result-sub{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__paging{display:flex;justify-content:center;margin-top:2px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: GeoButtonComponent, selector: "geo-button", inputs: ["appearance", "color", "icon", "iconTheme", "iconPlacement", "iconOnly", "type", "disabled", "tooltip", "tooltipPlacement", "active", "title"], outputs: ["clicked"] }, { kind: "component", type: GeoIconComponent, selector: "geo-icon", inputs: ["type", "theme", "spin", "size", "color"] }, { kind: "component", type: GeoInputComponent, selector: "geo-input", inputs: ["label", "placeholder", "type", "disabled", "readonly", "required", "error", "errorMessage", "maxlength", "prefixIcon", "suffixIcon", "allowClear", "block", "width"], outputs: ["valueChange", "enterPressed"] }, { kind: "component", type: GeoPaginationComponent, selector: "geo-pagination", inputs: ["pageIndex", "pageSize", "total", "size", "simple", "hideOnSinglePage", "showSizeChanger", "pageSizeOptions"], outputs: ["pageIndexChange", "pageSizeChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
167
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: GeoMapSearchComponent, isStandalone: true, selector: "geo-map-search", inputs: { open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null }, results: { classPropertyName: "results", publicName: "results", isSignal: true, isRequired: false, transformFunction: null }, loading: { classPropertyName: "loading", publicName: "loading", isSignal: true, isRequired: false, transformFunction: null }, pageIndex: { classPropertyName: "pageIndex", publicName: "pageIndex", isSignal: true, isRequired: false, transformFunction: null }, pageSize: { classPropertyName: "pageSize", publicName: "pageSize", isSignal: true, isRequired: false, transformFunction: null }, total: { classPropertyName: "total", publicName: "total", isSignal: true, isRequired: false, transformFunction: null }, emptyText: { classPropertyName: "emptyText", publicName: "emptyText", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { open: "openChange", mode: "modeChange", pageIndex: "pageIndexChange", pageSize: "pageSizeChange", search: "search", reset: "reset", resultSelect: "resultSelect", closed: "closed" }, host: { properties: { "class.geo-map-search-host--open": "open()" }, classAttribute: "geo-map-search-host" }, ngImport: i0, template: "@if (open()) {\n <section class=\"geo-map-search\" aria-label=\"Tra c\u1EE9u th\u00F4ng tin quy ho\u1EA1ch\">\n <header class=\"geo-map-search__header\">\n <h3 class=\"geo-map-search__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn\"\n aria-label=\"\u0110\u00F3ng tra c\u1EE9u\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-search__body\">\n <div class=\"geo-map-search__modes\" role=\"listbox\" aria-label=\"H\u00ECnh th\u1EE9c tra c\u1EE9u\">\n @for (tile of modeTiles; track tile.id) {\n <button\n type=\"button\"\n class=\"geo-map-search__mode\"\n role=\"option\"\n [class.geo-map-search__mode--active]=\"formOpen() && mode() === tile.id\"\n [attr.aria-selected]=\"formOpen() && mode() === tile.id\"\n (click)=\"selectMode(tile.id)\"\n >\n <span class=\"geo-map-search__mode-icon\" aria-hidden=\"true\">\n <geo-icon [type]=\"tile.icon\" size=\"md\" />\n </span>\n <span class=\"geo-map-search__mode-label\">{{ tile.label }}</span>\n </button>\n }\n </div>\n\n @if (formOpen()) {\n <section class=\"geo-map-search__form\" [attr.aria-label]=\"modeHeading()\">\n <div class=\"geo-map-search__form-head\">\n <h4 class=\"geo-map-search__form-title\">{{ modeHeading() }}</h4>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn geo-map-search__icon-btn--sm\"\n aria-label=\"Thu g\u1ECDn form t\u00ECm ki\u1EBFm\"\n (click)=\"collapseForm()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </div>\n\n <div\n class=\"geo-map-search__fields\"\n [class.geo-map-search__fields--inline]=\"fieldsInline()\"\n >\n @for (field of fields(); track field.key) {\n <geo-input\n [label]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [type]=\"field.type ?? 'text'\"\n [ngModel]=\"fieldValue(field.key)\"\n (ngModelChange)=\"setField(field.key, $event)\"\n (enterPressed)=\"submit()\"\n [allowClear]=\"true\"\n [block]=\"true\"\n />\n }\n </div>\n\n <div class=\"geo-map-search__actions\">\n <geo-button\n appearance=\"primary\"\n icon=\"search\"\n [disabled]=\"loading()\"\n (clicked)=\"submit()\"\n >\n T\u00ECm ki\u1EBFm\n </geo-button>\n <geo-button\n appearance=\"secondary\"\n icon=\"reload\"\n (clicked)=\"onReset()\"\n >\n \u0110\u1EB7t l\u1EA1i\n </geo-button>\n </div>\n </section>\n }\n\n @if (formOpen() && (loading() || hasSearched())) {\n <div class=\"geo-map-search__results\" aria-live=\"polite\">\n @if (loading()) {\n <p class=\"geo-map-search__hint\">\u0110ang t\u00ECm ki\u1EBFm\u2026</p>\n } @else if (!results().length) {\n <p class=\"geo-map-search__hint\">{{ emptyText() }}</p>\n } @else {\n <ul class=\"geo-map-search__list\">\n @for (item of results(); track item.id) {\n <li class=\"geo-map-search__result\">\n <div class=\"geo-map-search__result-head\">\n <span class=\"geo-map-search__result-map\">{{ mapLabel(item) }}</span>\n <button\n type=\"button\"\n class=\"geo-map-search__detail-link\"\n (click)=\"selectResult(item)\"\n >\n Chi ti\u1EBFt\n </button>\n </div>\n @if (item.parcel; as parcel) {\n <dl class=\"geo-map-search__result-meta\">\n @if (parcel.ward) {\n <div class=\"geo-map-search__result-row\">\n <dt>X\u00E3:</dt>\n <dd>{{ parcel.ward }}</dd>\n </div>\n }\n @if (parcel.province) {\n <div class=\"geo-map-search__result-row\">\n <dt>T\u1EC9nh:</dt>\n <dd>{{ parcel.province }}</dd>\n </div>\n }\n @if (parcel.area) {\n <div class=\"geo-map-search__result-row\">\n <dt>Di\u1EC7n t\u00EDch:</dt>\n <dd>{{ parcel.area }}</dd>\n </div>\n }\n </dl>\n } @else if (item.subtitle) {\n <p class=\"geo-map-search__result-sub\">{{ item.subtitle }}</p>\n }\n </li>\n }\n </ul>\n\n @if (resolvedTotal() > pageSize()) {\n <geo-pagination\n class=\"geo-map-search__paging\"\n [(pageIndex)]=\"pageIndex\"\n [(pageSize)]=\"pageSize\"\n [total]=\"resolvedTotal()\"\n size=\"small\"\n [simple]=\"true\"\n />\n }\n }\n </div>\n }\n </div>\n </section>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-search-host{display:none}.geo-map-search-host--open{display:block}.geo-map-search{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);width:min(420px,100vw - 32px);max-height:min(640px,82vh);overflow:hidden;display:flex;flex-direction:column}.geo-map-search__header{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 40px 12px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-search__title{margin:0;max-width:100%;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;line-height:1.35;color:var(--geo-color-neutral-900)}.geo-map-search__header .geo-map-search__icon-btn{position:absolute;top:8px;right:8px}.geo-map-search__icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:32px;min-width:32px;min-height:32px;padding:0;color:var(--geo-color-neutral-500)}.geo-map-search__icon-btn:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn:active:not(:disabled){transform:scale(.98)}.geo-map-search__icon-btn:disabled{opacity:.45;cursor:not-allowed}.geo-map-search__icon-btn--active,.geo-map-search__icon-btn--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn--icon-only{width:40px;padding:0}.geo-map-search__icon-btn--sm{width:28px;min-width:28px;min-height:28px}.geo-map-search__body{display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px;overflow:auto}.geo-map-search__modes{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 12px}.geo-map-search__mode{display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:104px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--geo-color-primary-default);font:inherit}.geo-map-search__mode:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:var(--geo-radius)}.geo-map-search__mode-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--geo-color-primary-default);background:var(--geo-color-primary-soft, var(--geo-color-primary-surface-light));color:var(--geo-color-primary-default);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.geo-map-search__mode:hover .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-hover)}.geo-map-search__mode--active .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-active);box-shadow:inset 0 0 0 1px var(--geo-color-primary-default)}.geo-map-search__mode-label{text-align:center;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-medium);line-height:1.3;color:var(--geo-color-primary-default)}.geo-map-search__form{display:flex;flex-direction:column;gap:12px;padding-top:4px;border-top:1px solid var(--geo-color-neutral-100)}.geo-map-search__form-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;padding:0 28px}.geo-map-search__form-title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);letter-spacing:.03em;color:var(--geo-color-neutral-900)}.geo-map-search__form-head .geo-map-search__icon-btn{position:absolute;top:50%;right:0;transform:translateY(-50%)}.geo-map-search__fields{display:flex;flex-direction:column;gap:10px}.geo-map-search__fields--inline,.geo-map-search__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.geo-map-search__actions>geo-button{display:block;min-width:0}.geo-map-search__actions .geo-button{width:100%}.geo-map-search__results{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid var(--geo-color-primary-default)}.geo-map-search__hint{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.geo-map-search__result{display:flex;flex-direction:column;gap:8px;padding:0}.geo-map-search__result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.geo-map-search__result-map{font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.4}.geo-map-search__detail-link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default);text-decoration:none}.geo-map-search__detail-link:hover{text-decoration:underline}.geo-map-search__detail-link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-search__result-meta{margin:0;display:flex;flex-direction:column;gap:4px}.geo-map-search__result-row{display:grid;grid-template-columns:88px 1fr;gap:8px;align-items:baseline}.geo-map-search__result-row dt{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__result-row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-search__result-sub{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__paging{display:flex;justify-content:center;margin-top:2px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: GeoButtonComponent, selector: "geo-button", inputs: ["appearance", "color", "icon", "iconTheme", "iconPlacement", "iconOnly", "type", "disabled", "tooltip", "tooltipPlacement", "active", "title"], outputs: ["clicked"] }, { kind: "component", type: GeoIconComponent, selector: "geo-icon", inputs: ["type", "theme", "spin", "size", "color"] }, { kind: "component", type: GeoInputComponent, selector: "geo-input", inputs: ["label", "placeholder", "type", "disabled", "readonly", "required", "error", "errorMessage", "maxlength", "prefixIcon", "suffixIcon", "allowClear", "block", "width"], outputs: ["valueChange", "enterPressed"] }, { kind: "component", type: GeoPaginationComponent, selector: "geo-pagination", inputs: ["pageIndex", "pageSize", "total", "size", "simple", "hideOnSinglePage", "showSizeChanger", "pageSizeOptions"], outputs: ["pageIndexChange", "pageSizeChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
168
168
|
}
|
|
169
169
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: GeoMapSearchComponent, decorators: [{
|
|
170
170
|
type: Component,
|
|
@@ -177,6 +177,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
|
|
|
177
177
|
], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: {
|
|
178
178
|
class: 'geo-map-search-host',
|
|
179
179
|
'[class.geo-map-search-host--open]': 'open()',
|
|
180
|
-
}, template: "@if (open()) {\n <section class=\"geo-map-search\" aria-label=\"Tra c\u1EE9u th\u00F4ng tin quy ho\u1EA1ch\">\n <header class=\"geo-map-search__header\">\n <h3 class=\"geo-map-search__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn\"\n aria-label=\"\u0110\u00F3ng tra c\u1EE9u\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-search__body\">\n <div class=\"geo-map-search__modes\" role=\"listbox\" aria-label=\"H\u00ECnh th\u1EE9c tra c\u1EE9u\">\n @for (tile of modeTiles; track tile.id) {\n <button\n type=\"button\"\n class=\"geo-map-search__mode\"\n role=\"option\"\n [class.geo-map-search__mode--active]=\"formOpen() && mode() === tile.id\"\n [attr.aria-selected]=\"formOpen() && mode() === tile.id\"\n (click)=\"selectMode(tile.id)\"\n >\n <span class=\"geo-map-search__mode-icon\" aria-hidden=\"true\">\n <geo-icon [type]=\"tile.icon\" size=\"md\" />\n </span>\n <span class=\"geo-map-search__mode-label\">{{ tile.label }}</span>\n </button>\n }\n </div>\n\n @if (formOpen()) {\n <section class=\"geo-map-search__form\" [attr.aria-label]=\"modeHeading()\">\n <div class=\"geo-map-search__form-head\">\n <h4 class=\"geo-map-search__form-title\">{{ modeHeading() }}</h4>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn geo-map-search__icon-btn--sm\"\n aria-label=\"Thu g\u1ECDn form t\u00ECm ki\u1EBFm\"\n (click)=\"collapseForm()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </div>\n\n <div\n class=\"geo-map-search__fields\"\n [class.geo-map-search__fields--inline]=\"fieldsInline()\"\n >\n @for (field of fields(); track field.key) {\n <geo-input\n [label]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [type]=\"field.type ?? 'text'\"\n [ngModel]=\"fieldValue(field.key)\"\n (ngModelChange)=\"setField(field.key, $event)\"\n (enterPressed)=\"submit()\"\n [allowClear]=\"true\"\n [block]=\"true\"\n />\n }\n </div>\n\n <div class=\"geo-map-search__actions\">\n <geo-button\n appearance=\"primary\"\n icon=\"search\"\n [disabled]=\"loading()\"\n (clicked)=\"submit()\"\n >\n T\u00ECm ki\u1EBFm\n </geo-button>\n <geo-button\n appearance=\"secondary\"\n icon=\"reload\"\n (clicked)=\"onReset()\"\n >\n \u0110\u1EB7t l\u1EA1i\n </geo-button>\n </div>\n </section>\n }\n\n @if (formOpen() && (loading() || hasSearched())) {\n <div class=\"geo-map-search__results\" aria-live=\"polite\">\n @if (loading()) {\n <p class=\"geo-map-search__hint\">\u0110ang t\u00ECm ki\u1EBFm\u2026</p>\n } @else if (!results().length) {\n <p class=\"geo-map-search__hint\">{{ emptyText() }}</p>\n } @else {\n <ul class=\"geo-map-search__list\">\n @for (item of results(); track item.id) {\n <li class=\"geo-map-search__result\">\n <div class=\"geo-map-search__result-head\">\n <span class=\"geo-map-search__result-map\">{{ mapLabel(item) }}</span>\n <button\n type=\"button\"\n class=\"geo-map-search__detail-link\"\n (click)=\"selectResult(item)\"\n >\n Chi ti\u1EBFt\n </button>\n </div>\n @if (item.parcel; as parcel) {\n <dl class=\"geo-map-search__result-meta\">\n @if (parcel.ward) {\n <div class=\"geo-map-search__result-row\">\n <dt>X\u00E3:</dt>\n <dd>{{ parcel.ward }}</dd>\n </div>\n }\n @if (parcel.province) {\n <div class=\"geo-map-search__result-row\">\n <dt>T\u1EC9nh:</dt>\n <dd>{{ parcel.province }}</dd>\n </div>\n }\n @if (parcel.area) {\n <div class=\"geo-map-search__result-row\">\n <dt>Di\u1EC7n t\u00EDch:</dt>\n <dd>{{ parcel.area }}</dd>\n </div>\n }\n </dl>\n } @else if (item.subtitle) {\n <p class=\"geo-map-search__result-sub\">{{ item.subtitle }}</p>\n }\n </li>\n }\n </ul>\n\n @if (resolvedTotal() > pageSize()) {\n <geo-pagination\n class=\"geo-map-search__paging\"\n [(pageIndex)]=\"pageIndex\"\n [(pageSize)]=\"pageSize\"\n [total]=\"resolvedTotal()\"\n size=\"small\"\n [simple]=\"true\"\n />\n }\n }\n </div>\n }\n </div>\n </section>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-search-host{display:none}.geo-map-search-host--open{display:block}.geo-map-search{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);width:min(420px,100vw - 32px);max-height:min(640px,82vh);overflow:hidden;display:flex;flex-direction:column}.geo-map-search__header{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 40px 12px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-search__title{margin:0;max-width:100%;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;line-height:1.35;color:var(--geo-color-neutral-900)}.geo-map-search__header .geo-map-search__icon-btn{position:absolute;top:8px;right:8px}.geo-map-search__icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:32px;min-width:32px;min-height:32px;padding:0;color:var(--geo-color-neutral-500)}.geo-map-search__icon-btn:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn:active:not(:disabled){transform:scale(.98)}.geo-map-search__icon-btn:disabled{opacity:.45;cursor:not-allowed}.geo-map-search__icon-btn--active,.geo-map-search__icon-btn--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn--icon-only{width:32px;padding:0}.geo-map-search__icon-btn--sm{width:28px;min-width:28px;min-height:28px}.geo-map-search__body{display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px;overflow:auto}.geo-map-search__modes{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 12px}.geo-map-search__mode{display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:104px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--geo-color-primary-default);font:inherit}.geo-map-search__mode:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:var(--geo-radius)}.geo-map-search__mode-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--geo-color-primary-default);background:var(--geo-color-primary-soft, var(--geo-color-primary-surface-light));color:var(--geo-color-primary-default);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.geo-map-search__mode:hover .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-hover)}.geo-map-search__mode--active .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-active);box-shadow:inset 0 0 0 1px var(--geo-color-primary-default)}.geo-map-search__mode-label{text-align:center;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-medium);line-height:1.3;color:var(--geo-color-primary-default)}.geo-map-search__form{display:flex;flex-direction:column;gap:12px;padding-top:4px;border-top:1px solid var(--geo-color-neutral-100)}.geo-map-search__form-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;padding:0 28px}.geo-map-search__form-title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);letter-spacing:.03em;color:var(--geo-color-neutral-900)}.geo-map-search__form-head .geo-map-search__icon-btn{position:absolute;top:50%;right:0;transform:translateY(-50%)}.geo-map-search__fields{display:flex;flex-direction:column;gap:10px}.geo-map-search__fields--inline,.geo-map-search__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.geo-map-search__actions>geo-button{display:block;min-width:0}.geo-map-search__actions .geo-button{width:100%}.geo-map-search__results{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid var(--geo-color-primary-default)}.geo-map-search__hint{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.geo-map-search__result{display:flex;flex-direction:column;gap:8px;padding:0}.geo-map-search__result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.geo-map-search__result-map{font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.4}.geo-map-search__detail-link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default);text-decoration:none}.geo-map-search__detail-link:hover{text-decoration:underline}.geo-map-search__detail-link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-search__result-meta{margin:0;display:flex;flex-direction:column;gap:4px}.geo-map-search__result-row{display:grid;grid-template-columns:88px 1fr;gap:8px;align-items:baseline}.geo-map-search__result-row dt{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__result-row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-search__result-sub{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__paging{display:flex;justify-content:center;margin-top:2px}\n"] }]
|
|
180
|
+
}, template: "@if (open()) {\n <section class=\"geo-map-search\" aria-label=\"Tra c\u1EE9u th\u00F4ng tin quy ho\u1EA1ch\">\n <header class=\"geo-map-search__header\">\n <h3 class=\"geo-map-search__title\">{{ title() }}</h3>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn\"\n aria-label=\"\u0110\u00F3ng tra c\u1EE9u\"\n (click)=\"close()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </header>\n\n <div class=\"geo-map-search__body\">\n <div class=\"geo-map-search__modes\" role=\"listbox\" aria-label=\"H\u00ECnh th\u1EE9c tra c\u1EE9u\">\n @for (tile of modeTiles; track tile.id) {\n <button\n type=\"button\"\n class=\"geo-map-search__mode\"\n role=\"option\"\n [class.geo-map-search__mode--active]=\"formOpen() && mode() === tile.id\"\n [attr.aria-selected]=\"formOpen() && mode() === tile.id\"\n (click)=\"selectMode(tile.id)\"\n >\n <span class=\"geo-map-search__mode-icon\" aria-hidden=\"true\">\n <geo-icon [type]=\"tile.icon\" size=\"md\" />\n </span>\n <span class=\"geo-map-search__mode-label\">{{ tile.label }}</span>\n </button>\n }\n </div>\n\n @if (formOpen()) {\n <section class=\"geo-map-search__form\" [attr.aria-label]=\"modeHeading()\">\n <div class=\"geo-map-search__form-head\">\n <h4 class=\"geo-map-search__form-title\">{{ modeHeading() }}</h4>\n <button\n type=\"button\"\n class=\"geo-map-search__icon-btn geo-map-search__icon-btn--sm\"\n aria-label=\"Thu g\u1ECDn form t\u00ECm ki\u1EBFm\"\n (click)=\"collapseForm()\"\n >\n <geo-icon type=\"close\" size=\"sm\" />\n </button>\n </div>\n\n <div\n class=\"geo-map-search__fields\"\n [class.geo-map-search__fields--inline]=\"fieldsInline()\"\n >\n @for (field of fields(); track field.key) {\n <geo-input\n [label]=\"field.label\"\n [placeholder]=\"field.placeholder\"\n [type]=\"field.type ?? 'text'\"\n [ngModel]=\"fieldValue(field.key)\"\n (ngModelChange)=\"setField(field.key, $event)\"\n (enterPressed)=\"submit()\"\n [allowClear]=\"true\"\n [block]=\"true\"\n />\n }\n </div>\n\n <div class=\"geo-map-search__actions\">\n <geo-button\n appearance=\"primary\"\n icon=\"search\"\n [disabled]=\"loading()\"\n (clicked)=\"submit()\"\n >\n T\u00ECm ki\u1EBFm\n </geo-button>\n <geo-button\n appearance=\"secondary\"\n icon=\"reload\"\n (clicked)=\"onReset()\"\n >\n \u0110\u1EB7t l\u1EA1i\n </geo-button>\n </div>\n </section>\n }\n\n @if (formOpen() && (loading() || hasSearched())) {\n <div class=\"geo-map-search__results\" aria-live=\"polite\">\n @if (loading()) {\n <p class=\"geo-map-search__hint\">\u0110ang t\u00ECm ki\u1EBFm\u2026</p>\n } @else if (!results().length) {\n <p class=\"geo-map-search__hint\">{{ emptyText() }}</p>\n } @else {\n <ul class=\"geo-map-search__list\">\n @for (item of results(); track item.id) {\n <li class=\"geo-map-search__result\">\n <div class=\"geo-map-search__result-head\">\n <span class=\"geo-map-search__result-map\">{{ mapLabel(item) }}</span>\n <button\n type=\"button\"\n class=\"geo-map-search__detail-link\"\n (click)=\"selectResult(item)\"\n >\n Chi ti\u1EBFt\n </button>\n </div>\n @if (item.parcel; as parcel) {\n <dl class=\"geo-map-search__result-meta\">\n @if (parcel.ward) {\n <div class=\"geo-map-search__result-row\">\n <dt>X\u00E3:</dt>\n <dd>{{ parcel.ward }}</dd>\n </div>\n }\n @if (parcel.province) {\n <div class=\"geo-map-search__result-row\">\n <dt>T\u1EC9nh:</dt>\n <dd>{{ parcel.province }}</dd>\n </div>\n }\n @if (parcel.area) {\n <div class=\"geo-map-search__result-row\">\n <dt>Di\u1EC7n t\u00EDch:</dt>\n <dd>{{ parcel.area }}</dd>\n </div>\n }\n </dl>\n } @else if (item.subtitle) {\n <p class=\"geo-map-search__result-sub\">{{ item.subtitle }}</p>\n }\n </li>\n }\n </ul>\n\n @if (resolvedTotal() > pageSize()) {\n <geo-pagination\n class=\"geo-map-search__paging\"\n [(pageIndex)]=\"pageIndex\"\n [(pageSize)]=\"pageSize\"\n [total]=\"resolvedTotal()\"\n size=\"small\"\n [simple]=\"true\"\n />\n }\n }\n </div>\n }\n </div>\n </section>\n}\n", styles: ["@charset \"UTF-8\";.geo-map-search-host{display:none}.geo-map-search-host--open{display:block}.geo-map-search{border:1px solid var(--geo-color-border-default);border-radius:var(--geo-radius-lg);background:var(--geo-color-surface-elevated);box-shadow:var(--geo-shadow-sm);width:min(420px,100vw - 32px);max-height:min(640px,82vh);overflow:hidden;display:flex;flex-direction:column}.geo-map-search__header{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 40px 12px;border-bottom:1px solid var(--geo-color-neutral-100)}.geo-map-search__title{margin:0;max-width:100%;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);letter-spacing:.02em;line-height:1.35;color:var(--geo-color-neutral-900)}.geo-map-search__header .geo-map-search__icon-btn{position:absolute;top:8px;right:8px}.geo-map-search__icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:40px;min-height:40px;border:0;border-radius:var(--geo-radius);background:transparent;color:var(--geo-color-neutral-700);font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);line-height:1;cursor:pointer;transition:background-color .15s ease,color .15s ease,transform .1s ease;width:32px;min-width:32px;min-height:32px;padding:0;color:var(--geo-color-neutral-500)}.geo-map-search__icon-btn:hover:not(:disabled){background:var(--geo-color-primary-soft-hover);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn:active:not(:disabled){transform:scale(.98)}.geo-map-search__icon-btn:disabled{opacity:.45;cursor:not-allowed}.geo-map-search__icon-btn--active,.geo-map-search__icon-btn--checked{background:var(--geo-color-primary-soft-active);color:var(--geo-color-primary-default)}.geo-map-search__icon-btn--icon-only{width:40px;padding:0}.geo-map-search__icon-btn--sm{width:28px;min-width:28px;min-height:28px}.geo-map-search__body{display:flex;flex-direction:column;gap:14px;padding:14px 16px 16px;overflow:auto}.geo-map-search__modes{display:flex;flex-wrap:wrap;justify-content:center;gap:14px 12px}.geo-map-search__mode{display:inline-flex;flex-direction:column;align-items:center;gap:6px;width:104px;padding:0;border:0;background:transparent;cursor:pointer;color:var(--geo-color-primary-default);font:inherit}.geo-map-search__mode:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:var(--geo-radius)}.geo-map-search__mode-icon{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;border:1.5px solid var(--geo-color-primary-default);background:var(--geo-color-primary-soft, var(--geo-color-primary-surface-light));color:var(--geo-color-primary-default);transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}.geo-map-search__mode:hover .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-hover)}.geo-map-search__mode--active .geo-map-search__mode-icon{background:var(--geo-color-primary-soft-active);box-shadow:inset 0 0 0 1px var(--geo-color-primary-default)}.geo-map-search__mode-label{text-align:center;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-medium);line-height:1.3;color:var(--geo-color-primary-default)}.geo-map-search__form{display:flex;flex-direction:column;gap:12px;padding-top:4px;border-top:1px solid var(--geo-color-neutral-100)}.geo-map-search__form-head{position:relative;display:flex;align-items:center;justify-content:center;min-height:28px;padding:0 28px}.geo-map-search__form-title{margin:0;text-align:center;text-transform:uppercase;font-size:var(--geo-font-size-caption);font-weight:var(--geo-font-weight-semibold);letter-spacing:.03em;color:var(--geo-color-neutral-900)}.geo-map-search__form-head .geo-map-search__icon-btn{position:absolute;top:50%;right:0;transform:translateY(-50%)}.geo-map-search__fields{display:flex;flex-direction:column;gap:10px}.geo-map-search__fields--inline,.geo-map-search__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.geo-map-search__actions>geo-button{display:block;min-width:0}.geo-map-search__actions .geo-button{width:100%}.geo-map-search__results{display:flex;flex-direction:column;gap:10px;padding-top:4px;border-top:1px solid var(--geo-color-primary-default)}.geo-map-search__hint{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.geo-map-search__result{display:flex;flex-direction:column;gap:8px;padding:0}.geo-map-search__result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.geo-map-search__result-map{font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900);line-height:1.4}.geo-map-search__detail-link{flex-shrink:0;padding:0;border:0;background:transparent;cursor:pointer;font:inherit;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-medium);color:var(--geo-color-primary-default);text-decoration:none}.geo-map-search__detail-link:hover{text-decoration:underline}.geo-map-search__detail-link:focus-visible{outline:2px solid var(--geo-color-primary-default);outline-offset:2px;border-radius:2px}.geo-map-search__result-meta{margin:0;display:flex;flex-direction:column;gap:4px}.geo-map-search__result-row{display:grid;grid-template-columns:88px 1fr;gap:8px;align-items:baseline}.geo-map-search__result-row dt{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__result-row dd{margin:0;font-size:var(--geo-font-size-body-small);font-weight:var(--geo-font-weight-semibold);color:var(--geo-color-neutral-900)}.geo-map-search__result-sub{margin:0;font-size:var(--geo-font-size-caption);color:var(--geo-color-neutral-500)}.geo-map-search__paging{display:flex;justify-content:center;margin-top:2px}\n"] }]
|
|
181
181
|
}] });
|
|
182
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1zZWFyY2gvZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1zZWFyY2gvZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7QUFvQjFGLE1BQU0sVUFBVSxHQUFxQjtJQUNuQyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO0lBQ25ELEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtJQUNsRSxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUs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TUFBTSxFQUFFLFdBQVcsQ0FBQztRQUN2QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQztRQUN6QyxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLGlCQUFpQixLQUFLLElBQUksR0FBRyxhQUFhLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO3dHQXRGVSxxQkFBcUI7NEZBQXJCLHFCQUFxQixvK0NDN0lsQyxtbUxBcUpBLDY0TER2QkksV0FBVywrVkFDWCxrQkFBa0Isc09BQ2xCLGdCQUFnQix5R0FDaEIsaUJBQWlCLGdSQUNqQixzQkFBc0I7OzRGQVdiLHFCQUFxQjtrQkFuQmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQO3dCQUNQLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3FCQUN2QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QixtQ0FBbUMsRUFBRSxRQUFRO3FCQUM5QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEdlb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1idXR0b24vZ2VvLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2VvSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1pY29uL2dlby1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHZW9JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1pbnB1dC9nZW8taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEdlb1BhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9nZW8tcGFnaW5hdGlvbi9nZW8tcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUge1xuICBHZW9NYXBTZWFyY2hNb2RlLFxuICBHZW9NYXBTZWFyY2hRdWVyeSxcbiAgR2VvTWFwU2VhcmNoUmVzdWx0SXRlbSxcbn0gZnJvbSAnLi4vLi4vZ2VvLW1hcC50eXBlcyc7XG5cbmludGVyZmFjZSBTZWFyY2hGaWVsZERlZiB7XG4gIGtleTogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICB0eXBlPzogJ3RleHQnIHwgJ251bWJlcic7XG59XG5cbmludGVyZmFjZSBTZWFyY2hNb2RlVGlsZSB7XG4gIGlkOiBHZW9NYXBTZWFyY2hNb2RlO1xuICBsYWJlbDogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG59XG5cbmNvbnN0IE1PREVfVElMRVM6IFNlYXJjaE1vZGVUaWxlW10gPSBbXG4gIHsgaWQ6ICdvd25lcicsIGxhYmVsOiAnQ2jhu6cgc+G7rSBk4bulbmcnLCBpY29uOiAndXNlcicgfSxcbiAgeyBpZDogJ2NlcnRpZmljYXRlJywgbGFiZWw6ICdHaeG6pXkgY2jhu6luZyBuaOG6rW4nLCBpY29uOiAnZmlsZS10ZXh0JyB9LFxuICB7IGlkOiAnY29vcmRpbmF0ZXMnLCBsYWJlbDogJ1Thu41hIMSR4buZJywgaWNvbjogJ2FpbScgfSxcbiAgeyBpZDogJ3BhcmNlbCcsIGxhYmVsOiAnVGjhu61hIMSR4bqldCcsIGljb246ICdob21lJyB9LFxuICB7IGlkOiAnYWRkcmVzcycsIGxhYmVsOiAnxJDhu4thIGNo4buJJywgaWNvbjogJ2Vudmlyb25tZW50JyB9LFxuXTtcblxuY29uc3QgTU9ERV9IRUFESU5HUzogUmVjb3JkPEdlb01hcFNlYXJjaE1vZGUsIHN0cmluZz4gPSB7XG4gIG93bmVyOiAnVMOsbSB0aGVvIGNo4bunIHPhu60gZOG7pW5nJyxcbiAgY2VydGlmaWNhdGU6ICdUw6xtIHRoZW8gZ2nhuqV5IGNo4bupbmcgbmjhuq1uJyxcbiAgY29vcmRpbmF0ZXM6ICdUw6xtIHRoZW8gdOG7jWEgxJHhu5knLFxuICBhZGRyZXNzOiAnVMOsbSB0aGVvIMSR4buLYSBjaOG7iScsXG4gIHBhcmNlbDogJ1TDrG0gdGhlbyB0aOG7rWEgxJHhuqV0Jyxcbn07XG5cbmNvbnN0IE1PREVfRklFTERTOiBSZWNvcmQ8R2VvTWFwU2VhcmNoTW9kZSwgU2VhcmNoRmllbGREZWZbXT4gPSB7XG4gIG93bmVyOiBbXG4gICAge1xuICAgICAga2V5OiAnaWROdW1iZXInLFxuICAgICAgbGFiZWw6ICdDTU5EIC8gQ0NDRCcsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIENNTkQvQ0NDRCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdvd25lck5hbWUnLFxuICAgICAgbGFiZWw6ICdUw6puIGNo4bunIHPhu60gZOG7pW5nJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHTDqm4gY2jhu6cgc+G7rSBk4bulbmcnLFxuICAgIH0sXG4gIF0sXG4gIGNlcnRpZmljYXRlOiBbXG4gICAge1xuICAgICAga2V5OiAnc2VyaWFsJyxcbiAgICAgIGxhYmVsOiAnU+G7kSBzZXJpYWwgR0NOJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHPhu5Egc2VyaWFsJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2Jvb2tOdW1iZXInLFxuICAgICAgbGFiZWw6ICdT4buRIHbDoG8gc+G7lScsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIHbDoG8gc+G7lScsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdkb3NzaWVyQ29kZScsXG4gICAgICBsYWJlbDogJ03DoyBo4buTIHPGoSBn4buRYycsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBtw6MgaOG7kyBzxqEgZ+G7kWMnLFxuICAgIH0sXG4gIF0sXG4gIGNvb3JkaW5hdGVzOiBbXG4gICAge1xuICAgICAga2V5OiAnbG9uZ2l0dWRlJyxcbiAgICAgIGxhYmVsOiAnS2luaCDEkeG7mScsXG4gICAgICBwbGFjZWhvbGRlcjogJ1bDrSBk4bulOiAxMDguNDUnLFxuICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdsYXRpdHVkZScsXG4gICAgICBsYWJlbDogJ1bEqSDEkeG7mScsXG4gICAgICBwbGFjZWhvbGRlcjogJ1bDrSBk4bulOiAxMS45NCcsXG4gICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICB9LFxuICBdLFxuICBhZGRyZXNzOiBbXG4gICAge1xuICAgICAga2V5OiAnYWRkcmVzcycsXG4gICAgICBsYWJlbDogJ8SQ4buLYSBjaOG7iSAvIHTDqm4gxJHGsOG7nW5nJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIMSR4buLYSBjaOG7iSBob+G6t2MgdMOqbiDEkcaw4budbmcnLFxuICAgIH0sXG4gIF0sXG4gIHBhcmNlbDogW1xuICAgIHtcbiAgICAgIGtleTogJ3NoZWV0TnVtYmVyJyxcbiAgICAgIGxhYmVsOiAnU+G7kSB04budJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHPhu5EgdOG7nSAoVkQ6IDIwKScsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdwYXJjZWxOdW1iZXInLFxuICAgICAgbGFiZWw6ICdT4buRIHRo4butYScsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIHRo4butYSAoVkQ6IDE5KScsXG4gICAgfSxcbiAgXSxcbn07XG5cbi8qKlxuICogTWFwIHNlYXJjaCBwYW5lbCBmb3IgVENRSC434oCTMTEgKGhvc3Qgc3VwcGxpZXMgcmVzdWx0cyAvIEFQSSkuXG4gKlxuICogQHN1bW1hcnkgUGFuZWwgdHJhIGPhu6l1IHRo4butYSDEkeG6pXQgdGhlbyBuaGnhu4F1IHRpw6p1IGNow60uXG4gKiBAd2hlblRvVXNlIEPhu5VuZyAvIG3DoG4gdHJhIGPhu6l1IGLhuqNuIMSR4buTIHF1eSBob+G6oWNoLlxuICogQGRvTm90VXNlV2hlbiBHbG9iYWwgc2l0ZSBzZWFyY2ggb3V0c2lkZSB0aGUgbWFwIGNvbnRleHQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dlby1tYXAtc2VhcmNoJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLFxuICAgIEdlb0J1dHRvbkNvbXBvbmVudCxcbiAgICBHZW9JY29uQ29tcG9uZW50LFxuICAgIEdlb0lucHV0Q29tcG9uZW50LFxuICAgIEdlb1BhZ2luYXRpb25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW8tbWFwLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9nZW8tbWFwLXNlYXJjaC5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdnZW8tbWFwLXNlYXJjaC1ob3N0JyxcbiAgICAnW2NsYXNzLmdlby1tYXAtc2VhcmNoLWhvc3QtLW9wZW5dJzogJ29wZW4oKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEdlb01hcFNlYXJjaENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IG9wZW4gPSBtb2RlbChmYWxzZSk7XG4gIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQoJ1RyYSBj4bupdSB0aMO0bmcgdGluIHF1eSBob+G6oWNoIHRoZW8nKTtcbiAgcmVhZG9ubHkgbW9kZSA9IG1vZGVsPEdlb01hcFNlYXJjaE1vZGU+KCdwYXJjZWwnKTtcbiAgcmVhZG9ubHkgcmVzdWx0cyA9IGlucHV0PEdlb01hcFNlYXJjaFJlc3VsdEl0ZW1bXT4oW10pO1xuICByZWFkb25seSBsb2FkaW5nID0gaW5wdXQoZmFsc2UpO1xuICByZWFkb25seSBwYWdlSW5kZXggPSBtb2RlbCgxKTtcbiAgcmVhZG9ubHkgcGFnZVNpemUgPSBtb2RlbCg1KTtcbiAgcmVhZG9ubHkgdG90YWwgPSBpbnB1dCgwKTtcbiAgcmVhZG9ubHkgZW1wdHlUZXh0ID0gaW5wdXQoJ0NoxrBhIGPDsyBr4bq/dCBxdeG6oyB0cmEgY+G7qXUuJyk7XG5cbiAgcmVhZG9ubHkgc2VhcmNoID0gb3V0cHV0PEdlb01hcFNlYXJjaFF1ZXJ5PigpO1xuICByZWFkb25seSByZXNldCA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSByZXN1bHRTZWxlY3QgPSBvdXRwdXQ8R2VvTWFwU2VhcmNoUmVzdWx0SXRlbT4oKTtcbiAgcmVhZG9ubHkgY2xvc2VkID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgcmVhZG9ubHkgbW9kZVRpbGVzID0gTU9ERV9USUxFUztcbiAgcmVhZG9ubHkgdmFsdWVzID0gc2lnbmFsPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KHt9KTtcbiAgLyoqIEZvcm0gZMaw4bubaSBsxrDhu5tpIGljb24g4oCUIHRodSBn4buNbiBi4bqxbmcgWCBj4bqhbmggdGnDqnUgxJHhu4EgZm9ybS4gKi9cbiAgcmVhZG9ubHkgZm9ybU9wZW4gPSBzaWduYWwoZmFsc2UpO1xuICByZWFkb25seSBoYXNTZWFyY2hlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcmVhZG9ubHkgZmllbGRzID0gY29tcHV0ZWQoKCkgPT4gTU9ERV9GSUVMRFNbdGhpcy5tb2RlKCldID8/IFtdKTtcbiAgcmVhZG9ubHkgbW9kZUhlYWRpbmcgPSBjb21wdXRlZChcbiAgICAoKSA9PiBNT0RFX0hFQURJTkdTW3RoaXMubW9kZSgpXSA/PyAnVMOsbSBraeG6v20nLFxuICApO1xuICByZWFkb25seSBmaWVsZHNJbmxpbmUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZpZWxkcygpLmxlbmd0aCA9PT0gMik7XG5cbiAgcmVhZG9ubHkgcmVzb2x2ZWRUb3RhbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB0b3RhbCA9IHRoaXMudG90YWwoKTtcbiAgICByZXR1cm4gdG90YWwgPiAwID8gdG90YWwgOiB0aGlzLnJlc3VsdHMoKS5sZW5ndGg7XG4gIH0pO1xuXG4gIHNlbGVjdE1vZGUobW9kZTogR2VvTWFwU2VhcmNoTW9kZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1vZGUoKSAhPT0gbW9kZSkge1xuICAgICAgdGhpcy5tb2RlLnNldChtb2RlKTtcbiAgICAgIHRoaXMudmFsdWVzLnNldCh7fSk7XG4gICAgICB0aGlzLmhhc1NlYXJjaGVkLnNldChmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMuZm9ybU9wZW4uc2V0KHRydWUpO1xuICB9XG5cbiAgY29sbGFwc2VGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybU9wZW4uc2V0KGZhbHNlKTtcbiAgfVxuXG4gIHNldEZpZWxkKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZXMudXBkYXRlKChjdXJyZW50KSA9PiAoeyAuLi5jdXJyZW50LCBba2V5XTogdmFsdWUgfSkpO1xuICB9XG5cbiAgZmllbGRWYWx1ZShrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzKClba2V5XSA/PyAnJztcbiAgfVxuXG4gIHN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhc1NlYXJjaGVkLnNldCh0cnVlKTtcbiAgICB0aGlzLnNlYXJjaC5lbWl0KHtcbiAgICAgIG1vZGU6IHRoaXMubW9kZSgpLFxuICAgICAgdmFsdWVzOiB7IC4uLnRoaXMudmFsdWVzKCkgfSxcbiAgICB9KTtcbiAgfVxuXG4gIG9uUmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZXMuc2V0KHt9KTtcbiAgICB0aGlzLnBhZ2VJbmRleC5zZXQoMSk7XG4gICAgdGhpcy5oYXNTZWFyY2hlZC5zZXQoZmFsc2UpO1xuICAgIHRoaXMucmVzZXQuZW1pdCgpO1xuICB9XG5cbiAgc2VsZWN0UmVzdWx0KGl0ZW06IEdlb01hcFNlYXJjaFJlc3VsdEl0ZW0pOiB2b2lkIHtcbiAgICB0aGlzLnJlc3VsdFNlbGVjdC5lbWl0KGl0ZW0pO1xuICB9XG5cbiAgbWFwTGFiZWwoaXRlbTogR2VvTWFwU2VhcmNoUmVzdWx0SXRlbSk6IHN0cmluZyB7XG4gICAgY29uc3Qgc2hlZXQgPSBpdGVtLnBhcmNlbD8uc2hlZXROdW1iZXI7XG4gICAgY29uc3QgcGFyY2VsID0gaXRlbS5wYXJjZWw/LnBhcmNlbE51bWJlcjtcbiAgICBpZiAoc2hlZXQgfHwgcGFyY2VsKSB7XG4gICAgICByZXR1cm4gYELhuqNuIMSR4buTOiBz4buRIHThu50gJHtzaGVldCA/PyAn4oCUJ30sIHPhu5EgdGjhu61hICR7cGFyY2VsID8/ICfigJQnfWA7XG4gICAgfVxuICAgIHJldHVybiBpdGVtLnRpdGxlO1xuICB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuLnNldChmYWxzZSk7XG4gICAgdGhpcy5mb3JtT3Blbi5zZXQoZmFsc2UpO1xuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgfVxufVxuIiwiQGlmIChvcGVuKCkpIHtcbiAgPHNlY3Rpb24gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaFwiIGFyaWEtbGFiZWw9XCJUcmEgY+G7qXUgdGjDtG5nIHRpbiBxdXkgaG/huqFjaFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faGVhZGVyXCI+XG4gICAgICA8aDMgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fdGl0bGVcIj57eyB0aXRsZSgpIH19PC9oMz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX2ljb24tYnRuXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIsSQw7NuZyB0cmEgY+G7qXVcIlxuICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICA+XG4gICAgICAgIDxnZW8taWNvbiB0eXBlPVwiY2xvc2VcIiBzaXplPVwic21cIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX2JvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZXNcIiByb2xlPVwibGlzdGJveFwiIGFyaWEtbGFiZWw9XCJIw6xuaCB0aOG7qWMgdHJhIGPhu6l1XCI+XG4gICAgICAgIEBmb3IgKHRpbGUgb2YgbW9kZVRpbGVzOyB0cmFjayB0aWxlLmlkKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19tb2RlXCJcbiAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtc2VhcmNoX19tb2RlLS1hY3RpdmVdPVwiZm9ybU9wZW4oKSAmJiBtb2RlKCkgPT09IHRpbGUuaWRcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJmb3JtT3BlbigpICYmIG1vZGUoKSA9PT0gdGlsZS5pZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0TW9kZSh0aWxlLmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZS1pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgIDxnZW8taWNvbiBbdHlwZV09XCJ0aWxlLmljb25cIiBzaXplPVwibWRcIiAvPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZS1sYWJlbFwiPnt7IHRpbGUubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuXG4gICAgICBAaWYgKGZvcm1PcGVuKCkpIHtcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybVwiIFthdHRyLmFyaWEtbGFiZWxdPVwibW9kZUhlYWRpbmcoKVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybS1oZWFkXCI+XG4gICAgICAgICAgICA8aDQgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybS10aXRsZVwiPnt7IG1vZGVIZWFkaW5nKCkgfX08L2g0PlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faWNvbi1idG4gZ2VvLW1hcC1zZWFyY2hfX2ljb24tYnRuLS1zbVwiXG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJUaHUgZ+G7jW4gZm9ybSB0w6xtIGtp4bq/bVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjb2xsYXBzZUZvcm0oKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxnZW8taWNvbiB0eXBlPVwiY2xvc2VcIiBzaXplPVwic21cIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19maWVsZHNcIlxuICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtc2VhcmNoX19maWVsZHMtLWlubGluZV09XCJmaWVsZHNJbmxpbmUoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQGZvciAoZmllbGQgb2YgZmllbGRzKCk7IHRyYWNrIGZpZWxkLmtleSkge1xuICAgICAgICAgICAgICA8Z2VvLWlucHV0XG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpZWxkLnR5cGUgPz8gJ3RleHQnXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJmaWVsZFZhbHVlKGZpZWxkLmtleSlcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldEZpZWxkKGZpZWxkLmtleSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGVudGVyUHJlc3NlZCk9XCJzdWJtaXQoKVwiXG4gICAgICAgICAgICAgICAgW2FsbG93Q2xlYXJdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2Jsb2NrXT1cInRydWVcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19hY3Rpb25zXCI+XG4gICAgICAgICAgICA8Z2VvLWJ1dHRvblxuICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgIGljb249XCJzZWFyY2hcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwibG9hZGluZygpXCJcbiAgICAgICAgICAgICAgKGNsaWNrZWQpPVwic3VibWl0KClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBUw6xtIGtp4bq/bVxuICAgICAgICAgICAgPC9nZW8tYnV0dG9uPlxuICAgICAgICAgICAgPGdlby1idXR0b25cbiAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgIGljb249XCJyZWxvYWRcIlxuICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvblJlc2V0KClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICDEkOG6t3QgbOG6oWlcbiAgICAgICAgICAgIDwvZ2VvLWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuXG4gICAgICBAaWYgKGZvcm1PcGVuKCkgJiYgKGxvYWRpbmcoKSB8fCBoYXNTZWFyY2hlZCgpKSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX3Jlc3VsdHNcIiBhcmlhLWxpdmU9XCJwb2xpdGVcIj5cbiAgICAgICAgICBAaWYgKGxvYWRpbmcoKSkge1xuICAgICAgICAgICAgPHAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faGludFwiPsSQYW5nIHTDrG0ga2nhur9t4oCmPC9wPlxuICAgICAgICAgIH0gQGVsc2UgaWYgKCFyZXN1bHRzKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19oaW50XCI+e3sgZW1wdHlUZXh0KCkgfX08L3A+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbGlzdFwiPlxuICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIHJlc3VsdHMoKTsgdHJhY2sgaXRlbS5pZCkge1xuICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19yZXN1bHRcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LWhlYWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LW1hcFwiPnt7IG1hcExhYmVsKGl0ZW0pIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZGV0YWlsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RSZXN1bHQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgQ2hpIHRp4bq/dFxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnBhcmNlbDsgYXMgcGFyY2VsKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkbCBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19yZXN1bHQtbWV0YVwiPlxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAocGFyY2VsLndhcmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+WMOjOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwud2FyZCB9fTwvZGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChwYXJjZWwucHJvdmluY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+VOG7iW5oOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwucHJvdmluY2UgfX08L2RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAocGFyY2VsLmFyZWEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+RGnhu4duIHTDrWNoOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwuYXJlYSB9fTwvZGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGw+XG4gICAgICAgICAgICAgICAgICB9IEBlbHNlIGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX3Jlc3VsdC1zdWJcIj57eyBpdGVtLnN1YnRpdGxlIH19PC9wPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgIEBpZiAocmVzb2x2ZWRUb3RhbCgpID4gcGFnZVNpemUoKSkge1xuICAgICAgICAgICAgICA8Z2VvLXBhZ2luYXRpb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19wYWdpbmdcIlxuICAgICAgICAgICAgICAgIFsocGFnZUluZGV4KV09XCJwYWdlSW5kZXhcIlxuICAgICAgICAgICAgICAgIFsocGFnZVNpemUpXT1cInBhZ2VTaXplXCJcbiAgICAgICAgICAgICAgICBbdG90YWxdPVwicmVzb2x2ZWRUb3RhbCgpXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgIFtzaW1wbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxufVxuIl19
|
|
182
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1zZWFyY2gvZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZ2VvLXVpL3NyYy9saWIvZmlnbWEvZ2VvLW1hcC9jaHJvbWUvZ2VvLW1hcC1zZWFyY2gvZ2VvLW1hcC1zZWFyY2guY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDOzs7QUFvQjFGLE1BQU0sVUFBVSxHQUFxQjtJQUNuQyxFQUFFLEVBQUUsRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFO0lBQ25ELEVBQUUsRUFBRSxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtJQUNsRSxFQUFFLEVBQUUsRUFBRSxhQUFhLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUs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TUFBTSxFQUFFLFdBQVcsQ0FBQztRQUN2QyxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLFlBQVksQ0FBQztRQUN6QyxJQUFJLEtBQUssSUFBSSxNQUFNLEVBQUUsQ0FBQztZQUNwQixPQUFPLGlCQUFpQixLQUFLLElBQUksR0FBRyxhQUFhLE1BQU0sSUFBSSxHQUFHLEVBQUUsQ0FBQztRQUNuRSxDQUFDO1FBQ0QsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDekIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUNyQixDQUFDO3dHQXRGVSxxQkFBcUI7NEZBQXJCLHFCQUFxQixvK0NDN0lsQyxtbUxBcUpBLDQ2TER2QkksV0FBVywrVkFDWCxrQkFBa0Isc09BQ2xCLGdCQUFnQix5R0FDaEIsaUJBQWlCLGdSQUNqQixzQkFBc0I7OzRGQVdiLHFCQUFxQjtrQkFuQmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBQ2QsSUFBSSxXQUNQO3dCQUNQLFdBQVc7d0JBQ1gsa0JBQWtCO3dCQUNsQixnQkFBZ0I7d0JBQ2hCLGlCQUFpQjt3QkFDakIsc0JBQXNCO3FCQUN2QixtQkFHZ0IsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUscUJBQXFCO3dCQUM1QixtQ0FBbUMsRUFBRSxRQUFRO3FCQUM5QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBpbnB1dCxcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEdlb0J1dHRvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1idXR0b24vZ2VvLWJ1dHRvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR2VvSWNvbkNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1pY29uL2dlby1pY29uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHZW9JbnB1dENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2dlby1pbnB1dC9nZW8taW5wdXQuY29tcG9uZW50JztcbmltcG9ydCB7IEdlb1BhZ2luYXRpb25Db21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9nZW8tcGFnaW5hdGlvbi9nZW8tcGFnaW5hdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHR5cGUge1xuICBHZW9NYXBTZWFyY2hNb2RlLFxuICBHZW9NYXBTZWFyY2hRdWVyeSxcbiAgR2VvTWFwU2VhcmNoUmVzdWx0SXRlbSxcbn0gZnJvbSAnLi4vLi4vZ2VvLW1hcC50eXBlcyc7XG5cbmludGVyZmFjZSBTZWFyY2hGaWVsZERlZiB7XG4gIGtleTogc3RyaW5nO1xuICBsYWJlbDogc3RyaW5nO1xuICBwbGFjZWhvbGRlcjogc3RyaW5nO1xuICB0eXBlPzogJ3RleHQnIHwgJ251bWJlcic7XG59XG5cbmludGVyZmFjZSBTZWFyY2hNb2RlVGlsZSB7XG4gIGlkOiBHZW9NYXBTZWFyY2hNb2RlO1xuICBsYWJlbDogc3RyaW5nO1xuICBpY29uOiBzdHJpbmc7XG59XG5cbmNvbnN0IE1PREVfVElMRVM6IFNlYXJjaE1vZGVUaWxlW10gPSBbXG4gIHsgaWQ6ICdvd25lcicsIGxhYmVsOiAnQ2jhu6cgc+G7rSBk4bulbmcnLCBpY29uOiAndXNlcicgfSxcbiAgeyBpZDogJ2NlcnRpZmljYXRlJywgbGFiZWw6ICdHaeG6pXkgY2jhu6luZyBuaOG6rW4nLCBpY29uOiAnZmlsZS10ZXh0JyB9LFxuICB7IGlkOiAnY29vcmRpbmF0ZXMnLCBsYWJlbDogJ1Thu41hIMSR4buZJywgaWNvbjogJ2FpbScgfSxcbiAgeyBpZDogJ3BhcmNlbCcsIGxhYmVsOiAnVGjhu61hIMSR4bqldCcsIGljb246ICdob21lJyB9LFxuICB7IGlkOiAnYWRkcmVzcycsIGxhYmVsOiAnxJDhu4thIGNo4buJJywgaWNvbjogJ2Vudmlyb25tZW50JyB9LFxuXTtcblxuY29uc3QgTU9ERV9IRUFESU5HUzogUmVjb3JkPEdlb01hcFNlYXJjaE1vZGUsIHN0cmluZz4gPSB7XG4gIG93bmVyOiAnVMOsbSB0aGVvIGNo4bunIHPhu60gZOG7pW5nJyxcbiAgY2VydGlmaWNhdGU6ICdUw6xtIHRoZW8gZ2nhuqV5IGNo4bupbmcgbmjhuq1uJyxcbiAgY29vcmRpbmF0ZXM6ICdUw6xtIHRoZW8gdOG7jWEgxJHhu5knLFxuICBhZGRyZXNzOiAnVMOsbSB0aGVvIMSR4buLYSBjaOG7iScsXG4gIHBhcmNlbDogJ1TDrG0gdGhlbyB0aOG7rWEgxJHhuqV0Jyxcbn07XG5cbmNvbnN0IE1PREVfRklFTERTOiBSZWNvcmQ8R2VvTWFwU2VhcmNoTW9kZSwgU2VhcmNoRmllbGREZWZbXT4gPSB7XG4gIG93bmVyOiBbXG4gICAge1xuICAgICAga2V5OiAnaWROdW1iZXInLFxuICAgICAgbGFiZWw6ICdDTU5EIC8gQ0NDRCcsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIENNTkQvQ0NDRCcsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdvd25lck5hbWUnLFxuICAgICAgbGFiZWw6ICdUw6puIGNo4bunIHPhu60gZOG7pW5nJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHTDqm4gY2jhu6cgc+G7rSBk4bulbmcnLFxuICAgIH0sXG4gIF0sXG4gIGNlcnRpZmljYXRlOiBbXG4gICAge1xuICAgICAga2V5OiAnc2VyaWFsJyxcbiAgICAgIGxhYmVsOiAnU+G7kSBzZXJpYWwgR0NOJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHPhu5Egc2VyaWFsJyxcbiAgICB9LFxuICAgIHtcbiAgICAgIGtleTogJ2Jvb2tOdW1iZXInLFxuICAgICAgbGFiZWw6ICdT4buRIHbDoG8gc+G7lScsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIHbDoG8gc+G7lScsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdkb3NzaWVyQ29kZScsXG4gICAgICBsYWJlbDogJ03DoyBo4buTIHPGoSBn4buRYycsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBtw6MgaOG7kyBzxqEgZ+G7kWMnLFxuICAgIH0sXG4gIF0sXG4gIGNvb3JkaW5hdGVzOiBbXG4gICAge1xuICAgICAga2V5OiAnbG9uZ2l0dWRlJyxcbiAgICAgIGxhYmVsOiAnS2luaCDEkeG7mScsXG4gICAgICBwbGFjZWhvbGRlcjogJ1bDrSBk4bulOiAxMDguNDUnLFxuICAgICAgdHlwZTogJ251bWJlcicsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdsYXRpdHVkZScsXG4gICAgICBsYWJlbDogJ1bEqSDEkeG7mScsXG4gICAgICBwbGFjZWhvbGRlcjogJ1bDrSBk4bulOiAxMS45NCcsXG4gICAgICB0eXBlOiAnbnVtYmVyJyxcbiAgICB9LFxuICBdLFxuICBhZGRyZXNzOiBbXG4gICAge1xuICAgICAga2V5OiAnYWRkcmVzcycsXG4gICAgICBsYWJlbDogJ8SQ4buLYSBjaOG7iSAvIHTDqm4gxJHGsOG7nW5nJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIMSR4buLYSBjaOG7iSBob+G6t2MgdMOqbiDEkcaw4budbmcnLFxuICAgIH0sXG4gIF0sXG4gIHBhcmNlbDogW1xuICAgIHtcbiAgICAgIGtleTogJ3NoZWV0TnVtYmVyJyxcbiAgICAgIGxhYmVsOiAnU+G7kSB04budJyxcbiAgICAgIHBsYWNlaG9sZGVyOiAnTmjhuq1wIHPhu5EgdOG7nSAoVkQ6IDIwKScsXG4gICAgfSxcbiAgICB7XG4gICAgICBrZXk6ICdwYXJjZWxOdW1iZXInLFxuICAgICAgbGFiZWw6ICdT4buRIHRo4butYScsXG4gICAgICBwbGFjZWhvbGRlcjogJ05o4bqtcCBz4buRIHRo4butYSAoVkQ6IDE5KScsXG4gICAgfSxcbiAgXSxcbn07XG5cbi8qKlxuICogTWFwIHNlYXJjaCBwYW5lbCBmb3IgVENRSC434oCTMTEgKGhvc3Qgc3VwcGxpZXMgcmVzdWx0cyAvIEFQSSkuXG4gKlxuICogQHN1bW1hcnkgUGFuZWwgdHJhIGPhu6l1IHRo4butYSDEkeG6pXQgdGhlbyBuaGnhu4F1IHRpw6p1IGNow60uXG4gKiBAd2hlblRvVXNlIEPhu5VuZyAvIG3DoG4gdHJhIGPhu6l1IGLhuqNuIMSR4buTIHF1eSBob+G6oWNoLlxuICogQGRvTm90VXNlV2hlbiBHbG9iYWwgc2l0ZSBzZWFyY2ggb3V0c2lkZSB0aGUgbWFwIGNvbnRleHQuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2dlby1tYXAtc2VhcmNoJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIEZvcm1zTW9kdWxlLFxuICAgIEdlb0J1dHRvbkNvbXBvbmVudCxcbiAgICBHZW9JY29uQ29tcG9uZW50LFxuICAgIEdlb0lucHV0Q29tcG9uZW50LFxuICAgIEdlb1BhZ2luYXRpb25Db21wb25lbnQsXG4gIF0sXG4gIHRlbXBsYXRlVXJsOiAnLi9nZW8tbWFwLXNlYXJjaC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9nZW8tbWFwLXNlYXJjaC5jb21wb25lbnQuc2NzcycsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdnZW8tbWFwLXNlYXJjaC1ob3N0JyxcbiAgICAnW2NsYXNzLmdlby1tYXAtc2VhcmNoLWhvc3QtLW9wZW5dJzogJ29wZW4oKScsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIEdlb01hcFNlYXJjaENvbXBvbmVudCB7XG4gIHJlYWRvbmx5IG9wZW4gPSBtb2RlbChmYWxzZSk7XG4gIHJlYWRvbmx5IHRpdGxlID0gaW5wdXQoJ1RyYSBj4bupdSB0aMO0bmcgdGluIHF1eSBob+G6oWNoIHRoZW8nKTtcbiAgcmVhZG9ubHkgbW9kZSA9IG1vZGVsPEdlb01hcFNlYXJjaE1vZGU+KCdwYXJjZWwnKTtcbiAgcmVhZG9ubHkgcmVzdWx0cyA9IGlucHV0PEdlb01hcFNlYXJjaFJlc3VsdEl0ZW1bXT4oW10pO1xuICByZWFkb25seSBsb2FkaW5nID0gaW5wdXQoZmFsc2UpO1xuICByZWFkb25seSBwYWdlSW5kZXggPSBtb2RlbCgxKTtcbiAgcmVhZG9ubHkgcGFnZVNpemUgPSBtb2RlbCg1KTtcbiAgcmVhZG9ubHkgdG90YWwgPSBpbnB1dCgwKTtcbiAgcmVhZG9ubHkgZW1wdHlUZXh0ID0gaW5wdXQoJ0NoxrBhIGPDsyBr4bq/dCBxdeG6oyB0cmEgY+G7qXUuJyk7XG5cbiAgcmVhZG9ubHkgc2VhcmNoID0gb3V0cHV0PEdlb01hcFNlYXJjaFF1ZXJ5PigpO1xuICByZWFkb25seSByZXNldCA9IG91dHB1dDx2b2lkPigpO1xuICByZWFkb25seSByZXN1bHRTZWxlY3QgPSBvdXRwdXQ8R2VvTWFwU2VhcmNoUmVzdWx0SXRlbT4oKTtcbiAgcmVhZG9ubHkgY2xvc2VkID0gb3V0cHV0PHZvaWQ+KCk7XG5cbiAgcmVhZG9ubHkgbW9kZVRpbGVzID0gTU9ERV9USUxFUztcbiAgcmVhZG9ubHkgdmFsdWVzID0gc2lnbmFsPFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KHt9KTtcbiAgLyoqIEZvcm0gZMaw4bubaSBsxrDhu5tpIGljb24g4oCUIHRodSBn4buNbiBi4bqxbmcgWCBj4bqhbmggdGnDqnUgxJHhu4EgZm9ybS4gKi9cbiAgcmVhZG9ubHkgZm9ybU9wZW4gPSBzaWduYWwoZmFsc2UpO1xuICByZWFkb25seSBoYXNTZWFyY2hlZCA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcmVhZG9ubHkgZmllbGRzID0gY29tcHV0ZWQoKCkgPT4gTU9ERV9GSUVMRFNbdGhpcy5tb2RlKCldID8/IFtdKTtcbiAgcmVhZG9ubHkgbW9kZUhlYWRpbmcgPSBjb21wdXRlZChcbiAgICAoKSA9PiBNT0RFX0hFQURJTkdTW3RoaXMubW9kZSgpXSA/PyAnVMOsbSBraeG6v20nLFxuICApO1xuICByZWFkb25seSBmaWVsZHNJbmxpbmUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmZpZWxkcygpLmxlbmd0aCA9PT0gMik7XG5cbiAgcmVhZG9ubHkgcmVzb2x2ZWRUb3RhbCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICBjb25zdCB0b3RhbCA9IHRoaXMudG90YWwoKTtcbiAgICByZXR1cm4gdG90YWwgPiAwID8gdG90YWwgOiB0aGlzLnJlc3VsdHMoKS5sZW5ndGg7XG4gIH0pO1xuXG4gIHNlbGVjdE1vZGUobW9kZTogR2VvTWFwU2VhcmNoTW9kZSk6IHZvaWQge1xuICAgIGlmICh0aGlzLm1vZGUoKSAhPT0gbW9kZSkge1xuICAgICAgdGhpcy5tb2RlLnNldChtb2RlKTtcbiAgICAgIHRoaXMudmFsdWVzLnNldCh7fSk7XG4gICAgICB0aGlzLmhhc1NlYXJjaGVkLnNldChmYWxzZSk7XG4gICAgfVxuICAgIHRoaXMuZm9ybU9wZW4uc2V0KHRydWUpO1xuICB9XG5cbiAgY29sbGFwc2VGb3JtKCk6IHZvaWQge1xuICAgIHRoaXMuZm9ybU9wZW4uc2V0KGZhbHNlKTtcbiAgfVxuXG4gIHNldEZpZWxkKGtleTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZXMudXBkYXRlKChjdXJyZW50KSA9PiAoeyAuLi5jdXJyZW50LCBba2V5XTogdmFsdWUgfSkpO1xuICB9XG5cbiAgZmllbGRWYWx1ZShrZXk6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVzKClba2V5XSA/PyAnJztcbiAgfVxuXG4gIHN1Ym1pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmhhc1NlYXJjaGVkLnNldCh0cnVlKTtcbiAgICB0aGlzLnNlYXJjaC5lbWl0KHtcbiAgICAgIG1vZGU6IHRoaXMubW9kZSgpLFxuICAgICAgdmFsdWVzOiB7IC4uLnRoaXMudmFsdWVzKCkgfSxcbiAgICB9KTtcbiAgfVxuXG4gIG9uUmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy52YWx1ZXMuc2V0KHt9KTtcbiAgICB0aGlzLnBhZ2VJbmRleC5zZXQoMSk7XG4gICAgdGhpcy5oYXNTZWFyY2hlZC5zZXQoZmFsc2UpO1xuICAgIHRoaXMucmVzZXQuZW1pdCgpO1xuICB9XG5cbiAgc2VsZWN0UmVzdWx0KGl0ZW06IEdlb01hcFNlYXJjaFJlc3VsdEl0ZW0pOiB2b2lkIHtcbiAgICB0aGlzLnJlc3VsdFNlbGVjdC5lbWl0KGl0ZW0pO1xuICB9XG5cbiAgbWFwTGFiZWwoaXRlbTogR2VvTWFwU2VhcmNoUmVzdWx0SXRlbSk6IHN0cmluZyB7XG4gICAgY29uc3Qgc2hlZXQgPSBpdGVtLnBhcmNlbD8uc2hlZXROdW1iZXI7XG4gICAgY29uc3QgcGFyY2VsID0gaXRlbS5wYXJjZWw/LnBhcmNlbE51bWJlcjtcbiAgICBpZiAoc2hlZXQgfHwgcGFyY2VsKSB7XG4gICAgICByZXR1cm4gYELhuqNuIMSR4buTOiBz4buRIHThu50gJHtzaGVldCA/PyAn4oCUJ30sIHPhu5EgdGjhu61hICR7cGFyY2VsID8/ICfigJQnfWA7XG4gICAgfVxuICAgIHJldHVybiBpdGVtLnRpdGxlO1xuICB9XG5cbiAgY2xvc2UoKTogdm9pZCB7XG4gICAgdGhpcy5vcGVuLnNldChmYWxzZSk7XG4gICAgdGhpcy5mb3JtT3Blbi5zZXQoZmFsc2UpO1xuICAgIHRoaXMuY2xvc2VkLmVtaXQoKTtcbiAgfVxufVxuIiwiQGlmIChvcGVuKCkpIHtcbiAgPHNlY3Rpb24gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaFwiIGFyaWEtbGFiZWw9XCJUcmEgY+G7qXUgdGjDtG5nIHRpbiBxdXkgaG/huqFjaFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faGVhZGVyXCI+XG4gICAgICA8aDMgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fdGl0bGVcIj57eyB0aXRsZSgpIH19PC9oMz5cbiAgICAgIDxidXR0b25cbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX2ljb24tYnRuXCJcbiAgICAgICAgYXJpYS1sYWJlbD1cIsSQw7NuZyB0cmEgY+G7qXVcIlxuICAgICAgICAoY2xpY2spPVwiY2xvc2UoKVwiXG4gICAgICA+XG4gICAgICAgIDxnZW8taWNvbiB0eXBlPVwiY2xvc2VcIiBzaXplPVwic21cIiAvPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9oZWFkZXI+XG5cbiAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX2JvZHlcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZXNcIiByb2xlPVwibGlzdGJveFwiIGFyaWEtbGFiZWw9XCJIw6xuaCB0aOG7qWMgdHJhIGPhu6l1XCI+XG4gICAgICAgIEBmb3IgKHRpbGUgb2YgbW9kZVRpbGVzOyB0cmFjayB0aWxlLmlkKSB7XG4gICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19tb2RlXCJcbiAgICAgICAgICAgIHJvbGU9XCJvcHRpb25cIlxuICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtc2VhcmNoX19tb2RlLS1hY3RpdmVdPVwiZm9ybU9wZW4oKSAmJiBtb2RlKCkgPT09IHRpbGUuaWRcIlxuICAgICAgICAgICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJmb3JtT3BlbigpICYmIG1vZGUoKSA9PT0gdGlsZS5pZFwiXG4gICAgICAgICAgICAoY2xpY2spPVwic2VsZWN0TW9kZSh0aWxlLmlkKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZS1pY29uXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+XG4gICAgICAgICAgICAgIDxnZW8taWNvbiBbdHlwZV09XCJ0aWxlLmljb25cIiBzaXplPVwibWRcIiAvPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbW9kZS1sYWJlbFwiPnt7IHRpbGUubGFiZWwgfX08L3NwYW4+XG4gICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICAgIDwvZGl2PlxuXG4gICAgICBAaWYgKGZvcm1PcGVuKCkpIHtcbiAgICAgICAgPHNlY3Rpb24gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybVwiIFthdHRyLmFyaWEtbGFiZWxdPVwibW9kZUhlYWRpbmcoKVwiPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybS1oZWFkXCI+XG4gICAgICAgICAgICA8aDQgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZm9ybS10aXRsZVwiPnt7IG1vZGVIZWFkaW5nKCkgfX08L2g0PlxuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faWNvbi1idG4gZ2VvLW1hcC1zZWFyY2hfX2ljb24tYnRuLS1zbVwiXG4gICAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJUaHUgZ+G7jW4gZm9ybSB0w6xtIGtp4bq/bVwiXG4gICAgICAgICAgICAgIChjbGljayk9XCJjb2xsYXBzZUZvcm0oKVwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIDxnZW8taWNvbiB0eXBlPVwiY2xvc2VcIiBzaXplPVwic21cIiAvPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9kaXY+XG5cbiAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19maWVsZHNcIlxuICAgICAgICAgICAgW2NsYXNzLmdlby1tYXAtc2VhcmNoX19maWVsZHMtLWlubGluZV09XCJmaWVsZHNJbmxpbmUoKVwiXG4gICAgICAgICAgPlxuICAgICAgICAgICAgQGZvciAoZmllbGQgb2YgZmllbGRzKCk7IHRyYWNrIGZpZWxkLmtleSkge1xuICAgICAgICAgICAgICA8Z2VvLWlucHV0XG4gICAgICAgICAgICAgICAgW2xhYmVsXT1cImZpZWxkLmxhYmVsXCJcbiAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiZmllbGQucGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgIFt0eXBlXT1cImZpZWxkLnR5cGUgPz8gJ3RleHQnXCJcbiAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJmaWVsZFZhbHVlKGZpZWxkLmtleSlcIlxuICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cInNldEZpZWxkKGZpZWxkLmtleSwgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgKGVudGVyUHJlc3NlZCk9XCJzdWJtaXQoKVwiXG4gICAgICAgICAgICAgICAgW2FsbG93Q2xlYXJdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgICAgW2Jsb2NrXT1cInRydWVcIlxuICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvZGl2PlxuXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19hY3Rpb25zXCI+XG4gICAgICAgICAgICA8Z2VvLWJ1dHRvblxuICAgICAgICAgICAgICBhcHBlYXJhbmNlPVwicHJpbWFyeVwiXG4gICAgICAgICAgICAgIGljb249XCJzZWFyY2hcIlxuICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwibG9hZGluZygpXCJcbiAgICAgICAgICAgICAgKGNsaWNrZWQpPVwic3VibWl0KClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICBUw6xtIGtp4bq/bVxuICAgICAgICAgICAgPC9nZW8tYnV0dG9uPlxuICAgICAgICAgICAgPGdlby1idXR0b25cbiAgICAgICAgICAgICAgYXBwZWFyYW5jZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgICAgIGljb249XCJyZWxvYWRcIlxuICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJvblJlc2V0KClcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICDEkOG6t3QgbOG6oWlcbiAgICAgICAgICAgIDwvZ2VvLWJ1dHRvbj5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9zZWN0aW9uPlxuICAgICAgfVxuXG4gICAgICBAaWYgKGZvcm1PcGVuKCkgJiYgKGxvYWRpbmcoKSB8fCBoYXNTZWFyY2hlZCgpKSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX3Jlc3VsdHNcIiBhcmlhLWxpdmU9XCJwb2xpdGVcIj5cbiAgICAgICAgICBAaWYgKGxvYWRpbmcoKSkge1xuICAgICAgICAgICAgPHAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9faGludFwiPsSQYW5nIHTDrG0ga2nhur9t4oCmPC9wPlxuICAgICAgICAgIH0gQGVsc2UgaWYgKCFyZXN1bHRzKCkubGVuZ3RoKSB7XG4gICAgICAgICAgICA8cCBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19oaW50XCI+e3sgZW1wdHlUZXh0KCkgfX08L3A+XG4gICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fbGlzdFwiPlxuICAgICAgICAgICAgICBAZm9yIChpdGVtIG9mIHJlc3VsdHMoKTsgdHJhY2sgaXRlbS5pZCkge1xuICAgICAgICAgICAgICAgIDxsaSBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19yZXN1bHRcIj5cbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LWhlYWRcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LW1hcFwiPnt7IG1hcExhYmVsKGl0ZW0pIH19PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fZGV0YWlsLWxpbmtcIlxuICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZWxlY3RSZXN1bHQoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgQ2hpIHRp4bq/dFxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgQGlmIChpdGVtLnBhcmNlbDsgYXMgcGFyY2VsKSB7XG4gICAgICAgICAgICAgICAgICAgIDxkbCBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19yZXN1bHQtbWV0YVwiPlxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAocGFyY2VsLndhcmQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+WMOjOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwud2FyZCB9fTwvZGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgQGlmIChwYXJjZWwucHJvdmluY2UpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+VOG7iW5oOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwucHJvdmluY2UgfX08L2RkPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIEBpZiAocGFyY2VsLmFyZWEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJnZW8tbWFwLXNlYXJjaF9fcmVzdWx0LXJvd1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICA8ZHQ+RGnhu4duIHTDrWNoOjwvZHQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgIDxkZD57eyBwYXJjZWwuYXJlYSB9fTwvZGQ+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIDwvZGw+XG4gICAgICAgICAgICAgICAgICB9IEBlbHNlIGlmIChpdGVtLnN1YnRpdGxlKSB7XG4gICAgICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiZ2VvLW1hcC1zZWFyY2hfX3Jlc3VsdC1zdWJcIj57eyBpdGVtLnN1YnRpdGxlIH19PC9wPlxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvdWw+XG5cbiAgICAgICAgICAgIEBpZiAocmVzb2x2ZWRUb3RhbCgpID4gcGFnZVNpemUoKSkge1xuICAgICAgICAgICAgICA8Z2VvLXBhZ2luYXRpb25cbiAgICAgICAgICAgICAgICBjbGFzcz1cImdlby1tYXAtc2VhcmNoX19wYWdpbmdcIlxuICAgICAgICAgICAgICAgIFsocGFnZUluZGV4KV09XCJwYWdlSW5kZXhcIlxuICAgICAgICAgICAgICAgIFsocGFnZVNpemUpXT1cInBhZ2VTaXplXCJcbiAgICAgICAgICAgICAgICBbdG90YWxdPVwicmVzb2x2ZWRUb3RhbCgpXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21hbGxcIlxuICAgICAgICAgICAgICAgIFtzaW1wbGVdPVwidHJ1ZVwiXG4gICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9zZWN0aW9uPlxufVxuIl19
|