@agorapulse/ui-components 17.2.0 → 17.2.1-beta.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/avatar/avatar.component.d.ts +3 -1
- package/directives/public_api.d.ts +0 -1
- package/esm2022/autocomplete/autocomplete.component.mjs +7 -5
- package/esm2022/avatar/avatar.component.mjs +16 -5
- package/esm2022/directives/public_api.mjs +1 -2
- package/esm2022/icon-button/icon-button.component.mjs +8 -4
- package/esm2022/index.mjs +2 -2
- package/esm2022/input-search/input-search.component.mjs +3 -3
- package/esm2022/labels/label.component.mjs +2 -2
- package/esm2022/labels-selector/labels-selector.component.mjs +2 -2
- package/esm2022/legacy/select/select.component.mjs +5 -5
- package/esm2022/phone-number-input/phone-number-input.component.mjs +56 -22
- package/esm2022/radio/radio.component.mjs +9 -7
- package/esm2022/select/dropdown-group-item/dropdown-group-item.component.mjs +1 -1
- package/esm2022/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.mjs +16 -4
- package/esm2022/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.mjs +16 -4
- package/esm2022/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.mjs +19 -4
- package/esm2022/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.mjs +16 -4
- package/esm2022/select/dropdown-search-form/dropdown-search-form.component.mjs +31 -4
- package/esm2022/select/select-label-multiple/select-label-multiple.component.mjs +25 -4
- package/esm2022/select/select-label-single/select-label-single.component.mjs +8 -4
- package/esm2022/snackbars-thread/component/snackbars-thread.component.mjs +14 -6
- package/esm2022/snackbars-thread/model/snackbars-thread.model.mjs +1 -1
- package/esm2022/snackbars-thread/service/snackbars-thread.service.mjs +2 -1
- package/esm2022/social-button/social-button.component.mjs +7 -5
- package/esm2022/src/lib/agorapulse-ui-components.module.mjs +2 -6
- package/esm2022/status/status.component.mjs +2 -2
- package/esm2022/tooltip/tooltip.directive.mjs +33 -44
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs +6 -4
- package/fesm2022/agorapulse-ui-components-autocomplete.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-avatar.mjs +16 -5
- package/fesm2022/agorapulse-ui-components-avatar.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-directives.mjs +1 -41
- package/fesm2022/agorapulse-ui-components-directives.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-icon-button.mjs +7 -3
- package/fesm2022/agorapulse-ui-components-icon-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-input-search.mjs +2 -2
- package/fesm2022/agorapulse-ui-components-input-search.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs +1 -1
- package/fesm2022/agorapulse-ui-components-labels-selector.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-labels.mjs +1 -1
- package/fesm2022/agorapulse-ui-components-labels.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs +4 -4
- package/fesm2022/agorapulse-ui-components-legacy-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-phone-number-input.mjs +55 -21
- package/fesm2022/agorapulse-ui-components-phone-number-input.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-radio.mjs +8 -6
- package/fesm2022/agorapulse-ui-components-radio.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-select.mjs +121 -18
- package/fesm2022/agorapulse-ui-components-select.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs +14 -5
- package/fesm2022/agorapulse-ui-components-snackbars-thread.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-social-button.mjs +5 -4
- package/fesm2022/agorapulse-ui-components-social-button.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-status.mjs +2 -2
- package/fesm2022/agorapulse-ui-components-status.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components-tooltip.mjs +32 -43
- package/fesm2022/agorapulse-ui-components-tooltip.mjs.map +1 -1
- package/fesm2022/agorapulse-ui-components.mjs +2 -6
- package/fesm2022/agorapulse-ui-components.mjs.map +1 -1
- package/index.d.ts +1 -1
- package/package.json +43 -43
- package/phone-number-input/phone-number-input.component.d.ts +13 -6
- package/select/dropdown-item-multiple-one-line/dropdown-item-multiple-one-line.component.d.ts +5 -1
- package/select/dropdown-item-multiple-two-lines/dropdown-item-multiple-two-lines.component.d.ts +5 -1
- package/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.d.ts +6 -1
- package/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.d.ts +5 -1
- package/select/dropdown-search-form/dropdown-search-form.component.d.ts +11 -2
- package/select/select-label-multiple/select-label-multiple.component.d.ts +3 -2
- package/select/select-label-single/select-label-single.component.d.ts +3 -1
- package/snackbars-thread/component/snackbars-thread.component.d.ts +2 -1
- package/snackbars-thread/model/snackbars-thread.model.d.ts +1 -0
- package/src/lib/agorapulse-ui-components.module.d.ts +1 -1
- package/tooltip/tooltip.directive.d.ts +10 -9
- package/agorapulse-ui-components-17.2.0.tgz +0 -0
- package/directives/truncate-tooltip.directive.d.ts +0 -16
- package/esm2022/directives/truncate-tooltip.directive.mjs +0 -43
|
@@ -3,7 +3,7 @@ import { BadgeComponent } from '@agorapulse/ui-components/badge';
|
|
|
3
3
|
import { CheckboxComponent } from '@agorapulse/ui-components/checkbox';
|
|
4
4
|
import { TooltipDirective } from '@agorapulse/ui-components/tooltip';
|
|
5
5
|
import { SymbolComponent } from '@agorapulse/ui-symbol';
|
|
6
|
-
import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
|
|
6
|
+
import { ChangeDetectionStrategy, Component, EventEmitter, HostListener, input, Input, output, Output, ViewChild, ViewEncapsulation, } from '@angular/core';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
export class DropdownItemMultipleTwoLinesComponent {
|
|
9
9
|
text;
|
|
@@ -18,18 +18,27 @@ export class DropdownItemMultipleTwoLinesComponent {
|
|
|
18
18
|
dividerEnabled = false;
|
|
19
19
|
onlyEnabled = false;
|
|
20
20
|
onlyText;
|
|
21
|
+
isFeatureLocked = input(false);
|
|
22
|
+
roundedAvatar = input(true);
|
|
21
23
|
selectOnly = new EventEmitter();
|
|
24
|
+
lockedFeatureClicked = output();
|
|
22
25
|
checkbox;
|
|
26
|
+
onClick($event) {
|
|
27
|
+
if (this.isFeatureLocked()) {
|
|
28
|
+
$event.stopPropagation();
|
|
29
|
+
this.lockedFeatureClicked.emit();
|
|
30
|
+
}
|
|
31
|
+
}
|
|
23
32
|
onSelectOnly() {
|
|
24
33
|
this.selectOnly.emit();
|
|
25
34
|
this.checkbox.focus();
|
|
26
35
|
}
|
|
27
36
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemMultipleTwoLinesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemMultipleTwoLinesComponent, isStandalone: true, selector: "ap-dropdown-item-multiple-two-lines", inputs: { text: "text", caption: "caption", selected: "selected", htmlId: "htmlId", disabled: "disabled", avatarUrl: "avatarUrl", symbolId: "symbolId", disabledTooltip: "disabledTooltip", badgeText: "badgeText", dividerEnabled: "dividerEnabled", onlyEnabled: "onlyEnabled", onlyText: "onlyText" }, outputs: { selectOnly: "selectOnly" }, viewQueries: [{ propertyName: "checkbox", first: true, predicate: CheckboxComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option multiple with-caption\">\n <ap-checkbox\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"'option-selection-' + htmlId\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (onlyEnabled && !disabled) {\n <button\n class=\"standalone-link\"\n type=\"button\"\n (click)=\"$event.preventDefault(); $event.stopPropagation(); onSelectOnly()\">\n {{ onlyText }}\n </button>\n }\n </ap-checkbox>\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-multiple-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option ap-checkbox label{display:flex;gap:var(--ref-spacing-xxs);align-items:center}ap-dropdown-item-multiple-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-multiple-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: CheckboxComponent, selector: "ap-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "disabled", "indeterminate", "checked", "required", "name"], outputs: ["change"] }, { kind: "component", type: AvatarComponent, selector: "ap-avatar", inputs: ["alternativeText", "anonymous", "username", "network", "online", "profilePicture", "showInitials", "alt", "rounded", "size"] }, { kind: "component", type: BadgeComponent, selector: "ap-badge", inputs: ["color"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["
|
|
37
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemMultipleTwoLinesComponent, isStandalone: true, selector: "ap-dropdown-item-multiple-two-lines", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: true, transformFunction: null }, caption: { classPropertyName: "caption", publicName: "caption", isSignal: false, isRequired: true, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: true, transformFunction: null }, htmlId: { classPropertyName: "htmlId", publicName: "htmlId", isSignal: false, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, avatarUrl: { classPropertyName: "avatarUrl", publicName: "avatarUrl", isSignal: false, isRequired: false, transformFunction: null }, symbolId: { classPropertyName: "symbolId", publicName: "symbolId", isSignal: false, isRequired: false, transformFunction: null }, disabledTooltip: { classPropertyName: "disabledTooltip", publicName: "disabledTooltip", isSignal: false, isRequired: false, transformFunction: null }, badgeText: { classPropertyName: "badgeText", publicName: "badgeText", isSignal: false, isRequired: false, transformFunction: null }, dividerEnabled: { classPropertyName: "dividerEnabled", publicName: "dividerEnabled", isSignal: false, isRequired: false, transformFunction: null }, onlyEnabled: { classPropertyName: "onlyEnabled", publicName: "onlyEnabled", isSignal: false, isRequired: false, transformFunction: null }, onlyText: { classPropertyName: "onlyText", publicName: "onlyText", isSignal: false, isRequired: false, transformFunction: null }, isFeatureLocked: { classPropertyName: "isFeatureLocked", publicName: "isFeatureLocked", isSignal: true, isRequired: false, transformFunction: null }, roundedAvatar: { classPropertyName: "roundedAvatar", publicName: "roundedAvatar", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { selectOnly: "selectOnly", lockedFeatureClicked: "lockedFeatureClicked" }, host: { listeners: { "click": "onClick($event)" } }, viewQueries: [{ propertyName: "checkbox", first: true, predicate: CheckboxComponent, descendants: true }], ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option multiple with-caption\" [class.feature-locked-option]=\"isFeatureLocked()\">\n <ap-checkbox\n [checked]=\"selected\"\n [disabled]=\"disabled || isFeatureLocked()\"\n [name]=\"'option-selection-' + htmlId\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\" [class.feature-locked-label]=\"isFeatureLocked()\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n }\n\n @if (onlyEnabled && !disabled) {\n <button\n class=\"standalone-link\"\n type=\"button\"\n (click)=\"$event.preventDefault(); $event.stopPropagation(); onSelectOnly()\">\n {{ onlyText }}\n </button>\n }\n </ap-checkbox>\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-multiple-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option ap-checkbox label{display:flex;gap:var(--ref-spacing-xxs);align-items:center}ap-dropdown-item-multiple-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-multiple-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: CheckboxComponent, selector: "ap-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "disabled", "indeterminate", "checked", "required", "name"], outputs: ["change"] }, { kind: "component", type: AvatarComponent, selector: "ap-avatar", inputs: ["alternativeText", "anonymous", "username", "network", "online", "profilePicture", "showInitials", "alt", "rounded", "size"] }, { kind: "component", type: BadgeComponent, selector: "ap-badge", inputs: ["color"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["apTooltip", "apTooltipPosition", "apTooltipShowDelay", "apTooltipHideDelay", "apTooltipDuration", "apTooltipDisabled", "apTooltipTruncatedTextOnly", "apTooltipTemplateContext", "apTooltipVirtualScrollElement"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
29
38
|
}
|
|
30
39
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemMultipleTwoLinesComponent, decorators: [{
|
|
31
40
|
type: Component,
|
|
32
|
-
args: [{ selector: 'ap-dropdown-item-multiple-two-lines', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, CheckboxComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option multiple with-caption\">\n <ap-checkbox\n [checked]=\"selected\"\n [disabled]=\"disabled\"\n [name]=\"'option-selection-' + htmlId\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (onlyEnabled && !disabled) {\n <button\n class=\"standalone-link\"\n type=\"button\"\n (click)=\"$event.preventDefault(); $event.stopPropagation(); onSelectOnly()\">\n {{ onlyText }}\n </button>\n }\n </ap-checkbox>\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-multiple-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option ap-checkbox label{display:flex;gap:var(--ref-spacing-xxs);align-items:center}ap-dropdown-item-multiple-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-multiple-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
|
|
41
|
+
args: [{ selector: 'ap-dropdown-item-multiple-two-lines', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, CheckboxComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option multiple with-caption\" [class.feature-locked-option]=\"isFeatureLocked()\">\n <ap-checkbox\n [checked]=\"selected\"\n [disabled]=\"disabled || isFeatureLocked()\"\n [name]=\"'option-selection-' + htmlId\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\" [class.feature-locked-label]=\"isFeatureLocked()\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n }\n\n @if (onlyEnabled && !disabled) {\n <button\n class=\"standalone-link\"\n type=\"button\"\n (click)=\"$event.preventDefault(); $event.stopPropagation(); onSelectOnly()\">\n {{ onlyText }}\n </button>\n }\n </ap-checkbox>\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-multiple-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option ap-checkbox label{display:flex;gap:var(--ref-spacing-xxs);align-items:center}ap-dropdown-item-multiple-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-multiple-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-multiple-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
|
|
33
42
|
}], propDecorators: { text: [{
|
|
34
43
|
type: Input,
|
|
35
44
|
args: [{ required: true }]
|
|
@@ -63,5 +72,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
63
72
|
}], checkbox: [{
|
|
64
73
|
type: ViewChild,
|
|
65
74
|
args: [CheckboxComponent]
|
|
75
|
+
}], onClick: [{
|
|
76
|
+
type: HostListener,
|
|
77
|
+
args: ['click', ['$event']]
|
|
66
78
|
}] } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMvZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMvZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUFFLFlBQVksRUFDMUIsS0FBSyxFQUNMLEtBQUssRUFBRSxNQUFNLEVBQ2IsTUFBTSxFQUNOLFNBQVMsRUFDVCxpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7O0FBV3ZCLE1BQU0sT0FBTyxxQ0FBcUM7SUFDbkIsSUFBSSxDQUFVO0lBQ2QsT0FBTyxDQUFVO0lBQ2pCLFFBQVEsQ0FBVztJQUNuQixNQUFNLENBQVU7SUFDbEMsUUFBUSxHQUFHLEtBQUssQ0FBQztJQUNqQixTQUFTLENBQVU7SUFDbkIsUUFBUSxDQUFVO0lBQ2xCLGVBQWUsQ0FBVTtJQUN6QixTQUFTLENBQVU7SUFDbkIsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUN2QixXQUFXLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLFFBQVEsQ0FBVTtJQUMzQixlQUFlLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFFbEIsVUFBVSxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7SUFDaEQsb0JBQW9CLEdBQUcsTUFBTSxFQUFFLENBQUM7SUFFRixRQUFRLENBQXFCO0lBRXhCLE9BQU8sQ0FBQyxNQUFrQjtRQUN6RCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckMsQ0FBQztJQUNMLENBQUM7SUFFRCxZQUFZO1FBQ1IsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsUUFBUSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7dUdBL0JRLHFDQUFxQzsyRkFBckMscUNBQXFDLDBuRUFtQm5DLGlCQUFpQixnREM3Q2hDLCs4REErREEsbW9CRHZDYyxlQUFlLDZGQUFFLGlCQUFpQix3TUFBRSxlQUFlLDZMQUFFLGNBQWMsd0VBQUUsZ0JBQWdCOzsyRkFFdEYscUNBQXFDO2tCQVRqRCxTQUFTOytCQUNJLHFDQUFxQyxjQUduQyxJQUFJLG1CQUNDLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksV0FDNUIsQ0FBQyxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxnQkFBZ0IsQ0FBQzs4QkFHckUsSUFBSTtzQkFBOUIsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsT0FBTztzQkFBakMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsUUFBUTtzQkFBbEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ0UsTUFBTTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBQ2hCLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxjQUFjO3NCQUF0QixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFJSSxVQUFVO3NCQUFuQixNQUFNO2dCQUd1QixRQUFRO3NCQUFyQyxTQUFTO3VCQUFDLGlCQUFpQjtnQkFFTyxPQUFPO3NCQUF6QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF2YXRhckNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEJhZGdlQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBDaGVja2JveENvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvY2hlY2tib3gnO1xuaW1wb3J0IHsgVG9vbHRpcERpcmVjdGl2ZSB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvdG9vbHRpcCc7XG5pbXBvcnQgeyBTeW1ib2xDb21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1zeW1ib2wnO1xuXG5pbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsIEhvc3RMaXN0ZW5lcixcbiAgICBpbnB1dCxcbiAgICBJbnB1dCwgb3V0cHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwLWRyb3Bkb3duLWl0ZW0tbXVsdGlwbGUtdHdvLWxpbmVzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24taXRlbS1tdWx0aXBsZS10d28tbGluZXMuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLWl0ZW0tbXVsdGlwbGUtdHdvLWxpbmVzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGltcG9ydHM6IFtTeW1ib2xDb21wb25lbnQsIENoZWNrYm94Q29tcG9uZW50LCBBdmF0YXJDb21wb25lbnQsIEJhZGdlQ29tcG9uZW50LCBUb29sdGlwRGlyZWN0aXZlXSxcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25JdGVtTXVsdGlwbGVUd29MaW5lc0NvbXBvbmVudCB7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgdGV4dCE6IHN0cmluZztcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBjYXB0aW9uITogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHNlbGVjdGVkITogYm9vbGVhbjtcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBodG1sSWQhOiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGlzYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBhdmF0YXJVcmw/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgc3ltYm9sSWQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGlzYWJsZWRUb29sdGlwPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGJhZGdlVGV4dD86IHN0cmluZztcbiAgICBASW5wdXQoKSBkaXZpZGVyRW5hYmxlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIG9ubHlFbmFibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgb25seVRleHQ/OiBzdHJpbmc7XG4gICAgaXNGZWF0dXJlTG9ja2VkID0gaW5wdXQ8Ym9vbGVhbj4oZmFsc2UpO1xuICAgIHJvdW5kZWRBdmF0YXIgPSBpbnB1dCh0cnVlKTtcblxuICAgIEBPdXRwdXQoKSBzZWxlY3RPbmx5ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuICAgIGxvY2tlZEZlYXR1cmVDbGlja2VkID0gb3V0cHV0KCk7XG5cbiAgICBAVmlld0NoaWxkKENoZWNrYm94Q29tcG9uZW50KSBjaGVja2JveCE6IENoZWNrYm94Q29tcG9uZW50O1xuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkNsaWNrKCRldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5pc0ZlYXR1cmVMb2NrZWQoKSkge1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5sb2NrZWRGZWF0dXJlQ2xpY2tlZC5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblNlbGVjdE9ubHkoKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0T25seS5lbWl0KCk7XG4gICAgICAgIHRoaXMuY2hlY2tib3guZm9jdXMoKTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJkaXNhYmxlZC1vcGFxdWVcIlxuICAgIFthcFRvb2x0aXBdPVwiZGlzYWJsZWRUb29sdGlwXCJcbiAgICBbYXBUb29sdGlwRGlzYWJsZWRdPVwiIWRpc2FibGVkXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwib3B0aW9uIG11bHRpcGxlIHdpdGgtY2FwdGlvblwiIFtjbGFzcy5mZWF0dXJlLWxvY2tlZC1vcHRpb25dPVwiaXNGZWF0dXJlTG9ja2VkKClcIj5cbiAgICA8YXAtY2hlY2tib3hcbiAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0ZWRcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWQgfHwgaXNGZWF0dXJlTG9ja2VkKClcIlxuICAgICAgICBbbmFtZV09XCInb3B0aW9uLXNlbGVjdGlvbi0nICsgaHRtbElkXCI+XG4gICAgICAgIEBpZiAoYXZhdGFyVXJsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIDxhcC1hdmF0YXJcbiAgICAgICAgICAgICAgICBbcm91bmRlZF09XCJyb3VuZGVkQXZhdGFyKClcIlxuICAgICAgICAgICAgICAgIFtzaXplXT1cIjI0XCJcbiAgICAgICAgICAgICAgICBbcHJvZmlsZVBpY3R1cmVdPVwiYXZhdGFyVXJsXCJcbiAgICAgICAgICAgICAgICBbdXNlcm5hbWVdPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgW3Nob3dJbml0aWFsc109XCJ0cnVlXCIgLz5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKHN5bWJvbElkKSB7XG4gICAgICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICAgICAgICBbc3ltYm9sSWRdPVwic3ltYm9sSWRcIiAvPlxuICAgICAgICB9XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0ZXh0c1wiIFtjbGFzcy5mZWF0dXJlLWxvY2tlZC1sYWJlbF09XCJpc0ZlYXR1cmVMb2NrZWQoKVwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZpcnN0LWxpbmVcIj5cbiAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImxhYmVsXCJcblxuICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyB0ZXh0IH19XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIEBpZiAoYmFkZ2VUZXh0KSB7XG4gICAgICAgICAgICAgICAgICAgIDxhcC1iYWRnZSBjb2xvcj1cImJsdWVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIHt7IGJhZGdlVGV4dCB9fVxuICAgICAgICAgICAgICAgICAgICA8L2FwLWJhZGdlPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICBjbGFzcz1cImNhcHRpb25cIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJjYXB0aW9uXCI+XG4gICAgICAgICAgICAgICAge3sgY2FwdGlvbiB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICBAaWYgKGlzRmVhdHVyZUxvY2tlZCgpKSB7XG4gICAgICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICAgICAgc3ltYm9sSWQ9XCJmZWF0dXJlLWxvY2tcIlxuICAgICAgICAgICAgICAgIGNvbG9yPVwicHVycGxlXCJcbiAgICAgICAgICAgICAgICBzaXplPVwic21cIi8+XG4gICAgICAgIH1cblxuICAgICAgICBAaWYgKG9ubHlFbmFibGVkICYmICFkaXNhYmxlZCkge1xuICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgIGNsYXNzPVwic3RhbmRhbG9uZS1saW5rXCJcbiAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnByZXZlbnREZWZhdWx0KCk7ICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgb25TZWxlY3RPbmx5KClcIj5cbiAgICAgICAgICAgICAgICB7eyBvbmx5VGV4dCB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIH1cbiAgICA8L2FwLWNoZWNrYm94PlxuPC9kaXY+XG5AaWYgKGRpdmlkZXJFbmFibGVkKSB7XG4gICAgPGRpdiBjbGFzcz1cImRpdmlkZXJcIj48L2Rpdj5cbn1cbiJdfQ==
|
package/esm2022/select/dropdown-item-single-one-line/dropdown-item-single-one-line.component.mjs
CHANGED
|
@@ -2,24 +2,34 @@ import { AvatarComponent } from '@agorapulse/ui-components/avatar';
|
|
|
2
2
|
import { BadgeComponent } from '@agorapulse/ui-components/badge';
|
|
3
3
|
import { TooltipDirective } from '@agorapulse/ui-components/tooltip';
|
|
4
4
|
import { SymbolComponent } from '@agorapulse/ui-symbol';
|
|
5
|
-
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
5
|
+
import { ChangeDetectionStrategy, Component, HostListener, input, Input, output, ViewEncapsulation, } from '@angular/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class DropdownItemSingleOneLineComponent {
|
|
8
8
|
text;
|
|
9
9
|
selected;
|
|
10
10
|
disabled = false;
|
|
11
11
|
avatarUrl;
|
|
12
|
+
showAvatarInitials = true;
|
|
12
13
|
symbolId;
|
|
13
14
|
disabledTooltip;
|
|
14
15
|
badgeText;
|
|
15
16
|
dividerEnabled = false;
|
|
16
17
|
network = undefined;
|
|
18
|
+
roundedAvatar = input(true);
|
|
19
|
+
isFeatureLocked = input(false);
|
|
20
|
+
lockedFeatureClicked = output();
|
|
21
|
+
onClick($event) {
|
|
22
|
+
if (this.isFeatureLocked()) {
|
|
23
|
+
$event.stopPropagation();
|
|
24
|
+
this.lockedFeatureClicked.emit();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
17
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemSingleOneLineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemSingleOneLineComponent, isStandalone: true, selector: "ap-dropdown-item-single-one-line", inputs: { text: "text", selected: "selected", disabled: "disabled", avatarUrl: "avatarUrl", symbolId: "symbolId", disabledTooltip: "disabledTooltip", badgeText: "badgeText", dividerEnabled: "dividerEnabled", network: "network" }, ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemSingleOneLineComponent, isStandalone: true, selector: "ap-dropdown-item-single-one-line", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: true, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, avatarUrl: { classPropertyName: "avatarUrl", publicName: "avatarUrl", isSignal: false, isRequired: false, transformFunction: null }, showAvatarInitials: { classPropertyName: "showAvatarInitials", publicName: "showAvatarInitials", isSignal: false, isRequired: false, transformFunction: null }, symbolId: { classPropertyName: "symbolId", publicName: "symbolId", isSignal: false, isRequired: false, transformFunction: null }, disabledTooltip: { classPropertyName: "disabledTooltip", publicName: "disabledTooltip", isSignal: false, isRequired: false, transformFunction: null }, badgeText: { classPropertyName: "badgeText", publicName: "badgeText", isSignal: false, isRequired: false, transformFunction: null }, dividerEnabled: { classPropertyName: "dividerEnabled", publicName: "dividerEnabled", isSignal: false, isRequired: false, transformFunction: null }, network: { classPropertyName: "network", publicName: "network", isSignal: false, isRequired: false, transformFunction: null }, roundedAvatar: { classPropertyName: "roundedAvatar", publicName: "roundedAvatar", isSignal: true, isRequired: false, transformFunction: null }, isFeatureLocked: { classPropertyName: "isFeatureLocked", publicName: "isFeatureLocked", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { lockedFeatureClicked: "lockedFeatureClicked" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option\" [class.feature-locked-option]=\"isFeatureLocked()\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"showAvatarInitials\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <span\n class=\"option-item\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n } @else if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-one-line .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-one-line .option .option-selected{margin-left:auto}ap-dropdown-item-single-one-line .option-item{width:100%}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: AvatarComponent, selector: "ap-avatar", inputs: ["alternativeText", "anonymous", "username", "network", "online", "profilePicture", "showInitials", "alt", "rounded", "size"] }, { kind: "component", type: BadgeComponent, selector: "ap-badge", inputs: ["color"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["apTooltip", "apTooltipPosition", "apTooltipShowDelay", "apTooltipHideDelay", "apTooltipDuration", "apTooltipDisabled", "apTooltipTruncatedTextOnly", "apTooltipTemplateContext", "apTooltipVirtualScrollElement"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
19
29
|
}
|
|
20
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemSingleOneLineComponent, decorators: [{
|
|
21
31
|
type: Component,
|
|
22
|
-
args: [{ selector: 'ap-dropdown-item-single-one-line', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"
|
|
32
|
+
args: [{ selector: 'ap-dropdown-item-single-one-line', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option\" [class.feature-locked-option]=\"isFeatureLocked()\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"showAvatarInitials\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <span\n class=\"option-item\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n } @else if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-one-line .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-one-line .option .option-selected{margin-left:auto}ap-dropdown-item-single-one-line .option-item{width:100%}\n"] }]
|
|
23
33
|
}], propDecorators: { text: [{
|
|
24
34
|
type: Input,
|
|
25
35
|
args: [{ required: true }]
|
|
@@ -30,6 +40,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
30
40
|
type: Input
|
|
31
41
|
}], avatarUrl: [{
|
|
32
42
|
type: Input
|
|
43
|
+
}], showAvatarInitials: [{
|
|
44
|
+
type: Input
|
|
33
45
|
}], symbolId: [{
|
|
34
46
|
type: Input
|
|
35
47
|
}], disabledTooltip: [{
|
|
@@ -40,5 +52,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
40
52
|
type: Input
|
|
41
53
|
}], network: [{
|
|
42
54
|
type: Input
|
|
55
|
+
}], onClick: [{
|
|
56
|
+
type: HostListener,
|
|
57
|
+
args: ['click', ['$event']]
|
|
43
58
|
}] } });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUvZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUvZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBaUIsTUFBTSxrQ0FBa0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDakUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXhELE9BQU8sRUFDSCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsS0FBSyxFQUNMLE1BQU0sRUFDTixpQkFBaUIsR0FDcEIsTUFBTSxlQUFlLENBQUM7O0FBV3ZCLE1BQU0sT0FBTyxrQ0FBa0M7SUFDaEIsSUFBSSxDQUFVO0lBQ2QsUUFBUSxDQUFXO0lBQ3JDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsU0FBUyxDQUFVO0lBQ25CLGtCQUFrQixHQUFHLElBQUksQ0FBQztJQUMxQixRQUFRLENBQVU7SUFDbEIsZUFBZSxDQUFVO0lBQ3pCLFNBQVMsQ0FBVTtJQUNuQixjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLE9BQU8sR0FBOEIsU0FBUyxDQUFDO0lBQ3hELGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsZUFBZSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztJQUV4QyxvQkFBb0IsR0FBRyxNQUFNLEVBQUUsQ0FBQztJQUVHLE9BQU8sQ0FBQyxNQUFrQjtRQUN6RCxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsb0JBQW9CLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDckMsQ0FBQztJQUNMLENBQUM7dUdBckJRLGtDQUFrQzsyRkFBbEMsa0NBQWtDLDQwREN4Qi9DLHN0Q0E2Q0EsaVJEdkJjLGVBQWUsNkZBQUUsZUFBZSw2TEFBRSxjQUFjLHdFQUFFLGdCQUFnQjs7MkZBRW5FLGtDQUFrQztrQkFUOUMsU0FBUzsrQkFDSSxrQ0FBa0MsY0FHaEMsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFdBQzVCLENBQUMsZUFBZSxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLENBQUM7OEJBR2xELElBQUk7c0JBQTlCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFFBQVE7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csa0JBQWtCO3NCQUExQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQU02QixPQUFPO3NCQUF6QyxZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF2YXRhckNvbXBvbmVudCwgQXZhdGFyTmV0d29yayB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWNvbXBvbmVudHMvYXZhdGFyJztcbmltcG9ydCB7IEJhZGdlQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9iYWRnZSc7XG5pbXBvcnQgeyBUb29sdGlwRGlyZWN0aXZlIH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy90b29sdGlwJztcbmltcG9ydCB7IFN5bWJvbENvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLXN5bWJvbCc7XG5cbmltcG9ydCB7XG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgQ29tcG9uZW50LFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBpbnB1dCxcbiAgICBJbnB1dCxcbiAgICBvdXRwdXQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2FwLWRyb3Bkb3duLWl0ZW0tc2luZ2xlLW9uZS1saW5lJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24taXRlbS1zaW5nbGUtb25lLWxpbmUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2Ryb3Bkb3duLWl0ZW0tc2luZ2xlLW9uZS1saW5lLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGltcG9ydHM6IFtTeW1ib2xDb21wb25lbnQsIEF2YXRhckNvbXBvbmVudCwgQmFkZ2VDb21wb25lbnQsIFRvb2x0aXBEaXJlY3RpdmVdLFxufSlcbmV4cG9ydCBjbGFzcyBEcm9wZG93bkl0ZW1TaW5nbGVPbmVMaW5lQ29tcG9uZW50IHtcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSB0ZXh0ITogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHNlbGVjdGVkITogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBkaXNhYmxlZCA9IGZhbHNlO1xuICAgIEBJbnB1dCgpIGF2YXRhclVybD86IHN0cmluZztcbiAgICBASW5wdXQoKSBzaG93QXZhdGFySW5pdGlhbHMgPSB0cnVlO1xuICAgIEBJbnB1dCgpIHN5bWJvbElkPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkVG9vbHRpcD86IHN0cmluZztcbiAgICBASW5wdXQoKSBiYWRnZVRleHQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGl2aWRlckVuYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBuZXR3b3JrOiBBdmF0YXJOZXR3b3JrIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHJvdW5kZWRBdmF0YXIgPSBpbnB1dCh0cnVlKTtcbiAgICBpc0ZlYXR1cmVMb2NrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBsb2NrZWRGZWF0dXJlQ2xpY2tlZCA9IG91dHB1dCgpO1xuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkNsaWNrKCRldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5pc0ZlYXR1cmVMb2NrZWQoKSkge1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5sb2NrZWRGZWF0dXJlQ2xpY2tlZC5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJkaXNhYmxlZC1vcGFxdWVcIlxuICAgIFthcFRvb2x0aXBdPVwiZGlzYWJsZWRUb29sdGlwXCJcbiAgICBbYXBUb29sdGlwRGlzYWJsZWRdPVwiIWRpc2FibGVkXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwib3B0aW9uXCIgW2NsYXNzLmZlYXR1cmUtbG9ja2VkLW9wdGlvbl09XCJpc0ZlYXR1cmVMb2NrZWQoKVwiPlxuICAgIEBpZiAoYXZhdGFyVXJsICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgPGFwLWF2YXRhclxuICAgICAgICAgICAgW3JvdW5kZWRdPVwicm91bmRlZEF2YXRhcigpXCJcbiAgICAgICAgICAgIFtzaXplXT1cIjI0XCJcbiAgICAgICAgICAgIFtwcm9maWxlUGljdHVyZV09XCJhdmF0YXJVcmxcIlxuICAgICAgICAgICAgW3VzZXJuYW1lXT1cInRleHRcIlxuICAgICAgICAgICAgW3Nob3dJbml0aWFsc109XCJzaG93QXZhdGFySW5pdGlhbHNcIlxuICAgICAgICAgICAgW25ldHdvcmtdPVwibmV0d29ya1wiIC8+XG4gICAgfVxuICAgIEBpZiAoc3ltYm9sSWQpIHtcbiAgICAgICAgPGFwLXN5bWJvbFxuICAgICAgICAgICAgc2l6ZT1cInNtXCJcbiAgICAgICAgICAgIFtzeW1ib2xJZF09XCJzeW1ib2xJZFwiIC8+XG4gICAgfVxuICAgIDxzcGFuXG4gICAgICAgIGNsYXNzPVwib3B0aW9uLWl0ZW1cIlxuICAgICAgICBbdGl0bGVdPVwidGV4dFwiPlxuICAgICAgICB7eyB0ZXh0IH19XG4gICAgPC9zcGFuPlxuICAgIEBpZiAoYmFkZ2VUZXh0KSB7XG4gICAgICAgIDxhcC1iYWRnZSBjb2xvcj1cImJsdWVcIj5cbiAgICAgICAgICAgIHt7IGJhZGdlVGV4dCB9fVxuICAgICAgICA8L2FwLWJhZGdlPlxuICAgIH1cbiAgICBAaWYgKGlzRmVhdHVyZUxvY2tlZCgpKSB7XG4gICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgIHN5bWJvbElkPVwiZmVhdHVyZS1sb2NrXCJcbiAgICAgICAgICAgIGNvbG9yPVwicHVycGxlXCJcbiAgICAgICAgICAgIHNpemU9XCJzbVwiLz5cbiAgICB9IEBlbHNlIGlmIChzZWxlY3RlZCkge1xuICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICBjbGFzcz1cIm9wdGlvbi1zZWxlY3RlZFwiXG4gICAgICAgICAgICBzeW1ib2xJZD1cImNoZWNrXCJcbiAgICAgICAgICAgIGNvbG9yPVwiZWxlY3RyaWMtYmx1ZVwiXG4gICAgICAgICAgICBzaXplPVwic21cIiAvPlxuICAgIH1cbjwvZGl2PlxuQGlmIChkaXZpZGVyRW5hYmxlZCkge1xuICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XG59XG4iXX0=
|
package/esm2022/select/dropdown-item-single-two-lines/dropdown-item-single-two-lines.component.mjs
CHANGED
|
@@ -2,7 +2,7 @@ import { AvatarComponent } from '@agorapulse/ui-components/avatar';
|
|
|
2
2
|
import { BadgeComponent } from '@agorapulse/ui-components/badge';
|
|
3
3
|
import { TooltipDirective } from '@agorapulse/ui-components/tooltip';
|
|
4
4
|
import { SymbolComponent } from '@agorapulse/ui-symbol';
|
|
5
|
-
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@angular/core';
|
|
5
|
+
import { ChangeDetectionStrategy, Component, HostListener, input, Input, output, ViewEncapsulation, } from '@angular/core';
|
|
6
6
|
import * as i0 from "@angular/core";
|
|
7
7
|
export class DropdownItemSingleTwoLinesComponent {
|
|
8
8
|
text;
|
|
@@ -15,12 +15,21 @@ export class DropdownItemSingleTwoLinesComponent {
|
|
|
15
15
|
badgeText;
|
|
16
16
|
dividerEnabled = false;
|
|
17
17
|
network = undefined;
|
|
18
|
+
roundedAvatar = input(true);
|
|
19
|
+
isFeatureLocked = input(false);
|
|
20
|
+
lockedFeatureClicked = output();
|
|
21
|
+
onClick($event) {
|
|
22
|
+
if (this.isFeatureLocked()) {
|
|
23
|
+
$event.stopPropagation();
|
|
24
|
+
this.lockedFeatureClicked.emit();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
18
27
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemSingleTwoLinesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemSingleTwoLinesComponent, isStandalone: true, selector: "ap-dropdown-item-single-two-lines", inputs: { text: "text", caption: "caption", selected: "selected", disabled: "disabled", avatarUrl: "avatarUrl", symbolId: "symbolId", disabledTooltip: "disabledTooltip", badgeText: "badgeText", dividerEnabled: "dividerEnabled", network: "network" }, ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option with-caption\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .option-selected{margin-left:auto}ap-dropdown-item-single-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-single-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: AvatarComponent, selector: "ap-avatar", inputs: ["alternativeText", "anonymous", "username", "network", "online", "profilePicture", "showInitials", "alt", "rounded", "size"] }, { kind: "component", type: BadgeComponent, selector: "ap-badge", inputs: ["color"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["
|
|
28
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.3", type: DropdownItemSingleTwoLinesComponent, isStandalone: true, selector: "ap-dropdown-item-single-two-lines", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: false, isRequired: true, transformFunction: null }, caption: { classPropertyName: "caption", publicName: "caption", isSignal: false, isRequired: true, transformFunction: null }, selected: { classPropertyName: "selected", publicName: "selected", isSignal: false, isRequired: true, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: false, isRequired: false, transformFunction: null }, avatarUrl: { classPropertyName: "avatarUrl", publicName: "avatarUrl", isSignal: false, isRequired: false, transformFunction: null }, symbolId: { classPropertyName: "symbolId", publicName: "symbolId", isSignal: false, isRequired: false, transformFunction: null }, disabledTooltip: { classPropertyName: "disabledTooltip", publicName: "disabledTooltip", isSignal: false, isRequired: false, transformFunction: null }, badgeText: { classPropertyName: "badgeText", publicName: "badgeText", isSignal: false, isRequired: false, transformFunction: null }, dividerEnabled: { classPropertyName: "dividerEnabled", publicName: "dividerEnabled", isSignal: false, isRequired: false, transformFunction: null }, network: { classPropertyName: "network", publicName: "network", isSignal: false, isRequired: false, transformFunction: null }, roundedAvatar: { classPropertyName: "roundedAvatar", publicName: "roundedAvatar", isSignal: true, isRequired: false, transformFunction: null }, isFeatureLocked: { classPropertyName: "isFeatureLocked", publicName: "isFeatureLocked", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { lockedFeatureClicked: "lockedFeatureClicked" }, host: { listeners: { "click": "onClick($event)" } }, ngImport: i0, template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option with-caption\" [class.feature-locked-option]=\"isFeatureLocked()\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n } @else if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .option-selected{margin-left:auto}ap-dropdown-item-single-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-single-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { kind: "component", type: AvatarComponent, selector: "ap-avatar", inputs: ["alternativeText", "anonymous", "username", "network", "online", "profilePicture", "showInitials", "alt", "rounded", "size"] }, { kind: "component", type: BadgeComponent, selector: "ap-badge", inputs: ["color"] }, { kind: "directive", type: TooltipDirective, selector: "[apTooltip]", inputs: ["apTooltip", "apTooltipPosition", "apTooltipShowDelay", "apTooltipHideDelay", "apTooltipDuration", "apTooltipDisabled", "apTooltipTruncatedTextOnly", "apTooltipTemplateContext", "apTooltipVirtualScrollElement"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
20
29
|
}
|
|
21
30
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownItemSingleTwoLinesComponent, decorators: [{
|
|
22
31
|
type: Component,
|
|
23
|
-
args: [{ selector: 'ap-dropdown-item-single-two-lines', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option with-caption\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .option-selected{margin-left:auto}ap-dropdown-item-single-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-single-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
|
|
32
|
+
args: [{ selector: 'ap-dropdown-item-single-two-lines', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [SymbolComponent, AvatarComponent, BadgeComponent, TooltipDirective], template: "<div\n class=\"disabled-opaque\"\n [apTooltip]=\"disabledTooltip\"\n [apTooltipDisabled]=\"!disabled\"></div>\n<div class=\"option with-caption\" [class.feature-locked-option]=\"isFeatureLocked()\">\n @if (avatarUrl !== undefined) {\n <ap-avatar\n [rounded]=\"roundedAvatar()\"\n [size]=\"24\"\n [profilePicture]=\"avatarUrl\"\n [username]=\"text\"\n [showInitials]=\"true\"\n [network]=\"network\" />\n }\n @if (symbolId) {\n <ap-symbol\n size=\"sm\"\n [symbolId]=\"symbolId\" />\n }\n <div class=\"texts\">\n <div class=\"first-line\">\n <span\n class=\"label\"\n [title]=\"text\">\n {{ text }}\n </span>\n @if (badgeText) {\n <ap-badge color=\"blue\">\n {{ badgeText }}\n </ap-badge>\n }\n </div>\n <span\n class=\"caption\"\n [title]=\"caption\">\n {{ caption }}\n </span>\n </div>\n @if (isFeatureLocked()) {\n <ap-symbol\n symbolId=\"feature-lock\"\n color=\"purple\"\n size=\"sm\"/>\n } @else if (selected) {\n <ap-symbol\n class=\"option-selected\"\n symbolId=\"check\"\n color=\"electric-blue\"\n size=\"sm\" />\n }\n</div>\n@if (dividerEnabled) {\n <div class=\"divider\"></div>\n}\n", styles: ["ap-dropdown-item-single-two-lines .option{display:flex;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .option-selected{margin-left:auto}ap-dropdown-item-single-two-lines .option .texts{flex:1;overflow:auto;display:flex;flex-direction:column}ap-dropdown-item-single-two-lines .option .texts .first-line{display:flex;align-items:center;gap:var(--ref-spacing-xxs)}ap-dropdown-item-single-two-lines .option .texts .first-line .label{display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}\n"] }]
|
|
24
33
|
}], propDecorators: { text: [{
|
|
25
34
|
type: Input,
|
|
26
35
|
args: [{ required: true }]
|
|
@@ -44,5 +53,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
44
53
|
type: Input
|
|
45
54
|
}], network: [{
|
|
46
55
|
type: Input
|
|
56
|
+
}], onClick: [{
|
|
57
|
+
type: HostListener,
|
|
58
|
+
args: ['click', ['$event']]
|
|
47
59
|
}] } });
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24taXRlbS1zaW5nbGUtdHdvLWxpbmVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvdWktY29tcG9uZW50cy9zZWxlY3Qvc3JjL2Ryb3Bkb3duLWl0ZW0tc2luZ2xlLXR3by1saW5lcy9kcm9wZG93bi1pdGVtLXNpbmdsZS10d28tbGluZXMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24taXRlbS1zaW5nbGUtdHdvLWxpbmVzL2Ryb3Bkb3duLWl0ZW0tc2luZ2xlLXR3by1saW5lcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFpQixNQUFNLGtDQUFrQyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNyRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUNILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxLQUFLLEVBQ0wsTUFBTSxFQUNOLGlCQUFpQixHQUNwQixNQUFNLGVBQWUsQ0FBQzs7QUFXdkIsTUFBTSxPQUFPLG1DQUFtQztJQUNqQixJQUFJLENBQVU7SUFDZCxPQUFPLENBQVU7SUFDakIsUUFBUSxDQUFXO0lBQ3JDLFFBQVEsR0FBRyxLQUFLLENBQUM7SUFDakIsU0FBUyxDQUFVO0lBQ25CLFFBQVEsQ0FBVTtJQUNsQixlQUFlLENBQVU7SUFDekIsU0FBUyxDQUFVO0lBQ25CLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDdkIsT0FBTyxHQUE4QixTQUFTLENBQUM7SUFDeEQsYUFBYSxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM1QixlQUFlLEdBQUcsS0FBSyxDQUFVLEtBQUssQ0FBQyxDQUFDO0lBRXhDLG9CQUFvQixHQUFHLE1BQU0sRUFBRSxDQUFDO0lBRUcsT0FBTyxDQUFDLE1BQWtCO1FBQ3pELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLENBQUM7WUFDekIsTUFBTSxDQUFDLGVBQWUsRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQyxDQUFDO0lBQ0wsQ0FBQzt1R0FyQlEsbUNBQW1DOzJGQUFuQyxtQ0FBbUMsMnlEQ3hCaEQscy9DQXNEQSw4a0JEaENjLGVBQWUsNkZBQUUsZUFBZSw2TEFBRSxjQUFjLHdFQUFFLGdCQUFnQjs7MkZBRW5FLG1DQUFtQztrQkFUL0MsU0FBUzsrQkFDSSxtQ0FBbUMsY0FHakMsSUFBSSxtQkFDQyx1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFdBQzVCLENBQUMsZUFBZSxFQUFFLGVBQWUsRUFBRSxjQUFjLEVBQUUsZ0JBQWdCLENBQUM7OEJBR2xELElBQUk7c0JBQTlCLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLE9BQU87c0JBQWpDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNFLFFBQVE7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBTTZCLE9BQU87c0JBQXpDLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXZhdGFyQ29tcG9uZW50LCBBdmF0YXJOZXR3b3JrIH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9hdmF0YXInO1xuaW1wb3J0IHsgQmFkZ2VDb21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2JhZGdlJztcbmltcG9ydCB7IFRvb2x0aXBEaXJlY3RpdmUgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL3Rvb2x0aXAnO1xuaW1wb3J0IHsgU3ltYm9sQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcblxuaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgSG9zdExpc3RlbmVyLFxuICAgIGlucHV0LFxuICAgIElucHV0LFxuICAgIG91dHB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtZHJvcGRvd24taXRlbS1zaW5nbGUtdHdvLWxpbmVzJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZHJvcGRvd24taXRlbS1zaW5nbGUtdHdvLWxpbmVzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1pdGVtLXNpbmdsZS10d28tbGluZXMuY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaW1wb3J0czogW1N5bWJvbENvbXBvbmVudCwgQXZhdGFyQ29tcG9uZW50LCBCYWRnZUNvbXBvbmVudCwgVG9vbHRpcERpcmVjdGl2ZV0sXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duSXRlbVNpbmdsZVR3b0xpbmVzQ29tcG9uZW50IHtcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSB0ZXh0ITogc3RyaW5nO1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGNhcHRpb24hOiBzdHJpbmc7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgc2VsZWN0ZWQhOiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgYXZhdGFyVXJsPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIHN5bWJvbElkPzogc3RyaW5nO1xuICAgIEBJbnB1dCgpIGRpc2FibGVkVG9vbHRpcD86IHN0cmluZztcbiAgICBASW5wdXQoKSBiYWRnZVRleHQ/OiBzdHJpbmc7XG4gICAgQElucHV0KCkgZGl2aWRlckVuYWJsZWQgPSBmYWxzZTtcbiAgICBASW5wdXQoKSBuZXR3b3JrOiBBdmF0YXJOZXR3b3JrIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIHJvdW5kZWRBdmF0YXIgPSBpbnB1dCh0cnVlKTtcbiAgICBpc0ZlYXR1cmVMb2NrZWQgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cbiAgICBsb2NrZWRGZWF0dXJlQ2xpY2tlZCA9IG91dHB1dCgpO1xuXG4gICAgQEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKSBvbkNsaWNrKCRldmVudDogTW91c2VFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5pc0ZlYXR1cmVMb2NrZWQoKSkge1xuICAgICAgICAgICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5sb2NrZWRGZWF0dXJlQ2xpY2tlZC5lbWl0KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJkaXNhYmxlZC1vcGFxdWVcIlxuICAgIFthcFRvb2x0aXBdPVwiZGlzYWJsZWRUb29sdGlwXCJcbiAgICBbYXBUb29sdGlwRGlzYWJsZWRdPVwiIWRpc2FibGVkXCI+PC9kaXY+XG48ZGl2IGNsYXNzPVwib3B0aW9uIHdpdGgtY2FwdGlvblwiIFtjbGFzcy5mZWF0dXJlLWxvY2tlZC1vcHRpb25dPVwiaXNGZWF0dXJlTG9ja2VkKClcIj5cbiAgICBAaWYgKGF2YXRhclVybCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIDxhcC1hdmF0YXJcbiAgICAgICAgICAgIFtyb3VuZGVkXT1cInJvdW5kZWRBdmF0YXIoKVwiXG4gICAgICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgICAgICBbcHJvZmlsZVBpY3R1cmVdPVwiYXZhdGFyVXJsXCJcbiAgICAgICAgICAgIFt1c2VybmFtZV09XCJ0ZXh0XCJcbiAgICAgICAgICAgIFtzaG93SW5pdGlhbHNdPVwidHJ1ZVwiXG4gICAgICAgICAgICBbbmV0d29ya109XCJuZXR3b3JrXCIgLz5cbiAgICB9XG4gICAgQGlmIChzeW1ib2xJZCkge1xuICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICBzaXplPVwic21cIlxuICAgICAgICAgICAgW3N5bWJvbElkXT1cInN5bWJvbElkXCIgLz5cbiAgICB9XG4gICAgPGRpdiBjbGFzcz1cInRleHRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaXJzdC1saW5lXCI+XG4gICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgIGNsYXNzPVwibGFiZWxcIlxuICAgICAgICAgICAgICAgIFt0aXRsZV09XCJ0ZXh0XCI+XG4gICAgICAgICAgICAgICAge3sgdGV4dCB9fVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgQGlmIChiYWRnZVRleHQpIHtcbiAgICAgICAgICAgICAgICA8YXAtYmFkZ2UgY29sb3I9XCJibHVlXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7IGJhZGdlVGV4dCB9fVxuICAgICAgICAgICAgICAgIDwvYXAtYmFkZ2U+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJjYXB0aW9uXCJcbiAgICAgICAgICAgIFt0aXRsZV09XCJjYXB0aW9uXCI+XG4gICAgICAgICAgICB7eyBjYXB0aW9uIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICBAaWYgKGlzRmVhdHVyZUxvY2tlZCgpKSB7XG4gICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgIHN5bWJvbElkPVwiZmVhdHVyZS1sb2NrXCJcbiAgICAgICAgICAgIGNvbG9yPVwicHVycGxlXCJcbiAgICAgICAgICAgIHNpemU9XCJzbVwiLz5cbiAgICB9IEBlbHNlIGlmIChzZWxlY3RlZCkge1xuICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICBjbGFzcz1cIm9wdGlvbi1zZWxlY3RlZFwiXG4gICAgICAgICAgICBzeW1ib2xJZD1cImNoZWNrXCJcbiAgICAgICAgICAgIGNvbG9yPVwiZWxlY3RyaWMtYmx1ZVwiXG4gICAgICAgICAgICBzaXplPVwic21cIiAvPlxuICAgIH1cbjwvZGl2PlxuQGlmIChkaXZpZGVyRW5hYmxlZCkge1xuICAgIDxkaXYgY2xhc3M9XCJkaXZpZGVyXCI+PC9kaXY+XG59XG4iXX0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { LoaderComponent } from '@agorapulse/ui-animations';
|
|
1
|
+
// import { LoaderComponent } from '@agorapulse/ui-animations';
|
|
2
2
|
import { InputDirective } from '@agorapulse/ui-components/input';
|
|
3
3
|
import { InputGroupComponent } from '@agorapulse/ui-components/input-group';
|
|
4
4
|
import { InputSearchComponent } from '@agorapulse/ui-components/input-search';
|
|
@@ -21,6 +21,7 @@ export class DropdownSearchFormComponent {
|
|
|
21
21
|
createNew = new EventEmitter();
|
|
22
22
|
searchTermSignal = signal('');
|
|
23
23
|
searchTerm$ = new BehaviorSubject('');
|
|
24
|
+
submitSubscription = null;
|
|
24
25
|
constructor() {
|
|
25
26
|
this.searchTerm$
|
|
26
27
|
.pipe(filter(() => !!this.select), takeUntilDestroyed())
|
|
@@ -29,25 +30,51 @@ export class DropdownSearchFormComponent {
|
|
|
29
30
|
this.select.filter(term);
|
|
30
31
|
});
|
|
31
32
|
}
|
|
33
|
+
ngOnDestroy() {
|
|
34
|
+
this.submitSubscription?.unsubscribe();
|
|
35
|
+
}
|
|
32
36
|
ngAfterViewInit() {
|
|
33
37
|
setTimeout(() => {
|
|
34
38
|
this.inputSearch.focusInput();
|
|
39
|
+
this.registerKeyboardSubmit();
|
|
35
40
|
}, 100);
|
|
36
41
|
this.select.notFoundTemplate = this.notFoundTpl;
|
|
37
42
|
this.select.loadingTextTemplate = this.loadingTpl;
|
|
43
|
+
// validate the current row on keypress
|
|
38
44
|
if (this.createNewEnabled) {
|
|
39
45
|
this.select.footerTemplate = this.createNewTpl;
|
|
40
46
|
}
|
|
41
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* Register the keyboard submit event allowing to press enter to select the first item found.
|
|
50
|
+
* And escape to close the dropdown. This is useful for keyboard navigation.
|
|
51
|
+
* Use case: search for an item by typing the first characters and press enter to select it.
|
|
52
|
+
* Furthermore: arrow keys currently don't work in the dropdown search form.
|
|
53
|
+
*/
|
|
54
|
+
registerKeyboardSubmit() {
|
|
55
|
+
this.submitSubscription?.unsubscribe();
|
|
56
|
+
this.submitSubscription = this.inputSearch.keyup.subscribe(event => {
|
|
57
|
+
if (event.key === 'Enter') {
|
|
58
|
+
this.select.select(this.select.itemsList.filteredItems[0]);
|
|
59
|
+
}
|
|
60
|
+
else if (event.key === 'Escape') {
|
|
61
|
+
this.select.close();
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
}
|
|
42
65
|
onCreateNew() {
|
|
43
66
|
this.createNew.emit(this.searchTermSignal());
|
|
44
67
|
}
|
|
45
68
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownSearchFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
46
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DropdownSearchFormComponent, isStandalone: true, selector: "ap-dropdown-search-form", inputs: { searchPlaceholder: "searchPlaceholder", createNewEnabled: "createNewEnabled", createText: "createText", select: "select" }, outputs: { createNew: "createNew" }, viewQueries: [{ propertyName: "inputSearch", first: true, predicate: InputSearchComponent, descendants: true }, { propertyName: "notFoundTpl", first: true, predicate: ["notFoundTpl"], descendants: true, read: TemplateRef }, { propertyName: "loadingTpl", first: true, predicate: ["loadingTpl"], descendants: true, read: TemplateRef }, { propertyName: "createNewTpl", first: true, predicate: ["createNewTpl"], descendants: true, read: TemplateRef }], ngImport: i0, template: "<ap-input-search\n class=\"dropdown-search-input\"\n [ngModel]=\"searchTermSignal()\"\n [placeholder]=\"searchPlaceholder\"\n (ngModelChange)=\"searchTerm$.next($event)\" />\n\n<ng-template #notFoundTpl>\n <div class=\"option not-found\">\n <span>{{ select.notFoundText ? select.notFoundText : 'Not found text' }}</span>\n </div>\n</ng-template>\n\n<ng-template #loadingTpl>\n <div class=\"loading-state\">\n <ap-loader diameter=\"30\"
|
|
69
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.3", type: DropdownSearchFormComponent, isStandalone: true, selector: "ap-dropdown-search-form", inputs: { searchPlaceholder: "searchPlaceholder", createNewEnabled: "createNewEnabled", createText: "createText", select: "select" }, outputs: { createNew: "createNew" }, viewQueries: [{ propertyName: "inputSearch", first: true, predicate: InputSearchComponent, descendants: true }, { propertyName: "notFoundTpl", first: true, predicate: ["notFoundTpl"], descendants: true, read: TemplateRef }, { propertyName: "loadingTpl", first: true, predicate: ["loadingTpl"], descendants: true, read: TemplateRef }, { propertyName: "createNewTpl", first: true, predicate: ["createNewTpl"], descendants: true, read: TemplateRef }], ngImport: i0, template: "<ap-input-search\n class=\"dropdown-search-input\"\n [ngModel]=\"searchTermSignal()\"\n [placeholder]=\"searchPlaceholder\"\n (ngModelChange)=\"searchTerm$.next($event)\" />\n\n<ng-template #notFoundTpl>\n <div class=\"option not-found\">\n <span>{{ select.notFoundText ? select.notFoundText : 'Not found text' }}</span>\n </div>\n</ng-template>\n\n<ng-template #loadingTpl>\n <div class=\"loading-state\">\n <!-- <ap-loader diameter=\"30\" /> -->\n <span>\n {{ select.loadingText ? select.loadingText : 'Loading Items' }}\n </span>\n </div>\n</ng-template>\n\n<ng-template\n #createNewTpl\n let-searchTerm=\"searchTerm\">\n <button\n class=\"create-new\"\n type=\"button\"\n (click)=\"onCreateNew()\">\n <ap-symbol\n symbolId=\"plus\"\n size=\"sm\" />\n <span>\n {{ createText }}\n {{ searchTerm ? searchTerm : '' }}\n </span>\n </button>\n</ng-template>\n", styles: ["ap-dropdown-search-form .dropdown-search-input .ap-input-group{width:100%}ap-dropdown-search-form .dropdown-search-input .ap-input-group input{width:100%}ap-dropdown-search-form .dropdown-search-input .ap-input-group input:placeholder-shown{text-overflow:ellipsis}\n"], dependencies: [{ kind: "component", type: SymbolComponent, selector: "ap-symbol", inputs: ["color", "symbolId", "size"] }, { 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:
|
|
70
|
+
// LoaderComponent,
|
|
71
|
+
InputSearchComponent, selector: "ap-input-search", inputs: ["id", "placeholder", "clearable"], outputs: ["focus", "blur", "keyup"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
47
72
|
}
|
|
48
73
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: DropdownSearchFormComponent, decorators: [{
|
|
49
74
|
type: Component,
|
|
50
|
-
args: [{ selector: 'ap-dropdown-search-form', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [InputGroupComponent, InputDirective, SymbolComponent, FormsModule,
|
|
75
|
+
args: [{ selector: 'ap-dropdown-search-form', standalone: true, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [InputGroupComponent, InputDirective, SymbolComponent, FormsModule,
|
|
76
|
+
// LoaderComponent,
|
|
77
|
+
InputSearchComponent], template: "<ap-input-search\n class=\"dropdown-search-input\"\n [ngModel]=\"searchTermSignal()\"\n [placeholder]=\"searchPlaceholder\"\n (ngModelChange)=\"searchTerm$.next($event)\" />\n\n<ng-template #notFoundTpl>\n <div class=\"option not-found\">\n <span>{{ select.notFoundText ? select.notFoundText : 'Not found text' }}</span>\n </div>\n</ng-template>\n\n<ng-template #loadingTpl>\n <div class=\"loading-state\">\n <!-- <ap-loader diameter=\"30\" /> -->\n <span>\n {{ select.loadingText ? select.loadingText : 'Loading Items' }}\n </span>\n </div>\n</ng-template>\n\n<ng-template\n #createNewTpl\n let-searchTerm=\"searchTerm\">\n <button\n class=\"create-new\"\n type=\"button\"\n (click)=\"onCreateNew()\">\n <ap-symbol\n symbolId=\"plus\"\n size=\"sm\" />\n <span>\n {{ createText }}\n {{ searchTerm ? searchTerm : '' }}\n </span>\n </button>\n</ng-template>\n", styles: ["ap-dropdown-search-form .dropdown-search-input .ap-input-group{width:100%}ap-dropdown-search-form .dropdown-search-input .ap-input-group input{width:100%}ap-dropdown-search-form .dropdown-search-input .ap-input-group input:placeholder-shown{text-overflow:ellipsis}\n"] }]
|
|
51
78
|
}], ctorParameters: () => [], propDecorators: { searchPlaceholder: [{
|
|
52
79
|
type: Input
|
|
53
80
|
}], createNewEnabled: [{
|
|
@@ -74,4 +101,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
|
74
101
|
}], createNew: [{
|
|
75
102
|
type: Output
|
|
76
103
|
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24tc2VhcmNoLWZvcm0vZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24tc2VhcmNoLWZvcm0vZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzVELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFDTCxNQUFNLEVBQ04sV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBVy9DLE1BQU0sT0FBTywyQkFBMkI7SUFDM0IsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUN6QixVQUFVLEdBQUcsUUFBUSxDQUFDO0lBSS9CLE1BQU0sQ0FBcUI7SUFDTSxXQUFXLENBQXdCO0lBQ25CLFdBQVcsQ0FBb0I7SUFDaEMsVUFBVSxDQUFvQjtJQUM1QixZQUFZLENBQW9CO0lBRXhFLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWpELGdCQUFnQixHQUFHLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUN0QyxXQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFFOUM7UUFDSSxJQUFJLENBQUMsV0FBVzthQUNYLElBQUksQ0FDRCxNQUFNLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsRUFDM0Isa0JBQWtCLEVBQUUsQ0FDdkI7YUFDQSxTQUFTLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDZCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUMsQ0FBQyxDQUFDO0lBQ1gsQ0FBQztJQUVELGVBQWU7UUFDWCxVQUFVLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQyxDQUFDLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDUixJQUFJLENBQUMsTUFBTSxDQUFDLGdCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUM7UUFDaEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxtQkFBbUIsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQ2xELElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNuRCxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7dUdBM0NRLDJCQUEyQjsyRkFBM0IsMkJBQTJCLDJTQVF6QixvQkFBb0Isd0hBQ0csV0FBVyxtR0FDWixXQUFXLHVHQUNULFdBQVcsNkJDM0NsRCxtL0JBcUNBLG9VRFBtRCxlQUFlLDRGQUFFLFdBQVcsK1ZBQUUsZUFBZSxxRkFBRSxvQkFBb0I7OzJGQUV6RywyQkFBMkI7a0JBVHZDLFNBQVM7K0JBQ0kseUJBQXlCLGNBR3ZCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxXQUM1QixDQUFDLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxvQkFBb0IsQ0FBQzt3REFHMUcsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUlOLE1BQU07c0JBSEwsS0FBSzt1QkFBQzt3QkFDSCxRQUFRLEVBQUUsSUFBSTtxQkFDakI7Z0JBRWdDLFdBQVc7c0JBQTNDLFNBQVM7dUJBQUMsb0JBQW9CO2dCQUNrQixXQUFXO3NCQUEzRCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBQ0MsVUFBVTtzQkFBekQsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUNJLFlBQVk7c0JBQTdELFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFdEMsU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2lucHV0JztcbmltcG9ydCB7IElucHV0R3JvdXBDb21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2lucHV0LWdyb3VwJztcbmltcG9ydCB7IElucHV0U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9pbnB1dC1zZWFyY2gnO1xuaW1wb3J0IHsgU3ltYm9sQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcblxuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0LFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFZpZXdDaGlsZCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBzaWduYWwsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGFrZVVudGlsRGVzdHJveWVkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ1NlbGVjdENvbXBvbmVudCB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgZmlsdGVyIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXAtZHJvcGRvd24tc2VhcmNoLWZvcm0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kcm9wZG93bi1zZWFyY2gtZm9ybS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50LnNjc3MnXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaW1wb3J0czogW0lucHV0R3JvdXBDb21wb25lbnQsIElucHV0RGlyZWN0aXZlLCBTeW1ib2xDb21wb25lbnQsIEZvcm1zTW9kdWxlLCBMb2FkZXJDb21wb25lbnQsIElucHV0U2VhcmNoQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgRHJvcGRvd25TZWFyY2hGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gICAgQElucHV0KCkgc2VhcmNoUGxhY2Vob2xkZXIgPSAnJztcbiAgICBASW5wdXQoKSBjcmVhdGVOZXdFbmFibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgY3JlYXRlVGV4dCA9ICdDcmVhdGUnO1xuICAgIEBJbnB1dCh7XG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIH0pXG4gICAgc2VsZWN0ITogTmdTZWxlY3RDb21wb25lbnQ7XG4gICAgQFZpZXdDaGlsZChJbnB1dFNlYXJjaENvbXBvbmVudCkgaW5wdXRTZWFyY2ghOiBJbnB1dFNlYXJjaENvbXBvbmVudDtcbiAgICBAVmlld0NoaWxkKCdub3RGb3VuZFRwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgbm90Rm91bmRUcGwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ2xvYWRpbmdUcGwnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGxvYWRpbmdUcGwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ2NyZWF0ZU5ld1RwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgY3JlYXRlTmV3VHBsITogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBPdXRwdXQoKSBjcmVhdGVOZXcgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIHNlYXJjaFRlcm1TaWduYWwgPSBzaWduYWw8c3RyaW5nPignJyk7XG4gICAgc2VhcmNoVGVybSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMuc2VhcmNoVGVybSRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiAhIXRoaXMuc2VsZWN0KSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWxEZXN0cm95ZWQoKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSh0ZXJtID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnNlYXJjaFRlcm1TaWduYWwuc2V0KHRlcm0pO1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0LmZpbHRlcih0ZXJtKTtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlucHV0U2VhcmNoLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgfSwgMTAwKTtcbiAgICAgICAgdGhpcy5zZWxlY3Qubm90Rm91bmRUZW1wbGF0ZSA9IHRoaXMubm90Rm91bmRUcGw7XG4gICAgICAgIHRoaXMuc2VsZWN0LmxvYWRpbmdUZXh0VGVtcGxhdGUgPSB0aGlzLmxvYWRpbmdUcGw7XG4gICAgICAgIGlmICh0aGlzLmNyZWF0ZU5ld0VuYWJsZWQpIHtcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0LmZvb3RlclRlbXBsYXRlID0gdGhpcy5jcmVhdGVOZXdUcGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkNyZWF0ZU5ldygpIHtcbiAgICAgICAgdGhpcy5jcmVhdGVOZXcuZW1pdCh0aGlzLnNlYXJjaFRlcm1TaWduYWwoKSk7XG4gICAgfVxufVxuIiwiPGFwLWlucHV0LXNlYXJjaFxuICAgIGNsYXNzPVwiZHJvcGRvd24tc2VhcmNoLWlucHV0XCJcbiAgICBbbmdNb2RlbF09XCJzZWFyY2hUZXJtU2lnbmFsKClcIlxuICAgIFtwbGFjZWhvbGRlcl09XCJzZWFyY2hQbGFjZWhvbGRlclwiXG4gICAgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoVGVybSQubmV4dCgkZXZlbnQpXCIgLz5cblxuPG5nLXRlbXBsYXRlICNub3RGb3VuZFRwbD5cbiAgICA8ZGl2IGNsYXNzPVwib3B0aW9uIG5vdC1mb3VuZFwiPlxuICAgICAgICA8c3Bhbj57eyBzZWxlY3Qubm90Rm91bmRUZXh0ID8gc2VsZWN0Lm5vdEZvdW5kVGV4dCA6ICdOb3QgZm91bmQgdGV4dCcgfX08L3NwYW4+XG4gICAgPC9kaXY+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2xvYWRpbmdUcGw+XG4gICAgPGRpdiBjbGFzcz1cImxvYWRpbmctc3RhdGVcIj5cbiAgICAgICAgPGFwLWxvYWRlciBkaWFtZXRlcj1cIjMwXCIgLz5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICB7eyBzZWxlY3QubG9hZGluZ1RleHQgPyBzZWxlY3QubG9hZGluZ1RleHQgOiAnTG9hZGluZyBJdGVtcycgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlXG4gICAgI2NyZWF0ZU5ld1RwbFxuICAgIGxldC1zZWFyY2hUZXJtPVwic2VhcmNoVGVybVwiPlxuICAgIDxidXR0b25cbiAgICAgICAgY2xhc3M9XCJjcmVhdGUtbmV3XCJcbiAgICAgICAgdHlwZT1cImJ1dHRvblwiXG4gICAgICAgIChjbGljayk9XCJvbkNyZWF0ZU5ldygpXCI+XG4gICAgICAgIDxhcC1zeW1ib2xcbiAgICAgICAgICAgIHN5bWJvbElkPVwicGx1c1wiXG4gICAgICAgICAgICBzaXplPVwic21cIiAvPlxuICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgIHt7IGNyZWF0ZVRleHQgfX1cbiAgICAgICAgICAgIHt7IHNlYXJjaFRlcm0gPyBzZWFyY2hUZXJtIDogJycgfX1cbiAgICAgICAgPC9zcGFuPlxuICAgIDwvYnV0dG9uPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24tc2VhcmNoLWZvcm0vZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vbGlicy91aS1jb21wb25lbnRzL3NlbGVjdC9zcmMvZHJvcGRvd24tc2VhcmNoLWZvcm0vZHJvcGRvd24tc2VhcmNoLWZvcm0uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsK0RBQStEO0FBQy9ELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUNqRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEQsT0FBTyxFQUVILHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBRU4sV0FBVyxFQUNYLFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsTUFBTSxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQzs7O0FBYS9DLE1BQU0sT0FBTywyQkFBMkI7SUFDM0IsaUJBQWlCLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLGdCQUFnQixHQUFHLEtBQUssQ0FBQztJQUN6QixVQUFVLEdBQUcsUUFBUSxDQUFDO0lBSS9CLE1BQU0sQ0FBcUI7SUFDTSxXQUFXLENBQXdCO0lBQ25CLFdBQVcsQ0FBb0I7SUFDaEMsVUFBVSxDQUFvQjtJQUM1QixZQUFZLENBQW9CO0lBRXhFLFNBQVMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBRWpELGdCQUFnQixHQUFHLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUN0QyxXQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsRUFBRSxDQUFDLENBQUM7SUFDOUMsa0JBQWtCLEdBQWlDLElBQUksQ0FBQztJQUV4RDtRQUNJLElBQUksQ0FBQyxXQUFXO2FBQ1gsSUFBSSxDQUNELE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUMzQixrQkFBa0IsRUFBRSxDQUN2QjthQUNBLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUNkLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDaEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBRUQsZUFBZTtRQUNYLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ2xDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNSLElBQUksQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQztRQUNoRCxJQUFJLENBQUMsTUFBTSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxVQUFVLENBQUM7UUFFbEQsdUNBQXVDO1FBQ3ZDLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7WUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQztRQUNuRCxDQUFDO0lBQ0wsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsc0JBQXNCO1FBQ2xCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQy9ELElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLEVBQUUsQ0FBQztnQkFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDL0QsQ0FBQztpQkFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDeEIsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBRVAsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO0lBQ2pELENBQUM7dUdBckVRLDJCQUEyQjsyRkFBM0IsMkJBQTJCLDJTQVF6QixvQkFBb0Isd0hBQ0csV0FBVyxtR0FDWixXQUFXLHVHQUNULFdBQVcsNkJDL0NsRCw0L0JBcUNBLG9VRExtRCxlQUFlLDRGQUFFLFdBQVc7Z0JBQ3ZFLG9CQUFvQjtnQkFDcEIsb0JBQW9COzsyRkFFZiwyQkFBMkI7a0JBWHZDLFNBQVM7K0JBQ0kseUJBQXlCLGNBR3ZCLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxXQUM1QixDQUFDLG1CQUFtQixFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsV0FBVzt3QkFDdkUsb0JBQW9CO3dCQUNwQixvQkFBb0IsQ0FBQzt3REFHaEIsaUJBQWlCO3NCQUF6QixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUlOLE1BQU07c0JBSEwsS0FBSzt1QkFBQzt3QkFDSCxRQUFRLEVBQUUsSUFBSTtxQkFDakI7Z0JBRWdDLFdBQVc7c0JBQTNDLFNBQVM7dUJBQUMsb0JBQW9CO2dCQUNrQixXQUFXO3NCQUEzRCxTQUFTO3VCQUFDLGFBQWEsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBQ0MsVUFBVTtzQkFBekQsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFO2dCQUNJLFlBQVk7c0JBQTdELFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsSUFBSSxFQUFFLFdBQVcsRUFBRTtnQkFFdEMsU0FBUztzQkFBbEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8vIGltcG9ydCB7IExvYWRlckNvbXBvbmVudCB9IGZyb20gJ0BhZ29yYXB1bHNlL3VpLWFuaW1hdGlvbnMnO1xuaW1wb3J0IHsgSW5wdXREaXJlY3RpdmUgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2lucHV0JztcbmltcG9ydCB7IElucHV0R3JvdXBDb21wb25lbnQgfSBmcm9tICdAYWdvcmFwdWxzZS91aS1jb21wb25lbnRzL2lucHV0LWdyb3VwJztcbmltcG9ydCB7IElucHV0U2VhcmNoQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktY29tcG9uZW50cy9pbnB1dC1zZWFyY2gnO1xuaW1wb3J0IHsgU3ltYm9sQ29tcG9uZW50IH0gZnJvbSAnQGFnb3JhcHVsc2UvdWktc3ltYm9sJztcblxuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENvbXBvbmVudCxcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBPdXRwdXRSZWZTdWJzY3JpcHRpb24sXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIHNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nU2VsZWN0Q29tcG9uZW50IH0gZnJvbSAnQG5nLXNlbGVjdC9uZy1zZWxlY3QnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdhcC1kcm9wZG93bi1zZWFyY2gtZm9ybScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2Ryb3Bkb3duLXNlYXJjaC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kcm9wZG93bi1zZWFyY2gtZm9ybS5jb21wb25lbnQuc2NzcyddLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBpbXBvcnRzOiBbSW5wdXRHcm91cENvbXBvbmVudCwgSW5wdXREaXJlY3RpdmUsIFN5bWJvbENvbXBvbmVudCwgRm9ybXNNb2R1bGUsIFxuICAgICAgICAvLyBMb2FkZXJDb21wb25lbnQsIFxuICAgICAgICBJbnB1dFNlYXJjaENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIERyb3Bkb3duU2VhcmNoRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KCkgc2VhcmNoUGxhY2Vob2xkZXIgPSAnJztcbiAgICBASW5wdXQoKSBjcmVhdGVOZXdFbmFibGVkID0gZmFsc2U7XG4gICAgQElucHV0KCkgY3JlYXRlVGV4dCA9ICdDcmVhdGUnO1xuICAgIEBJbnB1dCh7XG4gICAgICAgIHJlcXVpcmVkOiB0cnVlLFxuICAgIH0pXG4gICAgc2VsZWN0ITogTmdTZWxlY3RDb21wb25lbnQ7XG4gICAgQFZpZXdDaGlsZChJbnB1dFNlYXJjaENvbXBvbmVudCkgaW5wdXRTZWFyY2ghOiBJbnB1dFNlYXJjaENvbXBvbmVudDtcbiAgICBAVmlld0NoaWxkKCdub3RGb3VuZFRwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgbm90Rm91bmRUcGwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ2xvYWRpbmdUcGwnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIGxvYWRpbmdUcGwhOiBUZW1wbGF0ZVJlZjxhbnk+O1xuICAgIEBWaWV3Q2hpbGQoJ2NyZWF0ZU5ld1RwbCcsIHsgcmVhZDogVGVtcGxhdGVSZWYgfSkgY3JlYXRlTmV3VHBsITogVGVtcGxhdGVSZWY8YW55PjtcblxuICAgIEBPdXRwdXQoKSBjcmVhdGVOZXcgPSBuZXcgRXZlbnRFbWl0dGVyPHN0cmluZz4oKTtcblxuICAgIHNlYXJjaFRlcm1TaWduYWwgPSBzaWduYWw8c3RyaW5nPignJyk7XG4gICAgc2VhcmNoVGVybSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4oJycpO1xuICAgIHN1Ym1pdFN1YnNjcmlwdGlvbjogT3V0cHV0UmVmU3Vic2NyaXB0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHtcbiAgICAgICAgdGhpcy5zZWFyY2hUZXJtJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKCgpID0+ICEhdGhpcy5zZWxlY3QpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCgpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHRlcm0gPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VhcmNoVGVybVNpZ25hbC5zZXQodGVybSk7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3QuZmlsdGVyKHRlcm0pO1xuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3VibWl0U3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlucHV0U2VhcmNoLmZvY3VzSW5wdXQoKTtcbiAgICAgICAgICAgIHRoaXMucmVnaXN0ZXJLZXlib2FyZFN1Ym1pdCgpO1xuICAgICAgICB9LCAxMDApO1xuICAgICAgICB0aGlzLnNlbGVjdC5ub3RGb3VuZFRlbXBsYXRlID0gdGhpcy5ub3RGb3VuZFRwbDtcbiAgICAgICAgdGhpcy5zZWxlY3QubG9hZGluZ1RleHRUZW1wbGF0ZSA9IHRoaXMubG9hZGluZ1RwbDtcblxuICAgICAgICAvLyB2YWxpZGF0ZSB0aGUgY3VycmVudCByb3cgb24ga2V5cHJlc3NcbiAgICAgICAgaWYgKHRoaXMuY3JlYXRlTmV3RW5hYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5zZWxlY3QuZm9vdGVyVGVtcGxhdGUgPSB0aGlzLmNyZWF0ZU5ld1RwbDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlZ2lzdGVyIHRoZSBrZXlib2FyZCBzdWJtaXQgZXZlbnQgYWxsb3dpbmcgdG8gcHJlc3MgZW50ZXIgdG8gc2VsZWN0IHRoZSBmaXJzdCBpdGVtIGZvdW5kLlxuICAgICAqIEFuZCBlc2NhcGUgdG8gY2xvc2UgdGhlIGRyb3Bkb3duLiBUaGlzIGlzIHVzZWZ1bCBmb3Iga2V5Ym9hcmQgbmF2aWdhdGlvbi5cbiAgICAgKiBVc2UgY2FzZTogc2VhcmNoIGZvciBhbiBpdGVtIGJ5IHR5cGluZyB0aGUgZmlyc3QgY2hhcmFjdGVycyBhbmQgcHJlc3MgZW50ZXIgdG8gc2VsZWN0IGl0LlxuICAgICAqIEZ1cnRoZXJtb3JlOiBhcnJvdyBrZXlzIGN1cnJlbnRseSBkb24ndCB3b3JrIGluIHRoZSBkcm9wZG93biBzZWFyY2ggZm9ybS5cbiAgICAgKi9cbiAgICByZWdpc3RlcktleWJvYXJkU3VibWl0KCkge1xuICAgICAgICB0aGlzLnN1Ym1pdFN1YnNjcmlwdGlvbj8udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5zdWJtaXRTdWJzY3JpcHRpb24gPSB0aGlzLmlucHV0U2VhcmNoLmtleXVwLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3Quc2VsZWN0KHRoaXMuc2VsZWN0Lml0ZW1zTGlzdC5maWx0ZXJlZEl0ZW1zWzBdKTtcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnRXNjYXBlJykge1xuICAgICAgICAgICAgICAgIHRoaXMuc2VsZWN0LmNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgfVxuXG4gICAgb25DcmVhdGVOZXcoKSB7XG4gICAgICAgIHRoaXMuY3JlYXRlTmV3LmVtaXQodGhpcy5zZWFyY2hUZXJtU2lnbmFsKCkpO1xuICAgIH1cbn1cbiIsIjxhcC1pbnB1dC1zZWFyY2hcbiAgICBjbGFzcz1cImRyb3Bkb3duLXNlYXJjaC1pbnB1dFwiXG4gICAgW25nTW9kZWxdPVwic2VhcmNoVGVybVNpZ25hbCgpXCJcbiAgICBbcGxhY2Vob2xkZXJdPVwic2VhcmNoUGxhY2Vob2xkZXJcIlxuICAgIChuZ01vZGVsQ2hhbmdlKT1cInNlYXJjaFRlcm0kLm5leHQoJGV2ZW50KVwiIC8+XG5cbjxuZy10ZW1wbGF0ZSAjbm90Rm91bmRUcGw+XG4gICAgPGRpdiBjbGFzcz1cIm9wdGlvbiBub3QtZm91bmRcIj5cbiAgICAgICAgPHNwYW4+e3sgc2VsZWN0Lm5vdEZvdW5kVGV4dCA/IHNlbGVjdC5ub3RGb3VuZFRleHQgOiAnTm90IGZvdW5kIHRleHQnIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNsb2FkaW5nVHBsPlxuICAgIDxkaXYgY2xhc3M9XCJsb2FkaW5nLXN0YXRlXCI+XG4gICAgICAgIDwhLS0gPGFwLWxvYWRlciBkaWFtZXRlcj1cIjMwXCIgLz4gLS0+XG4gICAgICAgIDxzcGFuPlxuICAgICAgICAgICAge3sgc2VsZWN0LmxvYWRpbmdUZXh0ID8gc2VsZWN0LmxvYWRpbmdUZXh0IDogJ0xvYWRpbmcgSXRlbXMnIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZVxuICAgICNjcmVhdGVOZXdUcGxcbiAgICBsZXQtc2VhcmNoVGVybT1cInNlYXJjaFRlcm1cIj5cbiAgICA8YnV0dG9uXG4gICAgICAgIGNsYXNzPVwiY3JlYXRlLW5ld1wiXG4gICAgICAgIHR5cGU9XCJidXR0b25cIlxuICAgICAgICAoY2xpY2spPVwib25DcmVhdGVOZXcoKVwiPlxuICAgICAgICA8YXAtc3ltYm9sXG4gICAgICAgICAgICBzeW1ib2xJZD1cInBsdXNcIlxuICAgICAgICAgICAgc2l6ZT1cInNtXCIgLz5cbiAgICAgICAgPHNwYW4+XG4gICAgICAgICAgICB7eyBjcmVhdGVUZXh0IH19XG4gICAgICAgICAgICB7eyBzZWFyY2hUZXJtID8gc2VhcmNoVGVybSA6ICcnIH19XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
|