@radix-ng/primitives 0.5.0 → 0.6.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.
Files changed (180) hide show
  1. package/alert-dialog/README.md +1 -0
  2. package/alert-dialog/index.d.ts +6 -0
  3. package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +7 -0
  4. package/alert-dialog/src/alert-dialog-content.directive.d.ts +8 -0
  5. package/alert-dialog/src/alert-dialog-root.directive.d.ts +9 -0
  6. package/alert-dialog/src/alert-dialog-title.directive.d.ts +5 -0
  7. package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +7 -0
  8. package/alert-dialog/src/alert-dialog.service.d.ts +14 -0
  9. package/avatar/index.d.ts +3 -1
  10. package/avatar/src/avatar-fallback.directive.d.ts +10 -17
  11. package/avatar/src/avatar-image.directive.d.ts +10 -11
  12. package/avatar/src/avatar-root.directive.d.ts +21 -0
  13. package/avatar/src/avatar.config.d.ts +3 -2
  14. package/checkbox/src/checkbox.directive.d.ts +2 -1
  15. package/collapsible/README.md +1 -0
  16. package/collapsible/index.d.ts +3 -0
  17. package/collapsible/src/collapsible-content.directive.d.ts +11 -0
  18. package/collapsible/src/collapsible-root.directive.d.ts +52 -0
  19. package/collapsible/src/collapsible-trigger.directive.d.ts +26 -0
  20. package/esm2022/alert-dialog/index.mjs +7 -0
  21. package/esm2022/alert-dialog/radix-ng-primitives-alert-dialog.mjs +5 -0
  22. package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +24 -0
  23. package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +26 -0
  24. package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +24 -0
  25. package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +14 -0
  26. package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +24 -0
  27. package/esm2022/alert-dialog/src/alert-dialog.service.mjs +45 -0
  28. package/esm2022/avatar/index.mjs +2 -2
  29. package/esm2022/avatar/src/avatar-fallback.directive.mjs +23 -30
  30. package/esm2022/avatar/src/avatar-image.directive.mjs +29 -31
  31. package/esm2022/avatar/src/avatar-root.directive.mjs +38 -0
  32. package/esm2022/avatar/src/avatar.config.mjs +2 -2
  33. package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +4 -4
  34. package/esm2022/checkbox/src/checkbox.directive.mjs +4 -4
  35. package/esm2022/collapsible/index.mjs +4 -0
  36. package/esm2022/collapsible/radix-ng-primitives-collapsible.mjs +5 -0
  37. package/esm2022/collapsible/src/collapsible-content.directive.mjs +26 -0
  38. package/esm2022/collapsible/src/collapsible-root.directive.mjs +114 -0
  39. package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +49 -0
  40. package/esm2022/label/index.mjs +2 -2
  41. package/esm2022/label/src/label-root.directive.mjs +48 -0
  42. package/esm2022/progress/index.mjs +2 -2
  43. package/esm2022/progress/src/progress-indicator.directive.mjs +11 -10
  44. package/esm2022/progress/src/progress-root.directive.mjs +71 -0
  45. package/esm2022/radio/index.mjs +2 -4
  46. package/esm2022/radio/src/radio-indicator.directive.mjs +8 -13
  47. package/esm2022/radio/src/radio-item.directive.mjs +27 -42
  48. package/esm2022/radio/src/radio-root.directive.mjs +106 -0
  49. package/esm2022/roving-focus/index.mjs +1 -3
  50. package/esm2022/roving-focus/src/roving-focus-group.directive.mjs +9 -16
  51. package/esm2022/roving-focus/src/roving-focus-item.directive.mjs +21 -26
  52. package/esm2022/separator/src/separator.directive.mjs +12 -17
  53. package/esm2022/switch/index.mjs +2 -3
  54. package/esm2022/switch/src/switch-root.directive.mjs +74 -0
  55. package/esm2022/switch/src/switch-thumb.directive.mjs +10 -12
  56. package/esm2022/toggle/index.mjs +2 -2
  57. package/esm2022/toggle/src/toggle-root.directive.mjs +51 -0
  58. package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +4 -4
  59. package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +4 -4
  60. package/esm2022/toggle-group/src/toggle-group.directive.mjs +4 -4
  61. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +150 -0
  62. package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -0
  63. package/fesm2022/radix-ng-primitives-avatar.mjs +79 -90
  64. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
  65. package/fesm2022/radix-ng-primitives-checkbox.mjs +6 -6
  66. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
  67. package/fesm2022/radix-ng-primitives-collapsible.mjs +190 -0
  68. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -0
  69. package/fesm2022/radix-ng-primitives-label.mjs +20 -32
  70. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
  71. package/fesm2022/radix-ng-primitives-progress.mjs +55 -49
  72. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
  73. package/fesm2022/radix-ng-primitives-radio.mjs +70 -100
  74. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  75. package/fesm2022/radix-ng-primitives-roving-focus.mjs +19 -42
  76. package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
  77. package/fesm2022/radix-ng-primitives-separator.mjs +12 -17
  78. package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
  79. package/fesm2022/radix-ng-primitives-switch.mjs +49 -106
  80. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
  81. package/fesm2022/radix-ng-primitives-toggle-group.mjs +9 -9
  82. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
  83. package/fesm2022/radix-ng-primitives-toggle.mjs +15 -29
  84. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
  85. package/label/index.d.ts +1 -1
  86. package/label/src/label-root.directive.d.ts +13 -0
  87. package/package.json +12 -19
  88. package/progress/index.d.ts +2 -1
  89. package/progress/src/progress-indicator.directive.d.ts +2 -2
  90. package/progress/src/progress-root.directive.d.ts +29 -0
  91. package/radio/index.d.ts +1 -3
  92. package/radio/src/radio-indicator.directive.d.ts +3 -9
  93. package/radio/src/radio-item.directive.d.ts +9 -28
  94. package/radio/src/{radio-group.directive.d.ts → radio-root.directive.d.ts} +24 -16
  95. package/roving-focus/index.d.ts +0 -2
  96. package/roving-focus/src/roving-focus-group.directive.d.ts +4 -6
  97. package/roving-focus/src/roving-focus-item.directive.d.ts +6 -8
  98. package/separator/src/separator.directive.d.ts +14 -8
  99. package/switch/index.d.ts +2 -2
  100. package/switch/src/switch-root.directive.d.ts +35 -0
  101. package/switch/src/switch-thumb.directive.d.ts +2 -5
  102. package/toggle/index.d.ts +2 -1
  103. package/toggle/src/toggle-root.directive.d.ts +32 -0
  104. package/toggle-group/src/toggle-group-multi.directive.d.ts +1 -1
  105. package/toggle-group/src/toggle-group.directive.d.ts +1 -1
  106. package/accordion/README.md +0 -3
  107. package/accordion/index.d.ts +0 -7
  108. package/accordion/src/accordion/accordion.directive.d.ts +0 -64
  109. package/accordion/src/accordion/accordion.token.d.ts +0 -4
  110. package/accordion/src/accordion-content/accordion-content.directive.d.ts +0 -44
  111. package/accordion/src/accordion-header/accordion-header.directive.d.ts +0 -6
  112. package/accordion/src/accordion-item/accordion-item.directive.d.ts +0 -42
  113. package/accordion/src/accordion-item/accordion-item.token.d.ts +0 -4
  114. package/accordion/src/accordion-state.directive.d.ts +0 -28
  115. package/accordion/src/accordion-trigger/accordion-trigger.directive.d.ts +0 -23
  116. package/accordion/src/accordion.config.d.ts +0 -25
  117. package/avatar/src/avatar.directive.d.ts +0 -22
  118. package/avatar/src/avatar.token.d.ts +0 -4
  119. package/esm2022/accordion/index.mjs +0 -8
  120. package/esm2022/accordion/radix-ng-primitives-accordion.mjs +0 -5
  121. package/esm2022/accordion/src/accordion/accordion.directive.mjs +0 -108
  122. package/esm2022/accordion/src/accordion/accordion.token.mjs +0 -6
  123. package/esm2022/accordion/src/accordion-content/accordion-content.directive.mjs +0 -75
  124. package/esm2022/accordion/src/accordion-header/accordion-header.directive.mjs +0 -17
  125. package/esm2022/accordion/src/accordion-item/accordion-item.directive.mjs +0 -81
  126. package/esm2022/accordion/src/accordion-item/accordion-item.token.mjs +0 -6
  127. package/esm2022/accordion/src/accordion-state.directive.mjs +0 -49
  128. package/esm2022/accordion/src/accordion-trigger/accordion-trigger.directive.mjs +0 -49
  129. package/esm2022/accordion/src/accordion.config.mjs +0 -27
  130. package/esm2022/avatar/src/avatar.directive.mjs +0 -38
  131. package/esm2022/avatar/src/avatar.token.mjs +0 -6
  132. package/esm2022/label/src/label.directive.mjs +0 -60
  133. package/esm2022/overlay/index.mjs +0 -5
  134. package/esm2022/overlay/radix-ng-primitives-overlay.mjs +0 -5
  135. package/esm2022/overlay/src/overlay-arrow.directive.mjs +0 -59
  136. package/esm2022/overlay/src/overlay-arrow.token.mjs +0 -3
  137. package/esm2022/overlay/src/overlay-trigger.directive.mjs +0 -279
  138. package/esm2022/overlay/src/overlay-trigger.token.mjs +0 -9
  139. package/esm2022/overlay/src/overlay.directive.mjs +0 -51
  140. package/esm2022/overlay/src/overlay.token.mjs +0 -3
  141. package/esm2022/progress/src/progress.directive.mjs +0 -62
  142. package/esm2022/progress/src/progress.token.mjs +0 -6
  143. package/esm2022/radio/src/radio-group.directive.mjs +0 -108
  144. package/esm2022/radio/src/radio-group.token.mjs +0 -6
  145. package/esm2022/radio/src/radio-item.token.mjs +0 -6
  146. package/esm2022/roving-focus/src/roving-focus-group.token.mjs +0 -9
  147. package/esm2022/roving-focus/src/roving-focus-item.token.mjs +0 -6
  148. package/esm2022/switch/src/switch.directive.mjs +0 -125
  149. package/esm2022/switch/src/switch.token.mjs +0 -6
  150. package/esm2022/toggle/src/toggle.directive.mjs +0 -65
  151. package/esm2022/visually-hidden/index.mjs +0 -2
  152. package/esm2022/visually-hidden/radix-ng-primitives-visually-hidden.mjs +0 -5
  153. package/esm2022/visually-hidden/src/visually-hidden.directive.mjs +0 -42
  154. package/fesm2022/radix-ng-primitives-accordion.mjs +0 -394
  155. package/fesm2022/radix-ng-primitives-accordion.mjs.map +0 -1
  156. package/fesm2022/radix-ng-primitives-overlay.mjs +0 -399
  157. package/fesm2022/radix-ng-primitives-overlay.mjs.map +0 -1
  158. package/fesm2022/radix-ng-primitives-visually-hidden.mjs +0 -49
  159. package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +0 -1
  160. package/label/src/label.directive.d.ts +0 -19
  161. package/overlay/README.md +0 -1
  162. package/overlay/index.d.ts +0 -4
  163. package/overlay/src/overlay-arrow.directive.d.ts +0 -29
  164. package/overlay/src/overlay-arrow.token.d.ts +0 -3
  165. package/overlay/src/overlay-trigger.directive.d.ts +0 -163
  166. package/overlay/src/overlay-trigger.token.d.ts +0 -7
  167. package/overlay/src/overlay.directive.d.ts +0 -29
  168. package/overlay/src/overlay.token.d.ts +0 -3
  169. package/progress/src/progress.directive.d.ts +0 -26
  170. package/progress/src/progress.token.d.ts +0 -4
  171. package/radio/src/radio-group.token.d.ts +0 -4
  172. package/radio/src/radio-item.token.d.ts +0 -4
  173. package/roving-focus/src/roving-focus-group.token.d.ts +0 -7
  174. package/roving-focus/src/roving-focus-item.token.d.ts +0 -4
  175. package/switch/src/switch.directive.d.ts +0 -73
  176. package/switch/src/switch.token.d.ts +0 -4
  177. package/toggle/src/toggle.directive.d.ts +0 -30
  178. package/visually-hidden/README.md +0 -3
  179. package/visually-hidden/index.d.ts +0 -1
  180. 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: "17.3.11", ngImport: i0, type: RdxLabelRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "17.3.11", 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: "17.3.11", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGFiZWwtcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL2xhYmVsL3NyYy9sYWJlbC1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFNUUsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBWW5CLE1BQU0sT0FBTyxxQkFBcUI7SUFWbEM7UUFXYSxPQUFFLEdBQUcsYUFBYSxVQUFVLEVBQUUsRUFBRSxDQUFDO1FBRTFDOzs7V0FHRztRQUNNLFlBQU8sR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFFcEIsZUFBVSxHQUFHLE1BQU0sQ0FBQyxDQUFBLFVBQXVCLENBQUEsQ0FBQyxDQUFDO0tBc0JqRTtJQXBCRyxvREFBb0Q7SUFDcEQsMkRBQTJEO0lBQzNELGdGQUFnRjtJQUNoRixXQUFXLENBQUMsS0FBaUI7UUFDekIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQXFCLENBQUM7UUFFM0Msa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxVQUFVLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDckUsT0FBTztRQUNYLENBQUM7UUFFRCxvREFBb0Q7UUFDcEQsSUFDSSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQzlDLENBQUMsS0FBSyxDQUFDLGdCQUFnQjtZQUN2QixLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFDbEIsQ0FBQztZQUNDLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUMzQixDQUFDO0lBQ0wsQ0FBQzsrR0E5QlEscUJBQXFCO21HQUFyQixxQkFBcUI7OzRGQUFyQixxQkFBcUI7a0JBVmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsUUFBUSxFQUFFLFdBQVc7b0JBQ3JCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsV0FBVyxFQUFFLFNBQVM7d0JBQ3RCLFlBQVksRUFBRSw0QkFBNEI7d0JBQzFDLGFBQWEsRUFBRSxxQkFBcUI7cUJBQ3ZDO2lCQUNKOzhCQUVZLEVBQUU7c0JBQVYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgaW5qZWN0LCBJbnB1dCwgaW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IGlkSXRlcmF0b3IgPSAwO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2xhYmVsW0xhYmVsUm9vdF0nLFxuICAgIGV4cG9ydEFzOiAnTGFiZWxSb290JyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmlkXSc6ICd0aGlzLmlkJyxcbiAgICAgICAgJ1thdHRyLmZvcl0nOiAnaHRtbEZvciA/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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Byb2dyZXNzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywwQkFBMEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vc3JjL3Byb2dyZXNzLWluZGljYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvcHJvZ3Jlc3MuZGlyZWN0aXZlJztcbiJdfQ==
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.token';
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.progress = injectProgress();
6
+ this._progress = injectProgress();
7
7
  }
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.3", ngImport: i0, type: RdxProgressIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.3", type: RdxProgressIndicatorDirective, isStandalone: true, selector: "[rdxProgressIndicator]", host: { properties: { "attr.data-state": "progress.state", "attr.data-value": "progress.value", "attr.data-max": "progress.max" } }, ngImport: i0 }); }
8
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxProgressIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
9
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", 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: "17.3.3", ngImport: i0, type: RdxProgressIndicatorDirective, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxProgressIndicatorDirective, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
- selector: '[rdxProgressIndicator]',
14
+ selector: 'div[ProgressIndicator]',
15
+ exportAs: 'ProgressIndicator',
15
16
  standalone: true,
