@radix-ng/primitives 0.5.0 → 0.7.0
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/alert-dialog/README.md +1 -0
- package/alert-dialog/index.d.ts +6 -0
- package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog-content.directive.d.ts +8 -0
- package/alert-dialog/src/alert-dialog-root.directive.d.ts +9 -0
- package/alert-dialog/src/alert-dialog-title.directive.d.ts +5 -0
- package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +7 -0
- package/alert-dialog/src/alert-dialog.service.d.ts +14 -0
- package/avatar/index.d.ts +3 -1
- package/avatar/src/avatar-fallback.directive.d.ts +10 -17
- package/avatar/src/avatar-image.directive.d.ts +10 -11
- package/avatar/src/avatar-root.directive.d.ts +21 -0
- package/avatar/src/avatar.config.d.ts +3 -2
- package/checkbox/src/checkbox.directive.d.ts +5 -3
- package/collapsible/README.md +1 -0
- package/collapsible/index.d.ts +3 -0
- package/collapsible/src/collapsible-content.directive.d.ts +11 -0
- package/collapsible/src/collapsible-root.directive.d.ts +52 -0
- package/collapsible/src/collapsible-trigger.directive.d.ts +26 -0
- package/esm2022/alert-dialog/index.mjs +7 -0
- package/esm2022/alert-dialog/radix-ng-primitives-alert-dialog.mjs +5 -0
- package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +26 -0
- package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +14 -0
- package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +24 -0
- package/esm2022/alert-dialog/src/alert-dialog.service.mjs +45 -0
- package/esm2022/avatar/index.mjs +2 -2
- package/esm2022/avatar/src/avatar-fallback.directive.mjs +23 -30
- package/esm2022/avatar/src/avatar-image.directive.mjs +29 -31
- package/esm2022/avatar/src/avatar-root.directive.mjs +38 -0
- package/esm2022/avatar/src/avatar.config.mjs +2 -2
- package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +3 -3
- package/esm2022/checkbox/src/checkbox.directive.mjs +16 -6
- package/esm2022/collapsible/index.mjs +4 -0
- package/esm2022/collapsible/radix-ng-primitives-collapsible.mjs +5 -0
- package/esm2022/collapsible/src/collapsible-content.directive.mjs +26 -0
- package/esm2022/collapsible/src/collapsible-root.directive.mjs +114 -0
- package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +49 -0
- package/esm2022/label/index.mjs +2 -2
- package/esm2022/label/src/label-root.directive.mjs +48 -0
- package/esm2022/progress/index.mjs +2 -2
- package/esm2022/progress/src/progress-indicator.directive.mjs +11 -10
- package/esm2022/progress/src/progress-root.directive.mjs +71 -0
- package/esm2022/radio/index.mjs +2 -4
- package/esm2022/radio/src/radio-indicator.directive.mjs +8 -13
- package/esm2022/radio/src/radio-item.directive.mjs +27 -42
- package/esm2022/radio/src/radio-root.directive.mjs +104 -0
- package/esm2022/roving-focus/index.mjs +1 -3
- package/esm2022/roving-focus/src/roving-focus-group.directive.mjs +9 -16
- package/esm2022/roving-focus/src/roving-focus-item.directive.mjs +21 -26
- package/esm2022/separator/src/separator.directive.mjs +12 -17
- package/esm2022/switch/index.mjs +3 -3
- package/esm2022/switch/src/switch-input.directive.mjs +30 -0
- package/esm2022/switch/src/switch-root.directive.mjs +71 -0
- package/esm2022/switch/src/switch-thumb.directive.mjs +10 -12
- package/esm2022/toggle/index.mjs +2 -2
- package/esm2022/toggle/src/toggle-root.directive.mjs +49 -0
- package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +9 -14
- package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +4 -4
- package/esm2022/toggle-group/src/toggle-group.directive.mjs +9 -12
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +150 -0
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-avatar.mjs +79 -90
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +18 -8
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +190 -0
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-label.mjs +20 -32
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +55 -49
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +69 -101
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +19 -42
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +12 -17
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +77 -110
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +19 -27
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +16 -32
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/label/index.d.ts +1 -1
- package/label/src/label-root.directive.d.ts +13 -0
- package/package.json +14 -21
- package/progress/index.d.ts +2 -1
- package/progress/src/progress-indicator.directive.d.ts +2 -2
- package/progress/src/progress-root.directive.d.ts +29 -0
- package/radio/index.d.ts +1 -3
- package/radio/src/radio-indicator.directive.d.ts +3 -9
- package/radio/src/radio-item.directive.d.ts +9 -28
- package/radio/src/{radio-group.directive.d.ts → radio-root.directive.d.ts} +24 -17
- package/roving-focus/index.d.ts +0 -2
- package/roving-focus/src/roving-focus-group.directive.d.ts +4 -6
- package/roving-focus/src/roving-focus-item.directive.d.ts +6 -8
- package/separator/src/separator.directive.d.ts +14 -8
- package/switch/index.d.ts +3 -2
- package/switch/src/switch-input.directive.d.ts +6 -0
- package/switch/src/switch-root.directive.d.ts +34 -0
- package/switch/src/switch-thumb.directive.d.ts +2 -5
- package/toggle/index.d.ts +2 -1
- package/toggle/src/toggle-root.directive.d.ts +32 -0
- package/toggle-group/src/toggle-group-button.directive.d.ts +1 -4
- package/toggle-group/src/toggle-group-multi.directive.d.ts +1 -1
- package/toggle-group/src/toggle-group.directive.d.ts +2 -2
- package/accordion/README.md +0 -3
- package/accordion/index.d.ts +0 -7
- package/accordion/src/accordion/accordion.directive.d.ts +0 -64
- package/accordion/src/accordion/accordion.token.d.ts +0 -4
- package/accordion/src/accordion-content/accordion-content.directive.d.ts +0 -44
- package/accordion/src/accordion-header/accordion-header.directive.d.ts +0 -6
- package/accordion/src/accordion-item/accordion-item.directive.d.ts +0 -42
- package/accordion/src/accordion-item/accordion-item.token.d.ts +0 -4
- package/accordion/src/accordion-state.directive.d.ts +0 -28
- package/accordion/src/accordion-trigger/accordion-trigger.directive.d.ts +0 -23
- package/accordion/src/accordion.config.d.ts +0 -25
- package/avatar/src/avatar.directive.d.ts +0 -22
- package/avatar/src/avatar.token.d.ts +0 -4
- package/esm2022/accordion/index.mjs +0 -8
- package/esm2022/accordion/radix-ng-primitives-accordion.mjs +0 -5
- package/esm2022/accordion/src/accordion/accordion.directive.mjs +0 -108
- package/esm2022/accordion/src/accordion/accordion.token.mjs +0 -6
- package/esm2022/accordion/src/accordion-content/accordion-content.directive.mjs +0 -75
- package/esm2022/accordion/src/accordion-header/accordion-header.directive.mjs +0 -17
- package/esm2022/accordion/src/accordion-item/accordion-item.directive.mjs +0 -81
- package/esm2022/accordion/src/accordion-item/accordion-item.token.mjs +0 -6
- package/esm2022/accordion/src/accordion-state.directive.mjs +0 -49
- package/esm2022/accordion/src/accordion-trigger/accordion-trigger.directive.mjs +0 -49
- package/esm2022/accordion/src/accordion.config.mjs +0 -27
- package/esm2022/avatar/src/avatar.directive.mjs +0 -38
- package/esm2022/avatar/src/avatar.token.mjs +0 -6
- package/esm2022/label/src/label.directive.mjs +0 -60
- package/esm2022/overlay/index.mjs +0 -5
- package/esm2022/overlay/radix-ng-primitives-overlay.mjs +0 -5
- package/esm2022/overlay/src/overlay-arrow.directive.mjs +0 -59
- package/esm2022/overlay/src/overlay-arrow.token.mjs +0 -3
- package/esm2022/overlay/src/overlay-trigger.directive.mjs +0 -279
- package/esm2022/overlay/src/overlay-trigger.token.mjs +0 -9
- package/esm2022/overlay/src/overlay.directive.mjs +0 -51
- package/esm2022/overlay/src/overlay.token.mjs +0 -3
- package/esm2022/progress/src/progress.directive.mjs +0 -62
- package/esm2022/progress/src/progress.token.mjs +0 -6
- package/esm2022/radio/src/radio-group.directive.mjs +0 -108
- package/esm2022/radio/src/radio-group.token.mjs +0 -6
- package/esm2022/radio/src/radio-item.token.mjs +0 -6
- package/esm2022/roving-focus/src/roving-focus-group.token.mjs +0 -9
- package/esm2022/roving-focus/src/roving-focus-item.token.mjs +0 -6
- package/esm2022/switch/src/switch.directive.mjs +0 -125
- package/esm2022/switch/src/switch.token.mjs +0 -6
- package/esm2022/toggle/src/toggle.directive.mjs +0 -65
- package/esm2022/visually-hidden/index.mjs +0 -2
- package/esm2022/visually-hidden/radix-ng-primitives-visually-hidden.mjs +0 -5
- package/esm2022/visually-hidden/src/visually-hidden.directive.mjs +0 -42
- package/fesm2022/radix-ng-primitives-accordion.mjs +0 -394
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-overlay.mjs +0 -399
- package/fesm2022/radix-ng-primitives-overlay.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +0 -49
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +0 -1
- package/label/src/label.directive.d.ts +0 -19
- package/overlay/README.md +0 -1
- package/overlay/index.d.ts +0 -4
- package/overlay/src/overlay-arrow.directive.d.ts +0 -29
- package/overlay/src/overlay-arrow.token.d.ts +0 -3
- package/overlay/src/overlay-trigger.directive.d.ts +0 -163
- package/overlay/src/overlay-trigger.token.d.ts +0 -7
- package/overlay/src/overlay.directive.d.ts +0 -29
- package/overlay/src/overlay.token.d.ts +0 -3
- package/progress/src/progress.directive.d.ts +0 -26
- package/progress/src/progress.token.d.ts +0 -4
- package/radio/src/radio-group.token.d.ts +0 -4
- package/radio/src/radio-item.token.d.ts +0 -4
- package/roving-focus/src/roving-focus-group.token.d.ts +0 -7
- package/roving-focus/src/roving-focus-item.token.d.ts +0 -4
- package/switch/src/switch.directive.d.ts +0 -73
- package/switch/src/switch.token.d.ts +0 -4
- package/toggle/src/toggle.directive.d.ts +0 -30
- package/visually-hidden/README.md +0 -3
- package/visually-hidden/index.d.ts +0 -1
- package/visually-hidden/src/visually-hidden.directive.d.ts +0 -11
@@ -0,0 +1,48 @@
|
|
1
|
+
import { Directive, ElementRef, inject, Input, input } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
let idIterator = 0;
|
4
|
+
export class RdxLabelRootDirective {
|
5
|
+
constructor() {
|
6
|
+
this.id = `rdx-label-${idIterator++}`;
|
7
|
+
/**
|
8
|
+
* The id of the element the label is associated with.
|
9
|
+
* @default '-'
|
10
|
+
*/
|
11
|
+
this.htmlFor = input('');
|
12
|
+
this.elementRef = inject((ElementRef));
|
13
|
+
}
|
14
|
+
// prevent text selection when double-clicking label
|
15
|
+
// The main problem with double-clicks in a web app is that
|
16
|
+
// you will have to create special code to handle this on touch enabled devices.
|
17
|
+
onMouseDown(event) {
|
18
|
+
const target = event.target;
|
19
|
+
// only prevent text selection if clicking inside the label itself
|
20
|
+
if (['BUTTON', 'INPUT', 'SELECT', 'TEXTAREA'].includes(target.tagName)) {
|
21
|
+
return;
|
22
|
+
}
|
23
|
+
// prevent text selection when double-clicking label
|
24
|
+
if (this.elementRef.nativeElement.contains(target) &&
|
25
|
+
!event.defaultPrevented &&
|
26
|
+
event.detail > 1) {
|
27
|
+
event.preventDefault();
|
28
|
+
}
|
29
|
+
}
|
30
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxLabelRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
31
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.0.4", type: RdxLabelRootDirective, isStandalone: true, selector: "label[LabelRoot]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: false, isRequired: false, transformFunction: null }, htmlFor: { classPropertyName: "htmlFor", publicName: "htmlFor", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mousedown": "onMouseDown($event)" }, properties: { "attr.id": "this.id", "attr.for": "htmlFor ? htmlFor() : null" } }, exportAs: ["LabelRoot"], ngImport: i0 }); }
|
32
|
+
}
|
33
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxLabelRootDirective, decorators: [{
|
34
|
+
type: Directive,
|
35
|
+
args: [{
|
36
|
+
selector: 'label[LabelRoot]',
|
37
|
+
exportAs: 'LabelRoot',
|
38
|
+
standalone: true,
|
39
|
+
host: {
|
40
|
+
'[attr.id]': 'this.id',
|
41
|
+
'[attr.for]': 'htmlFor ? htmlFor() : null',
|
42
|
+
'(mousedown)': 'onMouseDown($event)'
|
43
|
+
}
|
44
|
+
}]
|
45
|
+
}], propDecorators: { id: [{
|
46
|
+
type: Input
|
47
|
+
}] } });
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwtcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2xhYmVsL3NyYy9sYWJlbC1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFNUUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBWW5CLE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFXYSxPQUFFLEdBQUcsYUFBYSxVQUFVLEVBQUUsRUFBRSxDQUFDO1FBRTFDOzs7V0FHRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFcEIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO0tBc0JqRTtJQXBCRyxvREFBb0Q7SUFDcEQsMkRBQTJEO0lBQzNELGdGQUFnRjtJQUNoRixXQUFXLENBQUMsS0FBaUI7UUFDekIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFFM0Msa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDckUsT0FBTztRQUNYLENBQUM7UUFFRCxvREFBb0Q7UUFDcEQsSUFDSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQzlDLENBQUMsS0FBSyxDQUFDLGdCQUFnQjtZQUN2QixLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDbEIsQ0FBQztZQUNDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQzs4R0E5QlEscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBVmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsV0FBVyxFQUFFLFNBQVM7d0JBQ3RCLFlBQVksRUFBRSw0QkFBNEI7d0JBQzFDLGFBQWEsRUFBRSxxQkFBcUI7cUJBQ3ZDO2lCQUNKOzhCQUVZLEVBQUU7c0JBQVYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IGlkSXRlcmF0b3IgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2xhYmVsW0xhYmVsUm9vdF0nLFxuICAgIGV4cG9ydEFzOiAnTGFiZWxSb290JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmlkXSc6ICd0aGlzLmlkJyxcbiAgICAgICAgJ1thdHRyLmZvcl0nOiAnaHRtbEZvciA/IGh0bWxGb3IoKSA6IG51bGwnLFxuICAgICAgICAnKG1vdXNlZG93biknOiAnb25Nb3VzZURvd24oJGV2ZW50KSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeExhYmVsUm9vdERpcmVjdGl2ZSB7XG4gICAgQElucHV0KCkgaWQgPSBgcmR4LWxhYmVsLSR7aWRJdGVyYXRvcisrfWA7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgaWQgb2YgdGhlIGVsZW1lbnQgdGhlIGxhYmVsIGlzIGFzc29jaWF0ZWQgd2l0aC5cbiAgICAgKiBAZGVmYXVsdCAnLSdcbiAgICAgKi9cbiAgICByZWFkb25seSBodG1sRm9yID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pO1xuXG4gICAgLy8gcHJldmVudCB0ZXh0IHNlbGVjdGlvbiB3aGVuIGRvdWJsZS1jbGlja2luZyBsYWJlbFxuICAgIC8vIFRoZSBtYWluIHByb2JsZW0gd2l0aCBkb3VibGUtY2xpY2tzIGluIGEgd2ViIGFwcCBpcyB0aGF0XG4gICAgLy8geW91IHdpbGwgaGF2ZSB0byBjcmVhdGUgc3BlY2lhbCBjb2RlIHRvIGhhbmRsZSB0aGlzIG9uIHRvdWNoIGVuYWJsZWQgZGV2aWNlcy5cbiAgICBvbk1vdXNlRG93bihldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCB0YXJnZXQgPSBldmVudC50YXJnZXQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgLy8gb25seSBwcmV2ZW50IHRleHQgc2VsZWN0aW9uIGlmIGNsaWNraW5nIGluc2lkZSB0aGUgbGFiZWwgaXRzZWxmXG4gICAgICAgIGlmIChbJ0JVVFRPTicsICdJTlBVVCcsICdTRUxFQ1QnLCAnVEVYVEFSRUEnXS5pbmNsdWRlcyh0YXJnZXQudGFnTmFtZSkpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIHByZXZlbnQgdGV4dCBzZWxlY3Rpb24gd2hlbiBkb3VibGUtY2xpY2tpbmcgbGFiZWxcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQuY29udGFpbnModGFyZ2V0KSAmJlxuICAgICAgICAgICAgIWV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQgJiZcbiAgICAgICAgICAgIGV2ZW50LmRldGFpbCA+IDFcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
@@ -1,3 +1,3 @@
|
|
1
1
|
export * from './src/progress-indicator.directive';
|
2
|
-
export * from './src/progress.directive';
|
3
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
export * from './src/progress-root.directive';
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Byb2dyZXNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3Byb2dyZXNzLWluZGljYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvcHJvZ3Jlc3Mtcm9vdC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgdHlwZSB7IFByb2dyZXNzUHJvcHMgfSBmcm9tICcuL3NyYy9wcm9ncmVzcy1yb290LmRpcmVjdGl2ZSc7XG4iXX0=
|
@@ -1,23 +1,24 @@
|
|
1
1
|
import { Directive } from '@angular/core';
|
2
|
-
import { injectProgress } from './progress.
|
2
|
+
import { injectProgress } from './progress-root.directive';
|
3
3
|
import * as i0 from "@angular/core";
|
4
4
|
export class RdxProgressIndicatorDirective {
|
5
5
|
constructor() {
|
6
|
-
this.
|
6
|
+
this._progress = injectProgress();
|
7
7
|
}
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
9
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
8
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxProgressIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
9
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxProgressIndicatorDirective, isStandalone: true, selector: "div[ProgressIndicator]", host: { properties: { "attr.data-state": "_progress.state", "attr.data-value": "_progress.value", "attr.data-max": "_progress.max" } }, exportAs: ["ProgressIndicator"], ngImport: i0 }); }
|
10
10
|
}
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
11
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxProgressIndicatorDirective, decorators: [{
|
12
12
|
type: Directive,
|
13
13
|
args: [{
|
14
|
-
selector: '[
|
14
|
+
selector: 'div[ProgressIndicator]',
|
15
|
+
exportAs: 'ProgressIndicator',
|
15
16
|
standalone: true,
|
16
17
|
host: {
|
17
|
-
'[attr.data-state]': '
|
18
|
-
'[attr.data-value]': '
|
19
|
-
'[attr.data-max]': '
|
18
|
+
'[attr.data-state]': '_progress.state',
|
19
|
+
'[attr.data-value]': '_progress.value',
|
20
|
+
'[attr.data-max]': '_progress.max'
|
20
21
|
}
|
21
22
|
}]
|
22
23
|
}] });
|
23
|
-
//# sourceMappingURL=data:application/json;base64,
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtaW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBWTNELE1BQU0sT0FBTyw2QkFBNkI7SUFWMUM7UUFXYSxjQUFTLEdBQUcsY0FBYyxFQUFFLENBQUM7S0FDekM7OEdBRlksNkJBQTZCO2tHQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBVnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixtQkFBbUIsRUFBRSxpQkFBaUI7d0JBQ3RDLG1CQUFtQixFQUFFLGlCQUFpQjt3QkFDdEMsaUJBQWlCLEVBQUUsZUFBZTtxQkFDckM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaW5qZWN0UHJvZ3Jlc3MgfSBmcm9tICcuL3Byb2dyZXNzLXJvb3QuZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdkaXZbUHJvZ3Jlc3NJbmRpY2F0b3JdJyxcbiAgICBleHBvcnRBczogJ1Byb2dyZXNzSW5kaWNhdG9yJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ19wcm9ncmVzcy5zdGF0ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLXZhbHVlXSc6ICdfcHJvZ3Jlc3MudmFsdWUnLFxuICAgICAgICAnW2F0dHIuZGF0YS1tYXhdJzogJ19wcm9ncmVzcy5tYXgnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhQcm9ncmVzc0luZGljYXRvckRpcmVjdGl2ZSB7XG4gICAgcmVhZG9ubHkgX3Byb2dyZXNzID0gaW5qZWN0UHJvZ3Jlc3MoKTtcbn1cbiJdfQ==
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { Directive, inject, InjectionToken, Input, numberAttribute } from '@angular/core';
|
2
|
+
import * as i0 from "@angular/core";
|
3
|
+
let idIterator = 0;
|
4
|
+
const MIN_PERCENT = 0;
|
5
|
+
const DEFAULT_MAX = 100;
|
6
|
+
const RdxProgressToken = new InjectionToken('RdxProgressDirective');
|
7
|
+
export function injectProgress() {
|
8
|
+
return inject(RdxProgressToken);
|
9
|
+
}
|
10
|
+
export class RdxProgressRootDirective {
|
11
|
+
constructor() {
|
12
|
+
this.id = `rdx-progress-bar-${idIterator++}`;
|
13
|
+
this.value = MIN_PERCENT;
|
14
|
+
/**
|
15
|
+
* @default 100
|
16
|
+
*/
|
17
|
+
this.max = DEFAULT_MAX;
|
18
|
+
this.valueLabel = (value, max) => this.defaultGetValueLabel(value, max);
|
19
|
+
}
|
20
|
+
/**
|
21
|
+
* Get the state of the progress bar.
|
22
|
+
* @returns 'indeterminate' | 'loading' | 'complete'
|
23
|
+
* @internal
|
24
|
+
*/
|
25
|
+
get state() {
|
26
|
+
return this.getProgressState(this.value, this.max);
|
27
|
+
}
|
28
|
+
getProgressState(value, maxValue) {
|
29
|
+
return value == null ? 'indeterminate' : value === maxValue ? 'complete' : 'loading';
|
30
|
+
}
|
31
|
+
defaultGetValueLabel(value, max) {
|
32
|
+
return `${Math.round((value / max) * 100)}%`;
|
33
|
+
}
|
34
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxProgressRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
35
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxProgressRootDirective, isStandalone: true, selector: "div[ProgressRoot]", inputs: { id: "id", value: ["rdxValue", "value", numberAttribute], max: ["rdxMax", "max", numberAttribute], valueLabel: ["rdxValueLabel", "valueLabel"] }, host: { attributes: { "role": "progressbar", "tabindex": "-1" }, properties: { "attr.id": "id", "attr.aria-valuemax": "max", "attr.aria-valuemin": "0", "attr.aria-valuenow": "value", "attr.aria-valuetext": "valueLabel(value, max)", "attr.data-state": "state", "attr.data-value": "value", "attr.data-max": "max" } }, providers: [{ provide: RdxProgressToken, useExisting: RdxProgressRootDirective }], exportAs: ["ProgressRoot"], ngImport: i0 }); }
|
36
|
+
}
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxProgressRootDirective, decorators: [{
|
38
|
+
type: Directive,
|
39
|
+
args: [{
|
40
|
+
selector: 'div[ProgressRoot]',
|
41
|
+
exportAs: 'ProgressRoot',
|
42
|
+
standalone: true,
|
43
|
+
providers: [{ provide: RdxProgressToken, useExisting: RdxProgressRootDirective }],
|
44
|
+
host: {
|
45
|
+
role: 'progressbar',
|
46
|
+
'[attr.id]': 'id',
|
47
|
+
'[attr.aria-valuemax]': 'max',
|
48
|
+
'[attr.aria-valuemin]': '0',
|
49
|
+
'[attr.aria-valuenow]': 'value',
|
50
|
+
'[attr.aria-valuetext]': 'valueLabel(value, max)',
|
51
|
+
'[attr.data-state]': 'state',
|
52
|
+
'[attr.data-value]': 'value',
|
53
|
+
'[attr.data-max]': 'max',
|
54
|
+
// set tab index to -1 so screen readers will read the aria-label
|
55
|
+
// Note: there is a known issue with JAWS that does not read progressbar aria labels on FireFox
|
56
|
+
tabindex: '-1'
|
57
|
+
}
|
58
|
+
}]
|
59
|
+
}], propDecorators: { id: [{
|
60
|
+
type: Input
|
61
|
+
}], value: [{
|
62
|
+
type: Input,
|
63
|
+
args: [{ alias: 'rdxValue', transform: numberAttribute }]
|
64
|
+
}], max: [{
|
65
|
+
type: Input,
|
66
|
+
args: [{ alias: 'rdxMax', transform: numberAttribute }]
|
67
|
+
}], valueLabel: [{
|
68
|
+
type: Input,
|
69
|
+
args: ['rdxValueLabel']
|
70
|
+
}] } });
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3Mtcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Byb2dyZXNzL3NyYy9wcm9ncmVzcy1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUYsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBRW5CLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQUN0QixNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFFeEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBMkIsc0JBQXNCLENBQUMsQ0FBQztBQUU5RixNQUFNLFVBQVUsY0FBYztJQUMxQixPQUFPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUE4QkQsTUFBTSxPQUFPLHdCQUF3QjtJQXBCckM7UUFxQmEsT0FBRSxHQUFHLG9CQUFvQixVQUFVLEVBQUUsRUFBRSxDQUFDO1FBRVMsVUFBSyxHQUFHLFdBQVcsQ0FBQztRQUU5RTs7V0FFRztRQUNxRCxRQUFHLEdBQUcsV0FBVyxDQUFDO1FBRWxELGVBQVUsR0FBMkMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FDeEYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztLQWtCN0M7SUFoQkc7Ozs7T0FJRztJQUNILElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxLQUFnQyxFQUFFLFFBQWdCO1FBQ3ZFLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN6RixDQUFDO0lBRU8sb0JBQW9CLENBQUMsS0FBYSxFQUFFLEdBQVc7UUFDbkQsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQztJQUNqRCxDQUFDOzhHQTVCUSx3QkFBd0I7a0dBQXhCLHdCQUF3QixzR0FHTSxlQUFlLDBCQUtqQixlQUFlLHlYQXhCekMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQzs7MkZBZ0J4RSx3QkFBd0I7a0JBcEJwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVywwQkFBMEIsRUFBRSxDQUFDO29CQUNqRixJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLGFBQWE7d0JBQ25CLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixzQkFBc0IsRUFBRSxLQUFLO3dCQUM3QixzQkFBc0IsRUFBRSxHQUFHO3dCQUMzQixzQkFBc0IsRUFBRSxPQUFPO3dCQUMvQix1QkFBdUIsRUFBRSx3QkFBd0I7d0JBQ2pELG1CQUFtQixFQUFFLE9BQU87d0JBQzVCLG1CQUFtQixFQUFFLE9BQU87d0JBQzVCLGlCQUFpQixFQUFFLEtBQUs7d0JBQ3hCLGlFQUFpRTt3QkFDakUsK0ZBQStGO3dCQUMvRixRQUFRLEVBQUUsSUFBSTtxQkFDakI7aUJBQ0o7OEJBRVksRUFBRTtzQkFBVixLQUFLO2dCQUVvRCxLQUFLO3NCQUE5RCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUtBLEdBQUc7c0JBQTFELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBRTlCLFVBQVU7c0JBQWpDLEtBQUs7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5sZXQgaWRJdGVyYXRvciA9IDA7XG5cbmNvbnN0IE1JTl9QRVJDRU5UID0gMDtcbmNvbnN0IERFRkFVTFRfTUFYID0gMTAwO1xuXG5jb25zdCBSZHhQcm9ncmVzc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeFByb2dyZXNzUm9vdERpcmVjdGl2ZT4oJ1JkeFByb2dyZXNzRGlyZWN0aXZlJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RQcm9ncmVzcygpOiBSZHhQcm9ncmVzc1Jvb3REaXJlY3RpdmUge1xuICAgIHJldHVybiBpbmplY3QoUmR4UHJvZ3Jlc3NUb2tlbik7XG59XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzU3RhdGUgPSAnaW5kZXRlcm1pbmF0ZScgfCAnbG9hZGluZycgfCAnY29tcGxldGUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzUHJvcHMge1xuICAgIHZhbHVlPzogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgICBtYXg/OiBudW1iZXI7XG4gICAgZ2V0VmFsdWVMYWJlbD86IHN0cmluZztcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdkaXZbUHJvZ3Jlc3NSb290XScsXG4gICAgZXhwb3J0QXM6ICdQcm9ncmVzc1Jvb3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBSZHhQcm9ncmVzc1Rva2VuLCB1c2VFeGlzdGluZzogUmR4UHJvZ3Jlc3NSb290RGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ3Byb2dyZXNzYmFyJyxcbiAgICAgICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVlbWF4XSc6ICdtYXgnLFxuICAgICAgICAnW2F0dHIuYXJpYS12YWx1ZW1pbl0nOiAnMCcsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVlbm93XSc6ICd2YWx1ZScsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVldGV4dF0nOiAndmFsdWVMYWJlbCh2YWx1ZSwgbWF4KScsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdzdGF0ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLXZhbHVlXSc6ICd2YWx1ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLW1heF0nOiAnbWF4JyxcbiAgICAgICAgLy8gc2V0IHRhYiBpbmRleCB0byAtMSBzbyBzY3JlZW4gcmVhZGVycyB3aWxsIHJlYWQgdGhlIGFyaWEtbGFiZWxcbiAgICAgICAgLy8gTm90ZTogdGhlcmUgaXMgYSBrbm93biBpc3N1ZSB3aXRoIEpBV1MgdGhhdCBkb2VzIG5vdCByZWFkIHByb2dyZXNzYmFyIGFyaWEgbGFiZWxzIG9uIEZpcmVGb3hcbiAgICAgICAgdGFiaW5kZXg6ICctMSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFByb2dyZXNzUm9vdERpcmVjdGl2ZSBpbXBsZW1lbnRzIFByb2dyZXNzUHJvcHMge1xuICAgIEBJbnB1dCgpIGlkID0gYHJkeC1wcm9ncmVzcy1iYXItJHtpZEl0ZXJhdG9yKyt9YDtcblxuICAgIEBJbnB1dCh7IGFsaWFzOiAncmR4VmFsdWUnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB2YWx1ZSA9IE1JTl9QRVJDRU5UO1xuXG4gICAgLyoqXG4gICAgICogQGRlZmF1bHQgMTAwXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICdyZHhNYXgnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSBtYXggPSBERUZBVUxUX01BWDtcblxuICAgIEBJbnB1dCgncmR4VmFsdWVMYWJlbCcpIHZhbHVlTGFiZWw6ICh2YWx1ZTogbnVtYmVyLCBtYXg6IG51bWJlcikgPT4gc3RyaW5nID0gKHZhbHVlLCBtYXgpID0+XG4gICAgICAgIHRoaXMuZGVmYXVsdEdldFZhbHVlTGFiZWwodmFsdWUsIG1heCk7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHN0YXRlIG9mIHRoZSBwcm9ncmVzcyBiYXIuXG4gICAgICogQHJldHVybnMgJ2luZGV0ZXJtaW5hdGUnIHwgJ2xvYWRpbmcnIHwgJ2NvbXBsZXRlJ1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIGdldCBzdGF0ZSgpOiBQcm9ncmVzc1N0YXRlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJvZ3Jlc3NTdGF0ZSh0aGlzLnZhbHVlLCB0aGlzLm1heCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQcm9ncmVzc1N0YXRlKHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsLCBtYXhWYWx1ZTogbnVtYmVyKTogUHJvZ3Jlc3NTdGF0ZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA9PSBudWxsID8gJ2luZGV0ZXJtaW5hdGUnIDogdmFsdWUgPT09IG1heFZhbHVlID8gJ2NvbXBsZXRlJyA6ICdsb2FkaW5nJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlZmF1bHRHZXRWYWx1ZUxhYmVsKHZhbHVlOiBudW1iZXIsIG1heDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKCh2YWx1ZSAvIG1heCkgKiAxMDApfSVgO1xuICAgIH1cbn1cbiJdfQ==
|
package/esm2022/radio/index.mjs
CHANGED
@@ -1,6 +1,4 @@
|
|
1
|
-
export * from './src/radio-
|
2
|
-
export * from './src/radio-group.token';
|
1
|
+
export * from './src/radio-root.directive';
|
3
2
|
export * from './src/radio-indicator.directive';
|
4
3
|
export * from './src/radio-item.directive';
|
5
|
-
|
6
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3JhZGlvLWdyb3VwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9yYWRpby1ncm91cC50b2tlbic7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9yYWRpby1pbmRpY2F0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JhZGlvLWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JhZGlvLWl0ZW0udG9rZW4nO1xuIl19
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsNEJBQTRCLENBQUM7QUFFM0MsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvcmFkaW8tcm9vdC5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NyYy9yYWRpby1pbmRpY2F0b3IuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JhZGlvLWl0ZW0uZGlyZWN0aXZlJztcbiJdfQ==
|
@@ -1,25 +1,20 @@
|
|
1
1
|
import { Directive } from '@angular/core';
|
2
|
-
import {
|
3
|
-
import {
|
2
|
+
import { injectRadioItem } from './radio-item.directive';
|
3
|
+
import { injectRadioGroup } from './radio-root.directive';
|
4
4
|
import * as i0 from "@angular/core";
|
5
5
|
export class RdxRadioIndicatorDirective {
|
6
6
|
constructor() {
|
7
|
-
/**
|
8
|
-
* Access the radio group.
|
9
|
-
*/
|
10
7
|
this.radioGroup = injectRadioGroup();
|
11
|
-
/**
|
12
|
-
* Access the radio group item.
|
13
|
-
*/
|
14
8
|
this.radioItem = injectRadioItem();
|
15
9
|
}
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
17
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
10
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
11
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.4", type: RdxRadioIndicatorDirective, isStandalone: true, selector: "[RadioIndicator]", host: { properties: { "attr.data-state": "radioGroup.value === this.radioItem.value ? \"checked\" : \"unchecked\"", "attr.data-disabled": "radioItem.disabled ? \"\" : null" } }, exportAs: ["RadioIndicator"], ngImport: i0 }); }
|
18
12
|
}
|
19
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
13
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioIndicatorDirective, decorators: [{
|
20
14
|
type: Directive,
|
21
15
|
args: [{
|
22
|
-
selector: '[
|
16
|
+
selector: '[RadioIndicator]',
|
17
|
+
exportAs: 'RadioIndicator',
|
23
18
|
standalone: true,
|
24
19
|
host: {
|
25
20
|
'[attr.data-state]': 'radioGroup.value === this.radioItem.value ? "checked" : "unchecked"',
|
@@ -27,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.3", ngImpor
|
|
27
22
|
}
|
28
23
|
}]
|
29
24
|
}] });
|
30
|
-
//# sourceMappingURL=data:application/json;base64,
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcmFkaW8vc3JjL3JhZGlvLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBVzFELE1BQU0sT0FBTywwQkFBMEI7SUFUdkM7UUFVdUIsZUFBVSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFFaEMsY0FBUyxHQUFHLGVBQWUsRUFBRSxDQUFDO0tBQ3BEOzhHQUpZLDBCQUEwQjtrR0FBMUIsMEJBQTBCOzsyRkFBMUIsMEJBQTBCO2tCQVR0QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsbUJBQW1CLEVBQUUscUVBQXFFO3dCQUMxRixzQkFBc0IsRUFBRSxnQ0FBZ0M7cUJBQzNEO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGluamVjdFJhZGlvSXRlbSB9IGZyb20gJy4vcmFkaW8taXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgaW5qZWN0UmFkaW9Hcm91cCB9IGZyb20gJy4vcmFkaW8tcm9vdC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSYWRpb0luZGljYXRvcl0nLFxuICAgIGV4cG9ydEFzOiAnUmFkaW9JbmRpY2F0b3InLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAncmFkaW9Hcm91cC52YWx1ZSA9PT0gdGhpcy5yYWRpb0l0ZW0udmFsdWUgPyBcImNoZWNrZWRcIiA6IFwidW5jaGVja2VkXCInLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAncmFkaW9JdGVtLmRpc2FibGVkID8gXCJcIiA6IG51bGwnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSYWRpb0luZGljYXRvckRpcmVjdGl2ZSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhZGlvR3JvdXAgPSBpbmplY3RSYWRpb0dyb3VwKCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmFkaW9JdGVtID0gaW5qZWN0UmFkaW9JdGVtKCk7XG59XG4iXX0=
|
@@ -1,79 +1,64 @@
|
|
1
|
-
import { booleanAttribute, Directive,
|
1
|
+
import { booleanAttribute, Directive, inject, InjectionToken, Input } from '@angular/core';
|
2
2
|
// eslint-disable-next-line @nx/enforce-module-boundaries
|
3
3
|
import { RdxRovingFocusItemDirective } from '@radix-ng/primitives/roving-focus';
|
4
|
-
import { injectRadioGroup } from './radio-
|
5
|
-
import { RdxRadioItemToken } from './radio-item.token';
|
4
|
+
import { injectRadioGroup } from './radio-root.directive';
|
6
5
|
import * as i0 from "@angular/core";
|
7
6
|
import * as i1 from "@radix-ng/primitives/roving-focus";
|
7
|
+
export const RdxRadioItemToken = new InjectionToken('RadioItemToken');
|
8
|
+
export function injectRadioItem() {
|
9
|
+
return inject(RdxRadioItemToken);
|
10
|
+
}
|
11
|
+
// Increasing integer for generating unique ids for radio components.
|
12
|
+
let nextUniqueId = 0;
|
8
13
|
export class RdxRadioItemDirective {
|
9
14
|
constructor() {
|
10
|
-
/**
|
11
|
-
* Access the radio group.
|
12
|
-
*/
|
13
15
|
this.radioGroup = injectRadioGroup();
|
14
|
-
|
15
|
-
* Whether the radio item is disabled.
|
16
|
-
* @default false
|
17
|
-
*/
|
16
|
+
this.id = `rdx-radio-${++nextUniqueId}`;
|
18
17
|
this.disabled = false;
|
19
18
|
}
|
20
|
-
|
21
|
-
* Handle keydown events.
|
22
|
-
* @param event The keydown event.
|
23
|
-
* @internal
|
24
|
-
*/
|
25
|
-
onKeydown(event) {
|
19
|
+
_onKeydown(event) {
|
26
20
|
// According to WAI ARIA, radio groups don't activate items on enter keypress
|
27
21
|
if (event.key === 'Enter') {
|
28
22
|
event.preventDefault();
|
29
23
|
}
|
30
24
|
}
|
31
|
-
|
32
|
-
* When the item receives focus, select it.
|
33
|
-
* @internal
|
34
|
-
*/
|
35
|
-
onFocus() {
|
25
|
+
_onFocus() {
|
36
26
|
this.radioGroup.select(this.value);
|
37
27
|
}
|
38
|
-
|
39
|
-
|
40
|
-
* @internal
|
41
|
-
*/
|
42
|
-
onClick() {
|
28
|
+
_onClick() {
|
29
|
+
console.log('click');
|
43
30
|
this.radioGroup.select(this.value);
|
44
31
|
}
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
46
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
33
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxRadioItemDirective, isStandalone: true, selector: "[RadioItem]", inputs: { id: "id", value: "value", disabled: ["disabled", "disabled", booleanAttribute] }, host: { attributes: { "type": "button", "role": "radio" }, listeners: { "focus": "_onFocus()", "click": "_onClick()", "keydown": "_onKeydown($event)" }, properties: { "attr.id": "id", "attr.aria-checked": "radioGroup.value === value ? \"true\" : \"false\"", "attr.data-disabled": "disabled ? \"\" : null", "attr.data-state": "radioGroup.value === value ? \"checked\" : \"unchecked\"" } }, providers: [{ provide: RdxRadioItemToken, useExisting: RdxRadioItemDirective }], exportAs: ["RadioItem"], hostDirectives: [{ directive: i1.RdxRovingFocusItemDirective }], ngImport: i0 }); }
|
47
34
|
}
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
35
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioItemDirective, decorators: [{
|
49
36
|
type: Directive,
|
50
37
|
args: [{
|
51
|
-
selector: '
|
38
|
+
selector: '[RadioItem]',
|
39
|
+
exportAs: 'RadioItem',
|
52
40
|
standalone: true,
|
53
41
|
hostDirectives: [RdxRovingFocusItemDirective],
|
54
42
|
providers: [{ provide: RdxRadioItemToken, useExisting: RdxRadioItemDirective }],
|
55
43
|
host: {
|
56
44
|
type: 'button',
|
57
45
|
role: 'radio',
|
46
|
+
'[attr.id]': 'id',
|
58
47
|
'[attr.aria-checked]': 'radioGroup.value === value ? "true" : "false"',
|
59
48
|
'[attr.data-disabled]': 'disabled ? "" : null',
|
60
|
-
'[attr.data-state]': 'radioGroup.value === value ? "checked" : "unchecked"'
|
49
|
+
'[attr.data-state]': 'radioGroup.value === value ? "checked" : "unchecked"',
|
50
|
+
'(focus)': '_onFocus()',
|
51
|
+
'(click)': '_onClick()',
|
52
|
+
'(keydown)': '_onKeydown($event)'
|
61
53
|
}
|
62
54
|
}]
|
63
|
-
}], propDecorators: {
|
55
|
+
}], propDecorators: { id: [{
|
56
|
+
type: Input
|
57
|
+
}], value: [{
|
64
58
|
type: Input,
|
65
59
|
args: [{ required: true }]
|
66
60
|
}], disabled: [{
|
67
61
|
type: Input,
|
68
62
|
args: [{ transform: booleanAttribute }]
|
69
|
-
}], onKeydown: [{
|
70
|
-
type: HostListener,
|
71
|
-
args: ['keydown', ['$event']]
|
72
|
-
}], onFocus: [{
|
73
|
-
type: HostListener,
|
74
|
-
args: ['focus']
|
75
|
-
}], onClick: [{
|
76
|
-
type: HostListener,
|
77
|
-
args: ['click']
|
78
63
|
}] } });
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
64
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL3NyYy9yYWRpby1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNGLHlEQUF5RDtBQUN6RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUF3QixnQkFBZ0IsQ0FBQyxDQUFDO0FBRTdGLE1BQU0sVUFBVSxlQUFlO0lBQzNCLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVELHFFQUFxRTtBQUNyRSxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFxQnJCLE1BQU0sT0FBTyxxQkFBcUI7SUFuQmxDO1FBb0J1QixlQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUUxQyxPQUFFLEdBQUcsYUFBYSxFQUFFLFlBQVksRUFBRSxDQUFDO1FBSUosYUFBUSxHQUFHLEtBQUssQ0FBQztLQWlCNUQ7SUFmRyxVQUFVLENBQUMsS0FBb0I7UUFDM0IsNkVBQTZFO1FBQzdFLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzs4R0F2QlEscUJBQXFCO2tHQUFyQixxQkFBcUIsc0hBT1YsZ0JBQWdCLHFaQXJCekIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsQ0FBQzs7MkZBY3RFLHFCQUFxQjtrQkFuQmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsY0FBYyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDL0UsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxPQUFPO3dCQUNiLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixxQkFBcUIsRUFBRSwrQ0FBK0M7d0JBQ3RFLHNCQUFzQixFQUFFLHNCQUFzQjt3QkFDOUMsbUJBQW1CLEVBQUUsc0RBQXNEO3dCQUUzRSxTQUFTLEVBQUUsWUFBWTt3QkFDdkIsU0FBUyxFQUFFLFlBQVk7d0JBQ3ZCLFdBQVcsRUFBRSxvQkFBb0I7cUJBQ3BDO2lCQUNKOzhCQUlZLEVBQUU7c0JBQVYsS0FBSztnQkFFcUIsS0FBSztzQkFBL0IsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBRWUsUUFBUTtzQkFBL0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmUgfSBmcm9tICdAcmFkaXgtbmcvcHJpbWl0aXZlcy9yb3ZpbmctZm9jdXMnO1xuXG5pbXBvcnQgeyBpbmplY3RSYWRpb0dyb3VwIH0gZnJvbSAnLi9yYWRpby1yb290LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBSZHhSYWRpb0l0ZW1Ub2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHhSYWRpb0l0ZW1EaXJlY3RpdmU+KCdSYWRpb0l0ZW1Ub2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0UmFkaW9JdGVtKCk6IFJkeFJhZGlvSXRlbURpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIGluamVjdChSZHhSYWRpb0l0ZW1Ub2tlbik7XG59XG5cbi8vIEluY3JlYXNpbmcgaW50ZWdlciBmb3IgZ2VuZXJhdGluZyB1bmlxdWUgaWRzIGZvciByYWRpbyBjb21wb25lbnRzLlxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JhZGlvSXRlbV0nLFxuICAgIGV4cG9ydEFzOiAnUmFkaW9JdGVtJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJkeFJhZGlvSXRlbVRva2VuLCB1c2VFeGlzdGluZzogUmR4UmFkaW9JdGVtRGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgIHJvbGU6ICdyYWRpbycsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1jaGVja2VkXSc6ICdyYWRpb0dyb3VwLnZhbHVlID09PSB2YWx1ZSA/IFwidHJ1ZVwiIDogXCJmYWxzZVwiJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAncmFkaW9Hcm91cC52YWx1ZSA9PT0gdmFsdWUgPyBcImNoZWNrZWRcIiA6IFwidW5jaGVja2VkXCInLFxuXG4gICAgICAgICcoZm9jdXMpJzogJ19vbkZvY3VzKCknLFxuICAgICAgICAnKGNsaWNrKSc6ICdfb25DbGljaygpJyxcbiAgICAgICAgJyhrZXlkb3duKSc6ICdfb25LZXlkb3duKCRldmVudCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSYWRpb0l0ZW1EaXJlY3RpdmUge1xuICAgIHByb3RlY3RlZCByZWFkb25seSByYWRpb0dyb3VwID0gaW5qZWN0UmFkaW9Hcm91cCgpO1xuXG4gICAgQElucHV0KCkgaWQgPSBgcmR4LXJhZGlvLSR7KytuZXh0VW5pcXVlSWR9YDtcblxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHZhbHVlITogc3RyaW5nO1xuXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICBfb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIC8vIEFjY29yZGluZyB0byBXQUkgQVJJQSwgcmFkaW8gZ3JvdXBzIGRvbid0IGFjdGl2YXRlIGl0ZW1zIG9uIGVudGVyIGtleXByZXNzXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBfb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBfb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgY29uc29sZS5sb2coJ2NsaWNrJyk7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3QodGhpcy52YWx1ZSk7XG4gICAgfVxufVxuIl19
|
@@ -0,0 +1,104 @@
|
|
1
|
+
import { booleanAttribute, Directive, EventEmitter, inject, InjectionToken, Input, Output } from '@angular/core';
|
2
|
+
import { NG_VALUE_ACCESSOR } from '@angular/forms';
|
3
|
+
// eslint-disable-next-line @nx/enforce-module-boundaries
|
4
|
+
import { RdxRovingFocusGroupDirective } from '@radix-ng/primitives/roving-focus';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
import * as i1 from "@radix-ng/primitives/roving-focus";
|
7
|
+
export const RdxRadioGroupToken = new InjectionToken('RdxRadioGroupToken');
|
8
|
+
export function injectRadioGroup() {
|
9
|
+
return inject(RdxRadioGroupToken);
|
10
|
+
}
|
11
|
+
export class RdxRadioGroupDirective {
|
12
|
+
constructor() {
|
13
|
+
this.disabled = false;
|
14
|
+
/**
|
15
|
+
* The orientation of the radio group only vertical.
|
16
|
+
* Horizontal radio buttons can sometimes be challenging to scan and localize.
|
17
|
+
* The horizontal arrangement of radio buttons may also lead to difficulties in determining which
|
18
|
+
* label corresponds to which button: whether the label is above or below the button.
|
19
|
+
* @default 'vertical'
|
20
|
+
*/
|
21
|
+
this._orientation = 'vertical';
|
22
|
+
/**
|
23
|
+
* Event handler called when the value changes.
|
24
|
+
*/
|
25
|
+
this.onValueChange = new EventEmitter();
|
26
|
+
}
|
27
|
+
/**
|
28
|
+
* Select a radio item.
|
29
|
+
* @param value The value of the radio item to select.
|
30
|
+
*/
|
31
|
+
select(value) {
|
32
|
+
this.value = value;
|
33
|
+
this.onValueChange.emit(value);
|
34
|
+
this.onChange?.(value);
|
35
|
+
}
|
36
|
+
/**
|
37
|
+
* Update the value of the radio group.
|
38
|
+
* @param value The new value of the radio group.
|
39
|
+
* @internal
|
40
|
+
*/
|
41
|
+
writeValue(value) {
|
42
|
+
this.value = value;
|
43
|
+
}
|
44
|
+
/**
|
45
|
+
* Register a callback function to call when the value of the radio group changes.
|
46
|
+
* @param fn The callback function to call when the value of the radio group changes.
|
47
|
+
* @internal
|
48
|
+
*/
|
49
|
+
registerOnChange(fn) {
|
50
|
+
this.onChange = fn;
|
51
|
+
}
|
52
|
+
registerOnTouched(fn) {
|
53
|
+
this.onTouched = fn;
|
54
|
+
}
|
55
|
+
/**
|
56
|
+
* Set the disabled state of the radio group.
|
57
|
+
* @param isDisabled Whether the radio group is disabled.
|
58
|
+
* @internal
|
59
|
+
*/
|
60
|
+
setDisabledState(isDisabled) {
|
61
|
+
this.disabled = isDisabled;
|
62
|
+
}
|
63
|
+
/**
|
64
|
+
* When focus leaves the radio group.
|
65
|
+
*/
|
66
|
+
_onFocusout() {
|
67
|
+
this.onTouched?.();
|
68
|
+
}
|
69
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
70
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxRadioGroupDirective, isStandalone: true, selector: "div[RadioRoot]", inputs: { value: "value", disabled: ["disabled", "disabled", booleanAttribute], dir: "dir" }, outputs: { onValueChange: "onValueChange" }, host: { attributes: { "role": "radiogroup" }, listeners: { "focusout": "_onFocusout()" }, properties: { "attr.aria-orientation": "_orientation", "attr.data-disabled": "disabled ? \"\" : null", "attr.dir": "dir" } }, providers: [
|
71
|
+
{ provide: RdxRadioGroupToken, useExisting: RdxRadioGroupDirective },
|
72
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: RdxRadioGroupDirective, multi: true }
|
73
|
+
], exportAs: ["RadioRoot"], hostDirectives: [{ directive: i1.RdxRovingFocusGroupDirective }], ngImport: i0 }); }
|
74
|
+
}
|
75
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRadioGroupDirective, decorators: [{
|
76
|
+
type: Directive,
|
77
|
+
args: [{
|
78
|
+
selector: 'div[RadioRoot]',
|
79
|
+
exportAs: 'RadioRoot',
|
80
|
+
standalone: true,
|
81
|
+
providers: [
|
82
|
+
{ provide: RdxRadioGroupToken, useExisting: RdxRadioGroupDirective },
|
83
|
+
{ provide: NG_VALUE_ACCESSOR, useExisting: RdxRadioGroupDirective, multi: true }
|
84
|
+
],
|
85
|
+
hostDirectives: [RdxRovingFocusGroupDirective],
|
86
|
+
host: {
|
87
|
+
role: 'radiogroup',
|
88
|
+
'[attr.aria-orientation]': '_orientation',
|
89
|
+
'[attr.data-disabled]': 'disabled ? "" : null',
|
90
|
+
'[attr.dir]': 'dir',
|
91
|
+
'(focusout)': '_onFocusout()'
|
92
|
+
}
|
93
|
+
}]
|
94
|
+
}], propDecorators: { value: [{
|
95
|
+
type: Input
|
96
|
+
}], disabled: [{
|
97
|
+
type: Input,
|
98
|
+
args: [{ transform: booleanAttribute }]
|
99
|
+
}], dir: [{
|
100
|
+
type: Input
|
101
|
+
}], onValueChange: [{
|
102
|
+
type: Output
|
103
|
+
}] } });
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL3NyYy9yYWRpby1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLGNBQWMsRUFDZCxLQUFLLEVBQ0wsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBd0IsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUV6RSx5REFBeUQ7QUFDekQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sbUNBQW1DLENBQUM7OztBQUVqRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLGNBQWMsQ0FBeUIsb0JBQW9CLENBQUMsQ0FBQztBQUVuRyxNQUFNLFVBQVUsZ0JBQWdCO0lBQzVCLE9BQU8sTUFBTSxDQUFDLGtCQUFrQixDQUFDLENBQUM7QUFDdEMsQ0FBQztBQThCRCxNQUFNLE9BQU8sc0JBQXNCO0lBbEJuQztRQXFCNEMsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUl6RDs7Ozs7O1dBTUc7UUFDTSxpQkFBWSxHQUFHLFVBQVUsQ0FBQztRQUVuQzs7V0FFRztRQUNnQixrQkFBYSxHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7S0E2RGpFO0lBL0NHOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxLQUFhO1FBQ2hCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1FBQ25CLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFVBQVUsQ0FBQyxLQUFhO1FBQ3BCLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO0lBQ3ZCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLENBQUMsRUFBMkI7UUFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztJQUMvQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxXQUFXO1FBQ1AsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLENBQUM7SUFDdkIsQ0FBQzs4R0EvRVEsc0JBQXNCO2tHQUF0QixzQkFBc0IsK0dBR1gsZ0JBQWdCLGlTQWpCekI7WUFDUCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUU7WUFDcEUsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7U0FDbkY7OzJGQVdRLHNCQUFzQjtrQkFsQmxDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixTQUFTLEVBQUU7d0JBQ1AsRUFBRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsV0FBVyx3QkFBd0IsRUFBRTt3QkFDcEUsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyx3QkFBd0IsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFO3FCQUNuRjtvQkFDRCxjQUFjLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztvQkFDOUMsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxZQUFZO3dCQUNsQix5QkFBeUIsRUFBRSxjQUFjO3dCQUN6QyxzQkFBc0IsRUFBRSxzQkFBc0I7d0JBQzlDLFlBQVksRUFBRSxLQUFLO3dCQUVuQixZQUFZLEVBQUUsZUFBZTtxQkFDaEM7aUJBQ0o7OEJBRVksS0FBSztzQkFBYixLQUFLO2dCQUVrQyxRQUFRO3NCQUEvQyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUU3QixHQUFHO3NCQUFYLEtBQUs7Z0JBY2EsYUFBYTtzQkFBL0IsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBEaXJlY3RpdmUsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBJbnB1dCxcbiAgICBPdXRwdXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSB9IGZyb20gJ0ByYWRpeC1uZy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cyc7XG5cbmV4cG9ydCBjb25zdCBSZHhSYWRpb0dyb3VwVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UmR4UmFkaW9Hcm91cERpcmVjdGl2ZT4oJ1JkeFJhZGlvR3JvdXBUb2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0UmFkaW9Hcm91cCgpOiBSZHhSYWRpb0dyb3VwRGlyZWN0aXZlIHtcbiAgICByZXR1cm4gaW5qZWN0KFJkeFJhZGlvR3JvdXBUb2tlbik7XG59XG5cbmludGVyZmFjZSBSYWRpb0dyb3VwUHJvcHMge1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgZGlzYWJsZWQ/OiBib29sZWFuO1xuICAgIC8vIFRPRE86IGRpcj86IHN0cmluZztcbiAgICAvLyBUT0RPOiBsb29wPzogc3RyaW5nO1xuICAgIGRlZmF1bHRWYWx1ZT86IHN0cmluZztcbiAgICB2YWx1ZT86IHN0cmluZztcbiAgICBvblZhbHVlQ2hhbmdlPzogRXZlbnRFbWl0dGVyPHN0cmluZz47XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnZGl2W1JhZGlvUm9vdF0nLFxuICAgIGV4cG9ydEFzOiAnUmFkaW9Sb290JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7IHByb3ZpZGU6IFJkeFJhZGlvR3JvdXBUb2tlbiwgdXNlRXhpc3Rpbmc6IFJkeFJhZGlvR3JvdXBEaXJlY3RpdmUgfSxcbiAgICAgICAgeyBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUiwgdXNlRXhpc3Rpbmc6IFJkeFJhZGlvR3JvdXBEaXJlY3RpdmUsIG11bHRpOiB0cnVlIH1cbiAgICBdLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZV0sXG4gICAgaG9zdDoge1xuICAgICAgICByb2xlOiAncmFkaW9ncm91cCcsXG4gICAgICAgICdbYXR0ci5hcmlhLW9yaWVudGF0aW9uXSc6ICdfb3JpZW50YXRpb24nLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQgPyBcIlwiIDogbnVsbCcsXG4gICAgICAgICdbYXR0ci5kaXJdJzogJ2RpcicsXG5cbiAgICAgICAgJyhmb2N1c291dCknOiAnX29uRm9jdXNvdXQoKSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFJhZGlvR3JvdXBEaXJlY3RpdmUgaW1wbGVtZW50cyBSYWRpb0dyb3VwUHJvcHMsIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcbiAgICBASW5wdXQoKSB2YWx1ZT86IHN0cmluZztcblxuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgQElucHV0KCkgZGlyPzogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9yaWVudGF0aW9uIG9mIHRoZSByYWRpbyBncm91cCBvbmx5IHZlcnRpY2FsLlxuICAgICAqIEhvcml6b250YWwgcmFkaW8gYnV0dG9ucyBjYW4gc29tZXRpbWVzIGJlIGNoYWxsZW5naW5nIHRvIHNjYW4gYW5kIGxvY2FsaXplLlxuICAgICAqIFRoZSBob3Jpem9udGFsIGFycmFuZ2VtZW50IG9mIHJhZGlvIGJ1dHRvbnMgbWF5IGFsc28gbGVhZCB0byBkaWZmaWN1bHRpZXMgaW4gZGV0ZXJtaW5pbmcgd2hpY2hcbiAgICAgKiBsYWJlbCBjb3JyZXNwb25kcyB0byB3aGljaCBidXR0b246IHdoZXRoZXIgdGhlIGxhYmVsIGlzIGFib3ZlIG9yIGJlbG93IHRoZSBidXR0b24uXG4gICAgICogQGRlZmF1bHQgJ3ZlcnRpY2FsJ1xuICAgICAqL1xuICAgIHJlYWRvbmx5IF9vcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBoYW5kbGVyIGNhbGxlZCB3aGVuIHRoZSB2YWx1ZSBjaGFuZ2VzLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKSByZWFkb25seSBvblZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gZ3JvdXAgY2hhbmdlcy5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcml2YXRlIG9uQ2hhbmdlPzogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSByYWRpbyBncm91cCBpcyB0b3VjaGVkLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByaXZhdGUgb25Ub3VjaGVkPzogKCkgPT4gdm9pZDtcblxuICAgIC8qKlxuICAgICAqIFNlbGVjdCBhIHJhZGlvIGl0ZW0uXG4gICAgICogQHBhcmFtIHZhbHVlIFRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gaXRlbSB0byBzZWxlY3QuXG4gICAgICovXG4gICAgc2VsZWN0KHZhbHVlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgdGhpcy52YWx1ZSA9IHZhbHVlO1xuICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UuZW1pdCh2YWx1ZSk7XG4gICAgICAgIHRoaXMub25DaGFuZ2U/Lih2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlIHRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gZ3JvdXAuXG4gICAgICogQHBhcmFtIHZhbHVlIFRoZSBuZXcgdmFsdWUgb2YgdGhlIHJhZGlvIGdyb3VwLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0ZXIgYSBjYWxsYmFjayBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSByYWRpbyBncm91cCBjaGFuZ2VzLlxuICAgICAqIEBwYXJhbSBmbiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gZ3JvdXAgY2hhbmdlcy5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAodmFsdWU6IHN0cmluZykgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46ICgpID0+IHZvaWQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXQgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSByYWRpbyBncm91cC5cbiAgICAgKiBAcGFyYW0gaXNEaXNhYmxlZCBXaGV0aGVyIHRoZSByYWRpbyBncm91cCBpcyBkaXNhYmxlZC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hlbiBmb2N1cyBsZWF2ZXMgdGhlIHJhZGlvIGdyb3VwLlxuICAgICAqL1xuICAgIF9vbkZvY3Vzb3V0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZD8uKCk7XG4gICAgfVxufVxuIl19
|
@@ -1,5 +1,3 @@
|
|
1
1
|
export * from './src/roving-focus-group.directive';
|
2
|
-
export * from './src/roving-focus-group.token';
|
3
2
|
export * from './src/roving-focus-item.directive';
|
4
|
-
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAudG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1pdGVtLnRva2VuJztcbiJdfQ==
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1pdGVtLmRpcmVjdGl2ZSc7XG4iXX0=
|