@radix-ng/primitives 0.32.3 → 0.33.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 (65) hide show
  1. package/core/index.d.ts +1 -0
  2. package/core/src/focus-initial.directive.d.ts +9 -0
  3. package/fesm2022/radix-ng-primitives-accordion.mjs +19 -19
  4. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +22 -22
  5. package/fesm2022/radix-ng-primitives-aspect-ratio.mjs +3 -3
  6. package/fesm2022/radix-ng-primitives-avatar.mjs +16 -16
  7. package/fesm2022/radix-ng-primitives-checkbox.mjs +16 -16
  8. package/fesm2022/radix-ng-primitives-collapsible.mjs +9 -9
  9. package/fesm2022/radix-ng-primitives-config.mjs +3 -3
  10. package/fesm2022/radix-ng-primitives-context-menu.mjs +34 -34
  11. package/fesm2022/radix-ng-primitives-core.mjs +26 -7
  12. package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
  13. package/fesm2022/radix-ng-primitives-dialog.mjs +25 -25
  14. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +34 -34
  15. package/fesm2022/radix-ng-primitives-hover-card.mjs +28 -28
  16. package/fesm2022/radix-ng-primitives-label.mjs +3 -3
  17. package/fesm2022/radix-ng-primitives-menu.mjs +37 -37
  18. package/fesm2022/radix-ng-primitives-menubar.mjs +31 -31
  19. package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1646 -0
  20. package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -0
  21. package/fesm2022/radix-ng-primitives-pagination.mjs +28 -28
  22. package/fesm2022/radix-ng-primitives-popover.mjs +50 -32
  23. package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
  24. package/fesm2022/radix-ng-primitives-progress.mjs +10 -10
  25. package/fesm2022/radix-ng-primitives-radio.mjs +13 -13
  26. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  27. package/fesm2022/radix-ng-primitives-roving-focus.mjs +6 -6
  28. package/fesm2022/radix-ng-primitives-select.mjs +34 -34
  29. package/fesm2022/radix-ng-primitives-separator.mjs +3 -3
  30. package/fesm2022/radix-ng-primitives-slider.mjs +31 -31
  31. package/fesm2022/radix-ng-primitives-stepper.mjs +25 -25
  32. package/fesm2022/radix-ng-primitives-switch.mjs +13 -13
  33. package/fesm2022/radix-ng-primitives-tabs.mjs +16 -16
  34. package/fesm2022/radix-ng-primitives-toggle-group.mjs +9 -9
  35. package/fesm2022/radix-ng-primitives-toggle.mjs +6 -6
  36. package/fesm2022/radix-ng-primitives-toolbar.mjs +22 -22
  37. package/fesm2022/radix-ng-primitives-tooltip.mjs +28 -29
  38. package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
  39. package/fesm2022/radix-ng-primitives-visually-hidden.mjs +31 -19
  40. package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
  41. package/hover-card/src/hover-card-content.directive.d.ts +2 -2
  42. package/hover-card/src/hover-card-root.directive.d.ts +4 -4
  43. package/navigation-menu/README.md +3 -0
  44. package/navigation-menu/index.d.ts +28 -0
  45. package/navigation-menu/src/navigation-menu-a11y.component.d.ts +15 -0
  46. package/navigation-menu/src/navigation-menu-content.directive.d.ts +31 -0
  47. package/navigation-menu/src/navigation-menu-indicator.directive.d.ts +29 -0
  48. package/navigation-menu/src/navigation-menu-item.directive.d.ts +44 -0
  49. package/navigation-menu/src/navigation-menu-link.directive.d.ts +17 -0
  50. package/navigation-menu/src/navigation-menu-list.directive.d.ts +38 -0
  51. package/navigation-menu/src/navigation-menu-sub.directive.d.ts +19 -0
  52. package/navigation-menu/src/navigation-menu-trigger.directive.d.ts +33 -0
  53. package/navigation-menu/src/navigation-menu-viewport.directive.d.ts +38 -0
  54. package/navigation-menu/src/navigation-menu.directive.d.ts +72 -0
  55. package/navigation-menu/src/navigation-menu.token.d.ts +36 -0
  56. package/navigation-menu/src/navigation-menu.types.d.ts +13 -0
  57. package/navigation-menu/src/utils.d.ts +44 -0
  58. package/package.json +7 -3
  59. package/popover/src/popover-content-attributes.component.d.ts +7 -1
  60. package/popover/src/popover-content.directive.d.ts +2 -2
  61. package/popover/src/popover-root.directive.d.ts +4 -4
  62. package/tooltip/src/tooltip-content.directive.d.ts +2 -2
  63. package/tooltip/src/tooltip-root.directive.d.ts +4 -4
  64. package/visually-hidden/src/visually-hidden-input-bubble.directive.d.ts +4 -2
  65. package/visually-hidden/src/visually-hidden.directive.d.ts +2 -0
