@radix-ng/primitives 0.8.1 → 0.9.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 (179) hide show
  1. package/accordion/index.d.ts +3 -3
  2. package/accordion/src/accordion-content.directive.d.ts +1 -1
  3. package/accordion/src/accordion-header.directive.d.ts +1 -1
  4. package/accordion/src/accordion-item.directive.d.ts +1 -1
  5. package/accordion/src/accordion-root.directive.d.ts +1 -1
  6. package/accordion/src/accordion-trigger.directive.d.ts +1 -1
  7. package/alert-dialog/index.d.ts +2 -2
  8. package/avatar/index.d.ts +2 -2
  9. package/avatar/src/avatar-fallback.directive.d.ts +3 -3
  10. package/avatar/src/avatar-image.directive.d.ts +6 -6
  11. package/avatar/src/avatar-root.directive.d.ts +4 -4
  12. package/checkbox/index.d.ts +2 -0
  13. package/checkbox/src/checkbox-button.directive.d.ts +8 -0
  14. package/checkbox/src/checkbox-indicator.directive.d.ts +1 -1
  15. package/checkbox/src/checkbox-input.directive.d.ts +9 -0
  16. package/checkbox/src/checkbox.directive.d.ts +7 -5
  17. package/collapsible/index.d.ts +1 -1
  18. package/collapsible/src/collapsible-content.directive.d.ts +1 -1
  19. package/collapsible/src/collapsible-root.directive.d.ts +1 -1
  20. package/collapsible/src/collapsible-trigger.directive.d.ts +1 -1
  21. package/dropdown-menu/index.d.ts +8 -3
  22. package/dropdown-menu/src/dropdown-menu-content.directive.d.ts +12 -2
  23. package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.d.ts +6 -0
  24. package/dropdown-menu/src/dropdown-menu-item-indicator.directive.d.ts +7 -0
  25. package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.d.ts +12 -0
  26. package/dropdown-menu/src/dropdown-menu-item-radio.directive.d.ts +19 -0
  27. package/dropdown-menu/src/dropdown-menu-item-selectable.d.ts +14 -0
  28. package/dropdown-menu/src/dropdown-menu-item.directive.d.ts +13 -4
  29. package/dropdown-menu/src/dropdown-menu-label.directive.d.ts +1 -1
  30. package/dropdown-menu/src/dropdown-menu-separator.directive.d.ts +2 -2
  31. package/dropdown-menu/src/dropdown-menu-trigger.directive.d.ts +33 -2
  32. package/esm2022/accordion/index.mjs +4 -4
  33. package/esm2022/accordion/src/accordion-content.directive.mjs +7 -9
  34. package/esm2022/accordion/src/accordion-header.directive.mjs +5 -5
  35. package/esm2022/accordion/src/accordion-item.directive.mjs +17 -9
  36. package/esm2022/accordion/src/accordion-root.directive.mjs +5 -5
  37. package/esm2022/accordion/src/accordion-trigger.directive.mjs +5 -5
  38. package/esm2022/alert-dialog/index.mjs +3 -3
  39. package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +4 -4
  40. package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +3 -3
  41. package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +5 -4
  42. package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +3 -3
  43. package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +4 -4
  44. package/esm2022/alert-dialog/src/alert-dialog.service.mjs +6 -9
  45. package/esm2022/avatar/index.mjs +1 -1
  46. package/esm2022/avatar/src/avatar-fallback.directive.mjs +6 -6
  47. package/esm2022/avatar/src/avatar-image.directive.mjs +6 -6
  48. package/esm2022/avatar/src/avatar-root.directive.mjs +6 -6
  49. package/esm2022/checkbox/index.mjs +3 -1
  50. package/esm2022/checkbox/src/checkbox-button.directive.mjs +33 -0
  51. package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +6 -5
  52. package/esm2022/checkbox/src/checkbox-input.directive.mjs +41 -0
  53. package/esm2022/checkbox/src/checkbox.directive.mjs +18 -22
  54. package/esm2022/checkbox/src/checkbox.token.mjs +1 -1
  55. package/esm2022/collapsible/index.mjs +2 -2
  56. package/esm2022/collapsible/src/collapsible-content.directive.mjs +13 -7
  57. package/esm2022/collapsible/src/collapsible-root.directive.mjs +5 -5
  58. package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +5 -5
  59. package/esm2022/dropdown-menu/index.mjs +9 -4
  60. package/esm2022/dropdown-menu/src/dropdown-menu-content.directive.mjs +36 -10
  61. package/esm2022/dropdown-menu/src/dropdown-menu-item-checkbox.directive.mjs +26 -0
  62. package/esm2022/dropdown-menu/src/dropdown-menu-item-indicator.directive.mjs +22 -0
  63. package/esm2022/dropdown-menu/src/dropdown-menu-item-radio-group.directive.mjs +37 -0
  64. package/esm2022/dropdown-menu/src/dropdown-menu-item-radio.directive.mjs +60 -0
  65. package/esm2022/dropdown-menu/src/dropdown-menu-item-selectable.mjs +40 -0
  66. package/esm2022/dropdown-menu/src/dropdown-menu-item.directive.mjs +45 -13
  67. package/esm2022/dropdown-menu/src/dropdown-menu-label.directive.mjs +5 -5
  68. package/esm2022/dropdown-menu/src/dropdown-menu-separator.directive.mjs +8 -8
  69. package/esm2022/dropdown-menu/src/dropdown-menu-trigger.directive.mjs +134 -12
  70. package/esm2022/label/index.mjs +2 -2
  71. package/esm2022/label/src/label.directive.mjs +54 -0
  72. package/esm2022/menu/index.mjs +7 -7
  73. package/esm2022/menu/src/menu-content.directive.mjs +3 -3
  74. package/esm2022/menu/src/menu-directive.mjs +3 -3
  75. package/esm2022/menu/src/menu-group.directive.mjs +3 -3
  76. package/esm2022/menu/src/menu-item.directive.mjs +8 -4
  77. package/esm2022/menu/src/menu-label.directive.mjs +3 -3
  78. package/esm2022/menu/src/menu-separator.directive.mjs +4 -4
  79. package/esm2022/menubar/index.mjs +7 -7
  80. package/esm2022/menubar/src/menubar-content.directive.mjs +3 -3
  81. package/esm2022/menubar/src/menubar-item-checkbox.directive.mjs +4 -4
  82. package/esm2022/menubar/src/menubar-item-indicator.directive.mjs +3 -3
  83. package/esm2022/menubar/src/menubar-item-radio.directive.mjs +4 -4
  84. package/esm2022/menubar/src/menubar-item.directive.mjs +4 -4
  85. package/esm2022/menubar/src/menubar-radio-group.directive.mjs +3 -3
  86. package/esm2022/menubar/src/menubar-root.directive.mjs +3 -3
  87. package/esm2022/menubar/src/menubar-separator.directive.mjs +4 -4
  88. package/esm2022/menubar/src/menubar-trigger.directive.mjs +4 -4
  89. package/esm2022/progress/src/progress-indicator.directive.mjs +19 -9
  90. package/esm2022/progress/src/progress-root.directive.mjs +63 -7
  91. package/esm2022/radio/src/radio-indicator.directive.mjs +4 -4
  92. package/esm2022/radio/src/radio-item.directive.mjs +4 -8
  93. package/esm2022/radio/src/radio-root.directive.mjs +5 -9
  94. package/esm2022/separator/src/separator.directive.mjs +3 -3
  95. package/esm2022/switch/index.mjs +29 -3
  96. package/esm2022/switch/src/switch-input.directive.mjs +12 -10
  97. package/esm2022/switch/src/switch-root.directive.mjs +47 -23
  98. package/esm2022/switch/src/switch-thumb.directive.mjs +7 -7
  99. package/esm2022/tabs/index.mjs +7 -7
  100. package/esm2022/tabs/src/tabs-content.directive.mjs +7 -5
  101. package/esm2022/tabs/src/tabs-context.service.mjs +3 -3
  102. package/esm2022/tabs/src/tabs-list.directive.mjs +5 -5
  103. package/esm2022/tabs/src/tabs-root.directive.mjs +5 -5
  104. package/esm2022/tabs/src/tabs-trigger.directive.mjs +5 -5
  105. package/esm2022/toggle/index.mjs +2 -2
  106. package/esm2022/toggle/src/toggle.directive.mjs +39 -0
  107. package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +14 -13
  108. package/esm2022/toggle-group/src/toggle-group-button.token.mjs +1 -1
  109. package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +18 -34
  110. package/esm2022/toggle-group/src/toggle-group.directive.mjs +5 -25
  111. package/esm2022/toggle-group/src/toggle-group.token.mjs +1 -1
  112. package/fesm2022/radix-ng-primitives-accordion.mjs +73 -67
  113. package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
  114. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +49 -51
  115. package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
  116. package/fesm2022/radix-ng-primitives-avatar.mjs +15 -15
  117. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
  118. package/fesm2022/radix-ng-primitives-checkbox.mjs +91 -26
  119. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
  120. package/fesm2022/radix-ng-primitives-collapsible.mjs +20 -14
  121. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
  122. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +386 -42
  123. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +1 -1
  124. package/fesm2022/radix-ng-primitives-label.mjs +22 -16
  125. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
  126. package/fesm2022/radix-ng-primitives-menu.mjs +26 -22
  127. package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
  128. package/fesm2022/radix-ng-primitives-menubar.mjs +31 -31
  129. package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
  130. package/fesm2022/radix-ng-primitives-progress.mjs +80 -14
  131. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
  132. package/fesm2022/radix-ng-primitives-radio.mjs +10 -14
  133. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  134. package/fesm2022/radix-ng-primitives-separator.mjs +3 -3
  135. package/fesm2022/radix-ng-primitives-switch.mjs +94 -46
  136. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
  137. package/fesm2022/radix-ng-primitives-tabs.mjs +25 -23
  138. package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
  139. package/fesm2022/radix-ng-primitives-toggle-group.mjs +34 -65
  140. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
  141. package/fesm2022/radix-ng-primitives-toggle.mjs +18 -28
  142. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
  143. package/label/index.d.ts +1 -1
  144. package/label/src/label.directive.d.ts +23 -0
  145. package/menu/index.d.ts +2 -2
  146. package/menubar/index.d.ts +2 -2
  147. package/package.json +1 -7
  148. package/progress/src/progress-indicator.directive.d.ts +12 -2
  149. package/progress/src/progress-root.directive.d.ts +38 -4
  150. package/radio/src/radio-item.directive.d.ts +1 -2
  151. package/radio/src/radio-root.directive.d.ts +1 -2
  152. package/switch/index.d.ts +11 -2
  153. package/switch/src/switch-input.directive.d.ts +1 -1
  154. package/switch/src/switch-root.directive.d.ts +26 -9
  155. package/switch/src/switch-thumb.directive.d.ts +1 -1
  156. package/tabs/index.d.ts +2 -2
  157. package/tabs/src/tabs-content.directive.d.ts +1 -1
  158. package/tabs/src/tabs-list.directive.d.ts +1 -1
  159. package/tabs/src/tabs-root.directive.d.ts +1 -1
  160. package/tabs/src/tabs-trigger.directive.d.ts +1 -1
  161. package/toggle/index.d.ts +2 -2
  162. package/toggle/src/toggle.directive.d.ts +30 -0
  163. package/toggle-group/src/toggle-group-button.directive.d.ts +9 -6
  164. package/toggle-group/src/toggle-group-multi.directive.d.ts +18 -15
  165. package/toggle-group/src/toggle-group.directive.d.ts +3 -9
  166. package/esm2022/label/src/label-root.directive.mjs +0 -48
  167. package/esm2022/roving-focus/index.mjs +0 -3
  168. package/esm2022/roving-focus/radix-ng-primitives-roving-focus.mjs +0 -5
  169. package/esm2022/roving-focus/src/roving-focus-group.directive.mjs +0 -109
  170. package/esm2022/roving-focus/src/roving-focus-item.directive.mjs +0 -86
  171. package/esm2022/toggle/src/toggle-root.directive.mjs +0 -49
  172. package/fesm2022/radix-ng-primitives-roving-focus.mjs +0 -198
  173. package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +0 -1
  174. package/label/src/label-root.directive.d.ts +0 -13
  175. package/roving-focus/README.md +0 -1
  176. package/roving-focus/index.d.ts +0 -2
  177. package/roving-focus/src/roving-focus-group.directive.d.ts +0 -53
  178. package/roving-focus/src/roving-focus-item.directive.d.ts +0 -50
  179. package/toggle/src/toggle-root.directive.d.ts +0 -32