16
17
  host: {
17
- '[attr.data-state]': 'progress.state',
18
- '[attr.data-value]': 'progress.value',
19
- '[attr.data-max]': 'progress.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtaW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBV2xELE1BQU0sT0FBTyw2QkFBNkI7SUFUMUM7UUFVdUIsYUFBUSxHQUFHLGNBQWMsRUFBRSxDQUFDO0tBQ2xEOzhHQUZZLDZCQUE2QjtrR0FBN0IsNkJBQTZCOzsyRkFBN0IsNkJBQTZCO2tCQVR6QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx3QkFBd0I7b0JBQ2xDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsbUJBQW1CLEVBQUUsZ0JBQWdCO3dCQUNyQyxtQkFBbUIsRUFBRSxnQkFBZ0I7d0JBQ3JDLGlCQUFpQixFQUFFLGNBQWM7cUJBQ3BDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGluamVjdFByb2dyZXNzIH0gZnJvbSAnLi9wcm9ncmVzcy50b2tlbic7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeFByb2dyZXNzSW5kaWNhdG9yXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdwcm9ncmVzcy5zdGF0ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLXZhbHVlXSc6ICdwcm9ncmVzcy52YWx1ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLW1heF0nOiAncHJvZ3Jlc3MubWF4J1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4UHJvZ3Jlc3NJbmRpY2F0b3JEaXJlY3RpdmUge1xuICAgIHByb3RlY3RlZCByZWFkb25seSBwcm9ncmVzcyA9IGluamVjdFByb2dyZXNzKCk7XG59XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtaW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcHJvZ3Jlc3Mvc3JjL3Byb2dyZXNzLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7O0FBWTNELE1BQU0sT0FBTyw2QkFBNkI7SUFWMUM7UUFXYSxjQUFTLEdBQUcsY0FBYyxFQUFFLENBQUM7S0FDekM7K0dBRlksNkJBQTZCO21HQUE3Qiw2QkFBNkI7OzRGQUE3Qiw2QkFBNkI7a0JBVnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsUUFBUSxFQUFFLG1CQUFtQjtvQkFDN0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixtQkFBbUIsRUFBRSxpQkFBaUI7d0JBQ3RDLG1CQUFtQixFQUFFLGlCQUFpQjt3QkFDdEMsaUJBQWlCLEVBQUUsZUFBZTtxQkFDckM7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaW5qZWN0UHJvZ3Jlc3MgfSBmcm9tICcuL3Byb2dyZXNzLXJvb3QuZGlyZWN0aXZlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdkaXZbUHJvZ3Jlc3NJbmRpY2F0b3JdJyxcbiAgICBleHBvcnRBczogJ1Byb2dyZXNzSW5kaWNhdG9yJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ19wcm9ncmVzcy5zdGF0ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLXZhbHVlXSc6ICdfcHJvZ3Jlc3MudmFsdWUnLFxuICAgICAgICAnW2F0dHIuZGF0YS1tYXhdJzogJ19wcm9ncmVzcy5tYXgnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhQcm9ncmVzc0luZGljYXRvckRpcmVjdGl2ZSB7XG4gICAgcmVhZG9ubHkgX3Byb2dyZXNzID0gaW5qZWN0UHJvZ3Jlc3MoKTtcbn1cbiJdfQ==
@@ -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: "17.3.11", ngImport: i0, type: RdxProgressRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
35
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.11", 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: "17.3.11", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3Mtcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3Byb2dyZXNzL3NyYy9wcm9ncmVzcy1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFFMUYsSUFBSSxVQUFVLEdBQUcsQ0FBQyxDQUFDO0FBRW5CLE1BQU0sV0FBVyxHQUFHLENBQUMsQ0FBQztBQUN0QixNQUFNLFdBQVcsR0FBRyxHQUFHLENBQUM7QUFFeEIsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLGNBQWMsQ0FBMkIsc0JBQXNCLENBQUMsQ0FBQztBQUU5RixNQUFNLFVBQVUsY0FBYztJQUMxQixPQUFPLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUE4QkQsTUFBTSxPQUFPLHdCQUF3QjtJQXBCckM7UUFxQmEsT0FBRSxHQUFHLG9CQUFvQixVQUFVLEVBQUUsRUFBRSxDQUFDO1FBRVMsVUFBSyxHQUFHLFdBQVcsQ0FBQztRQUU5RTs7V0FFRztRQUNxRCxRQUFHLEdBQUcsV0FBVyxDQUFDO1FBRWxELGVBQVUsR0FBMkMsQ0FBQyxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsQ0FDeEYsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztLQWtCN0M7SUFoQkc7Ozs7T0FJRztJQUNILElBQUksS0FBSztRQUNMLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxLQUFnQyxFQUFFLFFBQWdCO1FBQ3ZFLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxLQUFLLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQztJQUN6RixDQUFDO0lBRU8sb0JBQW9CLENBQUMsS0FBYSxFQUFFLEdBQVc7UUFDbkQsT0FBTyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLEdBQUcsR0FBRyxDQUFDLEdBQUcsQ0FBQztJQUNqRCxDQUFDOytHQTVCUSx3QkFBd0I7bUdBQXhCLHdCQUF3QixzR0FHTSxlQUFlLDBCQUtqQixlQUFlLHlYQXhCekMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQzs7NEZBZ0J4RSx3QkFBd0I7a0JBcEJwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxjQUFjO29CQUN4QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVywwQkFBMEIsRUFBRSxDQUFDO29CQUNqRixJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLGFBQWE7d0JBQ25CLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixzQkFBc0IsRUFBRSxLQUFLO3dCQUM3QixzQkFBc0IsRUFBRSxHQUFHO3dCQUMzQixzQkFBc0IsRUFBRSxPQUFPO3dCQUMvQix1QkFBdUIsRUFBRSx3QkFBd0I7d0JBQ2pELG1CQUFtQixFQUFFLE9BQU87d0JBQzVCLG1CQUFtQixFQUFFLE9BQU87d0JBQzVCLGlCQUFpQixFQUFFLEtBQUs7d0JBQ3hCLGlFQUFpRTt3QkFDakUsK0ZBQStGO3dCQUMvRixRQUFRLEVBQUUsSUFBSTtxQkFDakI7aUJBQ0o7OEJBRVksRUFBRTtzQkFBVixLQUFLO2dCQUVvRCxLQUFLO3NCQUE5RCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUtBLEdBQUc7c0JBQTFELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxlQUFlLEVBQUU7Z0JBRTlCLFVBQVU7c0JBQWpDLEtBQUs7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQsIG51bWJlckF0dHJpYnV0ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5sZXQgaWRJdGVyYXRvciA9IDA7XG5cbmNvbnN0IE1JTl9QRVJDRU5UID0gMDtcbmNvbnN0IERFRkFVTFRfTUFYID0gMTAwO1xuXG5jb25zdCBSZHhQcm9ncmVzc1Rva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeFByb2dyZXNzUm9vdERpcmVjdGl2ZT4oJ1JkeFByb2dyZXNzRGlyZWN0aXZlJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RQcm9ncmVzcygpOiBSZHhQcm9ncmVzc1Jvb3REaXJlY3RpdmUge1xuICAgIHJldHVybiBpbmplY3QoUmR4UHJvZ3Jlc3NUb2tlbik7XG59XG5cbmV4cG9ydCB0eXBlIFByb2dyZXNzU3RhdGUgPSAnaW5kZXRlcm1pbmF0ZScgfCAnbG9hZGluZycgfCAnY29tcGxldGUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFByb2dyZXNzUHJvcHMge1xuICAgIHZhbHVlPzogbnVtYmVyIHwgbnVsbCB8IHVuZGVmaW5lZDtcbiAgICBtYXg/OiBudW1iZXI7XG4gICAgZ2V0VmFsdWVMYWJlbD86IHN0cmluZztcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdkaXZbUHJvZ3Jlc3NSb290XScsXG4gICAgZXhwb3J0QXM6ICdQcm9ncmVzc1Jvb3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBSZHhQcm9ncmVzc1Rva2VuLCB1c2VFeGlzdGluZzogUmR4UHJvZ3Jlc3NSb290RGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ3Byb2dyZXNzYmFyJyxcbiAgICAgICAgJ1thdHRyLmlkXSc6ICdpZCcsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVlbWF4XSc6ICdtYXgnLFxuICAgICAgICAnW2F0dHIuYXJpYS12YWx1ZW1pbl0nOiAnMCcsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVlbm93XSc6ICd2YWx1ZScsXG4gICAgICAgICdbYXR0ci5hcmlhLXZhbHVldGV4dF0nOiAndmFsdWVMYWJlbCh2YWx1ZSwgbWF4KScsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdzdGF0ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLXZhbHVlXSc6ICd2YWx1ZScsXG4gICAgICAgICdbYXR0ci5kYXRhLW1heF0nOiAnbWF4JyxcbiAgICAgICAgLy8gc2V0IHRhYiBpbmRleCB0byAtMSBzbyBzY3JlZW4gcmVhZGVycyB3aWxsIHJlYWQgdGhlIGFyaWEtbGFiZWxcbiAgICAgICAgLy8gTm90ZTogdGhlcmUgaXMgYSBrbm93biBpc3N1ZSB3aXRoIEpBV1MgdGhhdCBkb2VzIG5vdCByZWFkIHByb2dyZXNzYmFyIGFyaWEgbGFiZWxzIG9uIEZpcmVGb3hcbiAgICAgICAgdGFiaW5kZXg6ICctMSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFByb2dyZXNzUm9vdERpcmVjdGl2ZSBpbXBsZW1lbnRzIFByb2dyZXNzUHJvcHMge1xuICAgIEBJbnB1dCgpIGlkID0gYHJkeC1wcm9ncmVzcy1iYXItJHtpZEl0ZXJhdG9yKyt9YDtcblxuICAgIEBJbnB1dCh7IGFsaWFzOiAncmR4VmFsdWUnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSB2YWx1ZSA9IE1JTl9QRVJDRU5UO1xuXG4gICAgLyoqXG4gICAgICogQGRlZmF1bHQgMTAwXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICdyZHhNYXgnLCB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZSB9KSBtYXggPSBERUZBVUxUX01BWDtcblxuICAgIEBJbnB1dCgncmR4VmFsdWVMYWJlbCcpIHZhbHVlTGFiZWw6ICh2YWx1ZTogbnVtYmVyLCBtYXg6IG51bWJlcikgPT4gc3RyaW5nID0gKHZhbHVlLCBtYXgpID0+XG4gICAgICAgIHRoaXMuZGVmYXVsdEdldFZhbHVlTGFiZWwodmFsdWUsIG1heCk7XG5cbiAgICAvKipcbiAgICAgKiBHZXQgdGhlIHN0YXRlIG9mIHRoZSBwcm9ncmVzcyBiYXIuXG4gICAgICogQHJldHVybnMgJ2luZGV0ZXJtaW5hdGUnIHwgJ2xvYWRpbmcnIHwgJ2NvbXBsZXRlJ1xuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIGdldCBzdGF0ZSgpOiBQcm9ncmVzc1N0YXRlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ2V0UHJvZ3Jlc3NTdGF0ZSh0aGlzLnZhbHVlLCB0aGlzLm1heCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQcm9ncmVzc1N0YXRlKHZhbHVlOiBudW1iZXIgfCB1bmRlZmluZWQgfCBudWxsLCBtYXhWYWx1ZTogbnVtYmVyKTogUHJvZ3Jlc3NTdGF0ZSB7XG4gICAgICAgIHJldHVybiB2YWx1ZSA9PSBudWxsID8gJ2luZGV0ZXJtaW5hdGUnIDogdmFsdWUgPT09IG1heFZhbHVlID8gJ2NvbXBsZXRlJyA6ICdsb2FkaW5nJztcbiAgICB9XG5cbiAgICBwcml2YXRlIGRlZmF1bHRHZXRWYWx1ZUxhYmVsKHZhbHVlOiBudW1iZXIsIG1heDogbnVtYmVyKSB7XG4gICAgICAgIHJldHVybiBgJHtNYXRoLnJvdW5kKCh2YWx1ZSAvIG1heCkgKiAxMDApfSVgO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,6 +1,4 @@
1
- export * from './src/radio-group.directive';
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
- export * from './src/radio-item.token';
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 { injectRadioGroup } from './radio-group.token';
3
- import { injectRadioItem } from './radio-item.token';
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.3.3", ngImport: i0, type: RdxRadioIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.3", type: RdxRadioIndicatorDirective, isStandalone: true, selector: "[rdxRadioIndicator]", host: { properties: { "attr.data-state": "radioGroup.value === this.radioItem.value ? \"checked\" : \"unchecked\"", "attr.data-disabled": "radioItem.disabled ? \"\" : null" } }, ngImport: i0 }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
11
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.11", 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: "17.3.3", ngImport: i0, type: RdxRadioIndicatorDirective, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioIndicatorDirective, decorators: [{
20
14
  type: Directive,