@@ -1,10 +1,12 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, inject, TemplateRef, DestroyRef, computed, input, numberAttribute, booleanAttribute, output, effect, untracked, SimpleChange, Directive, ElementRef, NgZone, Renderer2, isDevMode, VERSION, Injectable, makeEnvironmentProviders, signal, contentChild, ViewContainerRef, afterNextRender, assertInInjectionContext, forwardRef, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
2
+ import { InjectionToken, inject, TemplateRef, DestroyRef, computed, input, numberAttribute, booleanAttribute, output, effect, untracked, SimpleChange, Directive, ElementRef, NgZone, Renderer2, isDevMode, VERSION, Injectable, makeEnvironmentProviders, signal, contentChild, ViewContainerRef, afterNextRender, assertInInjectionContext, forwardRef, ContentChild, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
3
  import * as i1 from '@angular/cdk/overlay';
4
4
  import { Overlay, CdkConnectedOverlay, CdkOverlayOrigin } from '@angular/cdk/overlay';
5
- import { RdxPositionSide, RdxPositionAlign, RDX_POSITIONING_DEFAULTS, getContentPosition, getAllPossibleConnectedPositions, injectDocument, injectWindow, getArrowPositionParams, getSideAndAlignFromAllPossibleConnectedPositions } from '@radix-ng/primitives/core';
5
+ import { RdxPositionSide, RdxPositionAlign, RDX_POSITIONING_DEFAULTS, getContentPosition, getAllPossibleConnectedPositions, injectDocument, injectWindow, getArrowPositionParams, getSideAndAlignFromAllPossibleConnectedPositions, RdxFocusInitialDirective } from '@radix-ng/primitives/core';
6
6
  import { takeUntilDestroyed, toSignal } from '@angular/core/rxjs-interop';
7
7
  import { filter, tap } from 'rxjs';
8
+ import * as i1$1 from '@angular/cdk/a11y';
9
+ import { CdkTrapFocus } from '@angular/cdk/a11y';
8
10
 
9
11
  const RdxPopoverAnchorToken = new InjectionToken('RdxPopoverAnchorToken');
10
12
 
@@ -282,10 +284,10 @@ class RdxPopoverContentDirective {
282
284
  [input]: new SimpleChange(previousValue, currentValue, firstChange)
283
285
  });
284
286
  }
