@radix-ng/primitives 1.0.5 → 1.0.7

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 (138) hide show
  1. package/aspect-ratio/README.md +1 -1
  2. package/fesm2022/radix-ng-primitives-accordion.mjs +40 -27
  3. package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
  4. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +34 -34
  5. package/fesm2022/radix-ng-primitives-arrow.mjs +3 -3
  6. package/fesm2022/radix-ng-primitives-aspect-ratio.mjs +11 -35
  7. package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
  8. package/fesm2022/radix-ng-primitives-autocomplete.mjs +175 -125
  9. package/fesm2022/radix-ng-primitives-autocomplete.mjs.map +1 -1
  10. package/fesm2022/radix-ng-primitives-avatar.mjs +92 -35
  11. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
  12. package/fesm2022/radix-ng-primitives-button.mjs +11 -7
  13. package/fesm2022/radix-ng-primitives-button.mjs.map +1 -1
  14. package/fesm2022/radix-ng-primitives-calendar.mjs +140 -90
  15. package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
  16. package/fesm2022/radix-ng-primitives-checkbox.mjs +63 -46
  17. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
  18. package/fesm2022/radix-ng-primitives-collapsible.mjs +37 -25
  19. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
  20. package/fesm2022/radix-ng-primitives-combobox.mjs +278 -177
  21. package/fesm2022/radix-ng-primitives-combobox.mjs.map +1 -1
  22. package/fesm2022/radix-ng-primitives-composite.mjs +50 -33
  23. package/fesm2022/radix-ng-primitives-composite.mjs.map +1 -1
  24. package/fesm2022/radix-ng-primitives-config.mjs +7 -5
  25. package/fesm2022/radix-ng-primitives-config.mjs.map +1 -1
  26. package/fesm2022/radix-ng-primitives-context-menu.mjs +48 -22
  27. package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
  28. package/fesm2022/radix-ng-primitives-core.mjs +44 -28
  29. package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
  30. package/fesm2022/radix-ng-primitives-cropper.mjs +73 -45
  31. package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
  32. package/fesm2022/radix-ng-primitives-date-field.mjs +70 -40
  33. package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
  34. package/fesm2022/radix-ng-primitives-dialog.mjs +93 -67
  35. package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
  36. package/fesm2022/radix-ng-primitives-direction-provider.mjs +5 -4
  37. package/fesm2022/radix-ng-primitives-direction-provider.mjs.map +1 -1
  38. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +20 -16
  39. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -1
  40. package/fesm2022/radix-ng-primitives-drawer.mjs +107 -81
  41. package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -1
  42. package/fesm2022/radix-ng-primitives-editable.mjs +53 -39
  43. package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
  44. package/fesm2022/radix-ng-primitives-field.mjs +76 -50
  45. package/fesm2022/radix-ng-primitives-field.mjs.map +1 -1
  46. package/fesm2022/radix-ng-primitives-fieldset.mjs +8 -7
  47. package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -1
  48. package/fesm2022/radix-ng-primitives-floating-focus-manager.mjs +77 -40
  49. package/fesm2022/radix-ng-primitives-floating-focus-manager.mjs.map +1 -1
  50. package/fesm2022/radix-ng-primitives-focus-guards.mjs +3 -3
  51. package/fesm2022/radix-ng-primitives-focus-scope.mjs +7 -5
  52. package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
  53. package/fesm2022/radix-ng-primitives-form.mjs +26 -17
  54. package/fesm2022/radix-ng-primitives-form.mjs.map +1 -1
  55. package/fesm2022/radix-ng-primitives-input.mjs +41 -22
  56. package/fesm2022/radix-ng-primitives-input.mjs.map +1 -1
  57. package/fesm2022/radix-ng-primitives-label.mjs +11 -8
  58. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
  59. package/fesm2022/radix-ng-primitives-menu.mjs +274 -154
  60. package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
  61. package/fesm2022/radix-ng-primitives-menubar.mjs +35 -17
  62. package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
  63. package/fesm2022/radix-ng-primitives-meter.mjs +41 -30
  64. package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -1
  65. package/fesm2022/radix-ng-primitives-navigation-menu.mjs +220 -183
  66. package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
  67. package/fesm2022/radix-ng-primitives-number-field.mjs +93 -61
  68. package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
  69. package/fesm2022/radix-ng-primitives-pagination.mjs +48 -38
  70. package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
  71. package/fesm2022/radix-ng-primitives-popover.mjs +150 -107
  72. package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
  73. package/fesm2022/radix-ng-primitives-popper.mjs +79 -47
  74. package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
  75. package/fesm2022/radix-ng-primitives-portal.mjs +20 -13
  76. package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -1
  77. package/fesm2022/radix-ng-primitives-presence.mjs +3 -3
  78. package/fesm2022/radix-ng-primitives-preview-card.mjs +119 -74
  79. package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -1
  80. package/fesm2022/radix-ng-primitives-progress.mjs +73 -46
  81. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
  82. package/fesm2022/radix-ng-primitives-radio.mjs +58 -40
  83. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  84. package/fesm2022/radix-ng-primitives-scroll-area.mjs +57 -41
  85. package/fesm2022/radix-ng-primitives-scroll-area.mjs.map +1 -1
  86. package/fesm2022/radix-ng-primitives-select.mjs +595 -102
  87. package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
  88. package/fesm2022/radix-ng-primitives-separator.mjs +11 -15
  89. package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
  90. package/fesm2022/radix-ng-primitives-slider.mjs +101 -64
  91. package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
  92. package/fesm2022/radix-ng-primitives-stepper.mjs +53 -39
  93. package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
  94. package/fesm2022/radix-ng-primitives-switch.mjs +25 -20
  95. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
  96. package/fesm2022/radix-ng-primitives-tabs.mjs +76 -51
  97. package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
  98. package/fesm2022/radix-ng-primitives-time-field.mjs +72 -41
  99. package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
  100. package/fesm2022/radix-ng-primitives-toast.mjs +75 -56
  101. package/fesm2022/radix-ng-primitives-toast.mjs.map +1 -1
  102. package/fesm2022/radix-ng-primitives-toggle-group.mjs +39 -23
  103. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
  104. package/fesm2022/radix-ng-primitives-toggle.mjs +36 -36
  105. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
  106. package/fesm2022/radix-ng-primitives-toolbar.mjs +52 -31
  107. package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
  108. package/fesm2022/radix-ng-primitives-tooltip.mjs +118 -63
  109. package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
  110. package/fesm2022/radix-ng-primitives-visually-hidden.mjs +31 -20
  111. package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
  112. package/package.json +2 -2
  113. package/types/radix-ng-primitives-accordion.d.ts +1 -0
  114. package/types/radix-ng-primitives-aspect-ratio.d.ts +10 -23
  115. package/types/radix-ng-primitives-autocomplete.d.ts +3 -1
  116. package/types/radix-ng-primitives-avatar.d.ts +51 -25
  117. package/types/radix-ng-primitives-checkbox.d.ts +26 -98
  118. package/types/radix-ng-primitives-combobox.d.ts +28 -9
  119. package/types/radix-ng-primitives-context-menu.d.ts +2 -0
  120. package/types/radix-ng-primitives-dialog.d.ts +6 -3
  121. package/types/radix-ng-primitives-field.d.ts +33 -207
  122. package/types/radix-ng-primitives-floating-focus-manager.d.ts +11 -0
  123. package/types/radix-ng-primitives-form.d.ts +24 -33
  124. package/types/radix-ng-primitives-label.d.ts +3 -2
  125. package/types/radix-ng-primitives-menu.d.ts +47 -15
  126. package/types/radix-ng-primitives-menubar.d.ts +6 -1
  127. package/types/radix-ng-primitives-navigation-menu.d.ts +8 -6
  128. package/types/radix-ng-primitives-number-field.d.ts +1 -1
  129. package/types/radix-ng-primitives-popover.d.ts +12 -4
  130. package/types/radix-ng-primitives-preview-card.d.ts +18 -5
  131. package/types/radix-ng-primitives-progress.d.ts +59 -121
  132. package/types/radix-ng-primitives-radio.d.ts +0 -1
  133. package/types/radix-ng-primitives-select.d.ts +186 -391
  134. package/types/radix-ng-primitives-separator.d.ts +0 -7
  135. package/types/radix-ng-primitives-toggle-group.d.ts +7 -3
  136. package/types/radix-ng-primitives-toggle.d.ts +8 -8
  137. package/types/radix-ng-primitives-toolbar.d.ts +2 -0
  138. package/types/radix-ng-primitives-tooltip.d.ts +17 -3
