@eui/components 15.0.0-rc.21 → 15.0.0-rc.22
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/docs/components/EuiInputCheckboxComponent.html +0 -20
- package/docs/components/EuiInputRadioComponent.html +0 -20
- package/docs/dependencies.html +2 -2
- package/docs/js/menu-wc.js +3 -3
- package/docs/js/menu-wc_es5.js +1 -1
- package/docs/js/search/search_index.js +2 -2
- package/docs/modules/EuiInputCheckboxModule.html +0 -9
- package/esm2020/eui-input-checkbox/eui-input-checkbox.component.mjs +2 -42
- package/esm2020/eui-input-checkbox/eui-input-checkbox.module.mjs +3 -7
- package/esm2020/eui-input-radio/eui-input-radio.component.mjs +2 -42
- package/esm2020/eui-tree/eui-tree.component.mjs +1 -1
- package/eui-input-checkbox/eui-input-checkbox.component.d.ts +3 -12
- package/eui-input-checkbox/eui-input-checkbox.component.d.ts.map +1 -1
- package/eui-input-checkbox/eui-input-checkbox.module.d.ts +1 -2
- package/eui-input-checkbox/eui-input-checkbox.module.d.ts.map +1 -1
- package/eui-input-radio/eui-input-radio.component.d.ts +3 -12
- package/eui-input-radio/eui-input-radio.component.d.ts.map +1 -1
- package/fesm2015/eui-components-eui-input-checkbox.mjs +3 -46
- package/fesm2015/eui-components-eui-input-checkbox.mjs.map +1 -1
- package/fesm2015/eui-components-eui-input-radio.mjs +1 -41
- package/fesm2015/eui-components-eui-input-radio.mjs.map +1 -1
- package/fesm2015/eui-components-eui-tree.mjs +1 -1
- package/fesm2015/eui-components-eui-tree.mjs.map +1 -1
- package/fesm2020/eui-components-eui-input-checkbox.mjs +3 -46
- package/fesm2020/eui-components-eui-input-checkbox.mjs.map +1 -1
- package/fesm2020/eui-components-eui-input-radio.mjs +1 -41
- package/fesm2020/eui-components-eui-input-radio.mjs.map +1 -1
- package/fesm2020/eui-components-eui-tree.mjs +1 -1
- package/fesm2020/eui-components-eui-tree.mjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { DoCheck, ElementRef, OnChanges, Renderer2, SimpleChanges, OnInit, ChangeDetectorRef,
|
|
1
|
+
import { DoCheck, ElementRef, OnChanges, Renderer2, SimpleChanges, OnInit, ChangeDetectorRef, Injector, ViewContainerRef } from '@angular/core';
|
|
2
2
|
import { ControlValueAccessor, NgControl } from '@angular/forms';
|
|
3
3
|
import { InputDirective } from '@eui/components/shared';
|
|
4
4
|
import { BooleanInput } from '@angular/cdk/coercion';
|
|
5
|
-
import { EuiLabelComponent } from '@eui/components/eui-label';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
|
-
export declare class EuiInputRadioComponent extends InputDirective implements OnInit, DoCheck, OnChanges,
|
|
6
|
+
export declare class EuiInputRadioComponent extends InputDirective implements OnInit, DoCheck, OnChanges, ControlValueAccessor {
|
|
8
7
|
protected ngControl: NgControl;
|
|
9
8
|
private viewContainerRef;
|
|
10
9
|
protected _elementRef: ElementRef<HTMLInputElement>;
|
|
@@ -15,8 +14,6 @@ export declare class EuiInputRadioComponent extends InputDirective implements On
|
|
|
15
14
|
protected _isInvalid: boolean;
|
|
16
15
|
set class(cssClass: string);
|
|
17
16
|
get class(): string;
|
|
18
|
-
label: string;
|
|
19
|
-
protected _labelRef: ComponentRef<EuiLabelComponent>;
|
|
20
17
|
protected type: string;
|
|
21
18
|
get defaultChecked(): boolean;
|
|
22
19
|
set defaultChecked(value: BooleanInput);
|
|
@@ -29,7 +26,6 @@ export declare class EuiInputRadioComponent extends InputDirective implements On
|
|
|
29
26
|
ngOnInit(): void;
|
|
30
27
|
ngDoCheck(): void;
|
|
31
28
|
ngOnChanges(changes: SimpleChanges): void;
|
|
32
|
-
ngOnDestroy(): void;
|
|
33
29
|
writeValue(obj: string): void;
|
|
34
30
|
registerOnChange(fn: any): void;
|
|
35
31
|
registerOnTouched(fn: any): void;
|
|
@@ -39,12 +35,7 @@ export declare class EuiInputRadioComponent extends InputDirective implements On
|
|
|
39
35
|
protected onChange: (_: any) => void;
|
|
40
36
|
protected onTouched: (_: any) => void;
|
|
41
37
|
private processReadonly;
|
|
42
|
-
/**
|
|
43
|
-
* create readonly element
|
|
44
|
-
* @private
|
|
45
|
-
*/
|
|
46
|
-
private createLabelComponent;
|
|
47
38
|
static ɵfac: i0.ɵɵFactoryDeclaration<EuiInputRadioComponent, [{ optional: true; self: true; }, null, null, null, null, null]>;
|
|
48
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<EuiInputRadioComponent, "input[euiInputRadio]", never, { "isInvalid": "isInvalid"; "class": "class"; "
|
|
39
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<EuiInputRadioComponent, "input[euiInputRadio]", never, { "isInvalid": "isInvalid"; "class": "class"; "defaultChecked": "checked"; "value": "value"; }, {}, never, never, false, never>;
|
|
49
40
|
}
|
|
50
41
|
//# sourceMappingURL=eui-input-radio.component.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-input-radio.component.d.ts","sourceRoot":"","sources":["../../eui-input-radio/eui-input-radio.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,UAAU,EAGV,SAAS,EAET,SAAS,EAET,aAAa,EACb,MAAM,EACN,iBAAiB,
|
|
1
|
+
{"version":3,"file":"eui-input-radio.component.d.ts","sourceRoot":"","sources":["../../eui-input-radio/eui-input-radio.component.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EACP,UAAU,EAGV,SAAS,EAET,SAAS,EAET,aAAa,EACb,MAAM,EACN,iBAAiB,EAKjB,QAAQ,EACR,gBAAgB,EACnB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAyB,YAAY,EAAE,MAAM,uBAAuB,CAAC;;AAE5E,qBAOa,sBAAuB,SAAQ,cAAe,YAAW,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB;IAmD1F,SAAS,CAAC,SAAS,EAAE,SAAS;IAClD,OAAO,CAAC,gBAAgB;IACxB,SAAS,CAAC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC;IACnD,SAAS,CAAC,SAAS,EAAE,SAAS;IAC9B,OAAO,CAAC,GAAG;IArDf,IACW,SAAS,IAAI,OAAO,CAE9B;IACD,IAAW,SAAS,CAAC,KAAK,EAAE,YAAY,EAEvC;IACD,SAAS,CAAC,UAAU,EAAE,OAAO,CAAC;IAE9B,IAEW,KAAK,CAAC,QAAQ,EAAE,MAAM,EAEhC;IACD,IAAW,KAAK,IAAI,MAAM,CAKzB;IACyB,SAAS,CAAC,IAAI,EAAE,MAAM,CAAW;IAE3D,IAEW,cAAc,IAAI,OAAO,CAEnC;IACD,IAAW,cAAc,CAAC,KAAK,EAAE,YAAY,EAE5C;IACD,SAAS,CAAC,eAAe,EAAE,OAAO,CAAC;IAEnC,IAAW,QAAQ,IAAI,OAAO,CAE7B;IAED,IACI,KAAK,QAER;IACD,IAAI,KAAK,CAAC,KAAK,KAAA,EAKd;IACD,OAAO,CAAC,MAAM,CAAC;gBAGmB,SAAS,EAAE,SAAS,EAC1C,gBAAgB,EAAE,gBAAgB,EAChC,WAAW,EAAE,UAAU,CAAC,gBAAgB,CAAC,EACzC,SAAS,EAAE,SAAS,EACtB,GAAG,EAAE,iBAAiB,EAC9B,QAAQ,EAAE,QAAQ;IAkBtB,QAAQ;IAoBR,SAAS;IAMT,WAAW,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IAuBzC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAM7B,gBAAgB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAI/B,iBAAiB,CAAC,EAAE,EAAE,GAAG,GAAG,IAAI;IAIhC,gBAAgB,CAAC,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI;IAK5C,SAAS,CAAC,gBAAgB,CAAC,MAAM,KAAA;IAKjC,SAAS,CAAC,UAAU,CAAC,KAAK,KAAA,GAAG,IAAI;IAQjC,SAAS,CAAC,QAAQ,mBAA8C;IAChE,SAAS,CAAC,SAAS,mBAA8C;IAEjE,OAAO,CAAC,eAAe;yCA9Jd,sBAAsB;2CAAtB,sBAAsB;CA2KlC"}
|
|
@@ -2,7 +2,6 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Component, ViewEncapsulation, Optional, Self, HostBinding, Input, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import { InputDirective } from '@eui/components/shared';
|
|
4
4
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
-
import { EuiLabelComponent, EuiLabelModule } from '@eui/components/eui-label';
|
|
6
5
|
import * as i1 from '@angular/forms';
|
|
7
6
|
import { CommonModule } from '@angular/common';
|
|
8
7
|
|
|
@@ -79,34 +78,6 @@ class EuiInputCheckboxComponent extends InputDirective {
|
|
|
79
78
|
this._elementRef.nativeElement.checked = currentValue;
|
|
80
79
|
}
|
|
81
80
|
}
|
|
82
|
-
if (changes['label']) {
|
|
83
|
-
const value = changes['label'].currentValue;
|
|
84
|
-
if (value) {
|
|
85
|
-
// in case label Element already created update the value
|
|
86
|
-
if (!this._labelRef) {
|
|
87
|
-
// create label Element
|
|
88
|
-
this._labelRef = this.createLabelComponent();
|
|
89
|
-
// append label element under the Checkbox
|
|
90
|
-
const parent = this._elementRef.nativeElement.parentElement;
|
|
91
|
-
this._renderer.appendChild(parent, this._labelRef.location.nativeElement);
|
|
92
|
-
this._renderer.insertBefore(parent, this._labelRef.location.nativeElement, this._elementRef.nativeElement.nextSibling);
|
|
93
|
-
}
|
|
94
|
-
this._renderer.setProperty(this._labelRef.location.nativeElement, 'innerText', value);
|
|
95
|
-
}
|
|
96
|
-
else if (this._labelRef) {
|
|
97
|
-
this._labelRef.destroy();
|
|
98
|
-
this._labelRef = null;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
// in case id change then sync label for attribute
|
|
102
|
-
if (changes['id'] && this._labelRef) {
|
|
103
|
-
this._renderer.setAttribute(this._labelRef.location.nativeElement, 'for', changes['id'].currentValue);
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
ngOnDestroy() {
|
|
107
|
-
if (this._labelRef) {
|
|
108
|
-
this._labelRef.destroy();
|
|
109
|
-
}
|
|
110
81
|
}
|
|
111
82
|
writeValue(obj) {
|
|
112
83
|
this._checked = coerceBooleanProperty(obj) ? true : undefined;
|
|
@@ -128,18 +99,9 @@ class EuiInputCheckboxComponent extends InputDirective {
|
|
|
128
99
|
// in case it's controlled by NgControl override
|
|
129
100
|
this._isInvalid = this.control ? this.control.invalid && this.control.touched : coerceBooleanProperty(state);
|
|
130
101
|
}
|
|
131
|
-
/**
|
|
132
|
-
* create readonly element
|
|
133
|
-
* @private
|
|
134
|
-
*/
|
|
135
|
-
createLabelComponent() {
|
|
136
|
-
const componentRef = this.viewContainerRef.createComponent(EuiLabelComponent);
|
|
137
|
-
this._renderer.setAttribute(componentRef.location.nativeElement, 'for', this._id);
|
|
138
|
-
return componentRef;
|
|
139
|
-
}
|
|
140
102
|
}
|
|
141
103
|
/** @nocollapse */ EuiInputCheckboxComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
142
|
-
/** @nocollapse */ EuiInputCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiInputCheckboxComponent, selector: "input[euiInputCheckBox]", inputs: { isInvalid: "isInvalid",
|
|
104
|
+
/** @nocollapse */ EuiInputCheckboxComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiInputCheckboxComponent, selector: "input[euiInputCheckBox]", inputs: { isInvalid: "isInvalid", styleClass: "styleClass", checked: "checked", id: "id" }, host: { listeners: { "change": "onChanged($event.target.checked)" }, properties: { "class": "this.cssClasses", "attr.type": "this.type", "attr.checked": "this.checked", "attr.id": "this.id" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [".eui-input-checkbox:not(.cdk-visually-hidden){-webkit-appearance:inherit;appearance:inherit;align-items:center;cursor:pointer;display:inline-flex;flex-shrink:0;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));margin-right:var(--eui-base-spacing-s);position:relative;vertical-align:bottom;transition:all .25s ease;width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));accent-color:var(--eui-base-color-white);background:var(--eui-base-color-white);border:2px solid var(--eui-base-color-grey-75)}.eui-input-checkbox:not(.cdk-visually-hidden)+.eui-label,.eui-input-checkbox:not(.cdk-visually-hidden)+label{display:inline-flex;cursor:pointer;margin-right:var(--eui-base-spacing-m);white-space:inherit}.eui-input-checkbox:not(.cdk-visually-hidden):checked{background:var(--eui-base-color-primary-100)}.eui-input-checkbox:not(.cdk-visually-hidden):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly]){background:var(--eui-base-color-grey-15);opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23004494' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly])+label{pointer-events:none}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]{background:var(--eui-base-color-grey-35);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]:checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23004494' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]+label{pointer-events:none}.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--invalid:not(:disabled):not([readonly]),.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--danger:not(:disabled):not([readonly]){accent-color:var(--eui-base-color-danger-100);-webkit-appearance:inherit;appearance:inherit;background-color:var(--eui-base-color-white);border:2px solid var(--eui-base-color-danger-100)}.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--invalid:not(:disabled):not([readonly]):checked:before,.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--danger:not(:disabled):not([readonly]):checked:before{background:var(--eui-base-color-danger-100);height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):active,.eui-input-checkbox:not(.cdk-visually-hidden):focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:0;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
143
105
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxComponent, decorators: [{
|
|
144
106
|
type: Component,
|
|
145
107
|
args: [{ selector: 'input[euiInputCheckBox]', template: '', encapsulation: ViewEncapsulation.None, styles: [".eui-input-checkbox:not(.cdk-visually-hidden){-webkit-appearance:inherit;appearance:inherit;align-items:center;cursor:pointer;display:inline-flex;flex-shrink:0;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));margin-right:var(--eui-base-spacing-s);position:relative;vertical-align:bottom;transition:all .25s ease;width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));accent-color:var(--eui-base-color-white);background:var(--eui-base-color-white);border:2px solid var(--eui-base-color-grey-75)}.eui-input-checkbox:not(.cdk-visually-hidden)+.eui-label,.eui-input-checkbox:not(.cdk-visually-hidden)+label{display:inline-flex;cursor:pointer;margin-right:var(--eui-base-spacing-m);white-space:inherit}.eui-input-checkbox:not(.cdk-visually-hidden):checked{background:var(--eui-base-color-primary-100)}.eui-input-checkbox:not(.cdk-visually-hidden):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly]){background:var(--eui-base-color-grey-15);opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23004494' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):disabled:not([readonly])+label{pointer-events:none}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]{background:var(--eui-base-color-grey-35);opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]:checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23004494' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden)[readonly]+label{pointer-events:none}.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--invalid:not(:disabled):not([readonly]),.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--danger:not(:disabled):not([readonly]){accent-color:var(--eui-base-color-danger-100);-webkit-appearance:inherit;appearance:inherit;background-color:var(--eui-base-color-white);border:2px solid var(--eui-base-color-danger-100)}.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--invalid:not(:disabled):not([readonly]):checked:before,.eui-input-checkbox:not(.cdk-visually-hidden).eui-input-checkbox--danger:not(:disabled):not([readonly]):checked:before{background:var(--eui-base-color-danger-100);height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512'%3E%3Ctitle%3ECheckmark%3C/title%3E%3Cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='64' d='M416 128L192 384l-96-96'/%3E%3C/svg%3E\")}.eui-input-checkbox:not(.cdk-visually-hidden):active,.eui-input-checkbox:not(.cdk-visually-hidden):focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:0;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}\n"] }]
|
|
@@ -154,8 +116,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
154
116
|
args: ['class']
|
|
155
117
|
}], isInvalid: [{
|
|
156
118
|
type: Input
|
|
157
|
-
}], label: [{
|
|
158
|
-
type: Input
|
|
159
119
|
}], styleClass: [{
|
|
160
120
|
type: Input
|
|
161
121
|
}], type: [{
|
|
@@ -179,16 +139,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
179
139
|
class EuiInputCheckboxModule {
|
|
180
140
|
}
|
|
181
141
|
/** @nocollapse */ EuiInputCheckboxModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
182
|
-
/** @nocollapse */ EuiInputCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, declarations: [EuiInputCheckboxComponent], imports: [CommonModule,
|
|
183
|
-
|
|
184
|
-
/** @nocollapse */ EuiInputCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, imports: [CommonModule,
|
|
185
|
-
EuiLabelModule] });
|
|
142
|
+
/** @nocollapse */ EuiInputCheckboxModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, declarations: [EuiInputCheckboxComponent], imports: [CommonModule], exports: [EuiInputCheckboxComponent] });
|
|
143
|
+
/** @nocollapse */ EuiInputCheckboxModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, imports: [CommonModule] });
|
|
186
144
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputCheckboxModule, decorators: [{
|
|
187
145
|
type: NgModule,
|
|
188
146
|
args: [{
|
|
189
147
|
imports: [
|
|
190
148
|
CommonModule,
|
|
191
|
-
EuiLabelModule,
|
|
192
149
|
],
|
|
193
150
|
declarations: [
|
|
194
151
|
EuiInputCheckboxComponent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-components-eui-input-checkbox.mjs","sources":["../../eui-input-checkbox/eui-input-checkbox.component.ts","../../eui-input-checkbox/eui-input-checkbox.module.ts","../../eui-input-checkbox/eui-components-eui-input-checkbox.ts"],"sourcesContent":["import {\n DoCheck,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n Optional,\n Renderer2,\n Self,\n SimpleChanges,\n OnInit,\n HostListener,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n Injector,\n OnDestroy,\n ComponentRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { InputDirective } from '@eui/components/shared';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\nimport { EuiLabelComponent } from '@eui/components/eui-label';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[euiInputCheckBox]',\n styleUrls: ['./styles/_index.scss'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiInputCheckboxComponent extends InputDirective implements OnInit, DoCheck, OnChanges, OnDestroy, ControlValueAccessor {\n\n @HostBinding('class')\n public get cssClasses(): any {\n return [\n this.getCssClasses('eui-input-checkbox'),\n this._isInvalid ? `eui-input-checkbox--invalid` : '',\n ].join(' ').trim();\n }\n\n @Input()\n public get isInvalid() {\n return this._isInvalid || null;\n }\n\n public set isInvalid(state: any) {\n this.setInvalid(state);\n }\n\n protected _isInvalid: boolean;\n @Input() label: string;\n protected _labelRef: ComponentRef<EuiLabelComponent>;\n\n @Input() styleClass: string;\n @HostBinding('attr.type') protected type: string = 'checkbox';\n\n @HostBinding('attr.checked')\n @Input()\n public get checked(): boolean {\n return this._checked;\n }\n\n public set checked(value: BooleanInput) {\n this._checked = coerceBooleanProperty(value) ? true : undefined;\n }\n\n protected _checked: boolean;\n\n @HostBinding('attr.id')\n @Input()\n public get id(): string {\n return this._id;\n }\n\n public set id(value: string | null) {\n this.setIdAttribute(value);\n }\n\n protected _id: string;\n\n constructor(\n @Optional() @Self() protected ngControl: NgControl,\n protected _elementRef: ElementRef<HTMLInputElement>,\n protected _renderer: Renderer2,\n private _cd: ChangeDetectorRef,\n private viewContainerRef: ViewContainerRef,\n injector: Injector,\n ) {\n super(_elementRef, _renderer, ngControl, injector);\n\n // if there's no id attribute set one\n if (!this._id) {\n this.setIdAttribute();\n }\n\n // register control valueAccessor\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n // in case control value is null set the default one (isChecked) and sync Control State\n if (this.ngControl?.control?.value === null) {\n this.ngControl.control.setValue(this._checked, { emitModelToViewChange: false });\n // changing Model Expression after view checked, so detect changes\n // TODO: check why although it's checked .checked returns false\n // this.ngControl.viewToModelUpdate(this._checked);\n // this._cd.detectChanges();\n }\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this._isInvalid = this.ngControl.invalid && this.ngControl.touched;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n super.ngOnChanges(changes);\n\n if (changes['checked']) {\n const currentValue = changes['checked']?.currentValue;\n if (currentValue !== this?.ngControl?.control?.value) {\n this._checked = currentValue;\n this._elementRef.nativeElement.checked = currentValue;\n }\n }\n\n if (changes['label']) {\n const value = changes['label'].currentValue;\n if (value) {\n // in case label Element already created update the value\n if (!this._labelRef) {\n // create label Element\n this._labelRef = this.createLabelComponent();\n // append label element under the Checkbox\n const parent: HTMLElement = this._elementRef.nativeElement.parentElement;\n this._renderer.appendChild(parent, this._labelRef.location.nativeElement);\n this._renderer.insertBefore(parent, this._labelRef.location.nativeElement, this._elementRef.nativeElement.nextSibling);\n }\n this._renderer.setProperty(this._labelRef.location.nativeElement, 'innerText', value);\n } else if (this._labelRef) {\n this._labelRef.destroy();\n this._labelRef = null;\n }\n }\n\n // in case id change then sync label for attribute\n if (changes['id'] && this._labelRef) {\n this._renderer.setAttribute(this._labelRef.location.nativeElement, 'for', changes['id'].currentValue);\n }\n }\n\n ngOnDestroy() {\n if (this._labelRef) {\n this._labelRef.destroy();\n }\n }\n\n writeValue(obj: boolean): void {\n this._checked = coerceBooleanProperty(obj) ? true : undefined;\n this._elementRef.nativeElement.checked = this._checked ? true : undefined;\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onBlur = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('change', ['$event.target.checked'])\n protected onChanged(checked) {\n this.onChange(checked);\n }\n\n protected onChange = (_) => { /* Nothing to be Done so far */\n };\n protected onBlur = (_) => { /* Nothing to be Done so far */\n };\n\n protected setInvalid(state?: any): void {\n // in case it's controlled by NgControl override\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : coerceBooleanProperty(state);\n }\n\n /**\n * create readonly element\n * @private\n */\n private createLabelComponent(): ComponentRef<EuiLabelComponent> {\n const componentRef = this.viewContainerRef.createComponent(EuiLabelComponent);\n this._renderer.setAttribute(componentRef.location.nativeElement, 'for', this._id);\n return componentRef;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiInputCheckboxComponent } from './eui-input-checkbox.component';\nimport { EuiLabelModule } from '@eui/components/eui-label';\n\n@NgModule({\n imports: [\n CommonModule,\n EuiLabelModule,\n ],\n declarations: [\n EuiInputCheckboxComponent,\n ],\n exports: [\n EuiInputCheckboxComponent,\n ],\n})\nexport class EuiInputCheckboxModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"eui-components-eui-input-checkbox.mjs","sources":["../../eui-input-checkbox/eui-input-checkbox.component.ts","../../eui-input-checkbox/eui-input-checkbox.module.ts","../../eui-input-checkbox/eui-components-eui-input-checkbox.ts"],"sourcesContent":["import {\n DoCheck,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n Optional,\n Renderer2,\n Self,\n SimpleChanges,\n OnInit,\n HostListener,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n Injector,\n ViewContainerRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { InputDirective } from '@eui/components/shared';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[euiInputCheckBox]',\n styleUrls: ['./styles/_index.scss'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiInputCheckboxComponent extends InputDirective implements OnInit, DoCheck, OnChanges, ControlValueAccessor {\n\n @HostBinding('class')\n public get cssClasses(): any {\n return [\n this.getCssClasses('eui-input-checkbox'),\n this._isInvalid ? `eui-input-checkbox--invalid` : '',\n ].join(' ').trim();\n }\n\n @Input()\n public get isInvalid() {\n return this._isInvalid || null;\n }\n\n public set isInvalid(state: any) {\n this.setInvalid(state);\n }\n\n protected _isInvalid: boolean;\n\n @Input() styleClass: string;\n @HostBinding('attr.type') protected type: string = 'checkbox';\n\n @HostBinding('attr.checked')\n @Input()\n public get checked(): boolean {\n return this._checked;\n }\n\n public set checked(value: BooleanInput) {\n this._checked = coerceBooleanProperty(value) ? true : undefined;\n }\n\n protected _checked: boolean;\n\n @HostBinding('attr.id')\n @Input()\n public get id(): string {\n return this._id;\n }\n\n public set id(value: string | null) {\n this.setIdAttribute(value);\n }\n\n protected _id: string;\n\n constructor(\n @Optional() @Self() protected ngControl: NgControl,\n protected _elementRef: ElementRef<HTMLInputElement>,\n protected _renderer: Renderer2,\n private _cd: ChangeDetectorRef,\n private viewContainerRef: ViewContainerRef,\n injector: Injector,\n ) {\n super(_elementRef, _renderer, ngControl, injector);\n\n // if there's no id attribute set one\n if (!this._id) {\n this.setIdAttribute();\n }\n\n // register control valueAccessor\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n // in case control value is null set the default one (isChecked) and sync Control State\n if (this.ngControl?.control?.value === null) {\n this.ngControl.control.setValue(this._checked, { emitModelToViewChange: false });\n // changing Model Expression after view checked, so detect changes\n // TODO: check why although it's checked .checked returns false\n // this.ngControl.viewToModelUpdate(this._checked);\n // this._cd.detectChanges();\n }\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this._isInvalid = this.ngControl.invalid && this.ngControl.touched;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n super.ngOnChanges(changes);\n\n if (changes['checked']) {\n const currentValue = changes['checked']?.currentValue;\n if (currentValue !== this?.ngControl?.control?.value) {\n this._checked = currentValue;\n this._elementRef.nativeElement.checked = currentValue;\n }\n }\n\n }\n\n writeValue(obj: boolean): void {\n this._checked = coerceBooleanProperty(obj) ? true : undefined;\n this._elementRef.nativeElement.checked = this._checked ? true : undefined;\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onBlur = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('change', ['$event.target.checked'])\n protected onChanged(checked) {\n this.onChange(checked);\n }\n\n protected onChange = (_) => { /* Nothing to be Done so far */\n };\n protected onBlur = (_) => { /* Nothing to be Done so far */\n };\n\n protected setInvalid(state?: any): void {\n // in case it's controlled by NgControl override\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : coerceBooleanProperty(state);\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiInputCheckboxComponent } from './eui-input-checkbox.component';\nimport { EuiLabelModule } from '@eui/components/eui-label';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n EuiInputCheckboxComponent,\n ],\n exports: [\n EuiInputCheckboxComponent,\n ],\n})\nexport class EuiInputCheckboxModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,6 @@ import * as i0 from '@angular/core';
|
|
|
2
2
|
import { Component, ViewEncapsulation, Optional, Self, Input, HostBinding, HostListener, NgModule } from '@angular/core';
|
|
3
3
|
import { InputDirective } from '@eui/components/shared';
|
|
4
4
|
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
5
|
-
import { EuiLabelComponent } from '@eui/components/eui-label';
|
|
6
5
|
import * as i1 from '@angular/forms';
|
|
7
6
|
import { CommonModule } from '@angular/common';
|
|
8
7
|
|
|
@@ -86,29 +85,6 @@ class EuiInputRadioComponent extends InputDirective {
|
|
|
86
85
|
}
|
|
87
86
|
ngOnChanges(changes) {
|
|
88
87
|
super.ngOnChanges(changes);
|
|
89
|
-
if (changes['label']) {
|
|
90
|
-
const value = changes['label'].currentValue;
|
|
91
|
-
if (value) {
|
|
92
|
-
// in case label Element already created update the value
|
|
93
|
-
if (!this._labelRef) {
|
|
94
|
-
// create label Element
|
|
95
|
-
this._labelRef = this.createLabelComponent();
|
|
96
|
-
// append label element under the Checkbox
|
|
97
|
-
const parent = this._elementRef.nativeElement.parentElement;
|
|
98
|
-
this._renderer.appendChild(parent, this._labelRef.location.nativeElement);
|
|
99
|
-
this._renderer.insertBefore(parent, this._labelRef.location.nativeElement, this._elementRef.nativeElement.nextSibling);
|
|
100
|
-
}
|
|
101
|
-
this._renderer.setProperty(this._labelRef.location.nativeElement, 'innerText', value);
|
|
102
|
-
}
|
|
103
|
-
else if (this._labelRef) {
|
|
104
|
-
this._labelRef.destroy();
|
|
105
|
-
this._labelRef = null;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
// in case id change then sync label for attribute
|
|
109
|
-
if (changes['id'] && this._labelRef) {
|
|
110
|
-
this._renderer.setAttribute(this._labelRef.location.nativeElement, 'for', changes['id'].currentValue);
|
|
111
|
-
}
|
|
112
88
|
// when readonly changes hide other radio (input+label)
|
|
113
89
|
if (changes['readonly']) {
|
|
114
90
|
// in readonly hide all input elements.
|
|
@@ -129,11 +105,6 @@ class EuiInputRadioComponent extends InputDirective {
|
|
|
129
105
|
}
|
|
130
106
|
}
|
|
131
107
|
}
|
|
132
|
-
ngOnDestroy() {
|
|
133
|
-
if (this._labelRef) {
|
|
134
|
-
this._labelRef.destroy();
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
108
|
writeValue(obj) {
|
|
138
109
|
// set checked state based if radio value matches the control's one
|
|
139
110
|
this._elementRef.nativeElement.checked = (this._elementRef.nativeElement.value === obj);
|
|
@@ -171,18 +142,9 @@ class EuiInputRadioComponent extends InputDirective {
|
|
|
171
142
|
}
|
|
172
143
|
}
|
|
173
144
|
}
|
|
174
|
-
/**
|
|
175
|
-
* create readonly element
|
|
176
|
-
* @private
|
|
177
|
-
*/
|
|
178
|
-
createLabelComponent() {
|
|
179
|
-
const componentRef = this.viewContainerRef.createComponent(EuiLabelComponent);
|
|
180
|
-
this._renderer.setAttribute(componentRef.location.nativeElement, 'for', this._id);
|
|
181
|
-
return componentRef;
|
|
182
|
-
}
|
|
183
145
|
}
|
|
184
146
|
/** @nocollapse */ EuiInputRadioComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputRadioComponent, deps: [{ token: i1.NgControl, optional: true, self: true }, { token: i0.ViewContainerRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
185
|
-
/** @nocollapse */ EuiInputRadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiInputRadioComponent, selector: "input[euiInputRadio]", inputs: { isInvalid: "isInvalid", class: "class",
|
|
147
|
+
/** @nocollapse */ EuiInputRadioComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiInputRadioComponent, selector: "input[euiInputRadio]", inputs: { isInvalid: "isInvalid", class: "class", defaultChecked: ["checked", "defaultChecked"], value: "value" }, host: { listeners: { "change": "onCheckedChanged($event.target)" }, properties: { "class": "this.class", "attr.type": "this.type", "attr.checked": "this.defaultChecked" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: '', isInline: true, styles: [".eui-input-radio:not(.cdk-visually-hidden){-webkit-appearance:inherit;appearance:inherit;align-items:center;border-radius:50%;cursor:pointer;display:inline-flex;flex-shrink:0;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));margin-right:var(--eui-base-spacing-s);position:relative;vertical-align:bottom;transition:all .25s ease;width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));accent-color:var(--eui-base-color-white);background:var(--eui-base-color-white);border:2px solid var(--eui-base-color-grey-75)}.eui-input-radio:not(.cdk-visually-hidden)+label,.eui-input-radio:not(.cdk-visually-hidden)+.eui-label{display:inline-flex;cursor:pointer;margin-right:var(--eui-base-spacing-m);white-space:inherit}.eui-input-radio:not(.cdk-visually-hidden):checked{background:var(--eui-base-color-white)}.eui-input-radio:not(.cdk-visually-hidden):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly]){background:var(--eui-base-color-grey-15);opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly])+label{pointer-events:none}.eui-input-radio:not(.cdk-visually-hidden)[readonly]{display:none;opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-radio:not(.cdk-visually-hidden)[readonly]:checked{display:inline-flex}.eui-input-radio:not(.cdk-visually-hidden)[readonly]:checked:before{background:var(--eui-base-color-grey-25);border-radius:50%;height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--invalid:not(:disabled):not([readonly]),.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--danger:not(:disabled):not([readonly]){border:2px solid var(--eui-base-color-danger-100)}.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--invalid:not(:disabled):not([readonly]):checked:before,.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--danger:not(:disabled):not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23da2131' stroke='%23da2131' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):active,.eui-input-radio:not(.cdk-visually-hidden):focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:0;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
186
148
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiInputRadioComponent, decorators: [{
|
|
187
149
|
type: Component,
|
|
188
150
|
args: [{ selector: 'input[euiInputRadio]', template: '', encapsulation: ViewEncapsulation.None, styles: [".eui-input-radio:not(.cdk-visually-hidden){-webkit-appearance:inherit;appearance:inherit;align-items:center;border-radius:50%;cursor:pointer;display:inline-flex;flex-shrink:0;height:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));margin-right:var(--eui-base-spacing-s);position:relative;vertical-align:bottom;transition:all .25s ease;width:calc(var(--eui-base-spacing-m) + var(--eui-base-spacing-2xs));accent-color:var(--eui-base-color-white);background:var(--eui-base-color-white);border:2px solid var(--eui-base-color-grey-75)}.eui-input-radio:not(.cdk-visually-hidden)+label,.eui-input-radio:not(.cdk-visually-hidden)+.eui-label{display:inline-flex;cursor:pointer;margin-right:var(--eui-base-spacing-m);white-space:inherit}.eui-input-radio:not(.cdk-visually-hidden):checked{background:var(--eui-base-color-white)}.eui-input-radio:not(.cdk-visually-hidden):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly]){background:var(--eui-base-color-grey-15);opacity:.25;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):disabled:not([readonly])+label{pointer-events:none}.eui-input-radio:not(.cdk-visually-hidden)[readonly]{display:none;opacity:.5;pointer-events:none;-webkit-user-select:none;user-select:none}.eui-input-radio:not(.cdk-visually-hidden)[readonly]:checked{display:inline-flex}.eui-input-radio:not(.cdk-visually-hidden)[readonly]:checked:before{background:var(--eui-base-color-grey-25);border-radius:50%;height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23004494' stroke='%23004494' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--invalid:not(:disabled):not([readonly]),.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--danger:not(:disabled):not([readonly]){border:2px solid var(--eui-base-color-danger-100)}.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--invalid:not(:disabled):not([readonly]):checked:before,.eui-input-radio:not(.cdk-visually-hidden).eui-input-radio--danger:not(:disabled):not([readonly]):checked:before{height:1rem;width:1rem;content:url(\"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' class='ionicon' viewBox='0 0 512 512'%3E%3Ctitle%3EEllipse%3C/title%3E%3Cpath fill='%23da2131' stroke='%23da2131' d='M256 464c-114.69 0-208-93.31-208-208S141.31 48 256 48s208 93.31 208 208-93.31 208-208 208z'/%3E%3C/svg%3E\")}.eui-input-radio:not(.cdk-visually-hidden):active,.eui-input-radio:not(.cdk-visually-hidden):focus{outline:2px solid var(--eui-base-color-accessible-focus);outline-offset:0;-moz-outline-radius:var(--eui-base-border-radius);transition:outline .15s ease-in-out,border .15s ease-in-out}\n"] }]
|
|
@@ -199,8 +161,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImpor
|
|
|
199
161
|
args: ['class']
|
|
200
162
|
}, {
|
|
201
163
|
type: Input
|
|
202
|
-
}], label: [{
|
|
203
|
-
type: Input
|
|
204
164
|
}], type: [{
|
|
205
165
|
type: HostBinding,
|
|
206
166
|
args: ['attr.type']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eui-components-eui-input-radio.mjs","sources":["../../eui-input-radio/eui-input-radio.component.ts","../../eui-input-radio/eui-input-radio.module.ts","../../eui-input-radio/eui-components-eui-input-radio.ts"],"sourcesContent":["import {\n DoCheck,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n Optional,\n Renderer2,\n Self,\n SimpleChanges,\n OnInit,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n HostListener,\n OnDestroy,\n Injector,\n ComponentRef,\n ViewContainerRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl, Validators } from '@angular/forms';\nimport { InputDirective } from '@eui/components/shared';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\nimport { EuiLabelComponent } from '@eui/components/eui-label';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[euiInputRadio]',\n styleUrls: ['./styles/_index.scss'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiInputRadioComponent extends InputDirective implements OnInit, DoCheck, OnChanges, OnDestroy, ControlValueAccessor {\n\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this.setInvalid(state);\n }\n protected _isInvalid: boolean;\n\n @HostBinding('class')\n @Input()\n public set class(cssClass: string) {\n super.styleClass = cssClass;\n }\n public get class(): string {\n return [\n super.getCssClasses('eui-input-radio'),\n this._isInvalid ? 'eui-input-radio--invalid' : '',\n ].join(' ').trim();\n }\n\n @Input() label: string;\n protected _labelRef: ComponentRef<EuiLabelComponent>;\n\n @HostBinding('attr.type') protected type: string = 'radio';\n\n @HostBinding('attr.checked')\n @Input('checked')\n public get defaultChecked(): boolean {\n return this._defaultChecked;\n }\n public set defaultChecked(value: BooleanInput) {\n this._defaultChecked = coerceBooleanProperty(value);\n }\n protected _defaultChecked: boolean;\n\n public get selected(): boolean {\n return this._elementRef?.nativeElement.checked;\n }\n\n @Input()\n get value() {\n return this._value;\n }\n set value(value) {\n if (typeof value === 'boolean' || !!value) {\n this._value = value;\n this._elementRef.nativeElement.value = this._value;\n }\n }\n private _value;\n\n constructor(\n @Optional() @Self() protected ngControl: NgControl,\n private viewContainerRef: ViewContainerRef,\n protected _elementRef: ElementRef<HTMLInputElement>,\n protected _renderer: Renderer2,\n private _cd: ChangeDetectorRef,\n injector: Injector,\n ) {\n super(_elementRef, _renderer, ngControl, injector);\n\n // Firefox fix: set type to radio before first ngDoCheck runs\n this._elementRef.nativeElement.type = 'radio';\n\n // if there's no id attribute set one\n if (!this._id) {\n this.setIdAttribute();\n }\n\n // register control valueAccessor\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n // in case control value is null set the default one (isChecked) and sync Control State\n // if (this.ngControl?.control?.value === null) {\n // this.ngControl.control.setValue('', { emitModelToViewChange: false });\n // changing Model Expression after view checked, so detect changes\n // TODO: check why although it's checked .checked returns false\n // this.ngControl.viewToModelUpdate(this._checked);\n // this._cd.detectChanges();\n // }\n\n if(this.ngControl) {\n this.ngControl.statusChanges.subscribe((status) => {\n this.isInvalid = status === 'INVALID';\n this.euiDanger = this.isInvalid;\n });\n }\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n super.ngOnChanges(changes);\n\n if (changes['label']) {\n const value = changes['label'].currentValue;\n if(value) {\n // in case label Element already created update the value\n if (!this._labelRef) {\n // create label Element\n this._labelRef = this.createLabelComponent();\n // append label element under the Checkbox\n const parent: HTMLElement = this._elementRef.nativeElement.parentElement;\n this._renderer.appendChild(parent, this._labelRef.location.nativeElement);\n this._renderer.insertBefore(parent, this._labelRef.location.nativeElement, this._elementRef.nativeElement.nextSibling);\n }\n this._renderer.setProperty(this._labelRef.location.nativeElement, 'innerText', value);\n } else if (this._labelRef) {\n this._labelRef.destroy();\n this._labelRef = null;\n }\n }\n\n // in case id change then sync label for attribute\n if (changes['id'] && this._labelRef) {\n this._renderer.setAttribute(this._labelRef.location.nativeElement, 'for', changes['id'].currentValue);\n }\n\n // when readonly changes hide other radio (input+label)\n if (changes['readonly']) {\n // in readonly hide all input elements.\n if (this.readonly) {\n this._renderer.addClass(this._elementRef.nativeElement, 'eui-input-radio--hide');\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'eui-input-radio--hide');\n }\n this.processReadonly();\n }\n\n if (changes['isInvalid']) {\n if (changes['isInvalid'].currentValue) {\n this._renderer.addClass(this._elementRef.nativeElement, 'eui-input-radio--invalid');\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'eui-input-radio--invalid');\n }\n }\n }\n\n ngOnDestroy() {\n if(this._labelRef) {\n this._labelRef.destroy();\n }\n }\n\n writeValue(obj: string): void {\n // set checked state based if radio value matches the control's one\n this._elementRef.nativeElement.checked = (this._elementRef.nativeElement.value === obj);\n this.processReadonly();\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('change', ['$event.target'])\n protected onCheckedChanged(target) {\n this._defaultChecked = target.checked;\n this.onChange(target.value);\n }\n\n protected setInvalid(state): void {\n // in case it's controlled by NgControl override\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : coerceBooleanProperty(state);\n\n // set BaseDirective Attribute\n super.euiDanger = this._isInvalid;\n }\n\n protected onChange = (_) => { /* Nothing to be Done so far */ };\n protected onTouched = (_) => { /* Nothing to be Done so far */ };\n\n private processReadonly() {\n const notRender = this._readonly && !this._elementRef.nativeElement.checked;\n // control the label that will be rendered\n const labelElementRef = document.querySelector(`[for=${this._id}]`);\n if (labelElementRef) {\n if (notRender) {\n this._renderer.setStyle(labelElementRef, 'display', 'none');\n } else {\n this._renderer.removeStyle(labelElementRef, 'display');\n }\n }\n }\n\n /**\n * create readonly element\n * @private\n */\n private createLabelComponent(): ComponentRef<EuiLabelComponent> {\n const componentRef = this.viewContainerRef.createComponent(EuiLabelComponent);\n this._renderer.setAttribute(componentRef.location.nativeElement, 'for', this._id);\n return componentRef;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiInputRadioComponent } from './eui-input-radio.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n EuiInputRadioComponent,\n ],\n exports: [\n EuiInputRadioComponent,\n ],\n})\nexport class EuiInputRadioModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;;AAgCM,MAAO,sBAAuB,SAAQ,cAAc,CAAA;IAsDtD,WACkC,CAAA,SAAoB,EAC1C,gBAAkC,EAChC,WAAyC,EACzC,SAAoB,EACtB,GAAsB,EAC9B,QAAkB,EAAA;QAElB,KAAK,CAAC,WAAW,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;AAPrB,QAAA,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;AAC1C,QAAA,IAAgB,CAAA,gBAAA,GAAhB,gBAAgB,CAAkB;AAChC,QAAA,IAAW,CAAA,WAAA,GAAX,WAAW,CAA8B;AACzC,QAAA,IAAS,CAAA,SAAA,GAAT,SAAS,CAAW;AACtB,QAAA,IAAG,CAAA,GAAA,GAAH,GAAG,CAAmB;AAjCE,QAAA,IAAI,CAAA,IAAA,GAAW,OAAO,CAAC;QAmKjD,IAAA,CAAA,QAAQ,GAAG,CAAC,CAAC,KAAuC,GAAC,CAAC;QACtD,IAAA,CAAA,SAAS,GAAG,CAAC,CAAC,KAAuC,GAAC,CAAC;;QA7H7D,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,GAAG,OAAO,CAAC;;AAG9C,QAAA,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,IAAI,CAAC,cAAc,EAAE,CAAC;AACzB,SAAA;;QAGD,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,SAAS,CAAC,aAAa,GAAG,IAAI,CAAC;AACvC,SAAA;KACJ;AA1ED,IAAA,IACW,SAAS,GAAA;AAChB,QAAA,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC;KAClC;IACD,IAAW,SAAS,CAAC,KAAmB,EAAA;AACpC,QAAA,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;KAC1B;IAGD,IAEW,KAAK,CAAC,QAAgB,EAAA;AAC7B,QAAA,KAAK,CAAC,UAAU,GAAG,QAAQ,CAAC;KAC/B;AACD,IAAA,IAAW,KAAK,GAAA;QACZ,OAAO;AACH,YAAA,KAAK,CAAC,aAAa,CAAC,iBAAiB,CAAC;YACtC,IAAI,CAAC,UAAU,GAAG,0BAA0B,GAAG,EAAE;AACpD,SAAA,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;KACtB;AAOD,IAAA,IAEW,cAAc,GAAA;QACrB,OAAO,IAAI,CAAC,eAAe,CAAC;KAC/B;IACD,IAAW,cAAc,CAAC,KAAmB,EAAA;AACzC,QAAA,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;KACvD;AAGD,IAAA,IAAW,QAAQ,GAAA;;QACf,OAAO,CAAA,EAAA,GAAA,IAAI,CAAC,WAAW,0CAAE,aAAa,CAAC,OAAO,CAAC;KAClD;AAED,IAAA,IACI,KAAK,GAAA;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;KACtB;IACD,IAAI,KAAK,CAAC,KAAK,EAAA;QACX,IAAI,OAAO,KAAK,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK,EAAE;AACvC,YAAA,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;AACtD,SAAA;KACJ;IA2BD,QAAQ,GAAA;QACJ,KAAK,CAAC,QAAQ,EAAE,CAAC;;;;;;;;;QAWjB,IAAG,IAAI,CAAC,SAAS,EAAE;YACf,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,MAAM,KAAI;AAC9C,gBAAA,IAAI,CAAC,SAAS,GAAG,MAAM,KAAK,SAAS,CAAC;AACtC,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;AACpC,aAAC,CAAC,CAAC;AACN,SAAA;KACJ;IAED,SAAS,GAAA;QACL,IAAI,IAAI,CAAC,SAAS,EAAE;AAChB,YAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;AACrE,SAAA;KACJ;AAED,IAAA,WAAW,CAAC,OAAsB,EAAA;AAC9B,QAAA,KAAK,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;AAE3B,QAAA,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;YAClB,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC;AAC5C,YAAA,IAAG,KAAK,EAAE;;AAEN,gBAAA,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE;;AAEjB,oBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;;oBAE7C,MAAM,MAAM,GAAgB,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,aAAa,CAAC;AACzE,oBAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;oBAC1E,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;AAC1H,iBAAA;AACD,gBAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AACzF,aAAA;iBAAM,IAAI,IAAI,CAAC,SAAS,EAAE;AACvB,gBAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;AACzB,gBAAA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;AACzB,aAAA;AACJ,SAAA;;QAGD,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE;YACjC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;AACzG,SAAA;;AAGD,QAAA,IAAI,OAAO,CAAC,UAAU,CAAC,EAAE;;YAErB,IAAI,IAAI,CAAC,QAAQ,EAAE;AACf,gBAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;AACpF,aAAA;AAAM,iBAAA;AACH,gBAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,uBAAuB,CAAC,CAAC;AACvF,aAAA;YACD,IAAI,CAAC,eAAe,EAAE,CAAC;AAC1B,SAAA;AAED,QAAA,IAAI,OAAO,CAAC,WAAW,CAAC,EAAE;AACtB,YAAA,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC,YAAY,EAAE;AACnC,gBAAA,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;AACvF,aAAA;AAAM,iBAAA;AACH,gBAAA,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,0BAA0B,CAAC,CAAC;AAC1F,aAAA;AACJ,SAAA;KACJ;IAED,WAAW,GAAA;QACP,IAAG,IAAI,CAAC,SAAS,EAAE;AACf,YAAA,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;AAC5B,SAAA;KACJ;AAED,IAAA,UAAU,CAAC,GAAW,EAAA;;AAElB,QAAA,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC;QACxF,IAAI,CAAC,eAAe,EAAE,CAAC;KAC1B;AAED,IAAA,gBAAgB,CAAC,EAAO,EAAA;AACpB,QAAA,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;KACtB;AAED,IAAA,iBAAiB,CAAC,EAAO,EAAA;AACrB,QAAA,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;KACvB;AAED,IAAA,gBAAgB,CAAE,UAAmB,EAAA;AACjC,QAAA,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC;KAC9B;AAGS,IAAA,gBAAgB,CAAC,MAAM,EAAA;AAC7B,QAAA,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC;AACtC,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;KAC/B;AAES,IAAA,UAAU,CAAC,KAAK,EAAA;;QAEtB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;;AAG7G,QAAA,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC;KACrC;IAKO,eAAe,GAAA;AACnB,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,OAAO,CAAC;;AAE5E,QAAA,MAAM,eAAe,GAAG,QAAQ,CAAC,aAAa,CAAC,CAAQ,KAAA,EAAA,IAAI,CAAC,GAAG,CAAG,CAAA,CAAA,CAAC,CAAC;AACpE,QAAA,IAAI,eAAe,EAAE;AACjB,YAAA,IAAI,SAAS,EAAE;gBACX,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAC/D,aAAA;AAAM,iBAAA;gBACH,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AAC1D,aAAA;AACJ,SAAA;KACJ;AAED;;;AAGG;IACK,oBAAoB,GAAA;QACxB,MAAM,YAAY,GAAG,IAAI,CAAC,gBAAgB,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;AAC9E,QAAA,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,YAAY,CAAC,QAAQ,CAAC,aAAa,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;AAClF,QAAA,OAAO,YAAY,CAAC;KACvB;;sIArNQ,sBAAsB,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,QAAA,EAAA,IAAA,EAAA,IAAA,EAAA,IAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,UAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,SAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,iBAAA,EAAA,EAAA,EAAA,KAAA,EAAA,EAAA,CAAA,QAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAtB,mBAAA,sBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,sBAAsB,yZAHrB,EAAE,EAAA,QAAA,EAAA,IAAA,EAAA,MAAA,EAAA,CAAA,okHAAA,CAAA,EAAA,aAAA,EAAA,EAAA,CAAA,iBAAA,CAAA,IAAA,EAAA,CAAA,CAAA;2FAGH,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAPlC,SAAS;YAEI,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,sBAAsB,EAEtB,QAAA,EAAA,EAAE,EACG,aAAA,EAAA,iBAAiB,CAAC,IAAI,EAAA,MAAA,EAAA,CAAA,okHAAA,CAAA,EAAA,CAAA;;;8BAyDhC,QAAQ;;8BAAI,IAAI;;yBApDV,SAAS,EAAA,CAAA;sBADnB,KAAK;gBAWK,KAAK,EAAA,CAAA;sBAFf,WAAW;uBAAC,OAAO,CAAA;;sBACnB,KAAK;gBAWG,KAAK,EAAA,CAAA;sBAAb,KAAK;gBAG8B,IAAI,EAAA,CAAA;sBAAvC,WAAW;uBAAC,WAAW,CAAA;gBAIb,cAAc,EAAA,CAAA;sBAFxB,WAAW;uBAAC,cAAc,CAAA;;sBAC1B,KAAK;uBAAC,SAAS,CAAA;gBAcZ,KAAK,EAAA,CAAA;sBADR,KAAK;gBAsII,gBAAgB,EAAA,CAAA;sBADzB,YAAY;uBAAC,QAAQ,EAAE,CAAC,eAAe,CAAC,CAAA;;;MChMhC,mBAAmB,CAAA;;mIAAnB,mBAAmB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAnB,mBAAA,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,EANxB,YAAA,EAAA,CAAA,sBAAsB,CAHtB,EAAA,OAAA,EAAA,CAAA,YAAY,aAMZ,sBAAsB,CAAA,EAAA,CAAA,CAAA;AAGjB,mBAAA,mBAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,mBAAmB,YATxB,YAAY,CAAA,EAAA,CAAA,CAAA;2FASP,mBAAmB,EAAA,UAAA,EAAA,CAAA;kBAX/B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE;wBACL,YAAY;AACf,qBAAA;AACD,oBAAA,YAAY,EAAE;wBACV,sBAAsB;AACzB,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,sBAAsB;AACzB,qBAAA;iBACJ,CAAA;;;ACdD;;AAEG;;;;"}
|
|
1
|
+
{"version":3,"file":"eui-components-eui-input-radio.mjs","sources":["../../eui-input-radio/eui-input-radio.component.ts","../../eui-input-radio/eui-input-radio.module.ts","../../eui-input-radio/eui-components-eui-input-radio.ts"],"sourcesContent":["import {\n DoCheck,\n ElementRef,\n HostBinding,\n Input,\n OnChanges,\n Optional,\n Renderer2,\n Self,\n SimpleChanges,\n OnInit,\n ChangeDetectorRef,\n Component,\n ViewEncapsulation,\n HostListener,\n OnDestroy,\n Injector,\n ViewContainerRef,\n} from '@angular/core';\nimport { ControlValueAccessor, NgControl } from '@angular/forms';\nimport { InputDirective } from '@eui/components/shared';\nimport { coerceBooleanProperty, BooleanInput } from '@angular/cdk/coercion';\n\n@Component({\n // eslint-disable-next-line @angular-eslint/component-selector\n selector: 'input[euiInputRadio]',\n styleUrls: ['./styles/_index.scss'],\n template: '',\n encapsulation: ViewEncapsulation.None,\n})\nexport class EuiInputRadioComponent extends InputDirective implements OnInit, DoCheck, OnChanges, ControlValueAccessor {\n\n @Input()\n public get isInvalid(): boolean {\n return this._isInvalid || null;\n }\n public set isInvalid(state: BooleanInput) {\n this.setInvalid(state);\n }\n protected _isInvalid: boolean;\n\n @HostBinding('class')\n @Input()\n public set class(cssClass: string) {\n super.styleClass = cssClass;\n }\n public get class(): string {\n return [\n super.getCssClasses('eui-input-radio'),\n this._isInvalid ? 'eui-input-radio--invalid' : '',\n ].join(' ').trim();\n }\n @HostBinding('attr.type') protected type: string = 'radio';\n\n @HostBinding('attr.checked')\n @Input('checked')\n public get defaultChecked(): boolean {\n return this._defaultChecked;\n }\n public set defaultChecked(value: BooleanInput) {\n this._defaultChecked = coerceBooleanProperty(value);\n }\n protected _defaultChecked: boolean;\n\n public get selected(): boolean {\n return this._elementRef?.nativeElement.checked;\n }\n\n @Input()\n get value() {\n return this._value;\n }\n set value(value) {\n if (typeof value === 'boolean' || !!value) {\n this._value = value;\n this._elementRef.nativeElement.value = this._value;\n }\n }\n private _value;\n\n constructor(\n @Optional() @Self() protected ngControl: NgControl,\n private viewContainerRef: ViewContainerRef,\n protected _elementRef: ElementRef<HTMLInputElement>,\n protected _renderer: Renderer2,\n private _cd: ChangeDetectorRef,\n injector: Injector,\n ) {\n super(_elementRef, _renderer, ngControl, injector);\n\n // Firefox fix: set type to radio before first ngDoCheck runs\n this._elementRef.nativeElement.type = 'radio';\n\n // if there's no id attribute set one\n if (!this._id) {\n this.setIdAttribute();\n }\n\n // register control valueAccessor\n if (this.ngControl) {\n this.ngControl.valueAccessor = this;\n }\n }\n\n ngOnInit() {\n super.ngOnInit();\n\n // in case control value is null set the default one (isChecked) and sync Control State\n // if (this.ngControl?.control?.value === null) {\n // this.ngControl.control.setValue('', { emitModelToViewChange: false });\n // changing Model Expression after view checked, so detect changes\n // TODO: check why although it's checked .checked returns false\n // this.ngControl.viewToModelUpdate(this._checked);\n // this._cd.detectChanges();\n // }\n\n if(this.ngControl) {\n this.ngControl.statusChanges.subscribe((status) => {\n this.isInvalid = status === 'INVALID';\n this.euiDanger = this.isInvalid;\n });\n }\n }\n\n ngDoCheck() {\n if (this.ngControl) {\n this.isInvalid = this.ngControl.invalid && this.ngControl.touched;\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n super.ngOnChanges(changes);\n\n // when readonly changes hide other radio (input+label)\n if (changes['readonly']) {\n // in readonly hide all input elements.\n if (this.readonly) {\n this._renderer.addClass(this._elementRef.nativeElement, 'eui-input-radio--hide');\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'eui-input-radio--hide');\n }\n this.processReadonly();\n }\n\n if (changes['isInvalid']) {\n if (changes['isInvalid'].currentValue) {\n this._renderer.addClass(this._elementRef.nativeElement, 'eui-input-radio--invalid');\n } else {\n this._renderer.removeClass(this._elementRef.nativeElement, 'eui-input-radio--invalid');\n }\n }\n }\n\n writeValue(obj: string): void {\n // set checked state based if radio value matches the control's one\n this._elementRef.nativeElement.checked = (this._elementRef.nativeElement.value === obj);\n this.processReadonly();\n }\n\n registerOnChange(fn: any): void {\n this.onChange = fn;\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn;\n }\n\n setDisabledState?(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n\n @HostListener('change', ['$event.target'])\n protected onCheckedChanged(target) {\n this._defaultChecked = target.checked;\n this.onChange(target.value);\n }\n\n protected setInvalid(state): void {\n // in case it's controlled by NgControl override\n this._isInvalid = this.control ? this.control.invalid && this.control.touched : coerceBooleanProperty(state);\n\n // set BaseDirective Attribute\n super.euiDanger = this._isInvalid;\n }\n\n protected onChange = (_) => { /* Nothing to be Done so far */ };\n protected onTouched = (_) => { /* Nothing to be Done so far */ };\n\n private processReadonly() {\n const notRender = this._readonly && !this._elementRef.nativeElement.checked;\n // control the label that will be rendered\n const labelElementRef = document.querySelector(`[for=${this._id}]`);\n if (labelElementRef) {\n if (notRender) {\n this._renderer.setStyle(labelElementRef, 'display', 'none');\n } else {\n this._renderer.removeStyle(labelElementRef, 'display');\n }\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { EuiInputRadioComponent } from './eui-input-radio.component';\n\n@NgModule({\n imports: [\n CommonModule,\n ],\n declarations: [\n EuiInputRadioComponent,\n ],\n exports: [\n EuiInputRadioComponent,\n ],\n})\nexport class EuiInputRadioModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
@@ -350,7 +350,7 @@ class EuiTreeComponent {
|
|
|
350
350
|
}
|
|
351
351
|
}
|
|
352
352
|
/** @nocollapse */ EuiTreeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiTreeComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
353
|
-
/** @nocollapse */ EuiTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiTreeComponent, selector: "eui-tree", inputs: { nodes: "nodes", nodeTemplateRef: "nodeTemplateRef", nodeContentMetadataTemplateRef: "nodeContentMetadataTemplateRef", expandedIconClass: "expandedIconClass", collapsedIconClass: "collapsedIconClass", isClickTogglingNode: "isClickTogglingNode", isMultiselect: "isMultiselect", isRecursiveSelection: "isRecursiveSelection", isRecursiveParentSelection: "isRecursiveParentSelection", autoTranslate: "autoTranslate" }, outputs: { selectionChange: "selectionChange", nodeClick: "nodeClick", nodeToggle: "nodeToggle" }, usesOnChanges: true, ngImport: i0, template: "<ul class=\"eui-tree\">\n <cdk-tree [dataSource]=\"cdkArrayDataSource\" [treeControl]=\"cdkTreeControl\" [trackBy]=\"trackBy\" *ngIf=\"renderTree\">\n <!-- There are two states of generic cdk-nested-tree-node declarations.\n First one is without child. No sub rendering.\n -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\"\n >\n <div class=\"eui-tree-node-wrapper\">\n <div (click)=\"onNodeClick(treeItemModel)\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n </li>\n </cdk-nested-tree-node>\n <!-- This is the tree node template for expandable nodes -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel when: hasChild\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\">\n <div class=\"eui-tree-node-wrapper\">\n <button euiButton euiIconButton euiBasicButton euiSizeS\n [attr.aria-label]=\"'Toggle ' + treeItemModel?.node?.treeContentBlock?.label\"\n (click)=\"onNodeToggle(treeItemModel)\"\n cdkTreeNodeToggle>\n <span euiIcon *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&collapsedIconClass\"\n [iconClass]=\"collapsedIconClass\"></span>\n <span euiIcon *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&expandedIconClass\"\n [iconClass]=\"expandedIconClass\"\n ></span>\n <eui-icon-svg *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&!collapsedIconClass\" icon=\"eui-chevron-forward\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&!expandedIconClass\" icon=\"eui-chevron-down\"></eui-icon-svg>\n </button>\n <!--Here wraps the node, and listen for node clicks.-->\n <div (click)=\"onNodeClick(treeItemModel)\" class=\"eui-u-flex\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel?.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n <!--uses cdkTreeNodeOutlet to render children nodes, CdkTreeControl is used to control isExpanded state.-->\n <ul class=\"eui-tree-node\" *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)\">\n <ng-container cdkTreeNodeOutlet></ng-container>\n </ul>\n </li>\n </cdk-nested-tree-node>\n </cdk-tree>\n</ul>\n\n<ng-template #nodeTemplateDefault let-node let-onSelect=\"onSelect\" let-id=id>\n <ng-container *ngIf=\"node\">\n <!--input checkbox area-->\n <input euiInputCheckBox *ngIf=\"node && node.selectable\"\n type=\"checkbox\"\n id=\"{{id}}\"\n [checked]=\"node && node.isSelected\"\n (change)=\"onSelect($event)\"\n class=\"eui-u-mr-s\"\n >\n <!--type (typeLabel & typeClass) area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.typeLabel\" [ngSwitch]=\"node?.treeContentBlock?.typeClass\">\n <eui-badge euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.typeClass||'primary'\"\n class=\"eui-u-mr-s\">\n {{node?.treeContentBlock?.typeLabel}}\n </eui-badge>\n </ng-container>\n <!--icon area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.iconClass\">\n <eui-icon euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.iconTypeClass||'primary'\"\n iconClass=\"{{node?.treeContentBlock?.iconClass}}\"\n class=\"eui-u-mr-s\">\n </eui-icon>\n </ng-container>\n <!--label area-->\n <label *ngIf=\"!node?.treeContentBlock?.urlExternal\" euiLabel class=\"eui-u-mr-s\"\n for=\"{{id}}\">{{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}</label>\n <label *ngIf=\"node?.treeContentBlock?.urlExternal\" euiLabel for=\"{{id}}\" class=\"eui-u-mr-s\">\n <a href=\"{{node?.treeContentBlock?.urlExternal}}\"\n target=\"{{node?.treeContentBlock?.urlExternalTarget || 'blank'}}\">\n {{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}\n </a>\n </label>\n <!--badges area-->\n <ng-container *ngFor=\"let badge of node?.treeContentBlock?.badges\">\n <eui-badge euiSizeM [euiVariant]=\"badge.typeClass||'secondary'\" class=\"eui-u-ml-s\">\n {{badge.label}}\n </eui-badge>\n </ng-container>\n <!--metadata, uses the help of ng template to generate dynamic expand variable without handling state -->\n <ng-container *ngIf=\"node?.treeContentBlock?.metadata && nodeContentMetadataTemplateRef\"\n [ngTemplateOutlet]=\"nodeContentMetadataContainer\"\n [ngTemplateOutletContext]=\"{\n $implicit: {expanded:false}\n }\">\n </ng-container>\n <ng-template #nodeContentMetadataContainer let-metaDataContainer>\n <button euiButton euiBasicButton euiIconButton euiSizeS (click)=\"metaDataContainer.expanded=!metaDataContainer.expanded\">\n <eui-icon-svg [icon]=\"metaDataContainer.expanded ? 'eui-chevron-down' : 'eui-chevron-forward'\"></eui-icon-svg>\n </button>\n <div *ngIf=\"metaDataContainer.expanded\"\n class=\"eui-tree-node__metacontent\">\n <!--passing metadata of the node content to provided template-ref:nodeContentMetadataTemplateRef-->\n <ng-template [ngTemplateOutlet]=\"nodeContentMetadataTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: node?.treeContentBlock?.metadata,metadata: node?.treeContentBlock?.metadata}\"></ng-template>\n </div>\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: [".eui-tree{list-style:none;margin:0 0 0 var(--eui-base-spacing-xs);padding:0;position:relative}.eui-tree .eui-tree-node,.eui-tree .eui-tree-node-wrapper{display:flex}.eui-tree .eui-tree-node{flex-direction:column}.eui-tree .eui-tree-node-wrapper{align-items:center;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-s)}.eui-tree .eui-tree-node-wrapper .eui-label{white-space:pre-wrap}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "component", type: i2.EuiInputCheckboxComponent, selector: "input[euiInputCheckBox]", inputs: ["isInvalid", "label", "styleClass", "checked", "id"] }, { kind: "directive", type: i3.CdkNestedTreeNode, selector: "cdk-nested-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["cdkNestedTreeNode"] }, { kind: "directive", type: i3.CdkTreeNodeDef, selector: "[cdkTreeNodeDef]", inputs: ["cdkTreeNodeDefWhen"] }, { kind: "directive", type: i3.CdkTreeNodeToggle, selector: "[cdkTreeNodeToggle]", inputs: ["cdkTreeNodeToggleRecursive"] }, { kind: "component", type: i3.CdkTree, selector: "cdk-tree", inputs: ["dataSource", "treeControl", "trackBy"], exportAs: ["cdkTree"] }, { kind: "directive", type: i3.CdkTreeNodeOutlet, selector: "[cdkTreeNodeOutlet]" }, { kind: "component", type: i4.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i5.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i6.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: i7.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["aria-label"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
353
|
+
/** @nocollapse */ EuiTreeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.0", type: EuiTreeComponent, selector: "eui-tree", inputs: { nodes: "nodes", nodeTemplateRef: "nodeTemplateRef", nodeContentMetadataTemplateRef: "nodeContentMetadataTemplateRef", expandedIconClass: "expandedIconClass", collapsedIconClass: "collapsedIconClass", isClickTogglingNode: "isClickTogglingNode", isMultiselect: "isMultiselect", isRecursiveSelection: "isRecursiveSelection", isRecursiveParentSelection: "isRecursiveParentSelection", autoTranslate: "autoTranslate" }, outputs: { selectionChange: "selectionChange", nodeClick: "nodeClick", nodeToggle: "nodeToggle" }, usesOnChanges: true, ngImport: i0, template: "<ul class=\"eui-tree\">\n <cdk-tree [dataSource]=\"cdkArrayDataSource\" [treeControl]=\"cdkTreeControl\" [trackBy]=\"trackBy\" *ngIf=\"renderTree\">\n <!-- There are two states of generic cdk-nested-tree-node declarations.\n First one is without child. No sub rendering.\n -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\"\n >\n <div class=\"eui-tree-node-wrapper\">\n <div (click)=\"onNodeClick(treeItemModel)\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n </li>\n </cdk-nested-tree-node>\n <!-- This is the tree node template for expandable nodes -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel when: hasChild\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\">\n <div class=\"eui-tree-node-wrapper\">\n <button euiButton euiIconButton euiBasicButton euiSizeS\n [attr.aria-label]=\"'Toggle ' + treeItemModel?.node?.treeContentBlock?.label\"\n (click)=\"onNodeToggle(treeItemModel)\"\n cdkTreeNodeToggle>\n <span euiIcon *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&collapsedIconClass\"\n [iconClass]=\"collapsedIconClass\"></span>\n <span euiIcon *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&expandedIconClass\"\n [iconClass]=\"expandedIconClass\"\n ></span>\n <eui-icon-svg *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&!collapsedIconClass\" icon=\"eui-chevron-forward\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&!expandedIconClass\" icon=\"eui-chevron-down\"></eui-icon-svg>\n </button>\n <!--Here wraps the node, and listen for node clicks.-->\n <div (click)=\"onNodeClick(treeItemModel)\" class=\"eui-u-flex\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel?.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n <!--uses cdkTreeNodeOutlet to render children nodes, CdkTreeControl is used to control isExpanded state.-->\n <ul class=\"eui-tree-node\" *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)\">\n <ng-container cdkTreeNodeOutlet></ng-container>\n </ul>\n </li>\n </cdk-nested-tree-node>\n </cdk-tree>\n</ul>\n\n<ng-template #nodeTemplateDefault let-node let-onSelect=\"onSelect\" let-id=id>\n <ng-container *ngIf=\"node\">\n <!--input checkbox area-->\n <input euiInputCheckBox *ngIf=\"node && node.selectable\"\n type=\"checkbox\"\n id=\"{{id}}\"\n [checked]=\"node && node.isSelected\"\n (change)=\"onSelect($event)\"\n class=\"eui-u-mr-s\"\n >\n <!--type (typeLabel & typeClass) area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.typeLabel\" [ngSwitch]=\"node?.treeContentBlock?.typeClass\">\n <eui-badge euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.typeClass||'primary'\"\n class=\"eui-u-mr-s\">\n {{node?.treeContentBlock?.typeLabel}}\n </eui-badge>\n </ng-container>\n <!--icon area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.iconClass\">\n <eui-icon euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.iconTypeClass||'primary'\"\n iconClass=\"{{node?.treeContentBlock?.iconClass}}\"\n class=\"eui-u-mr-s\">\n </eui-icon>\n </ng-container>\n <!--label area-->\n <label *ngIf=\"!node?.treeContentBlock?.urlExternal\" euiLabel class=\"eui-u-mr-s\"\n for=\"{{id}}\">{{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}</label>\n <label *ngIf=\"node?.treeContentBlock?.urlExternal\" euiLabel for=\"{{id}}\" class=\"eui-u-mr-s\">\n <a href=\"{{node?.treeContentBlock?.urlExternal}}\"\n target=\"{{node?.treeContentBlock?.urlExternalTarget || 'blank'}}\">\n {{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}\n </a>\n </label>\n <!--badges area-->\n <ng-container *ngFor=\"let badge of node?.treeContentBlock?.badges\">\n <eui-badge euiSizeM [euiVariant]=\"badge.typeClass||'secondary'\" class=\"eui-u-ml-s\">\n {{badge.label}}\n </eui-badge>\n </ng-container>\n <!--metadata, uses the help of ng template to generate dynamic expand variable without handling state -->\n <ng-container *ngIf=\"node?.treeContentBlock?.metadata && nodeContentMetadataTemplateRef\"\n [ngTemplateOutlet]=\"nodeContentMetadataContainer\"\n [ngTemplateOutletContext]=\"{\n $implicit: {expanded:false}\n }\">\n </ng-container>\n <ng-template #nodeContentMetadataContainer let-metaDataContainer>\n <button euiButton euiBasicButton euiIconButton euiSizeS (click)=\"metaDataContainer.expanded=!metaDataContainer.expanded\">\n <eui-icon-svg [icon]=\"metaDataContainer.expanded ? 'eui-chevron-down' : 'eui-chevron-forward'\"></eui-icon-svg>\n </button>\n <div *ngIf=\"metaDataContainer.expanded\"\n class=\"eui-tree-node__metacontent\">\n <!--passing metadata of the node content to provided template-ref:nodeContentMetadataTemplateRef-->\n <ng-template [ngTemplateOutlet]=\"nodeContentMetadataTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: node?.treeContentBlock?.metadata,metadata: node?.treeContentBlock?.metadata}\"></ng-template>\n </div>\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: [".eui-tree{list-style:none;margin:0 0 0 var(--eui-base-spacing-xs);padding:0;position:relative}.eui-tree .eui-tree-node,.eui-tree .eui-tree-node-wrapper{display:flex}.eui-tree .eui-tree-node{flex-direction:column}.eui-tree .eui-tree-node-wrapper{align-items:center;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-s)}.eui-tree .eui-tree-node-wrapper .eui-label{white-space:pre-wrap}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "component", type: i2.EuiInputCheckboxComponent, selector: "input[euiInputCheckBox]", inputs: ["isInvalid", "styleClass", "checked", "id"] }, { kind: "directive", type: i3.CdkNestedTreeNode, selector: "cdk-nested-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["cdkNestedTreeNode"] }, { kind: "directive", type: i3.CdkTreeNodeDef, selector: "[cdkTreeNodeDef]", inputs: ["cdkTreeNodeDefWhen"] }, { kind: "directive", type: i3.CdkTreeNodeToggle, selector: "[cdkTreeNodeToggle]", inputs: ["cdkTreeNodeToggleRecursive"] }, { kind: "component", type: i3.CdkTree, selector: "cdk-tree", inputs: ["dataSource", "treeControl", "trackBy"], exportAs: ["cdkTree"] }, { kind: "directive", type: i3.CdkTreeNodeOutlet, selector: "[cdkTreeNodeOutlet]" }, { kind: "component", type: i4.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i5.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i5.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i6.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: i7.EuiBadgeComponent, selector: "div[euiBadge], span[euiBadge], eui-badge", inputs: ["aria-label"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
354
354
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.0", ngImport: i0, type: EuiTreeComponent, decorators: [{
|
|
355
355
|
type: Component,
|
|
356
356
|
args: [{ selector: 'eui-tree', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ul class=\"eui-tree\">\n <cdk-tree [dataSource]=\"cdkArrayDataSource\" [treeControl]=\"cdkTreeControl\" [trackBy]=\"trackBy\" *ngIf=\"renderTree\">\n <!-- There are two states of generic cdk-nested-tree-node declarations.\n First one is without child. No sub rendering.\n -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\"\n >\n <div class=\"eui-tree-node-wrapper\">\n <div (click)=\"onNodeClick(treeItemModel)\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n </li>\n </cdk-nested-tree-node>\n <!-- This is the tree node template for expandable nodes -->\n <cdk-nested-tree-node *cdkTreeNodeDef=\"let treeItemModel when: hasChild\">\n <li class=\"eui-tree-node\" *ngIf=\"treeItemModel\"\n title=\"{{getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.tooltipLabel||\n getTreeItem(treeItemModel?.path)?.node?.treeContentBlock?.label}}\">\n <div class=\"eui-tree-node-wrapper\">\n <button euiButton euiIconButton euiBasicButton euiSizeS\n [attr.aria-label]=\"'Toggle ' + treeItemModel?.node?.treeContentBlock?.label\"\n (click)=\"onNodeToggle(treeItemModel)\"\n cdkTreeNodeToggle>\n <span euiIcon *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&collapsedIconClass\"\n [iconClass]=\"collapsedIconClass\"></span>\n <span euiIcon *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&expandedIconClass\"\n [iconClass]=\"expandedIconClass\"\n ></span>\n <eui-icon-svg *ngIf=\"!cdkTreeControl.isExpanded(treeItemModel)&&!collapsedIconClass\" icon=\"eui-chevron-forward\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)&&!expandedIconClass\" icon=\"eui-chevron-down\"></eui-icon-svg>\n </button>\n <!--Here wraps the node, and listen for node clicks.-->\n <div (click)=\"onNodeClick(treeItemModel)\" class=\"eui-u-flex\">\n <!--\n Renders node in default or provided template's context.\n Generates onSelect with onSelectFn for developers to send the events from their custom check events.\n Provides id to be used on generic template\n -->\n <ng-container\n [ngTemplateOutlet]=\"nodeTemplateRef||nodeTemplateDefault\"\n [ngTemplateOutletContext]=\"{\n $implicit: getTreeItem(treeItemModel?.path)?.node,\n onSelect:onSelectFn(treeItemModel?.path,treeItemModel),\n id:uid+treeItemModel.path\n }\">\n </ng-container>\n </div>\n </div>\n <!--uses cdkTreeNodeOutlet to render children nodes, CdkTreeControl is used to control isExpanded state.-->\n <ul class=\"eui-tree-node\" *ngIf=\"cdkTreeControl.isExpanded(treeItemModel)\">\n <ng-container cdkTreeNodeOutlet></ng-container>\n </ul>\n </li>\n </cdk-nested-tree-node>\n </cdk-tree>\n</ul>\n\n<ng-template #nodeTemplateDefault let-node let-onSelect=\"onSelect\" let-id=id>\n <ng-container *ngIf=\"node\">\n <!--input checkbox area-->\n <input euiInputCheckBox *ngIf=\"node && node.selectable\"\n type=\"checkbox\"\n id=\"{{id}}\"\n [checked]=\"node && node.isSelected\"\n (change)=\"onSelect($event)\"\n class=\"eui-u-mr-s\"\n >\n <!--type (typeLabel & typeClass) area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.typeLabel\" [ngSwitch]=\"node?.treeContentBlock?.typeClass\">\n <eui-badge euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.typeClass||'primary'\"\n class=\"eui-u-mr-s\">\n {{node?.treeContentBlock?.typeLabel}}\n </eui-badge>\n </ng-container>\n <!--icon area-->\n <ng-container *ngIf=\"node?.treeContentBlock?.iconClass\">\n <eui-icon euiSizeM\n [euiVariant]=\"node?.treeContentBlock?.iconTypeClass||'primary'\"\n iconClass=\"{{node?.treeContentBlock?.iconClass}}\"\n class=\"eui-u-mr-s\">\n </eui-icon>\n </ng-container>\n <!--label area-->\n <label *ngIf=\"!node?.treeContentBlock?.urlExternal\" euiLabel class=\"eui-u-mr-s\"\n for=\"{{id}}\">{{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}</label>\n <label *ngIf=\"node?.treeContentBlock?.urlExternal\" euiLabel for=\"{{id}}\" class=\"eui-u-mr-s\">\n <a href=\"{{node?.treeContentBlock?.urlExternal}}\"\n target=\"{{node?.treeContentBlock?.urlExternalTarget || 'blank'}}\">\n {{autoTranslate ? (node?.treeContentBlock?.label|translate) : node?.treeContentBlock?.label}}\n </a>\n </label>\n <!--badges area-->\n <ng-container *ngFor=\"let badge of node?.treeContentBlock?.badges\">\n <eui-badge euiSizeM [euiVariant]=\"badge.typeClass||'secondary'\" class=\"eui-u-ml-s\">\n {{badge.label}}\n </eui-badge>\n </ng-container>\n <!--metadata, uses the help of ng template to generate dynamic expand variable without handling state -->\n <ng-container *ngIf=\"node?.treeContentBlock?.metadata && nodeContentMetadataTemplateRef\"\n [ngTemplateOutlet]=\"nodeContentMetadataContainer\"\n [ngTemplateOutletContext]=\"{\n $implicit: {expanded:false}\n }\">\n </ng-container>\n <ng-template #nodeContentMetadataContainer let-metaDataContainer>\n <button euiButton euiBasicButton euiIconButton euiSizeS (click)=\"metaDataContainer.expanded=!metaDataContainer.expanded\">\n <eui-icon-svg [icon]=\"metaDataContainer.expanded ? 'eui-chevron-down' : 'eui-chevron-forward'\"></eui-icon-svg>\n </button>\n <div *ngIf=\"metaDataContainer.expanded\"\n class=\"eui-tree-node__metacontent\">\n <!--passing metadata of the node content to provided template-ref:nodeContentMetadataTemplateRef-->\n <ng-template [ngTemplateOutlet]=\"nodeContentMetadataTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: node?.treeContentBlock?.metadata,metadata: node?.treeContentBlock?.metadata}\"></ng-template>\n </div>\n </ng-template>\n </ng-container>\n</ng-template>\n", styles: [".eui-tree{list-style:none;margin:0 0 0 var(--eui-base-spacing-xs);padding:0;position:relative}.eui-tree .eui-tree-node,.eui-tree .eui-tree-node-wrapper{display:flex}.eui-tree .eui-tree-node{flex-direction:column}.eui-tree .eui-tree-node-wrapper{align-items:center;padding:var(--eui-base-spacing-2xs) var(--eui-base-spacing-s)}.eui-tree .eui-tree-node-wrapper .eui-label{white-space:pre-wrap}\n"] }]
|