285
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
286
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.1.6", type: RdxPopoverContentDirective, isStandalone: true, selector: "[rdxPopoverContent]", inputs: { side: { classPropertyName: "side", publicName: "side", isSignal: true, isRequired: false, transformFunction: null }, sideOffset: { classPropertyName: "sideOffset", publicName: "sideOffset", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, alignOffset: { classPropertyName: "alignOffset", publicName: "alignOffset", isSignal: true, isRequired: false, transformFunction: null }, alternatePositionsDisabled: { classPropertyName: "alternatePositionsDisabled", publicName: "alternatePositionsDisabled", isSignal: true, isRequired: false, transformFunction: null }, onOverlayEscapeKeyDownDisabled: { classPropertyName: "onOverlayEscapeKeyDownDisabled", publicName: "onOverlayEscapeKeyDownDisabled", isSignal: true, isRequired: false, transformFunction: null }, onOverlayOutsideClickDisabled: { classPropertyName: "onOverlayOutsideClickDisabled", publicName: "onOverlayOutsideClickDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOverlayEscapeKeyDown: "onOverlayEscapeKeyDown", onOverlayOutsideClick: "onOverlayOutsideClick", onOpen: "onOpen", onClosed: "onClosed" }, hostDirectives: [{ directive: i1.CdkConnectedOverlay }], ngImport: i0 }); }
287
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
288
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.4", type: RdxPopoverContentDirective, isStandalone: true, selector: "[rdxPopoverContent]", inputs: { side: { classPropertyName: "side", publicName: "side", isSignal: true, isRequired: false, transformFunction: null }, sideOffset: { classPropertyName: "sideOffset", publicName: "sideOffset", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, alignOffset: { classPropertyName: "alignOffset", publicName: "alignOffset", isSignal: true, isRequired: false, transformFunction: null }, alternatePositionsDisabled: { classPropertyName: "alternatePositionsDisabled", publicName: "alternatePositionsDisabled", isSignal: true, isRequired: false, transformFunction: null }, onOverlayEscapeKeyDownDisabled: { classPropertyName: "onOverlayEscapeKeyDownDisabled", publicName: "onOverlayEscapeKeyDownDisabled", isSignal: true, isRequired: false, transformFunction: null }, onOverlayOutsideClickDisabled: { classPropertyName: "onOverlayOutsideClickDisabled", publicName: "onOverlayOutsideClickDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onOverlayEscapeKeyDown: "onOverlayEscapeKeyDown", onOverlayOutsideClick: "onOverlayOutsideClick", onOpen: "onOpen", onClosed: "onClosed" }, hostDirectives: [{ directive: i1.CdkConnectedOverlay }], ngImport: i0 }); }
287
289
  }
288
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverContentDirective, decorators: [{
290
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverContentDirective, decorators: [{
289
291
  type: Directive,
290
292
  args: [{
291
293
  selector: '[rdxPopoverContent]',
@@ -310,10 +312,10 @@ class RdxPopoverTriggerDirective {
310
312
  click() {
311
313
  this.popoverRoot.handleToggle();
312
314
  }
313
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
314
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: RdxPopoverTriggerDirective, isStandalone: true, selector: "[rdxPopoverTrigger]", host: { attributes: { "type": "button" }, listeners: { "click": "click()" }, properties: { "attr.id": "name()", "attr.aria-haspopup": "\"dialog\"", "attr.aria-expanded": "popoverRoot.isOpen()", "attr.aria-controls": "popoverRoot.popoverContentDirective().name()", "attr.data-state": "popoverRoot.state()" } }, hostDirectives: [{ directive: i1.CdkOverlayOrigin }], ngImport: i0 }); }
315
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
316
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: RdxPopoverTriggerDirective, isStandalone: true, selector: "[rdxPopoverTrigger]", host: { attributes: { "type": "button" }, listeners: { "click": "click()" }, properties: { "attr.id": "name()", "attr.aria-haspopup": "\"dialog\"", "attr.aria-expanded": "popoverRoot.isOpen()", "attr.aria-controls": "popoverRoot.popoverContentDirective().name()", "attr.data-state": "popoverRoot.state()" } }, hostDirectives: [{ directive: i1.CdkOverlayOrigin }], ngImport: i0 }); }
315
317
  }
316
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverTriggerDirective, decorators: [{
318
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverTriggerDirective, decorators: [{
317
319
  type: Directive,
318
320
  args: [{
319
321
  selector: '[rdxPopoverTrigger]',
@@ -448,10 +450,10 @@ class RdxCdkEventService {
448
450
  }
449
451
  this.onDestroyCallbacks.add(destroyClickDomRootEventListener);
450
452
  }
451
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxCdkEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
452
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxCdkEventService }); }
453
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxCdkEventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
454
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxCdkEventService }); }
453
455
  }
454
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxCdkEventService, decorators: [{
456
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxCdkEventService, decorators: [{
455
457
  type: Injectable
456
458
  }], ctorParameters: () => [] });
457
459
  const RdxCdkEventServiceToken = new InjectionToken('RdxCdkEventServiceToken');
@@ -778,10 +780,10 @@ class RdxPopoverRootDirective {
778
780
  });
779
781
  });
780
782
  }
