@eui/components 18.2.16-snapshot-1756489547144 → 18.2.16-snapshot-1757660834309
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/directives/package.json +3 -0
- package/docs/components/EuiTreeComponent.html +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/properties.html +1 -1
- package/esm2022/eui-autocomplete/eui-autocomplete.component.mjs +3 -3
- package/esm2022/eui-avatar/eui-avatar.component.mjs +2 -2
- package/esm2022/eui-button-v2/eui-button-v2.component.mjs +2 -2
- package/esm2022/eui-card/eui-card.component.mjs +2 -2
- package/esm2022/eui-dashboard-card/eui-dashboard-card.component.mjs +2 -2
- package/esm2022/eui-select/eui-select.component.mjs +2 -2
- package/esm2022/eui-table/eui-table.component.mjs +2 -2
- package/esm2022/eui-textarea/eui-textarea.component.mjs +2 -2
- package/esm2022/eui-tree/eui-tree.component.mjs +3 -3
- package/eui-accordion/package.json +3 -0
- package/eui-alert/package.json +3 -0
- package/eui-autocomplete/eui-autocomplete.component.d.ts.map +1 -1
- package/eui-autocomplete/package.json +3 -0
- package/eui-avatar/package.json +3 -0
- package/eui-badge/package.json +3 -0
- package/eui-block-content/package.json +3 -0
- package/eui-block-document/package.json +3 -0
- package/eui-breadcrumb/package.json +3 -0
- package/eui-button/package.json +3 -0
- package/eui-button-group/package.json +3 -0
- package/eui-button-v2/package.json +3 -0
- package/eui-card/package.json +3 -0
- package/eui-chip/package.json +3 -0
- package/eui-chip-list/package.json +3 -0
- package/eui-dashboard-button/package.json +3 -0
- package/eui-dashboard-card/package.json +3 -0
- package/eui-date-range-selector/package.json +3 -0
- package/eui-datepicker/package.json +3 -0
- package/eui-dialog/package.json +3 -0
- package/eui-dimmer/package.json +3 -0
- package/eui-disable-content/package.json +3 -0
- package/eui-discussion-thread/package.json +3 -0
- package/eui-dropdown/package.json +3 -0
- package/eui-feedback-message/package.json +3 -0
- package/eui-fieldset/package.json +3 -0
- package/eui-file-upload/package.json +3 -0
- package/eui-growl/package.json +3 -0
- package/eui-icon/package.json +3 -0
- package/eui-icon-button/package.json +3 -0
- package/eui-icon-button-expander/package.json +3 -0
- package/eui-icon-color/package.json +3 -0
- package/eui-icon-input/package.json +3 -0
- package/eui-icon-state/package.json +3 -0
- package/eui-icon-toggle/package.json +3 -0
- package/eui-input-checkbox/package.json +3 -0
- package/eui-input-group/package.json +3 -0
- package/eui-input-number/package.json +3 -0
- package/eui-input-radio/package.json +3 -0
- package/eui-input-text/package.json +3 -0
- package/eui-label/package.json +3 -0
- package/eui-language-selector/package.json +3 -0
- package/eui-list/package.json +3 -0
- package/eui-menu/package.json +3 -0
- package/eui-message-box/package.json +3 -0
- package/eui-navbar/package.json +3 -0
- package/eui-overlay/package.json +3 -0
- package/eui-page/package.json +3 -0
- package/eui-paginator/package.json +3 -0
- package/eui-popover/package.json +3 -0
- package/eui-progress-bar/package.json +3 -0
- package/eui-progress-circle/package.json +3 -0
- package/eui-select/package.json +3 -0
- package/eui-sidebar-menu/package.json +3 -0
- package/eui-skeleton/package.json +3 -0
- package/eui-slide-toggle/package.json +3 -0
- package/eui-split-button/package.json +3 -0
- package/eui-table/package.json +3 -0
- package/eui-table-v2/package.json +3 -0
- package/eui-tabs/package.json +3 -0
- package/eui-textarea/package.json +3 -0
- package/eui-timebar/package.json +3 -0
- package/eui-timeline/package.json +3 -0
- package/eui-timepicker/package.json +3 -0
- package/eui-tree/package.json +3 -0
- package/eui-tree-list/package.json +3 -0
- package/eui-user-profile/package.json +3 -0
- package/eui-wizard/package.json +3 -0
- package/externals/charts/package.json +3 -0
- package/externals/eui-editor/package.json +3 -0
- package/externals/helpers/package.json +3 -0
- package/externals/quill/package.json +3 -0
- package/externals/search/favourite-queries/package.json +3 -0
- package/fesm2022/eui-components-eui-autocomplete.mjs +2 -2
- package/fesm2022/eui-components-eui-autocomplete.mjs.map +1 -1
- package/fesm2022/eui-components-eui-avatar.mjs +2 -2
- package/fesm2022/eui-components-eui-button-v2.mjs +2 -2
- package/fesm2022/eui-components-eui-button-v2.mjs.map +1 -1
- package/fesm2022/eui-components-eui-card.mjs +2 -2
- package/fesm2022/eui-components-eui-card.mjs.map +1 -1
- package/fesm2022/eui-components-eui-dashboard-card.mjs +2 -2
- package/fesm2022/eui-components-eui-select.mjs +2 -2
- package/fesm2022/eui-components-eui-select.mjs.map +1 -1
- package/fesm2022/eui-components-eui-table.mjs +2 -2
- package/fesm2022/eui-components-eui-table.mjs.map +1 -1
- package/fesm2022/eui-components-eui-textarea.mjs +2 -2
- package/fesm2022/eui-components-eui-textarea.mjs.map +1 -1
- package/fesm2022/eui-components-eui-tree.mjs +2 -2
- package/fesm2022/eui-components-eui-tree.mjs.map +1 -1
- package/layout/package.json +3 -0
- package/package.json +27 -27
- package/pipes/package.json +3 -0
- package/shared/package.json +3 -0
- package/validators/package.json +3 -0
@@ -100,7 +100,7 @@ class EuiDashboardCardComponent {
|
|
100
100
|
}
|
101
101
|
}
|
102
102
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuiDashboardCardComponent, deps: [{ token: i1.BaseStatesDirective }], target: i0.ɵɵFactoryTarget.Component }); }
|
103
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuiDashboardCardComponent, selector: "eui-dashboard-card", inputs: { e2eAttr: "e2eAttr", label: "label", subLabel: "subLabel", labelMaxLines: "labelMaxLines", subLabelMaxLines: "subLabelMaxLines", imageUrl: "imageUrl", iconSvgName: "iconSvgName", iconSvgSize: "iconSvgSize", iconLabel: "iconLabel", url: "url", urlExternal: "urlExternal", urlExternalTarget: "urlExternalTarget", isHorizontal: ["isHorizontal", "isHorizontal", booleanAttribute], isFlatAvatar: ["isFlatAvatar", "isFlatAvatar", booleanAttribute], hasNoBackgroundAvatar: ["hasNoBackgroundAvatar", "hasNoBackgroundAvatar", booleanAttribute], isClickeable: ["isClickeable", "isClickeable", booleanAttribute], isFlat: ["isFlat", "isFlat", booleanAttribute] }, outputs: { cardClick: "cardClick" }, host: { listeners: { "click": "onClick($event)" }, properties: { "class": "this.cssClasses", "attr.data-e2e": "this.e2eAttr", "attr.tabindex": "this.tabindex" } }, queries: [{ propertyName: "customContent", first: true, predicate: i0.forwardRef(() => EuiDashboardCardContentComponent), descendants: true }], hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiAccent", "euiAccent", "euiVariant", "euiVariant", "euiSizeXS", "euiSizeXS", "euiSizeS", "euiSizeS", "euiSizeM", "euiSizeM", "euiSizeL", "euiSizeL", "euiSizeXL", "euiSizeXL", "euiSize2XL", "euiSize2XL", "euiSizeVariant", "euiSizeVariant", "euiDisabled", "euiDisabled", "euiOutline", "euiOutline"] }], ngImport: i0, template: "@if (url || urlExternal) {\n @if (urlExternal) {\n <a href=\"{{ urlExternal }}\" target=\"{{ urlExternalTarget }}\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n } @else {\n <a [routerLink]=\"[url]\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n }\n} @else {\n @if (customContent) {\n <ng-content select=\"eui-dashboard-card-content\"/>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n}\n\n<div class=\"eui-dashboard-card__status\">\n <ng-content select=\"eui-dashboard-card-status-content\"/>\n</div>\n\n<ng-template #content>\n @if (iconSvgName || imageUrl || iconLabel) {\n <div class=\"eui-dashboard-card__avatar-wrapper\">\n <eui-avatar\n [euiVariant]=\"baseStatesDirective.euiVariant\"\n [euiSizeVariant]=\"baseStatesDirective.euiSizeVariant\"\n [isFlat]=\"isFlatAvatar\"\n [hasNoBackground]=\"hasNoBackgroundAvatar\">\n <eui-avatar-icon>\n <eui-icon-svg *ngIf=\"iconSvgName\" [icon]=\"iconSvgName\" [size]=\"iconSvgSize\"></eui-icon-svg>\n </eui-avatar-icon>\n <eui-avatar-image *ngIf=\"imageUrl\" imageUrl=\"{{ imageUrl }}\"></eui-avatar-image>\n <eui-avatar-text *ngIf=\"iconLabel\">{{iconLabel}}</eui-avatar-text>\n </eui-avatar>\n </div>\n }\n <div class=\"eui-dashboard-card__content-wrapper\">\n @if (label) {\n <div class=\"eui-dashboard-card__label-content\">\n <eui-label>\n <eui-label class=\"eui-dashboard-card__label eui-dashboard-card__label--max-lines-{{labelMaxLines}}\" [ngClass]=\"subLabel ? 'eui-dashboard-card__label--with-sublabel' : ''\">\n {{ label }}\n </eui-label>\n @if (subLabel) {\n <eui-label euiSublabel class=\"eui-dashboard-card__sublabel eui-dashboard-card__sublabel--max-lines-{{subLabelMaxLines}}\">\n {{ subLabel }}\n </eui-label>\n }\n </eui-label>\n </div>\n }\n <div class=\"eui-dashboard-card__sub-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".eui-18 .eui-dashboard-card{display:flex;flex-direction:column;width:100%;background-color:var(--eui-c-white);border-radius:var(--eui-br-m);border:var(--eui-bw-xs) solid var(--eui-c-neutral-bg-light);box-shadow:var(--eui-sh-1);padding:var(--eui-s-s);cursor:default;position:relative}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled){cursor:pointer}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:var(--eui-sh-3)}.eui-18 .eui-dashboard-card--flat{box-shadow:none;border-color:var(--eui-c-neutral-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:none;border-color:var(--eui-c-neutral-lightest)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline{background-color:var(--eui-c-white)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--primary,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--info{border-color:var(--eui-c-primary-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--success{border-color:var(--eui-c-success-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--warning{border-color:var(--eui-c-warning-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--danger{border-color:var(--eui-c-danger-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--accent{border-color:var(--eui-c-accent-lighter)}.eui-18 .eui-dashboard-card__anchor-wrapper{display:flex;width:100%;flex-direction:column}.eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card__content-wrapper{display:flex;justify-content:center;align-items:center}.eui-18 .eui-dashboard-card__avatar-wrapper{padding:0 var(--eui-s-4xl)}.eui-18 .eui-dashboard-card__content-wrapper{display:flex;flex-direction:column;padding:var(--eui-s-s);width:100%}.eui-18 .eui-dashboard-card__label-content{text-align:center}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label{font:var(--eui-f-l);color:var(--eui-c-neutral-light);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--with-sublabel{margin-bottom:0}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel{font:var(--eui-f-m);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__sub-content{display:block;text-align:center}.eui-18 .eui-dashboard-card__sub-content:empty{margin-top:calc(-1 * var(--eui-s-m))}.eui-18 .eui-dashboard-card--horizontal,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__anchor-wrapper{flex-direction:row}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__content-wrapper{width:50%}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper{border-right:1px solid var(--eui-c-neutral-lighter);margin-right:var(--eui-s-m);padding:var(--eui-s-s) 0}.eui-18 .eui-dashboard-card--disabled{opacity:.65;pointer-events:none}.eui-18 .eui-dashboard-card__status{position:absolute;top:-.75rem;right:var(--eui-s-m)}.eui-18 .eui-dashboard-card-content{display:block}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--primary:not(.eui-dashboard-card--outline){background-color:var(--eui-c-primary-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--success:not(.eui-dashboard-card--outline){background-color:var(--eui-c-success-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--warning:not(.eui-dashboard-card--outline){background-color:var(--eui-c-warning-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--danger:not(.eui-dashboard-card--outline){background-color:var(--eui-c-danger-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--accent:not(.eui-dashboard-card--outline){background-color:var(--eui-c-accent-bg)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.EuiAvatarComponent, selector: "div[euiAvatar], span[euiAvatar], eui-avatar", inputs: ["e2eAttr", "aria-label", "hasShadow", "isShapeSquare", "isFlat", "hasNoBackground"] }, { kind: "component", type: i4.EuiAvatarIconComponent, selector: "eui-avatar-icon" }, { kind: "component", type: i4.EuiAvatarTextComponent, selector: "eui-avatar-text" }, { kind: "component", type: i4.EuiAvatarImageComponent, selector: "eui-avatar-image", inputs: ["imageUrl"] }, { kind: "component", type: i5.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "component", type: i6.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
103
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: EuiDashboardCardComponent, selector: "eui-dashboard-card", inputs: { e2eAttr: "e2eAttr", label: "label", subLabel: "subLabel", labelMaxLines: "labelMaxLines", subLabelMaxLines: "subLabelMaxLines", imageUrl: "imageUrl", iconSvgName: "iconSvgName", iconSvgSize: "iconSvgSize", iconLabel: "iconLabel", url: "url", urlExternal: "urlExternal", urlExternalTarget: "urlExternalTarget", isHorizontal: ["isHorizontal", "isHorizontal", booleanAttribute], isFlatAvatar: ["isFlatAvatar", "isFlatAvatar", booleanAttribute], hasNoBackgroundAvatar: ["hasNoBackgroundAvatar", "hasNoBackgroundAvatar", booleanAttribute], isClickeable: ["isClickeable", "isClickeable", booleanAttribute], isFlat: ["isFlat", "isFlat", booleanAttribute] }, outputs: { cardClick: "cardClick" }, host: { listeners: { "click": "onClick($event)" }, properties: { "class": "this.cssClasses", "attr.data-e2e": "this.e2eAttr", "attr.tabindex": "this.tabindex" } }, queries: [{ propertyName: "customContent", first: true, predicate: i0.forwardRef(() => EuiDashboardCardContentComponent), descendants: true }], hostDirectives: [{ directive: i1.BaseStatesDirective, inputs: ["euiPrimary", "euiPrimary", "euiSecondary", "euiSecondary", "euiSuccess", "euiSuccess", "euiInfo", "euiInfo", "euiWarning", "euiWarning", "euiDanger", "euiDanger", "euiAccent", "euiAccent", "euiVariant", "euiVariant", "euiSizeXS", "euiSizeXS", "euiSizeS", "euiSizeS", "euiSizeM", "euiSizeM", "euiSizeL", "euiSizeL", "euiSizeXL", "euiSizeXL", "euiSize2XL", "euiSize2XL", "euiSizeVariant", "euiSizeVariant", "euiDisabled", "euiDisabled", "euiOutline", "euiOutline"] }], ngImport: i0, template: "@if (url || urlExternal) {\n @if (urlExternal) {\n <a href=\"{{ urlExternal }}\" target=\"{{ urlExternalTarget }}\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n } @else {\n <a [routerLink]=\"[url]\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n }\n} @else {\n @if (customContent) {\n <ng-content select=\"eui-dashboard-card-content\"/>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n}\n\n<div class=\"eui-dashboard-card__status\">\n <ng-content select=\"eui-dashboard-card-status-content\"/>\n</div>\n\n<ng-template #content>\n @if (iconSvgName || imageUrl || iconLabel) {\n <div class=\"eui-dashboard-card__avatar-wrapper\">\n <eui-avatar\n [euiVariant]=\"baseStatesDirective.euiVariant\"\n [euiSizeVariant]=\"baseStatesDirective.euiSizeVariant\"\n [isFlat]=\"isFlatAvatar\"\n [hasNoBackground]=\"hasNoBackgroundAvatar\">\n <eui-avatar-icon>\n <eui-icon-svg *ngIf=\"iconSvgName\" [icon]=\"iconSvgName\" [size]=\"iconSvgSize\"></eui-icon-svg>\n </eui-avatar-icon>\n <eui-avatar-image *ngIf=\"imageUrl\" imageUrl=\"{{ imageUrl }}\"></eui-avatar-image>\n <eui-avatar-text *ngIf=\"iconLabel\">{{iconLabel}}</eui-avatar-text>\n </eui-avatar>\n </div>\n }\n <div class=\"eui-dashboard-card__content-wrapper\">\n @if (label) {\n <div class=\"eui-dashboard-card__label-content\">\n <eui-label>\n <eui-label class=\"eui-dashboard-card__label eui-dashboard-card__label--max-lines-{{labelMaxLines}}\" [ngClass]=\"subLabel ? 'eui-dashboard-card__label--with-sublabel' : ''\">\n {{ label }}\n </eui-label>\n @if (subLabel) {\n <eui-label euiSublabel class=\"eui-dashboard-card__sublabel eui-dashboard-card__sublabel--max-lines-{{subLabelMaxLines}}\">\n {{ subLabel }}\n </eui-label>\n }\n </eui-label>\n </div>\n }\n <div class=\"eui-dashboard-card__sub-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".eui-18 .eui-dashboard-card{display:flex;flex-direction:column;width:100%;background-color:var(--eui-c-white);border-radius:var(--eui-br-m);border:var(--eui-bw-xs) solid var(--eui-c-neutral-bg-light);box-shadow:var(--eui-sh-1);padding:var(--eui-s-s);cursor:default;position:relative}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled){cursor:pointer}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:var(--eui-sh-3)}.eui-18 .eui-dashboard-card--flat{box-shadow:none;border-color:var(--eui-c-neutral-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:none;border-color:var(--eui-c-neutral-lightest)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline{background-color:var(--eui-c-white)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--primary,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--info{border-color:var(--eui-c-primary-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--success{border-color:var(--eui-c-success-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--warning{border-color:var(--eui-c-warning-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--danger{border-color:var(--eui-c-danger-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--accent{border-color:var(--eui-c-accent-lighter)}.eui-18 .eui-dashboard-card__anchor-wrapper{display:flex;width:100%;flex-direction:column}.eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card__content-wrapper{display:flex;justify-content:center;align-items:center}.eui-18 .eui-dashboard-card__avatar-wrapper{padding:0 var(--eui-s-4xl)}.eui-18 .eui-dashboard-card__content-wrapper{display:flex;flex-direction:column;padding:var(--eui-s-s);width:100%}.eui-18 .eui-dashboard-card__label-content{text-align:center}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label{font:var(--eui-f-l);color:var(--eui-c-neutral-light);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--with-sublabel{margin-bottom:0}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel{font:var(--eui-f-m);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__sub-content{display:block;text-align:center}.eui-18 .eui-dashboard-card__sub-content:empty{margin-top:calc(-1 * var(--eui-s-m))}.eui-18 .eui-dashboard-card--horizontal,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__anchor-wrapper{flex-direction:row}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__content-wrapper{width:50%}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper{border-right:1px solid var(--eui-c-neutral-lighter);margin-right:var(--eui-s-m);padding:var(--eui-s-s) 0}.eui-18 .eui-dashboard-card--disabled{opacity:.65;pointer-events:none}.eui-18 .eui-dashboard-card__status{position:absolute;top:-.75rem;right:var(--eui-s-m)}.eui-18 .eui-dashboard-card-content{display:block}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--primary:not(.eui-dashboard-card--outline){background-color:var(--eui-c-primary-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--success:not(.eui-dashboard-card--outline){background-color:var(--eui-c-success-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--warning:not(.eui-dashboard-card--outline){background-color:var(--eui-c-warning-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--danger:not(.eui-dashboard-card--outline){background-color:var(--eui-c-danger-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--accent:not(.eui-dashboard-card--outline){background-color:var(--eui-c-accent-bg)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.EuiAvatarComponent, selector: "div[euiAvatar], span[euiAvatar], eui-avatar", inputs: ["e2eAttr", "aria-label", "hasShadow", "isShapeSquare", "isFlat", "hasNoBackground"] }, { kind: "component", type: i4.EuiAvatarIconComponent, selector: "eui-avatar-icon" }, { kind: "component", type: i4.EuiAvatarTextComponent, selector: "eui-avatar-text" }, { kind: "component", type: i4.EuiAvatarImageComponent, selector: "eui-avatar-image", inputs: ["imageUrl"] }, { kind: "component", type: i5.EuiLabelComponent, selector: "label[euiLabel], span[euiLabel], div[euiLabel], a[euiLabel], eui-label, label[euiSublabel], span[euiSublabel], div[euiSublabel], a[euiSublabel], eui-sublabel", inputs: ["euiRequired", "euiReadonly", "euiSublabel"] }, { kind: "component", type: i6.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "fillColor", "set", "size", "style", "iconUrl", "transform", "euiVariant", "aria-label", "ariaHidden", "focusable", "isLoading", "isInputIcon", "euiStart", "euiEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
104
104
|
}
|
105
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuiDashboardCardComponent, decorators: [{
|
106
106
|
type: Component,
|
@@ -127,7 +127,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
127
127
|
'euiOutline',
|
128
128
|
],
|
129
129
|
},
|
130
|
-
], template: "@if (url || urlExternal) {\n @if (urlExternal) {\n <a href=\"{{ urlExternal }}\" target=\"{{ urlExternalTarget }}\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n } @else {\n <a [routerLink]=\"[url]\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n }\n} @else {\n @if (customContent) {\n <ng-content select=\"eui-dashboard-card-content\"/>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n}\n\n<div class=\"eui-dashboard-card__status\">\n <ng-content select=\"eui-dashboard-card-status-content\"/>\n</div>\n\n<ng-template #content>\n @if (iconSvgName || imageUrl || iconLabel) {\n <div class=\"eui-dashboard-card__avatar-wrapper\">\n <eui-avatar\n [euiVariant]=\"baseStatesDirective.euiVariant\"\n [euiSizeVariant]=\"baseStatesDirective.euiSizeVariant\"\n [isFlat]=\"isFlatAvatar\"\n [hasNoBackground]=\"hasNoBackgroundAvatar\">\n <eui-avatar-icon>\n <eui-icon-svg *ngIf=\"iconSvgName\" [icon]=\"iconSvgName\" [size]=\"iconSvgSize\"></eui-icon-svg>\n </eui-avatar-icon>\n <eui-avatar-image *ngIf=\"imageUrl\" imageUrl=\"{{ imageUrl }}\"></eui-avatar-image>\n <eui-avatar-text *ngIf=\"iconLabel\">{{iconLabel}}</eui-avatar-text>\n </eui-avatar>\n </div>\n }\n <div class=\"eui-dashboard-card__content-wrapper\">\n @if (label) {\n <div class=\"eui-dashboard-card__label-content\">\n <eui-label>\n <eui-label class=\"eui-dashboard-card__label eui-dashboard-card__label--max-lines-{{labelMaxLines}}\" [ngClass]=\"subLabel ? 'eui-dashboard-card__label--with-sublabel' : ''\">\n {{ label }}\n </eui-label>\n @if (subLabel) {\n <eui-label euiSublabel class=\"eui-dashboard-card__sublabel eui-dashboard-card__sublabel--max-lines-{{subLabelMaxLines}}\">\n {{ subLabel }}\n </eui-label>\n }\n </eui-label>\n </div>\n }\n <div class=\"eui-dashboard-card__sub-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".eui-18 .eui-dashboard-card{display:flex;flex-direction:column;width:100%;background-color:var(--eui-c-white);border-radius:var(--eui-br-m);border:var(--eui-bw-xs) solid var(--eui-c-neutral-bg-light);box-shadow:var(--eui-sh-1);padding:var(--eui-s-s);cursor:default;position:relative}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled)
|
130
|
+
], template: "@if (url || urlExternal) {\n @if (urlExternal) {\n <a href=\"{{ urlExternal }}\" target=\"{{ urlExternalTarget }}\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n } @else {\n <a [routerLink]=\"[url]\" class=\"eui-dashboard-card__anchor-wrapper\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n </a>\n }\n} @else {\n @if (customContent) {\n <ng-content select=\"eui-dashboard-card-content\"/>\n } @else {\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n }\n}\n\n<div class=\"eui-dashboard-card__status\">\n <ng-content select=\"eui-dashboard-card-status-content\"/>\n</div>\n\n<ng-template #content>\n @if (iconSvgName || imageUrl || iconLabel) {\n <div class=\"eui-dashboard-card__avatar-wrapper\">\n <eui-avatar\n [euiVariant]=\"baseStatesDirective.euiVariant\"\n [euiSizeVariant]=\"baseStatesDirective.euiSizeVariant\"\n [isFlat]=\"isFlatAvatar\"\n [hasNoBackground]=\"hasNoBackgroundAvatar\">\n <eui-avatar-icon>\n <eui-icon-svg *ngIf=\"iconSvgName\" [icon]=\"iconSvgName\" [size]=\"iconSvgSize\"></eui-icon-svg>\n </eui-avatar-icon>\n <eui-avatar-image *ngIf=\"imageUrl\" imageUrl=\"{{ imageUrl }}\"></eui-avatar-image>\n <eui-avatar-text *ngIf=\"iconLabel\">{{iconLabel}}</eui-avatar-text>\n </eui-avatar>\n </div>\n }\n <div class=\"eui-dashboard-card__content-wrapper\">\n @if (label) {\n <div class=\"eui-dashboard-card__label-content\">\n <eui-label>\n <eui-label class=\"eui-dashboard-card__label eui-dashboard-card__label--max-lines-{{labelMaxLines}}\" [ngClass]=\"subLabel ? 'eui-dashboard-card__label--with-sublabel' : ''\">\n {{ label }}\n </eui-label>\n @if (subLabel) {\n <eui-label euiSublabel class=\"eui-dashboard-card__sublabel eui-dashboard-card__sublabel--max-lines-{{subLabelMaxLines}}\">\n {{ subLabel }}\n </eui-label>\n }\n </eui-label>\n </div>\n }\n <div class=\"eui-dashboard-card__sub-content\">\n <ng-content></ng-content>\n </div>\n </div>\n</ng-template>\n", styles: [".eui-18 .eui-dashboard-card{display:flex;flex-direction:column;width:100%;background-color:var(--eui-c-white);border-radius:var(--eui-br-m);border:var(--eui-bw-xs) solid var(--eui-c-neutral-bg-light);box-shadow:var(--eui-sh-1);padding:var(--eui-s-s);cursor:default;position:relative}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled){cursor:pointer}.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:var(--eui-sh-3)}.eui-18 .eui-dashboard-card--flat{box-shadow:none;border-color:var(--eui-c-neutral-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):active,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--link:not(.eui-dashboard-card--disabled):hover{box-shadow:none;border-color:var(--eui-c-neutral-lightest)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline{background-color:var(--eui-c-white)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--primary,.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--info{border-color:var(--eui-c-primary-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--success{border-color:var(--eui-c-success-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--warning{border-color:var(--eui-c-warning-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--danger{border-color:var(--eui-c-danger-lighter)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--outline.eui-dashboard-card--accent{border-color:var(--eui-c-accent-lighter)}.eui-18 .eui-dashboard-card__anchor-wrapper{display:flex;width:100%;flex-direction:column}.eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card__content-wrapper{display:flex;justify-content:center;align-items:center}.eui-18 .eui-dashboard-card__avatar-wrapper{padding:0 var(--eui-s-4xl)}.eui-18 .eui-dashboard-card__content-wrapper{display:flex;flex-direction:column;padding:var(--eui-s-s);width:100%}.eui-18 .eui-dashboard-card__label-content{text-align:center}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label{font:var(--eui-f-l);color:var(--eui-c-neutral-light);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--with-sublabel{margin-bottom:0}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__label--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel{font:var(--eui-f-m);margin-bottom:var(--eui-s-m);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-1{-webkit-line-clamp:1}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-2{-webkit-line-clamp:2}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-3{-webkit-line-clamp:3}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-4{-webkit-line-clamp:4}.eui-18 .eui-dashboard-card__label-content .eui-dashboard-card__sublabel--max-lines-5{-webkit-line-clamp:5}.eui-18 .eui-dashboard-card__sub-content{display:block;text-align:center}.eui-18 .eui-dashboard-card__sub-content:empty{margin-top:calc(-1 * var(--eui-s-m))}.eui-18 .eui-dashboard-card--horizontal,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__anchor-wrapper{flex-direction:row}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper,.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__content-wrapper{width:50%}.eui-18 .eui-dashboard-card--horizontal .eui-18 .eui-dashboard-card__avatar-wrapper{border-right:1px solid var(--eui-c-neutral-lighter);margin-right:var(--eui-s-m);padding:var(--eui-s-s) 0}.eui-18 .eui-dashboard-card--disabled{opacity:.65;pointer-events:none}.eui-18 .eui-dashboard-card__status{position:absolute;top:-.75rem;right:var(--eui-s-m)}.eui-18 .eui-dashboard-card-content{display:block}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--primary:not(.eui-dashboard-card--outline){background-color:var(--eui-c-primary-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--success:not(.eui-dashboard-card--outline){background-color:var(--eui-c-success-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--warning:not(.eui-dashboard-card--outline){background-color:var(--eui-c-warning-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--danger:not(.eui-dashboard-card--outline){background-color:var(--eui-c-danger-bg)}.eui-18 .eui-dashboard-card--flat.eui-dashboard-card--accent:not(.eui-dashboard-card--outline){background-color:var(--eui-c-accent-bg)}\n"] }]
|
131
131
|
}], ctorParameters: () => [{ type: i1.BaseStatesDirective }], propDecorators: { cssClasses: [{
|
132
132
|
type: HostBinding,
|
133
133
|
args: ['class']
|
@@ -142,11 +142,11 @@ class EuiSelectComponent {
|
|
142
142
|
}
|
143
143
|
}
|
144
144
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuiSelectComponent, deps: [{ token: i0.Renderer2 }, { token: i0.Injector }, { token: i0.ElementRef }, { token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
145
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: EuiSelectComponent, selector: "select[euiSelect]", inputs: { placeholder: "placeholder", readonly: ["readonly", "readonly", booleanAttribute], isInvalid: "isInvalid" }, host: { listeners: { "change": "onChange($event.target.value)" } }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".eui-18 .eui-select{font:var(--eui-f-m);appearance:none;background-color:var(--eui-c-white);border:1px solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);box-shadow:none;color:var(--eui-c-text);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px);width:100
|
145
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.2.13", type: EuiSelectComponent, selector: "select[euiSelect]", inputs: { placeholder: "placeholder", readonly: ["readonly", "readonly", booleanAttribute], isInvalid: "isInvalid" }, host: { listeners: { "change": "onChange($event.target.value)" } }, usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, styles: [".eui-18 .eui-select{font:var(--eui-f-m);appearance:none;background-color:var(--eui-c-white);border:1px solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);box-shadow:none;color:var(--eui-c-text);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px);width:100%}.eui-18 .eui-select:not([hidden]){display:block}.eui-18 .eui-select::placeholder{color:var(--eui-c-neutral-lighter)!important;opacity:1}.eui-18 .eui-select[readonly]{background-color:transparent;border-color:transparent;box-shadow:none;height:inherit;padding-left:0;padding-right:0;pointer-events:none}.eui-18 .eui-select[readonly]+.eui-feedback-message,.eui-18 .eui-select[readonly]+.eui-input-maxlength{appearance:none;display:none}.eui-18 .eui-select[disabled]:not([readonly]),.eui-18 .eui-select--disabled:not([readonly]){background-color:var(--eui-c-neutral-bg-light)!important;border:1px solid var(--eui-c-neutral-lightest)!important;color:var(--eui-c-neutral-light);pointer-events:none}.eui-18 .eui-select--invalid,.eui-18 .eui-select--danger{border:1px solid var(--eui-c-danger)}.eui-18 .eui-select--loading{padding-right:var(--eui-s-2xl)}.eui-18 .eui-select--loading-icon{align-items:center;display:flex}.eui-18 .eui-select--loading-icon:after,.eui-18 .eui-select--loading-icon:before{content:\"\";height:var(--eui-s-l);position:absolute;right:var(--eui-s-s);width:var(--eui-s-l)}.eui-18 .eui-select--loading-icon:before{border:var(--eui-s-2xs) solid rgba(0,0,0,.35);border-radius:100%}.eui-18 .eui-select--loading-icon:after{animation:eui-loading .6s linear;animation-iteration-count:infinite;border-color:var(--eui-c-white) transparent transparent;border-radius:100%;border-style:solid;border-width:var(--eui-s-2xs);box-shadow:0 0 0 1px transparent}.eui-18 .eui-select--loading-icon--sm:after,.eui-18 .eui-select--loading-icon--sm:before{height:var(--eui-s-m);width:var(--eui-s-m)}@keyframes eui-loading{to{transform:rotate(360deg)}}.eui-18 .eui-select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-18 .eui-select::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-c-neutral-bg-light)}.eui-18 .eui-select::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.eui-18 .eui-select::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.eui-18 .eui-select::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}@-moz-document url-prefix(){.eui-18 .eui-select{scrollbar-color:var(--eui-c-neutral-lighter) var(--eui-c-neutral-bg-light);scrollbar-width:auto}}.eui-18 .eui-select{color:var(--eui-c-neutral);overflow-y:auto}.eui-18 .eui-select:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select[readonly][multiple=true] option:checked{background:none}.eui-18 .eui-select[hidden],.eui-18 .eui-select[readonly][multiple=true] :not(option:checked){display:none}.eui-18 .eui-select[multiple=true],.eui-18 .eui-select[size]:not([size=\"1\"]):not([size=\"0\"]){background-image:none;height:auto;overflow:auto;padding:var(--eui-s-2xs) 0}.eui-18 .eui-select__placeholder{color:var(--eui-c-neutral-lighter)!important}.eui-18 .eui-select__item{color:var(--eui-c-neutral)}.eui-18 .eui-select optgroup{font:var(--eui-f-m-bold)}.eui-18 .eui-select optgroup,.eui-18 .eui-select option{appearance:none;color:var(--eui-c-neutral);display:block;padding:var(--eui-s-2xs);white-space:pre}.eui-18 .eui-select optgroup:disabled,.eui-18 .eui-select option:disabled{color:var(--eui-c-neutral-lightest)}.eui-18 .eui-select:not([readonly]):not([multiple]),.eui-18 .eui-select[size=\"1\"],.eui-18 .eui-select[size=\"0\"]{appearance:none;background-color:var(--eui-c-white);background-image:var(--eui-internal-icon-chevron-down-path);background-position:calc(100% - var(--eui-s-s)) center;background-repeat:no-repeat;background-size:var(--eui-s-m);padding-right:var(--eui-s-2xl)}\n"], encapsulation: i0.ViewEncapsulation.None }); }
|
146
146
|
}
|
147
147
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: EuiSelectComponent, decorators: [{
|
148
148
|
type: Component,
|
149
|
-
args: [{ selector: 'select[euiSelect]', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, styles: [".eui-18 .eui-select{font:var(--eui-f-m);appearance:none;background-color:var(--eui-c-white);border:1px solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);box-shadow:none;color:var(--eui-c-text);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px);width:100
|
149
|
+
args: [{ selector: 'select[euiSelect]', template: '<ng-content></ng-content>', encapsulation: ViewEncapsulation.None, styles: [".eui-18 .eui-select{font:var(--eui-f-m);appearance:none;background-color:var(--eui-c-white);border:1px solid var(--eui-c-neutral-lighter);border-radius:var(--eui-br-m);box-shadow:none;color:var(--eui-c-text);padding:calc(var(--eui-s-xs) - 1px) calc(var(--eui-s-m) - 1px);width:100%}.eui-18 .eui-select:not([hidden]){display:block}.eui-18 .eui-select::placeholder{color:var(--eui-c-neutral-lighter)!important;opacity:1}.eui-18 .eui-select[readonly]{background-color:transparent;border-color:transparent;box-shadow:none;height:inherit;padding-left:0;padding-right:0;pointer-events:none}.eui-18 .eui-select[readonly]+.eui-feedback-message,.eui-18 .eui-select[readonly]+.eui-input-maxlength{appearance:none;display:none}.eui-18 .eui-select[disabled]:not([readonly]),.eui-18 .eui-select--disabled:not([readonly]){background-color:var(--eui-c-neutral-bg-light)!important;border:1px solid var(--eui-c-neutral-lightest)!important;color:var(--eui-c-neutral-light);pointer-events:none}.eui-18 .eui-select--invalid,.eui-18 .eui-select--danger{border:1px solid var(--eui-c-danger)}.eui-18 .eui-select--loading{padding-right:var(--eui-s-2xl)}.eui-18 .eui-select--loading-icon{align-items:center;display:flex}.eui-18 .eui-select--loading-icon:after,.eui-18 .eui-select--loading-icon:before{content:\"\";height:var(--eui-s-l);position:absolute;right:var(--eui-s-s);width:var(--eui-s-l)}.eui-18 .eui-select--loading-icon:before{border:var(--eui-s-2xs) solid rgba(0,0,0,.35);border-radius:100%}.eui-18 .eui-select--loading-icon:after{animation:eui-loading .6s linear;animation-iteration-count:infinite;border-color:var(--eui-c-white) transparent transparent;border-radius:100%;border-style:solid;border-width:var(--eui-s-2xs);box-shadow:0 0 0 1px transparent}.eui-18 .eui-select--loading-icon--sm:after,.eui-18 .eui-select--loading-icon--sm:before{height:var(--eui-s-m);width:var(--eui-s-m)}@keyframes eui-loading{to{transform:rotate(360deg)}}.eui-18 .eui-select{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.eui-18 .eui-select::-webkit-scrollbar{display:inherit;height:8px;width:8px;background-color:var(--eui-c-neutral-bg-light)}.eui-18 .eui-select::-webkit-scrollbar-thumb{background-color:var(--eui-c-neutral-lightest);border-radius:5rem}.eui-18 .eui-select::-webkit-scrollbar-thumb:hover{background-color:var(--eui-c-neutral-lighter)}.eui-18 .eui-select::-webkit-scrollbar-track{background-color:var(--eui-c-neutral-bg-light);border-radius:0}@-moz-document url-prefix(){.eui-18 .eui-select{scrollbar-color:var(--eui-c-neutral-lighter) var(--eui-c-neutral-bg-light);scrollbar-width:auto}}.eui-18 .eui-select{color:var(--eui-c-neutral);overflow-y:auto}.eui-18 .eui-select:focus:not([readonly]){outline:2px solid var(--eui-c-focus)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select:focus-visible:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select [tabindex=\"0\"]:focus:not([readonly]){outline:2px solid var(--eui-c-focus-visible)!important;outline-offset:-2px!important;transition:none}.eui-18 .eui-select[readonly][multiple=true] option:checked{background:none}.eui-18 .eui-select[hidden],.eui-18 .eui-select[readonly][multiple=true] :not(option:checked){display:none}.eui-18 .eui-select[multiple=true],.eui-18 .eui-select[size]:not([size=\"1\"]):not([size=\"0\"]){background-image:none;height:auto;overflow:auto;padding:var(--eui-s-2xs) 0}.eui-18 .eui-select__placeholder{color:var(--eui-c-neutral-lighter)!important}.eui-18 .eui-select__item{color:var(--eui-c-neutral)}.eui-18 .eui-select optgroup{font:var(--eui-f-m-bold)}.eui-18 .eui-select optgroup,.eui-18 .eui-select option{appearance:none;color:var(--eui-c-neutral);display:block;padding:var(--eui-s-2xs);white-space:pre}.eui-18 .eui-select optgroup:disabled,.eui-18 .eui-select option:disabled{color:var(--eui-c-neutral-lightest)}.eui-18 .eui-select:not([readonly]):not([multiple]),.eui-18 .eui-select[size=\"1\"],.eui-18 .eui-select[size=\"0\"]{appearance:none;background-color:var(--eui-c-white);background-image:var(--eui-internal-icon-chevron-down-path);background-position:calc(100% - var(--eui-s-s)) center;background-repeat:no-repeat;background-size:var(--eui-s-m);padding-right:var(--eui-s-2xl)}\n"] }]
|
150
150
|
}], ctorParameters: () => [{ type: i0.Renderer2 }, { type: i0.Injector }, { type: i0.ElementRef }, { type: i0.ViewContainerRef }], propDecorators: { placeholder: [{
|
151
151
|
type: Input
|
152
152
|
}], readonly: [{
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"eui-components-eui-select.mjs","sources":["../../eui-select/eui-select.component.ts","../../eui-select/utils.ts","../../eui-select/eui-select-control.directive.ts","../../eui-select/eui-select-option.directive.ts","../../eui-select/eui-select-multiple.directive.ts","../../eui-select/eui-select-mutli-option.directive.ts","../../eui-select/eui-select.module.ts","../../eui-select/eui-components-eui-select.ts"],"sourcesContent":["import {\n booleanAttribute,\n Component,\n ComponentRef,\n DoCheck,\n ElementRef,\n HostListener,\n Injector,\n Input,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EuiInputTextComponent } from '@eui/components/eui-input-text';\nimport { NgControl } from '@angular/forms';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select[euiSelect]',\n styleUrls: ['./styles/_index.scss'],\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiSelectComponent implements OnChanges, OnInit, DoCheck {\n @Input() placeholder: string;\n\n @Input({ transform: booleanAttribute }) readonly: boolean;\n\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this._isInvalid = coerceBooleanProperty(state);\n if (this._isInvalid) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select--invalid');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select--invalid');\n }\n }\n\n protected _isInvalid: boolean;\n private control: NgControl;\n private readonlyInput: ComponentRef<EuiInputTextComponent>;\n private placeholderOption: HTMLOptionElement;\n\n constructor(\n private renderer: Renderer2,\n private injector: Injector,\n private elementRef: ElementRef<HTMLSelectElement>,\n private viewContainerRef: ViewContainerRef,\n ) {}\n\n ngOnInit(): void {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select');\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['readonly']) {\n if (this.readonly) {\n // hide select element\n this.renderer.setAttribute(this.elementRef.nativeElement, 'readonly', 'true');\n this.renderer.setAttribute(this.elementRef.nativeElement, 'hidden', '');\n\n // create an euiInputComponent to hold the value (for accessibility reasons)\n this.readonlyInput = this.createReadonlyElement();\n this.renderer.insertBefore(\n this.elementRef.nativeElement.parentElement,\n this.elementRef.nativeElement,\n this.readonlyInput.location.nativeElement,\n );\n this.setReadonlyValue(this.readonlyInput);\n } else {\n this.readonlyInput?.destroy();\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'readonly');\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'hidden');\n }\n }\n\n if (changes['placeholder']) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n if (!this.control) {\n // in case option Element already created update the value\n if (changes['placeholder'].currentValue === undefined) {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n // remove option element\n if (this.placeholderOption) {\n this.renderer.removeChild(this.elementRef.nativeElement, this.placeholderOption);\n this.placeholderOption = undefined;\n }\n } else if (this.placeholderOption) {\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n } else {\n // create option Element\n this.placeholderOption = this.renderer.createElement('option');\n\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n // set attributes to act as a placeholder\n if (!this.elementRef.nativeElement.value) {\n this.renderer.setAttribute(this.placeholderOption, 'selected', '');\n }\n // append option element as the first of the select children\n this.elementRef.nativeElement.insertBefore(this.placeholderOption, this.elementRef.nativeElement.firstChild);\n\n if (this.elementRef.nativeElement.value === changes['placeholder'].currentValue) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n }\n }\n }\n\n ngDoCheck(): void {\n if (!this.control) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n }\n this.isInvalid = this.control ? this.control.invalid && this.control.touched : this._isInvalid;\n /** while the optionList changes but there's no selected option and there's a placeholder, add the placeholder\n * class. Otherwise, the placeholder will look selected but the color will be black. */\n if (this.placeholder && this.elementRef.nativeElement.selectedIndex === 0) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n\n @HostListener('change', ['$event.target.value'])\n onChange(value): void {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n if (!this.control) {\n this.setPlaceholderClass(this.placeholder === value ? undefined : value);\n }\n this.syncReadOnlyValue();\n }\n\n syncReadOnlyValue(): void {\n this.setReadonlyValue(this.readonlyInput);\n }\n\n /**\n * set readonly value from selected options presented as comma separated string\n *\n * @param readonlyRef the input element to set the value\n * @private\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setReadonlyValue(readonlyRef: ComponentRef<EuiInputTextComponent>): any {\n if (readonlyRef) {\n // eslint-disable-next-line prefer-spread\n const selectedOptions = Array.apply(null, this.elementRef.nativeElement.selectedOptions)\n .map((i) => i.text)\n .filter((i) => i !== this.placeholder)\n .join(', ');\n this.renderer.setProperty(readonlyRef.location.nativeElement, 'value', selectedOptions);\n this.renderer.setAttribute(readonlyRef.location.nativeElement, 'aria-label', selectedOptions);\n }\n }\n\n /**\n * create readonly element\n *\n * @private\n */\n private createReadonlyElement(): ComponentRef<EuiInputTextComponent> {\n const componentRef = this.viewContainerRef.createComponent(EuiInputTextComponent);\n componentRef.instance.readonly = true;\n return componentRef;\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setPlaceholderClass(value: any): void {\n const placeholderOption = this.elementRef.nativeElement.options[0];\n if (!!this.placeholder && (value === undefined || value === null || value === '')) {\n this.renderer.setAttribute(placeholderOption, 'selected', '');\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n this.renderer.removeAttribute(placeholderOption, 'selected');\n }\n }\n}\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function _buildValueString(id: string, value: any): string {\n if (id == null) {\n return `${value}`;\n }\n if (typeof value === 'string') {\n value = `'${value}'`;\n }\n if (value && typeof value === 'object') {\n value = 'Object';\n }\n return `${id}: ${value}`.slice(0, 50);\n}\n\nexport function _extractId(valueString: string): string {\n return valueString.split(':')[0];\n}\n","import { Directive, DoCheck, ElementRef, forwardRef, Injector, Input, OnChanges, Optional, Renderer2, SimpleChanges } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, SelectControlValueAccessor } from '@angular/forms';\nimport { EuiSelectComponent } from './eui-select.component';\nimport { _buildValueString } from './utils';\n\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector\n 'select:not([multiple])[formControlName][euiSelect],select:not([multiple])[formControl][euiSelect],select:not([multiple])[ngModel][euiSelect]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { '(blur)': 'onTouched()' },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EuiSelectControlValueAccessor),\n multi: true,\n },\n ],\n})\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectControlValueAccessor extends SelectControlValueAccessor implements ControlValueAccessor, OnChanges, DoCheck {\n @Input() placeholder: string;\n\n private elementRef: ElementRef;\n private renderer: Renderer2;\n private placeholderOption: HTMLOptionElement;\n\n constructor(\n _renderer: Renderer2,\n _elementRef: ElementRef,\n @Optional() private selectComponent: EuiSelectComponent,\n private injector: Injector,\n ) {\n super(_renderer, _elementRef);\n this.elementRef = _elementRef;\n this.renderer = _renderer;\n this.onChange = (valueString: string): void => {\n this.value = this['_getOptionValue'](valueString);\n this.setPlaceholderClass(this.value);\n };\n }\n\n ngDoCheck(): void {\n if (this.placeholder && this.elementRef.nativeElement.selectedIndex === 0) {\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n }\n }\n\n /**\n * Sets the \"value\" property on the select element.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(value: any): void {\n super.writeValue(value);\n this.setPlaceholderClass(value);\n this.selectComponent?.syncReadOnlyValue();\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override registerOnChange(fn: (value: any) => any): void {\n this.onChange = (valueString: string): void => {\n this.value = this['_getOptionValue'](valueString);\n this.setPlaceholderClass(this.value);\n fn(this.value);\n };\n }\n\n setDisabledState(isDisabled: boolean): void {\n if (isDisabled) {\n this.renderer.setAttribute(this.elementRef.nativeElement, 'disabled', '');\n } else {\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'disabled');\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['placeholder']) {\n // in case option Element already created update the value\n if (changes['placeholder'].currentValue === undefined) {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n // remove option element\n if (this.placeholderOption) {\n this.renderer.removeChild(this.elementRef.nativeElement, this.placeholderOption);\n this.placeholderOption = undefined;\n }\n } else if (this.placeholderOption) {\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n } else {\n // create option Element\n this.placeholderOption = this.renderer.createElement('option');\n // const option = new EuiNgSelectOptionDirective({nativeElement: this.placeholderOption}, this.renderer, this);\n // option.ngValue = null;\n const id = this['_registerOption']();\n this['_optionMap'].set(id, null);\n const selectControlValueAccessor = this.injector.get(SelectControlValueAccessor, undefined);\n selectControlValueAccessor['_idCounter'] = this['_idCounter'];\n selectControlValueAccessor['_optionMap'] = this['_optionMap'];\n this.renderer.setValue(this.placeholderOption, _buildValueString(id, null));\n this.renderer.setProperty(this.placeholderOption, 'value', _buildValueString(id, null));\n\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n // set attributes to act as a placeholder\n if (!this.elementRef.nativeElement.value) {\n this.renderer.setAttribute(this.placeholderOption, 'selected', '');\n }\n // append option element as the first of the select children\n this.elementRef.nativeElement.insertBefore(this.placeholderOption, this.elementRef.nativeElement.firstChild);\n\n if (this.elementRef.nativeElement.value === changes['placeholder'].currentValue) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n if (!this.value) {\n this.writeValue(undefined);\n }\n }\n }\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setPlaceholderClass(value: any): void {\n if (!!this.placeholder && (value === undefined || value === null || value === '')) {\n try {\n this.elementRef.nativeElement.options[0].selected = true;\n } catch (e) {\n /* empty */\n }\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n}\n","import {\n AfterViewInit,\n booleanAttribute,\n Directive,\n ElementRef,\n Host,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n SimpleChanges,\n} from '@angular/core';\nimport { NgSelectOption, SelectControlValueAccessor } from '@angular/forms';\nimport { EuiSelectControlValueAccessor } from './eui-select-control.directive';\nimport { EuiSelectComponent } from './eui-select.component';\n\n// eslint-disable-next-line prefer-arrow/prefer-arrow-functions, @typescript-eslint/no-explicit-any\nfunction _buildValueString(id: string, value: any): string {\n if (id == null) {\n return `${value}`;\n }\n if (value && typeof value === 'object') {\n value = 'Object';\n }\n return `${id}: ${value}`.slice(0, 50);\n}\n\n/**\n * @description\n * Marks `<option>` as dynamic, so Angular can be notified when options change.\n *\n * @see `EuiSelectControlValueAccessor`\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n// TODO: remove that selector in eUI 17.x and replace it with `option[euiOption]` (this will be a breaking change)\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'option:not([eclSelectOption]):not([eclMultiselectOption]), option[euiOption]' })\nexport class EuiNgSelectOptionDirective extends NgSelectOption implements OnDestroy, OnChanges, AfterViewInit {\n @Input({ transform: booleanAttribute }) selected: boolean;\n\n @Input() label: string;\n\n private readonly select: EuiSelectControlValueAccessor;\n private readonly selectNative: SelectControlValueAccessor;\n private readonly selectComponent: EuiSelectComponent;\n private element: ElementRef<HTMLOptionElement>;\n private renderer: Renderer2;\n\n constructor(\n _element: ElementRef,\n _renderer: Renderer2,\n @Optional() @Host() _select: EuiSelectControlValueAccessor,\n @Optional() @Host() _selectNative: SelectControlValueAccessor,\n @Optional() @Host() _selectComponent: EuiSelectComponent,\n ) {\n super(_element, _renderer, _select);\n this.select = _select;\n this.selectNative = _selectNative;\n this.selectComponent = _selectComponent;\n this.element = _element;\n this.renderer = _renderer;\n }\n\n ngAfterViewInit(): void {\n this.selectComponent?.syncReadOnlyValue();\n if (this.selectNative && this.select && this.selectNative.value !== this.select.value) {\n // TODO: This causes issues when options array change from N to 1 and the option 1 is set through setValue()\n // Investigate what are the regressions from the removal of this line. Issue is that the Native\n // control value accessor holds a mapper not in sync with the EuiSelectControlValueAccessor.\n //\n // this.selectNative.writeValue(this.select.value);\n }\n }\n\n /**\n * @description\n * Tracks the value bound to the option element. Unlike the value binding,\n * ngValue supports binding to objects.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override set ngValue(value: any) {\n if (this.select == null) return;\n this.selectNative['_idCounter'] = this.select['_idCounter'];\n this.select['_optionMap'].set(this.id, value);\n this.selectNative['_optionMap'] = this.select['_optionMap']; //.set(this.id, value);\n super['_setElementValue'](_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n this.selectNative.writeValue(this.select.value);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.selected) {\n /**\n * in case there's a selected value, readonly attribute is true, sync it to the readonly input. The reason is\n * that the readonly input is not aware of the selected value until the render of the view completes.\n */\n switch (this.selected) {\n case true:\n this.renderer.setAttribute(this.element.nativeElement, 'selected', '');\n break;\n default:\n this.renderer.removeAttribute(this.element.nativeElement, 'selected');\n }\n this.selectComponent?.syncReadOnlyValue();\n }\n\n if (changes.label) {\n this.renderer.setProperty(this.element.nativeElement, 'innerText', changes.label.currentValue);\n this.selectComponent?.syncReadOnlyValue();\n }\n }\n}\n","import { Directive, DoCheck, ElementRef, forwardRef, Injector, Input, Optional, Provider, Renderer2 } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, NgControl, SelectMultipleControlValueAccessor } from '@angular/forms';\nimport { EuiSelectMultipleOption } from './eui-select-mutli-option.directive';\nimport { _extractId } from './utils';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EuiSelectComponent } from './eui-select.component';\n\nconst SELECT_MULTIPLE_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EuiSelectMultipleControlValueAccessor),\n multi: true,\n};\n\n/** Mock interface for HTML Options */\ninterface HTMLOption {\n value: string;\n selected: boolean;\n}\n\n/** Mock interface for HTMLCollection */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nabstract class HTMLCollection {\n // TODO(issue/24571): remove '!'.\n length!: number;\n abstract item(_: number): HTMLOption;\n}\n\n/**\n * @description\n * The `ControlValueAccessor` for writing multi-select control values and listening to multi-select\n * control changes. The value accessor is used by the `FormControlDirective`, `FormControlName`, and\n * `NgModel` directives.\n *\n * @see `EuiSelectControlValueAccessor`\n *\n * @usageNotes\n *\n * ### Using a multi-select control\n *\n * The follow example shows you how to use a multi-select control with a reactive form.\n *\n * ```ts\n * const countryControl = new FormControl();\n * ```\n *\n * ```\n * <select euiSelect multiple name=\"countries\" [formControl]=\"countryControl\">\n * <option euiOption *ngFor=\"let country of countries\" [ngValue]=\"country\">\n * {{ country.name }}\n * </option>\n * </select>\n * ```\n *\n * ### Customizing option selection\n *\n * To customize the default option comparison algorithm, `<select>` supports `compareWith` input.\n * See the `SelectControlValueAccessor` for usage.\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector,max-len\n 'select[multiple][formControlName][euiSelect],select[multiple][formControl][euiSelect],select[multiple][ngModel][euiSelect]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { '(change)': 'onChange($event.target)', '(blur)': 'onTouched()' },\n providers: [SELECT_MULTIPLE_VALUE_ACCESSOR],\n})\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectMultipleControlValueAccessor extends SelectMultipleControlValueAccessor implements ControlValueAccessor, DoCheck {\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this._isInvalid = coerceBooleanProperty(state);\n }\n\n /**\n * The current value.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n\n /** @internal */\n _optionMap: Map<string, EuiSelectMultipleOption> = new Map<string, EuiSelectMultipleOption>();\n\n /** @internal */\n _idCounter = 0;\n protected _isInvalid: boolean;\n private elementRef: ElementRef;\n private renderer: Renderer2;\n private control: NgControl;\n\n constructor(\n _renderer: Renderer2,\n _elementRef: ElementRef,\n @Optional() private selectComponent: EuiSelectComponent,\n private injector: Injector,\n ) {\n super(_renderer, _elementRef);\n this.elementRef = _elementRef;\n this.renderer = _renderer;\n }\n\n ngDoCheck(): void {\n if (!this.control) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n }\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : this._isInvalid;\n }\n\n /**\n * Sets the \"value\" property on one or of more of the select's options.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(value: any): void {\n this.value = value;\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let optionSelectedStateSetter: (opt: EuiSelectMultipleOption, o: any) => void;\n if (Array.isArray(value)) {\n // convert values to ids\n const ids = value.map((v) => this._getOptionId(v));\n optionSelectedStateSetter = (opt, o): void => {\n opt._setSelected(ids.indexOf(o.toString()) > -1);\n };\n } else {\n optionSelectedStateSetter = (opt): void => {\n opt._setSelected(false);\n };\n }\n this._optionMap.forEach(optionSelectedStateSetter);\n this.selectComponent?.syncReadOnlyValue();\n }\n\n /**\n * Registers a function called when the control value changes\n * and writes an array of the selected options.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override registerOnChange(fn: (value: any) => any): void {\n this.onChange = (element: HTMLSelectElement): void => {\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const selected: Array<any> = [];\n const selectedOptions = element.selectedOptions;\n if (selectedOptions !== undefined) {\n const options = selectedOptions;\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n const val = this._getOptionValue(opt.value);\n selected.push(val);\n }\n } else {\n const options = element.options;\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n if (opt.selected) {\n const val = this._getOptionValue(opt.value);\n selected.push(val);\n }\n }\n }\n this.value = selected;\n fn(selected);\n };\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: any): void {\n this.onTouched = (): void => {\n const control = this.injector.get(NgControl, undefined, { optional: true });\n this.isInvalid = control.invalid;\n if (this.isInvalid) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select--invalid');\n }\n fn();\n };\n }\n\n /** @internal */\n _registerOption(value: EuiSelectMultipleOption): string {\n const id: string = (this._idCounter++).toString();\n this._optionMap.set(id, value);\n return id;\n }\n\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _getOptionId(value: any): string | null {\n for (const id of Array.from(this._optionMap.keys())) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n if (this['_compareWith'](this._optionMap.get(id)!._value, value)) {\n return id;\n }\n }\n return null;\n }\n\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _getOptionValue(valueString: string): any {\n const id: string = _extractId(valueString);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this._optionMap.has(id) ? this._optionMap.get(id)!._value : valueString;\n }\n}\n","import { Directive, ElementRef, Host, Input, OnDestroy, Optional, Renderer2 } from '@angular/core';\nimport { ɵNgSelectMultipleOption as NgSelectMultipleOption } from '@angular/forms';\nimport { EuiSelectMultipleControlValueAccessor } from './eui-select-multiple.directive';\nimport { _buildValueString } from './utils';\n\n/**\n * @description\n * Marks `<option>` as dynamic, so Angular can be notified when options change.\n *\n * @see `EuiSelectMultipleControlValueAccessor`\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'option, option[euiOption]' })\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectMultipleOption extends NgSelectMultipleOption implements OnDestroy {\n // TODO(issue/24571): remove '!'.\n id!: string;\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _value: any;\n private element: ElementRef;\n private renderer: Renderer2;\n private select: EuiSelectMultipleControlValueAccessor;\n\n constructor(_element: ElementRef, _renderer: Renderer2, @Optional() @Host() _select: EuiSelectMultipleControlValueAccessor) {\n super(_element, _renderer, _select);\n this.element = _element;\n this.renderer = _renderer;\n this.select = _select;\n }\n\n /**\n * @description\n * Tracks the value bound to the option element. Unlike the value binding,\n * ngValue supports binding to objects.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set ngValue(value: any) {\n if (this.select == null) {\n return;\n }\n this._value = value;\n this._setElementValue(_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n }\n\n /**\n * @description\n * Tracks simple string values bound to the option element.\n * For objects, use the `ngValue` input binding.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set value(value: any) {\n if (this.select) {\n this._value = value;\n this._setElementValue(_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n } else {\n this._setElementValue(value);\n }\n }\n\n /** @internal */\n _setElementValue(value: string): void {\n this.renderer.setProperty(this.element.nativeElement, 'value', value);\n }\n\n /** @internal */\n _setSelected(selected: boolean): void {\n this.renderer.setProperty(this.element.nativeElement, 'selected', selected);\n }\n\n /** @nodoc */\n ngOnDestroy(): void {\n if (this.select) {\n this.select._optionMap.delete(this.id);\n this.select.writeValue(this.select.value);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiSelectComponent } from './eui-select.component';\nimport { EuiNgSelectOptionDirective } from './eui-select-option.directive';\nimport { EuiSelectControlValueAccessor } from './eui-select-control.directive';\nimport { EuiSelectMultipleControlValueAccessor } from './eui-select-multiple.directive';\nimport { EuiSelectMultipleOption } from './eui-select-mutli-option.directive';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [\n EuiSelectComponent,\n EuiNgSelectOptionDirective,\n EuiSelectControlValueAccessor,\n EuiSelectMultipleControlValueAccessor,\n EuiSelectMultipleOption,\n ],\n exports: [\n EuiSelectComponent,\n EuiNgSelectOptionDirective,\n EuiSelectControlValueAccessor,\n EuiSelectMultipleControlValueAccessor,\n EuiSelectMultipleOption,\n ],\n})\nexport class EuiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_buildValueString","i1.EuiSelectComponent","i1.EuiSelectControlValueAccessor","i3.EuiSelectComponent","NgSelectMultipleOption","i1.EuiSelectMultipleControlValueAccessor"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"eui-components-eui-select.mjs","sources":["../../eui-select/eui-select.component.ts","../../eui-select/utils.ts","../../eui-select/eui-select-control.directive.ts","../../eui-select/eui-select-option.directive.ts","../../eui-select/eui-select-multiple.directive.ts","../../eui-select/eui-select-mutli-option.directive.ts","../../eui-select/eui-select.module.ts","../../eui-select/eui-components-eui-select.ts"],"sourcesContent":["import {\n booleanAttribute,\n Component,\n ComponentRef,\n DoCheck,\n ElementRef,\n HostListener,\n Injector,\n Input,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n ViewContainerRef,\n ViewEncapsulation,\n} from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EuiInputTextComponent } from '@eui/components/eui-input-text';\nimport { NgControl } from '@angular/forms';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'select[euiSelect]',\n styleUrls: ['./styles/_index.scss'],\n template: '<ng-content></ng-content>',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiSelectComponent implements OnChanges, OnInit, DoCheck {\n @Input() placeholder: string;\n\n @Input({ transform: booleanAttribute }) readonly: boolean;\n\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this._isInvalid = coerceBooleanProperty(state);\n if (this._isInvalid) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select--invalid');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select--invalid');\n }\n }\n\n protected _isInvalid: boolean;\n private control: NgControl;\n private readonlyInput: ComponentRef<EuiInputTextComponent>;\n private placeholderOption: HTMLOptionElement;\n\n constructor(\n private renderer: Renderer2,\n private injector: Injector,\n private elementRef: ElementRef<HTMLSelectElement>,\n private viewContainerRef: ViewContainerRef,\n ) {}\n\n ngOnInit(): void {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select');\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['readonly']) {\n if (this.readonly) {\n // hide select element\n this.renderer.setAttribute(this.elementRef.nativeElement, 'readonly', 'true');\n this.renderer.setAttribute(this.elementRef.nativeElement, 'hidden', '');\n\n // create an euiInputComponent to hold the value (for accessibility reasons)\n this.readonlyInput = this.createReadonlyElement();\n this.renderer.insertBefore(\n this.elementRef.nativeElement.parentElement,\n this.elementRef.nativeElement,\n this.readonlyInput.location.nativeElement,\n );\n this.setReadonlyValue(this.readonlyInput);\n } else {\n this.readonlyInput?.destroy();\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'readonly');\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'hidden');\n }\n }\n\n if (changes['placeholder']) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n if (!this.control) {\n // in case option Element already created update the value\n if (changes['placeholder'].currentValue === undefined) {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n // remove option element\n if (this.placeholderOption) {\n this.renderer.removeChild(this.elementRef.nativeElement, this.placeholderOption);\n this.placeholderOption = undefined;\n }\n } else if (this.placeholderOption) {\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n } else {\n // create option Element\n this.placeholderOption = this.renderer.createElement('option');\n\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n // set attributes to act as a placeholder\n if (!this.elementRef.nativeElement.value) {\n this.renderer.setAttribute(this.placeholderOption, 'selected', '');\n }\n // append option element as the first of the select children\n this.elementRef.nativeElement.insertBefore(this.placeholderOption, this.elementRef.nativeElement.firstChild);\n\n if (this.elementRef.nativeElement.value === changes['placeholder'].currentValue) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n }\n }\n }\n\n ngDoCheck(): void {\n if (!this.control) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n }\n this.isInvalid = this.control ? this.control.invalid && this.control.touched : this._isInvalid;\n /** while the optionList changes but there's no selected option and there's a placeholder, add the placeholder\n * class. Otherwise, the placeholder will look selected but the color will be black. */\n if (this.placeholder && this.elementRef.nativeElement.selectedIndex === 0) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n\n @HostListener('change', ['$event.target.value'])\n onChange(value): void {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n if (!this.control) {\n this.setPlaceholderClass(this.placeholder === value ? undefined : value);\n }\n this.syncReadOnlyValue();\n }\n\n syncReadOnlyValue(): void {\n this.setReadonlyValue(this.readonlyInput);\n }\n\n /**\n * set readonly value from selected options presented as comma separated string\n *\n * @param readonlyRef the input element to set the value\n * @private\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setReadonlyValue(readonlyRef: ComponentRef<EuiInputTextComponent>): any {\n if (readonlyRef) {\n // eslint-disable-next-line prefer-spread\n const selectedOptions = Array.apply(null, this.elementRef.nativeElement.selectedOptions)\n .map((i) => i.text)\n .filter((i) => i !== this.placeholder)\n .join(', ');\n this.renderer.setProperty(readonlyRef.location.nativeElement, 'value', selectedOptions);\n this.renderer.setAttribute(readonlyRef.location.nativeElement, 'aria-label', selectedOptions);\n }\n }\n\n /**\n * create readonly element\n *\n * @private\n */\n private createReadonlyElement(): ComponentRef<EuiInputTextComponent> {\n const componentRef = this.viewContainerRef.createComponent(EuiInputTextComponent);\n componentRef.instance.readonly = true;\n return componentRef;\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setPlaceholderClass(value: any): void {\n const placeholderOption = this.elementRef.nativeElement.options[0];\n if (!!this.placeholder && (value === undefined || value === null || value === '')) {\n this.renderer.setAttribute(placeholderOption, 'selected', '');\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n this.renderer.removeAttribute(placeholderOption, 'selected');\n }\n }\n}\n","// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport function _buildValueString(id: string, value: any): string {\n if (id == null) {\n return `${value}`;\n }\n if (typeof value === 'string') {\n value = `'${value}'`;\n }\n if (value && typeof value === 'object') {\n value = 'Object';\n }\n return `${id}: ${value}`.slice(0, 50);\n}\n\nexport function _extractId(valueString: string): string {\n return valueString.split(':')[0];\n}\n","import { Directive, DoCheck, ElementRef, forwardRef, Injector, Input, OnChanges, Optional, Renderer2, SimpleChanges } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, SelectControlValueAccessor } from '@angular/forms';\nimport { EuiSelectComponent } from './eui-select.component';\nimport { _buildValueString } from './utils';\n\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector\n 'select:not([multiple])[formControlName][euiSelect],select:not([multiple])[formControl][euiSelect],select:not([multiple])[ngModel][euiSelect]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { '(blur)': 'onTouched()' },\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EuiSelectControlValueAccessor),\n multi: true,\n },\n ],\n})\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectControlValueAccessor extends SelectControlValueAccessor implements ControlValueAccessor, OnChanges, DoCheck {\n @Input() placeholder: string;\n\n private elementRef: ElementRef;\n private renderer: Renderer2;\n private placeholderOption: HTMLOptionElement;\n\n constructor(\n _renderer: Renderer2,\n _elementRef: ElementRef,\n @Optional() private selectComponent: EuiSelectComponent,\n private injector: Injector,\n ) {\n super(_renderer, _elementRef);\n this.elementRef = _elementRef;\n this.renderer = _renderer;\n this.onChange = (valueString: string): void => {\n this.value = this['_getOptionValue'](valueString);\n this.setPlaceholderClass(this.value);\n };\n }\n\n ngDoCheck(): void {\n if (this.placeholder && this.elementRef.nativeElement.selectedIndex === 0) {\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n }\n }\n\n /**\n * Sets the \"value\" property on the select element.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override writeValue(value: any): void {\n super.writeValue(value);\n this.setPlaceholderClass(value);\n this.selectComponent?.syncReadOnlyValue();\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override registerOnChange(fn: (value: any) => any): void {\n this.onChange = (valueString: string): void => {\n this.value = this['_getOptionValue'](valueString);\n this.setPlaceholderClass(this.value);\n fn(this.value);\n };\n }\n\n setDisabledState(isDisabled: boolean): void {\n if (isDisabled) {\n this.renderer.setAttribute(this.elementRef.nativeElement, 'disabled', '');\n } else {\n this.renderer.removeAttribute(this.elementRef.nativeElement, 'disabled');\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['placeholder']) {\n // in case option Element already created update the value\n if (changes['placeholder'].currentValue === undefined) {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n // remove option element\n if (this.placeholderOption) {\n this.renderer.removeChild(this.elementRef.nativeElement, this.placeholderOption);\n this.placeholderOption = undefined;\n }\n } else if (this.placeholderOption) {\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n } else {\n // create option Element\n this.placeholderOption = this.renderer.createElement('option');\n // const option = new EuiNgSelectOptionDirective({nativeElement: this.placeholderOption}, this.renderer, this);\n // option.ngValue = null;\n const id = this['_registerOption']();\n this['_optionMap'].set(id, null);\n const selectControlValueAccessor = this.injector.get(SelectControlValueAccessor, undefined);\n selectControlValueAccessor['_idCounter'] = this['_idCounter'];\n selectControlValueAccessor['_optionMap'] = this['_optionMap'];\n this.renderer.setValue(this.placeholderOption, _buildValueString(id, null));\n this.renderer.setProperty(this.placeholderOption, 'value', _buildValueString(id, null));\n\n this.renderer.addClass(this.placeholderOption, 'eui-select__placeholder');\n this.renderer.setProperty(this.placeholderOption, 'innerText', changes['placeholder'].currentValue);\n // set attributes to act as a placeholder\n if (!this.elementRef.nativeElement.value) {\n this.renderer.setAttribute(this.placeholderOption, 'selected', '');\n }\n // append option element as the first of the select children\n this.elementRef.nativeElement.insertBefore(this.placeholderOption, this.elementRef.nativeElement.firstChild);\n\n if (this.elementRef.nativeElement.value === changes['placeholder'].currentValue) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n if (!this.value) {\n this.writeValue(undefined);\n }\n }\n }\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private setPlaceholderClass(value: any): void {\n if (!!this.placeholder && (value === undefined || value === null || value === '')) {\n try {\n this.elementRef.nativeElement.options[0].selected = true;\n } catch (e) {\n /* empty */\n }\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n } else {\n this.renderer.removeClass(this.elementRef.nativeElement, 'eui-select__placeholder');\n }\n }\n}\n","import {\n AfterViewInit,\n booleanAttribute,\n Directive,\n ElementRef,\n Host,\n Input,\n OnChanges,\n OnDestroy,\n Optional,\n Renderer2,\n SimpleChanges,\n} from '@angular/core';\nimport { NgSelectOption, SelectControlValueAccessor } from '@angular/forms';\nimport { EuiSelectControlValueAccessor } from './eui-select-control.directive';\nimport { EuiSelectComponent } from './eui-select.component';\n\n// eslint-disable-next-line prefer-arrow/prefer-arrow-functions, @typescript-eslint/no-explicit-any\nfunction _buildValueString(id: string, value: any): string {\n if (id == null) {\n return `${value}`;\n }\n if (value && typeof value === 'object') {\n value = 'Object';\n }\n return `${id}: ${value}`.slice(0, 50);\n}\n\n/**\n * @description\n * Marks `<option>` as dynamic, so Angular can be notified when options change.\n *\n * @see `EuiSelectControlValueAccessor`\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n// TODO: remove that selector in eUI 17.x and replace it with `option[euiOption]` (this will be a breaking change)\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'option:not([eclSelectOption]):not([eclMultiselectOption]), option[euiOption]' })\nexport class EuiNgSelectOptionDirective extends NgSelectOption implements OnDestroy, OnChanges, AfterViewInit {\n @Input({ transform: booleanAttribute }) selected: boolean;\n\n @Input() label: string;\n\n private readonly select: EuiSelectControlValueAccessor;\n private readonly selectNative: SelectControlValueAccessor;\n private readonly selectComponent: EuiSelectComponent;\n private element: ElementRef<HTMLOptionElement>;\n private renderer: Renderer2;\n\n constructor(\n _element: ElementRef,\n _renderer: Renderer2,\n @Optional() @Host() _select: EuiSelectControlValueAccessor,\n @Optional() @Host() _selectNative: SelectControlValueAccessor,\n @Optional() @Host() _selectComponent: EuiSelectComponent,\n ) {\n super(_element, _renderer, _select);\n this.select = _select;\n this.selectNative = _selectNative;\n this.selectComponent = _selectComponent;\n this.element = _element;\n this.renderer = _renderer;\n }\n\n ngAfterViewInit(): void {\n this.selectComponent?.syncReadOnlyValue();\n if (this.selectNative && this.select && this.selectNative.value !== this.select.value) {\n // TODO: This causes issues when options array change from N to 1 and the option 1 is set through setValue()\n // Investigate what are the regressions from the removal of this line. Issue is that the Native\n // control value accessor holds a mapper not in sync with the EuiSelectControlValueAccessor.\n //\n // this.selectNative.writeValue(this.select.value);\n }\n }\n\n /**\n * @description\n * Tracks the value bound to the option element. Unlike the value binding,\n * ngValue supports binding to objects.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override set ngValue(value: any) {\n if (this.select == null) return;\n this.selectNative['_idCounter'] = this.select['_idCounter'];\n this.select['_optionMap'].set(this.id, value);\n this.selectNative['_optionMap'] = this.select['_optionMap']; //.set(this.id, value);\n super['_setElementValue'](_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n this.selectNative.writeValue(this.select.value);\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.selected) {\n /**\n * in case there's a selected value, readonly attribute is true, sync it to the readonly input. The reason is\n * that the readonly input is not aware of the selected value until the render of the view completes.\n */\n switch (this.selected) {\n case true:\n this.renderer.setAttribute(this.element.nativeElement, 'selected', '');\n break;\n default:\n this.renderer.removeAttribute(this.element.nativeElement, 'selected');\n }\n this.selectComponent?.syncReadOnlyValue();\n }\n\n if (changes.label) {\n this.renderer.setProperty(this.element.nativeElement, 'innerText', changes.label.currentValue);\n this.selectComponent?.syncReadOnlyValue();\n }\n }\n}\n","import { Directive, DoCheck, ElementRef, forwardRef, Injector, Input, Optional, Provider, Renderer2 } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, NgControl, SelectMultipleControlValueAccessor } from '@angular/forms';\nimport { EuiSelectMultipleOption } from './eui-select-mutli-option.directive';\nimport { _extractId } from './utils';\nimport { BooleanInput, coerceBooleanProperty } from '@angular/cdk/coercion';\nimport { EuiSelectComponent } from './eui-select.component';\n\nconst SELECT_MULTIPLE_VALUE_ACCESSOR: Provider = {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EuiSelectMultipleControlValueAccessor),\n multi: true,\n};\n\n/** Mock interface for HTML Options */\ninterface HTMLOption {\n value: string;\n selected: boolean;\n}\n\n/** Mock interface for HTMLCollection */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nabstract class HTMLCollection {\n // TODO(issue/24571): remove '!'.\n length!: number;\n abstract item(_: number): HTMLOption;\n}\n\n/**\n * @description\n * The `ControlValueAccessor` for writing multi-select control values and listening to multi-select\n * control changes. The value accessor is used by the `FormControlDirective`, `FormControlName`, and\n * `NgModel` directives.\n *\n * @see `EuiSelectControlValueAccessor`\n *\n * @usageNotes\n *\n * ### Using a multi-select control\n *\n * The follow example shows you how to use a multi-select control with a reactive form.\n *\n * ```ts\n * const countryControl = new FormControl();\n * ```\n *\n * ```\n * <select euiSelect multiple name=\"countries\" [formControl]=\"countryControl\">\n * <option euiOption *ngFor=\"let country of countries\" [ngValue]=\"country\">\n * {{ country.name }}\n * </option>\n * </select>\n * ```\n *\n * ### Customizing option selection\n *\n * To customize the default option comparison algorithm, `<select>` supports `compareWith` input.\n * See the `SelectControlValueAccessor` for usage.\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n@Directive({\n selector:\n // eslint-disable-next-line @angular-eslint/directive-selector,max-len\n 'select[multiple][formControlName][euiSelect],select[multiple][formControl][euiSelect],select[multiple][ngModel][euiSelect]',\n // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n host: { '(change)': 'onChange($event.target)', '(blur)': 'onTouched()' },\n providers: [SELECT_MULTIPLE_VALUE_ACCESSOR],\n})\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectMultipleControlValueAccessor extends SelectMultipleControlValueAccessor implements ControlValueAccessor, DoCheck {\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this._isInvalid = coerceBooleanProperty(state);\n }\n\n /**\n * The current value.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n value: any;\n\n /** @internal */\n _optionMap: Map<string, EuiSelectMultipleOption> = new Map<string, EuiSelectMultipleOption>();\n\n /** @internal */\n _idCounter = 0;\n protected _isInvalid: boolean;\n private elementRef: ElementRef;\n private renderer: Renderer2;\n private control: NgControl;\n\n constructor(\n _renderer: Renderer2,\n _elementRef: ElementRef,\n @Optional() private selectComponent: EuiSelectComponent,\n private injector: Injector,\n ) {\n super(_renderer, _elementRef);\n this.elementRef = _elementRef;\n this.renderer = _renderer;\n }\n\n ngDoCheck(): void {\n if (!this.control) {\n this.control = this.injector.get(NgControl, undefined, { optional: true });\n }\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : this._isInvalid;\n }\n\n /**\n * Sets the \"value\" property on one or of more of the select's options.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n writeValue(value: any): void {\n this.value = value;\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let optionSelectedStateSetter: (opt: EuiSelectMultipleOption, o: any) => void;\n if (Array.isArray(value)) {\n // convert values to ids\n const ids = value.map((v) => this._getOptionId(v));\n optionSelectedStateSetter = (opt, o): void => {\n opt._setSelected(ids.indexOf(o.toString()) > -1);\n };\n } else {\n optionSelectedStateSetter = (opt): void => {\n opt._setSelected(false);\n };\n }\n this._optionMap.forEach(optionSelectedStateSetter);\n this.selectComponent?.syncReadOnlyValue();\n }\n\n /**\n * Registers a function called when the control value changes\n * and writes an array of the selected options.\n *\n * @nodoc\n */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n override registerOnChange(fn: (value: any) => any): void {\n this.onChange = (element: HTMLSelectElement): void => {\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const selected: Array<any> = [];\n const selectedOptions = element.selectedOptions;\n if (selectedOptions !== undefined) {\n const options = selectedOptions;\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n const val = this._getOptionValue(opt.value);\n selected.push(val);\n }\n } else {\n const options = element.options;\n // eslint-disable-next-line @typescript-eslint/prefer-for-of\n for (let i = 0; i < options.length; i++) {\n const opt = options[i];\n if (opt.selected) {\n const val = this._getOptionValue(opt.value);\n selected.push(val);\n }\n }\n }\n this.value = selected;\n fn(selected);\n };\n }\n\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n registerOnTouched(fn: any): void {\n this.onTouched = (): void => {\n const control = this.injector.get(NgControl, undefined, { optional: true });\n this.isInvalid = control.invalid;\n if (this.isInvalid) {\n this.renderer.addClass(this.elementRef.nativeElement, 'eui-select--invalid');\n }\n fn();\n };\n }\n\n /** @internal */\n _registerOption(value: EuiSelectMultipleOption): string {\n const id: string = (this._idCounter++).toString();\n this._optionMap.set(id, value);\n return id;\n }\n\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _getOptionId(value: any): string | null {\n for (const id of Array.from(this._optionMap.keys())) {\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n if (this['_compareWith'](this._optionMap.get(id)!._value, value)) {\n return id;\n }\n }\n return null;\n }\n\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _getOptionValue(valueString: string): any {\n const id: string = _extractId(valueString);\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n return this._optionMap.has(id) ? this._optionMap.get(id)!._value : valueString;\n }\n}\n","import { Directive, ElementRef, Host, Input, OnDestroy, Optional, Renderer2 } from '@angular/core';\nimport { ɵNgSelectMultipleOption as NgSelectMultipleOption } from '@angular/forms';\nimport { EuiSelectMultipleControlValueAccessor } from './eui-select-multiple.directive';\nimport { _buildValueString } from './utils';\n\n/**\n * @description\n * Marks `<option>` as dynamic, so Angular can be notified when options change.\n *\n * @see `EuiSelectMultipleControlValueAccessor`\n *\n * @ngModule ReactiveFormsModule\n * @ngModule FormsModule\n * @publicApi\n */\n// eslint-disable-next-line @angular-eslint/directive-selector\n@Directive({ selector: 'option, option[euiOption]' })\n// eslint-disable-next-line @angular-eslint/directive-class-suffix\nexport class EuiSelectMultipleOption extends NgSelectMultipleOption implements OnDestroy {\n // TODO(issue/24571): remove '!'.\n id!: string;\n /** @internal */\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n _value: any;\n private element: ElementRef;\n private renderer: Renderer2;\n private select: EuiSelectMultipleControlValueAccessor;\n\n constructor(_element: ElementRef, _renderer: Renderer2, @Optional() @Host() _select: EuiSelectMultipleControlValueAccessor) {\n super(_element, _renderer, _select);\n this.element = _element;\n this.renderer = _renderer;\n this.select = _select;\n }\n\n /**\n * @description\n * Tracks the value bound to the option element. Unlike the value binding,\n * ngValue supports binding to objects.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set ngValue(value: any) {\n if (this.select == null) {\n return;\n }\n this._value = value;\n this._setElementValue(_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n }\n\n /**\n * @description\n * Tracks simple string values bound to the option element.\n * For objects, use the `ngValue` input binding.\n */\n @Input()\n // TODO: find the correct type or turn into a generic, https://www.typescriptlang.org/docs/handbook/2/generics.html\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n set value(value: any) {\n if (this.select) {\n this._value = value;\n this._setElementValue(_buildValueString(this.id, value));\n this.select.writeValue(this.select.value);\n } else {\n this._setElementValue(value);\n }\n }\n\n /** @internal */\n _setElementValue(value: string): void {\n this.renderer.setProperty(this.element.nativeElement, 'value', value);\n }\n\n /** @internal */\n _setSelected(selected: boolean): void {\n this.renderer.setProperty(this.element.nativeElement, 'selected', selected);\n }\n\n /** @nodoc */\n ngOnDestroy(): void {\n if (this.select) {\n this.select._optionMap.delete(this.id);\n this.select.writeValue(this.select.value);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiSelectComponent } from './eui-select.component';\nimport { EuiNgSelectOptionDirective } from './eui-select-option.directive';\nimport { EuiSelectControlValueAccessor } from './eui-select-control.directive';\nimport { EuiSelectMultipleControlValueAccessor } from './eui-select-multiple.directive';\nimport { EuiSelectMultipleOption } from './eui-select-mutli-option.directive';\n\n@NgModule({\n imports: [CommonModule],\n declarations: [\n EuiSelectComponent,\n EuiNgSelectOptionDirective,\n EuiSelectControlValueAccessor,\n EuiSelectMultipleControlValueAccessor,\n EuiSelectMultipleOption,\n ],\n exports: [\n EuiSelectComponent,\n EuiNgSelectOptionDirective,\n EuiSelectControlValueAccessor,\n EuiSelectMultipleControlValueAccessor,\n EuiSelectMultipleOption,\n ],\n})\nexport class EuiSelectModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["_buildValueString","i1.EuiSelectComponent","i1.EuiSelectControlValueAccessor","i3.EuiSelectComponent","NgSelectMultipleOption","i1.EuiSelectMultipleControlValueAccessor"],"mappings":"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"}
|