@radix-ng/primitives 0.51.0 → 1.0.0-beta.1

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 (186) hide show
  1. package/fesm2022/radix-ng-primitives-accordion.mjs +105 -38
  2. package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
  3. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +221 -129
  4. package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
  5. package/fesm2022/radix-ng-primitives-arrow.mjs +20 -4
  6. package/fesm2022/radix-ng-primitives-arrow.mjs.map +1 -1
  7. package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
  8. package/fesm2022/radix-ng-primitives-avatar.mjs +54 -61
  9. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
  10. package/fesm2022/radix-ng-primitives-button.mjs +123 -0
  11. package/fesm2022/radix-ng-primitives-button.mjs.map +1 -0
  12. package/fesm2022/radix-ng-primitives-calendar.mjs +95 -83
  13. package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
  14. package/fesm2022/radix-ng-primitives-checkbox.mjs +378 -54
  15. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
  16. package/fesm2022/radix-ng-primitives-collapsible.mjs +182 -81
  17. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
  18. package/fesm2022/radix-ng-primitives-collection.mjs +40 -57
  19. package/fesm2022/radix-ng-primitives-collection.mjs.map +1 -1
  20. package/fesm2022/radix-ng-primitives-config.mjs.map +1 -1
  21. package/fesm2022/radix-ng-primitives-context-menu.mjs +140 -424
  22. package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
  23. package/fesm2022/radix-ng-primitives-core.mjs +845 -744
  24. package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
  25. package/fesm2022/radix-ng-primitives-cropper.mjs +288 -308
  26. package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
  27. package/fesm2022/radix-ng-primitives-date-field.mjs +104 -58
  28. package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
  29. package/fesm2022/radix-ng-primitives-dialog.mjs +655 -327
  30. package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
  31. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +70 -46
  32. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -1
  33. package/fesm2022/radix-ng-primitives-drawer.mjs +960 -0
  34. package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -0
  35. package/fesm2022/radix-ng-primitives-editable.mjs +304 -23
  36. package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
  37. package/fesm2022/radix-ng-primitives-field.mjs +363 -0
  38. package/fesm2022/radix-ng-primitives-field.mjs.map +1 -0
  39. package/fesm2022/radix-ng-primitives-fieldset.mjs +79 -0
  40. package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -0
  41. package/fesm2022/radix-ng-primitives-focus-scope.mjs +23 -8
  42. package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
  43. package/fesm2022/radix-ng-primitives-input.mjs +172 -0
  44. package/fesm2022/radix-ng-primitives-input.mjs.map +1 -0
  45. package/fesm2022/radix-ng-primitives-label.mjs +6 -6
  46. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
  47. package/fesm2022/radix-ng-primitives-menu.mjs +1907 -363
  48. package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
  49. package/fesm2022/radix-ng-primitives-menubar.mjs +290 -162
  50. package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
  51. package/fesm2022/radix-ng-primitives-meter.mjs +271 -0
  52. package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -0
  53. package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1052 -1553
  54. package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
  55. package/fesm2022/radix-ng-primitives-number-field.mjs +1102 -367
  56. package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
  57. package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
  58. package/fesm2022/radix-ng-primitives-popover.mjs +978 -989
  59. package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
  60. package/fesm2022/radix-ng-primitives-popper.mjs +111 -44
  61. package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
  62. package/fesm2022/radix-ng-primitives-portal.mjs +34 -10
  63. package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -1
  64. package/fesm2022/radix-ng-primitives-presence.mjs +134 -246
  65. package/fesm2022/radix-ng-primitives-presence.mjs.map +1 -1
  66. package/fesm2022/radix-ng-primitives-preview-card.mjs +997 -0
  67. package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -0
  68. package/fesm2022/radix-ng-primitives-progress.mjs +223 -84
  69. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
  70. package/fesm2022/radix-ng-primitives-radio.mjs +191 -51
  71. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  72. package/fesm2022/radix-ng-primitives-roving-focus.mjs +96 -50
  73. package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
  74. package/fesm2022/radix-ng-primitives-scroll-area.mjs +923 -0
  75. package/fesm2022/radix-ng-primitives-scroll-area.mjs.map +1 -0
  76. package/fesm2022/radix-ng-primitives-select.mjs +791 -509
  77. package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
  78. package/fesm2022/radix-ng-primitives-separator.mjs +12 -35
  79. package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
  80. package/fesm2022/radix-ng-primitives-slider.mjs +969 -717
  81. package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
  82. package/fesm2022/radix-ng-primitives-stepper.mjs +15 -19
  83. package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
  84. package/fesm2022/radix-ng-primitives-switch.mjs +125 -113
  85. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
  86. package/fesm2022/radix-ng-primitives-tabs.mjs +390 -108
  87. package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
  88. package/fesm2022/radix-ng-primitives-time-field.mjs +55 -46
  89. package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
  90. package/fesm2022/radix-ng-primitives-toast.mjs +839 -0
  91. package/fesm2022/radix-ng-primitives-toast.mjs.map +1 -0
  92. package/fesm2022/radix-ng-primitives-toggle-group.mjs +121 -247
  93. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
  94. package/fesm2022/radix-ng-primitives-toggle.mjs +98 -61
  95. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
  96. package/fesm2022/radix-ng-primitives-toolbar.mjs +303 -92
  97. package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
  98. package/fesm2022/radix-ng-primitives-tooltip.mjs +699 -1072
  99. package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
  100. package/fesm2022/radix-ng-primitives-visually-hidden.mjs +25 -66
  101. package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
  102. package/meter/README.md +3 -0
  103. package/navigation-menu/README.md +2 -1
  104. package/package.json +39 -18
  105. package/portal/README.md +2 -0
  106. package/preview-card/README.md +3 -0
  107. package/schematics/collection.json +1 -0
  108. package/schematics/ng-add/index.d.ts +3 -2
  109. package/schematics/ng-add/index.js +62 -31
  110. package/schematics/ng-add/index.js.map +1 -1
  111. package/schematics/ng-add/package-config.d.ts +4 -2
  112. package/schematics/ng-add/package-config.js +10 -2
  113. package/schematics/ng-add/package-config.js.map +1 -1
  114. package/schematics/ng-add/schema.d.ts +3 -0
  115. package/schematics/ng-add/schema.js +3 -0
  116. package/schematics/ng-add/schema.js.map +1 -0
  117. package/schematics/ng-add/schema.json +14 -0
  118. package/select/README.md +2 -0
  119. package/types/radix-ng-primitives-accordion.d.ts +51 -16
  120. package/types/radix-ng-primitives-alert-dialog.d.ts +95 -38
  121. package/types/radix-ng-primitives-arrow.d.ts +1 -1
  122. package/types/radix-ng-primitives-aspect-ratio.d.ts +1 -1
  123. package/types/radix-ng-primitives-avatar.d.ts +7 -11
  124. package/types/radix-ng-primitives-button.d.ts +73 -0
  125. package/types/radix-ng-primitives-calendar.d.ts +39 -20
  126. package/types/radix-ng-primitives-checkbox.d.ts +204 -35
  127. package/types/radix-ng-primitives-collapsible.d.ts +114 -40
  128. package/types/radix-ng-primitives-collection.d.ts +38 -34
  129. package/types/radix-ng-primitives-config.d.ts +1 -1
  130. package/types/radix-ng-primitives-context-menu.d.ts +61 -116
  131. package/types/radix-ng-primitives-core.d.ts +345 -235
  132. package/types/radix-ng-primitives-cropper.d.ts +89 -56
  133. package/types/radix-ng-primitives-date-field.d.ts +49 -28
  134. package/types/radix-ng-primitives-dialog.d.ts +283 -165
  135. package/types/radix-ng-primitives-dismissable-layer.d.ts +15 -7
  136. package/types/radix-ng-primitives-drawer.d.ts +426 -0
  137. package/types/radix-ng-primitives-editable.d.ts +91 -14
  138. package/types/radix-ng-primitives-field.d.ts +374 -0
  139. package/types/radix-ng-primitives-fieldset.d.ts +49 -0
  140. package/types/radix-ng-primitives-focus-scope.d.ts +15 -6
  141. package/types/radix-ng-primitives-input.d.ts +87 -0
  142. package/types/radix-ng-primitives-label.d.ts +0 -1
  143. package/types/radix-ng-primitives-menu.d.ts +584 -99
  144. package/types/radix-ng-primitives-menubar.d.ts +61 -50
  145. package/types/radix-ng-primitives-meter.d.ts +194 -0
  146. package/types/radix-ng-primitives-navigation-menu.d.ts +422 -340
  147. package/types/radix-ng-primitives-number-field.d.ts +405 -145
  148. package/types/radix-ng-primitives-pagination.d.ts +2 -2
  149. package/types/radix-ng-primitives-popover.d.ts +366 -351
  150. package/types/radix-ng-primitives-popper.d.ts +68 -11
  151. package/types/radix-ng-primitives-portal.d.ts +14 -6
  152. package/types/radix-ng-primitives-presence.d.ts +28 -76
  153. package/types/radix-ng-primitives-preview-card.d.ts +359 -0
  154. package/types/radix-ng-primitives-progress.d.ts +175 -48
  155. package/types/radix-ng-primitives-radio.d.ts +55 -25
  156. package/types/radix-ng-primitives-roving-focus.d.ts +33 -23
  157. package/types/radix-ng-primitives-scroll-area.d.ts +253 -0
  158. package/types/radix-ng-primitives-select.d.ts +475 -177
  159. package/types/radix-ng-primitives-separator.d.ts +7 -32
  160. package/types/radix-ng-primitives-slider.d.ts +315 -201
  161. package/types/radix-ng-primitives-stepper.d.ts +5 -7
  162. package/types/radix-ng-primitives-switch.d.ts +86 -71
  163. package/types/radix-ng-primitives-tabs.d.ts +213 -79
  164. package/types/radix-ng-primitives-time-field.d.ts +42 -27
  165. package/types/radix-ng-primitives-toast.d.ts +378 -0
  166. package/types/radix-ng-primitives-toggle-group.d.ts +86 -164
  167. package/types/radix-ng-primitives-toggle.d.ts +43 -53
  168. package/types/radix-ng-primitives-toolbar.d.ts +164 -38
  169. package/types/radix-ng-primitives-tooltip.d.ts +348 -384
  170. package/types/radix-ng-primitives-visually-hidden.d.ts +19 -19
  171. package/dropdown-menu/README.md +0 -1
  172. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +0 -581
  173. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +0 -1
  174. package/fesm2022/radix-ng-primitives-hover-card.mjs +0 -1238
  175. package/fesm2022/radix-ng-primitives-hover-card.mjs.map +0 -1
  176. package/fesm2022/radix-ng-primitives-select2.mjs +0 -897
  177. package/fesm2022/radix-ng-primitives-select2.mjs.map +0 -1
  178. package/fesm2022/radix-ng-primitives-tooltip2.mjs +0 -735
  179. package/fesm2022/radix-ng-primitives-tooltip2.mjs.map +0 -1
  180. package/hover-card/README.md +0 -3
  181. package/select2/README.md +0 -3
  182. package/tooltip2/README.md +0 -3
  183. package/types/radix-ng-primitives-dropdown-menu.d.ts +0 -171
  184. package/types/radix-ng-primitives-hover-card.d.ts +0 -471
  185. package/types/radix-ng-primitives-select2.d.ts +0 -511
  186. package/types/radix-ng-primitives-tooltip2.d.ts +0 -325