781
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
782
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.1.6", type: RdxPopoverRootDirective, isStandalone: true, selector: "[rdxPopoverRoot]", inputs: { anchor: { classPropertyName: "anchor", publicName: "anchor", isSignal: true, isRequired: false, transformFunction: null }, defaultOpen: { classPropertyName: "defaultOpen", publicName: "defaultOpen", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, externalControl: { classPropertyName: "externalControl", publicName: "externalControl", isSignal: true, isRequired: false, transformFunction: null }, cssAnimation: { classPropertyName: "cssAnimation", publicName: "cssAnimation", isSignal: true, isRequired: false, transformFunction: null }, cssOpeningAnimation: { classPropertyName: "cssOpeningAnimation", publicName: "cssOpeningAnimation", isSignal: true, isRequired: false, transformFunction: null }, cssClosingAnimation: { classPropertyName: "cssClosingAnimation", publicName: "cssClosingAnimation", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "popoverContentDirective", first: true, predicate: RdxPopoverContentDirective, descendants: true, isSignal: true }, { propertyName: "popoverTriggerDirective", first: true, predicate: RdxPopoverTriggerDirective, descendants: true, isSignal: true }, { propertyName: "popoverArrowDirective", first: true, predicate: RdxPopoverArrowToken, descendants: true, isSignal: true }, { propertyName: "popoverCloseDirective", first: true, predicate: RdxPopoverCloseToken, descendants: true, isSignal: true }, { propertyName: "popoverContentAttributesComponent", first: true, predicate: RdxPopoverContentAttributesToken, descendants: true, isSignal: true }, { propertyName: "internalPopoverAnchorDirective", first: true, predicate: RdxPopoverAnchorToken, descendants: true, isSignal: true }], exportAs: ["rdxPopoverRoot"], ngImport: i0 }); }
783
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
784
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "19.2.4", type: RdxPopoverRootDirective, isStandalone: true, selector: "[rdxPopoverRoot]", inputs: { anchor: { classPropertyName: "anchor", publicName: "anchor", isSignal: true, isRequired: false, transformFunction: null }, defaultOpen: { classPropertyName: "defaultOpen", publicName: "defaultOpen", isSignal: true, isRequired: false, transformFunction: null }, open: { classPropertyName: "open", publicName: "open", isSignal: true, isRequired: false, transformFunction: null }, externalControl: { classPropertyName: "externalControl", publicName: "externalControl", isSignal: true, isRequired: false, transformFunction: null }, cssAnimation: { classPropertyName: "cssAnimation", publicName: "cssAnimation", isSignal: true, isRequired: false, transformFunction: null }, cssOpeningAnimation: { classPropertyName: "cssOpeningAnimation", publicName: "cssOpeningAnimation", isSignal: true, isRequired: false, transformFunction: null }, cssClosingAnimation: { classPropertyName: "cssClosingAnimation", publicName: "cssClosingAnimation", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "popoverContentDirective", first: true, predicate: RdxPopoverContentDirective, descendants: true, isSignal: true }, { propertyName: "popoverTriggerDirective", first: true, predicate: RdxPopoverTriggerDirective, descendants: true, isSignal: true }, { propertyName: "popoverArrowDirective", first: true, predicate: RdxPopoverArrowToken, descendants: true, isSignal: true }, { propertyName: "popoverCloseDirective", first: true, predicate: RdxPopoverCloseToken, descendants: true, isSignal: true }, { propertyName: "popoverContentAttributesComponent", first: true, predicate: RdxPopoverContentAttributesToken, descendants: true, isSignal: true }, { propertyName: "internalPopoverAnchorDirective", first: true, predicate: RdxPopoverAnchorToken, descendants: true, isSignal: true }], exportAs: ["rdxPopoverRoot"], ngImport: i0 }); }
783
785
  }