@@ -22,13 +22,6 @@ declare class RdxSeparatorRootDirective {
22
22
  */
23
23
  readonly orientation: _angular_core.InputSignal<Orientation>;
24
24
  protected readonly orientationState: _angular_core.WritableSignal<Orientation>;
25
- /**
26
- * Computes the `aria-orientation` attribute. It is set to "vertical" only when
27
- * the separator orientation is vertical. Horizontal is the implicit ARIA default.
28
- *
29
- * @ignore
30
- */
31
- protected readonly computedAriaOrientation: _angular_core.Signal<"vertical" | undefined>;
32
25
  updateOrientation(value: Orientation): void;
33
26
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxSeparatorRootDirective, never>;
34
27
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxSeparatorRootDirective, "[rdxSeparatorRoot]", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -18,8 +18,12 @@ interface RdxToggleGroupContext {
18
18
  readonly orientation: Signal<DataOrientation>;
19
19
  /** Whether the group value was initialized by `value` or `defaultValue`. */
20
20
  readonly isValueInitialized: Signal<boolean>;
21
- /** Toggle the pressed state of `value` within the group. */
22
- toggle(value: string, event?: Event, eventDetails?: RdxCancelableChangeEventDetails<RdxToggleGroupContextChangeReason>): void;
21
+ /**
22
+ * Set the pressed state of `value` within the group. The item computes the next pressed boolean
23
+ * (Base UI parity — the item is the source of truth), so the group applies it rather than
24
+ * re-deriving the toggle from its current value set.
25
+ */
26
+ toggle(value: string, nextPressed: boolean, event?: Event, eventDetails?: RdxCancelableChangeEventDetails<RdxToggleGroupContextChangeReason>): void;
23
27
  }
24
28
  declare const injectToggleGroupContext: _radix_ng_primitives_core.InjectContext<RdxToggleGroupContext>;
25
29
  declare const provideToggleGroupContext: (useFactory: () => RdxToggleGroupContext) => _angular_core.Provider;
@@ -78,7 +82,7 @@ declare abstract class RdxToggleGroupBase implements ControlValueAccessor {
78
82
  /** @ignore Extra disabled state inherited from composite parents such as Toolbar. */
79
83
  protected isExternallyDisabled(): boolean;
80
84
  /** @ignore */
81
- toggle(value: string, event?: Event, eventDetails?: RdxToggleGroupValueChangeEventDetails): void;
85
+ toggle(value: string, nextPressed: boolean, event?: Event, eventDetails?: RdxToggleGroupValueChangeEventDetails): void;
82
86
  /** @ignore */
83
87
  writeValue(value: string[] | string | null): void;
84
88
  /** @ignore */
@@ -1,7 +1,6 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { BooleanInput, RdxCancelableChangeEventDetails } from '@radix-ng/primitives/core';
3
3
  import * as i1 from '@radix-ng/primitives/composite';
4
- import * as i1$1 from '@radix-ng/primitives/visually-hidden';
5
4
 
6
5
  type RdxTogglePressedChangeReason = 'none';
7
6
  type RdxTogglePressedChangeEventDetails = RdxCancelableChangeEventDetails<RdxTogglePressedChangeReason>;
@@ -57,16 +56,17 @@ declare class RdxToggle {
57
56
  constructor();
58
57
  /** @ignore */
59
58
  protected onClick(event?: Event): void;
60
- /** @ignore */
59
+ /**
60
+ * @ignore
61
+ * Non-native hosts emulate a native `<button>` (Base UI `useButton`): Enter activates on keydown,
62
+ * Space is `preventDefault`-ed on keydown (to suppress page scroll) and activates on keyup.
63
+ */
61
64
  protected onKeyDown(event: KeyboardEvent): void;
65
+ /** @ignore Space activates on keyup for non-native hosts (native-button semantics). */
66
+ protected onKeyUp(event: KeyboardEvent): void;
62
67
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxToggle, never>;
63
68
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxToggle, "[rdxToggle]", ["rdxToggle"], { "value": { "alias": "value"; "required": false; "isSignal": true; }; "defaultPressed": { "alias": "defaultPressed"; "required": false; "isSignal": true; }; "pressed": { "alias": "pressed"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "nativeButton": { "alias": "nativeButton"; "required": false; "isSignal": true; }; }, { "pressed": "pressedChange"; "onPressedChange": "onPressedChange"; }, never, never, true, [{ directive: typeof i1.RdxCompositeItem; inputs: {}; outputs: {}; }]>;
64
69
  }
65
70
 
66
- declare class RdxToggleVisuallyHiddenInputDirective {
67
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxToggleVisuallyHiddenInputDirective, never>;
68
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxToggleVisuallyHiddenInputDirective, "input[rdxToggleVisuallyHiddenInput]", ["rdxToggleVisuallyHiddenInput"], {}, {}, never, never, true, [{ directive: typeof i1$1.RdxVisuallyHiddenInputBubbleDirective; inputs: { "name": "name"; "required": "required"; "value": "value"; "disabled": "disabled"; }; outputs: {}; }]>;
69
- }
70
-
71
- export { RdxToggle, RdxToggleVisuallyHiddenInputDirective };
71
+ export { RdxToggle };
72
72
  export type { RdxTogglePressedChangeEvent, RdxTogglePressedChangeEventDetails, RdxTogglePressedChangeReason };
@@ -94,6 +94,8 @@ declare class RdxToolbarInput {
94
94
  readonly isDisabled: _angular_core.Signal<boolean>;
95
95
  private appliedDefault;
96
96
  constructor();
97
+ /** @ignore Block pointer interaction while disabled (Base UI input `defaultProps`). */
98
+ protected onInteraction(event: Event): void;
97
99
  private handleCaretKeydown;
98
100
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxToolbarInput, never>;
99
101
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxToolbarInput, "input[rdxToolbarInput]", ["rdxToolbarInput"], { "defaultValue": { "alias": "defaultValue"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "focusableWhenDisabled": { "alias": "focusableWhenDisabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.RdxCompositeItem; inputs: {}; outputs: {}; }]>;
@@ -81,6 +81,8 @@ interface RdxTooltipContext {
81
81
  present: Signal<boolean>;
82
82
  /** Whether the tooltip opened/closed without waiting for the delay. */
83
83
  instant: Signal<boolean>;
84
+ /** Why the open/close was instant (Base UI `data-instant`), or `undefined` when it was animated. */
85
+ instantType: Signal<RdxTooltipInstantType | undefined>;
84
86
  disabled: Signal<boolean>;
85
87
  disableHoverablePopup: Signal<boolean>;
86
88
  trackCursorAxis: Signal<RdxTrackCursorAxis>;
@@ -106,6 +108,12 @@ interface RdxTooltipContext {
106
108
  } | undefined) => void;
107
109
  setDelays: (delay: number | undefined, closeDelay: number | undefined) => void;
108
110
  }
111
+ /**
112
+ * Why the tooltip opened/closed instantly (no transition). Mirrors Base UI's tooltip `data-instant`
113
+ * value: `'delay'` (opened within the skip-delay instant window), `'focus'` (opened by focus),
114
+ * `'dismiss'` (closed by Escape / outside press), `'tracking-cursor'` (following the cursor).
115
+ */
116
+ type RdxTooltipInstantType = 'delay' | 'dismiss' | 'focus' | 'tracking-cursor';
109
117
  type RdxTooltipOpenChangeReason = 'trigger-hover' | 'trigger-focus' | 'trigger-press' | 'outside-press' | 'escape-key' | 'disabled' | 'imperative-action' | 'none';
110
118
  type RdxTooltipOpenChangeEventDetails = RdxCancelableChangeEventDetails<RdxTooltipOpenChangeReason>;
111
119
  interface RdxTooltipOpenChangeEvent {
@@ -159,7 +167,7 @@ declare class RdxTooltip {
159
167
  /**
160
168
  * Associates this root with detached trigger elements.
161
169
  */
162
- readonly handle: _angular_core.InputSignal<RdxTooltipHandle<any> | undefined>;
170
+ readonly handle: _angular_core.InputSignal<RdxTooltipHandle<unknown> | undefined>;
163
171
  /**
164
172
  * Event handler called when the open state changes.
165
173
  */
@@ -175,6 +183,7 @@ declare class RdxTooltip {
175
183
  readonly openChangeReason: _angular_core.WritableSignal<RdxTooltipOpenChangeReason>;
176
184
  private readonly preventUnmountOnClose;
177
185
  private readonly openedInstant;
186
+ private readonly openedInstantType;
178
187
  private suppressNextOpenChangeEmit;
179
188
  /** Local instant window used when this tooltip is not inside a provider. */
180
189
  private readonly localInstant;
@@ -186,6 +195,11 @@ declare class RdxTooltip {
186
195
  private readonly resolvedCloseDelay;
187
196
  /** Whether the most recent open happened without the delay. */
188
197
  readonly instant: Signal<boolean>;
198
+ /**
199
+ * Reason the open/close was instant (Base UI `data-instant`). Cursor tracking takes precedence
200
+ * while open — the popup follows the cursor, so its position updates can never be transitioned.
201
+ */
202
+ readonly instantType: Signal<RdxTooltipInstantType | undefined>;
189
203
  readonly present: Signal<boolean>;
190
204
  private readonly virtualAnchor;
191
205
  private readonly openTimer;
@@ -324,7 +338,7 @@ declare class RdxTooltipTrigger {
324
338
  /**
325
339
  * Associates this trigger with a detached tooltip root.
326
340
  */
327
- readonly handle: _angular_core.InputSignal<RdxTooltipHandle<any> | undefined>;
341
+ readonly handle: _angular_core.InputSignal<RdxTooltipHandle<unknown> | undefined>;
328
342
  /**
329
343
  * Data associated with this trigger while it is active.
330
344
  */
@@ -381,4 +395,4 @@ declare class RdxTooltipTrigger {
381
395
  declare const tooltipImports: (typeof RdxTooltipPortal)[];
382
396
 
383
397
  export { RdxTooltip, RdxTooltipArrow, RdxTooltipDefaultsToken, RdxTooltipHandle, RdxTooltipPopup, RdxTooltipPortal, RdxTooltipPortalMisuseGuard, RdxTooltipPositioner, RdxTooltipProvider, RdxTooltipTrigger, createRdxTooltipHandle, defaultTooltipConfig, injectRdxTooltipConfig, injectRdxTooltipContext, injectRdxTooltipProviderContext, provideRdxTooltipConfig, provideRdxTooltipContext, provideRdxTooltipProviderContext, tooltipImports };
384
- export type { RdxTooltipConfig, RdxTooltipContext, RdxTooltipOpenChangeEvent, RdxTooltipOpenChangeEventDetails, RdxTooltipOpenChangeReason, RdxTooltipProviderContext, RdxTrackCursorAxis };
398
+ export type { RdxTooltipConfig, RdxTooltipContext, RdxTooltipInstantType, RdxTooltipOpenChangeEvent, RdxTooltipOpenChangeEventDetails, RdxTooltipOpenChangeReason, RdxTooltipProviderContext, RdxTrackCursorAxis };