@@ -1,15 +1,11 @@
1
1
  import { OnChanges, SimpleChanges } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
- import * as i1 from "@radix-ng/primitives/roving-focus";
4
3
  export declare class RdxToggleGroupButtonDirective implements OnChanges {
5
4
  /**
6
5
  * Access the toggle group.
6
+ * @ignore
7
7
  */
8
8
  protected readonly toggleGroup: import("@radix-ng/primitives/toggle-group").RdxToggleGroupDirective | import("@radix-ng/primitives/toggle-group").RdxToggleGroupMultiDirective;
9
- /**
10
- * Access the roving focus item.
11
- */
12
- private readonly rovingFocusItem;
13
9
  /**
14
10
  * The value of this toggle button.
15
11
  */
@@ -23,14 +19,21 @@ export declare class RdxToggleGroupButtonDirective implements OnChanges {
23
19
  * Whether this toggle button is checked.
24
20
  */
25
21
  protected get checked(): boolean;
22
+ /**
23
+ * @ignore
24
+ */
26
25
  ngOnChanges(changes: SimpleChanges): void;
26
+ /**
27
+ * @ignore
28
+ */
27
29
  toggle(): void;
28
30
  /**
29
31
  * Ensure the disabled state is propagated to the roving focus item.
30
32
  * @internal
33
+ * @ignore
31
34
  */
32
35
  updateDisabled(): void;
33
36
  static ɵfac: i0.ɵɵFactoryDeclaration<RdxToggleGroupButtonDirective, never>;
34
- static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupButtonDirective, "button[rdxToggleGroupButton]", never, { "value": { "alias": "value"; "required": true; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, [{ directive: typeof i1.RdxRovingFocusItemDirective; inputs: {}; outputs: {}; }]>;
37
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupButtonDirective, "button[rdxToggleGroupButton]", never, { "value": { "alias": "value"; "required": true; }; "disabled": { "alias": "disabled"; "required": false; }; }, {}, never, never, true, never>;
35
38
  static ngAcceptInputType_disabled: unknown;
36
39
  }
@@ -1,13 +1,8 @@
1
- import { AfterContentInit, EventEmitter, OnChanges, OnInit, QueryList, SimpleChanges } from '@angular/core';
1
+ import { AfterContentInit, EventEmitter, OnChanges, QueryList, SimpleChanges } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
3
  import type { RdxToggleGroupButtonDirective } from './toggle-group-button.directive';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "@radix-ng/primitives/roving-focus";
6
- export declare class RdxToggleGroupMultiDirective implements OnInit, OnChanges, AfterContentInit, ControlValueAccessor {
7
- /**
8
- * Access the roving focus group
9
- */
10
- private readonly rovingFocusGroup;
5
+ export declare class RdxToggleGroupMultiDirective implements OnChanges, AfterContentInit, ControlValueAccessor {
11
6
  /**
12
7
  * The selected toggle button.
13
8
  */
@@ -33,58 +28,66 @@ export declare class RdxToggleGroupMultiDirective implements OnInit, OnChanges,
33
28
  readonly valueChange: EventEmitter<readonly string[]>;
34
29
  /**
35
30
  * Access the buttons in the toggle group.
31
+ * @ignore
36
32
  */
37
33
  protected buttons?: QueryList<RdxToggleGroupButtonDirective>;
38
34
  /**
39
35
  * The value change callback.
36
+ * @ignore
40
37
  */
41
38
  private onChange?;
42
39
  /**
43
40
  * onTouch function registered via registerOnTouch (ControlValueAccessor).
41
+ * @ignore
44
42
  */
45
43
  protected onTouched?: () => void;
46
- ngOnInit(): void;
44
+ /**
45
+ * @ignore
46
+ */
47
47
  ngOnChanges(changes: SimpleChanges): void;
48
+ /**
49
+ * @ignore
50
+ */
48
51
  ngAfterContentInit(): void;
49
52
  /**
50
53
  * Determine if a value is selected.
51
54
  * @param value The value to check.
52
55
  * @returns Whether the value is selected.
53
- * @internal
56
+ * @ignore
54
57
  */
55
58
  isSelected(value: string): boolean;
56
59
  /**
57
60
  * Toggle a value.
58
61
  * @param value The value to toggle.
59
- * @internal
62
+ * @ignore
60
63
  */
61
64
  toggle(value: string): void;
62
65
  /**
63
66
  * Select a value from Angular forms.
64
67
  * @param value The value to select.
65
- * @internal
68
+ * @ignore
66
69
  */
67
70
  writeValue(value: ReadonlyArray<string>): void;
68
71
  /**
69
72
  * Register a callback to be called when the value changes.
70
73
  * @param fn The callback to register.
71
- * @internal
74
+ * @ignore
72
75
  */
73
76
  registerOnChange(fn: (value: ReadonlyArray<string>) => void): void;
74
77
  /**
75
78
  * Register a callback to be called when the toggle group is touched.
76
79
  * @param fn The callback to register.
77
- * @internal
80
+ * @ignore
78
81
  */
79
82
  registerOnTouched(fn: () => void): void;
80
83
  /**
81
84
  * Set the disabled state of the toggle group.
82
85
  * @param isDisabled Whether the toggle group is disabled.
83
- * @internal
86
+ * @ignore
84
87
  */
85
88
  setDisabledState(isDisabled: boolean): void;
86
89
  static ɵfac: i0.ɵɵFactoryDeclaration<RdxToggleGroupMultiDirective, never>;
87
- static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupMultiDirective, "[rdxToggleGroupMulti]", never, { "value": { "alias": "rdxToggleGroupMultiValue"; "required": false; }; "orientation": { "alias": "rdxToggleGroupMultiOrientation"; "required": false; }; "disabled": { "alias": "rdxToggleGroupMultiDisabled"; "required": false; }; "wrap": { "alias": "rdxToggleGroupMultiWrap"; "required": false; }; "valueChange": { "alias": "rdxToggleGroupMultiValueChange"; "required": false; }; }, {}, ["buttons"], never, true, [{ directive: typeof i1.RdxRovingFocusGroupDirective; inputs: { "rdxRovingFocusGroupWrap": "wrap"; "rdxRovingFocusGroupOrientation": "orientation"; }; outputs: {}; }]>;
90
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupMultiDirective, "[rdxToggleGroupMulti]", never, { "value": { "alias": "rdxToggleGroupMultiValue"; "required": false; }; "orientation": { "alias": "rdxToggleGroupMultiOrientation"; "required": false; }; "disabled": { "alias": "rdxToggleGroupMultiDisabled"; "required": false; }; "wrap": { "alias": "rdxToggleGroupMultiWrap"; "required": false; }; "valueChange": { "alias": "rdxToggleGroupMultiValueChange"; "required": false; }; }, {}, ["buttons"], never, true, never>;
88
91
  static ngAcceptInputType_disabled: unknown;
89
92
  static ngAcceptInputType_wrap: unknown;
90
93
  }
@@ -1,13 +1,8 @@
1
- import { AfterContentInit, EventEmitter, OnChanges, OnInit, QueryList, SimpleChanges } from '@angular/core';
1
+ import { AfterContentInit, EventEmitter, OnChanges, QueryList, SimpleChanges } from '@angular/core';
2
2
  import { ControlValueAccessor } from '@angular/forms';
3
3
  import type { RdxToggleGroupButtonDirective } from './toggle-group-button.directive';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "@radix-ng/primitives/roving-focus";
6
- export declare class RdxToggleGroupDirective implements OnInit, OnChanges, AfterContentInit, ControlValueAccessor {
7
- /**
8
- * Access the roving focus group
9
- */
10
- private readonly rovingFocusGroup;
5
+ export declare class RdxToggleGroupDirective implements OnChanges, AfterContentInit, ControlValueAccessor {
11
6
  /**
12
7
  * The selected toggle button.
13
8
  */
@@ -43,7 +38,6 @@ export declare class RdxToggleGroupDirective implements OnInit, OnChanges, After
43
38
  * onTouch function registered via registerOnTouch (ControlValueAccessor).
44
39
  */
45
40
  protected onTouched?: () => void;
46
- ngOnInit(): void;
47
41
  ngOnChanges(changes: SimpleChanges): void;
48
42
  ngAfterContentInit(): void;
49
43
  /**
@@ -84,7 +78,7 @@ export declare class RdxToggleGroupDirective implements OnInit, OnChanges, After
84
78
  */
85
79
  setDisabledState(isDisabled: boolean): void;
86
80
  static ɵfac: i0.ɵɵFactoryDeclaration<RdxToggleGroupDirective, never>;
87
- static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupDirective, "[rdxToggleGroup]", never, { "value": { "alias": "value"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "wrap": { "alias": "wrap"; "required": false; }; "valueChange": { "alias": "valueChange"; "required": false; }; }, {}, ["buttons"], never, true, [{ directive: typeof i1.RdxRovingFocusGroupDirective; inputs: { "rdxRovingFocusGroupWrap": "wrap"; "rdxRovingFocusGroupOrientation": "orientation"; }; outputs: {}; }]>;
81
+ static ɵdir: i0.ɵɵDirectiveDeclaration<RdxToggleGroupDirective, "[rdxToggleGroup]", never, { "value": { "alias": "value"; "required": false; }; "orientation": { "alias": "orientation"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "wrap": { "alias": "wrap"; "required": false; }; "valueChange": { "alias": "valueChange"; "required": false; }; }, {}, ["buttons"], never, true, never>;
88
82
  static ngAcceptInputType_disabled: unknown;
89
83
  static ngAcceptInputType_wrap: unknown;
90
84
  }
@@ -1,48 +0,0 @@
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 +0,0 @@
1
- export * from './src/roving-focus-group.directive';
2
- export * from './src/roving-focus-item.directive';
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsbUNBQW1DLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1pdGVtLmRpcmVjdGl2ZSc7XG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1yb3ZpbmctZm9jdXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9yYWRpeC1uZy1wcmltaXRpdmVzLXJvdmluZy1mb2N1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
@@ -1,109 +0,0 @@
1
- import { FocusKeyManager } from '@angular/cdk/a11y';
2
- import { Directionality } from '@angular/cdk/bidi';
3
- import { booleanAttribute, DestroyRef, Directive, inject, InjectionToken, Input, QueryList } from '@angular/core';
4
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
- import { filter } from 'rxjs';
6
- import * as i0 from "@angular/core";
7
- const RdxRovingFocusGroupToken = new InjectionToken('RdxRovingFocusToken');
8
- export function injectRovingFocusGroup() {
9
- return inject(RdxRovingFocusGroupToken);
10
- }
11
- export class RdxRovingFocusGroupDirective {
12
- constructor() {
13
- this.directionality = inject(Directionality);
14
- this.destroyRef = inject(DestroyRef);
15
- /**
16
- * Create a query list of all the roving focus items.
17
- * We don't use ContentChildren as dynamically added items may not be in the correct order.
18
- */
19
- this.items = new QueryList();
20
- this.keyManager = new FocusKeyManager(this.items);
21
- /**
22
- * Determine the orientation of the roving focus group.
23
- * @default vertical
24
- */
25
- this.orientation = 'vertical';
26
- /**
27
- * Determine if focus should wrap when the end or beginning is reached.
28
- * @default true
29
- */
30
- this.wrap = true;
31
- }
32
- ngOnInit() {
33
- this.keyManager.withWrap(this.wrap);
34
- this.setOrientation(this.orientation);
35
- this.directionality.change
36
- .pipe(filter(() => this.orientation === 'horizontal'), takeUntilDestroyed(this.destroyRef))
37
- .subscribe((direction) => this.keyManager.withHorizontalOrientation(direction));
38
- }
39
- ngOnChanges(changes) {
40
- if ('orientation' in changes) {
41
- this.setOrientation(this.orientation);
42
- }
43
- if ('wrap' in changes) {
44
- this.keyManager.withWrap(this.wrap);
45
- }
46
- }
47
- ngOnDestroy() {
48
- this.keyManager.destroy();
49
- }
50
- /**
51
- * Register a roving focus item.
52
- * @param item The roving focus item to register.
53
- */
54
- register(item) {
55
- this.items.reset([...this.items.toArray(), item].sort((a, b) => a.order - b.order));
56
- if (this.items.length === 1) {
57
- this.keyManager.updateActiveItem(item);
58
- }
59
- }
60
- /**
61
- * Unregister a roving focus item.
62
- * @param item The roving focus item to unregister.
63
- */
64
- unregister(item) {
65
- const isActive = this.keyManager.activeItem === item;
66
- this.items.reset(this.items.toArray().filter((i) => i !== item));
67
- if (isActive) {
68
- this.keyManager.updateActiveItem(0);
69
- }
70
- }
71
- /**
72
- * Handle key events on the roving focus items.
73
- * @param event The key event.
74
- * @internal
75
- */
76
- onKeydown(event) {
77
- this.keyManager.onKeydown(event);
78
- }
79
- /**
80
- * Set the orientation of the roving focus group.
81
- * @param orientation The orientation of the roving focus group.
82
- */
83
- setOrientation(orientation) {
84
- this.orientation = orientation;
85
- if (orientation === 'horizontal') {
86
- this.keyManager.withHorizontalOrientation(this.directionality.value);
87
- }
88
- else {
89
- this.keyManager.withVerticalOrientation();
90
- }
91
- }
92
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRovingFocusGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
93
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxRovingFocusGroupDirective, isStandalone: true, selector: "[rdxRovingFocusGroup]", inputs: { orientation: ["rdxRovingFocusGroupOrientation", "orientation"], wrap: ["rdxRovingFocusGroupWrap", "wrap", booleanAttribute] }, providers: [{ provide: RdxRovingFocusGroupToken, useExisting: RdxRovingFocusGroupDirective }], usesOnChanges: true, ngImport: i0 }); }
94
- }
95
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRovingFocusGroupDirective, decorators: [{
96
- type: Directive,
97
- args: [{
98
- selector: '[rdxRovingFocusGroup]',
99
- standalone: true,
100
- providers: [{ provide: RdxRovingFocusGroupToken, useExisting: RdxRovingFocusGroupDirective }]
101
- }]
102
- }], propDecorators: { orientation: [{
103
- type: Input,
104
- args: [{ alias: 'rdxRovingFocusGroupOrientation' }]
105
- }], wrap: [{
106
- type: Input,
107
- args: [{ alias: 'rdxRovingFocusGroupWrap', transform: booleanAttribute }]
108
- }] } });
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcm92aW5nLWZvY3VzL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUNILGdCQUFnQixFQUNoQixVQUFVLEVBQ1YsU0FBUyxFQUNULE1BQU0sRUFDTixjQUFjLEVBQ2QsS0FBSyxFQUlMLFNBQVMsRUFFWixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sTUFBTSxDQUFDOztBQU05QixNQUFNLHdCQUF3QixHQUFHLElBQUksY0FBYyxDQUMvQyxxQkFBcUIsQ0FDeEIsQ0FBQztBQUVGLE1BQU0sVUFBVSxzQkFBc0I7SUFDbEMsT0FBTyxNQUFNLENBQUMsd0JBQXdCLENBQUMsQ0FBQztBQUM1QyxDQUFDO0FBT0QsTUFBTSxPQUFPLDRCQUE0QjtJQUx6QztRQU1xQixtQkFBYyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUV4QyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWpEOzs7V0FHRztRQUNjLFVBQUssR0FBRyxJQUFJLFNBQVMsRUFBK0IsQ0FBQztRQUU3RCxlQUFVLEdBQUcsSUFBSSxlQUFlLENBQThCLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUVuRjs7O1dBR0c7UUFDaUQsZ0JBQVcsR0FBZ0IsVUFBVSxDQUFDO1FBRTFGOzs7V0FHRztRQUN1RSxTQUFJLEdBQUcsSUFBSSxDQUFDO0tBNkV6RjtJ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LDRCQUE0QixFQUFFLENBQUM7OzJGQUVwRiw0QkFBNEI7a0JBTHhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLFdBQVcsOEJBQThCLEVBQUUsQ0FBQztpQkFDaEc7OEJBa0J1RCxXQUFXO3NCQUE5RCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLGdDQUFnQyxFQUFFO2dCQU13QixJQUFJO3NCQUE3RSxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLHlCQUF5QixFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZvY3VzS2V5TWFuYWdlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERpcmVjdGlvbmFsaXR5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2JpZGknO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIERlc3Ryb3lSZWYsXG4gICAgRGlyZWN0aXZlLFxuICAgIGluamVjdCxcbiAgICBJbmplY3Rpb25Ub2tlbixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlc1xufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IGZpbHRlciB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgdHlwZSB7IFJkeFJvdmluZ0ZvY3VzSXRlbURpcmVjdGl2ZSB9IGZyb20gJy4vcm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlJztcblxuZXhwb3J0IHR5cGUgT3JpZW50YXRpb24gPSAnaG9yaXpvbnRhbCcgfCAndmVydGljYWwnO1xuXG5jb25zdCBSZHhSb3ZpbmdGb2N1c0dyb3VwVG9rZW4gPSBuZXcgSW5qZWN0aW9uVG9rZW48UmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZT4oXG4gICAgJ1JkeFJvdmluZ0ZvY3VzVG9rZW4nXG4pO1xuXG5leHBvcnQgZnVuY3Rpb24gaW5qZWN0Um92aW5nRm9jdXNHcm91cCgpOiBSZHhSb3ZpbmdGb2N1c0dyb3VwRGlyZWN0aXZlIHtcbiAgICByZXR1cm4gaW5qZWN0KFJkeFJvdmluZ0ZvY3VzR3JvdXBUb2tlbik7XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeFJvdmluZ0ZvY3VzR3JvdXBdJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIHByb3ZpZGVyczogW3sgcHJvdmlkZTogUmR4Um92aW5nRm9jdXNHcm91cFRva2VuLCB1c2VFeGlzdGluZzogUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSb3ZpbmdGb2N1c0dyb3VwRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkaXJlY3Rpb25hbGl0eSA9IGluamVjdChEaXJlY3Rpb25hbGl0eSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IGRlc3Ryb3lSZWYgPSBpbmplY3QoRGVzdHJveVJlZik7XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGUgYSBxdWVyeSBsaXN0IG9mIGFsbCB0aGUgcm92aW5nIGZvY3VzIGl0ZW1zLlxuICAgICAqIFdlIGRvbid0IHVzZSBDb250ZW50Q2hpbGRyZW4gYXMgZHluYW1pY2FsbHkgYWRkZWQgaXRlbXMgbWF5IG5vdCBiZSBpbiB0aGUgY29ycmVjdCBvcmRlci5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGl0ZW1zID0gbmV3IFF1ZXJ5TGlzdDxSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmU+KCk7XG5cbiAgICByZWFkb25seSBrZXlNYW5hZ2VyID0gbmV3IEZvY3VzS2V5TWFuYWdlcjxSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmU+KHRoaXMuaXRlbXMpO1xuXG4gICAgLyoqXG4gICAgICogRGV0ZXJtaW5lIHRoZSBvcmllbnRhdGlvbiBvZiB0aGUgcm92aW5nIGZvY3VzIGdyb3VwLlxuICAgICAqIEBkZWZhdWx0IHZlcnRpY2FsXG4gICAgICovXG4gICAgQElucHV0KHsgYWxpYXM6ICdyZHhSb3ZpbmdGb2N1c0dyb3VwT3JpZW50YXRpb24nIH0pIG9yaWVudGF0aW9uOiBPcmllbnRhdGlvbiA9ICd2ZXJ0aWNhbCc7XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmUgaWYgZm9jdXMgc2hvdWxkIHdyYXAgd2hlbiB0aGUgZW5kIG9yIGJlZ2lubmluZyBpcyByZWFjaGVkLlxuICAgICAqIEBkZWZhdWx0IHRydWVcbiAgICAgKi9cbiAgICBASW5wdXQoeyBhbGlhczogJ3JkeFJvdmluZ0ZvY3VzR3JvdXBXcmFwJywgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIHdyYXAgPSB0cnVlO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMua2V5TWFuYWdlci53aXRoV3JhcCh0aGlzLndyYXApO1xuXG4gICAgICAgIHRoaXMuc2V0T3JpZW50YXRpb24odGhpcy5vcmllbnRhdGlvbik7XG5cbiAgICAgICAgdGhpcy5kaXJlY3Rpb25hbGl0eS5jaGFuZ2VcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiB0aGlzLm9yaWVudGF0aW9uID09PSAnaG9yaXpvbnRhbCcpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLmRlc3Ryb3lSZWYpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChkaXJlY3Rpb24pID0+IHRoaXMua2V5TWFuYWdlci53aXRoSG9yaXpvbnRhbE9yaWVudGF0aW9uKGRpcmVjdGlvbikpO1xuICAgIH1cblxuICAgIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICAgICAgaWYgKCdvcmllbnRhdGlvbicgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5zZXRPcmllbnRhdGlvbih0aGlzLm9yaWVudGF0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICgnd3JhcCcgaW4gY2hhbmdlcykge1xuICAgICAgICAgICAgdGhpcy5rZXlNYW5hZ2VyLndpdGhXcmFwKHRoaXMud3JhcCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5rZXlNYW5hZ2VyLmRlc3Ryb3koKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlciBhIHJvdmluZyBmb2N1cyBpdGVtLlxuICAgICAqIEBwYXJhbSBpdGVtIFRoZSByb3ZpbmcgZm9jdXMgaXRlbSB0byByZWdpc3Rlci5cbiAgICAgKi9cbiAgICByZWdpc3RlcihpdGVtOiBSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmUpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtcy5yZXNldChbLi4udGhpcy5pdGVtcy50b0FycmF5KCksIGl0ZW1dLnNvcnQoKGEsIGIpID0+IGEub3JkZXIgLSBiLm9yZGVyKSk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXRlbXMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICB0aGlzLmtleU1hbmFnZXIudXBkYXRlQWN0aXZlSXRlbShpdGVtKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVucmVnaXN0ZXIgYSByb3ZpbmcgZm9jdXMgaXRlbS5cbiAgICAgKiBAcGFyYW0gaXRlbSBUaGUgcm92aW5nIGZvY3VzIGl0ZW0gdG8gdW5yZWdpc3Rlci5cbiAgICAgKi9cbiAgICB1bnJlZ2lzdGVyKGl0ZW06IFJkeFJvdmluZ0ZvY3VzSXRlbURpcmVjdGl2ZSk6IHZvaWQge1xuICAgICAgICBjb25zdCBpc0FjdGl2ZSA9IHRoaXMua2V5TWFuYWdlci5hY3RpdmVJdGVtID09PSBpdGVtO1xuXG4gICAgICAgIHRoaXMuaXRlbXMucmVzZXQodGhpcy5pdGVtcy50b0FycmF5KCkuZmlsdGVyKChpKSA9PiBpICE9PSBpdGVtKSk7XG5cbiAgICAgICAgaWYgKGlzQWN0aXZlKSB7XG4gICAgICAgICAgICB0aGlzLmtleU1hbmFnZXIudXBkYXRlQWN0aXZlSXRlbSgwKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEhhbmRsZSBrZXkgZXZlbnRzIG9uIHRoZSByb3ZpbmcgZm9jdXMgaXRlbXMuXG4gICAgICogQHBhcmFtIGV2ZW50IFRoZSBrZXkgZXZlbnQuXG4gICAgICogQGludGVybmFsXG4gICAgICovXG4gICAgb25LZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMua2V5TWFuYWdlci5vbktleWRvd24oZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldCB0aGUgb3JpZW50YXRpb24gb2YgdGhlIHJvdmluZyBmb2N1cyBncm91cC5cbiAgICAgKiBAcGFyYW0gb3JpZW50YXRpb24gVGhlIG9yaWVudGF0aW9uIG9mIHRoZSByb3ZpbmcgZm9jdXMgZ3JvdXAuXG4gICAgICovXG4gICAgc2V0T3JpZW50YXRpb24ob3JpZW50YXRpb246IE9yaWVudGF0aW9uKTogdm9pZCB7XG4gICAgICAgIHRoaXMub3JpZW50YXRpb24gPSBvcmllbnRhdGlvbjtcblxuICAgICAgICBpZiAob3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJykge1xuICAgICAgICAgICAgdGhpcy5rZXlNYW5hZ2VyLndpdGhIb3Jpem9udGFsT3JpZW50YXRpb24odGhpcy5kaXJlY3Rpb25hbGl0eS52YWx1ZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmtleU1hbmFnZXIud2l0aFZlcnRpY2FsT3JpZW50YXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
@@ -1,86 +0,0 @@
1
- import { booleanAttribute, ChangeDetectorRef, DestroyRef, Directive, ElementRef, inject, InjectionToken, Input, numberAttribute } from '@angular/core';
2
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
3
- import { injectRovingFocusGroup } from './roving-focus-group.directive';
4
- import * as i0 from "@angular/core";
5
- const RdxRovingFocusItemToken = new InjectionToken('RdxRovingFocusItemToken');
6
- export function injectRovingFocusItem() {
7
- return inject(RdxRovingFocusItemToken);
8
- }
9
- export class RdxRovingFocusItemDirective {
10
- constructor() {
11
- /**
12
- * Access the group the roving focus item belongs to.
13
- */
14
- this.group = injectRovingFocusGroup();
15
- /**
16
- * Access the element reference of the roving focus item.
17
- */
18
- this.elementRef = inject((ElementRef));
19
- /**
20
- * Access the destroyRef
21
- */
22
- this.destroyRef = inject(DestroyRef);
23
- /**
24
- * Access the change detector ref
25
- */
26
- this.changeDetectorRef = inject(ChangeDetectorRef);
27
- /**
28
- * Define the order of the roving focus item in the group.
29
- */
30
- this.order = 0;
31
- /**
32
- * Define if the item is disabled.
33
- */
34
- this.disabled = false;
35
- }
36
- ngOnInit() {
37
- this.group.register(this);
38
- this.group.keyManager.change
39
- .pipe(takeUntilDestroyed(this.destroyRef))
40
- .subscribe(() => this.changeDetectorRef.markForCheck());
41
- }
42
- ngOnDestroy() {
43
- this.group.unregister(this);
44
- }
45
- /**
46
- * Handle key events on the roving focus item.
47
- * @param event The key event.
48
- */
49
- _onKeydown(event) {
50
- this.group.onKeydown(event);
51
- }
52
- /**
53
- * Derive the tabindex of the roving focus item.
54
- */
55
- _tabindex() {
56
- return this.group.keyManager.activeItem === this ? 0 : -1;
57
- }
58
- /**
59
- * Focus the roving focus item.
60
- * @internal
61
- */
62
- focus() {
63
- this.elementRef?.nativeElement.focus();
64
- }
65
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRovingFocusItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
66
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxRovingFocusItemDirective, isStandalone: true, selector: "[rdxRovingFocusItem]", inputs: { order: ["order", "order", numberAttribute], disabled: ["disabled", "disabled", booleanAttribute] }, host: { listeners: { "onKeydown": "_onKeydown($event)" }, properties: { "attr.tabindex": "_tabindex()" } }, providers: [{ provide: RdxRovingFocusItemToken, useExisting: RdxRovingFocusItemDirective }], ngImport: i0 }); }
67
- }
68
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxRovingFocusItemDirective, decorators: [{
69
- type: Directive,
70
- args: [{
71
- selector: '[rdxRovingFocusItem]',
72
- standalone: true,
73
- host: {
74
- '(onKeydown)': '_onKeydown($event)',
75
- '[attr.tabindex]': '_tabindex()'
76
- },
77
- providers: [{ provide: RdxRovingFocusItemToken, useExisting: RdxRovingFocusItemDirective }]
78
- }]
79
- }], propDecorators: { order: [{
80
- type: Input,
81
- args: [{ transform: numberAttribute }]
82
- }], disabled: [{
83
- type: Input,
84
- args: [{ transform: booleanAttribute }]
85
- }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9yb3ZpbmctZm9jdXMvc3JjL3JvdmluZy1mb2N1cy1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLGlCQUFpQixFQUNqQixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sY0FBYyxFQUNkLEtBQUssRUFDTCxlQUFlLEVBR2xCLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRWhFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDOztBQUV4RSxNQUFNLHVCQUF1QixHQUFHLElBQUksY0FBYyxDQUM5Qyx5QkFBeUIsQ0FDNUIsQ0FBQztBQUVGLE1BQU0sVUFBVSxxQkFBcUI7SUFDakMsT0FBTyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztBQUMzQyxDQUFDO0FBV0QsTUFBTSxPQUFPLDJCQUEyQjtJQVR4QztRQVVJOztXQUVHO1FBQ2MsVUFBSyxHQUFHLHNCQUFzQixFQUFFLENBQUM7UUFFbEQ7O1dBRUc7UUFDYyxlQUFVLEdBQUcsTUFBTSxDQUFDLENBQUEsVUFBdUIsQ0FBQSxDQUFDLENBQUM7UUFFOUQ7O1dBRUc7UUFDYyxlQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBRWpEOztXQUVHO1FBQ2Msc0JBQWlCLEdBQUcsTUFBTSxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFL0Q7O1dBRUc7UUFDb0MsVUFBSyxHQUFHLENBQUMsQ0FBQztRQUVqRDs7V0FFRztRQUNxQyxhQUFRLEdBQUcsS0FBSyxDQUFDO0tBb0M1RDtJQWxDRyxRQUFRO1FBQ0osSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFMUIsSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsTUFBTTthQUN2QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ3pDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQztJQUNoRSxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFFRDs7O09BR0c7SUFDSCxVQUFVLENBQUMsS0FBb0I7UUFDM0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUztRQUNMLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsVUFBVSxLQUFLLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsS0FBSztRQUNELElBQUksQ0FBQyxVQUFVLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQzNDLENBQUM7OEdBaEVRLDJCQUEyQjtrR0FBM0IsMkJBQTJCLDRGQXdCaEIsZUFBZSxzQ0FLZixnQkFBZ0IsNEhBL0J6QixDQUFDLEVBQUUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFdBQVcsRUFBRSwyQkFBMkIsRUFBRSxDQUFDOzsyRkFFbEYsMkJBQTJCO2tCQVR2QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFVBQVUsRUFBRSxJQUFJO29CQUNoQixJQUFJLEVBQUU7d0JBQ0YsYUFBYSxFQUFFLG9CQUFvQjt3QkFDbkMsaUJBQWlCLEVBQUUsYUFBYTtxQkFDbkM7b0JBQ0QsU0FBUyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsV0FBVyw2QkFBNkIsRUFBRSxDQUFDO2lCQUM5Rjs4QkF5QjBDLEtBQUs7c0JBQTNDLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFO2dCQUtHLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c2FibGVPcHRpb24gfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQge1xuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgRGVzdHJveVJlZixcbiAgICBEaXJlY3RpdmUsXG4gICAgRWxlbWVudFJlZixcbiAgICBpbmplY3QsXG4gICAgSW5qZWN0aW9uVG9rZW4sXG4gICAgSW5wdXQsXG4gICAgbnVtYmVyQXR0cmlidXRlLFxuICAgIE9uRGVzdHJveSxcbiAgICBPbkluaXRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmltcG9ydCB7IGluamVjdFJvdmluZ0ZvY3VzR3JvdXAgfSBmcm9tICcuL3JvdmluZy1mb2N1cy1ncm91cC5kaXJlY3RpdmUnO1xuXG5jb25zdCBSZHhSb3ZpbmdGb2N1c0l0ZW1Ub2tlbiA9IG5ldyBJbmplY3Rpb25Ub2tlbjxSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmU+KFxuICAgICdSZHhSb3ZpbmdGb2N1c0l0ZW1Ub2tlbidcbik7XG5cbmV4cG9ydCBmdW5jdGlvbiBpbmplY3RSb3ZpbmdGb2N1c0l0ZW0oKTogUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlIHtcbiAgICByZXR1cm4gaW5qZWN0KFJkeFJvdmluZ0ZvY3VzSXRlbVRva2VuKTtcbn1cblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4Um92aW5nRm9jdXNJdGVtXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBob3N0OiB7XG4gICAgICAgICcob25LZXlkb3duKSc6ICdfb25LZXlkb3duKCRldmVudCknLFxuICAgICAgICAnW2F0dHIudGFiaW5kZXhdJzogJ190YWJpbmRleCgpJ1xuICAgIH0sXG4gICAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBSZHhSb3ZpbmdGb2N1c0l0ZW1Ub2tlbiwgdXNlRXhpc3Rpbmc6IFJkeFJvdmluZ0ZvY3VzSXRlbURpcmVjdGl2ZSB9XVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgRm9jdXNhYmxlT3B0aW9uIHtcbiAgICAvKipcbiAgICAgKiBBY2Nlc3MgdGhlIGdyb3VwIHRoZSByb3ZpbmcgZm9jdXMgaXRlbSBiZWxvbmdzIHRvLlxuICAgICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZ3JvdXAgPSBpbmplY3RSb3ZpbmdGb2N1c0dyb3VwKCk7XG5cbiAgICAvKipcbiAgICAgKiBBY2Nlc3MgdGhlIGVsZW1lbnQgcmVmZXJlbmNlIG9mIHRoZSByb3ZpbmcgZm9jdXMgaXRlbS5cbiAgICAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZjxIVE1MRWxlbWVudD4pO1xuXG4gICAgLyoqXG4gICAgICogQWNjZXNzIHRoZSBkZXN0cm95UmVmXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgLyoqXG4gICAgICogQWNjZXNzIHRoZSBjaGFuZ2UgZGV0ZWN0b3IgcmVmXG4gICAgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBjaGFuZ2VEZXRlY3RvclJlZiA9IGluamVjdChDaGFuZ2VEZXRlY3RvclJlZik7XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmUgdGhlIG9yZGVyIG9mIHRoZSByb3ZpbmcgZm9jdXMgaXRlbSBpbiB0aGUgZ3JvdXAuXG4gICAgICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGUgfSkgb3JkZXIgPSAwO1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lIGlmIHRoZSBpdGVtIGlzIGRpc2FibGVkLlxuICAgICAqL1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBkaXNhYmxlZCA9IGZhbHNlO1xuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZ3JvdXAucmVnaXN0ZXIodGhpcyk7XG5cbiAgICAgICAgdGhpcy5ncm91cC5rZXlNYW5hZ2VyLmNoYW5nZVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYubWFya0ZvckNoZWNrKCkpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmdyb3VwLnVucmVnaXN0ZXIodGhpcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSGFuZGxlIGtleSBldmVudHMgb24gdGhlIHJvdmluZyBmb2N1cyBpdGVtLlxuICAgICAqIEBwYXJhbSBldmVudCBUaGUga2V5IGV2ZW50LlxuICAgICAqL1xuICAgIF9vbktleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ncm91cC5vbktleWRvd24oZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIERlcml2ZSB0aGUgdGFiaW5kZXggb2YgdGhlIHJvdmluZyBmb2N1cyBpdGVtLlxuICAgICAqL1xuICAgIF90YWJpbmRleCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5ncm91cC5rZXlNYW5hZ2VyLmFjdGl2ZUl0ZW0gPT09IHRoaXMgPyAwIDogLTE7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRm9jdXMgdGhlIHJvdmluZyBmb2N1cyBpdGVtLlxuICAgICAqIEBpbnRlcm5hbFxuICAgICAqL1xuICAgIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmVsZW1lbnRSZWY/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG59XG4iXX0=
@@ -1,49 +0,0 @@
1
- import { booleanAttribute, Directive, EventEmitter, Input, Output } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- let uniqueId = 0;
4
- export class RdxToggleRootDirective {
5
- constructor() {
6
- this.pressed = false;
7
- this.disabled = false;
8
- this.id = 'rdx-toggle-' + uniqueId++;
9
- /**
10
- * Event emitted when the toggle is pressed.
11
- */
12
- this.onPressedChange = new EventEmitter();
13
- }
14
- toggle() {
15
- if (this.disabled) {
16
- return;
17
- }
18
- this.pressed = !this.pressed;
19
- this.onPressedChange.emit(this.pressed);
20
- }
21
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxToggleRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
22
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.0.4", type: RdxToggleRootDirective, isStandalone: true, selector: "button[ToggleRoot]", inputs: { pressed: ["pressed", "pressed", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], id: "id" }, outputs: { onPressedChange: "onPressedChange" }, host: { attributes: { "type": "button" }, listeners: { "click": "toggle()" }, properties: { "attr.aria-pressed": "pressed", "attr.data-state": "pressed ? \"on\" : \"off\"", "attr.data-disabled": "disabled" } }, exportAs: ["ToggleRoot"], ngImport: i0 }); }
23
- }
24
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.4", ngImport: i0, type: RdxToggleRootDirective, decorators: [{
25
- type: Directive,
26
- args: [{
27
- selector: 'button[ToggleRoot]',
28
- exportAs: 'ToggleRoot',
29
- standalone: true,
30
- host: {
31
- type: 'button',
32
- '[attr.aria-pressed]': 'pressed',
33
- '[attr.data-state]': 'pressed ? "on" : "off"',
34
- '[attr.data-disabled]': 'disabled',
35
- '(click)': 'toggle()'
36
- }
37
- }]
38
- }], propDecorators: { pressed: [{
39
- type: Input,
40
- args: [{ transform: booleanAttribute }]
41
- }], disabled: [{
42
- type: Input,
43
- args: [{ transform: booleanAttribute }]
44
- }], id: [{
45
- type: Input
46
- }], onPressedChange: [{
47
- type: Output
48
- }] } });
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9nZ2xlLXJvb3QuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy90b2dnbGUvc3JjL3RvZ2dsZS1yb290LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUV6RixJQUFJLFFBQVEsR0FBRyxDQUFDLENBQUM7QUFnQ2pCLE1BQU0sT0FBTyxzQkFBc0I7SUFibkM7UUFjNEMsWUFBTyxHQUFHLEtBQUssQ0FBQztRQUVoQixhQUFRLEdBQUcsS0FBSyxDQUFDO1FBRWhELE9BQUUsR0FBRyxhQUFhLEdBQUcsUUFBUSxFQUFFLENBQUM7UUFDekM7O1dBRUc7UUFDZ0Isb0JBQWUsR0FBRyxJQUFJLFlBQVksRUFBVyxDQUFDO0tBU3BFO0lBUGEsTUFBTTtRQUNaLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ2hCLE9BQU87UUFDWCxDQUFDO1FBQ0QsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUM7OEdBakJRLHNCQUFzQjtrR0FBdEIsc0JBQXNCLGdHQUNYLGdCQUFnQixzQ0FFaEIsZ0JBQWdCOzsyRkFIM0Isc0JBQXNCO2tCQWJsQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLFFBQVEsRUFBRSxZQUFZO29CQUN0QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxRQUFRO3dCQUNkLHFCQUFxQixFQUFFLFNBQVM7d0JBQ2hDLG1CQUFtQixFQUFFLHdCQUF3Qjt3QkFDN0Msc0JBQXNCLEVBQUUsVUFBVTt3QkFFbEMsU0FBUyxFQUFFLFVBQVU7cUJBQ3hCO2lCQUNKOzhCQUUyQyxPQUFPO3NCQUE5QyxLQUFLO3VCQUFDLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFO2dCQUVFLFFBQVE7c0JBQS9DLEtBQUs7dUJBQUMsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBRTdCLEVBQUU7c0JBQVYsS0FBSztnQkFJYSxlQUFlO3NCQUFqQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgRGlyZWN0aXZlLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxubGV0IHVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IGludGVyZmFjZSBUb2dnbGVQcm9wcyB7XG4gICAgLyoqXG4gICAgICogVGhlIGNvbnRyb2xsZWQgc3RhdGUgb2YgdGhlIHRvZ2dsZS5cbiAgICAgKi9cbiAgICBwcmVzc2VkPzogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBUaGUgc3RhdGUgb2YgdGhlIHRvZ2dsZSB3aGVuIGluaXRpYWxseSByZW5kZXJlZC4gVXNlIGBkZWZhdWx0UHJlc3NlZGBcbiAgICAgKiBpZiB5b3UgZG8gbm90IG5lZWQgdG8gY29udHJvbCB0aGUgc3RhdGUgb2YgdGhlIHRvZ2dsZS5cbiAgICAgKiBAZGVmYXVsdFZhbHVlIGZhbHNlXG4gICAgICovXG4gICAgZGVmYXVsdFByZXNzZWQ/OiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIFRoZSBjYWxsYmFjayB0aGF0IGZpcmVzIHdoZW4gdGhlIHN0YXRlIG9mIHRoZSB0b2dnbGUgY2hhbmdlcy5cbiAgICAgKi9cbiAgICBvblByZXNzZWRDaGFuZ2U/OiBFdmVudEVtaXR0ZXI8Ym9vbGVhbj47XG59XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnYnV0dG9uW1RvZ2dsZVJvb3RdJyxcbiAgICBleHBvcnRBczogJ1RvZ2dsZVJvb3QnLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaG9zdDoge1xuICAgICAgICB0eXBlOiAnYnV0dG9uJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtcHJlc3NlZF0nOiAncHJlc3NlZCcsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdwcmVzc2VkID8gXCJvblwiIDogXCJvZmZcIicsXG4gICAgICAgICdbYXR0ci5kYXRhLWRpc2FibGVkXSc6ICdkaXNhYmxlZCcsXG5cbiAgICAgICAgJyhjbGljayknOiAndG9nZ2xlKCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhUb2dnbGVSb290RGlyZWN0aXZlIGltcGxlbWVudHMgVG9nZ2xlUHJvcHMge1xuICAgIEBJbnB1dCh7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KSBwcmVzc2VkID0gZmFsc2U7XG5cbiAgICBASW5wdXQoeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSkgZGlzYWJsZWQgPSBmYWxzZTtcblxuICAgIEBJbnB1dCgpIGlkID0gJ3JkeC10b2dnbGUtJyArIHVuaXF1ZUlkKys7XG4gICAgLyoqXG4gICAgICogRXZlbnQgZW1pdHRlZCB3aGVuIHRoZSB0b2dnbGUgaXMgcHJlc3NlZC5cbiAgICAgKi9cbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgb25QcmVzc2VkQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxib29sZWFuPigpO1xuXG4gICAgcHJvdGVjdGVkIHRvZ2dsZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLnByZXNzZWQgPSAhdGhpcy5wcmVzc2VkO1xuICAgICAgICB0aGlzLm9uUHJlc3NlZENoYW5nZS5lbWl0KHRoaXMucHJlc3NlZCk7XG4gICAgfVxufVxuIl19