784
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverRootDirective, decorators: [{
786
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverRootDirective, decorators: [{
785
787
  type: Directive,
786
788
  args: [{
787
789
  selector: '[rdxPopoverRoot]',
@@ -832,15 +834,15 @@ class RdxPopoverAnchorDirective {
832
834
  });
833
835
  this.popoverRoot?.popoverTriggerDirective().elementRef.nativeElement.dispatchEvent(clickEvent);
834
836
  }
835
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverAnchorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
836
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: RdxPopoverAnchorDirective, isStandalone: true, selector: "[rdxPopoverAnchor]", host: { attributes: { "type": "button" }, listeners: { "click": "click()" }, properties: { "attr.id": "name()", "attr.aria-haspopup": "\"dialog\"" } }, providers: [
837
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverAnchorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
838
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: RdxPopoverAnchorDirective, isStandalone: true, selector: "[rdxPopoverAnchor]", host: { attributes: { "type": "button" }, listeners: { "click": "click()" }, properties: { "attr.id": "name()", "attr.aria-haspopup": "\"dialog\"" } }, providers: [
837
839
  {
838
840
  provide: RdxPopoverAnchorToken,
839
841
  useExisting: forwardRef(() => RdxPopoverAnchorDirective)
840
842
  }
841
843
  ], exportAs: ["rdxPopoverAnchor"], hostDirectives: [{ directive: i1.CdkOverlayOrigin }], ngImport: i0 }); }
842
844
  }
843
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverAnchorDirective, decorators: [{
845
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverAnchorDirective, decorators: [{
844
846
  type: Directive,
845
847
  args: [{
846
848
  selector: '[rdxPopoverAnchor]',
@@ -954,15 +956,15 @@ class RdxPopoverArrowDirective {
954
956
  });
955
957
  });
956
958
  }
957
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverArrowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
958
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.1.6", type: RdxPopoverArrowDirective, isStandalone: true, selector: "[rdxPopoverArrow]", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
959
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverArrowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
960
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "19.2.4", type: RdxPopoverArrowDirective, isStandalone: true, selector: "[rdxPopoverArrow]", inputs: { width: { classPropertyName: "width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, providers: [
959
961
  {
960
962
  provide: RdxPopoverArrowToken,
961
963
  useExisting: forwardRef(() => RdxPopoverArrowDirective)
962
964
  }
963
965
  ], ngImport: i0 }); }
964
966
  }
965
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverArrowDirective, decorators: [{
967
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverArrowDirective, decorators: [{
966
968
  type: Directive,
967
969
  args: [{
968
970
  selector: '[rdxPopoverArrow]',
@@ -994,15 +996,15 @@ class RdxPopoverCloseDirective {
994
996
  });
995
997
  });
996
998
  }
997
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
998
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.1.6", type: RdxPopoverCloseDirective, isStandalone: true, selector: "[rdxPopoverClose]", host: { attributes: { "type": "button" }, listeners: { "click": "popoverRoot.handleClose()" } }, providers: [
999
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverCloseDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1000
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.4", type: RdxPopoverCloseDirective, isStandalone: true, selector: "[rdxPopoverClose]", host: { attributes: { "type": "button" }, listeners: { "click": "popoverRoot.handleClose()" } }, providers: [
999
1001
  {
1000
1002
  provide: RdxPopoverCloseToken,
1001
1003
  useExisting: forwardRef(() => RdxPopoverCloseDirective)
1002
1004
  }
1003
1005
  ], ngImport: i0 }); }
1004
1006
  }