21
15
  args: [{
22
- selector: '[rdxRadioIndicator]',
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcmFkaW8vc3JjL3JhZGlvLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7O0FBVXJELE1BQU0sT0FBTywwQkFBMEI7SUFSdkM7UUFTSTs7V0FFRztRQUNnQixlQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUVuRDs7V0FFRztRQUNnQixjQUFTLEdBQUcsZUFBZSxFQUFFLENBQUM7S0FDcEQ7OEdBVlksMEJBQTBCO2tHQUExQiwwQkFBMEI7OzJGQUExQiwwQkFBMEI7a0JBUnRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLElBQUksRUFBRTt3QkFDRixtQkFBbUIsRUFBRSxxRUFBcUU7d0JBQzFGLHNCQUFzQixFQUFFLGdDQUFnQztxQkFDM0Q7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgaW5qZWN0UmFkaW9Hcm91cCB9IGZyb20gJy4vcmFkaW8tZ3JvdXAudG9rZW4nO1xuaW1wb3J0IHsgaW5qZWN0UmFkaW9JdGVtIH0gZnJvbSAnLi9yYWRpby1pdGVtLnRva2VuJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4UmFkaW9JbmRpY2F0b3JdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ3JhZGlvR3JvdXAudmFsdWUgPT09IHRoaXMucmFkaW9JdGVtLnZhbHVlID8gXCJjaGVja2VkXCIgOiBcInVuY2hlY2tlZFwiJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ3JhZGlvSXRlbS5kaXNhYmxlZCA/IFwiXCIgOiBudWxsJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4UmFkaW9JbmRpY2F0b3JEaXJlY3RpdmUge1xuICAgIC8qKlxuICAgICAqIEFjY2VzcyB0aGUgcmFkaW8gZ3JvdXAuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhZGlvR3JvdXAgPSBpbmplY3RSYWRpb0dyb3VwKCk7XG5cbiAgICAvKipcbiAgICAgKiBBY2Nlc3MgdGhlIHJhZGlvIGdyb3VwIGl0ZW0uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhZGlvSXRlbSA9IGluamVjdFJhZGlvSXRlbSgpO1xufVxuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taW5kaWNhdG9yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcmFkaW8vc3JjL3JhZGlvLWluZGljYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBVzFELE1BQU0sT0FBTywwQkFBMEI7SUFUdkM7UUFVdUIsZUFBVSxHQUFHLGdCQUFnQixFQUFFLENBQUM7UUFFaEMsY0FBUyxHQUFHLGVBQWUsRUFBRSxDQUFDO0tBQ3BEOytHQUpZLDBCQUEwQjttR0FBMUIsMEJBQTBCOzs0RkFBMUIsMEJBQTBCO2tCQVR0QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsbUJBQW1CLEVBQUUscUVBQXFFO3dCQUMxRixzQkFBc0IsRUFBRSxnQ0FBZ0M7cUJBQzNEO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IGluamVjdFJhZGlvSXRlbSB9IGZyb20gJy4vcmFkaW8taXRlbS5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgaW5qZWN0UmFkaW9Hcm91cCB9IGZyb20gJy4vcmFkaW8tcm9vdC5kaXJlY3RpdmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSYWRpb0luZGljYXRvcl0nLFxuICAgIGV4cG9ydEFzOiAnUmFkaW9JbmRpY2F0b3InLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAncmFkaW9Hcm91cC52YWx1ZSA9PT0gdGhpcy5yYWRpb0l0ZW0udmFsdWUgPyBcImNoZWNrZWRcIiA6IFwidW5jaGVja2VkXCInLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAncmFkaW9JdGVtLmRpc2FibGVkID8gXCJcIiA6IG51bGwnXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSYWRpb0luZGljYXRvckRpcmVjdGl2ZSB7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IHJhZGlvR3JvdXAgPSBpbmplY3RSYWRpb0dyb3VwKCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmFkaW9JdGVtID0gaW5qZWN0UmFkaW9JdGVtKCk7XG59XG4iXX0=
@@ -1,79 +1,64 @@
1
- import { booleanAttribute, Directive, HostListener, Input } from '@angular/core';
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-group.token';
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
- * When the item receives a click, select it.
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: "17.3.3", ngImport: i0, type: RdxRadioItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
46
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.3", type: RdxRadioItemDirective, isStandalone: true, selector: "button[rdxRadioItem]", inputs: { value: "value", disabled: ["disabled", "disabled", booleanAttribute] }, host: { attributes: { "type": "button", "role": "radio" }, listeners: { "keydown": "onKeydown($event)", "focus": "onFocus()", "click": "onClick()" }, properties: { "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 }], hostDirectives: [{ directive: i1.RdxRovingFocusItemDirective }], ngImport: i0 }); }
32
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
33
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.11", 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: "17.3.3", ngImport: i0, type: RdxRadioItemDirective, decorators: [{
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioItemDirective, decorators: [{
49
36
  type: Directive,
50
37
  args: [{
51
- selector: 'button[rdxRadioItem]',
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: { value: [{
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL3NyYy9yYWRpby1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFakYseURBQXlEO0FBQ3pELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRWhGLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG9CQUFvQixDQUFDOzs7QUFldkQsTUFBTSxPQUFPLHFCQUFxQjtJQWJsQztRQWNJOztXQUVHO1FBQ2dCLGVBQVUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBT25EOzs7V0FHRztRQUNxQyxhQUFRLEdBQUcsS0FBSyxDQUFDO0tBZ0M1RDtJQTlCRzs7OztPQUlHO0lBRU8sU0FBUyxDQUFDLEtBQW9CO1FBQ3BDLDZFQUE2RTtRQUM3RSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFLENBQUM7WUFDeEIsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBQzNCLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBRU8sT0FBTztRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQ7OztPQUdHO0lBRU8sT0FBTztRQUNiLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QyxDQUFDOzhHQTlDUSxxQkFBcUI7a0dBQXJCLHFCQUFxQixxSEFlVixnQkFBZ0IsaVlBeEJ6QixDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxxQkFBcUIsRUFBRSxDQUFDOzsyRkFTdEUscUJBQXFCO2tCQWJqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixjQUFjLEVBQUUsQ0FBQywyQkFBMkIsQ0FBQztvQkFDN0MsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsV0FBVyx1QkFBdUIsRUFBRSxDQUFDO29CQUMvRSxJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLFFBQVE7d0JBQ2QsSUFBSSxFQUFFLE9BQU87d0JBQ2IscUJBQXFCLEVBQUUsK0NBQStDO3dCQUN0RSxzQkFBc0IsRUFBRSxzQkFBc0I7d0JBQzlDLG1CQUFtQixFQUFFLHNEQUFzRDtxQkFDOUU7aUJBQ0o7OEJBVThCLEtBQUs7c0JBQS9CLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU1lLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBUTVCLFNBQVM7c0JBRGxCLFlBQVk7dUJBQUMsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQWF6QixPQUFPO3NCQURoQixZQUFZO3VCQUFDLE9BQU87Z0JBVVgsT0FBTztzQkFEaEIsWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBIb3N0TGlzdGVuZXIsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAbngvZW5mb3JjZS1tb2R1bGUtYm91bmRhcmllc1xuaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlIH0gZnJvbSAnQHJhZGl4LW5nL3ByaW1pdGl2ZXMvcm92aW5nLWZvY3VzJztcblxuaW1wb3J0IHsgaW5qZWN0UmFkaW9Hcm91cCB9IGZyb20gJy4vcmFkaW8tZ3JvdXAudG9rZW4nO1xuaW1wb3J0IHsgUmR4UmFkaW9JdGVtVG9rZW4gfSBmcm9tICcuL3JhZGlvLWl0ZW0udG9rZW4nO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2J1dHRvbltyZHhSYWRpb0l0ZW1dJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJkeFJhZGlvSXRlbVRva2VuLCB1c2VFeGlzdGluZzogUmR4UmFkaW9JdGVtRGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgIHJvbGU6ICdyYWRpbycsXG4gICAgICAgICdbYXR0ci5hcmlhLWNoZWNrZWRdJzogJ3JhZGlvR3JvdXAudmFsdWUgPT09IHZhbHVlID8gXCJ0cnVlXCIgOiBcImZhbHNlXCInLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAnZGlzYWJsZWQgPyBcIlwiIDogbnVsbCcsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdyYWRpb0dyb3VwLnZhbHVlID09PSB2YWx1ZSA/IFwiY2hlY2tlZFwiIDogXCJ1bmNoZWNrZWRcIidcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFJhZGlvSXRlbURpcmVjdGl2ZSB7XG4gICAgLyoqXG4gICAgICogQWNjZXNzIHRoZSByYWRpbyBncm91cC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgcmFkaW9Hcm91cCA9IGluamVjdFJhZGlvR3JvdXAoKTtcblxuICAgIC8qKlxuICAgICAqIFRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gaXRlbS5cbiAgICAgKi9cbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSB2YWx1ZSE6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIHJhZGlvIGl0ZW0gaXMgZGlzYWJsZWQuXG4gICAgICogQGRlZmF1bHQgZmFsc2VcbiAgICAgKi9cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEhhbmRsZSBrZXlkb3duIGV2ZW50cy5cbiAgICAgKiBAcGFyYW0gZXZlbnQgVGhlIGtleWRvd24gZXZlbnQuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5ZG93bicsIFsnJGV2ZW50J10pXG4gICAgcHJvdGVjdGVkIG9uS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICAvLyBBY2NvcmRpbmcgdG8gV0FJIEFSSUEsIHJhZGlvIGdyb3VwcyBkb24ndCBhY3RpdmF0ZSBpdGVtcyBvbiBlbnRlciBrZXlwcmVzc1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnRW50ZXInKSB7XG4gICAgICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogV2hlbiB0aGUgaXRlbSByZWNlaXZlcyBmb2N1cywgc2VsZWN0IGl0LlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2ZvY3VzJylcbiAgICBwcm90ZWN0ZWQgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIHRoZSBpdGVtIHJlY2VpdmVzIGEgY2xpY2ssIHNlbGVjdCBpdC5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBASG9zdExpc3RlbmVyKCdjbGljaycpXG4gICAgcHJvdGVjdGVkIG9uQ2xpY2soKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3QodGhpcy52YWx1ZSk7XG4gICAgfVxufVxuIl19
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8taXRlbS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL3NyYy9yYWRpby1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNGLHlEQUF5RDtBQUN6RCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBRTFELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLElBQUksY0FBYyxDQUF3QixnQkFBZ0IsQ0FBQyxDQUFDO0FBRTdGLE1BQU0sVUFBVSxlQUFlO0lBQzNCLE9BQU8sTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7QUFDckMsQ0FBQztBQUVELHFFQUFxRTtBQUNyRSxJQUFJLFlBQVksR0FBRyxDQUFDLENBQUM7QUFxQnJCLE1BQU0sT0FBTyxxQkFBcUI7SUFuQmxDO1FBb0J1QixlQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUUxQyxPQUFFLEdBQUcsYUFBYSxFQUFFLFlBQVksRUFBRSxDQUFDO1FBSUosYUFBUSxHQUFHLEtBQUssQ0FBQztLQWlCNUQ7SUFmRyxVQUFVLENBQUMsS0FBb0I7UUFDM0IsNkVBQTZFO1FBQzdFLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxPQUFPLEVBQUUsQ0FBQztZQUN4QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDM0IsQ0FBQztJQUNMLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxRQUFRO1FBQ0osT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNyQixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0F2QlEscUJBQXFCO21HQUFyQixxQkFBcUIsc0hBT1YsZ0JBQWdCLHFaQXJCekIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUscUJBQXFCLEVBQUUsQ0FBQzs7NEZBY3RFLHFCQUFxQjtrQkFuQmpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGFBQWE7b0JBQ3ZCLFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsY0FBYyxFQUFFLENBQUMsMkJBQTJCLENBQUM7b0JBQzdDLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLFdBQVcsdUJBQXVCLEVBQUUsQ0FBQztvQkFDL0UsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxRQUFRO3dCQUNkLElBQUksRUFBRSxPQUFPO3dCQUNiLFdBQVcsRUFBRSxJQUFJO3dCQUNqQixxQkFBcUIsRUFBRSwrQ0FBK0M7d0JBQ3RFLHNCQUFzQixFQUFFLHNCQUFzQjt3QkFDOUMsbUJBQW1CLEVBQUUsc0RBQXNEO3dCQUUzRSxTQUFTLEVBQUUsWUFBWTt3QkFDdkIsU0FBUyxFQUFFLFlBQVk7d0JBQ3ZCLFdBQVcsRUFBRSxvQkFBb0I7cUJBQ3BDO2lCQUNKOzhCQUlZLEVBQUU7c0JBQVYsS0FBSztnQkFFcUIsS0FBSztzQkFBL0IsS0FBSzt1QkFBQyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUU7Z0JBRWUsUUFBUTtzQkFBL0MsS0FBSzt1QkFBQyxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJvb2xlYW5BdHRyaWJ1dGUsIERpcmVjdGl2ZSwgaW5qZWN0LCBJbmplY3Rpb25Ub2tlbiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBueC9lbmZvcmNlLW1vZHVsZS1ib3VuZGFyaWVzXG5pbXBvcnQgeyBSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmUgfSBmcm9tICdAcmFkaXgtbmcvcHJpbWl0aXZlcy9yb3ZpbmctZm9jdXMnO1xuXG5pbXBvcnQgeyBpbmplY3RSYWRpb0dyb3VwIH0gZnJvbSAnLi9yYWRpby1yb290LmRpcmVjdGl2ZSc7XG5cbmV4cG9ydCBjb25zdCBSZHhSYWRpb0l0ZW1Ub2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHhSYWRpb0l0ZW1EaXJlY3RpdmU+KCdSYWRpb0l0ZW1Ub2tlbicpO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0UmFkaW9JdGVtKCk6IFJkeFJhZGlvSXRlbURpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIGluamVjdChSZHhSYWRpb0l0ZW1Ub2tlbik7XG59XG5cbi8vIEluY3JlYXNpbmcgaW50ZWdlciBmb3IgZ2VuZXJhdGluZyB1bmlxdWUgaWRzIGZvciByYWRpbyBjb21wb25lbnRzLlxubGV0IG5leHRVbmlxdWVJZCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JhZGlvSXRlbV0nLFxuICAgIGV4cG9ydEFzOiAnUmFkaW9JdGVtJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXSxcbiAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFJkeFJhZGlvSXRlbVRva2VuLCB1c2VFeGlzdGluZzogUmR4UmFkaW9JdGVtRGlyZWN0aXZlIH1dLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgdHlwZTogJ2J1dHRvbicsXG4gICAgICAgIHJvbGU6ICdyYWRpbycsXG4gICAgICAgICdbYXR0ci5pZF0nOiAnaWQnLFxuICAgICAgICAnW2F0dHIuYXJpYS1jaGVja2VkXSc6ICdyYWRpb0dyb3VwLnZhbHVlID09PSB2YWx1ZSA/IFwidHJ1ZVwiIDogXCJmYWxzZVwiJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAncmFkaW9Hcm91cC52YWx1ZSA9PT0gdmFsdWUgPyBcImNoZWNrZWRcIiA6IFwidW5jaGVja2VkXCInLFxuXG4gICAgICAgICcoZm9jdXMpJzogJ19vbkZvY3VzKCknLFxuICAgICAgICAnKGNsaWNrKSc6ICdfb25DbGljaygpJyxcbiAgICAgICAgJyhrZXlkb3duKSc6ICdfb25LZXlkb3duKCRldmVudCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSYWRpb0l0ZW1EaXJlY3RpdmUge1xuICAgIHByb3RlY3RlZCByZWFkb25seSByYWRpb0dyb3VwID0gaW5qZWN0UmFkaW9Hcm91cCgpO1xuXG4gICAgQElucHV0KCkgaWQgPSBgcmR4LXJhZGlvLSR7KytuZXh0VW5pcXVlSWR9YDtcblxuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHZhbHVlITogc3RyaW5nO1xuXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIGRpc2FibGVkID0gZmFsc2U7XG5cbiAgICBfb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIC8vIEFjY29yZGluZyB0byBXQUkgQVJJQSwgcmFkaW8gZ3JvdXBzIGRvbid0IGFjdGl2YXRlIGl0ZW1zIG9uIGVudGVyIGtleXByZXNzXG4gICAgICAgIGlmIChldmVudC5rZXkgPT09ICdFbnRlcicpIHtcbiAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBfb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5yYWRpb0dyb3VwLnNlbGVjdCh0aGlzLnZhbHVlKTtcbiAgICB9XG5cbiAgICBfb25DbGljaygpOiB2b2lkIHtcbiAgICAgICAgY29uc29sZS5sb2coJ2NsaWNrJyk7XG4gICAgICAgIHRoaXMucmFkaW9Hcm91cC5zZWxlY3QodGhpcy52YWx1ZSk7XG4gICAgfVxufVxuIl19
@@ -0,0 +1,106 @@
1
+ import { booleanAttribute, ChangeDetectorRef, 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(changeDetector) {
13
+ this.changeDetector = changeDetector;
14
+ this.disabled = false;
15
+ /**
16
+ * The orientation of the radio group only vertical.
17
+ * Horizontal radio buttons can sometimes be challenging to scan and localize.
18
+ * The horizontal arrangement of radio buttons may also lead to difficulties in determining which
19
+ * label corresponds to which button: whether the label is above or below the button.
20
+ * @default 'vertical'
21
+ */
22
+ this._orientation = 'vertical';
23
+ /**
24
+ * Event emitted when the value of the radio group changes.
25
+ */
26
+ this.onValueChange = new EventEmitter();
27
+ }
28
+ /**
29
+ * Select a radio item.
30
+ * @param value The value of the radio item to select.
31
+ */
32
+ select(value) {
33
+ this.value = value;
34
+ this.onValueChange.emit(value);
35
+ this.onChange?.(value);
36
+ }
37
+ /**
38
+ * Update the value of the radio group.
39
+ * @param value The new value of the radio group.
40
+ * @internal
41
+ */
42
+ writeValue(value) {
43
+ this.value = value;
44
+ this.changeDetector.markForCheck();
45
+ }
46
+ /**
47
+ * Register a callback function to call when the value of the radio group changes.
48
+ * @param fn The callback function to call when the value of the radio group changes.
49
+ * @internal
50
+ */
51
+ registerOnChange(fn) {
52
+ this.onChange = fn;
53
+ }
54
+ registerOnTouched(fn) {
55
+ this.onTouched = fn;
56
+ }
57
+ /**
58
+ * Set the disabled state of the radio group.
59
+ * @param isDisabled Whether the radio group is disabled.
60
+ * @internal
61
+ */
62
+ setDisabledState(isDisabled) {
63
+ this.disabled = isDisabled;
64
+ this.changeDetector.markForCheck();
65
+ }
66
+ /**
67
+ * When focus leaves the radio group.
68
+ */
69
+ _onFocusout() {
70
+ this.onTouched?.();
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioGroupDirective, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Directive }); }
73
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "17.3.11", type: RdxRadioGroupDirective, isStandalone: true, selector: "div[RadioRoot]", inputs: { value: ["rdxValue", "value"], disabled: ["rdxDisabled", "disabled", booleanAttribute] }, outputs: { onValueChange: "rdxOnValueChange" }, host: { attributes: { "role": "radiogroup" }, listeners: { "focusout": "_onFocusout()" }, properties: { "attr.aria-orientation": "_orientation", "attr.data-disabled": "disabled ? \"\" : null" } }, providers: [
74
+ { provide: RdxRadioGroupToken, useExisting: RdxRadioGroupDirective },
75
+ { provide: NG_VALUE_ACCESSOR, useExisting: RdxRadioGroupDirective, multi: true }
76
+ ], exportAs: ["RadioRoot"], hostDirectives: [{ directive: i1.RdxRovingFocusGroupDirective }], ngImport: i0 }); }
77
+ }
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.11", ngImport: i0, type: RdxRadioGroupDirective, decorators: [{
79
+ type: Directive,
80
+ args: [{
81
+ selector: 'div[RadioRoot]',
82
+ exportAs: 'RadioRoot',
83
+ standalone: true,
84
+ providers: [
85
+ { provide: RdxRadioGroupToken, useExisting: RdxRadioGroupDirective },
86
+ { provide: NG_VALUE_ACCESSOR, useExisting: RdxRadioGroupDirective, multi: true }
87
+ ],
88
+ hostDirectives: [RdxRovingFocusGroupDirective],
89
+ host: {
90
+ role: 'radiogroup',
91
+ '[attr.aria-orientation]': '_orientation',
92
+ '[attr.data-disabled]': 'disabled ? "" : null',
93
+ '(focusout)': '_onFocusout()'
94
+ }
95
+ }]
96
+ }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }], propDecorators: { value: [{
97
+ type: Input,
98
+ args: ['rdxValue']
99
+ }], disabled: [{
100
+ type: Input,
101
+ args: [{ alias: 'rdxDisabled', transform: booleanAttribute }]
102
+ }], onValueChange: [{
103
+ type: Output,
104
+ args: ['rdxOnValueChange']
105
+ }] } });
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaW8tcm9vdC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JhZGlvL3NyYy9yYWRpby1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFekUseURBQXlEO0FBQ3pELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7QUFFakYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsSUFBSSxjQUFjLENBQXlCLG9CQUFvQixDQUFDLENBQUM7QUFFbkcsTUFBTSxVQUFVLGdCQUFnQjtJQUM1QixPQUFPLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUE2QkQsTUFBTSxPQUFPLHNCQUFzQjtJQStCL0IsWUFBNkIsY0FBaUM7UUFBakMsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBNUJBLGFBQVEsR0FBRyxLQUFLLENBQUM7UUFFL0U7Ozs7OztXQU1HO1FBQ00saUJBQVksR0FBRyxVQUFVLENBQUM7UUFFbkM7O1dBRUc7UUFDa0Msa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO0lBY2YsQ0FBQztJQUVsRTs7O09BR0c7SUFDSCxNQUFNLENBQUMsS0FBYTtRQUNoQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDM0IsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxVQUFVLENBQUMsS0FBYTtRQUNwQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7OztPQUlHO0lBQ0gsZ0JBQWdCLENBQUMsRUFBMkI7UUFDeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQWM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxVQUFtQjtRQUNoQyxJQUFJLENBQUMsUUFBUSxHQUFHLFVBQVUsQ0FBQztRQUMzQixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3ZDLENBQUM7SUFFRDs7T0FFRztJQUNILFdBQVc7UUFDUCxJQUFJLENBQUMsU0FBUyxFQUFFLEVBQUUsQ0FBQztJQUN2QixDQUFDOytHQWpGUSxzQkFBc0I7bUdBQXRCLHNCQUFzQixnSUFHVyxnQkFBZ0IscVFBaEIvQztZQUNQLEVBQUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFdBQVcsRUFBRSxzQkFBc0IsRUFBRTtZQUNwRSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsc0JBQXNCLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRTtTQUNuRjs7NEZBVVEsc0JBQXNCO2tCQWpCbEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZ0JBQWdCO29CQUMxQixRQUFRLEVBQUUsV0FBVztvQkFDckIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRTt3QkFDUCxFQUFFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxXQUFXLHdCQUF3QixFQUFFO3dCQUNwRSxFQUFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLHdCQUF3QixFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUU7cUJBQ25GO29CQUNELGNBQWMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO29CQUM5QyxJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLFlBQVk7d0JBQ2xCLHlCQUF5QixFQUFFLGNBQWM7d0JBQ3pDLHNCQUFzQixFQUFFLHNCQUFzQjt3QkFFOUMsWUFBWSxFQUFFLGVBQWU7cUJBQ2hDO2lCQUNKO3NGQUVzQixLQUFLO3NCQUF2QixLQUFLO3VCQUFDLFVBQVU7Z0JBRTZDLFFBQVE7c0JBQXJFLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtnQkFjdkIsYUFBYTtzQkFBakQsTUFBTTt1QkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBpbmplY3QsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5wdXQsXG4gICAgT3V0cHV0XG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQG54L2VuZm9yY2UtbW9kdWxlLWJvdW5kYXJpZXNcbmltcG9ydCB7IFJkeFJvdmluZ0ZvY3VzR3JvdXBEaXJlY3RpdmUgfSBmcm9tICdAcmFkaXgtbmcvcHJpbWl0aXZlcy9yb3ZpbmctZm9jdXMnO1xuXG5leHBvcnQgY29uc3QgUmR4UmFkaW9Hcm91cFRva2VuID0gbmV3IEluamVjdGlvblRva2VuPFJkeFJhZGlvR3JvdXBEaXJlY3RpdmU+KCdSZHhSYWRpb0dyb3VwVG9rZW4nKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdFJhZGlvR3JvdXAoKTogUmR4UmFkaW9Hcm91cERpcmVjdGl2ZSB7XG4gICAgcmV0dXJuIGluamVjdChSZHhSYWRpb0dyb3VwVG9rZW4pO1xufVxuXG5pbnRlcmZhY2UgUmFkaW9Hcm91cFByb3BzIHtcbiAgICBuYW1lPzogc3RyaW5nO1xuICAgIGRpc2FibGVkPzogYm9vbGVhbjtcbiAgICAvLyBUT0RPOiBkaXI/OiBzdHJpbmc7XG4gICAgLy8gVE9ETzogbG9vcD86IHN0cmluZztcbiAgICBkZWZhdWx0VmFsdWU/OiBzdHJpbmc7XG4gICAgdmFsdWU/OiBzdHJpbmc7XG4gICAgb25WYWx1ZUNoYW5nZT86IEV2ZW50RW1pdHRlcjxzdHJpbmc+O1xufVxuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ2RpdltSYWRpb1Jvb3RdJyxcbiAgICBleHBvcnRBczogJ1JhZGlvUm9vdCcsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgeyBwcm92aWRlOiBSZHhSYWRpb0dyb3VwVG9rZW4sIHVzZUV4aXN0aW5nOiBSZHhSYWRpb0dyb3VwRGlyZWN0aXZlIH0sXG4gICAgICAgIHsgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsIHVzZUV4aXN0aW5nOiBSZHhSYWRpb0dyb3VwRGlyZWN0aXZlLCBtdWx0aTogdHJ1ZSB9XG4gICAgXSxcbiAgICBob3N0RGlyZWN0aXZlczogW1JkeFJvdmluZ0ZvY3VzR3JvdXBEaXJlY3RpdmVdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ3JhZGlvZ3JvdXAnLFxuICAgICAgICAnW2F0dHIuYXJpYS1vcmllbnRhdGlvbl0nOiAnX29yaWVudGF0aW9uJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtZGlzYWJsZWRdJzogJ2Rpc2FibGVkID8gXCJcIiA6IG51bGwnLFxuXG4gICAgICAgICcoZm9jdXNvdXQpJzogJ19vbkZvY3Vzb3V0KCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSYWRpb0dyb3VwRGlyZWN0aXZlIGltcGxlbWVudHMgUmFkaW9Hcm91cFByb3BzLCBDb250cm9sVmFsdWVBY2Nlc3NvciB7XG4gICAgQElucHV0KCdyZHhWYWx1ZScpIHZhbHVlPzogc3RyaW5nO1xuXG4gICAgQElucHV0KHsgYWxpYXM6ICdyZHhEaXNhYmxlZCcsIHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9yaWVudGF0aW9uIG9mIHRoZSByYWRpbyBncm91cCBvbmx5IHZlcnRpY2FsLlxuICAgICAqIEhvcml6b250YWwgcmFkaW8gYnV0dG9ucyBjYW4gc29tZXRpbWVzIGJlIGNoYWxsZW5naW5nIHRvIHNjYW4gYW5kIGxvY2FsaXplLlxuICAgICAqIFRoZSBob3Jpem9udGFsIGFycmFuZ2VtZW50IG9mIHJhZGlvIGJ1dHRvbnMgbWF5IGFsc28gbGVhZCB0byBkaWZmaWN1bHRpZXMgaW4gZGV0ZXJtaW5pbmcgd2hpY2hcbiAgICAgKiBsYWJlbCBjb3JyZXNwb25kcyB0byB3aGljaCBidXR0b246IHdoZXRoZXIgdGhlIGxhYmVsIGlzIGFib3ZlIG9yIGJlbG93IHRoZSBidXR0b24uXG4gICAgICogQGRlZmF1bHQgJ3ZlcnRpY2FsJ1xuICAgICAqL1xuICAgIHJlYWRvbmx5IF9vcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSByYWRpbyBncm91cCBjaGFuZ2VzLlxuICAgICAqL1xuICAgIEBPdXRwdXQoJ3JkeE9uVmFsdWVDaGFuZ2UnKSByZWFkb25seSBvblZhbHVlQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxzdHJpbmc+KCk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSB2YWx1ZSBvZiB0aGUgcmFkaW8gZ3JvdXAgY2hhbmdlcy5cbiAgICAgKiBAaW50ZXJuYWxcbiAgICAgKi9cbiAgICBwcml2YXRlIG9uQ2hhbmdlPzogKHZhbHVlOiBzdHJpbmcpID0+IHZvaWQ7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gY2FsbCB3aGVuIHRoZSByYWRpbyBncm91cCBpcyB0b3VjaGVkLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHByaXZhdGUgb25Ub3VjaGVkPzogKCkgPT4gdm9pZDtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVhZG9ubHkgY2hhbmdlRGV0ZWN0b3I6IENoYW5nZURldGVjdG9yUmVmKSB7fVxuXG4gICAgLyoqXG4gICAgICogU2VsZWN0IGEgcmFkaW8gaXRlbS5cbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIHZhbHVlIG9mIHRoZSByYWRpbyBpdGVtIHRvIHNlbGVjdC5cbiAgICAgKi9cbiAgICBzZWxlY3QodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICB0aGlzLnZhbHVlID0gdmFsdWU7XG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZS5lbWl0KHZhbHVlKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZT8uKHZhbHVlKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGUgdGhlIHZhbHVlIG9mIHRoZSByYWRpbyBncm91cC5cbiAgICAgKiBAcGFyYW0gdmFsdWUgVGhlIG5ldyB2YWx1ZSBvZiB0aGUgcmFkaW8gZ3JvdXAuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgd3JpdGVWYWx1ZSh2YWx1ZTogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGNhbGwgd2hlbiB0aGUgdmFsdWUgb2YgdGhlIHJhZGlvIGdyb3VwIGNoYW5nZXMuXG4gICAgICogQHBhcmFtIGZuIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBjYWxsIHdoZW4gdGhlIHZhbHVlIG9mIHRoZSByYWRpbyBncm91cCBjaGFuZ2VzLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogKCkgPT4gdm9pZCk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uVG91Y2hlZCA9IGZuO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIHJhZGlvIGdyb3VwLlxuICAgICAqIEBwYXJhbSBpc0Rpc2FibGVkIFdoZXRoZXIgdGhlIHJhZGlvIGdyb3VwIGlzIGRpc2FibGVkLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLmRpc2FibGVkID0gaXNEaXNhYmxlZDtcbiAgICAgICAgdGhpcy5jaGFuZ2VEZXRlY3Rvci5tYXJrRm9yQ2hlY2soKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIGZvY3VzIGxlYXZlcyB0aGUgcmFkaW8gZ3JvdXAuXG4gICAgICovXG4gICAgX29uRm9jdXNvdXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMub25Ub3VjaGVkPy4oKTtcbiAgICB9XG59XG4iXX0=
@@ -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
- export * from './src/roving-focus-item.token';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLCtCQUErQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAudG9rZW4nO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1pdGVtLnRva2VuJztcbiJdfQ==
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1pdGVtLmRpcmVjdGl2ZSc7XG4iXX0=