@@ -1,27 +1,36 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { InputSignalWithTransform, ModelSignal, Signal, OnInit, InjectionToken } from '@angular/core';
3
- import { BooleanInput } from '@angular/cdk/coercion';
2
+ import { ModelSignal, InputSignal, InputSignalWithTransform, Signal, InjectionToken } from '@angular/core';
4
3
  import { ControlValueAccessor } from '@angular/forms';
4
+ import { BooleanInput, RdxFormValueControl } from '@radix-ng/primitives/core';
5
5
  import * as i1 from '@radix-ng/primitives/roving-focus';
6
6
  import { Orientation } from '@radix-ng/primitives/roving-focus';
7
7
  import * as i1$1 from '@radix-ng/primitives/visually-hidden';
8
8
 
9
9
  interface RadioGroupProps {
10
- name?: string;
11
- disabled?: InputSignalWithTransform<boolean, BooleanInput>;
12
- defaultValue?: string;
13
10
  value: ModelSignal<string | null>;
14
- disableState: Signal<boolean>;
11
+ defaultValue: InputSignal<string | undefined>;
12
+ name: InputSignal<string | undefined>;
13
+ form: InputSignal<string | undefined>;
14
+ disabled: InputSignalWithTransform<boolean, BooleanInput>;
15
+ readonly: InputSignalWithTransform<boolean, BooleanInput>;
16
+ required: InputSignalWithTransform<boolean, BooleanInput>;
17
+ orientation: InputSignal<Orientation | undefined>;
18
+ disabledState: Signal<boolean>;
15
19
  }