1005
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverCloseDirective, decorators: [{
1007
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverCloseDirective, decorators: [{
1006
1008
  type: Directive,
1007
1009
  args: [{
1008
1010
  selector: '[rdxPopoverClose]',
@@ -1021,12 +1023,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImpor
1021
1023
 
1022
1024
  class RdxPopoverContentAttributesComponent {
1023
1025
  constructor() {
1026
+ /** @ignore */
1027
+ this.focusTrapDirective = inject(CdkTrapFocus, { self: true });
1024
1028
  /** @ignore */
1025
1029
  this.popoverRoot = injectPopoverRoot();
1026
1030
  /** @ignore */
1027
1031
  this.name = computed(() => `rdx-popover-content-attributes-${this.popoverRoot.uniqueId()}`);
1028
1032
  /** @ignore */
1029
1033
  this.disableAnimation = computed(() => !this.canAnimate());
1034
+ afterNextRender({
1035
+ write: () => {
1036
+ if (this.focusInitialDirective) {
1037
+ return this.focusInitialDirective.focus();
1038
+ }
1039
+ this.focusTrapDirective.focusTrap.focusFirstTabbableElement();
1040
+ }
1041
+ });
1030
1042
  }
1031
1043
  /** @ignore */
1032
1044
  onAnimationStart(_) {
@@ -1046,17 +1058,17 @@ class RdxPopoverContentAttributesComponent {
1046
1058
  ((this.popoverRoot.cssOpeningAnimation() && this.popoverRoot.state() === RdxPopoverState.OPEN) ||
1047
1059
  (this.popoverRoot.cssClosingAnimation() && this.popoverRoot.state() === RdxPopoverState.CLOSED)));
1048
1060
  }
1049
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverContentAttributesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1050
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.1.6", type: RdxPopoverContentAttributesComponent, isStandalone: true, selector: "[rdxPopoverContentAttributes]", host: { listeners: { "animationstart": "onAnimationStart($event)", "animationend": "onAnimationEnd($event)" }, properties: { "attr.role": "\"dialog\"", "attr.id": "name()", "attr.data-state": "popoverRoot.state()", "attr.data-side": "popoverRoot.popoverContentDirective().side()", "attr.data-align": "popoverRoot.popoverContentDirective().align()", "style": "disableAnimation() ? {animation: \"none !important\"} : null" } }, providers: [
1061
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverContentAttributesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1062
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.4", type: RdxPopoverContentAttributesComponent, isStandalone: true, selector: "[rdxPopoverContentAttributes]", host: { listeners: { "animationstart": "onAnimationStart($event)", "animationend": "onAnimationEnd($event)" }, properties: { "attr.role": "\"dialog\"", "attr.id": "name()", "attr.data-state": "popoverRoot.state()", "attr.data-side": "popoverRoot.popoverContentDirective().side()", "attr.data-align": "popoverRoot.popoverContentDirective().align()", "style": "disableAnimation() ? {animation: \"none !important\"} : null" } }, providers: [
1051
1063
  {
1052
1064
  provide: RdxPopoverContentAttributesToken,
1053
1065
  useExisting: forwardRef(() => RdxPopoverContentAttributesComponent)
1054
1066
  }
1055
- ], ngImport: i0, template: `
1067
+ ], queries: [{ propertyName: "focusInitialDirective", first: true, predicate: RdxFocusInitialDirective, descendants: true }], hostDirectives: [{ directive: i1$1.CdkTrapFocus }], ngImport: i0, template: `
1056
1068
  <ng-content />
1057
1069
  `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1058
1070
  }
1059
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverContentAttributesComponent, decorators: [{
1071
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverContentAttributesComponent, decorators: [{
1060
1072
  type: Component,
1061
1073
  args: [{
1062
1074
  selector: '[rdxPopoverContentAttributes]',
@@ -1073,6 +1085,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImpor
1073
1085
  '(animationstart)': 'onAnimationStart($event)',
1074
1086
  '(animationend)': 'onAnimationEnd($event)'
1075
1087
  },
1088
+ hostDirectives: [
1089
+ CdkTrapFocus
1090
+ ],
1076
1091
  providers: [
1077
1092
  {
1078
1093
  provide: RdxPopoverContentAttributesToken,
@@ -1081,7 +1096,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImpor
1081
1096
  ],
1082
1097
  changeDetection: ChangeDetectionStrategy.OnPush
1083
1098
  }]
1084
- }] });
1099
+ }], ctorParameters: () => [], propDecorators: { focusInitialDirective: [{
1100
+ type: ContentChild,
1101
+ args: [RdxFocusInitialDirective, { descendants: true }]
1102
+ }] } });
1085
1103
 
1086
1104
  const _imports = [
1087
1105
  RdxPopoverArrowDirective,
@@ -1093,8 +1111,8 @@ const _imports = [
1093
1111
  RdxPopoverContentAttributesComponent
1094
1112
  ];
1095
1113
  class RdxPopoverModule {
1096
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1097
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverModule, imports: [RdxPopoverArrowDirective,
1114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1115
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverModule, imports: [RdxPopoverArrowDirective,
1098
1116
  RdxPopoverCloseDirective,
1099
1117
  RdxPopoverContentDirective,
1100
1118
  RdxPopoverTriggerDirective,
@@ -1107,9 +1125,9 @@ class RdxPopoverModule {
1107
1125
  RdxPopoverRootDirective,
1108
1126
  RdxPopoverAnchorDirective,
1109
1127
  RdxPopoverContentAttributesComponent] }); }
1110
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverModule }); }
1128
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverModule }); }
1111
1129
  }
1112
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.1.6", ngImport: i0, type: RdxPopoverModule, decorators: [{
1130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImport: i0, type: RdxPopoverModule, decorators: [{
1113
1131
  type: NgModule,
1114
1132
  args: [{
1115
1133
  imports: [..._imports],