@ethlete/cdk 3.19.0 → 3.19.2
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/CHANGELOG.md +14 -0
- package/esm2022/lib/components/button/directives/button/button.directive.mjs +10 -25
- package/esm2022/lib/components/button/directives/query-button/query-button.directive.mjs +8 -17
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.mjs +7 -11
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.mjs +17 -14
- package/esm2022/lib/components/forms/components/checkbox/directives/checkbox-group-control/checkbox-group-control.directive.mjs +6 -13
- package/esm2022/lib/components/forms/components/error/components/error/error.component.mjs +7 -9
- package/esm2022/lib/components/forms/components/radio/directives/radio/radio.directive.mjs +6 -8
- package/esm2022/lib/components/forms/components/radio/directives/radio-field/radio-field.directive.mjs +14 -18
- package/esm2022/lib/components/forms/components/radio/directives/radio-group/radio-group.directive.mjs +5 -11
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button/segmented-button.directive.mjs +6 -8
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-field/segmented-button-field.directive.mjs +14 -18
- package/esm2022/lib/components/forms/components/segmented-button/directives/segmented-button-group/segmented-button-group.directive.mjs +6 -11
- package/esm2022/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.mjs +17 -25
- package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.mjs +20 -24
- package/esm2022/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.mjs +11 -23
- package/esm2022/lib/components/forms/components/select/components/select/directives/select/select.directive.mjs +29 -22
- package/esm2022/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.mjs +7 -15
- package/esm2022/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.mjs +13 -14
- package/esm2022/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.mjs +9 -3
- package/esm2022/lib/components/forms/components/select/directives/select-field/select-field.directive.mjs +3 -4
- package/esm2022/lib/components/forms/components/slide-toggle/directives/slide-toggle/slide-toggle.directive.mjs +6 -8
- package/esm2022/lib/components/forms/components/slider/components/slider/slider.component.mjs +18 -41
- package/esm2022/lib/components/forms/directives/input/input.directive.mjs +4 -1
- package/esm2022/lib/components/forms/directives/writeable-input/writeable-input.directive.mjs +10 -23
- package/esm2022/lib/components/forms/services/input-state.service.mjs +21 -4
- package/esm2022/lib/components/forms/utils/decorated-form-field.base.mjs +5 -8
- package/esm2022/lib/components/forms/utils/decorated-input.base.mjs +26 -23
- package/esm2022/lib/components/masonry/components/masonry/masonry.component.mjs +6 -8
- package/esm2022/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.mjs +11 -4
- package/esm2022/lib/components/overlay/components/toggletip/components/toggletip/toggletip.component.mjs +9 -3
- package/esm2022/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.mjs +4 -1
- package/esm2022/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.mjs +9 -3
- package/esm2022/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.mjs +4 -1
- package/esm2022/lib/components/picture/picture.component.mjs +7 -4
- package/fesm2022/ethlete-cdk.mjs +255 -356
- package/fesm2022/ethlete-cdk.mjs.map +1 -1
- package/lib/components/button/directives/button/button.directive.d.ts +4 -1
- package/lib/components/button/directives/query-button/query-button.directive.d.ts +4 -1
- package/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.d.ts +4 -1
- package/lib/components/forms/components/checkbox/directives/checkbox-field/checkbox-field.directive.d.ts +11 -6
- package/lib/components/forms/components/checkbox/directives/checkbox-group-control/checkbox-group-control.directive.d.ts +6 -4
- package/lib/components/forms/components/error/components/error/error.component.d.ts +4 -1
- package/lib/components/forms/components/radio/directives/radio/radio.directive.d.ts +4 -1
- package/lib/components/forms/components/radio/directives/radio-field/radio-field.directive.d.ts +12 -6
- package/lib/components/forms/components/radio/directives/radio-group/radio-group.directive.d.ts +4 -1
- package/lib/components/forms/components/segmented-button/directives/segmented-button/segmented-button.directive.d.ts +4 -1
- package/lib/components/forms/components/segmented-button/directives/segmented-button-field/segmented-button-field.directive.d.ts +12 -7
- package/lib/components/forms/components/segmented-button/directives/segmented-button-group/segmented-button-group.directive.d.ts +4 -1
- package/lib/components/forms/components/select/components/combobox/directives/combobox/combobox.directive.d.ts +10 -1
- package/lib/components/forms/components/select/components/combobox/partials/combobox-body/combobox-body.component.d.ts +13 -2
- package/lib/components/forms/components/select/components/combobox/partials/combobox-option/combobox-option.component.d.ts +8 -1
- package/lib/components/forms/components/select/components/select/directives/select/select.directive.d.ts +15 -3
- package/lib/components/forms/components/select/components/select/directives/select-body/select-body.directive.d.ts +4 -1
- package/lib/components/forms/components/select/components/select/directives/select-option/select-option.directive.d.ts +10 -1
- package/lib/components/forms/components/select/components/select/partials/select-body/select-body.component.d.ts +5 -1
- package/lib/components/forms/components/select/directives/select-field/select-field.directive.d.ts +2 -2
- package/lib/components/forms/components/slide-toggle/directives/slide-toggle/slide-toggle.directive.d.ts +4 -1
- package/lib/components/forms/components/slider/components/slider/slider.component.d.ts +8 -1
- package/lib/components/forms/directives/input/input.directive.d.ts +21 -19
- package/lib/components/forms/directives/writeable-input/writeable-input.directive.d.ts +4 -1
- package/lib/components/forms/services/input-state.service.d.ts +13 -6
- package/lib/components/forms/utils/decorated-form-field.base.d.ts +4 -1
- package/lib/components/forms/utils/decorated-input.base.d.ts +13 -6
- package/lib/components/masonry/components/masonry/masonry.component.d.ts +4 -1
- package/lib/components/overlay/components/overlay/components/overlay-container/overlay-container.component.d.ts +4 -1
- package/lib/components/overlay/components/toggletip/components/toggletip/toggletip.component.d.ts +5 -1
- package/lib/components/overlay/components/toggletip/directives/toggletip/toggletip.directive.d.ts +1 -0
- package/lib/components/overlay/components/tooltip/components/tooltip/tooltip.component.d.ts +5 -1
- package/lib/components/overlay/components/tooltip/directives/tooltip/tooltip.directive.d.ts +1 -0
- package/package.json +3 -3
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Directive, inject, InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { signalHostAttributes } from '@ethlete/core';
|
|
4
4
|
import { FormGroupStateService } from '../../../../services';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
export const RADIO_GROUP_TOKEN = new InjectionToken('ET_RADIO_GROUP_DIRECTIVE_TOKEN');
|
|
@@ -9,14 +9,8 @@ export class RadioGroupDirective {
|
|
|
9
9
|
constructor() {
|
|
10
10
|
this._formGroupStateService = inject(FormGroupStateService);
|
|
11
11
|
this.name = `et-radio-group-${++nextUniqueId}`;
|
|
12
|
-
this.
|
|
13
|
-
|
|
14
|
-
observable: this._formGroupStateService.describedBy$.pipe(map((describedBy) => {
|
|
15
|
-
return {
|
|
16
|
-
render: !!describedBy,
|
|
17
|
-
value: `${describedBy}`,
|
|
18
|
-
};
|
|
19
|
-
})),
|
|
12
|
+
this.hostAttributeBindings = signalHostAttributes({
|
|
13
|
+
'aria-labelledby': toSignal(this._formGroupStateService.describedBy$),
|
|
20
14
|
});
|
|
21
15
|
}
|
|
22
16
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: RadioGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
@@ -33,4 +27,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
33
27
|
},
|
|
34
28
|
}]
|
|
35
29
|
}] });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
30
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZ3JvdXAuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvcmFkaW8vZGlyZWN0aXZlcy9yYWRpby1ncm91cC9yYWRpby1ncm91cC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7O0FBRTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFzQixnQ0FBZ0MsQ0FBQyxDQUFDO0FBRTNHLElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztBQVVyQixNQUFNLE9BQU8sbUJBQW1CO0lBUmhDO1FBU21CLDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBRS9ELFNBQUksR0FBRyxrQkFBa0IsRUFBRSxZQUFZLEVBQUUsQ0FBQztRQUUxQywwQkFBcUIsR0FBRyxvQkFBb0IsQ0FBQztZQUNwRCxpQkFBaUIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFlBQVksQ0FBQztTQUN0RSxDQUFDLENBQUM7S0FDSjs4R0FSWSxtQkFBbUI7a0dBQW5CLG1CQUFtQixpRkFObkIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQzs7MkZBTWxFLG1CQUFtQjtrQkFSL0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxxQkFBcUIsRUFBRSxDQUFDO29CQUM3RSxRQUFRLEVBQUUsY0FBYztvQkFDeEIsSUFBSSxFQUFFO3dCQUNKLElBQUksRUFBRSxZQUFZO3FCQUNuQjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0QXR0cmlidXRlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUdyb3VwU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMnO1xuXG5leHBvcnQgY29uc3QgUkFESU9fR1JPVVBfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UmFkaW9Hcm91cERpcmVjdGl2ZT4oJ0VUX1JBRElPX0dST1VQX0RJUkVDVElWRV9UT0tFTicpO1xuXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogUkFESU9fR1JPVVBfVE9LRU4sIHVzZUV4aXN0aW5nOiBSYWRpb0dyb3VwRGlyZWN0aXZlIH1dLFxuICBleHBvcnRBczogJ2V0UmFkaW9Hcm91cCcsXG4gIGhvc3Q6IHtcbiAgICByb2xlOiAncmFkaW9ncm91cCcsXG4gIH0sXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvR3JvdXBEaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9mb3JtR3JvdXBTdGF0ZVNlcnZpY2UgPSBpbmplY3QoRm9ybUdyb3VwU3RhdGVTZXJ2aWNlKTtcblxuICByZWFkb25seSBuYW1lID0gYGV0LXJhZGlvLWdyb3VwLSR7KytuZXh0VW5pcXVlSWR9YDtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2FyaWEtbGFiZWxsZWRieSc6IHRvU2lnbmFsKHRoaXMuX2Zvcm1Hcm91cFN0YXRlU2VydmljZS5kZXNjcmliZWRCeSQpLFxuICB9KTtcbn1cbiJdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Directive, InjectionToken, Input, booleanAttribute, inject } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { signalHostClasses } from '@ethlete/core';
|
|
3
4
|
import { BehaviorSubject, combineLatest, map } from 'rxjs';
|
|
4
5
|
import { INPUT_TOKEN } from '../../../../directives';
|
|
5
6
|
import * as i0 from "@angular/core";
|
|
@@ -12,12 +13,9 @@ export class SegmentedButtonDirective {
|
|
|
12
13
|
this._disabled$ = new BehaviorSubject(false);
|
|
13
14
|
this.checked$ = combineLatest([this.input.value$, this._value$]).pipe(map(([inputValue, value]) => inputValue === value));
|
|
14
15
|
this.disabled$ = combineLatest([this.input.disabled$, this._disabled$]).pipe(map(([inputDisabled, disabled]) => inputDisabled || disabled));
|
|
15
|
-
this.
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}, {
|
|
19
|
-
attribute: ['class.et-segmented-button--disabled'],
|
|
20
|
-
observable: this.disabled$,
|
|
16
|
+
this.hostClassBindings = signalHostClasses({
|
|
17
|
+
'et-segmented-button--checked': toSignal(this.checked$),
|
|
18
|
+
'et-segmented-button--disabled': toSignal(this.disabled$),
|
|
21
19
|
});
|
|
22
20
|
}
|
|
23
21
|
get value() {
|
|
@@ -69,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
69
67
|
}], disabled: [{
|
|
70
68
|
type: Input
|
|
71
69
|
}] } });
|
|
72
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudGVkLWJ1dHRvbi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWdtZW50ZWQtYnV0dG9uL2RpcmVjdGl2ZXMvc2VnbWVudGVkLWJ1dHRvbi9zZWdtZW50ZWQtYnV0dG9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLGNBQWMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQWEsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQWtCLE1BQU0sd0JBQXdCLENBQUM7O0FBRXJFLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLElBQUksY0FBYyxDQUN0RCxxQ0FBcUMsQ0FDdEMsQ0FBQztBQU9GLE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFNbUIsNkJBQXdCLEdBQUcsSUFBSSxlQUFlLENBQXFCLElBQUksQ0FBQyxDQUFDO1FBQ2pGLFVBQUssR0FBRyxNQUFNLENBQTRCLFdBQVcsQ0FBQyxDQUFDO1FBU3hELFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBWSxJQUFJLENBQUMsQ0FBQztRQVMvQyxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdkMsYUFBUSxHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDdkUsR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsS0FBSyxLQUFLLENBQUMsQ0FDbkQsQ0FBQztRQUVPLGNBQVMsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFNBQVMsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQzlFLEdBQUcsQ0FBQyxDQUFDLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxhQUFhLElBQUksUUFBUSxDQUFDLENBQzlELENBQUM7UUFFTyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztZQUM3Qyw4QkFBOEIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUN2RCwrQkFBK0IsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztTQUMxRCxDQUFDLENBQUM7S0ErQko7SUE1REMsSUFDSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxJQUFJLEtBQUssQ0FBQyxLQUFnQjtRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBR0QsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFDRCxJQUFJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7SUFDaEQsQ0FBQztJQWdCRCxJQUFJLHVCQUF1QjtRQUN6QixPQUFPLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsSUFBSSxzQkFBc0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsd0JBQXdCLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVELDBCQUEwQixDQUFDLE9BQW9CO1FBQzdDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQVk7UUFDOUIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUM1QixJQUFJLENBQUMsS0FBSyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQzFDLENBQUM7OEdBL0RVLHdCQUF3QjtrR0FBeEIsd0JBQXdCLG1GQUh4QixDQUFDLEVBQUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFdBQVcsRUFBRSx3QkFBd0IsRUFBRSxDQUFDOzsyRkFHNUUsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUUsQ0FBQyxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxXQUFXLDBCQUEwQixFQUFFLENBQUM7b0JBQ3ZGLFFBQVEsRUFBRSxtQkFBbUI7aUJBQzlCOzhCQU1LLEtBQUs7c0JBRFIsS0FBSztnQkFVRixRQUFRO3NCQURYLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIEluamVjdGlvblRva2VuLCBJbnB1dCwgYm9vbGVhbkF0dHJpYnV0ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFByaW1pdGl2ZSwgc2lnbmFsSG9zdENsYXNzZXMgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJTlBVVF9UT0tFTiwgSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kaXJlY3RpdmVzJztcblxuZXhwb3J0IGNvbnN0IFNFR01FTlRFRF9CVVRUT05fVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48U2VnbWVudGVkQnV0dG9uRGlyZWN0aXZlPihcbiAgJ0VUX1NFR01FTlRFRF9CVVRUT05fRElSRUNUSVZFX1RPS0VOJyxcbik7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFNFR01FTlRFRF9CVVRUT05fVE9LRU4sIHVzZUV4aXN0aW5nOiBTZWdtZW50ZWRCdXR0b25EaXJlY3RpdmUgfV0sXG4gIGV4cG9ydEFzOiAnZXRTZWdtZW50ZWRCdXR0b24nLFxufSlcbmV4cG9ydCBjbGFzcyBTZWdtZW50ZWRCdXR0b25EaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9hY3RpdmVJbmRpY2F0b3JFbGVtZW50JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SFRNTEVsZW1lbnQgfCBudWxsPihudWxsKTtcbiAgcmVhZG9ubHkgaW5wdXQgPSBpbmplY3Q8SW5wdXREaXJlY3RpdmU8UHJpbWl0aXZlPj4oSU5QVVRfVE9LRU4pO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmFsdWUkLmdldFZhbHVlKCk7XG4gIH1cbiAgc2V0IHZhbHVlKHZhbHVlOiBQcmltaXRpdmUpIHtcbiAgICB0aGlzLl92YWx1ZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgcHJpdmF0ZSBfdmFsdWUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxQcmltaXRpdmU+KG51bGwpO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQkLmdldFZhbHVlKCk7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiB1bmtub3duKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQkLm5leHQoYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSkpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGNoZWNrZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5pbnB1dC52YWx1ZSQsIHRoaXMuX3ZhbHVlJF0pLnBpcGUoXG4gICAgbWFwKChbaW5wdXRWYWx1ZSwgdmFsdWVdKSA9PiBpbnB1dFZhbHVlID09PSB2YWx1ZSksXG4gICk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5pbnB1dC5kaXNhYmxlZCQsIHRoaXMuX2Rpc2FibGVkJF0pLnBpcGUoXG4gICAgbWFwKChbaW5wdXREaXNhYmxlZCwgZGlzYWJsZWRdKSA9PiBpbnB1dERpc2FibGVkIHx8IGRpc2FibGVkKSxcbiAgKTtcblxuICByZWFkb25seSBob3N0Q2xhc3NCaW5kaW5ncyA9IHNpZ25hbEhvc3RDbGFzc2VzKHtcbiAgICAnZXQtc2VnbWVudGVkLWJ1dHRvbi0tY2hlY2tlZCc6IHRvU2lnbmFsKHRoaXMuY2hlY2tlZCQpLFxuICAgICdldC1zZWdtZW50ZWQtYnV0dG9uLS1kaXNhYmxlZCc6IHRvU2lnbmFsKHRoaXMuZGlzYWJsZWQkKSxcbiAgfSk7XG5cbiAgZ2V0IGFjdGl2ZUluZGljYXRvckVsZW1lbnQkKCkge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVJbmRpY2F0b3JFbGVtZW50JC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIGdldCBhY3RpdmVJbmRpY2F0b3JFbGVtZW50KCkge1xuICAgIHJldHVybiB0aGlzLl9hY3RpdmVJbmRpY2F0b3JFbGVtZW50JC5nZXRWYWx1ZSgpO1xuICB9XG5cbiAgX3NldEFjdGl2ZUluZGljYXRvckVsZW1lbnQoZWxlbWVudDogSFRNTEVsZW1lbnQpIHtcbiAgICB0aGlzLl9hY3RpdmVJbmRpY2F0b3JFbGVtZW50JC5uZXh0KGVsZW1lbnQpO1xuICB9XG5cbiAgX29uSW5wdXRJbnRlcmFjdGlvbihldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pbnB1dC5fdXBkYXRlVmFsdWUodGhpcy52YWx1ZSk7XG5cbiAgICB0aGlzLmlucHV0Ll9tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5pbnB1dC5fc2V0U2hvdWxkRGlzcGxheUVycm9yKHRydWUpO1xuICB9XG5cbiAgX2NvbnRyb2xUb3VjaGVkKCkge1xuICAgIHRoaXMuaW5wdXQuX21hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmlucHV0Ll9zZXRTaG91bGREaXNwbGF5RXJyb3IodHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ContentChildren, Directive, forwardRef, inject, InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { signalHostClasses, switchQueryListChanges, TypedQueryList } from '@ethlete/core';
|
|
4
|
+
import { BehaviorSubject, combineLatest, map, of, switchMap } from 'rxjs';
|
|
4
5
|
import { InputStateService } from '../../../../services';
|
|
5
6
|
import { SEGMENTED_BUTTON_TOKEN } from '../segmented-button';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -8,23 +9,18 @@ export const SEGMENTED_BUTTON_FIELD_TOKEN = new InjectionToken('ET_SEGMENTED_BUT
|
|
|
8
9
|
export class SegmentedButtonFieldDirective {
|
|
9
10
|
constructor() {
|
|
10
11
|
this.inputState = inject(InputStateService);
|
|
11
|
-
this.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
this._bindings.push({
|
|
18
|
-
attribute: 'class.et-segmented-button-field--checked',
|
|
19
|
-
observable: this._segmentedButton.changes.pipe(startWith(this._segmentedButton)).pipe(switchMap((buttons) => combineLatest(buttons.filter((radio) => !!radio).map((button) => button.checked$))), map((checked) => checked.some((value) => value))),
|
|
20
|
-
});
|
|
21
|
-
this._bindings.push({
|
|
22
|
-
attribute: 'class.et-segmented-button-field--disabled',
|
|
23
|
-
observable: this._segmentedButton.changes.pipe(startWith(this._segmentedButton)).pipe(switchMap((buttons) => combineLatest(buttons.filter((radio) => !!radio).map((button) => button.disabled$))), map((disabled) => disabled.some((value) => value))),
|
|
12
|
+
this._segmentedButton$ = new BehaviorSubject(null);
|
|
13
|
+
this.segmentedButtonQueryList$ = this._segmentedButton$.pipe(switchQueryListChanges());
|
|
14
|
+
this.hostClassBindings = signalHostClasses({
|
|
15
|
+
'et-segmented-button-field--checked': toSignal(this.segmentedButtonQueryList$.pipe(switchMap((buttons) => (buttons?.length ? combineLatest(buttons.map((radio) => radio.disabled$)) : of([]))), map((checked) => checked.some((value) => value)))),
|
|
16
|
+
'et-segmented-button-field--disabled': toSignal(this.segmentedButtonQueryList$.pipe(switchMap((buttons) => (buttons?.length ? combineLatest(buttons.map((radio) => radio.disabled$)) : of([]))), map((disabled) => disabled.some((value) => value)))),
|
|
24
17
|
});
|
|
25
18
|
}
|
|
19
|
+
set segmentedButton(segmentedButton) {
|
|
20
|
+
this._segmentedButton$.next(segmentedButton);
|
|
21
|
+
}
|
|
26
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SegmentedButtonFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
27
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: SegmentedButtonFieldDirective, isStandalone: true, providers: [{ provide: SEGMENTED_BUTTON_FIELD_TOKEN, useExisting: SegmentedButtonFieldDirective }], queries: [{ propertyName: "
|
|
23
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: SegmentedButtonFieldDirective, isStandalone: true, providers: [{ provide: SEGMENTED_BUTTON_FIELD_TOKEN, useExisting: SegmentedButtonFieldDirective }], queries: [{ propertyName: "segmentedButton", predicate: i0.forwardRef(function () { return SEGMENTED_BUTTON_TOKEN; }), descendants: true }], exportAs: ["etSegmentedButtonField"], ngImport: i0 }); }
|
|
28
24
|
}
|
|
29
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: SegmentedButtonFieldDirective, decorators: [{
|
|
30
26
|
type: Directive,
|
|
@@ -33,8 +29,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
33
29
|
providers: [{ provide: SEGMENTED_BUTTON_FIELD_TOKEN, useExisting: SegmentedButtonFieldDirective }],
|
|
34
30
|
exportAs: 'etSegmentedButtonField',
|
|
35
31
|
}]
|
|
36
|
-
}], propDecorators: {
|
|
32
|
+
}], propDecorators: { segmentedButton: [{
|
|
37
33
|
type: ContentChildren,
|
|
38
34
|
args: [forwardRef(() => SEGMENTED_BUTTON_TOKEN), { descendants: true }]
|
|
39
35
|
}] } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudGVkLWJ1dHRvbi1maWVsZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWdtZW50ZWQtYnV0dG9uL2RpcmVjdGl2ZXMvc2VnbWVudGVkLWJ1dHRvbi1maWVsZC9zZWdtZW50ZWQtYnV0dG9uLWZpZWxkLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFhLGlCQUFpQixFQUFFLHNCQUFzQixFQUFFLGNBQWMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsc0JBQXNCLEVBQTRCLE1BQU0scUJBQXFCLENBQUM7O0FBRXZGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLElBQUksY0FBYyxDQUM1RCwyQ0FBMkMsQ0FDNUMsQ0FBQztBQU9GLE1BQU0sT0FBTyw2QkFBNkI7SUFMMUM7UUFNVyxlQUFVLEdBQUcsTUFBTSxDQUErQixpQkFBaUIsQ0FBQyxDQUFDO1FBTXRFLHNCQUFpQixHQUFHLElBQUksZUFBZSxDQUFrRCxJQUFJLENBQUMsQ0FBQztRQUU5Riw4QkFBeUIsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQUVsRixzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztZQUM3QyxvQ0FBb0MsRUFBRSxRQUFRLENBQzVDLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQ2pDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQzNHLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FDakQsQ0FDRjtZQUNELHFDQUFxQyxFQUFFLFFBQVEsQ0FDN0MsSUFBSSxDQUFDLHlCQUF5QixDQUFDLElBQUksQ0FDakMsU0FBUyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDM0csR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNuRCxDQUNGO1NBQ0YsQ0FBQyxDQUFDO0tBQ0o7SUF0QkMsSUFDSSxlQUFlLENBQUMsZUFBeUQ7UUFDM0UsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUMvQyxDQUFDOzhHQU5VLDZCQUE2QjtrR0FBN0IsNkJBQTZCLGlDQUg3QixDQUFDLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFdBQVcsRUFBRSw2QkFBNkIsRUFBRSxDQUFDLDZGQU1oRSxzQkFBc0I7OzJGQUg3Qyw2QkFBNkI7a0JBTHpDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFdBQVcsK0JBQStCLEVBQUUsQ0FBQztvQkFDbEcsUUFBUSxFQUFFLHdCQUF3QjtpQkFDbkM7OEJBS0ssZUFBZTtzQkFEbEIsZUFBZTt1QkFBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsc0JBQXNCLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBQcmltaXRpdmUsIHNpZ25hbEhvc3RDbGFzc2VzLCBzd2l0Y2hRdWVyeUxpc3RDaGFuZ2VzLCBUeXBlZFF1ZXJ5TGlzdCB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElucHV0U3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2VydmljZXMnO1xuaW1wb3J0IHsgU0VHTUVOVEVEX0JVVFRPTl9UT0tFTiwgU2VnbWVudGVkQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2VnbWVudGVkLWJ1dHRvbic7XG5cbmV4cG9ydCBjb25zdCBTRUdNRU5URURfQlVUVE9OX0ZJRUxEX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFNlZ21lbnRlZEJ1dHRvbkZpZWxkRGlyZWN0aXZlPihcbiAgJ0VUX1NFR01FTlRFRF9CVVRUT05fRklFTERfRElSRUNUSVZFX1RPS0VOJyxcbik7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFNFR01FTlRFRF9CVVRUT05fRklFTERfVE9LRU4sIHVzZUV4aXN0aW5nOiBTZWdtZW50ZWRCdXR0b25GaWVsZERpcmVjdGl2ZSB9XSxcbiAgZXhwb3J0QXM6ICdldFNlZ21lbnRlZEJ1dHRvbkZpZWxkJyxcbn0pXG5leHBvcnQgY2xhc3MgU2VnbWVudGVkQnV0dG9uRmllbGREaXJlY3RpdmUge1xuICByZWFkb25seSBpbnB1dFN0YXRlID0gaW5qZWN0PElucHV0U3RhdGVTZXJ2aWNlPFByaW1pdGl2ZT4+KElucHV0U3RhdGVTZXJ2aWNlKTtcblxuICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gU0VHTUVOVEVEX0JVVFRPTl9UT0tFTiksIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgc2V0IHNlZ21lbnRlZEJ1dHRvbihzZWdtZW50ZWRCdXR0b246IFR5cGVkUXVlcnlMaXN0PFNlZ21lbnRlZEJ1dHRvbkRpcmVjdGl2ZT4pIHtcbiAgICB0aGlzLl9zZWdtZW50ZWRCdXR0b24kLm5leHQoc2VnbWVudGVkQnV0dG9uKTtcbiAgfVxuICBwcml2YXRlIF9zZWdtZW50ZWRCdXR0b24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUeXBlZFF1ZXJ5TGlzdDxTZWdtZW50ZWRCdXR0b25EaXJlY3RpdmU+IHwgbnVsbD4obnVsbCk7XG5cbiAgcmVhZG9ubHkgc2VnbWVudGVkQnV0dG9uUXVlcnlMaXN0JCA9IHRoaXMuX3NlZ21lbnRlZEJ1dHRvbiQucGlwZShzd2l0Y2hRdWVyeUxpc3RDaGFuZ2VzKCkpO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc0JpbmRpbmdzID0gc2lnbmFsSG9zdENsYXNzZXMoe1xuICAgICdldC1zZWdtZW50ZWQtYnV0dG9uLWZpZWxkLS1jaGVja2VkJzogdG9TaWduYWwoXG4gICAgICB0aGlzLnNlZ21lbnRlZEJ1dHRvblF1ZXJ5TGlzdCQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChidXR0b25zKSA9PiAoYnV0dG9ucz8ubGVuZ3RoID8gY29tYmluZUxhdGVzdChidXR0b25zLm1hcCgocmFkaW8pID0+IHJhZGlvLmRpc2FibGVkJCkpIDogb2YoW10pKSksXG4gICAgICAgIG1hcCgoY2hlY2tlZCkgPT4gY2hlY2tlZC5zb21lKCh2YWx1ZSkgPT4gdmFsdWUpKSxcbiAgICAgICksXG4gICAgKSxcbiAgICAnZXQtc2VnbWVudGVkLWJ1dHRvbi1maWVsZC0tZGlzYWJsZWQnOiB0b1NpZ25hbChcbiAgICAgIHRoaXMuc2VnbWVudGVkQnV0dG9uUXVlcnlMaXN0JC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKGJ1dHRvbnMpID0+IChidXR0b25zPy5sZW5ndGggPyBjb21iaW5lTGF0ZXN0KGJ1dHRvbnMubWFwKChyYWRpbykgPT4gcmFkaW8uZGlzYWJsZWQkKSkgOiBvZihbXSkpKSxcbiAgICAgICAgbWFwKChkaXNhYmxlZCkgPT4gZGlzYWJsZWQuc29tZSgodmFsdWUpID0+IHZhbHVlKSksXG4gICAgICApLFxuICAgICksXG4gIH0pO1xufVxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { ContentChildren, Directive, forwardRef, inject, InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { createDestroy, createFlipAnimation, signalHostAttributes, TypedQueryList } from '@ethlete/core';
|
|
4
|
+
import { combineLatest, pairwise, startWith, takeUntil, tap } from 'rxjs';
|
|
4
5
|
import { FormGroupStateService, InputStateService } from '../../../../services';
|
|
5
6
|
import { SEGMENTED_BUTTON_TOKEN } from '../public-api';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -12,14 +13,8 @@ export class SegmentedButtonGroupDirective {
|
|
|
12
13
|
this._inputStateService = inject(InputStateService);
|
|
13
14
|
this._destroy$ = createDestroy();
|
|
14
15
|
this.name = `et-segmented-button-group-${++nextUniqueId}`;
|
|
15
|
-
this.
|
|
16
|
-
|
|
17
|
-
observable: this._formGroupStateService.describedBy$.pipe(map((describedBy) => {
|
|
18
|
-
return {
|
|
19
|
-
render: !!describedBy,
|
|
20
|
-
value: `${describedBy}`,
|
|
21
|
-
};
|
|
22
|
-
})),
|
|
16
|
+
this.hostAttributeBindings = signalHostAttributes({
|
|
17
|
+
'aria-labelledby': toSignal(this._formGroupStateService.describedBy$),
|
|
23
18
|
});
|
|
24
19
|
}
|
|
25
20
|
ngAfterContentInit() {
|
|
@@ -65,4 +60,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
65
60
|
type: ContentChildren,
|
|
66
61
|
args: [forwardRef(() => SEGMENTED_BUTTON_TOKEN), { descendants: true }]
|
|
67
62
|
}] } });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VnbWVudGVkLWJ1dHRvbi1ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9zZWdtZW50ZWQtYnV0dG9uL2RpcmVjdGl2ZXMvc2VnbWVudGVkLWJ1dHRvbi1ncm91cC9zZWdtZW50ZWQtYnV0dG9uLWdyb3VwLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9CLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakgsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxhQUFhLEVBQUUsbUJBQW1CLEVBQWEsb0JBQW9CLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxhQUFhLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2hGLE9BQU8sRUFBRSxzQkFBc0IsRUFBNEIsTUFBTSxlQUFlLENBQUM7O0FBRWpGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLElBQUksY0FBYyxDQUM1RCwyQ0FBMkMsQ0FDNUMsQ0FBQztBQUVGLElBQUksWUFBWSxHQUFHLENBQUMsQ0FBQztBQVVyQixNQUFNLE9BQU8sNkJBQTZCO0lBUjFDO1FBU21CLDJCQUFzQixHQUFHLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3ZELHVCQUFrQixHQUFHLE1BQU0sQ0FBa0QsaUJBQWlCLENBQUMsQ0FBQztRQUNoRyxjQUFTLEdBQUcsYUFBYSxFQUFFLENBQUM7UUFFcEMsU0FBSSxHQUFHLDZCQUE2QixFQUFFLFlBQVksRUFBRSxDQUFDO1FBRXJELDBCQUFxQixHQUFHLG9CQUFvQixDQUFDO1lBQ3BELGlCQUFpQixFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxDQUFDO1NBQ3RFLENBQUMsQ0FBQztLQXdDSjtJQW5DQyxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMzQixPQUFPO1NBQ1I7UUFFRCxhQUFhLENBQUM7WUFDWixJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUM7WUFDdEUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDaEQsQ0FBQzthQUNDLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDeEMsTUFBTSxtQkFBbUIsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEVBQUUsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDO1lBQ2xGLE1BQU0sbUJBQW1CLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsTUFBTSxFQUFFLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQztZQUVsRixJQUNFLENBQUMsbUJBQW1CO2dCQUNwQixDQUFDLG1CQUFtQjtnQkFDcEIsbUJBQW1CLEtBQUssbUJBQW1CO2dCQUMzQyxDQUFDLG1CQUFtQixDQUFDLHNCQUFzQjtnQkFDM0MsQ0FBQyxtQkFBbUIsQ0FBQyxzQkFBc0IsRUFDM0M7Z0JBQ0EsT0FBTzthQUNSO1lBRUQsTUFBTSxJQUFJLEdBQUcsbUJBQW1CLENBQUM7Z0JBQy9CLGFBQWEsRUFBRSxtQkFBbUIsQ0FBQyxzQkFBc0I7Z0JBQ3pELE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxzQkFBc0I7YUFDcEQsQ0FBQyxDQUFDO1lBRUgsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ2QsQ0FBQyxDQUFDLEVBQ0YsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FDMUI7YUFDQSxTQUFTLEVBQUUsQ0FBQztJQUNqQixDQUFDOzhHQWhEVSw2QkFBNkI7a0dBQTdCLDZCQUE2Qiw0RUFON0IsQ0FBQyxFQUFFLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxXQUFXLEVBQUUsNkJBQTZCLEVBQUUsQ0FBQywrRkFpQmhFLHNCQUFzQjs7MkZBWDdDLDZCQUE2QjtrQkFSekMsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsV0FBVywrQkFBK0IsRUFBRSxDQUFDO29CQUNsRyxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxJQUFJLEVBQUU7d0JBQ0osSUFBSSxFQUFFLE9BQU87cUJBQ2Q7aUJBQ0Y7OEJBYVMsaUJBQWlCO3NCQUR4QixlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENvbnRlbnRDaGlsZHJlbiwgRGlyZWN0aXZlLCBmb3J3YXJkUmVmLCBpbmplY3QsIEluamVjdGlvblRva2VuIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGNyZWF0ZURlc3Ryb3ksIGNyZWF0ZUZsaXBBbmltYXRpb24sIFByaW1pdGl2ZSwgc2lnbmFsSG9zdEF0dHJpYnV0ZXMsIFR5cGVkUXVlcnlMaXN0IH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0LCBwYWlyd2lzZSwgc3RhcnRXaXRoLCB0YWtlVW50aWwsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybUdyb3VwU3RhdGVTZXJ2aWNlLCBJbnB1dFN0YXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFNFR01FTlRFRF9CVVRUT05fVE9LRU4sIFNlZ21lbnRlZEJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4uL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY29uc3QgU0VHTUVOVEVEX0JVVFRPTl9HUk9VUF9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxTZWdtZW50ZWRCdXR0b25Hcm91cERpcmVjdGl2ZT4oXG4gICdFVF9TRUdNRU5URURfQlVUVE9OX0dST1VQX0RJUkVDVElWRV9UT0tFTicsXG4pO1xuXG5sZXQgbmV4dFVuaXF1ZUlkID0gMDtcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogU0VHTUVOVEVEX0JVVFRPTl9HUk9VUF9UT0tFTiwgdXNlRXhpc3Rpbmc6IFNlZ21lbnRlZEJ1dHRvbkdyb3VwRGlyZWN0aXZlIH1dLFxuICBleHBvcnRBczogJ2V0U2VnbWVudGVkQnV0dG9uR3JvdXAnLFxuICBob3N0OiB7XG4gICAgcm9sZTogJ2dyb3VwJyxcbiAgfSxcbn0pXG5leHBvcnQgY2xhc3MgU2VnbWVudGVkQnV0dG9uR3JvdXBEaXJlY3RpdmUgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0IHtcbiAgcHJpdmF0ZSByZWFkb25seSBfZm9ybUdyb3VwU3RhdGVTZXJ2aWNlID0gaW5qZWN0KEZvcm1Hcm91cFN0YXRlU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2lucHV0U3RhdGVTZXJ2aWNlID0gaW5qZWN0PElucHV0U3RhdGVTZXJ2aWNlPFByaW1pdGl2ZSwgSFRNTEJ1dHRvbkVsZW1lbnQ+PihJbnB1dFN0YXRlU2VydmljZSk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2Rlc3Ryb3kkID0gY3JlYXRlRGVzdHJveSgpO1xuXG4gIHJlYWRvbmx5IG5hbWUgPSBgZXQtc2VnbWVudGVkLWJ1dHRvbi1ncm91cC0keysrbmV4dFVuaXF1ZUlkfWA7XG5cbiAgcmVhZG9ubHkgaG9zdEF0dHJpYnV0ZUJpbmRpbmdzID0gc2lnbmFsSG9zdEF0dHJpYnV0ZXMoe1xuICAgICdhcmlhLWxhYmVsbGVkYnknOiB0b1NpZ25hbCh0aGlzLl9mb3JtR3JvdXBTdGF0ZVNlcnZpY2UuZGVzY3JpYmVkQnkkKSxcbiAgfSk7XG5cbiAgQENvbnRlbnRDaGlsZHJlbihmb3J3YXJkUmVmKCgpID0+IFNFR01FTlRFRF9CVVRUT05fVE9LRU4pLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHByaXZhdGUgX3NlZ21lbnRlZEJ1dHRvbnM/OiBUeXBlZFF1ZXJ5TGlzdDxTZWdtZW50ZWRCdXR0b25EaXJlY3RpdmU+O1xuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuX3NlZ21lbnRlZEJ1dHRvbnMpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgIHRoaXMuX3NlZ21lbnRlZEJ1dHRvbnMuY2hhbmdlcy5waXBlKHN0YXJ0V2l0aCh0aGlzLl9zZWdtZW50ZWRCdXR0b25zKSksXG4gICAgICB0aGlzLl9pbnB1dFN0YXRlU2VydmljZS52YWx1ZSQucGlwZShwYWlyd2lzZSgpKSxcbiAgICBdKVxuICAgICAgLnBpcGUoXG4gICAgICAgIHRhcCgoW2J1dHRvbnMsIFtwcmV2VmFsdWUsIGN1cnJWYWx1ZV1dKSA9PiB7XG4gICAgICAgICAgY29uc3QgcHJldkFjdGl2ZUluZGljYXRvciA9IGJ1dHRvbnMuZmluZCgoYnV0dG9uKSA9PiBidXR0b24/LnZhbHVlID09PSBwcmV2VmFsdWUpO1xuICAgICAgICAgIGNvbnN0IGN1cnJBY3RpdmVJbmRpY2F0b3IgPSBidXR0b25zLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uPy52YWx1ZSA9PT0gY3VyclZhbHVlKTtcblxuICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICFwcmV2QWN0aXZlSW5kaWNhdG9yIHx8XG4gICAgICAgICAgICAhY3VyckFjdGl2ZUluZGljYXRvciB8fFxuICAgICAgICAgICAgcHJldkFjdGl2ZUluZGljYXRvciA9PT0gY3VyckFjdGl2ZUluZGljYXRvciB8fFxuICAgICAgICAgICAgIXByZXZBY3RpdmVJbmRpY2F0b3IuYWN0aXZlSW5kaWNhdG9yRWxlbWVudCB8fFxuICAgICAgICAgICAgIWN1cnJBY3RpdmVJbmRpY2F0b3IuYWN0aXZlSW5kaWNhdG9yRWxlbWVudFxuICAgICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIGNvbnN0IGZsaXAgPSBjcmVhdGVGbGlwQW5pbWF0aW9uKHtcbiAgICAgICAgICAgIG9yaWdpbkVsZW1lbnQ6IHByZXZBY3RpdmVJbmRpY2F0b3IuYWN0aXZlSW5kaWNhdG9yRWxlbWVudCxcbiAgICAgICAgICAgIGVsZW1lbnQ6IGN1cnJBY3RpdmVJbmRpY2F0b3IuYWN0aXZlSW5kaWNhdG9yRWxlbWVudCxcbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIGZsaXAucGxheSgpO1xuICAgICAgICB9KSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSxcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxufVxuIl19
|