@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
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
1
|
# @ethlete/cdk
|
|
2
2
|
|
|
3
|
+
## 3.19.2
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [`df887bf2`](https://github.com/ethlete-io/ethdk/commit/df887bf295417edf634d0a2b7be3d94739548fa1) Thanks [@TomTomB](https://github.com/TomTomB)! - Add missing support for theming inside overlays
|
|
8
|
+
|
|
9
|
+
- [`6a484e3f`](https://github.com/ethlete-io/ethdk/commit/6a484e3f63cd33b2d5a46d325379fad8772c7467) Thanks [@TomTomB](https://github.com/TomTomB)! - Bind picture default source to srcset instead of src
|
|
10
|
+
|
|
11
|
+
## 3.19.1
|
|
12
|
+
|
|
13
|
+
### Patch Changes
|
|
14
|
+
|
|
15
|
+
- [`f1b8cd9f`](https://github.com/ethlete-io/ethdk/commit/f1b8cd9f401b0c75a4d4621fe585baaa82b2f111) Thanks [@TomTomB](https://github.com/TomTomB)! - Switch from createReactiveBindings to signal versions
|
|
16
|
+
|
|
3
17
|
## 3.19.0
|
|
4
18
|
|
|
5
19
|
### Minor Changes
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Directive, ElementRef, Input, booleanAttribute, inject } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { signalHostAttributes } from '@ethlete/core';
|
|
3
4
|
import { BehaviorSubject, map } from 'rxjs';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
export class ButtonDirective {
|
|
@@ -9,27 +10,11 @@ export class ButtonDirective {
|
|
|
9
10
|
this._disabled$ = new BehaviorSubject(false);
|
|
10
11
|
this._type$ = new BehaviorSubject('button');
|
|
11
12
|
this._pressed$ = new BehaviorSubject(false);
|
|
12
|
-
this.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}))),
|
|
18
|
-
}, {
|
|
19
|
-
attribute: ['tabindex'],
|
|
20
|
-
observable: this.disabled$.pipe(map((disabled) => ({
|
|
21
|
-
render: disabled && this.isAnchor,
|
|
22
|
-
value: -1,
|
|
23
|
-
}))),
|
|
24
|
-
}, {
|
|
25
|
-
attribute: ['type'],
|
|
26
|
-
observable: this.type$.pipe(map((type) => ({
|
|
27
|
-
render: this.isButton,
|
|
28
|
-
value: type,
|
|
29
|
-
}))),
|
|
30
|
-
}, {
|
|
31
|
-
attribute: ['aria-pressed'],
|
|
32
|
-
observable: this._pressed$,
|
|
13
|
+
this.hostAttributeBindings = signalHostAttributes({
|
|
14
|
+
'disabled aria-disabled': toSignal(this.disabled$),
|
|
15
|
+
'aria-pressed': toSignal(this._pressed$),
|
|
16
|
+
...(this.isAnchor ? { tabindex: toSignal(this.disabled$.pipe(map((disabled) => (disabled ? -1 : 0)))) } : {}),
|
|
17
|
+
...(this.isButton ? { type: toSignal(this.type$) } : {}),
|
|
33
18
|
});
|
|
34
19
|
}
|
|
35
20
|
get disabled() {
|
|
@@ -57,10 +42,10 @@ export class ButtonDirective {
|
|
|
57
42
|
this._pressed$.next(booleanAttribute(value));
|
|
58
43
|
}
|
|
59
44
|
_removeDisabledBindings() {
|
|
60
|
-
this.
|
|
45
|
+
this.hostAttributeBindings.remove('disabled', 'aria-disabled');
|
|
61
46
|
}
|
|
62
47
|
_removeTabIndexBindings() {
|
|
63
|
-
this.
|
|
48
|
+
this.hostAttributeBindings.remove('tabindex');
|
|
64
49
|
}
|
|
65
50
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: ButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
66
51
|
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: ButtonDirective, isStandalone: true, inputs: { disabled: "disabled", type: "type", pressed: "pressed" }, exportAs: ["etButton"], ngImport: i0 }); }
|
|
@@ -78,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
78
63
|
}], pressed: [{
|
|
79
64
|
type: Input
|
|
80
65
|
}] } });
|
|
81
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnV0dG9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vZGlyZWN0aXZlcy9idXR0b24vYnV0dG9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckQsT0FBTyxFQUFFLGVBQWUsRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7O0FBUXhELE1BQU0sT0FBTyxlQUFlO0lBSjVCO1FBS1csYUFBUSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sS0FBSyxRQUFRLENBQUM7UUFDMUYsYUFBUSxHQUFHLE1BQU0sQ0FBMEIsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLE9BQU8sS0FBSyxHQUFHLENBQUM7UUFZdEYsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBWXhDLFdBQU0sR0FBRyxJQUFJLGVBQWUsQ0FBYSxRQUFRLENBQUMsQ0FBQztRQVNuRCxjQUFTLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdEMsMEJBQXFCLEdBQUcsb0JBQW9CLENBQUM7WUFDcEQsd0JBQXdCLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDbEQsY0FBYyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO1lBRXhDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUM3RyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7U0FDekQsQ0FBQyxDQUFDO0tBU0o7SUFoREMsSUFDSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQztJQUMvQixDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFDRCxJQUFJLFNBQVM7UUFDWCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUdELElBQ0ksSUFBSTtRQUNOLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksSUFBSSxDQUFDLEtBQWlCO1FBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFDRCxJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUdELElBQ0ksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUNELElBQUksT0FBTyxDQUFDLEtBQWM7UUFDeEIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUMvQyxDQUFDO0lBV0QsdUJBQXVCO1FBQ3JCLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ2pFLENBQUM7SUFFRCx1QkFBdUI7UUFDckIsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNoRCxDQUFDOzhHQW5EVSxlQUFlO2tHQUFmLGVBQWU7OzJGQUFmLGVBQWU7a0JBSjNCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxVQUFVO2lCQUNyQjs4QkFNSyxRQUFRO3NCQURYLEtBQUs7Z0JBYUYsSUFBSTtzQkFEUCxLQUFLO2dCQWFGLE9BQU87c0JBRFYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5wdXQsIGJvb2xlYW5BdHRyaWJ1dGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0QXR0cmlidXRlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBtYXAgfSBmcm9tICdyeGpzJztcblxudHlwZSBCdXR0b25UeXBlID0gJ2J1dHRvbicgfCAnc3VibWl0JyB8ICdyZXNldCcgfCAnbWVudSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBleHBvcnRBczogJ2V0QnV0dG9uJyxcbn0pXG5leHBvcnQgY2xhc3MgQnV0dG9uRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgaXNCdXR0b24gPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpLm5hdGl2ZUVsZW1lbnQudGFnTmFtZSA9PT0gJ0JVVFRPTic7XG4gIHJlYWRvbmx5IGlzQW5jaG9yID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKS5uYXRpdmVFbGVtZW50LnRhZ05hbWUgPT09ICdBJztcblxuICBASW5wdXQoKVxuICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2Rpc2FibGVkJC52YWx1ZTtcbiAgfVxuICBzZXQgZGlzYWJsZWQodmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl9kaXNhYmxlZCQubmV4dChib29sZWFuQXR0cmlidXRlKHZhbHVlKSk7XG4gIH1cbiAgZ2V0IGRpc2FibGVkJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIEBJbnB1dCgpXG4gIGdldCB0eXBlKCk6IEJ1dHRvblR5cGUge1xuICAgIHJldHVybiB0aGlzLl90eXBlJC52YWx1ZTtcbiAgfVxuICBzZXQgdHlwZSh2YWx1ZTogQnV0dG9uVHlwZSkge1xuICAgIHRoaXMuX3R5cGUkLm5leHQodmFsdWUpO1xuICB9XG4gIGdldCB0eXBlJCgpOiBPYnNlcnZhYmxlPEJ1dHRvblR5cGU+IHtcbiAgICByZXR1cm4gdGhpcy5fdHlwZSQuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbiAgcHJpdmF0ZSBfdHlwZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEJ1dHRvblR5cGU+KCdidXR0b24nKTtcblxuICBASW5wdXQoKVxuICBnZXQgcHJlc3NlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fcHJlc3NlZCQudmFsdWU7XG4gIH1cbiAgc2V0IHByZXNzZWQodmFsdWU6IHVua25vd24pIHtcbiAgICB0aGlzLl9wcmVzc2VkJC5uZXh0KGJvb2xlYW5BdHRyaWJ1dGUodmFsdWUpKTtcbiAgfVxuICBwcml2YXRlIF9wcmVzc2VkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGhvc3RBdHRyaWJ1dGVCaW5kaW5ncyA9IHNpZ25hbEhvc3RBdHRyaWJ1dGVzKHtcbiAgICAnZGlzYWJsZWQgYXJpYS1kaXNhYmxlZCc6IHRvU2lnbmFsKHRoaXMuZGlzYWJsZWQkKSxcbiAgICAnYXJpYS1wcmVzc2VkJzogdG9TaWduYWwodGhpcy5fcHJlc3NlZCQpLFxuXG4gICAgLi4uKHRoaXMuaXNBbmNob3IgPyB7IHRhYmluZGV4OiB0b1NpZ25hbCh0aGlzLmRpc2FibGVkJC5waXBlKG1hcCgoZGlzYWJsZWQpID0+IChkaXNhYmxlZCA/IC0xIDogMCkpKSkgfSA6IHt9KSxcbiAgICAuLi4odGhpcy5pc0J1dHRvbiA/IHsgdHlwZTogdG9TaWduYWwodGhpcy50eXBlJCkgfSA6IHt9KSxcbiAgfSk7XG5cbiAgX3JlbW92ZURpc2FibGVkQmluZGluZ3MoKSB7XG4gICAgdGhpcy5ob3N0QXR0cmlidXRlQmluZGluZ3MucmVtb3ZlKCdkaXNhYmxlZCcsICdhcmlhLWRpc2FibGVkJyk7XG4gIH1cblxuICBfcmVtb3ZlVGFiSW5kZXhCaW5kaW5ncygpIHtcbiAgICB0aGlzLmhvc3RBdHRyaWJ1dGVCaW5kaW5ncy5yZW1vdmUoJ3RhYmluZGV4Jyk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { booleanAttribute, Directive, ElementRef, inject, Input } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { createDestroy, signalHostAttributes } from '@ethlete/core';
|
|
3
4
|
import { extractQuery, isQueryStateFailure, isQueryStateLoading, isQueryStateSuccess, } from '@ethlete/query';
|
|
4
5
|
import { BehaviorSubject, combineLatest, map, of, skip, switchMap, takeUntil } from 'rxjs';
|
|
5
6
|
import { ButtonDirective } from '../button';
|
|
@@ -40,7 +41,6 @@ export class QueryButtonDirective {
|
|
|
40
41
|
classList.remove(CLASSES.success);
|
|
41
42
|
classList.remove(CLASSES.failure);
|
|
42
43
|
classList.remove(CLASSES.loading);
|
|
43
|
-
this._bindings.reset();
|
|
44
44
|
const query = extractQuery(this._query$.value);
|
|
45
45
|
if (!query) {
|
|
46
46
|
return;
|
|
@@ -91,15 +91,9 @@ export class QueryButtonDirective {
|
|
|
91
91
|
this._skipFailure = false;
|
|
92
92
|
this._skipLoading = false;
|
|
93
93
|
this._query$ = new BehaviorSubject(null);
|
|
94
|
-
this.
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
render: disabled || showFailure || showSuccess || isLoading,
|
|
98
|
-
value: true,
|
|
99
|
-
}))),
|
|
100
|
-
}, {
|
|
101
|
-
attribute: ['aria-live'],
|
|
102
|
-
observable: combineLatest([
|
|
94
|
+
this.hostAttributeBindings = signalHostAttributes({
|
|
95
|
+
'disabled aria-disabled': toSignal(combineLatest([this._button.disabled$, this.showFailure$, this.showSuccess$, this.isLoading$]).pipe(map(([disabled, showFailure, showSuccess, isLoading]) => disabled || showFailure || showSuccess || isLoading))),
|
|
96
|
+
'aria-live': toSignal(combineLatest([
|
|
103
97
|
this.query$.pipe(map((q) => extractQuery(q)), switchMap((q) => q?.state$ ?? of(null))),
|
|
104
98
|
this.didLoadOnce$,
|
|
105
99
|
]).pipe(map(([state, didLoadOnce]) => {
|
|
@@ -107,11 +101,8 @@ export class QueryButtonDirective {
|
|
|
107
101
|
if (isQueryStateLoading(state) || isQueryStateSuccess(state) || isQueryStateFailure(state) || didLoadOnce) {
|
|
108
102
|
value = 'assertive';
|
|
109
103
|
}
|
|
110
|
-
return
|
|
111
|
-
|
|
112
|
-
value,
|
|
113
|
-
};
|
|
114
|
-
})),
|
|
104
|
+
return value;
|
|
105
|
+
}))),
|
|
115
106
|
});
|
|
116
107
|
this._button._removeDisabledBindings();
|
|
117
108
|
}
|
|
@@ -136,4 +127,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
136
127
|
}], query: [{
|
|
137
128
|
type: Input
|
|
138
129
|
}] } });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnV0dG9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vZGlyZWN0aXZlcy9xdWVyeS1idXR0b24vcXVlcnktYnV0dG9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxhQUFhLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUdMLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsbUJBQW1CLEVBQ25CLG1CQUFtQixHQUNwQixNQUFNLGdCQUFnQixDQUFDO0FBQ3hCLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDM0YsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFdBQVcsQ0FBQzs7QUFFNUMsTUFBTSxPQUFPLEdBQUc7SUFDZCxPQUFPLEVBQUUsMEJBQTBCO0lBQ25DLE9BQU8sRUFBRSwwQkFBMEI7SUFDbkMsT0FBTyxFQUFFLDBCQUEwQjtDQUNwQyxDQUFDO0FBTUYsTUFBTSxPQUFPLG9CQUFvQjtJQVkvQixJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxZQUFZLENBQUM7SUFDM0IsQ0FBQztJQUNELElBQUksV0FBVyxDQUFDLEtBQWM7UUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7SUFDNUIsQ0FBQztJQUdELElBQ0ksV0FBVztRQUNiLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBSSxXQUFXLENBQUMs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QyxDQUFDLENBQ0g7U0FDRixDQUNGLENBQUM7UUFHQSxJQUFJLENBQUMsT0FBTyxDQUFDLHVCQUF1QixFQUFFLENBQUM7SUFDekMsQ0FBQzs4R0F6SVUsb0JBQW9CO2tHQUFwQixvQkFBb0IsNEVBWVgsZ0JBQWdCLCtDQVNoQixnQkFBZ0IsK0NBU2hCLGdCQUFnQjs7MkZBOUJ6QixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxlQUFlO2lCQUMxQjswRUFjSyxXQUFXO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBVWxDLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFVbEMsV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQVVsQyxLQUFLO3NCQURSLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBib29sZWFuQXR0cmlidXRlLCBEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIGluamVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNyZWF0ZURlc3Ryb3ksIGNyZWF0ZVJlYWN0aXZlQmluZGluZ3MgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7XG4gIEFueVF1ZXJ5LFxuICBBbnlRdWVyeUNvbGxlY3Rpb24sXG4gIGV4dHJhY3RRdWVyeSxcbiAgaXNRdWVyeVN0YXRlRmFpbHVyZSxcbiAgaXNRdWVyeVN0YXRlTG9hZGluZyxcbiAgaXNRdWVyeVN0YXRlU3VjY2Vzcyxcbn0gZnJvbSAnQGV0aGxldGUvcXVlcnknO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIG9mLCBza2lwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQnV0dG9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vYnV0dG9uJztcblxuY29uc3QgQ0xBU1NFUyA9IHtcbiAgbG9hZGluZzogJ2V0LXF1ZXJ5LWJ1dHRvbi0tbG9hZGluZycsXG4gIHN1Y2Nlc3M6ICdldC1xdWVyeS1idXR0b24tLXN1Y2Nlc3MnLFxuICBmYWlsdXJlOiAnZXQtcXVlcnktYnV0dG9uLS1mYWlsdXJlJyxcbn07XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBleHBvcnRBczogJ2V0UXVlcnlCdXR0b24nLFxufSlcbmV4cG9ydCBjbGFzcyBRdWVyeUJ1dHRvbkRpcmVjdGl2ZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWYgPSBpbmplY3Q8RWxlbWVudFJlZjxIVE1MRWxlbWVudD4+KEVsZW1lbnRSZWYpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JCA9IGNyZWF0ZURlc3Ryb3koKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfYnV0dG9uID0gaW5qZWN0KEJ1dHRvbkRpcmVjdGl2ZSk7XG5cbiAgcHJpdmF0ZSBfY2xlYW51cFRpbWVvdXQ6IG51bWJlciB8IG51bGwgPSBudWxsO1xuXG4gIHJlYWRvbmx5IHNob3dTdWNjZXNzJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICByZWFkb25seSBzaG93RmFpbHVyZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcmVhZG9ubHkgZGlkTG9hZE9uY2UkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHJlYWRvbmx5IGlzTG9hZGluZyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgZ2V0IHNraXBTdWNjZXNzKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9za2lwU3VjY2VzcztcbiAgfVxuICBzZXQgc2tpcFN1Y2Nlc3ModmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9za2lwU3VjY2VzcyA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX3NraXBTdWNjZXNzID0gZmFsc2U7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIGdldCBza2lwRmFpbHVyZSgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2tpcEZhaWx1cmU7XG4gIH1cbiAgc2V0IHNraXBGYWlsdXJlKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2tpcEZhaWx1cmUgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9za2lwRmFpbHVyZSA9IGZhbHNlO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBnZXQgc2tpcExvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NraXBMb2FkaW5nO1xuICB9XG4gIHNldCBza2lwTG9hZGluZyh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NraXBMb2FkaW5nID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2tpcExvYWRpbmcgPSBmYWxzZTtcblxuICBASW5wdXQoKVxuICBnZXQgcXVlcnkoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3F1ZXJ5JC52YWx1ZTtcbiAgfVxuICBzZXQgcXVlcnkodjogQW55UXVlcnkgfCBBbnlRdWVyeUNvbGxlY3Rpb24gfCBudWxsKSB7XG4gICAgdGhpcy5fcXVlcnkkLm5leHQodik7XG5cbiAgICBjb25zdCBjbGFzc0xpc3QgPSB0aGlzLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY2xhc3NMaXN0O1xuXG4gICAgaWYgKHRoaXMuX2NsZWFudXBUaW1lb3V0ICE9PSBudWxsKSB7XG4gICAgICB3aW5kb3cuY2xlYXJUaW1lb3V0KHRoaXMuX2NsZWFudXBUaW1lb3V0KTtcbiAgICB9XG5cbiAgICBjbGFzc0xpc3QucmVtb3ZlKENMQVNTRVMuc3VjY2Vzcyk7XG4gICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLmZhaWx1cmUpO1xuICAgIGNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NFUy5sb2FkaW5nKTtcblxuICAgIHRoaXMuX2JpbmRpbmdzLnJlc2V0KCk7XG5cbiAgICBjb25zdCBxdWVyeSA9IGV4dHJhY3RRdWVyeSh0aGlzLl9xdWVyeSQudmFsdWUpO1xuXG4gICAgaWYgKCFxdWVyeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHF1ZXJ5LnN0YXRlJC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIHRha2VVbnRpbCh0aGlzLl9xdWVyeSQucGlwZShza2lwKDEpKSkpLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgIGlmIChpc1F1ZXJ5U3RhdGVMb2FkaW5nKHN0YXRlKSAmJiAhdGhpcy5fc2tpcExvYWRpbmcpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmckLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5sb2FkaW5nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLmxvYWRpbmcpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNRdWVyeVN0YXRlU3VjY2VzcyhzdGF0ZSkgJiYgIXRoaXMuX3NraXBTdWNjZXNzKSB7XG4gICAgICAgIHRoaXMuc2hvd1N1Y2Nlc3MkLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5zdWNjZXNzKTtcbiAgICAgIH0gZWxzZSBpZiAoaXNRdWVyeVN0YXRlRmFpbHVyZShzdGF0ZSkgJiYgIXRoaXMuX3NraXBGYWlsdXJlKSB7XG4gICAgICAgIHRoaXMuc2hvd0ZhaWx1cmUkLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5mYWlsdXJlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzUXVlcnlTdGF0ZVN1Y2Nlc3Moc3RhdGUpIHx8IGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpKSB7XG4gICAgICAgIGlmICghdGhpcy5kaWRMb2FkT25jZSQudmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmRpZExvYWRPbmNlJC5uZXh0KHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY2xlYW51cFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zaG93RmFpbHVyZSQubmV4dChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5zaG93U3VjY2VzcyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLnN1Y2Nlc3MpO1xuICAgICAgICAgIGNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NFUy5mYWlsdXJlKTtcbiAgICAgICAgfSwgMzAwMCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgZ2V0IHF1ZXJ5JCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVlcnkkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgX3F1ZXJ5JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QW55UXVlcnkgfCBBbnlRdWVyeUNvbGxlY3Rpb24gfCBudWxsPihudWxsKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9iaW5kaW5ncyA9IGNyZWF0ZVJlYWN0aXZlQmluZGluZ3MoXG4gICAge1xuICAgICAgYXR0cmlidXRlOiBbJ2Rpc2FibGVkJywgJ2FyaWEtZGlzYWJsZWQnXSxcbiAgICAgIG9ic2VydmFibGU6IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2J1dHRvbi5kaXNhYmxlZCQsIHRoaXMuc2hvd0ZhaWx1cmUkLCB0aGlzLnNob3dTdWNjZXNzJCwgdGhpcy5pc0xvYWRpbmckXSkucGlwZShcbiAgICAgICAgbWFwKChbZGlzYWJsZWQsIHNob3dGYWlsdXJlLCBzaG93U3VjY2VzcywgaXNMb2FkaW5nXSkgPT4gKHtcbiAgICAgICAgICByZW5kZXI6IGRpc2FibGVkIHx8IHNob3dGYWlsdXJlIHx8IHNob3dTdWNjZXNzIHx8IGlzTG9hZGluZyxcbiAgICAgICAgICB2YWx1ZTogdHJ1ZSxcbiAgICAgICAgfSkpLFxuICAgICAgKSxcbiAgICB9LFxuICAgIHtcbiAgICAgIGF0dHJpYnV0ZTogWydhcmlhLWxpdmUnXSxcbiAgICAgIG9ic2VydmFibGU6IGNvbWJpbmVMYXRlc3QoW1xuICAgICAgICB0aGlzLnF1ZXJ5JC5waXBlKFxuICAgICAgICAgIG1hcCgocSkgPT4gZXh0cmFjdFF1ZXJ5KHEpKSxcbiAgICAgICAgICBzd2l0Y2hNYXAoKHEpID0+IHE/LnN0YXRlJCA/PyBvZihudWxsKSksXG4gICAgICAgICksXG4gICAgICAgIHRoaXMuZGlkTG9hZE9uY2UkLFxuICAgICAgXSkucGlwZShcbiAgICAgICAgbWFwKChbc3RhdGUsIGRpZExvYWRPbmNlXSkgPT4ge1xuICAgICAgICAgIGxldCB2YWx1ZSA9ICdvZmYnO1xuXG4gICAgICAgICAgaWYgKGlzUXVlcnlTdGF0ZUxvYWRpbmcoc3RhdGUpIHx8IGlzUXVlcnlTdGF0ZVN1Y2Nlc3Moc3RhdGUpIHx8IGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpIHx8IGRpZExvYWRPbmNlKSB7XG4gICAgICAgICAgICB2YWx1ZSA9ICdhc3NlcnRpdmUnO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICByZW5kZXI6IHRydWUsXG4gICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICB9O1xuICAgICAgICB9KSxcbiAgICAgICksXG4gICAgfSxcbiAgKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9idXR0b24uX3JlbW92ZURpc2FibGVkQmluZGluZ3MoKTtcbiAgfVxufVxuIl19
|
|
130
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlcnktYnV0dG9uLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY2RrL3NyYy9saWIvY29tcG9uZW50cy9idXR0b24vZGlyZWN0aXZlcy9xdWVyeS1idXR0b24vcXVlcnktYnV0dG9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsYUFBYSxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFHTCxZQUFZLEVBQ1osbUJBQW1CLEVBQ25CLG1CQUFtQixFQUNuQixtQkFBbUIsR0FDcEIsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4QixPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxXQUFXLENBQUM7O0FBRTVDLE1BQU0sT0FBTyxHQUFHO0lBQ2QsT0FBTyxFQUFFLDBCQUEwQjtJQUNuQyxPQUFPLEVBQUUsMEJBQTBCO0lBQ25DLE9BQU8sRUFBRSwwQkFBMEI7Q0FDcEMsQ0FBQztBQU1GLE1BQU0sT0FBTyxvQkFBb0I7SUFZL0IsSUFDSSxXQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFJLFdBQVcsQ0FBQyxLQUFjO1FBQzVCLElBQUksQ0FBQyxZQUFZLEdBQUcsS0FBSyxDQUFDO0lBQzVCLENBQUM7SUFHRCxJQUNJLFdBQVc7UUFDYixPQUFPLElBQUksQ0FB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QWdCLCtDQVNoQixnQkFBZ0I7OzJGQTlCekIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsZUFBZTtpQkFDMUI7MEVBY0ssV0FBVztzQkFEZCxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQVVsQyxXQUFXO3NCQURkLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBVWxDLFdBQVc7c0JBRGQsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFVbEMsS0FBSztzQkFEUixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBpbmplY3QsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGNyZWF0ZURlc3Ryb3ksIHNpZ25hbEhvc3RBdHRyaWJ1dGVzIH0gZnJvbSAnQGV0aGxldGUvY29yZSc7XG5pbXBvcnQge1xuICBBbnlRdWVyeSxcbiAgQW55UXVlcnlDb2xsZWN0aW9uLFxuICBleHRyYWN0UXVlcnksXG4gIGlzUXVlcnlTdGF0ZUZhaWx1cmUsXG4gIGlzUXVlcnlTdGF0ZUxvYWRpbmcsXG4gIGlzUXVlcnlTdGF0ZVN1Y2Nlc3MsXG59IGZyb20gJ0BldGhsZXRlL3F1ZXJ5JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBvZiwgc2tpcCwgc3dpdGNoTWFwLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJ1dHRvbkRpcmVjdGl2ZSB9IGZyb20gJy4uL2J1dHRvbic7XG5cbmNvbnN0IENMQVNTRVMgPSB7XG4gIGxvYWRpbmc6ICdldC1xdWVyeS1idXR0b24tLWxvYWRpbmcnLFxuICBzdWNjZXNzOiAnZXQtcXVlcnktYnV0dG9uLS1zdWNjZXNzJyxcbiAgZmFpbHVyZTogJ2V0LXF1ZXJ5LWJ1dHRvbi0tZmFpbHVyZScsXG59O1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgZXhwb3J0QXM6ICdldFF1ZXJ5QnV0dG9uJyxcbn0pXG5leHBvcnQgY2xhc3MgUXVlcnlCdXR0b25EaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9lbGVtZW50UmVmID0gaW5qZWN0PEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+PihFbGVtZW50UmVmKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveSQgPSBjcmVhdGVEZXN0cm95KCk7XG4gIHByaXZhdGUgcmVhZG9ubHkgX2J1dHRvbiA9IGluamVjdChCdXR0b25EaXJlY3RpdmUpO1xuXG4gIHByaXZhdGUgX2NsZWFudXBUaW1lb3V0OiBudW1iZXIgfCBudWxsID0gbnVsbDtcblxuICByZWFkb25seSBzaG93U3VjY2VzcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgcmVhZG9ubHkgc2hvd0ZhaWx1cmUkID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG4gIHJlYWRvbmx5IGRpZExvYWRPbmNlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICByZWFkb25seSBpc0xvYWRpbmckID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gIGdldCBza2lwU3VjY2VzcygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fc2tpcFN1Y2Nlc3M7XG4gIH1cbiAgc2V0IHNraXBTdWNjZXNzKHZhbHVlOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2tpcFN1Y2Nlc3MgPSB2YWx1ZTtcbiAgfVxuICBwcml2YXRlIF9za2lwU3VjY2VzcyA9IGZhbHNlO1xuXG4gIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KVxuICBnZXQgc2tpcEZhaWx1cmUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX3NraXBGYWlsdXJlO1xuICB9XG4gIHNldCBza2lwRmFpbHVyZSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuX3NraXBGYWlsdXJlID0gdmFsdWU7XG4gIH1cbiAgcHJpdmF0ZSBfc2tpcEZhaWx1cmUgPSBmYWxzZTtcblxuICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSlcbiAgZ2V0IHNraXBMb2FkaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9za2lwTG9hZGluZztcbiAgfVxuICBzZXQgc2tpcExvYWRpbmcodmFsdWU6IGJvb2xlYW4pIHtcbiAgICB0aGlzLl9za2lwTG9hZGluZyA9IHZhbHVlO1xuICB9XG4gIHByaXZhdGUgX3NraXBMb2FkaW5nID0gZmFsc2U7XG5cbiAgQElucHV0KClcbiAgZ2V0IHF1ZXJ5KCkge1xuICAgIHJldHVybiB0aGlzLl9xdWVyeSQudmFsdWU7XG4gIH1cbiAgc2V0IHF1ZXJ5KHY6IEFueVF1ZXJ5IHwgQW55UXVlcnlDb2xsZWN0aW9uIHwgbnVsbCkge1xuICAgIHRoaXMuX3F1ZXJ5JC5uZXh0KHYpO1xuXG4gICAgY29uc3QgY2xhc3NMaXN0ID0gdGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LmNsYXNzTGlzdDtcblxuICAgIGlmICh0aGlzLl9jbGVhbnVwVGltZW91dCAhPT0gbnVsbCkge1xuICAgICAgd2luZG93LmNsZWFyVGltZW91dCh0aGlzLl9jbGVhbnVwVGltZW91dCk7XG4gICAgfVxuXG4gICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLnN1Y2Nlc3MpO1xuICAgIGNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NFUy5mYWlsdXJlKTtcbiAgICBjbGFzc0xpc3QucmVtb3ZlKENMQVNTRVMubG9hZGluZyk7XG5cbiAgICBjb25zdCBxdWVyeSA9IGV4dHJhY3RRdWVyeSh0aGlzLl9xdWVyeSQudmFsdWUpO1xuXG4gICAgaWYgKCFxdWVyeSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHF1ZXJ5LnN0YXRlJC5waXBlKHRha2VVbnRpbCh0aGlzLl9kZXN0cm95JCksIHRha2VVbnRpbCh0aGlzLl9xdWVyeSQucGlwZShza2lwKDEpKSkpLnN1YnNjcmliZSgoc3RhdGUpID0+IHtcbiAgICAgIGlmIChpc1F1ZXJ5U3RhdGVMb2FkaW5nKHN0YXRlKSAmJiAhdGhpcy5fc2tpcExvYWRpbmcpIHtcbiAgICAgICAgdGhpcy5pc0xvYWRpbmckLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5sb2FkaW5nKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuaXNMb2FkaW5nJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLmxvYWRpbmcpO1xuICAgICAgfVxuXG4gICAgICBpZiAoaXNRdWVyeVN0YXRlU3VjY2VzcyhzdGF0ZSkgJiYgIXRoaXMuX3NraXBTdWNjZXNzKSB7XG4gICAgICAgIHRoaXMuc2hvd1N1Y2Nlc3MkLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5zdWNjZXNzKTtcbiAgICAgIH0gZWxzZSBpZiAoaXNRdWVyeVN0YXRlRmFpbHVyZShzdGF0ZSkgJiYgIXRoaXMuX3NraXBGYWlsdXJlKSB7XG4gICAgICAgIHRoaXMuc2hvd0ZhaWx1cmUkLm5leHQodHJ1ZSk7XG4gICAgICAgIGNsYXNzTGlzdC5hZGQoQ0xBU1NFUy5mYWlsdXJlKTtcbiAgICAgIH1cblxuICAgICAgaWYgKGlzUXVlcnlTdGF0ZVN1Y2Nlc3Moc3RhdGUpIHx8IGlzUXVlcnlTdGF0ZUZhaWx1cmUoc3RhdGUpKSB7XG4gICAgICAgIGlmICghdGhpcy5kaWRMb2FkT25jZSQudmFsdWUpIHtcbiAgICAgICAgICB0aGlzLmRpZExvYWRPbmNlJC5uZXh0KHRydWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fY2xlYW51cFRpbWVvdXQgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgdGhpcy5zaG93RmFpbHVyZSQubmV4dChmYWxzZSk7XG4gICAgICAgICAgdGhpcy5zaG93U3VjY2VzcyQubmV4dChmYWxzZSk7XG4gICAgICAgICAgY2xhc3NMaXN0LnJlbW92ZShDTEFTU0VTLnN1Y2Nlc3MpO1xuICAgICAgICAgIGNsYXNzTGlzdC5yZW1vdmUoQ0xBU1NFUy5mYWlsdXJlKTtcbiAgICAgICAgfSwgMzAwMCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbiAgZ2V0IHF1ZXJ5JCgpIHtcbiAgICByZXR1cm4gdGhpcy5fcXVlcnkkLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG4gIHByaXZhdGUgcmVhZG9ubHkgX3F1ZXJ5JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8QW55UXVlcnkgfCBBbnlRdWVyeUNvbGxlY3Rpb24gfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSBob3N0QXR0cmlidXRlQmluZGluZ3MgPSBzaWduYWxIb3N0QXR0cmlidXRlcyh7XG4gICAgJ2Rpc2FibGVkIGFyaWEtZGlzYWJsZWQnOiB0b1NpZ25hbChcbiAgICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuX2J1dHRvbi5kaXNhYmxlZCQsIHRoaXMuc2hvd0ZhaWx1cmUkLCB0aGlzLnNob3dTdWNjZXNzJCwgdGhpcy5pc0xvYWRpbmckXSkucGlwZShcbiAgICAgICAgbWFwKChbZGlzYWJsZWQsIHNob3dGYWlsdXJlLCBzaG93U3VjY2VzcywgaXNMb2FkaW5nXSkgPT4gZGlzYWJsZWQgfHwgc2hvd0ZhaWx1cmUgfHwgc2hvd1N1Y2Nlc3MgfHwgaXNMb2FkaW5nKSxcbiAgICAgICksXG4gICAgKSxcbiAgICAnYXJpYS1saXZlJzogdG9TaWduYWwoXG4gICAgICBjb21iaW5lTGF0ZXN0KFtcbiAgICAgICAgdGhpcy5xdWVyeSQucGlwZShcbiAgICAgICAgICBtYXAoKHEpID0+IGV4dHJhY3RRdWVyeShxKSksXG4gICAgICAgICAgc3dpdGNoTWFwKChxKSA9PiBxPy5zdGF0ZSQgPz8gb2YobnVsbCkpLFxuICAgICAgICApLFxuICAgICAgICB0aGlzLmRpZExvYWRPbmNlJCxcbiAgICAgIF0pLnBpcGUoXG4gICAgICAgIG1hcCgoW3N0YXRlLCBkaWRMb2FkT25jZV0pID0+IHtcbiAgICAgICAgICBsZXQgdmFsdWUgPSAnb2ZmJztcblxuICAgICAgICAgIGlmIChpc1F1ZXJ5U3RhdGVMb2FkaW5nKHN0YXRlKSB8fCBpc1F1ZXJ5U3RhdGVTdWNjZXNzKHN0YXRlKSB8fCBpc1F1ZXJ5U3RhdGVGYWlsdXJlKHN0YXRlKSB8fCBkaWRMb2FkT25jZSkge1xuICAgICAgICAgICAgdmFsdWUgPSAnYXNzZXJ0aXZlJztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgICAgIH0pLFxuICAgICAgKSxcbiAgICApLFxuICB9KTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9idXR0b24uX3JlbW92ZURpc2FibGVkQmluZGluZ3MoKTtcbiAgfVxufVxuIl19
|
package/esm2022/lib/components/forms/components/checkbox/directives/checkbox/checkbox.directive.mjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Directive, inject, InjectionToken } 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";
|
|
@@ -9,15 +10,10 @@ export class CheckboxDirective {
|
|
|
9
10
|
this.input = inject(INPUT_TOKEN);
|
|
10
11
|
this.checked$ = this.input.value$.pipe(map((value) => !!value));
|
|
11
12
|
this.indeterminate$ = new BehaviorSubject(false);
|
|
12
|
-
this.
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
attribute: ['class.et-checkbox--disabled'],
|
|
17
|
-
observable: this.input.disabled$,
|
|
18
|
-
}, {
|
|
19
|
-
attribute: ['class.et-checkbox--indeterminate'],
|
|
20
|
-
observable: combineLatest([this.checked$, this.indeterminate$]).pipe(map(([checked, indeterminate]) => !checked && indeterminate)),
|
|
13
|
+
this.hostClassBindings = signalHostClasses({
|
|
14
|
+
'et-checkbox--checked': toSignal(this.checked$),
|
|
15
|
+
'et-checkbox--disabled': toSignal(this.input.disabled$),
|
|
16
|
+
'et-checkbox--indeterminate': toSignal(combineLatest([this.checked$, this.indeterminate$]).pipe(map(([checked, indeterminate]) => !checked && indeterminate))),
|
|
21
17
|
});
|
|
22
18
|
}
|
|
23
19
|
_onInputInteraction(event) {
|
|
@@ -41,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
41
37
|
exportAs: 'etCheckbox',
|
|
42
38
|
}]
|
|
43
39
|
}] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3guZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvY2hlY2tib3gvZGlyZWN0aXZlcy9jaGVja2JveC9jaGVja2JveC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzNELE9BQU8sRUFBRSxXQUFXLEVBQWtCLE1BQU0sd0JBQXdCLENBQUM7O0FBRXJFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBb0IsNkJBQTZCLENBQUMsQ0FBQztBQU9uRyxNQUFNLE9BQU8saUJBQWlCO0lBTDlCO1FBTVcsVUFBSyxHQUFHLE1BQU0sQ0FBMEIsV0FBVyxDQUFDLENBQUM7UUFDckQsYUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzNELG1CQUFjLEdBQUcsSUFBSSxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFNUMsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7WUFDN0Msc0JBQXNCLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7WUFDL0MsdUJBQXVCLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDO1lBQ3ZELDRCQUE0QixFQUFFLFFBQVEsQ0FDcEMsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3RELEdBQUcsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sSUFBSSxhQUFhLENBQUMsQ0FDN0QsQ0FDRjtTQUNGLENBQUMsQ0FBQztLQWNKO0lBWkMsbUJBQW1CLENBQUMsS0FBWTtRQUM5QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsZUFBZTtRQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDNUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMxQyxDQUFDOzhHQTFCVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixpQ0FIakIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLENBQUM7OzJGQUc3RCxpQkFBaUI7a0JBTDdCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGNBQWMsRUFBRSxXQUFXLG1CQUFtQixFQUFFLENBQUM7b0JBQ3hFLFFBQVEsRUFBRSxZQUFZO2lCQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0Q2xhc3NlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElOUFVUX1RPS0VOLCBJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xuXG5leHBvcnQgY29uc3QgQ0hFQ0tCT1hfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48Q2hlY2tib3hEaXJlY3RpdmU+KCdFVF9DSEVDS0JPWF9ESVJFQ1RJVkVfVE9LRU4nKTtcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQ0hFQ0tCT1hfVE9LRU4sIHVzZUV4aXN0aW5nOiBDaGVja2JveERpcmVjdGl2ZSB9XSxcbiAgZXhwb3J0QXM6ICdldENoZWNrYm94Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hEaXJlY3RpdmUge1xuICByZWFkb25seSBpbnB1dCA9IGluamVjdDxJbnB1dERpcmVjdGl2ZTxib29sZWFuPj4oSU5QVVRfVE9LRU4pO1xuICByZWFkb25seSBjaGVja2VkJCA9IHRoaXMuaW5wdXQudmFsdWUkLnBpcGUobWFwKCh2YWx1ZSkgPT4gISF2YWx1ZSkpO1xuICByZWFkb25seSBpbmRldGVybWluYXRlJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc0JpbmRpbmdzID0gc2lnbmFsSG9zdENsYXNzZXMoe1xuICAgICdldC1jaGVja2JveC0tY2hlY2tlZCc6IHRvU2lnbmFsKHRoaXMuY2hlY2tlZCQpLFxuICAgICdldC1jaGVja2JveC0tZGlzYWJsZWQnOiB0b1NpZ25hbCh0aGlzLmlucHV0LmRpc2FibGVkJCksXG4gICAgJ2V0LWNoZWNrYm94LS1pbmRldGVybWluYXRlJzogdG9TaWduYWwoXG4gICAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmNoZWNrZWQkLCB0aGlzLmluZGV0ZXJtaW5hdGUkXSkucGlwZShcbiAgICAgICAgbWFwKChbY2hlY2tlZCwgaW5kZXRlcm1pbmF0ZV0pID0+ICFjaGVja2VkICYmIGluZGV0ZXJtaW5hdGUpLFxuICAgICAgKSxcbiAgICApLFxuICB9KTtcblxuICBfb25JbnB1dEludGVyYWN0aW9uKGV2ZW50OiBFdmVudCkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuXG4gICAgdGhpcy5pbnB1dC5fdXBkYXRlVmFsdWUoIXRoaXMuaW5wdXQudmFsdWUpO1xuICAgIHRoaXMuaW5wdXQuX21hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmlucHV0Ll9zZXRTaG91bGREaXNwbGF5RXJyb3IodHJ1ZSk7XG4gIH1cblxuICBfY29udHJvbFRvdWNoZWQoKSB7XG4gICAgdGhpcy5pbnB1dC5fbWFya0FzVG91Y2hlZCgpO1xuICAgIHRoaXMuaW5wdXQuX3NldFNob3VsZERpc3BsYXlFcnJvcih0cnVlKTtcbiAgfVxufVxuIl19
|
|
@@ -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 { CHECKBOX_TOKEN } from '../public-api';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -8,19 +9,21 @@ export const CHECKBOX_FIELD_TOKEN = new InjectionToken('ET_CHECKBOX_FIELD_DIRECT
|
|
|
8
9
|
export class CheckboxFieldDirective {
|
|
9
10
|
constructor() {
|
|
10
11
|
this.inputState = inject(InputStateService);
|
|
11
|
-
this.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
observable: this._checkbox.changes.pipe(startWith(this._checkbox)).pipe(switchMap((checkboxes) => combineLatest(checkboxes.filter((cb) => !!cb).map((checkbox) => checkbox.indeterminate$))), map((checked) => checked.some((value) => value))),
|
|
12
|
+
this._checkbox$ = new BehaviorSubject(null);
|
|
13
|
+
this.hostClassBindings = signalHostClasses({
|
|
14
|
+
'et-checkbox-field--indeterminate': toSignal(this._checkbox$.pipe(switchQueryListChanges(), switchMap((checkboxes) => {
|
|
15
|
+
if (!checkboxes?.length) {
|
|
16
|
+
return of(null);
|
|
17
|
+
}
|
|
18
|
+
return combineLatest(checkboxes.map((checkbox) => checkbox.indeterminate$)).pipe(map((indeterminateStates) => indeterminateStates.some((isIndeterminate) => isIndeterminate)));
|
|
19
|
+
}))),
|
|
20
20
|
});
|
|
21
21
|
}
|
|
22
|
+
set checkbox(checkbox) {
|
|
23
|
+
this._checkbox$.next(checkbox);
|
|
24
|
+
}
|
|
22
25
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: CheckboxFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
23
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: CheckboxFieldDirective, isStandalone: true, providers: [{ provide: CHECKBOX_FIELD_TOKEN, useExisting: CheckboxFieldDirective }], queries: [{ propertyName: "
|
|
26
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: CheckboxFieldDirective, isStandalone: true, providers: [{ provide: CHECKBOX_FIELD_TOKEN, useExisting: CheckboxFieldDirective }], queries: [{ propertyName: "checkbox", predicate: i0.forwardRef(function () { return CHECKBOX_TOKEN; }), descendants: true }], exportAs: ["etCheckboxGroup"], ngImport: i0 }); }
|
|
24
27
|
}
|
|
25
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: CheckboxFieldDirective, decorators: [{
|
|
26
29
|
type: Directive,
|
|
@@ -29,8 +32,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
29
32
|
providers: [{ provide: CHECKBOX_FIELD_TOKEN, useExisting: CheckboxFieldDirective }],
|
|
30
33
|
exportAs: 'etCheckboxGroup',
|
|
31
34
|
}]
|
|
32
|
-
}], propDecorators: {
|
|
35
|
+
}], propDecorators: { checkbox: [{
|
|
33
36
|
type: ContentChildren,
|
|
34
37
|
args: [forwardRef(() => CHECKBOX_TOKEN), { descendants: true }]
|
|
35
38
|
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZmllbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvY2hlY2tib3gvZGlyZWN0aXZlcy9jaGVja2JveC1maWVsZC9jaGVja2JveC1maWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLGNBQWMsRUFBcUIsTUFBTSxlQUFlLENBQUM7O0FBRWxFLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLElBQUksY0FBYyxDQUF5QixtQ0FBbUMsQ0FBQyxDQUFDO0FBT3BILE1BQU0sT0FBTyxzQkFBc0I7SUFMbkM7UUFNVyxlQUFVLEdBQUcsTUFBTSxDQUE2QixpQkFBaUIsQ0FBQyxDQUFDO1FBTXBFLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBMkMsSUFBSSxDQUFDLENBQUM7UUFFaEYsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7WUFDN0Msa0NBQWtDLEVBQUUsUUFBUSxDQUMxQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FDbEIsc0JBQXNCLEVBQUUsRUFDeEIsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7Z0JBQ3ZCLElBQUksQ0FBQyxVQUFVLEVBQUUsTUFBTSxFQUFFO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDakI7Z0JBRUQsT0FBTyxhQUFhLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM5RSxHQUFHLENBQUMsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUMsZUFBZSxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUM3RixDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FDRjtTQUNGLENBQUMsQ0FBQztLQUNKO0lBdEJDLElBQ0ksUUFBUSxDQUFDLFFBQTJDO1FBQ3RELElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7OEdBTlUsc0JBQXNCO2tHQUF0QixzQkFBc0IsaUNBSHRCLENBQUMsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLENBQUMsc0ZBTWpELGNBQWM7OzJGQUhyQyxzQkFBc0I7a0JBTGxDLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFdBQVcsd0JBQXdCLEVBQUUsQ0FBQztvQkFDbkYsUUFBUSxFQUFFLGlCQUFpQjtpQkFDNUI7OEJBS0ssUUFBUTtzQkFEWCxlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxjQUFjLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0Q2xhc3Nlcywgc3dpdGNoUXVlcnlMaXN0Q2hhbmdlcywgVHlwZWRRdWVyeUxpc3QgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbnB1dFN0YXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IENIRUNLQk9YX1RPS0VOLCBDaGVja2JveERpcmVjdGl2ZSB9IGZyb20gJy4uL3B1YmxpYy1hcGknO1xuXG5leHBvcnQgY29uc3QgQ0hFQ0tCT1hfRklFTERfVE9LRU4gPSBuZXcgSW5qZWN0aW9uVG9rZW48Q2hlY2tib3hGaWVsZERpcmVjdGl2ZT4oJ0VUX0NIRUNLQk9YX0ZJRUxEX0RJUkVDVElWRV9UT0tFTicpO1xuXG5ARGlyZWN0aXZlKHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDSEVDS0JPWF9GSUVMRF9UT0tFTiwgdXNlRXhpc3Rpbmc6IENoZWNrYm94RmllbGREaXJlY3RpdmUgfV0sXG4gIGV4cG9ydEFzOiAnZXRDaGVja2JveEdyb3VwJyxcbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tib3hGaWVsZERpcmVjdGl2ZSB7XG4gIHJlYWRvbmx5IGlucHV0U3RhdGUgPSBpbmplY3Q8SW5wdXRTdGF0ZVNlcnZpY2U8Ym9vbGVhbj4+KElucHV0U3RhdGVTZXJ2aWNlKTtcblxuICBAQ29udGVudENoaWxkcmVuKGZvcndhcmRSZWYoKCkgPT4gQ0hFQ0tCT1hfVE9LRU4pLCB7IGRlc2NlbmRhbnRzOiB0cnVlIH0pXG4gIHNldCBjaGVja2JveChjaGVja2JveDogVHlwZWRRdWVyeUxpc3Q8Q2hlY2tib3hEaXJlY3RpdmU+KSB7XG4gICAgdGhpcy5fY2hlY2tib3gkLm5leHQoY2hlY2tib3gpO1xuICB9XG4gIHByaXZhdGUgX2NoZWNrYm94JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8VHlwZWRRdWVyeUxpc3Q8Q2hlY2tib3hEaXJlY3RpdmU+IHwgbnVsbD4obnVsbCk7XG5cbiAgcmVhZG9ubHkgaG9zdENsYXNzQmluZGluZ3MgPSBzaWduYWxIb3N0Q2xhc3Nlcyh7XG4gICAgJ2V0LWNoZWNrYm94LWZpZWxkLS1pbmRldGVybWluYXRlJzogdG9TaWduYWwoXG4gICAgICB0aGlzLl9jaGVja2JveCQucGlwZShcbiAgICAgICAgc3dpdGNoUXVlcnlMaXN0Q2hhbmdlcygpLFxuICAgICAgICBzd2l0Y2hNYXAoKGNoZWNrYm94ZXMpID0+IHtcbiAgICAgICAgICBpZiAoIWNoZWNrYm94ZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgcmV0dXJuIG9mKG51bGwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KGNoZWNrYm94ZXMubWFwKChjaGVja2JveCkgPT4gY2hlY2tib3guaW5kZXRlcm1pbmF0ZSQpKS5waXBlKFxuICAgICAgICAgICAgbWFwKChpbmRldGVybWluYXRlU3RhdGVzKSA9PiBpbmRldGVybWluYXRlU3RhdGVzLnNvbWUoKGlzSW5kZXRlcm1pbmF0ZSkgPT4gaXNJbmRldGVybWluYXRlKSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSksXG4gICAgICApLFxuICAgICksXG4gIH0pO1xufVxuIl19
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Directive, inject, InjectionToken } from '@angular/core';
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
2
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
+
import { signalAttributes } from '@ethlete/core';
|
|
4
|
+
import { map } from 'rxjs';
|
|
4
5
|
import { INPUT_TOKEN } from '../../../../directives';
|
|
5
6
|
import { CHECKBOX_TOKEN } from '../checkbox';
|
|
6
7
|
import { CHECKBOX_GROUP_TOKEN } from '../checkbox-group';
|
|
@@ -11,16 +12,8 @@ export class CheckboxGroupControlDirective {
|
|
|
11
12
|
this.checkbox = inject(CHECKBOX_TOKEN);
|
|
12
13
|
this.input = inject(INPUT_TOKEN);
|
|
13
14
|
this.group = inject(CHECKBOX_GROUP_TOKEN);
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
ngAfterContentInit() {
|
|
17
|
-
this._bindings.push({
|
|
18
|
-
attribute: ['aria-controls'],
|
|
19
|
-
elementRef: this.input.nativeInputRef?.element,
|
|
20
|
-
observable: this.group.checkboxesWithoutGroupCtrl$.pipe(map((checkboxes) => ({
|
|
21
|
-
render: true,
|
|
22
|
-
value: checkboxes.map((checkbox) => checkbox.input.id).join(' '),
|
|
23
|
-
}))) ?? of(false),
|
|
15
|
+
this.inputAttributeBindings = signalAttributes(this.input.nativeInputRef$.pipe(map((el) => el?.element)), {
|
|
16
|
+
'aria-controls': toSignal(this.group.checkboxesWithoutGroupCtrl$.pipe(map((checkboxes) => checkboxes.map((checkbox) => checkbox.input.id).join(' ')))),
|
|
24
17
|
});
|
|
25
18
|
}
|
|
26
19
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: CheckboxGroupControlDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
@@ -35,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
35
28
|
providers: [{ provide: CHECKBOX_GROUP_CONTROL_TOKEN, useExisting: CheckboxGroupControlDirective }],
|
|
36
29
|
}]
|
|
37
30
|
}] });
|
|
38
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
31
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tib3gtZ3JvdXAtY29udHJvbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9jaGVja2JveC9kaXJlY3RpdmVzL2NoZWNrYm94LWdyb3VwLWNvbnRyb2wvY2hlY2tib3gtZ3JvdXAtY29udHJvbC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsY0FBYyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakQsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQixPQUFPLEVBQUUsV0FBVyxFQUFrQixNQUFNLHdCQUF3QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDN0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7O0FBRXpELE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLElBQUksY0FBYyxDQUM1RCxpQ0FBaUMsQ0FDbEMsQ0FBQztBQVFGLE1BQU0sT0FBTyw2QkFBNkI7SUFOMUM7UUFPVyxhQUFRLEdBQUcsTUFBTSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1FBQ2xDLFVBQUssR0FBRyxNQUFNLENBQTBCLFdBQVcsQ0FBQyxDQUFDO1FBQ3JELFVBQUssR0FBRyxNQUFNLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUVyQywyQkFBc0IsR0FBRyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsT0FBTyxDQUFDLENBQUMsRUFBRTtZQUM1RyxlQUFlLEVBQUUsUUFBUSxDQUN2QixJQUFJLENBQUMsS0FBSyxDQUFDLDJCQUEyQixDQUFDLElBQUksQ0FDekMsR0FBRyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUMvRSxDQUNGO1NBQ0YsQ0FBQyxDQUFDO0tBQ0o7OEdBWlksNkJBQTZCO2tHQUE3Qiw2QkFBNkIsdUVBRjdCLENBQUMsRUFBRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsV0FBVyxFQUFFLDZCQUE2QixFQUFFLENBQUM7OzJGQUV2Riw2QkFBNkI7a0JBTnpDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLFdBQVcsK0JBQStCLEVBQUUsQ0FBQztpQkFDbkciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgSW5qZWN0aW9uVG9rZW4gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgc2lnbmFsQXR0cmlidXRlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJTlBVVF9UT0tFTiwgSW5wdXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi8uLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IENIRUNLQk9YX1RPS0VOIH0gZnJvbSAnLi4vY2hlY2tib3gnO1xuaW1wb3J0IHsgQ0hFQ0tCT1hfR1JPVVBfVE9LRU4gfSBmcm9tICcuLi9jaGVja2JveC1ncm91cCc7XG5cbmV4cG9ydCBjb25zdCBDSEVDS0JPWF9HUk9VUF9DT05UUk9MX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPENoZWNrYm94R3JvdXBDb250cm9sRGlyZWN0aXZlPihcbiAgJ0VUX0NIRUNLQk9YX0dST1VQX0NPTlRST0xfVE9LRU4nLFxuKTtcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnW2V0Q2hlY2tib3hHcm91cENvbnRyb2xdJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgZXhwb3J0QXM6ICdldENoZWNrYm94R3JvdXBDb250cm9sJyxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBDSEVDS0JPWF9HUk9VUF9DT05UUk9MX1RPS0VOLCB1c2VFeGlzdGluZzogQ2hlY2tib3hHcm91cENvbnRyb2xEaXJlY3RpdmUgfV0sXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrYm94R3JvdXBDb250cm9sRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgY2hlY2tib3ggPSBpbmplY3QoQ0hFQ0tCT1hfVE9LRU4pO1xuICByZWFkb25seSBpbnB1dCA9IGluamVjdDxJbnB1dERpcmVjdGl2ZTxib29sZWFuPj4oSU5QVVRfVE9LRU4pO1xuICByZWFkb25seSBncm91cCA9IGluamVjdChDSEVDS0JPWF9HUk9VUF9UT0tFTik7XG5cbiAgcmVhZG9ubHkgaW5wdXRBdHRyaWJ1dGVCaW5kaW5ncyA9IHNpZ25hbEF0dHJpYnV0ZXModGhpcy5pbnB1dC5uYXRpdmVJbnB1dFJlZiQucGlwZShtYXAoKGVsKSA9PiBlbD8uZWxlbWVudCkpLCB7XG4gICAgJ2FyaWEtY29udHJvbHMnOiB0b1NpZ25hbChcbiAgICAgIHRoaXMuZ3JvdXAuY2hlY2tib3hlc1dpdGhvdXRHcm91cEN0cmwkLnBpcGUoXG4gICAgICAgIG1hcCgoY2hlY2tib3hlcykgPT4gY2hlY2tib3hlcy5tYXAoKGNoZWNrYm94KSA9PiBjaGVja2JveC5pbnB1dC5pZCkuam9pbignICcpKSxcbiAgICAgICksXG4gICAgKSxcbiAgfSk7XG59XG4iXX0=
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { AsyncPipe, JsonPipe, NgIf } from '@angular/common';
|
|
2
2
|
import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation, inject } from '@angular/core';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
+
import { signalHostClasses } from '@ethlete/core';
|
|
5
|
+
import { BehaviorSubject, of } from 'rxjs';
|
|
5
6
|
import { DYNAMIC_FORM_FIELD_TOKEN, DYNAMIC_FORM_GROUP_TOKEN } from '../../../../directives';
|
|
6
7
|
import { FormFieldStateService, FormGroupStateService, VALIDATOR_ERROR_SERVICE_TOKEN } from '../../../../services';
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
@@ -14,12 +15,9 @@ export class ErrorComponent {
|
|
|
14
15
|
this.errorText$ = new BehaviorSubject(null);
|
|
15
16
|
this.id = `et-error-${_uniqueIdCounter++}`;
|
|
16
17
|
this._errors = null;
|
|
17
|
-
this.
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
}, {
|
|
21
|
-
attribute: 'class.cdk-visually-hidden',
|
|
22
|
-
observable: this._dynamicFormGroupOrField.hideErrorMessage$,
|
|
18
|
+
this.hostClassBindings = signalHostClasses({
|
|
19
|
+
'et-error--has-errors': toSignal(this.errorText$),
|
|
20
|
+
'cdk-visually-hidden': toSignal(this._dynamicFormGroupOrField.hideErrorMessage$),
|
|
23
21
|
});
|
|
24
22
|
}
|
|
25
23
|
get errors() {
|
|
@@ -53,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
53
51
|
}], propDecorators: { errors: [{
|
|
54
52
|
type: Input
|
|
55
53
|
}] } });
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
54
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvZXJyb3IvY29tcG9uZW50cy9lcnJvci9lcnJvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvY29tcG9uZW50cy9lcnJvci9jb21wb25lbnRzL2Vycm9yL2Vycm9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxxQkFBcUIsRUFBRSw2QkFBNkIsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUVuSCxJQUFJLGdCQUFnQixHQUFHLENBQUMsQ0FBQztBQWV6QixNQUFNLE9BQU8sY0FBYztJQWIzQjtRQWNtQiw0QkFBdUIsR0FBRyxNQUFNLENBQUMsNkJBQTZCLENBQUMsQ0FBQztRQUNoRSxrQ0FBNkIsR0FDNUMsTUFBTSxDQUFDLHFCQUFxQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFFcEUsNkJBQXdCLEdBQ3ZDLE1BQU0sQ0FBQyx3QkFBd0IsRUFBRSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxJQUFJLE1BQU0sQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBRXhFLGVBQVUsR0FBRyxJQUFJLGVBQWUsQ0FBNEIsSUFBSSxDQUFDLENBQUM7UUFFNUUsT0FBRSxHQUFHLFlBQVksZ0JBQWdCLEVBQUUsRUFBRSxDQUFDO1FBd0J2QyxZQUFPLEdBQTRCLElBQUksQ0FBQztRQUV2QyxzQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztZQUM3QyxzQkFBc0IsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQztZQUNqRCxxQkFBcUIsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLHdCQUF3QixDQUFDLGlCQUFpQixDQUFDO1NBQ2pGLENBQUMsQ0FBQztLQUNKO0lBNUJDLElBQ1csTUFBTTtRQUNmLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBVyxNQUFNLENBQUMsQ0FBMEI7UUFDMUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFFakIsSUFBSSxDQUFDLEVBQUU7WUFDTCxNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXhELElBQUksT0FBTyxTQUFTLEtBQUssUUFBUSxFQUFFO2dCQUNqQyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQzthQUNyQztpQkFBTTtnQkFDTCxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQzthQUNqQztZQUVELElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUMzRDthQUFNO1lBQ0wsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0IsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDeEQ7SUFDSCxDQUFDOzhHQWpDVSxjQUFjO2tHQUFkLGNBQWMsd0lDeEIzQixtS0FHQSwwRERrQnNCLElBQUksd0ZBQUUsU0FBUzs7MkZBR3hCLGNBQWM7a0JBYjFCLFNBQVM7K0JBQ0UsVUFBVSxjQUdSLElBQUksbUJBQ0MsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQjt3QkFDSixLQUFLLEVBQUUsVUFBVTtxQkFDbEIsV0FDUSxDQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLGtCQUNwQixFQUFFOzhCQWVQLE1BQU07c0JBRGhCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBc3luY1BpcGUsIEpzb25QaXBlLCBOZ0lmIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBWaWV3RW5jYXBzdWxhdGlvbiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IFZhbGlkYXRpb25FcnJvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBzaWduYWxIb3N0Q2xhc3NlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRFlOQU1JQ19GT1JNX0ZJRUxEX1RPS0VOLCBEWU5BTUlDX0ZPUk1fR1JPVVBfVE9LRU4gfSBmcm9tICcuLi8uLi8uLi8uLi9kaXJlY3RpdmVzJztcbmltcG9ydCB7IEZvcm1GaWVsZFN0YXRlU2VydmljZSwgRm9ybUdyb3VwU3RhdGVTZXJ2aWNlLCBWQUxJREFUT1JfRVJST1JfU0VSVklDRV9UT0tFTiB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcblxubGV0IF91bmlxdWVJZENvdW50ZXIgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdldC1lcnJvcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9lcnJvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Vycm9yLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBob3N0OiB7XG4gICAgY2xhc3M6ICdldC1lcnJvcicsXG4gIH0sXG4gIGltcG9ydHM6IFtKc29uUGlwZSwgTmdJZiwgQXN5bmNQaXBlXSxcbiAgaG9zdERpcmVjdGl2ZXM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBFcnJvckNvbXBvbmVudCB7XG4gIHByaXZhdGUgcmVhZG9ubHkgX3ZhbGlkYXRvckVycm9yc1NlcnZpY2UgPSBpbmplY3QoVkFMSURBVE9SX0VSUk9SX1NFUlZJQ0VfVE9LRU4pO1xuICBwcml2YXRlIHJlYWRvbmx5IF9mb3JtRmllbGRPckdyb3VwU3RhdGVTZXJ2aWNlID1cbiAgICBpbmplY3QoRm9ybUZpZWxkU3RhdGVTZXJ2aWNlLCB7IG9wdGlvbmFsOiB0cnVlIH0pID8/IGluamVjdChGb3JtR3JvdXBTdGF0ZVNlcnZpY2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2R5bmFtaWNGb3JtR3JvdXBPckZpZWxkID1cbiAgICBpbmplY3QoRFlOQU1JQ19GT1JNX0ZJRUxEX1RPS0VOLCB7IG9wdGlvbmFsOiB0cnVlIH0pID8/IGluamVjdChEWU5BTUlDX0ZPUk1fR1JPVVBfVE9LRU4pO1xuXG4gIHByb3RlY3RlZCByZWFkb25seSBlcnJvclRleHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxPYnNlcnZhYmxlPHN0cmluZz4gfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSBpZCA9IGBldC1lcnJvci0ke191bmlxdWVJZENvdW50ZXIrK31gO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBnZXQgZXJyb3JzKCkge1xuICAgIHJldHVybiB0aGlzLl9lcnJvcnM7XG4gIH1cbiAgcHVibGljIHNldCBlcnJvcnModjogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpIHtcbiAgICB0aGlzLl9lcnJvcnMgPSB2O1xuXG4gICAgaWYgKHYpIHtcbiAgICAgIGNvbnN0IGVycm9yVGV4dCA9IHRoaXMuX3ZhbGlkYXRvckVycm9yc1NlcnZpY2UucGFyc2Uodik7XG5cbiAgICAgIGlmICh0eXBlb2YgZXJyb3JUZXh0ID09PSAnc3RyaW5nJykge1xuICAgICAgICB0aGlzLmVycm9yVGV4dCQubmV4dChvZihlcnJvclRleHQpKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMuZXJyb3JUZXh0JC5uZXh0KGVycm9yVGV4dCk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuX2Zvcm1GaWVsZE9yR3JvdXBTdGF0ZVNlcnZpY2UuZXJyb3JJZCQubmV4dCh0aGlzLmlkKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5lcnJvclRleHQkLm5leHQobnVsbCk7XG4gICAgICB0aGlzLl9mb3JtRmllbGRPckdyb3VwU3RhdGVTZXJ2aWNlLmVycm9ySWQkLm5leHQobnVsbCk7XG4gICAgfVxuICB9XG4gIHByaXZhdGUgX2Vycm9yczogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwgPSBudWxsO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc0JpbmRpbmdzID0gc2lnbmFsSG9zdENsYXNzZXMoe1xuICAgICdldC1lcnJvci0taGFzLWVycm9ycyc6IHRvU2lnbmFsKHRoaXMuZXJyb3JUZXh0JCksXG4gICAgJ2Nkay12aXN1YWxseS1oaWRkZW4nOiB0b1NpZ25hbCh0aGlzLl9keW5hbWljRm9ybUdyb3VwT3JGaWVsZC5oaWRlRXJyb3JNZXNzYWdlJCksXG4gIH0pO1xufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImVycm9yVGV4dCQgfCBhc3luYyB8IGFzeW5jIGFzIHRleHRcIj5cbiAgPHNwYW4gW2lkXT1cImlkXCIgYXJpYS1hdG9taWM9XCJ0cnVlXCIgYXJpYS1saXZlPVwicG9saXRlXCI+IHt7IHRleHQgfX0gPC9zcGFuPlxuPC9uZy1jb250YWluZXI+XG4iXX0=
|
|
@@ -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";
|
|
@@ -11,12 +12,9 @@ export class RadioDirective {
|
|
|
11
12
|
this._disabled$ = new BehaviorSubject(false);
|
|
12
13
|
this.checked$ = combineLatest([this.input.value$, this._value$]).pipe(map(([inputValue, value]) => inputValue === value));
|
|
13
14
|
this.disabled$ = combineLatest([this.input.disabled$, this._disabled$]).pipe(map(([inputDisabled, disabled]) => inputDisabled || disabled));
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
}, {
|
|
18
|
-
attribute: ['class.et-radio--disabled'],
|
|
19
|
-
observable: this.disabled$,
|
|
15
|
+
this.hostClassBindings = signalHostClasses({
|
|
16
|
+
'et-radio--checked': toSignal(this.disabled$),
|
|
17
|
+
'et-radio--disabled': toSignal(this.disabled$),
|
|
20
18
|
});
|
|
21
19
|
}
|
|
22
20
|
get value() {
|
|
@@ -59,4 +57,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
59
57
|
}], disabled: [{
|
|
60
58
|
type: Input
|
|
61
59
|
}] } });
|
|
62
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
60
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvcmFkaW8vZGlyZWN0aXZlcy9yYWRpby9yYWRpby5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFrQixNQUFNLHdCQUF3QixDQUFDOztBQUdyRSxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQUcsSUFBSSxjQUFjLENBQWlCLDBCQUEwQixDQUFDLENBQUM7QUFPMUYsTUFBTSxPQUFPLGNBQWM7SUFMM0I7UUFNVyxVQUFLLEdBQUcsTUFBTSxDQUE2QixXQUFXLENBQUMsQ0FBQztRQVN6RCxZQUFPLEdBQUcsSUFBSSxlQUFlLENBQWEsSUFBSSxDQUFDLENBQUM7UUFTaEQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXZDLGFBQVEsR0FBRyxhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQ3ZFLEdBQUcsQ0FBQyxDQUFDLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxVQUFVLEtBQUssS0FBSyxDQUFDLENBQ25ELENBQUM7UUFFTyxjQUFTLEdBQUcsYUFBYSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUM5RSxHQUFHLENBQUMsQ0FBQyxDQUFDLGFBQWEsRUFBRSxRQUFRLENBQUMsRUFBRSxFQUFFLENBQUMsYUFBYSxJQUFJLFFBQVEsQ0FBQyxDQUM5RCxDQUFDO1FBRU8sc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7WUFDN0MsbUJBQW1CLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDN0Msb0JBQW9CLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7U0FDL0MsQ0FBQyxDQUFDO0tBbUJKO0lBaERDLElBQ0ksS0FBSztRQUNQLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBQ0QsSUFBSSxLQUFLLENBQUMsS0FBaUI7UUFDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUdELElBQ0ksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBQ0QsSUFBSSxRQUFRLENBQUMsS0FBYztRQUN6QixJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hELENBQUM7SUFnQkQsbUJBQW1CLENBQUMsS0FBWTtRQUM5QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFFeEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO1lBQ2pCLE9BQU87U0FDUjtRQUVELElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVwQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzVCLElBQUksQ0FBQyxLQUFLLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsQ0FBQzs4R0FsRFUsY0FBYztrR0FBZCxjQUFjLG1GQUhkLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxjQUFjLEVBQUUsQ0FBQzs7MkZBR3ZELGNBQWM7a0JBTDFCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLGdCQUFnQixFQUFFLENBQUM7b0JBQ2xFLFFBQVEsRUFBRSxTQUFTO2lCQUNwQjs4QkFLSyxLQUFLO3NCQURSLEtBQUs7Z0JBVUYsUUFBUTtzQkFEWCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIGJvb2xlYW5BdHRyaWJ1dGUsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0Q2xhc3NlcyB9IGZyb20gJ0BldGhsZXRlL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IElOUFVUX1RPS0VOLCBJbnB1dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RpcmVjdGl2ZXMnO1xuaW1wb3J0IHsgUmFkaW9WYWx1ZSB9IGZyb20gJy4uLy4uL3R5cGVzJztcblxuZXhwb3J0IGNvbnN0IFJBRElPX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuPFJhZGlvRGlyZWN0aXZlPignRVRfUkFESU9fRElSRUNUSVZFX1RPS0VOJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJBRElPX1RPS0VOLCB1c2VFeGlzdGluZzogUmFkaW9EaXJlY3RpdmUgfV0sXG4gIGV4cG9ydEFzOiAnZXRSYWRpbycsXG59KVxuZXhwb3J0IGNsYXNzIFJhZGlvRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgaW5wdXQgPSBpbmplY3Q8SW5wdXREaXJlY3RpdmU8UmFkaW9WYWx1ZT4+KElOUFVUX1RPS0VOKTtcblxuICBASW5wdXQoKVxuICBnZXQgdmFsdWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuX3ZhbHVlJC5nZXRWYWx1ZSgpO1xuICB9XG4gIHNldCB2YWx1ZSh2YWx1ZTogUmFkaW9WYWx1ZSkge1xuICAgIHRoaXMuX3ZhbHVlJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBwcml2YXRlIF92YWx1ZSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFJhZGlvVmFsdWU+KG51bGwpO1xuXG4gIEBJbnB1dCgpXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5fZGlzYWJsZWQkLmdldFZhbHVlKCk7XG4gIH1cbiAgc2V0IGRpc2FibGVkKHZhbHVlOiB1bmtub3duKSB7XG4gICAgdGhpcy5fZGlzYWJsZWQkLm5leHQoYm9vbGVhbkF0dHJpYnV0ZSh2YWx1ZSkpO1xuICB9XG4gIHByaXZhdGUgX2Rpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuXG4gIHJlYWRvbmx5IGNoZWNrZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5pbnB1dC52YWx1ZSQsIHRoaXMuX3ZhbHVlJF0pLnBpcGUoXG4gICAgbWFwKChbaW5wdXRWYWx1ZSwgdmFsdWVdKSA9PiBpbnB1dFZhbHVlID09PSB2YWx1ZSksXG4gICk7XG5cbiAgcmVhZG9ubHkgZGlzYWJsZWQkID0gY29tYmluZUxhdGVzdChbdGhpcy5pbnB1dC5kaXNhYmxlZCQsIHRoaXMuX2Rpc2FibGVkJF0pLnBpcGUoXG4gICAgbWFwKChbaW5wdXREaXNhYmxlZCwgZGlzYWJsZWRdKSA9PiBpbnB1dERpc2FibGVkIHx8IGRpc2FibGVkKSxcbiAgKTtcblxuICByZWFkb25seSBob3N0Q2xhc3NCaW5kaW5ncyA9IHNpZ25hbEhvc3RDbGFzc2VzKHtcbiAgICAnZXQtcmFkaW8tLWNoZWNrZWQnOiB0b1NpZ25hbCh0aGlzLmRpc2FibGVkJCksXG4gICAgJ2V0LXJhZGlvLS1kaXNhYmxlZCc6IHRvU2lnbmFsKHRoaXMuZGlzYWJsZWQkKSxcbiAgfSk7XG5cbiAgX29uSW5wdXRJbnRlcmFjdGlvbihldmVudDogRXZlbnQpIHtcbiAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcblxuICAgIGlmICh0aGlzLmRpc2FibGVkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pbnB1dC5fdXBkYXRlVmFsdWUodGhpcy52YWx1ZSk7XG5cbiAgICB0aGlzLmlucHV0Ll9tYXJrQXNUb3VjaGVkKCk7XG4gICAgdGhpcy5pbnB1dC5fc2V0U2hvdWxkRGlzcGxheUVycm9yKHRydWUpO1xuICB9XG5cbiAgX2NvbnRyb2xUb3VjaGVkKCkge1xuICAgIHRoaXMuaW5wdXQuX21hcmtBc1RvdWNoZWQoKTtcbiAgICB0aGlzLmlucHV0Ll9zZXRTaG91bGREaXNwbGF5RXJyb3IodHJ1ZSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -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 { RADIO_TOKEN } from '../radio';
|
|
6
7
|
import * as i0 from "@angular/core";
|
|
@@ -8,23 +9,18 @@ export const RADIO_FIELD_TOKEN = new InjectionToken('ET_RADIO_FIELD_DIRECTIVE_TO
|
|
|
8
9
|
export class RadioFieldDirective {
|
|
9
10
|
constructor() {
|
|
10
11
|
this.inputState = inject(InputStateService);
|
|
11
|
-
this.
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
}
|
|
17
|
-
this._bindings.push({
|
|
18
|
-
attribute: 'class.et-radio-field--checked',
|
|
19
|
-
observable: this._radio.changes.pipe(startWith(this._radio)).pipe(switchMap((radios) => combineLatest(radios.filter((radio) => !!radio).map((radio) => radio.checked$))), map((checked) => checked.some((value) => value))),
|
|
20
|
-
});
|
|
21
|
-
this._bindings.push({
|
|
22
|
-
attribute: 'class.et-radio-field--disabled',
|
|
23
|
-
observable: this._radio.changes.pipe(startWith(this._radio)).pipe(switchMap((radios) => combineLatest(radios.filter((radio) => !!radio).map((radio) => radio.disabled$))), map((disabled) => disabled.some((value) => value))),
|
|
12
|
+
this._radio$ = new BehaviorSubject(null);
|
|
13
|
+
this.radioQueryList$ = this._radio$.pipe(switchQueryListChanges());
|
|
14
|
+
this.hostClassBindings = signalHostClasses({
|
|
15
|
+
'et-radio-field--checked': toSignal(this.radioQueryList$.pipe(switchMap((radios) => (radios?.length ? combineLatest(radios.map((radio) => radio.disabled$)) : of([]))), map((checked) => checked.some((value) => value)))),
|
|
16
|
+
'et-radio-field--disabled': toSignal(this.radioQueryList$.pipe(switchMap((radios) => (radios?.length ? combineLatest(radios.map((radio) => radio.disabled$)) : of([]))), map((disabled) => disabled.some((value) => value)))),
|
|
24
17
|
});
|
|
25
18
|
}
|
|
19
|
+
set radio(radio) {
|
|
20
|
+
this._radio$.next(radio);
|
|
21
|
+
}
|
|
26
22
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: RadioFieldDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
27
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: RadioFieldDirective, isStandalone: true, providers: [{ provide: RADIO_FIELD_TOKEN, useExisting: RadioFieldDirective }], queries: [{ propertyName: "
|
|
23
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.5", type: RadioFieldDirective, isStandalone: true, providers: [{ provide: RADIO_FIELD_TOKEN, useExisting: RadioFieldDirective }], queries: [{ propertyName: "radio", predicate: i0.forwardRef(function () { return RADIO_TOKEN; }), descendants: true }], exportAs: ["etRadioField"], ngImport: i0 }); }
|
|
28
24
|
}
|
|
29
25
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImport: i0, type: RadioFieldDirective, decorators: [{
|
|
30
26
|
type: Directive,
|
|
@@ -33,8 +29,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.5", ngImpor
|
|
|
33
29
|
providers: [{ provide: RADIO_FIELD_TOKEN, useExisting: RadioFieldDirective }],
|
|
34
30
|
exportAs: 'etRadioField',
|
|
35
31
|
}]
|
|
36
|
-
}], propDecorators: {
|
|
32
|
+
}], propDecorators: { radio: [{
|
|
37
33
|
type: ContentChildren,
|
|
38
34
|
args: [forwardRef(() => RADIO_TOKEN), { descendants: true }]
|
|
39
35
|
}] } });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tZmllbGQuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL2NvbXBvbmVudHMvcmFkaW8vZGlyZWN0aXZlcy9yYWRpby1maWVsZC9yYWRpby1maWVsZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGVBQWUsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxzQkFBc0IsRUFBRSxjQUFjLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFekQsT0FBTyxFQUFFLFdBQVcsRUFBa0IsTUFBTSxVQUFVLENBQUM7O0FBRXZELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUFzQixnQ0FBZ0MsQ0FBQyxDQUFDO0FBTzNHLE1BQU0sT0FBTyxtQkFBbUI7SUFMaEM7UUFNVyxlQUFVLEdBQUcsTUFBTSxDQUFnQyxpQkFBaUIsQ0FBQyxDQUFDO1FBTXZFLFlBQU8sR0FBRyxJQUFJLGVBQWUsQ0FBd0MsSUFBSSxDQUFDLENBQUM7UUFFMUUsb0JBQWUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxzQkFBc0IsRUFBRSxDQUFDLENBQUM7UUFFOUQsc0JBQWlCLEdBQUcsaUJBQWlCLENBQUM7WUFDN0MseUJBQXlCLEVBQUUsUUFBUSxDQUNqQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FDdkIsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDeEcsR0FBRyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNqRCxDQUNGO1lBQ0QsMEJBQTBCLEVBQUUsUUFBUSxDQUNsQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FDdkIsU0FBUyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFDeEcsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUNuRCxDQUNGO1NBQ0YsQ0FBQyxDQUFDO0tBQ0o7SUF0QkMsSUFDSSxLQUFLLENBQUMsS0FBcUM7UUFDN0MsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQzs4R0FOVSxtQkFBbUI7a0dBQW5CLG1CQUFtQixpQ0FIbkIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxtRkFNM0MsV0FBVzs7MkZBSGxDLG1CQUFtQjtrQkFML0IsU0FBUzttQkFBQztvQkFDVCxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxxQkFBcUIsRUFBRSxDQUFDO29CQUM3RSxRQUFRLEVBQUUsY0FBYztpQkFDekI7OEJBS0ssS0FBSztzQkFEUixlQUFlO3VCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxXQUFXLENBQUMsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb250ZW50Q2hpbGRyZW4sIERpcmVjdGl2ZSwgZm9yd2FyZFJlZiwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBzaWduYWxIb3N0Q2xhc3Nlcywgc3dpdGNoUXVlcnlMaXN0Q2hhbmdlcywgVHlwZWRRdWVyeUxpc3QgfSBmcm9tICdAZXRobGV0ZS9jb3JlJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgbWFwLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJbnB1dFN0YXRlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3NlcnZpY2VzJztcbmltcG9ydCB7IFJhZGlvVmFsdWUgfSBmcm9tICcuLi8uLi90eXBlcyc7XG5pbXBvcnQgeyBSQURJT19UT0tFTiwgUmFkaW9EaXJlY3RpdmUgfSBmcm9tICcuLi9yYWRpbyc7XG5cbmV4cG9ydCBjb25zdCBSQURJT19GSUVMRF9UT0tFTiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSYWRpb0ZpZWxkRGlyZWN0aXZlPignRVRfUkFESU9fRklFTERfRElSRUNUSVZFX1RPS0VOJyk7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJBRElPX0ZJRUxEX1RPS0VOLCB1c2VFeGlzdGluZzogUmFkaW9GaWVsZERpcmVjdGl2ZSB9XSxcbiAgZXhwb3J0QXM6ICdldFJhZGlvRmllbGQnLFxufSlcbmV4cG9ydCBjbGFzcyBSYWRpb0ZpZWxkRGlyZWN0aXZlIHtcbiAgcmVhZG9ubHkgaW5wdXRTdGF0ZSA9IGluamVjdDxJbnB1dFN0YXRlU2VydmljZTxSYWRpb1ZhbHVlPj4oSW5wdXRTdGF0ZVNlcnZpY2UpO1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oZm9yd2FyZFJlZigoKSA9PiBSQURJT19UT0tFTiksIHsgZGVzY2VuZGFudHM6IHRydWUgfSlcbiAgc2V0IHJhZGlvKHJhZGlvOiBUeXBlZFF1ZXJ5TGlzdDxSYWRpb0RpcmVjdGl2ZT4pIHtcbiAgICB0aGlzLl9yYWRpbyQubmV4dChyYWRpbyk7XG4gIH1cbiAgcHJpdmF0ZSBfcmFkaW8kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUeXBlZFF1ZXJ5TGlzdDxSYWRpb0RpcmVjdGl2ZT4gfCBudWxsPihudWxsKTtcblxuICByZWFkb25seSByYWRpb1F1ZXJ5TGlzdCQgPSB0aGlzLl9yYWRpbyQucGlwZShzd2l0Y2hRdWVyeUxpc3RDaGFuZ2VzKCkpO1xuXG4gIHJlYWRvbmx5IGhvc3RDbGFzc0JpbmRpbmdzID0gc2lnbmFsSG9zdENsYXNzZXMoe1xuICAgICdldC1yYWRpby1maWVsZC0tY2hlY2tlZCc6IHRvU2lnbmFsKFxuICAgICAgdGhpcy5yYWRpb1F1ZXJ5TGlzdCQucGlwZShcbiAgICAgICAgc3dpdGNoTWFwKChyYWRpb3MpID0+IChyYWRpb3M/Lmxlbmd0aCA/IGNvbWJpbmVMYXRlc3QocmFkaW9zLm1hcCgocmFkaW8pID0+IHJhZGlvLmRpc2FibGVkJCkpIDogb2YoW10pKSksXG4gICAgICAgIG1hcCgoY2hlY2tlZCkgPT4gY2hlY2tlZC5zb21lKCh2YWx1ZSkgPT4gdmFsdWUpKSxcbiAgICAgICksXG4gICAgKSxcbiAgICAnZXQtcmFkaW8tZmllbGQtLWRpc2FibGVkJzogdG9TaWduYWwoXG4gICAgICB0aGlzLnJhZGlvUXVlcnlMaXN0JC5waXBlKFxuICAgICAgICBzd2l0Y2hNYXAoKHJhZGlvcykgPT4gKHJhZGlvcz8ubGVuZ3RoID8gY29tYmluZUxhdGVzdChyYWRpb3MubWFwKChyYWRpbykgPT4gcmFkaW8uZGlzYWJsZWQkKSkgOiBvZihbXSkpKSxcbiAgICAgICAgbWFwKChkaXNhYmxlZCkgPT4gZGlzYWJsZWQuc29tZSgodmFsdWUpID0+IHZhbHVlKSksXG4gICAgICApLFxuICAgICksXG4gIH0pO1xufVxuIl19
|