16
20
  interface RadioGroupDirective extends RadioGroupProps {
17
21
  select(value: string | null): void;
18
22
  onTouched(): void;
23
+ setArrowNavigation(value: boolean): void;
24
+ isArrowNavigation(): boolean;
19
25
  }
20
26
 
21
- declare class RdxRadioGroupDirective implements RadioGroupProps, RadioGroupDirective, ControlValueAccessor {
27
+ declare class RdxRadioGroupDirective implements RadioGroupProps, RadioGroupDirective, ControlValueAccessor, RdxFormValueControl<string | null> {
22
28
  readonly value: _angular_core.ModelSignal<string | null>;
29
+ readonly defaultValue: _angular_core.InputSignal<string | undefined>;
30
+ readonly name: _angular_core.InputSignal<string | undefined>;
31
+ readonly form: _angular_core.InputSignal<string | undefined>;
23
32
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
24
- defaultValue?: string;
33
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
25
34
  readonly required: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
26
35
  readonly orientation: _angular_core.InputSignal<Orientation | undefined>;
27
36
  /**
@@ -29,7 +38,8 @@ declare class RdxRadioGroupDirective implements RadioGroupProps, RadioGroupDirec
29
38
  */
30
39
  readonly onValueChange: _angular_core.OutputEmitterRef<string>;
31
40
  private readonly disable;
32
- readonly disableState: _angular_core.Signal<boolean>;
41
+ readonly disabledState: _angular_core.Signal<boolean>;
42
+ private readonly arrowNavigation;
33
43
  /**
34
44
  * The callback function to call when the value of the radio group changes.
35
45
  */
@@ -39,24 +49,25 @@ declare class RdxRadioGroupDirective implements RadioGroupProps, RadioGroupDirec
39
49
  * @ignore
40
50
  */
41
51
  onTouched: () => void;
52
+ constructor();
42
53
  /**
43
54
  * Select a radio item.
44
55
  * @param value The value of the radio item to select.
45
56
  * @ignore
46
57
  */
47
- select(value: string): void;
58
+ select(value: string | null): void;
48
59
  /**
49
60
  * Update the value of the radio group.
50
61
  * @param value The new value of the radio group.
51
62
  * @ignore
52
63
  */
53
- writeValue(value: string): void;
64
+ writeValue(value: string | null): void;
54
65
  /**
55
66
  * Register a callback function to call when the value of the radio group changes.
56
67
  * @param fn The callback function to call when the value of the radio group changes.
57
68
  * @ignore
58
69
  */
59
- registerOnChange(fn: (value: string) => void): void;
70
+ registerOnChange(fn: (value: string | null) => void): void;
60
71
  /** @ignore */
61
72
  registerOnTouched(fn: () => void): void;
62
73
  /**
@@ -65,26 +76,36 @@ declare class RdxRadioGroupDirective implements RadioGroupProps, RadioGroupDirec
65
76
  * @ignore
66
77
  */
67
78
  setDisabledState(isDisabled: boolean): void;
79
+ setArrowNavigation(value: boolean): void;
80
+ isArrowNavigation(): boolean;
68
81
  protected onKeydown(): void;
69
82
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxRadioGroupDirective, never>;
70
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioGroupDirective, "[rdxRadioRoot]", ["rdxRadioRoot"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onValueChange": "onValueChange"; }, never, never, true, [{ directive: typeof i1.RdxRovingFocusGroupDirective; inputs: { "dir": "dir"; "orientation": "orientation"; "loop": "loop"; }; outputs: {}; }]>;
83
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioGroupDirective, "[rdxRadioRoot]", ["rdxRadioRoot"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "form": { "alias": "form"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, { "value": "valueChange"; "onValueChange": "onValueChange"; }, never, never, true, [{ directive: typeof i1.RdxRovingFocusGroupDirective; inputs: { "dir": "dir"; "orientation": "orientation"; "loop": "loop"; }; outputs: {}; }]>;
71
84
  }
72
85
 
73
86
  declare const RdxRadioItemToken: InjectionToken<RdxRadioItemDirective>;
74
87
  declare function injectRadioItem(): RdxRadioItemDirective;
75
- declare class RdxRadioItemDirective implements OnInit {
88
+ declare class RdxRadioItemDirective {
76
89
  private readonly radioGroup;
77
90
  private readonly elementRef;
91
+ private readonly renderer;
92
+ private readonly rovingFocusItem;
93
+ private readonly destroyRef;
94
+ private readonly inputElement;
95
+ private previousCheckedState;
78
96
  readonly value: _angular_core.InputSignal<string>;
79
97
  readonly id: _angular_core.InputSignal<string | undefined>;
80
- readonly required: _angular_core.InputSignal<boolean | undefined>;
98
+ readonly required: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
81
99
  readonly disabled: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
82
- protected readonly disabledState: _angular_core.Signal<boolean>;
100
+ readonly readonly: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
101
+ readonly nativeButton: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
102
+ readonly nativeButtonState: _angular_core.Signal<boolean>;
103
+ readonly disabledState: _angular_core.Signal<boolean>;
104
+ readonly readonlyState: _angular_core.Signal<boolean>;
105
+ readonly requiredState: _angular_core.Signal<boolean>;
83
106
  readonly checkedState: _angular_core.Signal<boolean>;
84
107
  private readonly ARROW_KEYS;
85
- private readonly isArrowKeyPressedSignal;
86
- /** @ignore */
87
- ngOnInit(): void;
108
+ constructor();
88
109
  /** @ignore */
89
110
  onClick(): void;
90
111
  /** @ignore */
@@ -93,8 +114,13 @@ declare class RdxRadioItemDirective implements OnInit {
93
114
  onKeyUp(): void;
94
115
  /** @ignore */
95
116
  onFocus(): void;
117
+ private isAllowedArrowKey;
118
+ private createHiddenInput;
119
+ private syncHiddenInput;
120
+ private setOptionalAttribute;
121
+ private setBooleanAttribute;
96
122
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxRadioItemDirective, never>;
97
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioItemDirective, "[rdxRadioItem]", ["rdxRadioItem"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RdxRovingFocusItemDirective; inputs: { "tabStopId": "id"; "focusable": "focusable"; "active": "active"; "allowShiftKey": "allowShiftKey"; }; outputs: {}; }]>;
123
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioItemDirective, "[rdxRadioItem]", ["rdxRadioItem"], { "value": { "alias": "value"; "required": true; "isSignal": true; }; "id": { "alias": "id"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "nativeButton": { "alias": "nativeButton"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RdxRovingFocusItemDirective; inputs: { "tabStopId": "id"; "focusable": "focusable"; "active": "active"; "allowShiftKey": "allowShiftKey"; }; outputs: {}; }]>;
98
124
  }
99
125
 
100
126
  declare class RdxRadioIndicatorDirective {
@@ -106,13 +132,17 @@ declare class RdxRadioIndicatorDirective {
106
132
 
107
133
  declare class RdxRadioItemInputDirective {
108
134
  private readonly radioItem;
109
- readonly name: _angular_core.InputSignal<string | undefined>;
135
+ private readonly radioGroup;
136
+ private readonly input;
137
+ readonly name: _angular_core.Signal<string | undefined>;
138
+ readonly form: _angular_core.Signal<string | undefined>;
110
139
  readonly value: _angular_core.Signal<string | undefined>;
111
- readonly checked: _angular_core.Signal<true | undefined>;
112
- readonly required: _angular_core.InputSignal<boolean | undefined>;
113
- readonly disabled: _angular_core.InputSignal<boolean | undefined>;
140
+ readonly checked: _angular_core.Signal<boolean>;
141
+ readonly required: _angular_core.Signal<boolean>;
142
+ readonly disabled: _angular_core.Signal<boolean>;
143
+ constructor();
114
144
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxRadioItemInputDirective, never>;
115
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioItemInputDirective, "[rdxRadioItemInput]", ["rdxRadioItemInput"], { "name": { "alias": "name"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1$1.RdxVisuallyHiddenDirective; inputs: { "feature": "feature"; }; outputs: {}; }]>;
145
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxRadioItemInputDirective, "input[rdxRadioItemInput]", ["rdxRadioItemInput"], {}, {}, never, never, true, [{ directive: typeof i1$1.RdxVisuallyHiddenDirective; inputs: { "feature": "feature"; }; outputs: {}; }]>;
116
146
  }
117
147
 
118
148
  export { RdxRadioGroupDirective, RdxRadioIndicatorDirective, RdxRadioItemDirective, RdxRadioItemInputDirective, RdxRadioItemToken, injectRadioItem };
@@ -1,5 +1,6 @@
1
+ import * as _radix_ng_primitives_core from '@radix-ng/primitives/core';
2
+ import { BooleanInput } from '@radix-ng/primitives/core';
1
3
  import * as _angular_core from '@angular/core';
2
- import { BooleanInput } from '@angular/cdk/coercion';
3
4
  import * as _radix_ng_primitives_roving_focus from '@radix-ng/primitives/roving-focus';
4
5
 
5
6
  type Orientation = 'horizontal' | 'vertical';
@@ -14,13 +15,11 @@ declare const rootContext: () => {
14
15
  focusableItems: _angular_core.WritableSignal<HTMLElement[]>;
15
16
  onItemFocus: (tabStopId: string) => void;
16
17
  onItemShiftTab: () => void;
17
- onFocusableItemAdd: () => void;
18
- onFocusableItemRemove: () => void;
19
- registerItem: (item: HTMLElement) => void;
20
- unregisterItem: (item: HTMLElement) => void;
18
+ registerItem: (item: HTMLElement, tabStopId: string) => void;
19
+ unregisterItem: (item: HTMLElement, tabStopId: string) => void;
21
20
  };
22
21
  type RovingFocusGroupContext = ReturnType<typeof rootContext>;
23
- declare const injectRovingFocusGroupContext: (optional?: boolean) => {
22
+ declare const injectRovingFocusGroupContext: _radix_ng_primitives_core.InjectContext<{
24
23
  loop: _angular_core.Signal<boolean>;
25
24
  dir: _angular_core.Signal<Direction>;
26
25
  orientation: _angular_core.Signal<Orientation>;
@@ -28,11 +27,9 @@ declare const injectRovingFocusGroupContext: (optional?: boolean) => {
28
27
  focusableItems: _angular_core.WritableSignal<HTMLElement[]>;
29
28
  onItemFocus: (tabStopId: string) => void;
30
29
  onItemShiftTab: () => void;
31
- onFocusableItemAdd: () => void;
32
- onFocusableItemRemove: () => void;
33
- registerItem: (item: HTMLElement) => void;
34
- unregisterItem: (item: HTMLElement) => void;
35
- } | null;
30
+ registerItem: (item: HTMLElement, tabStopId: string) => void;
31
+ unregisterItem: (item: HTMLElement, tabStopId: string) => void;
32
+ }>;
36
33
  declare const provideRovingFocusGroupContext: (useFactory: () => {
37
34
  loop: _angular_core.Signal<boolean>;
38
35
  dir: _angular_core.Signal<Direction>;
@@ -41,10 +38,8 @@ declare const provideRovingFocusGroupContext: (useFactory: () => {
41
38
  focusableItems: _angular_core.WritableSignal<HTMLElement[]>;
42
39
  onItemFocus: (tabStopId: string) => void;
43
40
  onItemShiftTab: () => void;
44
- onFocusableItemAdd: () => void;
45
- onFocusableItemRemove: () => void;
46
- registerItem: (item: HTMLElement) => void;
47
- unregisterItem: (item: HTMLElement) => void;
41
+ registerItem: (item: HTMLElement, tabStopId: string) => void;
42
+ unregisterItem: (item: HTMLElement, tabStopId: string) => void;
48
43
  }) => _angular_core.Provider;
49
44
  /**
50
45
  * @group Components
@@ -52,6 +47,7 @@ declare const provideRovingFocusGroupContext: (useFactory: () => {
52
47
  declare class RdxRovingFocusGroupDirective {
53
48
  private readonly isBrowser;
54
49
  private readonly elementRef;
50
+ private readonly destroyRef;
55
51
  /**
56
52
  * The orientation of the group. Mainly so arrow navigation is done accordingly (left & right vs. up & down)
57
53
  */
@@ -95,12 +91,17 @@ declare class RdxRovingFocusGroupDirective {
95
91
  readonly focusableItems: _angular_core.WritableSignal<HTMLElement[]>;
96
92
  protected readonly isClickFocus: _angular_core.WritableSignal<boolean>;
97
93
  readonly isTabbingBackOut: _angular_core.WritableSignal<boolean>;
98
- readonly focusableItemsCount: _angular_core.WritableSignal<number>;
94
+ private readonly itemIds;
95
+ private isDestroyed;
99
96
  constructor();
100
97
  setOrientation(value: Orientation): void;
101
98
  setDir(value: Direction): void;
102
99
  setLoop(value: boolean): void;
103
100
  /** @ignore */
101
+ registerItem(item: HTMLElement, tabStopId: string): void;
102
+ /** @ignore */
103
+ unregisterItem(item: HTMLElement, tabStopId: string): void;
104
+ /** @ignore */
104
105
  handleMouseUp(): void;
105
106
  /** @ignore */
106
107
  handleFocus(event: Event): void;
@@ -113,8 +114,11 @@ declare class RdxRovingFocusGroupDirective {
113
114
  */
114
115
  declare class RdxRovingFocusItemDirective {
115
116
  private readonly isBrowser;
116
- private readonly destroyRef;
117
117
  private readonly elementRef;
118
+ /**
119
+ * The enclosing roving-focus group. Optional: when the item is used outside a group
120
+ * (e.g. a standalone Toggle), it degrades to a plain element and does not manage focus.
121
+ */
118
122
  protected readonly rootContext: {
119
123
  loop: _angular_core.Signal<boolean>;
120
124
  dir: _angular_core.Signal<_radix_ng_primitives_roving_focus.Direction>;
@@ -123,18 +127,16 @@ declare class RdxRovingFocusItemDirective {
123
127
  focusableItems: _angular_core.WritableSignal<HTMLElement[]>;
124
128
  onItemFocus: (tabStopId: string) => void;
125
129
  onItemShiftTab: () => void;
126
- onFocusableItemAdd: () => void;
127
- onFocusableItemRemove: () => void;
128
- registerItem: (item: HTMLElement) => void;
129
- unregisterItem: (item: HTMLElement) => void;
130
- };
130
+ registerItem: (item: HTMLElement, tabStopId: string) => void;
131
+ unregisterItem: (item: HTMLElement, tabStopId: string) => void;
132
+ } | null;
131
133
  /**
132
134
  * When false, item will not be focusable.
133
135
  * @group Props
134
136
  */
135
137
  readonly focusableInput: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
136
138
  /**
137
- * When `true`, item will be initially focused.
139
+ * When `true`, marks the item as the active one, so it is preferred when focus enters the group.
138
140
  * @group Props
139
141
  */
140
142
  readonly activeInput: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
@@ -147,16 +149,24 @@ declare class RdxRovingFocusItemDirective {
147
149
  * @group Props
148
150
  */
149
151
  readonly allowShiftKey: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
152
+ private readonly generatedId;
150
153
  protected readonly id: _angular_core.Signal<string>;
151
154
  protected readonly isCurrentTabStop: _angular_core.Signal<boolean>;
152
155
  protected readonly focusable: _angular_core.WritableSignal<boolean>;
153
156
  protected readonly active: _angular_core.WritableSignal<boolean>;
154
157
  private readonly tabStopId;
158
+ /**
159
+ * The roving tabindex. Without a group the item keeps its natural tab order (`null`); inside a
160
+ * group exactly one focusable item is a tab stop (`0`), the rest are reachable only via arrows (`-1`).
161
+ */
162
+ protected readonly tabindex: _angular_core.Signal<-1 | 0 | null>;
155
163
  constructor();
156
164
  setFocusable(value: boolean): void;
157
165
  setActive(value: boolean): void;
158
166
  setTabStopId(value: string): void;
159
167
  /** @ignore */
168
+ onFocus(): void;
169
+ /** @ignore */
160
170
  handleMouseDown(event: Event): void;
161
171
  /**
162
172
  * Handles the `keydown` event for keyboard navigation within the roving focus group.
@@ -0,0 +1,253 @@
1
+ import * as _angular_core from '@angular/core';
2
+ import { Signal } from '@angular/core';
3
+ import * as _radix_ng_primitives_core from '@radix-ng/primitives/core';
4
+ import { Direction, BooleanInput } from '@radix-ng/primitives/core';
5
+ import * as _radix_ng_primitives_scroll_area from '@radix-ng/primitives/scroll-area';
6
+
7
+ type Size = {
8
+ width: number;
9
+ height: number;
10
+ };
11
+ type Coords = {
12
+ x: number;
13
+ y: number;
14
+ };
15
+ type OverflowEdges = {
16
+ xStart: boolean;
17
+ xEnd: boolean;
18
+ yStart: boolean;
19
+ yEnd: boolean;
20
+ };
21
+ type HiddenState = {
22
+ x: boolean;
23
+ y: boolean;
24
+ corner: boolean;
25
+ };
26
+ /** A minimal, React-`ref`-like mutable holder shared through context. */
27
+ type MutableRef<T> = {
28
+ current: T | null;
29
+ };
30
+ type OverflowEdgeThreshold = number | Partial<{
31
+ xStart: number;
32
+ xEnd: number;
33
+ yStart: number;
34
+ yEnd: number;
35
+ }>;
36
+ interface ScrollAreaRootContext {
37
+ readonly rootId: string;
38
+ readonly direction: Signal<Direction>;
39
+ readonly overflowEdgeThreshold: Signal<{
40
+ xStart: number;
41
+ xEnd: number;
42
+ yStart: number;
43
+ yEnd: number;
44
+ }>;
45
+ readonly hovering: Signal<boolean>;
46
+ readonly scrollingX: Signal<boolean>;
47
+ readonly scrollingY: Signal<boolean>;
48
+ readonly touchModality: Signal<boolean>;
49
+ readonly hasMeasuredScrollbar: Signal<boolean>;
50
+ readonly cornerSize: Signal<Size>;
51
+ readonly thumbSize: Signal<Size>;
52
+ readonly hiddenState: Signal<HiddenState>;
53
+ readonly overflowEdges: Signal<OverflowEdges>;
54
+ readonly rootRef: MutableRef<HTMLElement>;
55
+ readonly viewportRef: MutableRef<HTMLElement>;
56
+ readonly scrollbarYRef: MutableRef<HTMLElement>;
57
+ readonly scrollbarXRef: MutableRef<HTMLElement>;
58
+ readonly thumbYRef: MutableRef<HTMLElement>;
59
+ readonly thumbXRef: MutableRef<HTMLElement>;
60
+ readonly cornerRef: MutableRef<HTMLElement>;
61
+ setHovering(value: boolean): void;
62
+ setHasMeasuredScrollbar(value: boolean): void;
63
+ setScrollingX(value: boolean): void;
64
+ setScrollingY(value: boolean): void;
65
+ setThumbSize(value: Size): void;
66
+ setCornerSize(value: Size): void;
67
+ setHiddenState(value: HiddenState): void;
68
+ setOverflowEdges(value: OverflowEdges): void;
69
+ handleScroll(position: Coords): void;
70
+ handlePointerDown(event: PointerEvent): void;
71
+ handlePointerMove(event: PointerEvent): void;
72
+ handlePointerUp(event: PointerEvent): void;
73
+ }
74
+ declare const injectScrollAreaRootContext: _radix_ng_primitives_core.InjectContext<ScrollAreaRootContext>;
75
+ declare const provideScrollAreaRootContext: (useFactory: () => ScrollAreaRootContext) => _angular_core.Provider;
76
+ /**
77
+ * Groups all parts of the scroll area.
78
+ * Renders a `<div>` element.
79
+ *
80
+ * @group Components
81
+ */
82
+ declare class RdxScrollAreaRoot {
83
+ private readonly destroyRef;
84
+ readonly rootId: string;
85
+ /** Text direction of the scroll area. Affects horizontal (RTL) scroll math. */
86
+ readonly dir: _angular_core.InputSignal<Direction>;
87
+ readonly direction: Signal<Direction>;
88
+ /**
89
+ * The threshold in pixels that must be passed before the overflow edge attributes are applied.
90
+ * Accepts a single number for all edges or an object to configure them individually.
91
+ */
92
+ readonly overflowEdgeThreshold: _angular_core.InputSignal<OverflowEdgeThreshold>;
93
+ readonly normalizedThreshold: Signal<{
94
+ xStart: number;
95
+ xEnd: number;
96
+ yStart: number;
97
+ yEnd: number;
98
+ }>;
99
+ readonly hovering: _angular_core.WritableSignal<boolean>;
100
+ readonly scrollingX: _angular_core.WritableSignal<boolean>;
101
+ readonly scrollingY: _angular_core.WritableSignal<boolean>;
102
+ readonly touchModality: _angular_core.WritableSignal<boolean>;
103
+ readonly hasMeasuredScrollbar: _angular_core.WritableSignal<boolean>;
104
+ readonly cornerSize: _angular_core.WritableSignal<Size>;
105
+ readonly thumbSize: _angular_core.WritableSignal<Size>;
106
+ readonly hiddenState: _angular_core.WritableSignal<HiddenState>;
107
+ readonly overflowEdges: _angular_core.WritableSignal<OverflowEdges>;
108
+ readonly rootRef: MutableRef<HTMLElement>;
109
+ readonly viewportRef: MutableRef<HTMLElement>;
110
+ readonly scrollbarYRef: MutableRef<HTMLElement>;
111
+ readonly scrollbarXRef: MutableRef<HTMLElement>;
112
+ readonly thumbYRef: MutableRef<HTMLElement>;
113
+ readonly thumbXRef: MutableRef<HTMLElement>;
114
+ readonly cornerRef: MutableRef<HTMLElement>;
115
+ private thumbDragging;
116
+ private startY;
117
+ private startX;
118
+ private startScrollTop;
119
+ private startScrollLeft;
120
+ private currentOrientation;
121
+ private scrollPosition;
122
+ private scrollYTimer;
123
+ private scrollXTimer;
124
+ constructor();
125
+ setScrollingX(value: boolean): void;
126
+ setScrollingY(value: boolean): void;
127
+ setThumbSize(value: Size): void;
128
+ setCornerSize(value: Size): void;
129
+ setHiddenState(value: HiddenState): void;
130
+ setOverflowEdges(value: OverflowEdges): void;
131
+ handleScroll(scrollPosition: Coords): void;
132
+ handlePointerDown(event: PointerEvent): void;
133
+ handlePointerMove(event: PointerEvent): void;
134
+ handlePointerUp(event: PointerEvent): void;
135
+ onTouchModalityChange(event: PointerEvent): void;
136
+ onPointerEnterOrMove(event: PointerEvent): void;
137
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaRoot, never>;
138
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaRoot, "[rdxScrollAreaRoot]", ["rdxScrollAreaRoot"], { "dir": { "alias": "dir"; "required": false; "isSignal": true; }; "overflowEdgeThreshold": { "alias": "overflowEdgeThreshold"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
139
+ }
140
+
141
+ interface ScrollAreaViewportContext {
142
+ /** Re-measures the viewport and repositions the thumbs. Called by the content's ResizeObserver. */
143
+ computeThumbPosition(): void;
144
+ }
145
+ declare const injectScrollAreaViewportContext: _radix_ng_primitives_core.InjectContext<ScrollAreaViewportContext>;
146
+ declare const provideScrollAreaViewportContext: (useFactory: () => ScrollAreaViewportContext) => _angular_core.Provider;
147
+ /**
148
+ * The actual scrollable container of the scroll area.
149
+ * Renders a `<div>` element.
150
+ *
151
+ * @group Components
152
+ */
153
+ declare class RdxScrollAreaViewport {
154
+ protected readonly rootContext: _radix_ng_primitives_scroll_area.ScrollAreaRootContext;
155
+ private readonly element;
156
+ private readonly destroyRef;
157
+ private readonly isBrowser;
158
+ private programmaticScroll;
159
+ private lastMeasuredMetrics;
160
+ private scrollEndTimer;
161
+ private animationsTimer;
162
+ constructor();
163
+ computeThumbPosition(): void;
164
+ onScroll(): void;
165
+ onUserInteraction(): void;
166
+ private observeViewport;
167
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaViewport, never>;
168
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaViewport, "[rdxScrollAreaViewport]", ["rdxScrollAreaViewport"], {}, {}, never, never, true, never>;
169
+ }
170
+
171
+ /**
172
+ * A container for the content of the scroll area.
173
+ * Renders a `<div>` element.
174
+ *
175
+ * @group Components
176
+ */
177
+ declare class RdxScrollAreaContent {
178
+ protected readonly rootContext: _radix_ng_primitives_scroll_area.ScrollAreaRootContext;
179
+ private readonly viewportContext;
180
+ private readonly element;
181
+ private readonly destroyRef;
182
+ constructor();
183
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaContent, never>;
184
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaContent, "[rdxScrollAreaContent]", ["rdxScrollAreaContent"], {}, {}, never, never, true, never>;
185
+ }
186
+
187
+ type ScrollbarOrientation = 'vertical' | 'horizontal';
188
+ interface ScrollAreaScrollbarContext {
189
+ orientation: () => ScrollbarOrientation;
190
+ }
191
+ declare const injectScrollAreaScrollbarContext: _radix_ng_primitives_core.InjectContext<ScrollAreaScrollbarContext>;
192
+ declare const provideScrollAreaScrollbarContext: (useFactory: () => ScrollAreaScrollbarContext) => _angular_core.Provider;
193
+ /**
194
+ * A vertical or horizontal scrollbar for the scroll area.
195
+ * Renders a `<div>` element.
196
+ *
197
+ * @group Components
198
+ */
199
+ declare class RdxScrollAreaScrollbar {
200
+ protected readonly rootContext: _radix_ng_primitives_scroll_area.ScrollAreaRootContext;
201
+ private readonly element;
202
+ /** Whether the scrollbar controls vertical or horizontal scroll. */
203
+ readonly orientation: _angular_core.InputSignal<ScrollbarOrientation>;
204
+ /** Whether to keep the element rendered when the viewport isn't scrollable. */
205
+ readonly keepMounted: _angular_core.InputSignalWithTransform<boolean, BooleanInput>;
206
+ protected readonly scrolling: _angular_core.Signal<boolean>;
207
+ private readonly isHidden;
208
+ protected readonly shouldRender: _angular_core.Signal<boolean>;
209
+ protected readonly hideTrackUntilMeasured: _angular_core.Signal<boolean>;
210
+ constructor();
211
+ onWheel(event: WheelEvent): void;
212
+ onPointerDown(event: PointerEvent): void;
213
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaScrollbar, never>;
214
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaScrollbar, "[rdxScrollAreaScrollbar]", ["rdxScrollAreaScrollbar"], { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "keepMounted": { "alias": "keepMounted"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
215
+ }
216
+
217
+ /**
218
+ * The draggable part of the scrollbar that indicates the current scroll position.
219
+ * Renders a `<div>` element.
220
+ *
221
+ * @group Components
222
+ */
223
+ declare class RdxScrollAreaThumb {
224
+ protected readonly rootContext: _radix_ng_primitives_scroll_area.ScrollAreaRootContext;
225
+ protected readonly scrollbarContext: _radix_ng_primitives_scroll_area.ScrollAreaScrollbarContext;
226
+ private readonly element;
227
+ constructor();
228
+ endDrag(event: PointerEvent): void;
229
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaThumb, never>;
230
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaThumb, "[rdxScrollAreaThumb]", ["rdxScrollAreaThumb"], {}, {}, never, never, true, never>;
231
+ }
232
+
233
+ /**
234
+ * A small rectangular area that appears at the intersection of horizontal and vertical scrollbars.
235
+ * Renders a `<div>` element.
236
+ *
237
+ * @group Components
238
+ */
239
+ declare class RdxScrollAreaCorner {
240
+ protected readonly rootContext: _radix_ng_primitives_scroll_area.ScrollAreaRootContext;
241
+ constructor();
242
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaCorner, never>;
243
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxScrollAreaCorner, "[rdxScrollAreaCorner]", ["rdxScrollAreaCorner"], {}, {}, never, never, true, never>;
244
+ }
245
+
246
+ declare class RdxScrollAreaModule {
247
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxScrollAreaModule, never>;
248
+ static ɵmod: _angular_core.ɵɵNgModuleDeclaration<RdxScrollAreaModule, never, [typeof RdxScrollAreaRoot, typeof RdxScrollAreaViewport, typeof RdxScrollAreaContent, typeof RdxScrollAreaScrollbar, typeof RdxScrollAreaThumb, typeof RdxScrollAreaCorner], [typeof RdxScrollAreaRoot, typeof RdxScrollAreaViewport, typeof RdxScrollAreaContent, typeof RdxScrollAreaScrollbar, typeof RdxScrollAreaThumb, typeof RdxScrollAreaCorner]>;
249
+ static ɵinj: _angular_core.ɵɵInjectorDeclaration<RdxScrollAreaModule>;
250
+ }
251
+
252
+ export { RdxScrollAreaContent, RdxScrollAreaCorner, RdxScrollAreaModule, RdxScrollAreaRoot, RdxScrollAreaScrollbar, RdxScrollAreaThumb, RdxScrollAreaViewport, injectScrollAreaRootContext, injectScrollAreaScrollbarContext, injectScrollAreaViewportContext, provideScrollAreaRootContext, provideScrollAreaScrollbarContext, provideScrollAreaViewportContext };
253
+ export type { Coords, HiddenState, MutableRef, OverflowEdgeThreshold, OverflowEdges, ScrollAreaRootContext, ScrollAreaScrollbarContext, ScrollAreaViewportContext, ScrollbarOrientation, Size };