@radix-ng/primitives 0.42.0 → 0.44.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.
- package/accordion/index.d.ts +160 -15
- package/alert-dialog/index.d.ts +54 -14
- package/arrow/README.md +1 -0
- package/arrow/index.d.ts +11 -0
- package/aspect-ratio/index.d.ts +35 -1
- package/avatar/index.d.ts +81 -11
- package/calendar/index.d.ts +310 -29
- package/checkbox/index.d.ts +163 -15
- package/collapsible/index.d.ts +82 -11
- package/config/index.d.ts +35 -2
- package/context-menu/index.d.ts +126 -23
- package/core/index.d.ts +898 -27
- package/cropper/index.d.ts +134 -14
- package/date-field/index.d.ts +209 -10
- package/dialog/index.d.ts +202 -20
- package/dismissable-layer/README.md +1 -0
- package/dismissable-layer/index.d.ts +126 -0
- package/dropdown-menu/index.d.ts +168 -23
- package/editable/index.d.ts +70 -1
- package/fesm2022/radix-ng-primitives-accordion.mjs +36 -36
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +28 -28
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-arrow.mjs +38 -0
- package/fesm2022/radix-ng-primitives-arrow.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs +5 -5
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-avatar.mjs +20 -20
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-calendar.mjs +110 -95
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +219 -209
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +27 -27
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-config.mjs +5 -5
- package/fesm2022/radix-ng-primitives-config.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-context-menu.mjs +34 -34
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +72 -24
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs +51 -51
- package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +48 -48
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +33 -33
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +418 -0
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +37 -37
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-editable.mjs +21 -21
- package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-focus-guards.mjs +53 -0
- package/fesm2022/radix-ng-primitives-focus-guards.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-focus-scope.mjs +17 -9
- package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-hover-card.mjs +74 -74
- package/fesm2022/radix-ng-primitives-hover-card.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-label.mjs +8 -8
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +65 -65
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs +31 -31
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +91 -88
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-number-field.mjs +56 -43
- package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-pagination.mjs +45 -45
- package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs +68 -68
- package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs +418 -0
- package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-portal.mjs +51 -0
- package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-presence.mjs +4 -4
- package/fesm2022/radix-ng-primitives-presence.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-progress.mjs +15 -15
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +30 -30
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +179 -163
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-select.mjs +37 -37
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +16 -14
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs +75 -75
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-stepper.mjs +45 -45
- package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +28 -28
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +33 -33
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-time-field.mjs +78 -66
- package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +22 -22
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +9 -9
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toolbar.mjs +28 -28
- package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip.mjs +74 -74
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip2.mjs +740 -0
- package/fesm2022/radix-ng-primitives-tooltip2.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +93 -98
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives.mjs.map +1 -1
- package/focus-guards/README.md +1 -0
- package/focus-guards/index.d.ts +15 -0
- package/focus-scope/index.d.ts +65 -1
- package/hover-card/index.d.ts +471 -19
- package/index.d.ts +2 -1
- package/label/index.d.ts +27 -1
- package/menu/index.d.ts +136 -26
- package/menubar/index.d.ts +53 -21
- package/navigation-menu/index.d.ts +402 -25
- package/number-field/index.d.ts +202 -16
- package/package.json +26 -5
- package/pagination/index.d.ts +96 -20
- package/popover/index.d.ts +402 -19
- package/popper/README.md +3 -0
- package/popper/index.d.ts +206 -0
- package/portal/README.md +1 -0
- package/portal/index.d.ts +22 -0
- package/presence/index.d.ts +103 -5
- package/progress/index.d.ts +76 -8
- package/radio/index.d.ts +118 -4
- package/roving-focus/index.d.ts +174 -3
- package/select/index.d.ts +211 -23
- package/separator/index.d.ts +63 -1
- package/slider/index.d.ts +262 -17
- package/stepper/index.d.ts +122 -21
- package/switch/index.d.ts +102 -9
- package/tabs/index.d.ts +111 -13
- package/time-field/index.d.ts +211 -10
- package/toggle/index.d.ts +75 -3
- package/toggle-group/index.d.ts +194 -5
- package/toolbar/index.d.ts +52 -16
- package/tooltip/index.d.ts +432 -19
- package/tooltip2/README.md +3 -0
- package/tooltip2/index.d.ts +325 -0
- package/visually-hidden/index.d.ts +65 -3
- package/accordion/src/accordion-content-presence.directive.d.ts +0 -6
- package/accordion/src/accordion-content.directive.d.ts +0 -8
- package/accordion/src/accordion-header.directive.d.ts +0 -7
- package/accordion/src/accordion-item.directive.d.ts +0 -43
- package/accordion/src/accordion-root.directive.d.ts +0 -83
- package/accordion/src/accordion-trigger.directive.d.ts +0 -10
- package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +0 -7
- package/alert-dialog/src/alert-dialog-content.directive.d.ts +0 -9
- package/alert-dialog/src/alert-dialog-root.directive.d.ts +0 -9
- package/alert-dialog/src/alert-dialog-title.directive.d.ts +0 -5
- package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +0 -7
- package/alert-dialog/src/alert-dialog.service.d.ts +0 -14
- package/aspect-ratio/src/aspect-ratio.directive.d.ts +0 -32
- package/avatar/src/avatar-context.token.d.ts +0 -7
- package/avatar/src/avatar-fallback.directive.d.ts +0 -20
- package/avatar/src/avatar-image.directive.d.ts +0 -29
- package/avatar/src/avatar-root.directive.d.ts +0 -8
- package/avatar/src/avatar.config.d.ts +0 -13
- package/avatar/src/types.d.ts +0 -2
- package/calendar/src/calendar-cell-trigger.directive.d.ts +0 -54
- package/calendar/src/calendar-cell.directive.d.ts +0 -11
- package/calendar/src/calendar-grid-body.directive.d.ts +0 -5
- package/calendar/src/calendar-grid-head.directive.d.ts +0 -5
- package/calendar/src/calendar-grid-row.directive.d.ts +0 -5
- package/calendar/src/calendar-grid.directive.d.ts +0 -8
- package/calendar/src/calendar-head-cell.directive.d.ts +0 -5
- package/calendar/src/calendar-header.directive.d.ts +0 -5
- package/calendar/src/calendar-heading.directive.d.ts +0 -7
- package/calendar/src/calendar-next.directive.d.ts +0 -16
- package/calendar/src/calendar-prev.directive.d.ts +0 -16
- package/calendar/src/calendar-root.directive.d.ts +0 -148
- package/calendar/src/calendar.d.ts +0 -44
- package/calendar/src//321/201alendar-/321/201ontext.token.d.ts +0 -24
- package/checkbox/src/checkbox-button.directive.d.ts +0 -8
- package/checkbox/src/checkbox-indicator.directive.d.ts +0 -6
- package/checkbox/src/checkbox-input.directive.d.ts +0 -10
- package/checkbox/src/checkbox.directive.d.ts +0 -86
- package/checkbox/src/checkbox.token.d.ts +0 -4
- package/collapsible/src/collapsible-content-presence.directive.d.ts +0 -6
- package/collapsible/src/collapsible-content.directive.d.ts +0 -18
- package/collapsible/src/collapsible-root.directive.d.ts +0 -44
- package/collapsible/src/collapsible-trigger.directive.d.ts +0 -6
- package/config/src/config.d.ts +0 -21
- package/config/src/config.provider.d.ts +0 -10
- package/context-menu/src/context-menu-content.directive.d.ts +0 -15
- package/context-menu/src/context-menu-item-checkbox.directive.d.ts +0 -9
- package/context-menu/src/context-menu-item-indicator.directive.d.ts +0 -7
- package/context-menu/src/context-menu-item-radio-group.directive.d.ts +0 -12
- package/context-menu/src/context-menu-item-radio.directive.d.ts +0 -19
- package/context-menu/src/context-menu-item-selectable.d.ts +0 -12
- package/context-menu/src/context-menu-item.directive.d.ts +0 -17
- package/context-menu/src/context-menu-label.directive.d.ts +0 -5
- package/context-menu/src/context-menu-separator.directive.d.ts +0 -6
- package/context-menu/src/context-menu-trigger.directive.d.ts +0 -31
- package/core/src/accessor/control-value-accessor.d.ts +0 -67
- package/core/src/accessor/provide-value-accessor.d.ts +0 -12
- package/core/src/auto-focus.directive.d.ts +0 -14
- package/core/src/chunk.d.ts +0 -12
- package/core/src/clamp.d.ts +0 -38
- package/core/src/create-context.d.ts +0 -10
- package/core/src/date-time/calendar.d.ts +0 -33
- package/core/src/date-time/comparators.d.ts +0 -98
- package/core/src/date-time/formatter.d.ts +0 -30
- package/core/src/date-time/index.d.ts +0 -9
- package/core/src/date-time/parser.d.ts +0 -37
- package/core/src/date-time/parts.d.ts +0 -12
- package/core/src/date-time/placeholders.d.ts +0 -8
- package/core/src/date-time/segment.d.ts +0 -4
- package/core/src/date-time/types.d.ts +0 -58
- package/core/src/date-time/useDateField.d.ts +0 -142
- package/core/src/date-time/utils.d.ts +0 -7
- package/core/src/document.d.ts +0 -1
- package/core/src/focus-initial.directive.d.ts +0 -9
- package/core/src/getActiveElement.d.ts +0 -1
- package/core/src/id-generator.d.ts +0 -12
- package/core/src/inject-ng-control.d.ts +0 -8
- package/core/src/is-client.d.ts +0 -1
- package/core/src/is-equal.d.ts +0 -7
- package/core/src/is-inside-form.d.ts +0 -2
- package/core/src/is-nullish.d.ts +0 -1
- package/core/src/is-number.d.ts +0 -1
- package/core/src/isValueEqualOrExist.d.ts +0 -10
- package/core/src/kbd-constants.d.ts +0 -41
- package/core/src/positioning/constants.d.ts +0 -3
- package/core/src/positioning/types.d.ts +0 -42
- package/core/src/positioning/utils.d.ts +0 -12
- package/core/src/provide-token.d.ts +0 -22
- package/core/src/serialize.d.ts +0 -11
- package/core/src/types.d.ts +0 -25
- package/core/src/useArrowNavigation.d.ts +0 -65
- package/core/src/useResizeObserver.d.ts +0 -15
- package/core/src/watch.d.ts +0 -41
- package/core/src/window.d.ts +0 -3
- package/cropper/src/cropper-context.token.d.ts +0 -12
- package/cropper/src/cropper-crop-area.directive.d.ts +0 -6
- package/cropper/src/cropper-description.directive.d.ts +0 -6
- package/cropper/src/cropper-image.component.d.ts +0 -10
- package/cropper/src/cropper-root.directive.d.ts +0 -91
- package/date-field/src/date-field-context.token.d.ts +0 -19
- package/date-field/src/date-field-input.directive.d.ts +0 -53
- package/date-field/src/date-field-root.directive.d.ts +0 -131
- package/dialog/src/dialog-close.directive.d.ts +0 -7
- package/dialog/src/dialog-content.directive.d.ts +0 -21
- package/dialog/src/dialog-description.directive.d.ts +0 -5
- package/dialog/src/dialog-dismiss.directive.d.ts +0 -7
- package/dialog/src/dialog-ref.d.ts +0 -40
- package/dialog/src/dialog-title.directive.d.ts +0 -5
- package/dialog/src/dialog-trigger.directive.d.ts +0 -28
- package/dialog/src/dialog.config.d.ts +0 -41
- package/dialog/src/dialog.injectors.d.ts +0 -4
- package/dialog/src/dialog.providers.d.ts +0 -19
- package/dialog/src/dialog.service.d.ts +0 -26
- package/dismissible-layer/README.md +0 -1
- package/dismissible-layer/index.d.ts +0 -1
- package/dismissible-layer/src/utils.d.ts +0 -38
- package/dropdown-menu/src/dropdown-menu-content.directive.d.ts +0 -15
- package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.d.ts +0 -9
- package/dropdown-menu/src/dropdown-menu-item-indicator.directive.d.ts +0 -7
- package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.d.ts +0 -12
- package/dropdown-menu/src/dropdown-menu-item-radio.directive.d.ts +0 -19
- package/dropdown-menu/src/dropdown-menu-item-selectable.d.ts +0 -12
- package/dropdown-menu/src/dropdown-menu-item.directive.d.ts +0 -17
- package/dropdown-menu/src/dropdown-menu-label.directive.d.ts +0 -6
- package/dropdown-menu/src/dropdown-menu-separator.directive.d.ts +0 -6
- package/dropdown-menu/src/dropdown-menu-trigger.directive.d.ts +0 -73
- package/editable/src/editable-root.d.ts +0 -67
- package/fesm2022/radix-ng-primitives-dismissible-layer.mjs +0 -211
- package/fesm2022/radix-ng-primitives-dismissible-layer.mjs.map +0 -1
- package/focus-scope/src/focus-scope.d.ts +0 -53
- package/focus-scope/src/stack.d.ts +0 -13
- package/focus-scope/src/utils.d.ts +0 -46
- package/hover-card/src/hover-card-anchor.directive.d.ts +0 -28
- package/hover-card/src/hover-card-anchor.token.d.ts +0 -3
- package/hover-card/src/hover-card-arrow.directive.d.ts +0 -45
- package/hover-card/src/hover-card-arrow.token.d.ts +0 -3
- package/hover-card/src/hover-card-close.directive.d.ts +0 -18
- package/hover-card/src/hover-card-close.token.d.ts +0 -3
- package/hover-card/src/hover-card-content-attributes.component.d.ts +0 -25
- package/hover-card/src/hover-card-content-attributes.token.d.ts +0 -3
- package/hover-card/src/hover-card-content.directive.d.ts +0 -124
- package/hover-card/src/hover-card-root.directive.d.ts +0 -182
- package/hover-card/src/hover-card-root.inject.d.ts +0 -3
- package/hover-card/src/hover-card-trigger.directive.d.ts +0 -26
- package/hover-card/src/hover-card.types.d.ts +0 -18
- package/hover-card/src/utils/cdk-event.service.d.ts +0 -30
- package/hover-card/src/utils/constants.d.ts +0 -1
- package/hover-card/src/utils/types.d.ts +0 -7
- package/label/src/label.directive.d.ts +0 -24
- package/menu/src/menu-content.directive.d.ts +0 -6
- package/menu/src/menu-directive.d.ts +0 -6
- package/menu/src/menu-group.directive.d.ts +0 -6
- package/menu/src/menu-item-checkbox.directive.d.ts +0 -21
- package/menu/src/menu-item-indicator.directive.d.ts +0 -10
- package/menu/src/menu-item-radio.directive.d.ts +0 -20
- package/menu/src/menu-item.directive.d.ts +0 -18
- package/menu/src/menu-label.directive.d.ts +0 -5
- package/menu/src/menu-radio-group.directive.d.ts +0 -6
- package/menu/src/menu-separator.directive.d.ts +0 -5
- package/menu/src/menu-trigger.directive.d.ts +0 -35
- package/menu/src/utils.d.ts +0 -3
- package/menubar/src/menubar-content.directive.d.ts +0 -6
- package/menubar/src/menubar-item-checkbox.directive.d.ts +0 -6
- package/menubar/src/menubar-item-indicator.directive.d.ts +0 -6
- package/menubar/src/menubar-item-radio.directive.d.ts +0 -6
- package/menubar/src/menubar-item.directive.d.ts +0 -6
- package/menubar/src/menubar-radio-group.directive.d.ts +0 -6
- package/menubar/src/menubar-root.directive.d.ts +0 -6
- package/menubar/src/menubar-separator.directive.d.ts +0 -6
- package/menubar/src/menubar-trigger.directive.d.ts +0 -6
- package/navigation-menu/src/navigation-menu-a11y.component.d.ts +0 -15
- package/navigation-menu/src/navigation-menu-content.directive.d.ts +0 -31
- package/navigation-menu/src/navigation-menu-indicator.directive.d.ts +0 -29
- package/navigation-menu/src/navigation-menu-item.directive.d.ts +0 -44
- package/navigation-menu/src/navigation-menu-link.directive.d.ts +0 -17
- package/navigation-menu/src/navigation-menu-list.directive.d.ts +0 -38
- package/navigation-menu/src/navigation-menu-sub.directive.d.ts +0 -19
- package/navigation-menu/src/navigation-menu-trigger.directive.d.ts +0 -33
- package/navigation-menu/src/navigation-menu-viewport.directive.d.ts +0 -61
- package/navigation-menu/src/navigation-menu.directive.d.ts +0 -76
- package/navigation-menu/src/navigation-menu.token.d.ts +0 -36
- package/navigation-menu/src/navigation-menu.types.d.ts +0 -13
- package/navigation-menu/src/utils.d.ts +0 -44
- package/number-field/src/number-field-context.token.d.ts +0 -24
- package/number-field/src/number-field-decrement.directive.d.ts +0 -23
- package/number-field/src/number-field-increment.directive.d.ts +0 -23
- package/number-field/src/number-field-input.directive.d.ts +0 -22
- package/number-field/src/number-field-root.directive.d.ts +0 -86
- package/number-field/src/types.d.ts +0 -1
- package/number-field/src/utils.d.ts +0 -18
- package/pagination/src/pagination-context.token.d.ts +0 -11
- package/pagination/src/pagination-ellipsis.directive.d.ts +0 -5
- package/pagination/src/pagination-first.directive.d.ts +0 -8
- package/pagination/src/pagination-last.directive.d.ts +0 -8
- package/pagination/src/pagination-list-item.directive.d.ts +0 -10
- package/pagination/src/pagination-list.directive.d.ts +0 -12
- package/pagination/src/pagination-next.directive.d.ts +0 -8
- package/pagination/src/pagination-prev.directive.d.ts +0 -8
- package/pagination/src/pagination-root.directive.d.ts +0 -18
- package/pagination/src/utils.d.ts +0 -9
- package/popover/src/popover-anchor.directive.d.ts +0 -28
- package/popover/src/popover-anchor.token.d.ts +0 -3
- package/popover/src/popover-arrow.directive.d.ts +0 -40
- package/popover/src/popover-arrow.token.d.ts +0 -3
- package/popover/src/popover-close.directive.d.ts +0 -15
- package/popover/src/popover-close.token.d.ts +0 -3
- package/popover/src/popover-content-attributes.component.d.ts +0 -23
- package/popover/src/popover-content-attributes.token.d.ts +0 -3
- package/popover/src/popover-content.directive.d.ts +0 -104
- package/popover/src/popover-root.directive.d.ts +0 -155
- package/popover/src/popover-root.inject.d.ts +0 -3
- package/popover/src/popover-trigger.directive.d.ts +0 -18
- package/popover/src/popover.types.d.ts +0 -14
- package/popover/src/utils/cdk-event.service.d.ts +0 -30
- package/popover/src/utils/constants.d.ts +0 -1
- package/popover/src/utils/types.d.ts +0 -7
- package/presence/src/presence.d.ts +0 -42
- package/presence/src/presence.directive.d.ts +0 -27
- package/presence/src/transitions/transition.collapse.d.ts +0 -15
- package/presence/src/transitions/transition.toast.d.ts +0 -3
- package/presence/src/types.d.ts +0 -15
- package/presence/src/utils.d.ts +0 -42
- package/progress/src/progress-indicator.directive.d.ts +0 -15
- package/progress/src/progress-root.directive.d.ts +0 -54
- package/radio/src/radio-indicator.directive.d.ts +0 -9
- package/radio/src/radio-item-input.directive.d.ts +0 -12
- package/radio/src/radio-item.directive.d.ts +0 -30
- package/radio/src/radio-root.directive.d.ts +0 -57
- package/radio/src/radio-tokens.d.ts +0 -14
- package/roving-focus/src/roving-focus-group.directive.d.ts +0 -50
- package/roving-focus/src/roving-focus-item.directive.d.ts +0 -50
- package/roving-focus/src/utils.d.ts +0 -19
- package/select/src/select-content.directive.d.ts +0 -20
- package/select/src/select-group.directive.d.ts +0 -5
- package/select/src/select-icon.directive.d.ts +0 -5
- package/select/src/select-item-indicator.directive.d.ts +0 -7
- package/select/src/select-item.directive.d.ts +0 -53
- package/select/src/select-label.directive.d.ts +0 -5
- package/select/src/select-separator.directive.d.ts +0 -5
- package/select/src/select-trigger.directive.d.ts +0 -17
- package/select/src/select-value.directive.d.ts +0 -8
- package/select/src/select.component.d.ts +0 -98
- package/separator/src/separator.directive.d.ts +0 -60
- package/slider/src/slider-horizontal.component.d.ts +0 -28
- package/slider/src/slider-impl.directive.d.ts +0 -17
- package/slider/src/slider-orientation-context.service.d.ts +0 -14
- package/slider/src/slider-range.component.d.ts +0 -13
- package/slider/src/slider-root.component.d.ts +0 -123
- package/slider/src/slider-thumb-impl.directive.d.ts +0 -27
- package/slider/src/slider-thumb.component.d.ts +0 -6
- package/slider/src/slider-track.component.d.ts +0 -7
- package/slider/src/slider-vertical.component.d.ts +0 -28
- package/slider/src/utils.d.ts +0 -52
- package/stepper/src/stepper-description.directive.d.ts +0 -6
- package/stepper/src/stepper-indicator.directive.d.ts +0 -6
- package/stepper/src/stepper-item-context.token.d.ts +0 -13
- package/stepper/src/stepper-item.directive.d.ts +0 -21
- package/stepper/src/stepper-root-context.token.d.ts +0 -12
- package/stepper/src/stepper-root.directive.d.ts +0 -33
- package/stepper/src/stepper-separator.directive.d.ts +0 -10
- package/stepper/src/stepper-title.directive.d.ts +0 -6
- package/stepper/src/stepper-trigger.directive.d.ts +0 -14
- package/stepper/src/types.d.ts +0 -1
- package/switch/src/switch-input.directive.d.ts +0 -11
- package/switch/src/switch-root.directive.d.ts +0 -74
- package/switch/src/switch-thumb.directive.d.ts +0 -9
- package/tabs/src/tabs-content.directive.d.ts +0 -13
- package/tabs/src/tabs-list.directive.d.ts +0 -10
- package/tabs/src/tabs-root.directive.d.ts +0 -53
- package/tabs/src/tabs-trigger.directive.d.ts +0 -29
- package/tabs/src/utils.d.ts +0 -2
- package/time-field/src/time-field-context.token.d.ts +0 -20
- package/time-field/src/time-field-input.directive.d.ts +0 -53
- package/time-field/src/time-field-root.directive.d.ts +0 -130
- package/toggle/src/toggle-visually-hidden-input.directive.d.ts +0 -6
- package/toggle/src/toggle.directive.d.ts +0 -65
- package/toggle-group/src/toggle-group-item.directive.d.ts +0 -37
- package/toggle-group/src/toggle-group-item.token.d.ts +0 -4
- package/toggle-group/src/toggle-group-without-focus.directive.d.ts +0 -69
- package/toggle-group/src/toggle-group.directive.d.ts +0 -74
- package/toggle-group/src/toggle-group.token.d.ts +0 -10
- package/toolbar/src/toolbar-button.directive.d.ts +0 -11
- package/toolbar/src/toolbar-link.directive.d.ts +0 -7
- package/toolbar/src/toolbar-root.directive.d.ts +0 -8
- package/toolbar/src/toolbar-root.token.d.ts +0 -5
- package/toolbar/src/toolbar-separator.directive.d.ts +0 -6
- package/toolbar/src/toolbar-toggle-group.directive.d.ts +0 -6
- package/toolbar/src/toolbar-toggle-item.directive.d.ts +0 -6
- package/tooltip/src/tooltip-anchor.directive.d.ts +0 -28
- package/tooltip/src/tooltip-anchor.token.d.ts +0 -3
- package/tooltip/src/tooltip-arrow.directive.d.ts +0 -40
- package/tooltip/src/tooltip-arrow.token.d.ts +0 -3
- package/tooltip/src/tooltip-close.directive.d.ts +0 -18
- package/tooltip/src/tooltip-close.token.d.ts +0 -3
- package/tooltip/src/tooltip-content-attributes.component.d.ts +0 -25
- package/tooltip/src/tooltip-content-attributes.token.d.ts +0 -3
- package/tooltip/src/tooltip-content.directive.d.ts +0 -104
- package/tooltip/src/tooltip-root.directive.d.ts +0 -168
- package/tooltip/src/tooltip-root.inject.d.ts +0 -3
- package/tooltip/src/tooltip-trigger.directive.d.ts +0 -26
- package/tooltip/src/tooltip.types.d.ts +0 -18
- package/tooltip/src/utils/cdk-event.service.d.ts +0 -30
- package/tooltip/src/utils/constants.d.ts +0 -1
- package/tooltip/src/utils/types.d.ts +0 -7
- package/visually-hidden/src/visually-hidden-input-bubble.directive.d.ts +0 -23
- package/visually-hidden/src/visually-hidden-input.directive.d.ts +0 -19
- package/visually-hidden/src/visually-hidden.directive.d.ts +0 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix-ng-primitives-roving-focus.mjs","sources":["../../../packages/primitives/roving-focus/src/utils.ts","../../../packages/primitives/roving-focus/src/roving-focus-group.directive.ts","../../../packages/primitives/roving-focus/src/roving-focus-item.directive.ts","../../../packages/primitives/roving-focus/radix-ng-primitives-roving-focus.ts"],"sourcesContent":["export type Orientation = 'horizontal' | 'vertical';\nexport type Direction = 'ltr' | 'rtl';\n\nexport const ENTRY_FOCUS = 'rovingFocusGroup.onEntryFocus';\nexport const EVENT_OPTIONS = { bubbles: false, cancelable: true };\n\ntype FocusIntent = 'first' | 'last' | 'prev' | 'next';\n\nexport const MAP_KEY_TO_FOCUS_INTENT: Record<string, FocusIntent> = {\n ArrowLeft: 'prev',\n ArrowUp: 'prev',\n ArrowRight: 'next',\n ArrowDown: 'next',\n PageUp: 'first',\n Home: 'first',\n PageDown: 'last',\n End: 'last'\n};\n\nexport function getDirectionAwareKey(key: string, dir?: Direction) {\n if (dir !== 'rtl') return key;\n return key === 'ArrowLeft' ? 'ArrowRight' : key === 'ArrowRight' ? 'ArrowLeft' : key;\n}\n\nexport function getFocusIntent(event: KeyboardEvent, orientation?: Orientation, dir?: Direction) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === 'vertical' && ['ArrowLeft', 'ArrowRight'].includes(key)) return undefined;\n if (orientation === 'horizontal' && ['ArrowUp', 'ArrowDown'].includes(key)) return undefined;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\n\nexport function focusFirst(candidates: HTMLElement[], preventScroll = false, rootNode?: Document | ShadowRoot) {\n const PREVIOUSLY_FOCUSED_ELEMENT = rootNode?.activeElement ?? document.activeElement;\n for (const candidate of candidates) {\n // if focus is already where we want to go, we don't want to keep going through the candidates\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT) return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT) return;\n }\n}\n\n/**\n * Wraps an array around itself at a given start index\n * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n */\nexport function wrapArray<T>(array: T[], startIndex: number) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\n\nexport function generateId(): string {\n return `rf-item-${Math.random().toString(36).slice(2, 11)}`;\n}\n","import {\n booleanAttribute,\n Directive,\n ElementRef,\n EventEmitter,\n inject,\n Input,\n NgZone,\n Output,\n signal\n} from '@angular/core';\nimport { Direction, ENTRY_FOCUS, EVENT_OPTIONS, focusFirst, Orientation } from './utils';\n\n@Directive({\n selector: '[rdxRovingFocusGroup]',\n standalone: true,\n host: {\n '[attr.data-orientation]': 'dataOrientation',\n '[attr.tabindex]': 'tabIndex',\n '[attr.dir]': 'dir',\n '(focus)': 'handleFocus($event)',\n '(blur)': 'handleBlur()',\n '(mouseup)': 'handleMouseUp()',\n '(mousedown)': 'handleMouseDown()',\n style: 'outline: none;'\n }\n})\nexport class RdxRovingFocusGroupDirective {\n private readonly ngZone = inject(NgZone);\n private readonly elementRef = inject(ElementRef);\n\n @Input() orientation: Orientation | undefined;\n @Input() dir: Direction = 'ltr';\n @Input({ transform: booleanAttribute }) loop: boolean = true;\n @Input({ transform: booleanAttribute }) preventScrollOnEntryFocus: boolean = false;\n\n @Output() entryFocus = new EventEmitter<Event>();\n @Output() currentTabStopIdChange = new EventEmitter<string | null>();\n\n /** @ignore */\n readonly currentTabStopId = signal<string | null>(null);\n\n /** @ignore */\n readonly focusableItems = signal<HTMLElement[]>([]);\n\n private readonly isClickFocus = signal(false);\n private readonly isTabbingBackOut = signal(false);\n private readonly focusableItemsCount = signal(0);\n\n /** @ignore */\n get dataOrientation() {\n return this.orientation || 'horizontal';\n }\n\n /** @ignore */\n get tabIndex() {\n return this.isTabbingBackOut() || this.getFocusableItemsCount() === 0 ? -1 : 0;\n }\n\n /** @ignore */\n handleBlur() {\n this.isTabbingBackOut.set(false);\n }\n\n /** @ignore */\n handleMouseUp() {\n // reset `isClickFocus` after 1 tick because handleFocus might not triggered due to focused element\n this.ngZone.runOutsideAngular(() => {\n // eslint-disable-next-line promise/catch-or-return,promise/always-return\n Promise.resolve().then(() => {\n this.ngZone.run(() => {\n this.isClickFocus.set(false);\n });\n });\n });\n }\n\n /** @ignore */\n handleFocus(event: FocusEvent) {\n // We normally wouldn't need this check, because we already check\n // that the focus is on the current target and not bubbling to it.\n // We do this because Safari doesn't focus buttons when clicked, and\n // instead, the wrapper will get focused and not through a bubbling event.\n const isKeyboardFocus = !this.isClickFocus();\n\n if (\n event.currentTarget === this.elementRef.nativeElement &&\n event.target === event.currentTarget &&\n isKeyboardFocus &&\n !this.isTabbingBackOut()\n ) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n this.elementRef.nativeElement.dispatchEvent(entryFocusEvent);\n this.entryFocus.emit(entryFocusEvent);\n\n if (!entryFocusEvent.defaultPrevented) {\n const items = this.focusableItems().filter((item) => item.dataset['disabled'] !== '');\n const activeItem = items.find((item) => item.getAttribute('data-active') === 'true');\n const currentItem = items.find((item) => item.id === this.currentTabStopId());\n const candidateItems = [activeItem, currentItem, ...items].filter(Boolean) as HTMLElement[];\n\n focusFirst(candidateItems, this.preventScrollOnEntryFocus);\n }\n }\n this.isClickFocus.set(false);\n }\n\n /** @ignore */\n handleMouseDown() {\n this.isClickFocus.set(true);\n }\n\n /** @ignore */\n onItemFocus(tabStopId: string) {\n this.currentTabStopId.set(tabStopId);\n this.currentTabStopIdChange.emit(tabStopId);\n }\n\n /** @ignore */\n onItemShiftTab() {\n this.isTabbingBackOut.set(true);\n }\n\n /** @ignore */\n onFocusableItemAdd() {\n this.focusableItemsCount.update((count) => count + 1);\n }\n\n /** @ignore */\n onFocusableItemRemove() {\n this.focusableItemsCount.update((count) => Math.max(0, count - 1));\n }\n\n /** @ignore */\n registerItem(item: HTMLElement) {\n const currentItems = this.focusableItems();\n this.focusableItems.set([...currentItems, item]);\n }\n\n /** @ignore */\n unregisterItem(item: HTMLElement) {\n const currentItems = this.focusableItems();\n this.focusableItems.set(currentItems.filter((el) => el !== item));\n }\n\n /** @ignore */\n getFocusableItemsCount() {\n return this.focusableItemsCount();\n }\n}\n","import {\n booleanAttribute,\n computed,\n Directive,\n ElementRef,\n inject,\n Input,\n NgZone,\n OnDestroy,\n OnInit\n} from '@angular/core';\nimport { RdxRovingFocusGroupDirective } from './roving-focus-group.directive';\nimport { focusFirst, generateId, getFocusIntent, wrapArray } from './utils';\n\n@Directive({\n selector: '[rdxRovingFocusItem]',\n standalone: true,\n host: {\n '[attr.tabindex]': 'tabIndex',\n '[attr.data-orientation]': 'parent.orientation',\n '[attr.data-active]': 'active',\n '[attr.data-disabled]': '!focusable ? \"\" : undefined',\n '(mousedown)': 'handleMouseDown($event)',\n '(keydown)': 'handleKeydown($event)',\n '(focus)': 'onFocus()'\n }\n})\nexport class RdxRovingFocusItemDirective implements OnInit, OnDestroy {\n private readonly elementRef = inject(ElementRef);\n private readonly ngZone = inject(NgZone);\n protected readonly parent = inject(RdxRovingFocusGroupDirective);\n\n @Input({ transform: booleanAttribute }) focusable: boolean = true;\n @Input({ transform: booleanAttribute }) active: boolean = true;\n @Input() tabStopId: string;\n @Input({ transform: booleanAttribute }) allowShiftKey: boolean = false;\n\n private readonly id = computed(() => this.tabStopId || generateId());\n\n /** @ignore */\n readonly isCurrentTabStop = computed(() => this.parent.currentTabStopId() === this.id());\n\n /**\n * Lifecycle hook triggered on initialization.\n * Registers the element with the parent roving focus group if it is focusable.\n * @ignore\n */\n ngOnInit() {\n if (this.focusable) {\n this.parent.registerItem(this.elementRef.nativeElement);\n this.parent.onFocusableItemAdd();\n }\n }\n\n /**\n * Lifecycle hook triggered on destruction.\n * Unregisters the element from the parent roving focus group if it is focusable.\n * @ignore\n */\n ngOnDestroy() {\n if (this.focusable) {\n this.parent.unregisterItem(this.elementRef.nativeElement);\n this.parent.onFocusableItemRemove();\n }\n }\n\n /**\n * Determines the `tabIndex` of the element.\n * Returns `0` if the element is the current tab stop; otherwise, returns `-1`.\n * @ignore\n */\n get tabIndex() {\n return this.isCurrentTabStop() ? 0 : -1;\n }\n\n /** @ignore */\n handleMouseDown(event: MouseEvent) {\n if (!this.focusable) {\n // We prevent focusing non-focusable items on `mousedown`.\n // Even though the item has tabIndex={-1}, that only means take it out of the tab order.\n event.preventDefault();\n } else {\n // Safari doesn't focus a button when clicked so we run our logic on mousedown also\n this.parent.onItemFocus(this.id());\n }\n }\n\n /** @ignore */\n onFocus() {\n this.parent.onItemFocus(this.id());\n }\n\n /**\n * Handles the `keydown` event for keyboard navigation within the roving focus group.\n * Supports navigation based on orientation and direction, and focuses appropriate elements.\n *\n * @param event The `KeyboardEvent` object.\n * @ignore\n */\n handleKeydown(event: KeyboardEvent) {\n if (event.key === 'Tab' && event.shiftKey) {\n this.parent.onItemShiftTab();\n return;\n }\n\n if (event.target !== this.elementRef.nativeElement) return;\n\n const focusIntent = getFocusIntent(event, this.parent.orientation, this.parent.dir);\n\n if (focusIntent !== undefined) {\n if (event.metaKey || event.ctrlKey || event.altKey || (this.allowShiftKey ? false : event.shiftKey)) {\n return;\n }\n\n event.preventDefault();\n\n let candidateNodes = this.parent.focusableItems().filter((item) => item.dataset['disabled'] !== '');\n\n if (focusIntent === 'last') {\n candidateNodes.reverse();\n } else if (focusIntent === 'prev' || focusIntent === 'next') {\n if (focusIntent === 'prev') candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(this.elementRef.nativeElement);\n\n candidateNodes = this.parent.loop\n ? wrapArray(candidateNodes, currentIndex + 1)\n : candidateNodes.slice(currentIndex + 1);\n }\n\n this.ngZone.runOutsideAngular(() => {\n // eslint-disable-next-line promise/always-return,promise/catch-or-return\n Promise.resolve().then(() => {\n focusFirst(candidateNodes, false, this.elementRef.nativeElement);\n });\n });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"radix-ng-primitives-roving-focus.mjs","sources":["../tmp-esm2022/roving-focus/src/utils.js","../tmp-esm2022/roving-focus/src/roving-focus-group.directive.js","../tmp-esm2022/roving-focus/src/roving-focus-item.directive.js","../tmp-esm2022/roving-focus/index.js","../tmp-esm2022/roving-focus/radix-ng-primitives-roving-focus.js"],"sourcesContent":["export const ENTRY_FOCUS = 'rovingFocusGroup.onEntryFocus';\nexport const EVENT_OPTIONS = { bubbles: false, cancelable: true };\nexport const MAP_KEY_TO_FOCUS_INTENT = {\n ArrowLeft: 'prev',\n ArrowUp: 'prev',\n ArrowRight: 'next',\n ArrowDown: 'next',\n PageUp: 'first',\n Home: 'first',\n PageDown: 'last',\n End: 'last'\n};\nexport function getDirectionAwareKey(key, dir) {\n if (dir !== 'rtl')\n return key;\n return key === 'ArrowLeft' ? 'ArrowRight' : key === 'ArrowRight' ? 'ArrowLeft' : key;\n}\nexport function getFocusIntent(event, orientation, dir) {\n const key = getDirectionAwareKey(event.key, dir);\n if (orientation === 'vertical' && ['ArrowLeft', 'ArrowRight'].includes(key))\n return undefined;\n if (orientation === 'horizontal' && ['ArrowUp', 'ArrowDown'].includes(key))\n return undefined;\n return MAP_KEY_TO_FOCUS_INTENT[key];\n}\nexport function focusFirst(candidates, preventScroll = false, rootNode) {\n const PREVIOUSLY_FOCUSED_ELEMENT = rootNode?.activeElement ?? document.activeElement;\n for (const candidate of candidates) {\n // if focus is already where we want to go, we don't want to keep going through the candidates\n if (candidate === PREVIOUSLY_FOCUSED_ELEMENT)\n return;\n candidate.focus({ preventScroll });\n if (document.activeElement !== PREVIOUSLY_FOCUSED_ELEMENT)\n return;\n }\n}\n/**\n * Wraps an array around itself at a given start index\n * Example: `wrapArray(['a', 'b', 'c', 'd'], 2) === ['c', 'd', 'a', 'b']`\n */\nexport function wrapArray(array, startIndex) {\n return array.map((_, index) => array[(startIndex + index) % array.length]);\n}\nexport function generateId() {\n return `rf-item-${Math.random().toString(36).slice(2, 11)}`;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9zcmMvdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLCtCQUErQixDQUFDO0FBQzNELE1BQU0sQ0FBQyxNQUFNLGFBQWEsR0FBRyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDO0FBSWxFLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFnQztJQUNoRSxTQUFTLEVBQUUsTUFBTTtJQUNqQixPQUFPLEVBQUUsTUFBTTtJQUNmLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFNBQVMsRUFBRSxNQUFNO0lBQ2pCLE1BQU0sRUFBRSxPQUFPO0lBQ2YsSUFBSSxFQUFFLE9BQU87SUFDYixRQUFRLEVBQUUsTUFBTTtJQUNoQixHQUFHLEVBQUUsTUFBTTtDQUNkLENBQUM7QUFFRixNQUFNLFVBQVUsb0JBQW9CLENBQUMsR0FBVyxFQUFFLEdBQWU7SUFDN0QsSUFBSSxHQUFHLEtBQUssS0FBSztRQUFFLE9BQU8sR0FBRyxDQUFDO0lBQzlCLE9BQU8sR0FBRyxLQUFLLFdBQVcsQ0FBQyxDQUFDLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssWUFBWSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQUN6RixDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxLQUFvQixFQUFFLFdBQXlCLEVBQUUsR0FBZTtJQUMzRixNQUFNLEdBQUcsR0FBRyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pELElBQUksV0FBVyxLQUFLLFVBQVUsSUFBSSxDQUFDLFdBQVcsRUFBRSxZQUFZLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1FBQUUsT0FBTyxTQUFTLENBQUM7SUFDOUYsSUFBSSxXQUFXLEtBQUssWUFBWSxJQUFJLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUM7UUFBRSxPQUFPLFNBQVMsQ0FBQztJQUM3RixPQUFPLHVCQUF1QixDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVSxDQUFDLFVBQXlCLEVBQUUsYUFBYSxHQUFHLEtBQUssRUFBRSxRQUFnQztJQUN6RyxNQUFNLDBCQUEwQixHQUFHLFFBQVEsRUFBRSxhQUFhLElBQUksUUFBUSxDQUFDLGFBQWEsQ0FBQztJQUNyRixLQUFLLE1BQU0sU0FBUyxJQUFJLFVBQVUsRUFBRSxDQUFDO1FBQ2pDLDhGQUE4RjtRQUM5RixJQUFJLFNBQVMsS0FBSywwQkFBMEI7WUFBRSxPQUFPO1FBQ3JELFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxhQUFhLEVBQUUsQ0FBQyxDQUFDO1FBQ25DLElBQUksUUFBUSxDQUFDLGFBQWEsS0FBSywwQkFBMEI7WUFBRSxPQUFPO0lBQ3RFLENBQUM7QUFDTCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLFNBQVMsQ0FBSSxLQUFVLEVBQUUsVUFBa0I7SUFDdkQsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQy9FLENBQUM7QUFFRCxNQUFNLFVBQVUsVUFBVTtJQUN0QixPQUFPLFdBQVcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDaEUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIE9yaWVudGF0aW9uID0gJ2hvcml6b250YWwnIHwgJ3ZlcnRpY2FsJztcbmV4cG9ydCB0eXBlIERpcmVjdGlvbiA9ICdsdHInIHwgJ3J0bCc7XG5cbmV4cG9ydCBjb25zdCBFTlRSWV9GT0NVUyA9ICdyb3ZpbmdGb2N1c0dyb3VwLm9uRW50cnlGb2N1cyc7XG5leHBvcnQgY29uc3QgRVZFTlRfT1BUSU9OUyA9IHsgYnViYmxlczogZmFsc2UsIGNhbmNlbGFibGU6IHRydWUgfTtcblxudHlwZSBGb2N1c0ludGVudCA9ICdmaXJzdCcgfCAnbGFzdCcgfCAncHJldicgfCAnbmV4dCc7XG5cbmV4cG9ydCBjb25zdCBNQVBfS0VZX1RPX0ZPQ1VTX0lOVEVOVDogUmVjb3JkPHN0cmluZywgRm9jdXNJbnRlbnQ+ID0ge1xuICAgIEFycm93TGVmdDogJ3ByZXYnLFxuICAgIEFycm93VXA6ICdwcmV2JyxcbiAgICBBcnJvd1JpZ2h0OiAnbmV4dCcsXG4gICAgQXJyb3dEb3duOiAnbmV4dCcsXG4gICAgUGFnZVVwOiAnZmlyc3QnLFxuICAgIEhvbWU6ICdmaXJzdCcsXG4gICAgUGFnZURvd246ICdsYXN0JyxcbiAgICBFbmQ6ICdsYXN0J1xufTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERpcmVjdGlvbkF3YXJlS2V5KGtleTogc3RyaW5nLCBkaXI/OiBEaXJlY3Rpb24pIHtcbiAgICBpZiAoZGlyICE9PSAncnRsJykgcmV0dXJuIGtleTtcbiAgICByZXR1cm4ga2V5ID09PSAnQXJyb3dMZWZ0JyA/ICdBcnJvd1JpZ2h0JyA6IGtleSA9PT0gJ0Fycm93UmlnaHQnID8gJ0Fycm93TGVmdCcgOiBrZXk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGb2N1c0ludGVudChldmVudDogS2V5Ym9hcmRFdmVudCwgb3JpZW50YXRpb24/OiBPcmllbnRhdGlvbiwgZGlyPzogRGlyZWN0aW9uKSB7XG4gICAgY29uc3Qga2V5ID0gZ2V0RGlyZWN0aW9uQXdhcmVLZXkoZXZlbnQua2V5LCBkaXIpO1xuICAgIGlmIChvcmllbnRhdGlvbiA9PT0gJ3ZlcnRpY2FsJyAmJiBbJ0Fycm93TGVmdCcsICdBcnJvd1JpZ2h0J10uaW5jbHVkZXMoa2V5KSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICBpZiAob3JpZW50YXRpb24gPT09ICdob3Jpem9udGFsJyAmJiBbJ0Fycm93VXAnLCAnQXJyb3dEb3duJ10uaW5jbHVkZXMoa2V5KSkgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICByZXR1cm4gTUFQX0tFWV9UT19GT0NVU19JTlRFTlRba2V5XTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZvY3VzRmlyc3QoY2FuZGlkYXRlczogSFRNTEVsZW1lbnRbXSwgcHJldmVudFNjcm9sbCA9IGZhbHNlLCByb290Tm9kZT86IERvY3VtZW50IHwgU2hhZG93Um9vdCkge1xuICAgIGNvbnN0IFBSRVZJT1VTTFlfRk9DVVNFRF9FTEVNRU5UID0gcm9vdE5vZGU/LmFjdGl2ZUVsZW1lbnQgPz8gZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICBmb3IgKGNvbnN0IGNhbmRpZGF0ZSBvZiBjYW5kaWRhdGVzKSB7XG4gICAgICAgIC8vIGlmIGZvY3VzIGlzIGFscmVhZHkgd2hlcmUgd2Ugd2FudCB0byBnbywgd2UgZG9uJ3Qgd2FudCB0byBrZWVwIGdvaW5nIHRocm91Z2ggdGhlIGNhbmRpZGF0ZXNcbiAgICAgICAgaWYgKGNhbmRpZGF0ZSA9PT0gUFJFVklPVVNMWV9GT0NVU0VEX0VMRU1FTlQpIHJldHVybjtcbiAgICAgICAgY2FuZGlkYXRlLmZvY3VzKHsgcHJldmVudFNjcm9sbCB9KTtcbiAgICAgICAgaWYgKGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgIT09IFBSRVZJT1VTTFlfRk9DVVNFRF9FTEVNRU5UKSByZXR1cm47XG4gICAgfVxufVxuXG4vKipcbiAqIFdyYXBzIGFuIGFycmF5IGFyb3VuZCBpdHNlbGYgYXQgYSBnaXZlbiBzdGFydCBpbmRleFxuICogRXhhbXBsZTogYHdyYXBBcnJheShbJ2EnLCAnYicsICdjJywgJ2QnXSwgMikgPT09IFsnYycsICdkJywgJ2EnLCAnYiddYFxuICovXG5leHBvcnQgZnVuY3Rpb24gd3JhcEFycmF5PFQ+KGFycmF5OiBUW10sIHN0YXJ0SW5kZXg6IG51bWJlcikge1xuICAgIHJldHVybiBhcnJheS5tYXAoKF8sIGluZGV4KSA9PiBhcnJheVsoc3RhcnRJbmRleCArIGluZGV4KSAlIGFycmF5Lmxlbmd0aF0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2VuZXJhdGVJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBgcmYtaXRlbS0ke01hdGgucmFuZG9tKCkudG9TdHJpbmcoMzYpLnNsaWNlKDIsIDExKX1gO1xufVxuIl19","import { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, Directive, effect, ElementRef, inject, input, linkedSignal, model, output, PLATFORM_ID, signal } from '@angular/core';\nimport { createContext } from '@radix-ng/primitives/core';\nimport { ENTRY_FOCUS, EVENT_OPTIONS, focusFirst } from './utils';\nimport * as i0 from \"@angular/core\";\nconst rootContext = () => {\n const rovingFocusGroup = inject(RdxRovingFocusGroupDirective);\n return {\n loop: rovingFocusGroup.loop,\n dir: rovingFocusGroup.dir,\n orientation: rovingFocusGroup.orientation,\n currentTabStopId: rovingFocusGroup.currentTabStopId,\n focusableItems: rovingFocusGroup.focusableItems,\n onItemFocus: (tabStopId) => {\n rovingFocusGroup.currentTabStopId.set(tabStopId);\n },\n onItemShiftTab: () => {\n rovingFocusGroup.isTabbingBackOut.set(true);\n },\n onFocusableItemAdd: () => {\n rovingFocusGroup.focusableItemsCount.update((count) => count + 1);\n },\n onFocusableItemRemove: () => {\n rovingFocusGroup.focusableItemsCount.update((count) => Math.max(0, count - 1));\n },\n registerItem: (item) => {\n const currentItems = rovingFocusGroup.focusableItems();\n rovingFocusGroup.focusableItems.set([...currentItems, item]);\n },\n unregisterItem: (item) => {\n const currentItems = rovingFocusGroup.focusableItems();\n rovingFocusGroup.focusableItems.set(currentItems.filter((el) => el !== item));\n }\n };\n};\nexport const [injectRovingFocusGroupContext, provideRovingFocusGroupContext] = createContext('RovingFocusGroupContext');\n/**\n * @group Components\n */\nexport class RdxRovingFocusGroupDirective {\n constructor() {\n this.isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n this.elementRef = inject(ElementRef);\n /**\n * The orientation of the group. Mainly so arrow navigation is done accordingly (left & right vs. up & down)\n */\n this.orientationInput = input('horizontal', ...(ngDevMode ? [{ debugName: \"orientationInput\", alias: 'orientation' }] : [{ alias: 'orientation' }]));\n /**\n * The direction of navigation between items.\n */\n this.dirInput = input('ltr', ...(ngDevMode ? [{ debugName: \"dirInput\", alias: 'dir' }] : [{ alias: 'dir' }]));\n /**\n * Whether keyboard navigation should loop around\n */\n this.loopInput = input(true, ...(ngDevMode ? [{ debugName: \"loopInput\", transform: booleanAttribute, alias: 'loop' }] : [{ transform: booleanAttribute, alias: 'loop' }]));\n /**\n * When `true`, will prevent scrolling to the focus item when focused.\n * @group Props\n */\n this.preventScrollOnEntryFocus = input(false, ...(ngDevMode ? [{ debugName: \"preventScrollOnEntryFocus\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n /**\n * The value of the current stop item.\n *\n * Use when you do not need to control the state of the stop item.\n * @group Props\n */\n this.defaultCurrentTabStopId = input(undefined, ...(ngDevMode ? [{ debugName: \"defaultCurrentTabStopId\" }] : []));\n /**\n * The controlled value of the current stop item. Can be binded as `model`.\n * @group Props\n */\n this.currentTabStopId = model(undefined, ...(ngDevMode ? [{ debugName: \"currentTabStopId\" }] : []));\n /**\n * Event handler called when container is being focused. Can be prevented.\n * @group Emits\n */\n this.entryFocus = output();\n this._orientation = linkedSignal(() => this.orientationInput(), ...(ngDevMode ? [{ debugName: \"_orientation\" }] : []));\n this.orientation = this._orientation.asReadonly();\n this._dir = linkedSignal(() => this.dirInput(), ...(ngDevMode ? [{ debugName: \"_dir\" }] : []));\n this.dir = this._dir.asReadonly();\n this._loop = linkedSignal(() => this.loopInput(), ...(ngDevMode ? [{ debugName: \"_loop\" }] : []));\n this.loop = this._loop.asReadonly();\n this.focusableItems = signal([], ...(ngDevMode ? [{ debugName: \"focusableItems\" }] : []));\n this.isClickFocus = signal(false, ...(ngDevMode ? [{ debugName: \"isClickFocus\" }] : []));\n this.isTabbingBackOut = signal(false, ...(ngDevMode ? [{ debugName: \"isTabbingBackOut\" }] : []));\n this.focusableItemsCount = signal(0, ...(ngDevMode ? [{ debugName: \"focusableItemsCount\" }] : []));\n effect(() => {\n if (this.currentTabStopId() === undefined) {\n const def = this.defaultCurrentTabStopId();\n if (def !== undefined) {\n this.currentTabStopId.set(def);\n }\n }\n });\n }\n setOrientation(value) {\n this._orientation.set(value);\n }\n setDir(value) {\n this._dir.set(value);\n }\n setLoop(value) {\n this._loop.set(value);\n }\n /** @ignore */\n handleMouseUp() {\n if (!this.isBrowser)\n return;\n // reset `isClickFocus` after 1 tick because handleFocus might not triggered due to focused element\n requestAnimationFrame(() => {\n this.isClickFocus.set(false);\n });\n }\n /** @ignore */\n handleFocus(event) {\n // We normally wouldn't need this check, because we already check\n // that the focus is on the current target and not bubbling to it.\n // We do this because Safari doesn't focus buttons when clicked, and\n // instead, the wrapper will get focused and not through a bubbling event.\n const isKeyboardFocus = !this.isClickFocus();\n if (event.currentTarget === this.elementRef.nativeElement &&\n event.target === event.currentTarget &&\n isKeyboardFocus &&\n !this.isTabbingBackOut()) {\n const entryFocusEvent = new CustomEvent(ENTRY_FOCUS, EVENT_OPTIONS);\n this.elementRef.nativeElement.dispatchEvent(entryFocusEvent);\n this.entryFocus.emit(entryFocusEvent);\n if (!entryFocusEvent.defaultPrevented) {\n const items = this.focusableItems().filter((item) => item.dataset['disabled'] !== '');\n const activeItem = items.find((item) => item.getAttribute('data-active') === 'true');\n const highlightedItem = items.find((item) => item.getAttribute('data-highlighted') === '');\n const currentItem = items.find((item) => item.id === this.currentTabStopId());\n const candidateItems = [activeItem, highlightedItem, currentItem, ...items].filter(Boolean);\n focusFirst(candidateItems, this.preventScrollOnEntryFocus());\n }\n }\n this.isClickFocus.set(false);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxRovingFocusGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxRovingFocusGroupDirective, isStandalone: true, selector: \"[rdxRovingFocusGroup]\", inputs: { orientationInput: { classPropertyName: \"orientationInput\", publicName: \"orientation\", isSignal: true, isRequired: false, transformFunction: null }, dirInput: { classPropertyName: \"dirInput\", publicName: \"dir\", isSignal: true, isRequired: false, transformFunction: null }, loopInput: { classPropertyName: \"loopInput\", publicName: \"loop\", isSignal: true, isRequired: false, transformFunction: null }, preventScrollOnEntryFocus: { classPropertyName: \"preventScrollOnEntryFocus\", publicName: \"preventScrollOnEntryFocus\", isSignal: true, isRequired: false, transformFunction: null }, defaultCurrentTabStopId: { classPropertyName: \"defaultCurrentTabStopId\", publicName: \"defaultCurrentTabStopId\", isSignal: true, isRequired: false, transformFunction: null }, currentTabStopId: { classPropertyName: \"currentTabStopId\", publicName: \"currentTabStopId\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { currentTabStopId: \"currentTabStopIdChange\", entryFocus: \"entryFocus\" }, host: { listeners: { \"focus\": \"handleFocus($event)\", \"blur\": \"isTabbingBackOut.set(false)\", \"mouseup\": \"handleMouseUp()\", \"mousedown\": \"isClickFocus.set(true)\" }, properties: { \"attr.data-orientation\": \"orientation()\", \"attr.tabindex\": \"isTabbingBackOut() || focusableItemsCount() === 0 ? -1 : 0\", \"attr.dir\": \"dir()\" }, styleAttribute: \"outline: none;\" }, providers: [provideRovingFocusGroupContext(rootContext)], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxRovingFocusGroupDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdxRovingFocusGroup]',\n providers: [provideRovingFocusGroupContext(rootContext)],\n host: {\n '[attr.data-orientation]': 'orientation()',\n '[attr.tabindex]': 'isTabbingBackOut() || focusableItemsCount() === 0 ? -1 : 0',\n '[attr.dir]': 'dir()',\n '(focus)': 'handleFocus($event)',\n '(blur)': 'isTabbingBackOut.set(false)',\n '(mouseup)': 'handleMouseUp()',\n '(mousedown)': 'isClickFocus.set(true)',\n style: 'outline: none;'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvcm92aW5nLWZvY3VzL3NyYy9yb3ZpbmctZm9jdXMtZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFDSCxnQkFBZ0IsRUFDaEIsU0FBUyxFQUNULE1BQU0sRUFDTixVQUFVLEVBQ1YsTUFBTSxFQUNOLEtBQUssRUFDTCxZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sRUFDTixXQUFXLEVBQ1gsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRCxPQUFPLEVBQWEsV0FBVyxFQUFFLGFBQWEsRUFBRSxVQUFVLEVBQWUsTUFBTSxTQUFTLENBQUM7O0FBRXpGLE1BQU0sV0FBVyxHQUFHLEdBQUcsRUFBRTtJQUNyQixNQUFNLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0lBQzlELE9BQU87UUFDSCxJQUFJLEVBQUUsZ0JBQWdCLENBQUMsSUFBSTtRQUMzQixHQUFHLEVBQUUsZ0JBQWdCLENBQUMsR0FBRztRQUN6QixXQUFXLEVBQUUsZ0JBQWdCLENBQUMsV0FBVztRQUN6QyxnQkFBZ0IsRUFBRSxnQkFBZ0IsQ0FBQyxnQkFBZ0I7UUFDbkQsY0FBYyxFQUFFLGdCQUFnQixDQUFDLGNBQWM7UUFDL0MsV0FBVyxFQUFFLENBQUMsU0FBaUIsRUFBRSxFQUFFO1lBQy9CLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUNyRCxDQUFDO1FBQ0QsY0FBYyxFQUFFLEdBQUcsRUFBRTtZQUNqQixnQkFBZ0IsQ0FBQyxnQkFBZ0IsQ0FB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cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBEaXJlY3RpdmUsXG4gICAgZWZmZWN0LFxuICAgIEVsZW1lbnRSZWYsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIGxpbmtlZFNpZ25hbCxcbiAgICBtb2RlbCxcbiAgICBvdXRwdXQsXG4gICAgUExBVEZPUk1fSUQsXG4gICAgc2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY3JlYXRlQ29udGV4dCB9IGZyb20gJ0ByYWRpeC1uZy9wcmltaXRpdmVzL2NvcmUnO1xuaW1wb3J0IHsgRGlyZWN0aW9uLCBFTlRSWV9GT0NVUywgRVZFTlRfT1BUSU9OUywgZm9jdXNGaXJzdCwgT3JpZW50YXRpb24gfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3Qgcm9vdENvbnRleHQgPSAoKSA9PiB7XG4gICAgY29uc3Qgcm92aW5nRm9jdXNHcm91cCA9IGluamVjdChSZHhSb3ZpbmdGb2N1c0dyb3VwRGlyZWN0aXZlKTtcbiAgICByZXR1cm4ge1xuICAgICAgICBsb29wOiByb3ZpbmdGb2N1c0dyb3VwLmxvb3AsXG4gICAgICAgIGRpcjogcm92aW5nRm9jdXNHcm91cC5kaXIsXG4gICAgICAgIG9yaWVudGF0aW9uOiByb3ZpbmdGb2N1c0dyb3VwLm9yaWVudGF0aW9uLFxuICAgICAgICBjdXJyZW50VGFiU3RvcElkOiByb3ZpbmdGb2N1c0dyb3VwLmN1cnJlbnRUYWJTdG9wSWQsXG4gICAgICAgIGZvY3VzYWJsZUl0ZW1zOiByb3ZpbmdGb2N1c0dyb3VwLmZvY3VzYWJsZUl0ZW1zLFxuICAgICAgICBvbkl0ZW1Gb2N1czogKHRhYlN0b3BJZDogc3RyaW5nKSA9PiB7XG4gICAgICAgICAgICByb3ZpbmdGb2N1c0dyb3VwLmN1cnJlbnRUYWJTdG9wSWQuc2V0KHRhYlN0b3BJZCk7XG4gICAgICAgIH0sXG4gICAgICAgIG9uSXRlbVNoaWZ0VGFiOiAoKSA9PiB7XG4gICAgICAgICAgICByb3ZpbmdGb2N1c0dyb3VwLmlzVGFiYmluZ0JhY2tPdXQuc2V0KHRydWUpO1xuICAgICAgICB9LFxuICAgICAgICBvbkZvY3VzYWJsZUl0ZW1BZGQ6ICgpID0+IHtcbiAgICAgICAgICAgIHJvdmluZ0ZvY3VzR3JvdXAuZm9jdXNhYmxlSXRlbXNDb3VudC51cGRhdGUoKGNvdW50KSA9PiBjb3VudCArIDEpO1xuICAgICAgICB9LFxuICAgICAgICBvbkZvY3VzYWJsZUl0ZW1SZW1vdmU6ICgpID0+IHtcbiAgICAgICAgICAgIHJvdmluZ0ZvY3VzR3JvdXAuZm9jdXNhYmxlSXRlbXNDb3VudC51cGRhdGUoKGNvdW50KSA9PiBNYXRoLm1heCgwLCBjb3VudCAtIDEpKTtcbiAgICAgICAgfSxcbiAgICAgICAgcmVnaXN0ZXJJdGVtOiAoaXRlbTogSFRNTEVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtcyA9IHJvdmluZ0ZvY3VzR3JvdXAuZm9jdXNhYmxlSXRlbXMoKTtcbiAgICAgICAgICAgIHJvdmluZ0ZvY3VzR3JvdXAuZm9jdXNhYmxlSXRlbXMuc2V0KFsuLi5jdXJyZW50SXRlbXMsIGl0ZW1dKTtcbiAgICAgICAgfSxcbiAgICAgICAgdW5yZWdpc3Rlckl0ZW06IChpdGVtOiBIVE1MRWxlbWVudCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudEl0ZW1zID0gcm92aW5nRm9jdXNHcm91cC5mb2N1c2FibGVJdGVtcygpO1xuICAgICAgICAgICAgcm92aW5nRm9jdXNHcm91cC5mb2N1c2FibGVJdGVtcy5zZXQoY3VycmVudEl0ZW1zLmZpbHRlcigoZWwpID0+IGVsICE9PSBpdGVtKSk7XG4gICAgICAgIH1cbiAgICB9O1xufTtcblxuZXhwb3J0IHR5cGUgUm92aW5nRm9jdXNHcm91cENvbnRleHQgPSBSZXR1cm5UeXBlPHR5cGVvZiByb290Q29udGV4dD47XG5cbmV4cG9ydCBjb25zdCBbaW5qZWN0Um92aW5nRm9jdXNHcm91cENvbnRleHQsIHByb3ZpZGVSb3ZpbmdGb2N1c0dyb3VwQ29udGV4dF0gPVxuICAgIGNyZWF0ZUNvbnRleHQ8Um92aW5nRm9jdXNHcm91cENvbnRleHQ+KCdSb3ZpbmdGb2N1c0dyb3VwQ29udGV4dCcpO1xuXG4vKipcbiAqIEBncm91cCBDb21wb25lbnRzXG4gKi9cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW3JkeFJvdmluZ0ZvY3VzR3JvdXBdJyxcbiAgICBwcm92aWRlcnM6IFtwcm92aWRlUm92aW5nRm9jdXNHcm91cENvbnRleHQocm9vdENvbnRleHQpXSxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6ICdvcmllbnRhdGlvbigpJyxcbiAgICAgICAgJ1thdHRyLnRhYmluZGV4XSc6ICdpc1RhYmJpbmdCYWNrT3V0KCkgfHwgZm9jdXNhYmxlSXRlbXNDb3VudCgpID09PSAwID8gLTEgOiAwJyxcbiAgICAgICAgJ1thdHRyLmRpcl0nOiAnZGlyKCknLFxuICAgICAgICAnKGZvY3VzKSc6ICdoYW5kbGVGb2N1cygkZXZlbnQpJyxcbiAgICAgICAgJyhibHVyKSc6ICdpc1RhYmJpbmdCYWNrT3V0LnNldChmYWxzZSknLFxuICAgICAgICAnKG1vdXNldXApJzogJ2hhbmRsZU1vdXNlVXAoKScsXG4gICAgICAgICcobW91c2Vkb3duKSc6ICdpc0NsaWNrRm9jdXMuc2V0KHRydWUpJyxcbiAgICAgICAgc3R5bGU6ICdvdXRsaW5lOiBub25lOydcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeFJvdmluZ0ZvY3VzR3JvdXBEaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIoaW5qZWN0KFBMQVRGT1JNX0lEKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBlbGVtZW50UmVmID0gaW5qZWN0KEVsZW1lbnRSZWYpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIG9yaWVudGF0aW9uIG9mIHRoZSBncm91cC4gTWFpbmx5IHNvIGFycm93IG5hdmlnYXRpb24gaXMgZG9uZSBhY2NvcmRpbmdseSAobGVmdCAmIHJpZ2h0IHZzLiB1cCAmIGRvd24pXG4gICAgICovXG4gICAgcmVhZG9ubHkgb3JpZW50YXRpb25JbnB1dCA9IGlucHV0PE9yaWVudGF0aW9uPignaG9yaXpvbnRhbCcsIHsgYWxpYXM6ICdvcmllbnRhdGlvbicgfSk7XG5cbiAgICAvKipcbiAgICAgKiBUaGUgZGlyZWN0aW9uIG9mIG5hdmlnYXRpb24gYmV0d2VlbiBpdGVtcy5cbiAgICAgKi9cbiAgICByZWFkb25seSBkaXJJbnB1dCA9IGlucHV0PERpcmVjdGlvbj4oJ2x0cicsIHsgYWxpYXM6ICdkaXInIH0pO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciBrZXlib2FyZCBuYXZpZ2F0aW9uIHNob3VsZCBsb29wIGFyb3VuZFxuICAgICAqL1xuICAgIHJlYWRvbmx5IGxvb3BJbnB1dCA9IGlucHV0PGJvb2xlYW4sIEJvb2xlYW5JbnB1dD4odHJ1ZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUsIGFsaWFzOiAnbG9vcCcgfSk7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIGB0cnVlYCwgd2lsbCBwcmV2ZW50IHNjcm9sbGluZyB0byB0aGUgZm9jdXMgaXRlbSB3aGVuIGZvY3VzZWQuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgcmVhZG9ubHkgcHJldmVudFNjcm9sbE9uRW50cnlGb2N1cyA9IGlucHV0PGJvb2xlYW4sIEJvb2xlYW5JbnB1dD4oZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuXG4gICAgLyoqXG4gICAgICogVGhlIHZhbHVlIG9mIHRoZSBjdXJyZW50IHN0b3AgaXRlbS5cbiAgICAgKlxuICAgICAqIFVzZSB3aGVuIHlvdSBkbyBub3QgbmVlZCB0byBjb250cm9sIHRoZSBzdGF0ZSBvZiB0aGUgc3RvcCBpdGVtLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGRlZmF1bHRDdXJyZW50VGFiU3RvcElkID0gaW5wdXQ8c3RyaW5nIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXG4gICAgLyoqXG4gICAgICogVGhlIGNvbnRyb2xsZWQgdmFsdWUgb2YgdGhlIGN1cnJlbnQgc3RvcCBpdGVtLiBDYW4gYmUgYmluZGVkIGFzIGBtb2RlbGAuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgcmVhZG9ubHkgY3VycmVudFRhYlN0b3BJZCA9IG1vZGVsPHN0cmluZyB8IHVuZGVmaW5lZD4odW5kZWZpbmVkKTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGhhbmRsZXIgY2FsbGVkIHdoZW4gY29udGFpbmVyIGlzIGJlaW5nIGZvY3VzZWQuIENhbiBiZSBwcmV2ZW50ZWQuXG4gICAgICogQGdyb3VwIEVtaXRzXG4gICAgICovXG4gICAgcmVhZG9ubHkgZW50cnlGb2N1cyA9IG91dHB1dDxFdmVudD4oKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX29yaWVudGF0aW9uID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMub3JpZW50YXRpb25JbnB1dCgpKTtcbiAgICByZWFkb25seSBvcmllbnRhdGlvbiA9IHRoaXMuX29yaWVudGF0aW9uLmFzUmVhZG9ubHkoKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2RpciA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmRpcklucHV0KCkpO1xuICAgIHJlYWRvbmx5IGRpciA9IHRoaXMuX2Rpci5hc1JlYWRvbmx5KCk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9sb29wID0gbGlua2VkU2lnbmFsKCgpID0+IHRoaXMubG9vcElucHV0KCkpO1xuICAgIHJlYWRvbmx5IGxvb3AgPSB0aGlzLl9sb29wLmFzUmVhZG9ubHkoKTtcblxuICAgIHJlYWRvbmx5IGZvY3VzYWJsZUl0ZW1zID0gc2lnbmFsPEhUTUxFbGVtZW50W10+KFtdKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDbGlja0ZvY3VzID0gc2lnbmFsKGZhbHNlKTtcbiAgICByZWFkb25seSBpc1RhYmJpbmdCYWNrT3V0ID0gc2lnbmFsKGZhbHNlKTtcbiAgICByZWFkb25seSBmb2N1c2FibGVJdGVtc0NvdW50ID0gc2lnbmFsKDApO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAodGhpcy5jdXJyZW50VGFiU3RvcElkKCkgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IGRlZiA9IHRoaXMuZGVmYXVsdEN1cnJlbnRUYWJTdG9wSWQoKTtcbiAgICAgICAgICAgICAgICBpZiAoZGVmICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5jdXJyZW50VGFiU3RvcElkLnNldChkZWYpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0T3JpZW50YXRpb24odmFsdWU6IE9yaWVudGF0aW9uKSB7XG4gICAgICAgIHRoaXMuX29yaWVudGF0aW9uLnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgc2V0RGlyKHZhbHVlOiBEaXJlY3Rpb24pIHtcbiAgICAgICAgdGhpcy5fZGlyLnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgc2V0TG9vcCh2YWx1ZTogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl9sb29wLnNldCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgLyoqIEBpZ25vcmUgKi9cbiAgICBoYW5kbGVNb3VzZVVwKCkge1xuICAgICAgICBpZiAoIXRoaXMuaXNCcm93c2VyKSByZXR1cm47XG5cbiAgICAgICAgLy8gcmVzZXQgYGlzQ2xpY2tGb2N1c2AgYWZ0ZXIgMSB0aWNrIGJlY2F1c2UgaGFuZGxlRm9jdXMgbWlnaHQgbm90IHRyaWdnZXJlZCBkdWUgdG8gZm9jdXNlZCBlbGVtZW50XG4gICAgICAgIHJlcXVlc3RBbmltYXRpb25GcmFtZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzQ2xpY2tGb2N1cy5zZXQoZmFsc2UpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIGhhbmRsZUZvY3VzKGV2ZW50OiBGb2N1c0V2ZW50KSB7XG4gICAgICAgIC8vIFdlIG5vcm1hbGx5IHdvdWxkbid0IG5lZWQgdGhpcyBjaGVjaywgYmVjYXVzZSB3ZSBhbHJlYWR5IGNoZWNrXG4gICAgICAgIC8vIHRoYXQgdGhlIGZvY3VzIGlzIG9uIHRoZSBjdXJyZW50IHRhcmdldCBhbmQgbm90IGJ1YmJsaW5nIHRvIGl0LlxuICAgICAgICAvLyBXZSBkbyB0aGlzIGJlY2F1c2UgU2FmYXJpIGRvZXNuJ3QgZm9jdXMgYnV0dG9ucyB3aGVuIGNsaWNrZWQsIGFuZFxuICAgICAgICAvLyBpbnN0ZWFkLCB0aGUgd3JhcHBlciB3aWxsIGdldCBmb2N1c2VkIGFuZCBub3QgdGhyb3VnaCBhIGJ1YmJsaW5nIGV2ZW50LlxuICAgICAgICBjb25zdCBpc0tleWJvYXJkRm9jdXMgPSAhdGhpcy5pc0NsaWNrRm9jdXMoKTtcblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0ID09PSB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCAmJlxuICAgICAgICAgICAgZXZlbnQudGFyZ2V0ID09PSBldmVudC5jdXJyZW50VGFyZ2V0ICYmXG4gICAgICAgICAgICBpc0tleWJvYXJkRm9jdXMgJiZcbiAgICAgICAgICAgICF0aGlzLmlzVGFiYmluZ0JhY2tPdXQoKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IGVudHJ5Rm9jdXNFdmVudCA9IG5ldyBDdXN0b21FdmVudChFTlRSWV9GT0NVUywgRVZFTlRfT1BUSU9OUyk7XG4gICAgICAgICAgICB0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudC5kaXNwYXRjaEV2ZW50KGVudHJ5Rm9jdXNFdmVudCk7XG4gICAgICAgICAgICB0aGlzLmVudHJ5Rm9jdXMuZW1pdChlbnRyeUZvY3VzRXZlbnQpO1xuXG4gICAgICAgICAgICBpZiAoIWVudHJ5Rm9jdXNFdmVudC5kZWZhdWx0UHJldmVudGVkKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgaXRlbXMgPSB0aGlzLmZvY3VzYWJsZUl0ZW1zKCkuZmlsdGVyKChpdGVtKSA9PiBpdGVtLmRhdGFzZXRbJ2Rpc2FibGVkJ10gIT09ICcnKTtcbiAgICAgICAgICAgICAgICBjb25zdCBhY3RpdmVJdGVtID0gaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS5nZXRBdHRyaWJ1dGUoJ2RhdGEtYWN0aXZlJykgPT09ICd0cnVlJyk7XG4gICAgICAgICAgICAgICAgY29uc3QgaGlnaGxpZ2h0ZWRJdGVtID0gaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS5nZXRBdHRyaWJ1dGUoJ2RhdGEtaGlnaGxpZ2h0ZWQnKSA9PT0gJycpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtID0gaXRlbXMuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gdGhpcy5jdXJyZW50VGFiU3RvcElkKCkpO1xuXG4gICAgICAgICAgICAgICAgY29uc3QgY2FuZGlkYXRlSXRlbXMgPSBbYWN0aXZlSXRlbSwgaGlnaGxpZ2h0ZWRJdGVtLCBjdXJyZW50SXRlbSwgLi4uaXRlbXNdLmZpbHRlcihcbiAgICAgICAgICAgICAgICAgICAgQm9vbGVhblxuICAgICAgICAgICAgICAgICkgYXMgdHlwZW9mIGl0ZW1zO1xuXG4gICAgICAgICAgICAgICAgZm9jdXNGaXJzdChjYW5kaWRhdGVJdGVtcywgdGhpcy5wcmV2ZW50U2Nyb2xsT25FbnRyeUZvY3VzKCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5pc0NsaWNrRm9jdXMuc2V0KGZhbHNlKTtcbiAgICB9XG59XG4iXX0=","import { isPlatformBrowser } from '@angular/common';\nimport { booleanAttribute, computed, DestroyRef, Directive, ElementRef, inject, input, linkedSignal, PLATFORM_ID } from '@angular/core';\nimport { injectRovingFocusGroupContext } from './roving-focus-group.directive';\nimport { focusFirst, generateId, getFocusIntent, wrapArray } from './utils';\nimport * as i0 from \"@angular/core\";\n/**\n * @group Components\n */\nexport class RdxRovingFocusItemDirective {\n constructor() {\n this.isBrowser = isPlatformBrowser(inject(PLATFORM_ID));\n this.destroyRef = inject(DestroyRef);\n this.elementRef = inject(ElementRef);\n this.rootContext = injectRovingFocusGroupContext();\n /**\n * When false, item will not be focusable.\n * @group Props\n */\n this.focusableInput = input(true, ...(ngDevMode ? [{ debugName: \"focusableInput\", transform: booleanAttribute, alias: 'focusable' }] : [{ transform: booleanAttribute, alias: 'focusable' }]));\n /**\n * When `true`, item will be initially focused.\n * @group Props\n */\n this.activeInput = input(true, ...(ngDevMode ? [{ debugName: \"activeInput\", transform: booleanAttribute, alias: 'active' }] : [{ transform: booleanAttribute, alias: 'active' }]));\n /**\n * @group Props\n */\n this.tabStopIdInput = input(undefined, ...(ngDevMode ? [{ debugName: \"tabStopIdInput\", alias: 'tabStopId' }] : [{ alias: 'tabStopId' }]));\n /**\n * When true, shift + arrow key will allow focusing on next/previous item.\n * @group Props\n */\n this.allowShiftKey = input(false, ...(ngDevMode ? [{ debugName: \"allowShiftKey\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n this.id = computed(() => this.tabStopId() || generateId(), ...(ngDevMode ? [{ debugName: \"id\" }] : []));\n this.isCurrentTabStop = computed(() => this.rootContext.currentTabStopId() === this.id(), ...(ngDevMode ? [{ debugName: \"isCurrentTabStop\" }] : []));\n this.focusable = linkedSignal(() => this.focusableInput(), ...(ngDevMode ? [{ debugName: \"focusable\" }] : []));\n this.active = linkedSignal(() => this.activeInput(), ...(ngDevMode ? [{ debugName: \"active\" }] : []));\n this.tabStopId = linkedSignal(() => this.tabStopIdInput(), ...(ngDevMode ? [{ debugName: \"tabStopId\" }] : []));\n if (this.focusable()) {\n this.rootContext.registerItem(this.elementRef.nativeElement);\n this.rootContext.onFocusableItemAdd();\n this.destroyRef.onDestroy(() => {\n this.rootContext.unregisterItem(this.elementRef.nativeElement);\n this.rootContext.onFocusableItemRemove();\n });\n }\n }\n setFocusable(value) {\n this.focusable.set(value);\n }\n setActive(value) {\n this.active.set(value);\n }\n setTabStopId(value) {\n this.tabStopId.set(value);\n }\n /** @ignore */\n handleMouseDown(event) {\n if (!this.focusable()) {\n // We prevent focusing non-focusable items on `mousedown`.\n // Even though the item has tabIndex={-1}, that only means take it out of the tab order.\n event.preventDefault();\n }\n else {\n // Safari doesn't focus a button when clicked so we run our logic on mousedown also\n this.rootContext.onItemFocus(this.id());\n }\n }\n /**\n * Handles the `keydown` event for keyboard navigation within the roving focus group.\n * Supports navigation based on orientation and direction, and focuses appropriate elements.\n *\n * @param event The `KeyboardEvent` object.\n * @ignore\n */\n handleKeydown(event) {\n if (event.key === 'Tab' && event.shiftKey) {\n this.rootContext.onItemShiftTab();\n return;\n }\n if (event.target !== this.elementRef.nativeElement)\n return;\n const focusIntent = getFocusIntent(event, this.rootContext.orientation(), this.rootContext.dir());\n if (focusIntent !== undefined) {\n if (event.metaKey || event.ctrlKey || event.altKey || (this.allowShiftKey() ? false : event.shiftKey)) {\n return;\n }\n event.preventDefault();\n let candidateNodes = this.rootContext.focusableItems().filter((item) => item.dataset['disabled'] !== '');\n if (focusIntent === 'last') {\n candidateNodes.reverse();\n }\n else if (focusIntent === 'prev' || focusIntent === 'next') {\n if (focusIntent === 'prev')\n candidateNodes.reverse();\n const currentIndex = candidateNodes.indexOf(this.elementRef.nativeElement);\n candidateNodes = this.rootContext.loop()\n ? wrapArray(candidateNodes, currentIndex + 1)\n : candidateNodes.slice(currentIndex + 1);\n }\n queueMicrotask(() => {\n if (this.isBrowser) {\n focusFirst(candidateNodes, false, this.elementRef.nativeElement);\n }\n });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxRovingFocusItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxRovingFocusItemDirective, isStandalone: true, selector: \"[rdxRovingFocusItem]\", inputs: { focusableInput: { classPropertyName: \"focusableInput\", publicName: \"focusable\", isSignal: true, isRequired: false, transformFunction: null }, activeInput: { classPropertyName: \"activeInput\", publicName: \"active\", isSignal: true, isRequired: false, transformFunction: null }, tabStopIdInput: { classPropertyName: \"tabStopIdInput\", publicName: \"tabStopId\", isSignal: true, isRequired: false, transformFunction: null }, allowShiftKey: { classPropertyName: \"allowShiftKey\", publicName: \"allowShiftKey\", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { \"mousedown\": \"handleMouseDown($event)\", \"keydown\": \"handleKeydown($event)\", \"focus\": \"rootContext.onItemFocus(id())\" }, properties: { \"attr.tabindex\": \"isCurrentTabStop() ? 0 : -1\", \"attr.data-orientation\": \"rootContext.orientation\", \"attr.data-active\": \"active()\", \"attr.data-disabled\": \"!focusable() ? \\\"\\\" : undefined\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxRovingFocusItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[rdxRovingFocusItem]',\n host: {\n '[attr.tabindex]': 'isCurrentTabStop() ? 0 : -1',\n '[attr.data-orientation]': 'rootContext.orientation',\n '[attr.data-active]': 'active()',\n '[attr.data-disabled]': '!focusable() ? \"\" : undefined',\n '(mousedown)': 'handleMouseDown($event)',\n '(keydown)': 'handleKeydown($event)',\n '(focus)': 'rootContext.onItemFocus(id())'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9yb3ZpbmctZm9jdXMvc3JjL3JvdmluZy1mb2N1cy1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNwRCxPQUFPLEVBQ0gsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixVQUFVLEVBQ1YsU0FBUyxFQUNULFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ2QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDL0UsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFFLFNBQVMsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7QUFFNUU7O0dBRUc7QUFhSCxNQUFNLE9BQU8sMkJBQTJCO0lBcUNwQztRQXBDaUIsY0FBUyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBQ25ELGVBQVUsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDaEMsZUFBVSxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUU5QixnQkFBVyxHQUFHLDZCQUE2QixFQUFHLENBQUM7UUFFbEU7OztXQUdHO1FBQ00sbUJBQWMsR0FBRyxLQUFLLENBQXdCLElBQUksa0RBQUksU0FBUyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxXQUFXLE9BQWpELEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsR0FBQyxDQUFDO1FBRWxIOzs7V0FHRztRQUNNLGdCQUFXLEdBQUcsS0FBSyxDQUF3QixJQUFJLCtDQUFJLFNBQVMsRUFB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LENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDLENBQUM7WUFDakQsQ0FBQztZQUVELGNBQWMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2hCLElBQUksSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO29CQUNqQixVQUFVLENBQUMsY0FBYyxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUNyRSxDQUFDO1lBQ0wsQ0FBQyxDQUFDLENBQUM7UUFDUCxDQUFDO0lBQ0wsQ0FBQzs4R0FwSFEsMkJBQTJCO2tHQUEzQiwyQkFBMkI7OzJGQUEzQiwyQkFBMkI7a0JBWnZDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNCQUFzQjtvQkFDaEMsSUFBSSxFQUFFO3dCQUNGLGlCQUFpQixFQUFFLDZCQUE2Qjt3QkFDaEQseUJBQXlCLEVBQUUseUJBQXlCO3dCQUNwRCxvQkFBb0IsRUFBRSxVQUFVO3dCQUNoQyxzQkFBc0IsRUFBRSwrQkFBK0I7d0JBQ3ZELGFBQWEsRUFBRSx5QkFBeUI7d0JBQ3hDLFdBQVcsRUFBRSx1QkFBdUI7d0JBQ3BDLFNBQVMsRUFBRSwrQkFBK0I7cUJBQzdDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgYm9vbGVhbkF0dHJpYnV0ZSxcbiAgICBjb21wdXRlZCxcbiAgICBEZXN0cm95UmVmLFxuICAgIERpcmVjdGl2ZSxcbiAgICBFbGVtZW50UmVmLFxuICAgIGluamVjdCxcbiAgICBpbnB1dCxcbiAgICBsaW5rZWRTaWduYWwsXG4gICAgUExBVEZPUk1fSURcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbmplY3RSb3ZpbmdGb2N1c0dyb3VwQ29udGV4dCB9IGZyb20gJy4vcm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBmb2N1c0ZpcnN0LCBnZW5lcmF0ZUlkLCBnZXRGb2N1c0ludGVudCwgd3JhcEFycmF5IH0gZnJvbSAnLi91dGlscyc7XG5cbi8qKlxuICogQGdyb3VwIENvbXBvbmVudHNcbiAqL1xuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbcmR4Um92aW5nRm9jdXNJdGVtXScsXG4gICAgaG9zdDoge1xuICAgICAgICAnW2F0dHIudGFiaW5kZXhdJzogJ2lzQ3VycmVudFRhYlN0b3AoKSA/IDAgOiAtMScsXG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6ICdyb290Q29udGV4dC5vcmllbnRhdGlvbicsXG4gICAgICAgICdbYXR0ci5kYXRhLWFjdGl2ZV0nOiAnYWN0aXZlKCknLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiAnIWZvY3VzYWJsZSgpID8gXCJcIiA6IHVuZGVmaW5lZCcsXG4gICAgICAgICcobW91c2Vkb3duKSc6ICdoYW5kbGVNb3VzZURvd24oJGV2ZW50KScsXG4gICAgICAgICcoa2V5ZG93biknOiAnaGFuZGxlS2V5ZG93bigkZXZlbnQpJyxcbiAgICAgICAgJyhmb2N1cyknOiAncm9vdENvbnRleHQub25JdGVtRm9jdXMoaWQoKSknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhSb3ZpbmdGb2N1c0l0ZW1EaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNCcm93c2VyID0gaXNQbGF0Zm9ybUJyb3dzZXIoaW5qZWN0KFBMQVRGT1JNX0lEKSk7XG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuICAgIHByaXZhdGUgcmVhZG9ubHkgZWxlbWVudFJlZiA9IGluamVjdChFbGVtZW50UmVmKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSByb290Q29udGV4dCA9IGluamVjdFJvdmluZ0ZvY3VzR3JvdXBDb250ZXh0KCkhO1xuXG4gICAgLyoqXG4gICAgICogV2hlbiBmYWxzZSwgaXRlbSB3aWxsIG5vdCBiZSBmb2N1c2FibGUuXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgcmVhZG9ubHkgZm9jdXNhYmxlSW5wdXQgPSBpbnB1dDxib29sZWFuLCBCb29sZWFuSW5wdXQ+KHRydWUsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlLCBhbGlhczogJ2ZvY3VzYWJsZScgfSk7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIGB0cnVlYCwgaXRlbSB3aWxsIGJlIGluaXRpYWxseSBmb2N1c2VkLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGFjdGl2ZUlucHV0ID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0Pih0cnVlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSwgYWxpYXM6ICdhY3RpdmUnIH0pO1xuXG4gICAgLyoqXG4gICAgICogQGdyb3VwIFByb3BzXG4gICAgICovXG4gICAgcmVhZG9ubHkgdGFiU3RvcElkSW5wdXQgPSBpbnB1dDxzdHJpbmc+KHVuZGVmaW5lZCwgeyBhbGlhczogJ3RhYlN0b3BJZCcgfSk7XG5cbiAgICAvKipcbiAgICAgKiBXaGVuIHRydWUsIHNoaWZ0ICsgYXJyb3cga2V5IHdpbGwgYWxsb3cgZm9jdXNpbmcgb24gbmV4dC9wcmV2aW91cyBpdGVtLlxuICAgICAqIEBncm91cCBQcm9wc1xuICAgICAqL1xuICAgIHJlYWRvbmx5IGFsbG93U2hpZnRLZXkgPSBpbnB1dDxib29sZWFuLCBCb29sZWFuSW5wdXQ+KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMudGFiU3RvcElkKCkgfHwgZ2VuZXJhdGVJZCgpKTtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaXNDdXJyZW50VGFiU3RvcCA9IGNvbXB1dGVkKCgpID0+IHRoaXMucm9vdENvbnRleHQuY3VycmVudFRhYlN0b3BJZCgpID09PSB0aGlzLmlkKCkpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGZvY3VzYWJsZSA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLmZvY3VzYWJsZUlucHV0KCkpO1xuICAgIHByb3RlY3RlZCByZWFkb25seSBhY3RpdmUgPSBsaW5rZWRTaWduYWwoKCkgPT4gdGhpcy5hY3RpdmVJbnB1dCgpKTtcbiAgICBwcml2YXRlIHJlYWRvbmx5IHRhYlN0b3BJZCA9IGxpbmtlZFNpZ25hbCgoKSA9PiB0aGlzLnRhYlN0b3BJZElucHV0KCkpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGlmICh0aGlzLmZvY3VzYWJsZSgpKSB7XG4gICAgICAgICAgICB0aGlzLnJvb3RDb250ZXh0LnJlZ2lzdGVySXRlbSh0aGlzLmVsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG4gICAgICAgICAgICB0aGlzLnJvb3RDb250ZXh0Lm9uRm9jdXNhYmxlSXRlbUFkZCgpO1xuXG4gICAgICAgICAgICB0aGlzLmRlc3Ryb3lSZWYub25EZXN0cm95KCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnJvb3RDb250ZXh0LnVucmVnaXN0ZXJJdGVtKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcbiAgICAgICAgICAgICAgICB0aGlzLnJvb3RDb250ZXh0Lm9uRm9jdXNhYmxlSXRlbVJlbW92ZSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRGb2N1c2FibGUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5mb2N1c2FibGUuc2V0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzZXRBY3RpdmUodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5hY3RpdmUuc2V0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzZXRUYWJTdG9wSWQodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLnRhYlN0b3BJZC5zZXQodmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaWdub3JlICovXG4gICAgaGFuZGxlTW91c2VEb3duKGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIGlmICghdGhpcy5mb2N1c2FibGUoKSkge1xuICAgICAgICAgICAgLy8gV2UgcHJldmVudCBmb2N1c2luZyBub24tZm9jdXNhYmxlIGl0ZW1zIG9uIGBtb3VzZWRvd25gLlxuICAgICAgICAgICAgLy8gRXZlbiB0aG91Z2ggdGhlIGl0ZW0gaGFzIHRhYkluZGV4PXstMX0sIHRoYXQgb25seSBtZWFucyB0YWtlIGl0IG91dCBvZiB0aGUgdGFiIG9yZGVyLlxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIFNhZmFyaSBkb2Vzbid0IGZvY3VzIGEgYnV0dG9uIHdoZW4gY2xpY2tlZCBzbyB3ZSBydW4gb3VyIGxvZ2ljIG9uIG1vdXNlZG93biBhbHNvXG4gICAgICAgICAgICB0aGlzLnJvb3RDb250ZXh0Lm9uSXRlbUZvY3VzKHRoaXMuaWQoKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBIYW5kbGVzIHRoZSBga2V5ZG93bmAgZXZlbnQgZm9yIGtleWJvYXJkIG5hdmlnYXRpb24gd2l0aGluIHRoZSByb3ZpbmcgZm9jdXMgZ3JvdXAuXG4gICAgICogU3VwcG9ydHMgbmF2aWdhdGlvbiBiYXNlZCBvbiBvcmllbnRhdGlvbiBhbmQgZGlyZWN0aW9uLCBhbmQgZm9jdXNlcyBhcHByb3ByaWF0ZSBlbGVtZW50cy5cbiAgICAgKlxuICAgICAqIEBwYXJhbSBldmVudCBUaGUgYEtleWJvYXJkRXZlbnRgIG9iamVjdC5cbiAgICAgKiBAaWdub3JlXG4gICAgICovXG4gICAgaGFuZGxlS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnVGFiJyAmJiBldmVudC5zaGlmdEtleSkge1xuICAgICAgICAgICAgdGhpcy5yb290Q29udGV4dC5vbkl0ZW1TaGlmdFRhYigpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGV2ZW50LnRhcmdldCAhPT0gdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpIHJldHVybjtcblxuICAgICAgICBjb25zdCBmb2N1c0ludGVudCA9IGdldEZvY3VzSW50ZW50KGV2ZW50LCB0aGlzLnJvb3RDb250ZXh0Lm9yaWVudGF0aW9uKCksIHRoaXMucm9vdENvbnRleHQuZGlyKCkpO1xuXG4gICAgICAgIGlmIChmb2N1c0ludGVudCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICBpZiAoZXZlbnQubWV0YUtleSB8fCBldmVudC5jdHJsS2V5IHx8IGV2ZW50LmFsdEtleSB8fCAodGhpcy5hbGxvd1NoaWZ0S2V5KCkgPyBmYWxzZSA6IGV2ZW50LnNoaWZ0S2V5KSkge1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcblxuICAgICAgICAgICAgbGV0IGNhbmRpZGF0ZU5vZGVzID0gdGhpcy5yb290Q29udGV4dC5mb2N1c2FibGVJdGVtcygpLmZpbHRlcigoaXRlbSkgPT4gaXRlbS5kYXRhc2V0WydkaXNhYmxlZCddICE9PSAnJyk7XG5cbiAgICAgICAgICAgIGlmIChmb2N1c0ludGVudCA9PT0gJ2xhc3QnKSB7XG4gICAgICAgICAgICAgICAgY2FuZGlkYXRlTm9kZXMucmV2ZXJzZSgpO1xuICAgICAgICAgICAgfSBlbHNlIGlmIChmb2N1c0ludGVudCA9PT0gJ3ByZXYnIHx8IGZvY3VzSW50ZW50ID09PSAnbmV4dCcpIHtcbiAgICAgICAgICAgICAgICBpZiAoZm9jdXNJbnRlbnQgPT09ICdwcmV2JykgY2FuZGlkYXRlTm9kZXMucmV2ZXJzZSgpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRJbmRleCA9IGNhbmRpZGF0ZU5vZGVzLmluZGV4T2YodGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuXG4gICAgICAgICAgICAgICAgY2FuZGlkYXRlTm9kZXMgPSB0aGlzLnJvb3RDb250ZXh0Lmxvb3AoKVxuICAgICAgICAgICAgICAgICAgICA/IHdyYXBBcnJheShjYW5kaWRhdGVOb2RlcywgY3VycmVudEluZGV4ICsgMSlcbiAgICAgICAgICAgICAgICAgICAgOiBjYW5kaWRhdGVOb2Rlcy5zbGljZShjdXJyZW50SW5kZXggKyAxKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcXVldWVNaWNyb3Rhc2soKCkgPT4ge1xuICAgICAgICAgICAgICAgIGlmICh0aGlzLmlzQnJvd3Nlcikge1xuICAgICAgICAgICAgICAgICAgICBmb2N1c0ZpcnN0KGNhbmRpZGF0ZU5vZGVzLCBmYWxzZSwgdGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19","import { RdxRovingFocusGroupDirective } from './src/roving-focus-group.directive';\nimport { RdxRovingFocusItemDirective } from './src/roving-focus-item.directive';\nexport * from './src/roving-focus-group.directive';\nexport * from './src/roving-focus-item.directive';\nexport const rovingFocusImports = [RdxRovingFocusGroupDirective, RdxRovingFocusItemDirective];\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoRixjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMsbUNBQW1DLENBQUM7QUFJbEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyw0QkFBNEIsRUFBRSwyQkFBMkIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL3JvdmluZy1mb2N1cy1ncm91cC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWl0ZW0uZGlyZWN0aXZlJztcblxuZXhwb3J0ICogZnJvbSAnLi9zcmMvcm92aW5nLWZvY3VzLWdyb3VwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9yb3ZpbmctZm9jdXMtaXRlbS5kaXJlY3RpdmUnO1xuXG5leHBvcnQgdHlwZSB7IERpcmVjdGlvbiwgT3JpZW50YXRpb24gfSBmcm9tICcuL3NyYy91dGlscyc7XG5cbmV4cG9ydCBjb25zdCByb3ZpbmdGb2N1c0ltcG9ydHMgPSBbUmR4Um92aW5nRm9jdXNHcm91cERpcmVjdGl2ZSwgUmR4Um92aW5nRm9jdXNJdGVtRGlyZWN0aXZlXTtcbiJdfQ==","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1yb3ZpbmctZm9jdXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL3JvdmluZy1mb2N1cy9yYWRpeC1uZy1wcmltaXRpdmVzLXJvdmluZy1mb2N1cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
@@ -13,12 +13,12 @@ class RdxSelectValueDirective {
|
|
|
13
13
|
constructor() {
|
|
14
14
|
this.select = inject(RdxSelectComponent);
|
|
15
15
|
}
|
|
16
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
17
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "
|
|
16
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectValueDirective, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
17
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectValueDirective, isStandalone: true, selector: "[rdxSelectValue]", inputs: { placeholder: "placeholder" }, exportAs: ["rdxSelectValue"], ngImport: i0, template: `
|
|
18
18
|
{{ select.selectionModel.isEmpty() ? placeholder : select.selected }}
|
|
19
19
|
`, isInline: true, styles: [":host{pointer-events:none}\n"] }); }
|
|
20
20
|
}
|
|
21
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
21
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectValueDirective, decorators: [{
|
|
22
22
|
type: Component,
|
|
23
23
|
args: [{ selector: '[rdxSelectValue]', standalone: true, exportAs: 'rdxSelectValue', template: `
|
|
24
24
|
{{ select.selectionModel.isEmpty() ? placeholder : select.selected }}
|
|
@@ -56,10 +56,10 @@ class RdxSelectTriggerDirective {
|
|
|
56
56
|
this.resizeObserver.observe(this.nativeElement);
|
|
57
57
|
});
|
|
58
58
|
}
|
|
59
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
60
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "
|
|
59
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
60
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "20.3.3", type: RdxSelectTriggerDirective, isStandalone: true, selector: "[rdxSelectTrigger]", host: { properties: { "attr.type": "\"button\"", "attr.role": "\"combobox\"", "attr.aria-autocomplete": "\"none\"", "attr.dir": "select.dir.value", "attr.aria-expanded": "select.open", "attr.aria-required": "select.required", "attr.disabled": "select.disabled ? \"\" : null", "attr.data-disabled": "select.disabled ? \"\" : null", "attr.data-state": "select.open ? 'open': 'closed'", "attr.data-placeholder": "value().placeholder || null" } }, queries: [{ propertyName: "value", first: true, predicate: RdxSelectValueDirective, descendants: true, isSignal: true }], ngImport: i0 }); }
|
|
61
61
|
}
|
|
62
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
62
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectTriggerDirective, decorators: [{
|
|
63
63
|
type: Directive,
|
|
64
64
|
args: [{
|
|
65
65
|
selector: '[rdxSelectTrigger]',
|
|
@@ -89,19 +89,19 @@ class RdxSelectComponent {
|
|
|
89
89
|
this.ngZone = inject(NgZone);
|
|
90
90
|
this.trigger = contentChild.required(RdxSelectTriggerDirective);
|
|
91
91
|
this.content = contentChild.required(forwardRef(() => RdxSelectContentDirective));
|
|
92
|
-
this.items = contentChildren(forwardRef(() => RdxSelectItemDirective), { descendants: true });
|
|
92
|
+
this.items = contentChildren(forwardRef(() => RdxSelectItemDirective), ...(ngDevMode ? [{ debugName: "items", descendants: true }] : [{ descendants: true }]));
|
|
93
93
|
this.overlayDir = viewChild.required(CdkConnectedOverlay);
|
|
94
94
|
/**
|
|
95
95
|
* Tuple type for the trigger element size. Set by the trigger element itself.
|
|
96
96
|
* The first element is the width and the second element is the height.
|
|
97
97
|
* @returns The size of the trigger element.
|
|
98
98
|
*/
|
|
99
|
-
this.triggerSize = signal([0, 0]);
|
|
99
|
+
this.triggerSize = signal([0, 0], ...(ngDevMode ? [{ debugName: "triggerSize" }] : []));
|
|
100
100
|
/**
|
|
101
101
|
* The width of the trigger element.
|
|
102
102
|
* @returns The width of the trigger element.
|
|
103
103
|
*/
|
|
104
|
-
this.triggerWidth = computed(() => this.triggerSize()[0]);
|
|
104
|
+
this.triggerWidth = computed(() => this.triggerSize()[0], ...(ngDevMode ? [{ debugName: "triggerWidth" }] : []));
|
|
105
105
|
/**
|
|
106
106
|
* This position config ensures that the top "start" corner of the overlay
|
|
107
107
|
* is aligned with the top "start" of the origin by default (overlapping
|
|
@@ -240,8 +240,8 @@ class RdxSelectComponent {
|
|
|
240
240
|
closingActions() {
|
|
241
241
|
return merge(this.overlayDir().overlayRef.outsidePointerEvents(), this.overlayDir().overlayRef.detachments());
|
|
242
242
|
}
|
|
243
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
244
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "
|
|
243
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
244
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "20.3.3", type: RdxSelectComponent, isStandalone: true, selector: "[rdxSelect]", inputs: { defaultValue: "defaultValue", name: "name", defaultOpen: ["defaultOpen", "defaultOpen", booleanAttribute], open: ["open", "open", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], required: ["required", "required", booleanAttribute], matchTriggerWidth: ["matchTriggerWidth", "matchTriggerWidth", booleanAttribute], value: "value" }, outputs: { onValueChange: "onValueChange", onOpenChange: "onOpenChange" }, host: { listeners: { "click": "toggle()", "keydown": "content().keyManager.onKeydown($event)" }, properties: { "style.--radix-select-trigger-width.px": "triggerSize()[0]", "style.--radix-select-trigger-height.px": "triggerSize()[1]" } }, queries: [{ propertyName: "trigger", first: true, predicate: RdxSelectTriggerDirective, descendants: true, isSignal: true }, { propertyName: "content", first: true, predicate: i0.forwardRef(() => RdxSelectContentDirective), descendants: true, isSignal: true }, { propertyName: "items", predicate: i0.forwardRef(() => RdxSelectItemDirective), descendants: true, isSignal: true }], viewQueries: [{ propertyName: "overlayDir", first: true, predicate: CdkConnectedOverlay, descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
245
245
|
<ng-content select="[rdxSelectTrigger]" />
|
|
246
246
|
|
|
247
247
|
<ng-template
|
|
@@ -264,7 +264,7 @@ class RdxSelectComponent {
|
|
|
264
264
|
</ng-template>
|
|
265
265
|
`, isInline: true, dependencies: [{ kind: "ngmodule", type: OverlayModule }, { kind: "directive", type: i1.CdkConnectedOverlay, selector: "[cdk-connected-overlay], [connected-overlay], [cdkConnectedOverlay]", inputs: ["cdkConnectedOverlayOrigin", "cdkConnectedOverlayPositions", "cdkConnectedOverlayPositionStrategy", "cdkConnectedOverlayOffsetX", "cdkConnectedOverlayOffsetY", "cdkConnectedOverlayWidth", "cdkConnectedOverlayHeight", "cdkConnectedOverlayMinWidth", "cdkConnectedOverlayMinHeight", "cdkConnectedOverlayBackdropClass", "cdkConnectedOverlayPanelClass", "cdkConnectedOverlayViewportMargin", "cdkConnectedOverlayScrollStrategy", "cdkConnectedOverlayOpen", "cdkConnectedOverlayDisableClose", "cdkConnectedOverlayTransformOriginOn", "cdkConnectedOverlayHasBackdrop", "cdkConnectedOverlayLockPosition", "cdkConnectedOverlayFlexibleDimensions", "cdkConnectedOverlayGrowAfterOpen", "cdkConnectedOverlayPush", "cdkConnectedOverlayDisposeOnNavigation"], outputs: ["backdropClick", "positionChange", "attach", "detach", "overlayKeydown", "overlayOutsideClick"], exportAs: ["cdkConnectedOverlay"] }] }); }
|
|
266
266
|
}
|
|
267
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
267
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectComponent, decorators: [{
|
|
268
268
|
type: Component,
|
|
269
269
|
args: [{
|
|
270
270
|
selector: '[rdxSelect]',
|
|
@@ -410,10 +410,10 @@ class RdxSelectItemDirective {
|
|
|
410
410
|
this.select.updateActiveItem(this);
|
|
411
411
|
}
|
|
412
412
|
}
|
|
413
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
414
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "
|
|
413
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
414
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "20.3.3", type: RdxSelectItemDirective, isStandalone: true, selector: "[rdxSelectItem]", inputs: { value: "value", textValue: "textValue", disabled: ["disabled", "disabled", booleanAttribute] }, host: { listeners: { "focus": "content.highlighted.next(this)", "click": "selectViaInteraction()", "keydown": "handleKeydown($event)", "pointermove": "onPointerMove()" }, properties: { "attr.role": "\"option\"", "attr.data-state": "dataState", "attr.aria-selected": "selected", "attr.data-disabled": "disabled || null", "attr.data-highlighted": "highlighted || null", "attr.tabindex": "-1" } }, exportAs: ["rdxSelectItem"], ngImport: i0 }); }
|
|
415
415
|
}
|
|
416
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
416
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectItemDirective, decorators: [{
|
|
417
417
|
type: Directive,
|
|
418
418
|
args: [{
|
|
419
419
|
selector: '[rdxSelectItem]',
|
|
@@ -465,10 +465,10 @@ class RdxSelectContentDirective {
|
|
|
465
465
|
ngAfterContentInit() {
|
|
466
466
|
this.keyManager = this.initKeyManager();
|
|
467
467
|
}
|
|
468
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
469
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
468
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
469
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectContentDirective, isStandalone: true, selector: "[rdxSelectContent]", host: { listeners: { "keydown": "keyManager.onKeydown($event)" }, properties: { "attr.role": "\"listbox\"", "attr.data-state": "select.open ? 'open': 'closed'", "attr.data-side": "true", "attr.data-align": "true" } }, queries: [{ propertyName: "options", predicate: RdxSelectItemDirective, descendants: true }], exportAs: ["rdxSelectContent"], ngImport: i0 }); }
|
|
470
470
|
}
|
|
471
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
471
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectContentDirective, decorators: [{
|
|
472
472
|
type: Directive,
|
|
473
473
|
args: [{
|
|
474
474
|
selector: '[rdxSelectContent]',
|
|
@@ -488,10 +488,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
488
488
|
}] } });
|
|
489
489
|
|
|
490
490
|
class RdxSelectGroupDirective {
|
|
491
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
492
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
491
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
492
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectGroupDirective, isStandalone: true, selector: "[rdxSelectGroup]", host: { properties: { "attr.role": "\"group\"" } }, exportAs: ["rdxSelectGroup"], ngImport: i0 }); }
|
|
493
493
|
}
|
|
494
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
494
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectGroupDirective, decorators: [{
|
|
495
495
|
type: Directive,
|
|
496
496
|
args: [{
|
|
497
497
|
selector: '[rdxSelectGroup]',
|
|
@@ -504,10 +504,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
504
504
|
}] });
|
|
505
505
|
|
|
506
506
|
class RdxSelectIconDirective {
|
|
507
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
508
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
507
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
508
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectIconDirective, isStandalone: true, selector: "[rdxSelectIcon]", host: { properties: { "attr.aria-hidden": "true" } }, exportAs: ["rdxSelectIcon"], ngImport: i0 }); }
|
|
509
509
|
}
|
|
510
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
510
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectIconDirective, decorators: [{
|
|
511
511
|
type: Directive,
|
|
512
512
|
args: [{
|
|
513
513
|
selector: '[rdxSelectIcon]',
|
|
@@ -523,10 +523,10 @@ class RdxSelectItemIndicatorDirective {
|
|
|
523
523
|
constructor() {
|
|
524
524
|
this.item = inject(RdxSelectItemDirective);
|
|
525
525
|
}
|
|
526
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
527
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
526
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectItemIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
527
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectItemIndicatorDirective, isStandalone: true, selector: "[rdxSelectItemIndicator]", host: { properties: { "attr.aria-hidden": "true", "style.display": "item.selected ? \"\" : \"none\"" } }, exportAs: ["rdxSelectItemIndicator"], ngImport: i0 }); }
|
|
528
528
|
}
|
|
529
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
529
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectItemIndicatorDirective, decorators: [{
|
|
530
530
|
type: Directive,
|
|
531
531
|
args: [{
|
|
532
532
|
selector: '[rdxSelectItemIndicator]',
|
|
@@ -540,10 +540,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
540
540
|
}] });
|
|
541
541
|
|
|
542
542
|
class RdxSelectLabelDirective {
|
|
543
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
544
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
543
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
544
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectLabelDirective, isStandalone: true, selector: "[rdxSelectLabel]", exportAs: ["rdxSelectLabel"], ngImport: i0 }); }
|
|
545
545
|
}
|
|
546
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
546
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectLabelDirective, decorators: [{
|
|
547
547
|
type: Directive,
|
|
548
548
|
args: [{
|
|
549
549
|
selector: '[rdxSelectLabel]',
|
|
@@ -553,10 +553,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.4", ngImpor
|
|
|
553
553
|
}] });
|
|
554
554
|
|
|
555
555
|
class RdxSelectSeparatorDirective {
|
|
556
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
557
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
556
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectSeparatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
557
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.3", type: RdxSelectSeparatorDirective, isStandalone: true, selector: "[rdxSelectSeparator]", host: { properties: { "attr.aria-hidden": "true" } }, exportAs: ["rdxSelectSeparator"], ngImport: i0 }); }
|
|
558
558
|
}
|
|
559
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
559
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectSeparatorDirective, decorators: [{
|
|
560
560
|
type: Directive,
|
|
561
561
|
args: [{
|
|
562
562
|
selector: '[rdxSelectSeparator]',
|
|
@@ -581,8 +581,8 @@ const _imports = [
|
|
|
581
581
|
RdxSelectIconDirective
|
|
582
582
|
];
|
|
583
583
|
class RdxSelectModule {
|
|
584
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
585
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "
|
|
584
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
585
|
+
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectModule, imports: [RdxSelectContentDirective,
|
|
586
586
|
RdxSelectGroupDirective,
|
|
587
587
|
RdxSelectItemDirective,
|
|
588
588
|
RdxSelectItemIndicatorDirective,
|
|
@@ -601,9 +601,9 @@ class RdxSelectModule {
|
|
|
601
601
|
RdxSelectTriggerDirective,
|
|
602
602
|
RdxSelectValueDirective,
|
|
603
603
|
RdxSelectIconDirective] }); }
|
|
604
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "
|
|
604
|
+
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectModule, imports: [RdxSelectComponent] }); }
|
|
605
605
|
}
|
|
606
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
606
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.3", ngImport: i0, type: RdxSelectModule, decorators: [{
|
|
607
607
|
type: NgModule,
|
|
608
608
|
args: [{
|
|
609
609
|
imports: [..._imports],
|