@radix-ng/primitives 0.50.0 → 1.0.0-beta.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/collection/README.md +1 -0
- package/fesm2022/radix-ng-primitives-accordion.mjs +134 -66
- package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs +224 -132
- package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-arrow.mjs +26 -10
- package/fesm2022/radix-ng-primitives-arrow.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs +6 -6
- package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-avatar.mjs +68 -75
- package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-button.mjs +123 -0
- package/fesm2022/radix-ng-primitives-button.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-calendar.mjs +104 -103
- package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-checkbox.mjs +414 -80
- package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collapsible.mjs +193 -92
- package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-collection.mjs +72 -0
- package/fesm2022/radix-ng-primitives-collection.mjs.map +1 -0
- 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 +143 -427
- package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-core.mjs +757 -757
- package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-cropper.mjs +55 -53
- package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-date-field.mjs +93 -86
- package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dialog.mjs +658 -330
- package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +98 -76
- package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-drawer.mjs +1059 -0
- package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-editable.mjs +20 -20
- package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-field.mjs +363 -0
- package/fesm2022/radix-ng-primitives-field.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-fieldset.mjs +79 -0
- package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-focus-guards.mjs +3 -3
- package/fesm2022/radix-ng-primitives-focus-guards.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-focus-scope.mjs +29 -14
- package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-input.mjs +172 -0
- package/fesm2022/radix-ng-primitives-input.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-label.mjs +11 -11
- package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menu.mjs +1484 -353
- package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-menubar.mjs +290 -162
- package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-meter.mjs +271 -0
- package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1060 -1553
- package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-number-field.mjs +1102 -366
- package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-pagination.mjs +51 -51
- package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popover.mjs +980 -995
- package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-popper.mjs +137 -82
- package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-portal.mjs +40 -16
- package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-presence.mjs +134 -246
- package/fesm2022/radix-ng-primitives-presence.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-preview-card.mjs +997 -0
- package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -0
- package/fesm2022/radix-ng-primitives-progress.mjs +231 -92
- package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-radio.mjs +211 -70
- package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-roving-focus.mjs +127 -77
- package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-select.mjs +791 -511
- package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-separator.mjs +16 -45
- package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-slider.mjs +976 -720
- package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-stepper.mjs +69 -71
- package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-switch.mjs +128 -124
- package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tabs.mjs +388 -115
- package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-time-field.mjs +111 -117
- package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle-group.mjs +122 -248
- package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toggle.mjs +99 -62
- package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-toolbar.mjs +307 -94
- package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-tooltip.mjs +690 -1079
- package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs +46 -87
- package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
- package/fesm2022/radix-ng-primitives.mjs.map +1 -1
- package/meter/README.md +3 -0
- package/navigation-menu/README.md +2 -1
- package/package.json +85 -63
- package/portal/README.md +2 -0
- package/preview-card/README.md +3 -0
- package/schematics/collection.json +1 -0
- package/schematics/ng-add/index.d.ts +3 -2
- package/schematics/ng-add/index.js +62 -31
- package/schematics/ng-add/index.js.map +1 -1
- package/schematics/ng-add/package-config.d.ts +4 -2
- package/schematics/ng-add/package-config.js +10 -2
- package/schematics/ng-add/package-config.js.map +1 -1
- package/schematics/ng-add/schema.d.ts +3 -0
- package/schematics/ng-add/schema.js +3 -0
- package/schematics/ng-add/schema.js.map +1 -0
- package/schematics/ng-add/schema.json +14 -0
- package/select/README.md +2 -0
- package/{accordion/index.d.ts → types/radix-ng-primitives-accordion.d.ts} +102 -67
- package/types/radix-ng-primitives-alert-dialog.d.ts +114 -0
- package/{arrow/index.d.ts → types/radix-ng-primitives-arrow.d.ts} +1 -1
- package/{aspect-ratio/index.d.ts → types/radix-ng-primitives-aspect-ratio.d.ts} +1 -1
- package/{avatar/index.d.ts → types/radix-ng-primitives-avatar.d.ts} +7 -11
- package/types/radix-ng-primitives-button.d.ts +73 -0
- package/{calendar/index.d.ts → types/radix-ng-primitives-calendar.d.ts} +2 -3
- package/types/radix-ng-primitives-checkbox.d.ts +337 -0
- package/types/radix-ng-primitives-collapsible.d.ts +159 -0
- package/types/radix-ng-primitives-collection.d.ts +44 -0
- package/{config/index.d.ts → types/radix-ng-primitives-config.d.ts} +1 -1
- package/types/radix-ng-primitives-context-menu.d.ts +73 -0
- package/{core/index.d.ts → types/radix-ng-primitives-core.d.ts} +311 -236
- package/{cropper/index.d.ts → types/radix-ng-primitives-cropper.d.ts} +6 -5
- package/{date-field/index.d.ts → types/radix-ng-primitives-date-field.d.ts} +42 -27
- package/types/radix-ng-primitives-dialog.d.ts +323 -0
- package/{dismissable-layer/index.d.ts → types/radix-ng-primitives-dismissable-layer.d.ts} +15 -7
- package/types/radix-ng-primitives-drawer.d.ts +448 -0
- package/{editable/index.d.ts → types/radix-ng-primitives-editable.d.ts} +1 -1
- package/types/radix-ng-primitives-field.d.ts +373 -0
- package/types/radix-ng-primitives-fieldset.d.ts +48 -0
- package/{focus-scope/index.d.ts → types/radix-ng-primitives-focus-scope.d.ts} +13 -5
- package/types/radix-ng-primitives-input.d.ts +87 -0
- package/{label/index.d.ts → types/radix-ng-primitives-label.d.ts} +0 -1
- package/types/radix-ng-primitives-menu.d.ts +612 -0
- package/types/radix-ng-primitives-menubar.d.ts +66 -0
- package/types/radix-ng-primitives-meter.d.ts +193 -0
- package/types/radix-ng-primitives-navigation-menu.d.ts +488 -0
- package/types/radix-ng-primitives-number-field.d.ts +464 -0
- package/{pagination/index.d.ts → types/radix-ng-primitives-pagination.d.ts} +2 -2
- package/types/radix-ng-primitives-popover.d.ts +416 -0
- package/{popper/index.d.ts → types/radix-ng-primitives-popper.d.ts} +50 -9
- package/types/radix-ng-primitives-portal.d.ts +30 -0
- package/types/radix-ng-primitives-presence.d.ts +55 -0
- package/types/radix-ng-primitives-preview-card.d.ts +359 -0
- package/types/radix-ng-primitives-progress.d.ts +206 -0
- package/{radio/index.d.ts → types/radix-ng-primitives-radio.d.ts} +56 -26
- package/{roving-focus/index.d.ts → types/radix-ng-primitives-roving-focus.d.ts} +38 -27
- package/types/radix-ng-primitives-select.d.ts +512 -0
- package/types/radix-ng-primitives-separator.d.ts +38 -0
- package/types/radix-ng-primitives-slider.d.ts +377 -0
- package/{stepper/index.d.ts → types/radix-ng-primitives-stepper.d.ts} +21 -22
- package/types/radix-ng-primitives-switch.d.ts +121 -0
- package/types/radix-ng-primitives-tabs.d.ts +247 -0
- package/{time-field/index.d.ts → types/radix-ng-primitives-time-field.d.ts} +46 -31
- package/types/radix-ng-primitives-toggle-group.d.ts +116 -0
- package/types/radix-ng-primitives-toggle.d.ts +65 -0
- package/types/radix-ng-primitives-toolbar.d.ts +180 -0
- package/types/radix-ng-primitives-tooltip.d.ts +395 -0
- package/{visually-hidden/index.d.ts → types/radix-ng-primitives-visually-hidden.d.ts} +19 -19
- package/alert-dialog/index.d.ts +0 -57
- package/checkbox/index.d.ts +0 -164
- package/collapsible/index.d.ts +0 -85
- package/context-menu/index.d.ts +0 -129
- package/dialog/index.d.ts +0 -205
- package/dropdown-menu/README.md +0 -1
- package/dropdown-menu/index.d.ts +0 -171
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +0 -583
- package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-hover-card.mjs +0 -1246
- package/fesm2022/radix-ng-primitives-hover-card.mjs.map +0 -1
- package/fesm2022/radix-ng-primitives-tooltip2.mjs +0 -740
- package/fesm2022/radix-ng-primitives-tooltip2.mjs.map +0 -1
- package/hover-card/README.md +0 -3
- package/hover-card/index.d.ts +0 -472
- package/menu/index.d.ts +0 -139
- package/menubar/index.d.ts +0 -56
- package/navigation-menu/index.d.ts +0 -405
- package/number-field/index.d.ts +0 -203
- package/popover/index.d.ts +0 -403
- package/portal/index.d.ts +0 -22
- package/presence/index.d.ts +0 -103
- package/progress/index.d.ts +0 -79
- package/select/index.d.ts +0 -214
- package/separator/index.d.ts +0 -63
- package/slider/index.d.ts +0 -263
- package/switch/index.d.ts +0 -105
- package/tabs/index.d.ts +0 -112
- package/toggle/index.d.ts +0 -75
- package/toggle-group/index.d.ts +0 -194
- package/toolbar/index.d.ts +0 -55
- package/tooltip/index.d.ts +0 -433
- package/tooltip2/README.md +0 -3
- package/tooltip2/index.d.ts +0 -325
- /package/{focus-guards/index.d.ts → types/radix-ng-primitives-focus-guards.d.ts} +0 -0
- /package/{index.d.ts → types/radix-ng-primitives.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"radix-ng-primitives-menu.mjs","sources":["../tmp-esm2022/menu/src/menu-content.directive.js","../tmp-esm2022/menu/src/menu-directive.js","../tmp-esm2022/menu/src/menu-group.directive.js","../tmp-esm2022/menu/src/utils.js","../tmp-esm2022/menu/src/menu-item-checkbox.directive.js","../tmp-esm2022/menu/src/menu-item-radio.directive.js","../tmp-esm2022/menu/src/menu-item-indicator.directive.js","../tmp-esm2022/menu/src/menu-item.directive.js","../tmp-esm2022/menu/src/menu-label.directive.js","../tmp-esm2022/menu/src/menu-radio-group.directive.js","../tmp-esm2022/menu/src/menu-separator.directive.js","../tmp-esm2022/menu/src/menu-trigger.directive.js","../tmp-esm2022/menu/index.js","../tmp-esm2022/menu/radix-ng-primitives-menu.js"],"sourcesContent":["import { CdkMenu } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuContentDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuContentDirective, isStandalone: true, selector: \"[RdxMenuContent]\", host: { attributes: { \"role\": \"menu\" }, properties: { \"attr.aria-orientation\": \"\\\"vertical\\\"\" } }, hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuContentDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuContent]',\n hostDirectives: [CdkMenu],\n host: {\n role: 'menu',\n '[attr.aria-orientation]': '\"vertical\"'\n }\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1jb250ZW50LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS1jb250ZW50LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7O0FBVTFDLE1BQU0sT0FBTyx1QkFBdUI7OEdBQXZCLHVCQUF1QjtrR0FBdkIsdUJBQXVCOzsyRkFBdkIsdUJBQXVCO2tCQVJuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLGNBQWMsRUFBRSxDQUFDLE9BQU8sQ0FBQztvQkFDekIsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxNQUFNO3dCQUNaLHlCQUF5QixFQUFFLFlBQVk7cUJBQzFDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrTWVudSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9tZW51JztcbmltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSZHhNZW51Q29udGVudF0nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrTWVudV0sXG4gICAgaG9zdDoge1xuICAgICAgICByb2xlOiAnbWVudScsXG4gICAgICAgICdbYXR0ci5hcmlhLW9yaWVudGF0aW9uXSc6ICdcInZlcnRpY2FsXCInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhNZW51Q29udGVudERpcmVjdGl2ZSB7fVxuIl19","import { CdkMenu } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuDirective, isStandalone: true, selector: \"[RdxMenuRoot],[RdxMenuSub]\", hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuRoot],[RdxMenuSub]',\n hostDirectives: [CdkMenu]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM1QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNMUMsTUFBTSxPQUFPLGdCQUFnQjs4R0FBaEIsZ0JBQWdCO2tHQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBSjVCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtvQkFDdEMsY0FBYyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka01lbnUgfSBmcm9tICdAYW5ndWxhci9jZGsvbWVudSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbUmR4TWVudVJvb3RdLFtSZHhNZW51U3ViXScsXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtDZGtNZW51XVxufSlcbmV4cG9ydCBjbGFzcyBSZHhNZW51RGlyZWN0aXZlIHt9XG4iXX0=","import { CdkMenuGroup } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuGroupDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuGroupDirective, isStandalone: true, selector: \"[RdxMenuGroup]\", host: { attributes: { \"role\": \"group\" } }, hostDirectives: [{ directive: i1.CdkMenuGroup }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuGroupDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuGroup]',\n hostDirectives: [CdkMenuGroup],\n host: {\n role: 'group'\n }\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFTMUMsTUFBTSxPQUFPLHFCQUFxQjs4R0FBckIscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBUGpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUM5QixJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLE9BQU87cUJBQ2hCO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrTWVudUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JkeE1lbnVHcm91cF0nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrTWVudUdyb3VwXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdncm91cCdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeE1lbnVHcm91cERpcmVjdGl2ZSB7fVxuIl19","export function isIndeterminate(checked) {\n return checked === 'indeterminate';\n}\nexport function getCheckedState(checked) {\n return isIndeterminate(checked) ? 'indeterminate' : checked ? 'checked' : 'unchecked';\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sVUFBVSxlQUFlLENBQUMsT0FBc0I7SUFDbEQsT0FBTyxPQUFPLEtBQUssZUFBZSxDQUFDO0FBQ3ZDLENBQUM7QUFFRCxNQUFNLFVBQVUsZUFBZSxDQUFDLE9BQXFCO0lBQ2pELE9BQU8sZUFBZSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUM7QUFDMUYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB0eXBlIENoZWNrZWRTdGF0ZSA9IGJvb2xlYW4gfCAnaW5kZXRlcm1pbmF0ZSc7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0luZGV0ZXJtaW5hdGUoY2hlY2tlZD86IENoZWNrZWRTdGF0ZSk6IGNoZWNrZWQgaXMgJ2luZGV0ZXJtaW5hdGUnIHtcbiAgICByZXR1cm4gY2hlY2tlZCA9PT0gJ2luZGV0ZXJtaW5hdGUnO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0Q2hlY2tlZFN0YXRlKGNoZWNrZWQ6IENoZWNrZWRTdGF0ZSkge1xuICAgIHJldHVybiBpc0luZGV0ZXJtaW5hdGUoY2hlY2tlZCkgPyAnaW5kZXRlcm1pbmF0ZScgOiBjaGVja2VkID8gJ2NoZWNrZWQnIDogJ3VuY2hlY2tlZCc7XG59XG4iXX0=","import { CdkMenuItemCheckbox } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, effect, inject, input, signal } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { getCheckedState, isIndeterminate } from './utils';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuItemCheckboxDirective {\n constructor() {\n this.cdkMenuItemCheckbox = inject(CdkMenuItemCheckbox, { host: true });\n this.disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n this.checked = input(false, ...(ngDevMode ? [{ debugName: \"checked\" }] : []));\n this.onCheckedChange = outputFromObservable(this.cdkMenuItemCheckbox.triggered);\n this.disabledState = computed(() => this.disabled, ...(ngDevMode ? [{ debugName: \"disabledState\" }] : []));\n this.highlightedState = computed(() => this.isFocused(), ...(ngDevMode ? [{ debugName: \"highlightedState\" }] : []));\n this.isFocused = signal(false, ...(ngDevMode ? [{ debugName: \"isFocused\" }] : []));\n this.isIndeterminate = isIndeterminate;\n this.getCheckedState = getCheckedState;\n effect(() => {\n if (isIndeterminate(this.checked())) {\n this.cdkMenuItemCheckbox.checked = true;\n }\n else {\n this.cdkMenuItemCheckbox.checked = !this.checked();\n }\n this.cdkMenuItemCheckbox.disabled = this.disabled();\n });\n }\n onFocus() {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n onBlur() {\n this.isFocused.set(false);\n }\n onPointerMove(event) {\n if (event.defaultPrevented)\n return;\n if (!(event.pointerType === 'mouse'))\n return;\n if (!this.disabled()) {\n const item = event.currentTarget;\n item?.focus({ preventScroll: true });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemCheckboxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxMenuItemCheckboxDirective, isStandalone: true, selector: \"[RdxMenuItemCheckbox]\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: \"checked\", publicName: \"checked\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCheckedChange: \"onCheckedChange\" }, host: { attributes: { \"role\": \"menuitemcheckbox\" }, listeners: { \"focus\": \"onFocus()\", \"blur\": \"onBlur()\", \"pointermove\": \"onPointerMove($event)\" }, properties: { \"attr.aria-checked\": \"isIndeterminate(checked()) ? \\\"mixed\\\" : checked()\", \"attr.data-state\": \"getCheckedState(checked())\", \"attr.data-highlighted\": \"highlightedState() ? '' : undefined\" } }, hostDirectives: [{ directive: i1.CdkMenuItemCheckbox, outputs: [\"cdkMenuItemTriggered\", \"menuItemTriggered\"] }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemCheckboxDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuItemCheckbox]',\n hostDirectives: [\n {\n directive: CdkMenuItemCheckbox,\n outputs: ['cdkMenuItemTriggered: menuItemTriggered']\n }\n ],\n host: {\n role: 'menuitemcheckbox',\n '[attr.aria-checked]': 'isIndeterminate(checked()) ? \"mixed\" : checked()',\n '[attr.data-state]': 'getCheckedState(checked())',\n '[attr.data-highlighted]': \"highlightedState() ? '' : undefined\",\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWNoZWNrYm94LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS1pdGVtLWNoZWNrYm94LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUM7OztBQXFCM0QsTUFBTSxPQUFPLDRCQUE0QjtJQWVyQztRQWRpQix3QkFBbUIsR0FBRyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUUxRSxhQUFRLEdBQUcsS0FBSyxDQUF3QixLQUFLLDRDQUFJLFNBQVMsRUFBRSxnQkFBZ0IsT0FBN0IsRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsR0FBQyxDQUFDO1FBRWhGLFlBQU8sR0FBRyxLQUFLLENBQTRCLEtBQUssbURBQUMsQ0FBQztRQUVsRCxvQkFBZSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVqRSxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSx5REFBQyxDQUFDO1FBRTlDLHFCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLDREQUFDLENBQUM7UUFFdEQsY0FBUyxHQUFHLE1BQU0sQ0FBQyxLQUFLLHFEQUFDLENBQUM7UUFtQ3hCLG9CQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ2xDLG9CQUFlLEdBQUcsZUFBZSxDQUFDO1FBakNqRCxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1IsSUFBSSxlQUFlLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsQ0FBQztnQkFDbEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7WUFDNUMsQ0FBQztpQkFBTSxDQUFDO2dCQUNKLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdkQsQ0FBQztZQUVELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELE9BQU87UUFDSCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsQ0FBQztJQUNMLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFtQjtRQUM3QixJQUFJLEtBQUssQ0FBQyxnQkFBZ0I7WUFBRSxPQUFPO1FBRW5DLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO1lBQUUsT0FBTztRQUU3QyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUM7WUFDbkIsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLGFBQWEsQ0FBQztZQUNoQyxJQUFvQixFQUFFLEtBQUssQ0FBQyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQzFELENBQUM7SUFDTCxDQUFDOzhHQTlDUSw0QkFBNEI7a0dBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFuQnhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsY0FBYyxFQUFFO3dCQUNaOzRCQUNJLFNBQVMsRUFBRSxtQkFBbUI7NEJBQzlCLE9BQU8sRUFBRSxDQUFDLHlDQUF5QyxDQUFDO3lCQUN2RDtxQkFDSjtvQkFDRCxJQUFJLEVBQUU7d0JBQ0YsSUFBSSxFQUFFLGtCQUFrQjt3QkFDeEIscUJBQXFCLEVBQUUsa0RBQWtEO3dCQUN6RSxtQkFBbUIsRUFBRSw0QkFBNEI7d0JBQ2pELHlCQUF5QixFQUFFLHFDQUFxQzt3QkFFaEUsU0FBUyxFQUFFLFdBQVc7d0JBQ3RCLFFBQVEsRUFBRSxVQUFVO3dCQUNwQixlQUFlLEVBQUUsdUJBQXVCO3FCQUMzQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDZGtNZW51SXRlbUNoZWNrYm94IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgY29tcHV0ZWQsIERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZ2V0Q2hlY2tlZFN0YXRlLCBpc0luZGV0ZXJtaW5hdGUgfSBmcm9tICcuL3V0aWxzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbUmR4TWVudUl0ZW1DaGVja2JveF0nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogQ2RrTWVudUl0ZW1DaGVja2JveCxcbiAgICAgICAgICAgIG91dHB1dHM6IFsnY2RrTWVudUl0ZW1UcmlnZ2VyZWQ6IG1lbnVJdGVtVHJpZ2dlcmVkJ11cbiAgICAgICAgfVxuICAgIF0sXG4gICAgaG9zdDoge1xuICAgICAgICByb2xlOiAnbWVudWl0ZW1jaGVja2JveCcsXG4gICAgICAgICdbYXR0ci5hcmlhLWNoZWNrZWRdJzogJ2lzSW5kZXRlcm1pbmF0ZShjaGVja2VkKCkpID8gXCJtaXhlZFwiIDogY2hlY2tlZCgpJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogJ2dldENoZWNrZWRTdGF0ZShjaGVja2VkKCkpJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtaGlnaGxpZ2h0ZWRdJzogXCJoaWdobGlnaHRlZFN0YXRlKCkgPyAnJyA6IHVuZGVmaW5lZFwiLFxuXG4gICAgICAgICcoZm9jdXMpJzogJ29uRm9jdXMoKScsXG4gICAgICAgICcoYmx1ciknOiAnb25CbHVyKCknLFxuICAgICAgICAnKHBvaW50ZXJtb3ZlKSc6ICdvblBvaW50ZXJNb3ZlKCRldmVudCknXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhNZW51SXRlbUNoZWNrYm94RGlyZWN0aXZlIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNka01lbnVJdGVtQ2hlY2tib3ggPSBpbmplY3QoQ2RrTWVudUl0ZW1DaGVja2JveCwgeyBob3N0OiB0cnVlIH0pO1xuXG4gICAgcmVhZG9ubHkgZGlzYWJsZWQgPSBpbnB1dDxib29sZWFuLCBCb29sZWFuSW5wdXQ+KGZhbHNlLCB7IHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSB9KTtcblxuICAgIHJlYWRvbmx5IGNoZWNrZWQgPSBpbnB1dDxib29sZWFuIHwgJ2luZGV0ZXJtaW5hdGUnPihmYWxzZSk7XG5cbiAgICByZWFkb25seSBvbkNoZWNrZWRDaGFuZ2UgPSBvdXRwdXRGcm9tT2JzZXJ2YWJsZSh0aGlzLmNka01lbnVJdGVtQ2hlY2tib3gudHJpZ2dlcmVkKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkaXNhYmxlZFN0YXRlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5kaXNhYmxlZCk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGlnaGxpZ2h0ZWRTdGF0ZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaXNGb2N1c2VkKCkpO1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBpc0ZvY3VzZWQgPSBzaWduYWwoZmFsc2UpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICBpZiAoaXNJbmRldGVybWluYXRlKHRoaXMuY2hlY2tlZCgpKSkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2RrTWVudUl0ZW1DaGVja2JveC5jaGVja2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jZGtNZW51SXRlbUNoZWNrYm94LmNoZWNrZWQgPSAhdGhpcy5jaGVja2VkKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuY2RrTWVudUl0ZW1DaGVja2JveC5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuaXNGb2N1c2VkLnNldCh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQuc2V0KGZhbHNlKTtcbiAgICB9XG5cbiAgICBvblBvaW50ZXJNb3ZlKGV2ZW50OiBQb2ludGVyRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHJldHVybjtcblxuICAgICAgICBpZiAoIShldmVudC5wb2ludGVyVHlwZSA9PT0gJ21vdXNlJykpIHJldHVybjtcblxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgY29uc3QgaXRlbSA9IGV2ZW50LmN1cnJlbnRUYXJnZXQ7XG4gICAgICAgICAgICAoaXRlbSBhcyBIVE1MRWxlbWVudCk/LmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc0luZGV0ZXJtaW5hdGUgPSBpc0luZGV0ZXJtaW5hdGU7XG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGdldENoZWNrZWRTdGF0ZSA9IGdldENoZWNrZWRTdGF0ZTtcbn1cbiJdfQ==","import { CdkMenuItemRadio } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, effect, inject, input, signal } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport { getCheckedState } from './utils';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuItemRadioDirective {\n constructor() {\n this.cdkMenuItemRadio = inject(CdkMenuItemRadio, { host: true });\n this.disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n this.checked = input(false, ...(ngDevMode ? [{ debugName: \"checked\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n this.onValueChange = outputFromObservable(this.cdkMenuItemRadio.triggered);\n this.disabledState = computed(() => this.disabled(), ...(ngDevMode ? [{ debugName: \"disabledState\" }] : []));\n this.highlightedState = computed(() => this.isFocused(), ...(ngDevMode ? [{ debugName: \"highlightedState\" }] : []));\n this.isFocused = signal(false, ...(ngDevMode ? [{ debugName: \"isFocused\" }] : []));\n this.getCheckedState = getCheckedState;\n effect(() => {\n this.cdkMenuItemRadio.checked = this.checked();\n this.cdkMenuItemRadio.disabled = this.disabled();\n });\n }\n onFocus() {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n onBlur() {\n this.isFocused.set(false);\n }\n onPointerMove(event) {\n if (event.defaultPrevented)\n return;\n if (!(event.pointerType === 'mouse'))\n return;\n if (!this.disabled()) {\n const item = event.currentTarget;\n item?.focus({ preventScroll: true });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemRadioDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxMenuItemRadioDirective, isStandalone: true, selector: \"[RdxMenuItemRadio]\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null }, checked: { classPropertyName: \"checked\", publicName: \"checked\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onValueChange: \"onValueChange\" }, host: { attributes: { \"role\": \"menuitemradio\" }, listeners: { \"focus\": \"onFocus()\", \"blur\": \"onBlur()\", \"pointermove\": \"onPointerMove($event)\" }, properties: { \"attr.aria-checked\": \"checked()\", \"attr.data-state\": \"getCheckedState(checked())\", \"attr.data-highlighted\": \"highlightedState() ? '' : undefined\" } }, hostDirectives: [{ directive: i1.CdkMenuItemRadio, outputs: [\"cdkMenuItemTriggered\", \"menuItemTriggered\"] }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemRadioDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuItemRadio]',\n hostDirectives: [\n {\n directive: CdkMenuItemRadio,\n outputs: ['cdkMenuItemTriggered: menuItemTriggered']\n }\n ],\n host: {\n role: 'menuitemradio',\n '[attr.aria-checked]': 'checked()',\n '[attr.data-state]': 'getCheckedState(checked())',\n '[attr.data-highlighted]': \"highlightedState() ? '' : undefined\",\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLXJhZGlvLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS1pdGVtLXJhZGlvLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBcUIxQyxNQUFNLE9BQU8seUJBQXlCO0lBZWxDO1FBZGlCLHFCQUFnQixHQUFHLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRXBFLGFBQVEsR0FBRyxLQUFLLENBQXdCLEtBQUssNENBQUksU0FBUyxFQUFFLGdCQUFnQixPQUE3QixFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRSxHQUFDLENBQUM7UUFFaEYsWUFBTyxHQUFHLEtBQUssQ0FBd0IsS0FBSywyQ0FBSSxTQUFTLEVBQUUsZ0JBQWdCLE9BQTdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEdBQUMsQ0FBQztRQUUvRSxrQkFBYSxHQUFHLG9CQUFvQixDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUU1RCxrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLHlEQUFDLENBQUM7UUFFaEQscUJBQWdCLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsNERBQUMsQ0FBQztRQUV0RCxjQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUsscURBQUMsQ0FBQztRQThCeEIsb0JBQWUsR0FBRyxlQUFlLENBQUM7UUEzQmpELE1BQU0sQ0FBQyxHQUFHLEVBQUU7WUFDUixJQUFJLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUMvQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNyRCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxPQUFPO1FBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzdCLENBQUM7SUFDTCxDQUFDO0lBRUQsTUFBTTtRQUNGLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxhQUFhLENBQUMsS0FBbUI7UUFDN0IsSUFBSSxLQUFLLENBQUMsZ0JBQWdCO1lBQUUsT0FBTztRQUVuQyxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxLQUFLLE9BQU8sQ0FBQztZQUFFLE9BQU87UUFFN0MsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDO1lBQ25CLE1BQU0sSUFBSSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7WUFDaEMsSUFBb0IsRUFBRSxLQUFLLENBQUMsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMxRCxDQUFDO0lBQ0wsQ0FBQzs4R0F6Q1EseUJBQXlCO2tHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBbkJyQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLGNBQWMsRUFBRTt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsZ0JBQWdCOzRCQUMzQixPQUFPLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQzt5QkFDdkQ7cUJBQ0o7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxlQUFlO3dCQUNyQixxQkFBcUIsRUFBRSxXQUFXO3dCQUNsQyxtQkFBbUIsRUFBRSw0QkFBNEI7d0JBQ2pELHlCQUF5QixFQUFFLHFDQUFxQzt3QkFFaEUsU0FBUyxFQUFFLFdBQVc7d0JBQ3RCLFFBQVEsRUFBRSxVQUFVO3dCQUNwQixlQUFlLEVBQUUsdUJBQXVCO3FCQUMzQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5pbXBvcnQgeyBDZGtNZW51SXRlbVJhZGlvIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgY29tcHV0ZWQsIERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgZ2V0Q2hlY2tlZFN0YXRlIH0gZnJvbSAnLi91dGlscyc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JkeE1lbnVJdGVtUmFkaW9dJyxcbiAgICBob3N0RGlyZWN0aXZlczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBkaXJlY3RpdmU6IENka01lbnVJdGVtUmFkaW8sXG4gICAgICAgICAgICBvdXRwdXRzOiBbJ2Nka01lbnVJdGVtVHJpZ2dlcmVkOiBtZW51SXRlbVRyaWdnZXJlZCddXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ21lbnVpdGVtcmFkaW8nLFxuICAgICAgICAnW2F0dHIuYXJpYS1jaGVja2VkXSc6ICdjaGVja2VkKCknLFxuICAgICAgICAnW2F0dHIuZGF0YS1zdGF0ZV0nOiAnZ2V0Q2hlY2tlZFN0YXRlKGNoZWNrZWQoKSknLFxuICAgICAgICAnW2F0dHIuZGF0YS1oaWdobGlnaHRlZF0nOiBcImhpZ2hsaWdodGVkU3RhdGUoKSA/ICcnIDogdW5kZWZpbmVkXCIsXG5cbiAgICAgICAgJyhmb2N1cyknOiAnb25Gb2N1cygpJyxcbiAgICAgICAgJyhibHVyKSc6ICdvbkJsdXIoKScsXG4gICAgICAgICcocG9pbnRlcm1vdmUpJzogJ29uUG9pbnRlck1vdmUoJGV2ZW50KSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeE1lbnVJdGVtUmFkaW9EaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RrTWVudUl0ZW1SYWRpbyA9IGluamVjdChDZGtNZW51SXRlbVJhZGlvLCB7IGhvc3Q6IHRydWUgfSk7XG5cbiAgICByZWFkb25seSBkaXNhYmxlZCA9IGlucHV0PGJvb2xlYW4sIEJvb2xlYW5JbnB1dD4oZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuXG4gICAgcmVhZG9ubHkgY2hlY2tlZCA9IGlucHV0PGJvb2xlYW4sIEJvb2xlYW5JbnB1dD4oZmFsc2UsIHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pO1xuXG4gICAgcmVhZG9ubHkgb25WYWx1ZUNoYW5nZSA9IG91dHB1dEZyb21PYnNlcnZhYmxlKHRoaXMuY2RrTWVudUl0ZW1SYWRpby50cmlnZ2VyZWQpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGRpc2FibGVkU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmRpc2FibGVkKCkpO1xuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGhpZ2hsaWdodGVkU3RhdGUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmlzRm9jdXNlZCgpKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNGb2N1c2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jZGtNZW51SXRlbVJhZGlvLmNoZWNrZWQgPSB0aGlzLmNoZWNrZWQoKTtcbiAgICAgICAgICAgIHRoaXMuY2RrTWVudUl0ZW1SYWRpby5kaXNhYmxlZCA9IHRoaXMuZGlzYWJsZWQoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Gb2N1cygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuaXNGb2N1c2VkLnNldCh0cnVlKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uQmx1cigpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pc0ZvY3VzZWQuc2V0KGZhbHNlKTtcbiAgICB9XG5cbiAgICBvblBvaW50ZXJNb3ZlKGV2ZW50OiBQb2ludGVyRXZlbnQpIHtcbiAgICAgICAgaWYgKGV2ZW50LmRlZmF1bHRQcmV2ZW50ZWQpIHJldHVybjtcblxuICAgICAgICBpZiAoIShldmVudC5wb2ludGVyVHlwZSA9PT0gJ21vdXNlJykpIHJldHVybjtcblxuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgY29uc3QgaXRlbSA9IGV2ZW50LmN1cnJlbnRUYXJnZXQ7XG4gICAgICAgICAgICAoaXRlbSBhcyBIVE1MRWxlbWVudCk/LmZvY3VzKHsgcHJldmVudFNjcm9sbDogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByb3RlY3RlZCByZWFkb25seSBnZXRDaGVja2VkU3RhdGUgPSBnZXRDaGVja2VkU3RhdGU7XG59XG4iXX0=","import { Directive, inject } from '@angular/core';\nimport { RdxMenuItemCheckboxDirective } from './menu-item-checkbox.directive';\nimport { RdxMenuItemRadioDirective } from './menu-item-radio.directive';\nimport { getCheckedState, isIndeterminate } from './utils';\nimport * as i0 from \"@angular/core\";\nexport class RdxMenuItemIndicatorDirective {\n constructor() {\n this.menuItemRadio = inject(RdxMenuItemRadioDirective, { host: true, optional: true });\n this.menuCheckboxItem = inject(RdxMenuItemCheckboxDirective, { host: true, optional: true });\n this.getCheckedState = getCheckedState;\n }\n get isChecked() {\n if (this.menuItemRadio) {\n return this.menuItemRadio.checked();\n }\n if (this.menuCheckboxItem) {\n return isIndeterminate(this.menuCheckboxItem.checked()) || this.menuCheckboxItem.checked() === true;\n }\n return false;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuItemIndicatorDirective, isStandalone: true, selector: \"[RdxMenuItemIndicator]\", host: { properties: { \"attr.data-state\": \"getCheckedState(isChecked)\", \"style.display\": \"isChecked ? \\\"\\\" : \\\"none\\\"\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemIndicatorDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuItemIndicator]',\n host: {\n '[attr.data-state]': 'getCheckedState(isChecked)',\n '[style.display]': 'isChecked ? \"\" : \"none\"'\n }\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWluZGljYXRvci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtaXRlbS1pbmRpY2F0b3IuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xELE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3hFLE9BQU8sRUFBRSxlQUFlLEVBQUUsZUFBZSxFQUFFLE1BQU0sU0FBUyxDQUFDOztBQVUzRCxNQUFNLE9BQU8sNkJBQTZCO0lBUjFDO1FBU3FCLGtCQUFhLEdBQUcsTUFBTSxDQUFDLHlCQUF5QixFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUVsRixxQkFBZ0IsR0FBRyxNQUFNLENBQUMsNEJBQTRCLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBWXRGLG9CQUFlLEdBQUcsZUFBZSxDQUFDO0tBQ3hEO0lBWEcsSUFBSSxTQUFTO1FBQ1QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDckIsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3hDLENBQUM7UUFDRCxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQ3hCLE9BQU8sZUFBZSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsS0FBSyxJQUFJLENBQUM7UUFDeEcsQ0FBQztRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7OEdBYlEsNkJBQTZCO2tHQUE3Qiw2QkFBNkI7OzJGQUE3Qiw2QkFBNkI7a0JBUnpDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdCQUF3QjtvQkFDbEMsSUFBSSxFQUFFO3dCQUNGLG1CQUFtQixFQUFFLDRCQUE0Qjt3QkFFakQsaUJBQWlCLEVBQUUseUJBQXlCO3FCQUMvQztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHhNZW51SXRlbUNoZWNrYm94RGlyZWN0aXZlIH0gZnJvbSAnLi9tZW51LWl0ZW0tY2hlY2tib3guZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVJdGVtUmFkaW9EaXJlY3RpdmUgfSBmcm9tICcuL21lbnUtaXRlbS1yYWRpby5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgZ2V0Q2hlY2tlZFN0YXRlLCBpc0luZGV0ZXJtaW5hdGUgfSBmcm9tICcuL3V0aWxzJztcblxuQERpcmVjdGl2ZSh7XG4gICAgc2VsZWN0b3I6ICdbUmR4TWVudUl0ZW1JbmRpY2F0b3JdJyxcbiAgICBob3N0OiB7XG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdnZXRDaGVja2VkU3RhdGUoaXNDaGVja2VkKScsXG5cbiAgICAgICAgJ1tzdHlsZS5kaXNwbGF5XSc6ICdpc0NoZWNrZWQgPyBcIlwiIDogXCJub25lXCInXG4gICAgfVxufSlcbmV4cG9ydCBjbGFzcyBSZHhNZW51SXRlbUluZGljYXRvckRpcmVjdGl2ZSB7XG4gICAgcHJpdmF0ZSByZWFkb25seSBtZW51SXRlbVJhZGlvID0gaW5qZWN0KFJkeE1lbnVJdGVtUmFkaW9EaXJlY3RpdmUsIHsgaG9zdDogdHJ1ZSwgb3B0aW9uYWw6IHRydWUgfSk7XG5cbiAgICBwcml2YXRlIHJlYWRvbmx5IG1lbnVDaGVja2JveEl0ZW0gPSBpbmplY3QoUmR4TWVudUl0ZW1DaGVja2JveERpcmVjdGl2ZSwgeyBob3N0OiB0cnVlLCBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAgIGdldCBpc0NoZWNrZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIGlmICh0aGlzLm1lbnVJdGVtUmFkaW8pIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLm1lbnVJdGVtUmFkaW8uY2hlY2tlZCgpO1xuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLm1lbnVDaGVja2JveEl0ZW0pIHtcbiAgICAgICAgICAgIHJldHVybiBpc0luZGV0ZXJtaW5hdGUodGhpcy5tZW51Q2hlY2tib3hJdGVtLmNoZWNrZWQoKSkgfHwgdGhpcy5tZW51Q2hlY2tib3hJdGVtLmNoZWNrZWQoKSA9PT0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIHJlYWRvbmx5IGdldENoZWNrZWRTdGF0ZSA9IGdldENoZWNrZWRTdGF0ZTtcbn1cbiJdfQ==","import { CdkMenuItem } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, effect, inject, input, signal } from '@angular/core';\nimport { outputFromObservable } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuItemDirective {\n constructor() {\n this.cdkMenuItem = inject(CdkMenuItem, { host: true });\n this.disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\", transform: booleanAttribute }] : [{ transform: booleanAttribute }]));\n this.onSelect = outputFromObservable(this.cdkMenuItem.triggered);\n this.isFocused = signal(false, ...(ngDevMode ? [{ debugName: \"isFocused\" }] : []));\n this.disabledState = computed(() => this.disabled(), ...(ngDevMode ? [{ debugName: \"disabledState\" }] : []));\n this.isOpenState = signal(false, ...(ngDevMode ? [{ debugName: \"isOpenState\" }] : []));\n this.highlightedState = computed(() => this.isFocused(), ...(ngDevMode ? [{ debugName: \"highlightedState\" }] : []));\n effect(() => {\n this.cdkMenuItem.disabled = this.disabled();\n this.isOpenState.set(this.cdkMenuItem.isMenuOpen());\n });\n }\n onFocus() {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n onBlur() {\n this.isFocused.set(false);\n }\n onPointerMove(event) {\n if (event.defaultPrevented)\n return;\n if (!(event.pointerType === 'mouse'))\n return;\n if (!this.disabled()) {\n const item = event.currentTarget;\n item?.focus({ preventScroll: true });\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxMenuItemDirective, isStandalone: true, selector: \"[RdxMenuItem]\", inputs: { disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSelect: \"onSelect\" }, host: { attributes: { \"role\": \"menuitem\", \"tabindex\": \"-1\" }, listeners: { \"focus\": \"onFocus()\", \"blur\": \"onBlur()\", \"pointermove\": \"onPointerMove($event)\" }, properties: { \"attr.data-orientation\": \"'horizontal'\", \"attr.data-state\": \"isOpenState()\", \"attr.aria-disabled\": \"disabledState() ? '' : undefined\", \"attr.data-disabled\": \"disabledState() ? '' : undefined\", \"attr.data-highlighted\": \"highlightedState() ? '' : undefined\" } }, hostDirectives: [{ directive: i1.CdkMenuItem, outputs: [\"cdkMenuItemTriggered\", \"menuItemTriggered\"] }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuItemDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuItem]',\n hostDirectives: [\n {\n directive: CdkMenuItem,\n outputs: ['cdkMenuItemTriggered: menuItemTriggered']\n }\n ],\n host: {\n role: 'menuitem',\n tabindex: '-1',\n '[attr.data-orientation]': \"'horizontal'\",\n '[attr.data-state]': 'isOpenState()',\n '[attr.aria-disabled]': \"disabledState() ? '' : undefined\",\n '[attr.data-disabled]': \"disabledState() ? '' : undefined\",\n '[attr.data-highlighted]': \"highlightedState() ? '' : undefined\",\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS1pdGVtLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JHLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7QUF3QmxFLE1BQU0sT0FBTyxvQkFBb0I7SUFlN0I7UUFkaUIsZ0JBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFMUQsYUFBUSxHQUFHLEtBQUssQ0FBd0IsS0FBSyw0Q0FBSSxTQUFTLEVBQUUsZ0JBQWdCLE9BQTdCLEVBQUUsU0FBUyxFQUFFLGdCQUFnQixFQUFFLEdBQUMsQ0FBQztRQUVoRixhQUFRLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVwRCxjQUFTLEdBQUcsTUFBTSxDQUFDLEtBQUsscURBQUMsQ0FBQztRQUV4QixrQkFBYSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLHlEQUFDLENBQUM7UUFFaEQsZ0JBQVcsR0FBRyxNQUFNLENBQUMsS0FBSyx1REFBQyxDQUFDO1FBRTVCLHFCQUFnQixHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLDREQUFDLENBQUM7UUFHbkUsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNSLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUM1QyxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDeEQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsT0FBTztRQUNILElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRUQsYUFBYSxDQUFDLEtBQW1CO1FBQzdCLElBQUksS0FBSyxDQUFDLGdCQUFnQjtZQUFFLE9BQU87UUFFbkMsSUFBSSxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsS0FBSyxPQUFPLENBQUM7WUFBRSxPQUFPO1FBRTdDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQztZQUNuQixNQUFNLElBQUksR0FBRyxLQUFLLENBQUMsYUFBYSxDQUFDO1lBQ2hDLElBQW9CLEVBQUUsS0FBSyxDQUFDLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFDMUQsQ0FBQztJQUNMLENBQUM7OEdBekNRLG9CQUFvQjtrR0FBcEIsb0JBQW9COzsyRkFBcEIsb0JBQW9CO2tCQXRCaEMsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsZUFBZTtvQkFDekIsY0FBYyxFQUFFO3dCQUNaOzRCQUNJLFNBQVMsRUFBRSxXQUFXOzRCQUN0QixPQUFPLEVBQUUsQ0FBQyx5Q0FBeUMsQ0FBQzt5QkFDdkQ7cUJBQ0o7b0JBQ0QsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxVQUFVO3dCQUNoQixRQUFRLEVBQUUsSUFBSTt3QkFDZCx5QkFBeUIsRUFBRSxjQUFjO3dCQUN6QyxtQkFBbUIsRUFBRSxlQUFlO3dCQUNwQyxzQkFBc0IsRUFBRSxrQ0FBa0M7d0JBQzFELHNCQUFzQixFQUFFLGtDQUFrQzt3QkFDMUQseUJBQXlCLEVBQUUscUNBQXFDO3dCQUVoRSxTQUFTLEVBQUUsV0FBVzt3QkFDdEIsUUFBUSxFQUFFLFVBQVU7d0JBQ3BCLGVBQWUsRUFBRSx1QkFBdUI7cUJBQzNDO2lCQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IENka01lbnVJdGVtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHsgYm9vbGVhbkF0dHJpYnV0ZSwgY29tcHV0ZWQsIERpcmVjdGl2ZSwgZWZmZWN0LCBpbmplY3QsIGlucHV0LCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IG91dHB1dEZyb21PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSZHhNZW51SXRlbV0nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICAgIGRpcmVjdGl2ZTogQ2RrTWVudUl0ZW0sXG4gICAgICAgICAgICBvdXRwdXRzOiBbJ2Nka01lbnVJdGVtVHJpZ2dlcmVkOiBtZW51SXRlbVRyaWdnZXJlZCddXG4gICAgICAgIH1cbiAgICBdLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgcm9sZTogJ21lbnVpdGVtJyxcbiAgICAgICAgdGFiaW5kZXg6ICctMScsXG4gICAgICAgICdbYXR0ci5kYXRhLW9yaWVudGF0aW9uXSc6IFwiJ2hvcml6b250YWwnXCIsXG4gICAgICAgICdbYXR0ci5kYXRhLXN0YXRlXSc6ICdpc09wZW5TdGF0ZSgpJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtZGlzYWJsZWRdJzogXCJkaXNhYmxlZFN0YXRlKCkgPyAnJyA6IHVuZGVmaW5lZFwiLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiBcImRpc2FibGVkU3RhdGUoKSA/ICcnIDogdW5kZWZpbmVkXCIsXG4gICAgICAgICdbYXR0ci5kYXRhLWhpZ2hsaWdodGVkXSc6IFwiaGlnaGxpZ2h0ZWRTdGF0ZSgpID8gJycgOiB1bmRlZmluZWRcIixcblxuICAgICAgICAnKGZvY3VzKSc6ICdvbkZvY3VzKCknLFxuICAgICAgICAnKGJsdXIpJzogJ29uQmx1cigpJyxcbiAgICAgICAgJyhwb2ludGVybW92ZSknOiAnb25Qb2ludGVyTW92ZSgkZXZlbnQpJ1xuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4TWVudUl0ZW1EaXJlY3RpdmUge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2RrTWVudUl0ZW0gPSBpbmplY3QoQ2RrTWVudUl0ZW0sIHsgaG9zdDogdHJ1ZSB9KTtcblxuICAgIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0PihmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cbiAgICByZWFkb25seSBvblNlbGVjdCA9IG91dHB1dEZyb21PYnNlcnZhYmxlKHRoaXMuY2RrTWVudUl0ZW0udHJpZ2dlcmVkKTtcblxuICAgIHByaXZhdGUgcmVhZG9ubHkgaXNGb2N1c2VkID0gc2lnbmFsKGZhbHNlKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBkaXNhYmxlZFN0YXRlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5kaXNhYmxlZCgpKTtcblxuICAgIHByb3RlY3RlZCByZWFkb25seSBpc09wZW5TdGF0ZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgaGlnaGxpZ2h0ZWRTdGF0ZSA9IGNvbXB1dGVkKCgpID0+IHRoaXMuaXNGb2N1c2VkKCkpO1xuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNka01lbnVJdGVtLmRpc2FibGVkID0gdGhpcy5kaXNhYmxlZCgpO1xuICAgICAgICAgICAgdGhpcy5pc09wZW5TdGF0ZS5zZXQodGhpcy5jZGtNZW51SXRlbS5pc01lbnVPcGVuKCkpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBvbkZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuZGlzYWJsZWQoKSkge1xuICAgICAgICAgICAgdGhpcy5pc0ZvY3VzZWQuc2V0KHRydWUpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgb25CbHVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzRm9jdXNlZC5zZXQoZmFsc2UpO1xuICAgIH1cblxuICAgIG9uUG9pbnRlck1vdmUoZXZlbnQ6IFBvaW50ZXJFdmVudCkge1xuICAgICAgICBpZiAoZXZlbnQuZGVmYXVsdFByZXZlbnRlZCkgcmV0dXJuO1xuXG4gICAgICAgIGlmICghKGV2ZW50LnBvaW50ZXJUeXBlID09PSAnbW91c2UnKSkgcmV0dXJuO1xuXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCgpKSB7XG4gICAgICAgICAgICBjb25zdCBpdGVtID0gZXZlbnQuY3VycmVudFRhcmdldDtcbiAgICAgICAgICAgIChpdGVtIGFzIEhUTUxFbGVtZW50KT8uZm9jdXMoeyBwcmV2ZW50U2Nyb2xsOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19","import { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class RdxMenuLabelDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuLabelDirective, isStandalone: true, selector: \"[RdxMenuLabel]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuLabelDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuLabel]'\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1sYWJlbC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtbGFiZWwuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzFDLE1BQU0sT0FBTyxxQkFBcUI7OEdBQXJCLHFCQUFxQjtrR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQUhqQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7aUJBQzdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JkeE1lbnVMYWJlbF0nXG59KVxuZXhwb3J0IGNsYXNzIFJkeE1lbnVMYWJlbERpcmVjdGl2ZSB7fVxuIl19","import { CdkMenuGroup } from '@angular/cdk/menu';\nimport { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuRadioGroupDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuRadioGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuRadioGroupDirective, isStandalone: true, selector: \"[RdxMenuRadioGroup]\", hostDirectives: [{ directive: i1.CdkMenuGroup }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuRadioGroupDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuRadioGroup]',\n hostDirectives: [CdkMenuGroup]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1yYWRpby1ncm91cC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvc3JjL21lbnUtcmFkaW8tZ3JvdXAuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7QUFNMUMsTUFBTSxPQUFPLDBCQUEwQjs4R0FBMUIsMEJBQTBCO2tHQUExQiwwQkFBMEI7OzJGQUExQiwwQkFBMEI7a0JBSnRDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHFCQUFxQjtvQkFDL0IsY0FBYyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUNqQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka01lbnVHcm91cCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9tZW51JztcbmltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSZHhNZW51UmFkaW9Hcm91cF0nLFxuICAgIGhvc3REaXJlY3RpdmVzOiBbQ2RrTWVudUdyb3VwXVxufSlcbmV4cG9ydCBjbGFzcyBSZHhNZW51UmFkaW9Hcm91cERpcmVjdGl2ZSB7fVxuIl19","import { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class RdxMenuSeparatorDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuSeparatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.3.3\", type: RdxMenuSeparatorDirective, isStandalone: true, selector: \"[RdxMenuSeparator]\", host: { attributes: { \"role\": \"separator\" }, properties: { \"attr.aria-orientation\": \"'horizontal'\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuSeparatorDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuSeparator]',\n host: {\n role: 'separator',\n '[attr.aria-orientation]': \"'horizontal'\"\n }\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1zZXBhcmF0b3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9tZW51L3NyYy9tZW51LXNlcGFyYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFTMUMsTUFBTSxPQUFPLHlCQUF5Qjs4R0FBekIseUJBQXlCO2tHQUF6Qix5QkFBeUI7OzJGQUF6Qix5QkFBeUI7a0JBUHJDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLG9CQUFvQjtvQkFDOUIsSUFBSSxFQUFFO3dCQUNGLElBQUksRUFBRSxXQUFXO3dCQUNqQix5QkFBeUIsRUFBRSxjQUFjO3FCQUM1QztpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICBzZWxlY3RvcjogJ1tSZHhNZW51U2VwYXJhdG9yXScsXG4gICAgaG9zdDoge1xuICAgICAgICByb2xlOiAnc2VwYXJhdG9yJyxcbiAgICAgICAgJ1thdHRyLmFyaWEtb3JpZW50YXRpb25dJzogXCInaG9yaXpvbnRhbCdcIlxuICAgIH1cbn0pXG5leHBvcnQgY2xhc3MgUmR4TWVudVNlcGFyYXRvckRpcmVjdGl2ZSB7fVxuIl19","import { CdkMenuTrigger } from '@angular/cdk/menu';\nimport { booleanAttribute, computed, Directive, effect, inject, input, numberAttribute, SimpleChange, untracked } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/cdk/menu\";\nexport class RdxMenuTriggerDirective {\n computePositions() {\n if (this.align() || this.sideOffset() || this.alignOffset() || this.side()) {\n this.enablePositions = true;\n }\n const side = this.side() || 'bottom';\n const align = this.align() || 'center';\n const sideOffset = this.sideOffset() || 0;\n const alignOffset = this.alignOffset() || 0;\n let originX = 'center';\n let originY = 'center';\n let overlayX = 'center';\n let overlayY = 'center';\n let offsetX = 0;\n let offsetY = 0;\n switch (side) {\n case 'top':\n originY = 'top';\n overlayY = 'bottom';\n offsetY = -sideOffset;\n break;\n case 'bottom':\n originY = 'bottom';\n overlayY = 'top';\n offsetY = sideOffset;\n break;\n case 'left':\n originX = 'start';\n overlayX = 'end';\n offsetX = -sideOffset;\n break;\n case 'right':\n originX = 'end';\n overlayX = 'start';\n offsetX = sideOffset;\n break;\n }\n switch (align) {\n case 'start':\n if (side === 'top' || side === 'bottom') {\n originX = 'start';\n overlayX = 'start';\n offsetX = alignOffset;\n }\n else {\n originY = 'top';\n overlayY = 'top';\n offsetY = alignOffset;\n }\n break;\n case 'end':\n if (side === 'top' || side === 'bottom') {\n originX = 'end';\n overlayX = 'end';\n offsetX = -alignOffset;\n }\n else {\n originY = 'bottom';\n overlayY = 'bottom';\n offsetY = -alignOffset;\n }\n break;\n case 'center':\n default:\n if (side === 'top' || side === 'bottom') {\n originX = 'center';\n overlayX = 'center';\n }\n else {\n originY = 'center';\n overlayY = 'center';\n }\n break;\n }\n return {\n originX,\n originY,\n overlayX,\n overlayY,\n offsetX,\n offsetY\n };\n }\n constructor() {\n this.cdkTrigger = inject(CdkMenuTrigger, { host: true });\n this.menuTriggerFor = input.required(...(ngDevMode ? [{ debugName: \"menuTriggerFor\" }] : []));\n /**\n * @description The preferred side of the trigger to render against when open. Will be reversed when collisions occur and avoidCollisions is enabled.\n */\n this.side = input(...(ngDevMode ? [undefined, { debugName: \"side\" }] : []));\n this.align = input(...(ngDevMode ? [undefined, { debugName: \"align\" }] : []));\n /**\n * @description The distance in pixels from the trigger.\n */\n this.sideOffset = input(NaN, ...(ngDevMode ? [{ debugName: \"sideOffset\", transform: numberAttribute }] : [{\n transform: numberAttribute\n }]));\n /**\n * @description An offset in pixels from the \"start\" or \"end\" alignment options.\n */\n this.alignOffset = input(NaN, ...(ngDevMode ? [{ debugName: \"alignOffset\", transform: numberAttribute }] : [{\n transform: numberAttribute\n }]));\n this.disabled = input(false, ...(ngDevMode ? [{ debugName: \"disabled\", transform: booleanAttribute }] : [{\n transform: booleanAttribute\n }]));\n this.enablePositions = false;\n // TODO\n this.positions = computed(() => this.computePositions(), ...(ngDevMode ? [{ debugName: \"positions\" }] : []));\n this.onMenuPositionEffect();\n }\n /** @ignore */\n onPointerDown($event) {\n // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)\n // but not when the control key is pressed (avoiding MacOS right click)\n if (!this.disabled() && $event.button === 0 && !$event.ctrlKey) {\n /* empty */\n if (!this.cdkTrigger.isOpen()) {\n // prevent trigger focusing when opening\n // this allows the content to be given focus without competition\n $event.preventDefault();\n }\n }\n }\n onMenuPositionEffect() {\n effect(() => {\n const positions = this.positions();\n untracked(() => {\n if (this.enablePositions) {\n this.setMenuPositions([positions]);\n }\n });\n });\n }\n setMenuPositions(positions) {\n const prevMenuPosition = this.cdkTrigger.menuPosition;\n this.cdkTrigger.menuPosition = positions;\n this.fireNgOnChanges('menuPosition', this.cdkTrigger.menuPosition, prevMenuPosition);\n }\n fireNgOnChanges(input, currentValue, previousValue, firstChange = false) {\n this.cdkTrigger.ngOnChanges({\n [input]: new SimpleChange(previousValue, currentValue, firstChange)\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"17.1.0\", version: \"20.3.3\", type: RdxMenuTriggerDirective, isStandalone: true, selector: \"[RdxMenuTrigger]\", inputs: { menuTriggerFor: { classPropertyName: \"menuTriggerFor\", publicName: \"menuTriggerFor\", isSignal: true, isRequired: true, transformFunction: null }, side: { classPropertyName: \"side\", publicName: \"side\", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: \"align\", publicName: \"align\", isSignal: true, isRequired: false, transformFunction: null }, sideOffset: { classPropertyName: \"sideOffset\", publicName: \"sideOffset\", isSignal: true, isRequired: false, transformFunction: null }, alignOffset: { classPropertyName: \"alignOffset\", publicName: \"alignOffset\", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: \"disabled\", publicName: \"disabled\", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { \"role\": \"menuitem\" }, listeners: { \"pointerdown\": \"onPointerDown($event)\" }, properties: { \"attr.aria-haspopup\": \"'menu'\", \"attr.aria-expanded\": \"cdkTrigger.isOpen()\", \"attr.data-state\": \"cdkTrigger.isOpen() ? 'open': 'closed'\", \"attr.data-disabled\": \"disabled() ? '' : undefined\" } }, hostDirectives: [{ directive: i1.CdkMenuTrigger, inputs: [\"cdkMenuTriggerFor\", \"menuTriggerFor\", \"cdkMenuPosition\", \"menuPosition\"] }], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuTriggerDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[RdxMenuTrigger]',\n hostDirectives: [\n {\n directive: CdkMenuTrigger,\n inputs: ['cdkMenuTriggerFor: menuTriggerFor', 'cdkMenuPosition: menuPosition']\n }\n ],\n host: {\n role: 'menuitem',\n '[attr.aria-haspopup]': \"'menu'\",\n '[attr.aria-expanded]': 'cdkTrigger.isOpen()',\n '[attr.data-state]': \"cdkTrigger.isOpen() ? 'open': 'closed'\",\n '[attr.data-disabled]': \"disabled() ? '' : undefined\",\n '(pointerdown)': 'onPointerDown($event)'\n }\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS10cmlnZ2VyLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3ByaW1pdGl2ZXMvbWVudS9zcmMvbWVudS10cmlnZ2VyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkQsT0FBTyxFQUNILGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsU0FBUyxFQUNULE1BQU0sRUFDTixNQUFNLEVBQ04sS0FBSyxFQUNMLGVBQWUsRUFDZixZQUFZLEVBQ1osU0FBUyxFQUNaLE1BQU0sZUFBZSxDQUFDOzs7QUF1QnZCLE1BQU0sT0FBTyx1QkFBdUI7SUFtQ3hCLGdCQUFnQjtRQUNwQixJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ3pFLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLENBQUM7UUFFRCxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksUUFBUSxDQUFDO1FBQ3JDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxRQUFRLENBQUM7UUFDdkMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztRQUMxQyxNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRTVDLElBQUksT0FBTyxHQUErQixRQUFRLENBQUM7UUFDbkQsSUFBSSxPQUFPLEdBQWdDLFFBQVEsQ0FBQztRQUNwRCxJQUFJLFFBQVEsR0FBK0IsUUFBUSxDQUFDO1FBQ3BELElBQUksUUFBUSxHQUFnQyxRQUFRLENBQUM7UUFDckQsSUFB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RU8sZ0JBQWdCLENBQUMsU0FBeUM7UUFDOUQsTUFBTSxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQztRQUN0RCxJQUFJLENBQUMsVUFBVSxDQUFDLFlBQVksR0FBRyxTQUFTLENBQUM7UUFDekMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxZQUFZLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUN6RixDQUFDO0lBRU8sZUFBZSxDQUNuQixLQUFRLEVBQ1IsWUFBZSxFQUNmLGFBQWdCLEVBQ2hCLFdBQVcsR0FBRyxLQUFLO1FBRW5CLElBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDO1lBQ3hCLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxZQUFZLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxXQUFXLENBQUM7U0FDdEUsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0FyS1EsdUJBQXVCO2tHQUF2Qix1QkFBdUI7OzJGQUF2Qix1QkFBdUI7a0JBbEJuQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLGNBQWMsRUFBRTt3QkFDWjs0QkFDSSxTQUFTLEVBQUUsY0FBYzs0QkFDekIsTUFBTSxFQUFFLENBQUMsbUNBQW1DLEVBQUUsK0JBQStCLENBQUM7eUJBQ2pGO3FCQUNKO29CQUNELElBQUksRUFBRTt3QkFDRixJQUFJLEVBQUUsVUFBVTt3QkFDaEIsc0JBQXNCLEVBQUUsUUFBUTt3QkFDaEMsc0JBQXNCLEVBQUUscUJBQXFCO3dCQUM3QyxtQkFBbUIsRUFBRSx3Q0FBd0M7d0JBQzdELHNCQUFzQixFQUFFLDZCQUE2Qjt3QkFFckQsZUFBZSxFQUFFLHVCQUF1QjtxQkFDM0M7aUJBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCb29sZWFuSW5wdXQsIE51bWJlcklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IENka01lbnVUcmlnZ2VyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL21lbnUnO1xuaW1wb3J0IHtcbiAgICBib29sZWFuQXR0cmlidXRlLFxuICAgIGNvbXB1dGVkLFxuICAgIERpcmVjdGl2ZSxcbiAgICBlZmZlY3QsXG4gICAgaW5qZWN0LFxuICAgIGlucHV0LFxuICAgIG51bWJlckF0dHJpYnV0ZSxcbiAgICBTaW1wbGVDaGFuZ2UsXG4gICAgdW50cmFja2VkXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgdHlwZSBSZHhNZW51QWxpZ24gPSAnc3RhcnQnIHwgJ2NlbnRlcicgfCAnZW5kJztcbmV4cG9ydCB0eXBlIFJkeE1lbnVTaWRlID0gJ3RvcCcgfCAncmlnaHQnIHwgJ2JvdHRvbScgfCAnbGVmdCc7XG5cbkBEaXJlY3RpdmUoe1xuICAgIHNlbGVjdG9yOiAnW1JkeE1lbnVUcmlnZ2VyXScsXG4gICAgaG9zdERpcmVjdGl2ZXM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgZGlyZWN0aXZlOiBDZGtNZW51VHJpZ2dlcixcbiAgICAgICAgICAgIGlucHV0czogWydjZGtNZW51VHJpZ2dlckZvcjogbWVudVRyaWdnZXJGb3InLCAnY2RrTWVudVBvc2l0aW9uOiBtZW51UG9zaXRpb24nXVxuICAgICAgICB9XG4gICAgXSxcbiAgICBob3N0OiB7XG4gICAgICAgIHJvbGU6ICdtZW51aXRlbScsXG4gICAgICAgICdbYXR0ci5hcmlhLWhhc3BvcHVwXSc6IFwiJ21lbnUnXCIsXG4gICAgICAgICdbYXR0ci5hcmlhLWV4cGFuZGVkXSc6ICdjZGtUcmlnZ2VyLmlzT3BlbigpJyxcbiAgICAgICAgJ1thdHRyLmRhdGEtc3RhdGVdJzogXCJjZGtUcmlnZ2VyLmlzT3BlbigpID8gJ29wZW4nOiAnY2xvc2VkJ1wiLFxuICAgICAgICAnW2F0dHIuZGF0YS1kaXNhYmxlZF0nOiBcImRpc2FibGVkKCkgPyAnJyA6IHVuZGVmaW5lZFwiLFxuXG4gICAgICAgICcocG9pbnRlcmRvd24pJzogJ29uUG9pbnRlckRvd24oJGV2ZW50KSdcbiAgICB9XG59KVxuZXhwb3J0IGNsYXNzIFJkeE1lbnVUcmlnZ2VyRGlyZWN0aXZlIHtcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2RrVHJpZ2dlciA9IGluamVjdChDZGtNZW51VHJpZ2dlciwgeyBob3N0OiB0cnVlIH0pO1xuXG4gICAgcmVhZG9ubHkgbWVudVRyaWdnZXJGb3IgPSBpbnB1dC5yZXF1aXJlZCgpO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIFRoZSBwcmVmZXJyZWQgc2lkZSBvZiB0aGUgdHJpZ2dlciB0byByZW5kZXIgYWdhaW5zdCB3aGVuIG9wZW4uIFdpbGwgYmUgcmV2ZXJzZWQgd2hlbiBjb2xsaXNpb25zIG9jY3VyIGFuZCBhdm9pZENvbGxpc2lvbnMgaXMgZW5hYmxlZC5cbiAgICAgKi9cbiAgICByZWFkb25seSBzaWRlID0gaW5wdXQ8UmR4TWVudVNpZGU+KCk7XG5cbiAgICByZWFkb25seSBhbGlnbiA9IGlucHV0PFJkeE1lbnVBbGlnbj4oKTtcblxuICAgIC8qKlxuICAgICAqIEBkZXNjcmlwdGlvbiBUaGUgZGlzdGFuY2UgaW4gcGl4ZWxzIGZyb20gdGhlIHRyaWdnZXIuXG4gICAgICovXG4gICAgcmVhZG9ubHkgc2lkZU9mZnNldCA9IGlucHV0PG51bWJlciwgTnVtYmVySW5wdXQ+KE5hTiwge1xuICAgICAgICB0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZVxuICAgIH0pO1xuXG4gICAgLyoqXG4gICAgICogQGRlc2NyaXB0aW9uIEFuIG9mZnNldCBpbiBwaXhlbHMgZnJvbSB0aGUgXCJzdGFydFwiIG9yIFwiZW5kXCIgYWxpZ25tZW50IG9wdGlvbnMuXG4gICAgICovXG4gICAgcmVhZG9ubHkgYWxpZ25PZmZzZXQgPSBpbnB1dDxudW1iZXIsIE51bWJlcklucHV0PihOYU4sIHtcbiAgICAgICAgdHJhbnNmb3JtOiBudW1iZXJBdHRyaWJ1dGVcbiAgICB9KTtcblxuICAgIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0PihmYWxzZSwge1xuICAgICAgICB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGVcbiAgICB9KTtcblxuICAgIHByaXZhdGUgZW5hYmxlUG9zaXRpb25zID0gZmFsc2U7XG5cbiAgICAvLyBUT0RPXG4gICAgcHJpdmF0ZSByZWFkb25seSBwb3NpdGlvbnMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmNvbXB1dGVQb3NpdGlvbnMoKSk7XG5cbiAgICBwcml2YXRlIGNvbXB1dGVQb3NpdGlvbnMoKSB7XG4gICAgICAgIGlmICh0aGlzLmFsaWduKCkgfHwgdGhpcy5zaWRlT2Zmc2V0KCkgfHwgdGhpcy5hbGlnbk9mZnNldCgpIHx8IHRoaXMuc2lkZSgpKSB7XG4gICAgICAgICAgICB0aGlzLmVuYWJsZVBvc2l0aW9ucyA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzaWRlID0gdGhpcy5zaWRlKCkgfHwgJ2JvdHRvbSc7XG4gICAgICAgIGNvbnN0IGFsaWduID0gdGhpcy5hbGlnbigpIHx8ICdjZW50ZXInO1xuICAgICAgICBjb25zdCBzaWRlT2Zmc2V0ID0gdGhpcy5zaWRlT2Zmc2V0KCkgfHwgMDtcbiAgICAgICAgY29uc3QgYWxpZ25PZmZzZXQgPSB0aGlzLmFsaWduT2Zmc2V0KCkgfHwgMDtcblxuICAgICAgICBsZXQgb3JpZ2luWDogJ3N0YXJ0JyB8ICdjZW50ZXInIHwgJ2VuZCcgPSAnY2VudGVyJztcbiAgICAgICAgbGV0IG9yaWdpblk6ICd0b3AnIHwgJ2NlbnRlcicgfCAnYm90dG9tJyA9ICdjZW50ZXInO1xuICAgICAgICBsZXQgb3ZlcmxheVg6ICdzdGFydCcgfCAnY2VudGVyJyB8ICdlbmQnID0gJ2NlbnRlcic7XG4gICAgICAgIGxldCBvdmVybGF5WTogJ3RvcCcgfCAnY2VudGVyJyB8ICdib3R0b20nID0gJ2NlbnRlcic7XG4gICAgICAgIGxldCBvZmZzZXRYID0gMDtcbiAgICAgICAgbGV0IG9mZnNldFkgPSAwO1xuXG4gICAgICAgIHN3aXRjaCAoc2lkZSkge1xuICAgICAgICAgICAgY2FzZSAndG9wJzpcbiAgICAgICAgICAgICAgICBvcmlnaW5ZID0gJ3RvcCc7XG4gICAgICAgICAgICAgICAgb3ZlcmxheVkgPSAnYm90dG9tJztcbiAgICAgICAgICAgICAgICBvZmZzZXRZID0gLXNpZGVPZmZzZXQ7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICAgICAgICAgIG9yaWdpblkgPSAnYm90dG9tJztcbiAgICAgICAgICAgICAgICBvdmVybGF5WSA9ICd0b3AnO1xuICAgICAgICAgICAgICAgIG9mZnNldFkgPSBzaWRlT2Zmc2V0O1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnbGVmdCc6XG4gICAgICAgICAgICAgICAgb3JpZ2luWCA9ICdzdGFydCc7XG4gICAgICAgICAgICAgICAgb3ZlcmxheVggPSAnZW5kJztcbiAgICAgICAgICAgICAgICBvZmZzZXRYID0gLXNpZGVPZmZzZXQ7XG4gICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlICdyaWdodCc6XG4gICAgICAgICAgICAgICAgb3JpZ2luWCA9ICdlbmQnO1xuICAgICAgICAgICAgICAgIG92ZXJsYXlYID0gJ3N0YXJ0JztcbiAgICAgICAgICAgICAgICBvZmZzZXRYID0gc2lkZU9mZnNldDtcbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIHN3aXRjaCAoYWxpZ24pIHtcbiAgICAgICAgICAgIGNhc2UgJ3N0YXJ0JzpcbiAgICAgICAgICAgICAgICBpZiAoc2lkZSA9PT0gJ3RvcCcgfHwgc2lkZSA9PT0gJ2JvdHRvbScpIHtcbiAgICAgICAgICAgICAgICAgICAgb3JpZ2luWCA9ICdzdGFydCc7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlYID0gJ3N0YXJ0JztcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0WCA9IGFsaWduT2Zmc2V0O1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpblkgPSAndG9wJztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmxheVkgPSAndG9wJztcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0WSA9IGFsaWduT2Zmc2V0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgJ2VuZCc6XG4gICAgICAgICAgICAgICAgaWYgKHNpZGUgPT09ICd0b3AnIHx8IHNpZGUgPT09ICdib3R0b20nKSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpblggPSAnZW5kJztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmxheVggPSAnZW5kJztcbiAgICAgICAgICAgICAgICAgICAgb2Zmc2V0WCA9IC1hbGlnbk9mZnNldDtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5ZID0gJ2JvdHRvbSc7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlZID0gJ2JvdHRvbSc7XG4gICAgICAgICAgICAgICAgICAgIG9mZnNldFkgPSAtYWxpZ25PZmZzZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgY2FzZSAnY2VudGVyJzpcbiAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgaWYgKHNpZGUgPT09ICd0b3AnIHx8IHNpZGUgPT09ICdib3R0b20nKSB7XG4gICAgICAgICAgICAgICAgICAgIG9yaWdpblggPSAnY2VudGVyJztcbiAgICAgICAgICAgICAgICAgICAgb3ZlcmxheVggPSAnY2VudGVyJztcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBvcmlnaW5ZID0gJ2NlbnRlcic7XG4gICAgICAgICAgICAgICAgICAgIG92ZXJsYXlZID0gJ2NlbnRlcic7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIG9yaWdpblgsXG4gICAgICAgICAgICBvcmlnaW5ZLFxuICAgICAgICAgICAgb3ZlcmxheVgsXG4gICAgICAgICAgICBvdmVybGF5WSxcbiAgICAgICAgICAgIG9mZnNldFgsXG4gICAgICAgICAgICBvZmZzZXRZXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHRoaXMub25NZW51UG9zaXRpb25FZmZlY3QoKTtcbiAgICB9XG5cbiAgICAvKiogQGlnbm9yZSAqL1xuICAgIG9uUG9pbnRlckRvd24oJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgICAgIC8vIG9ubHkgY2FsbCBoYW5kbGVyIGlmIGl0J3MgdGhlIGxlZnQgYnV0dG9uIChtb3VzZWRvd24gZ2V0cyB0cmlnZ2VyZWQgYnkgYWxsIG1vdXNlIGJ1dHRvbnMpXG4gICAgICAgIC8vIGJ1dCBub3Qgd2hlbiB0aGUgY29udHJvbCBrZXkgaXMgcHJlc3NlZCAoYXZvaWRpbmcgTWFjT1MgcmlnaHQgY2xpY2spXG4gICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCgpICYmICRldmVudC5idXR0b24gPT09IDAgJiYgISRldmVudC5jdHJsS2V5KSB7XG4gICAgICAgICAgICAvKiBlbXB0eSAqL1xuICAgICAgICAgICAgaWYgKCF0aGlzLmNka1RyaWdnZXIuaXNPcGVuKCkpIHtcbiAgICAgICAgICAgICAgICAvLyBwcmV2ZW50IHRyaWdnZXIgZm9jdXNpbmcgd2hlbiBvcGVuaW5nXG4gICAgICAgICAgICAgICAgLy8gdGhpcyBhbGxvd3MgdGhlIGNvbnRlbnQgdG8gYmUgZ2l2ZW4gZm9jdXMgd2l0aG91dCBjb21wZXRpdGlvblxuICAgICAgICAgICAgICAgICRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvbk1lbnVQb3NpdGlvbkVmZmVjdCgpIHtcbiAgICAgICAgZWZmZWN0KCgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9ucyA9IHRoaXMucG9zaXRpb25zKCk7XG5cbiAgICAgICAgICAgIHVudHJhY2tlZCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuZW5hYmxlUG9zaXRpb25zKSB7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuc2V0TWVudVBvc2l0aW9ucyhbcG9zaXRpb25zXSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgc2V0TWVudVBvc2l0aW9ucyhwb3NpdGlvbnM6IENka01lbnVUcmlnZ2VyWydtZW51UG9zaXRpb24nXSkge1xuICAgICAgICBjb25zdCBwcmV2TWVudVBvc2l0aW9uID0gdGhpcy5jZGtUcmlnZ2VyLm1lbnVQb3NpdGlvbjtcbiAgICAgICAgdGhpcy5jZGtUcmlnZ2VyLm1lbnVQb3NpdGlvbiA9IHBvc2l0aW9ucztcbiAgICAgICAgdGhpcy5maXJlTmdPbkNoYW5nZXMoJ21lbnVQb3NpdGlvbicsIHRoaXMuY2RrVHJpZ2dlci5tZW51UG9zaXRpb24sIHByZXZNZW51UG9zaXRpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgZmlyZU5nT25DaGFuZ2VzPEsgZXh0ZW5kcyBrZXlvZiBDZGtNZW51VHJpZ2dlciwgViBleHRlbmRzIENka01lbnVUcmlnZ2VyW0tdPihcbiAgICAgICAgaW5wdXQ6IEssXG4gICAgICAgIGN1cnJlbnRWYWx1ZTogVixcbiAgICAgICAgcHJldmlvdXNWYWx1ZTogVixcbiAgICAgICAgZmlyc3RDaGFuZ2UgPSBmYWxzZVxuICAgICkge1xuICAgICAgICB0aGlzLmNka1RyaWdnZXIubmdPbkNoYW5nZXMoe1xuICAgICAgICAgICAgW2lucHV0XTogbmV3IFNpbXBsZUNoYW5nZShwcmV2aW91c1ZhbHVlLCBjdXJyZW50VmFsdWUsIGZpcnN0Q2hhbmdlKVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iXX0=","import { NgModule } from '@angular/core';\nimport { RdxMenuContentDirective } from './src/menu-content.directive';\nimport { RdxMenuDirective } from './src/menu-directive';\nimport { RdxMenuGroupDirective } from './src/menu-group.directive';\nimport { RdxMenuItemCheckboxDirective } from './src/menu-item-checkbox.directive';\nimport { RdxMenuItemIndicatorDirective } from './src/menu-item-indicator.directive';\nimport { RdxMenuItemRadioDirective } from './src/menu-item-radio.directive';\nimport { RdxMenuItemDirective } from './src/menu-item.directive';\nimport { RdxMenuLabelDirective } from './src/menu-label.directive';\nimport { RdxMenuRadioGroupDirective } from './src/menu-radio-group.directive';\nimport { RdxMenuSeparatorDirective } from './src/menu-separator.directive';\nimport { RdxMenuTriggerDirective } from './src/menu-trigger.directive';\nimport * as i0 from \"@angular/core\";\nexport * from './src/menu-content.directive';\nexport * from './src/menu-directive';\nexport * from './src/menu-group.directive';\nexport * from './src/menu-item-checkbox.directive';\nexport * from './src/menu-item-indicator.directive';\nexport * from './src/menu-item-radio.directive';\nexport * from './src/menu-item.directive';\nexport * from './src/menu-label.directive';\nexport * from './src/menu-radio-group.directive';\nexport * from './src/menu-separator.directive';\nexport * from './src/menu-trigger.directive';\nconst menuImports = [\n RdxMenuDirective,\n RdxMenuItemCheckboxDirective,\n RdxMenuItemRadioDirective,\n RdxMenuItemIndicatorDirective,\n RdxMenuTriggerDirective,\n RdxMenuGroupDirective,\n RdxMenuRadioGroupDirective,\n RdxMenuItemDirective,\n RdxMenuSeparatorDirective,\n RdxMenuContentDirective,\n RdxMenuLabelDirective\n];\nexport class RdxMenuModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuModule, imports: [RdxMenuDirective,\n RdxMenuItemCheckboxDirective,\n RdxMenuItemRadioDirective,\n RdxMenuItemIndicatorDirective,\n RdxMenuTriggerDirective,\n RdxMenuGroupDirective,\n RdxMenuRadioGroupDirective,\n RdxMenuItemDirective,\n RdxMenuSeparatorDirective,\n RdxMenuContentDirective,\n RdxMenuLabelDirective], exports: [RdxMenuDirective,\n RdxMenuItemCheckboxDirective,\n RdxMenuItemRadioDirective,\n RdxMenuItemIndicatorDirective,\n RdxMenuTriggerDirective,\n RdxMenuGroupDirective,\n RdxMenuRadioGroupDirective,\n RdxMenuItemDirective,\n RdxMenuSeparatorDirective,\n RdxMenuContentDirective,\n RdxMenuLabelDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuModule }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.3.3\", ngImport: i0, type: RdxMenuModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...menuImports],\n exports: [...menuImports]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wcmltaXRpdmVzL21lbnUvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNsRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUNwRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUM1RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNqRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFdkUsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyxvQ0FBb0MsQ0FBQztBQUNuRCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLDRCQUE0QixDQUFDO0FBQzNDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLDhCQUE4QixDQUFDO0FBSTdDLE1BQU0sV0FBVyxHQUFHO0lBQ2hCLGdCQUFnQjtJQUNoQiw0QkFBNEI7SUFDNUIseUJBQXlCO0lBQ3pCLDZCQUE2QjtJQUM3Qix1QkFBdUI7SUFDdkIscUJBQXFCO0lBQ3JCLDBCQUEwQjtJQUMxQixvQkFBb0I7SUFDcEIseUJBQXlCO0lBQ3pCLHVCQUF1QjtJQUN2QixxQkFBcUI7Q0FDeEIsQ0FBQztBQU1GLE1BQU0sT0FBTyxhQUFhOzhHQUFiLGFBQWE7K0dBQWIsYUFBYSxZQWpCdEIsZ0JBQWdCO1lBQ2hCLDRCQUE0QjtZQUM1Qix5QkFBeUI7WUFDekIsNkJBQTZCO1lBQzdCLHVCQUF1QjtZQUN2QixxQkFBcUI7WUFDckIsMEJBQTBCO1lBQzFCLG9CQUFvQjtZQUNwQix5QkFBeUI7WUFDekIsdUJBQXVCO1lBQ3ZCLHFCQUFxQixhQVZyQixnQkFBZ0I7WUFDaEIsNEJBQTRCO1lBQzVCLHlCQUF5QjtZQUN6Qiw2QkFBNkI7WUFDN0IsdUJBQXVCO1lBQ3ZCLHFCQUFxQjtZQUNyQiwwQkFBMEI7WUFDMUIsb0JBQW9CO1lBQ3BCLHlCQUF5QjtZQUN6Qix1QkFBdUI7WUFDdkIscUJBQXFCOytHQU9aLGFBQWE7OzJGQUFiLGFBQWE7a0JBSnpCLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsR0FBRyxXQUFXLENBQUM7b0JBQ3pCLE9BQU8sRUFBRSxDQUFDLEdBQUcsV0FBVyxDQUFDO2lCQUM1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZHhNZW51Q29udGVudERpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtY29udGVudC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudURpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVHcm91cERpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtZ3JvdXAuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVJdGVtQ2hlY2tib3hEaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9tZW51LWl0ZW0tY2hlY2tib3guZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVJdGVtSW5kaWNhdG9yRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvbWVudS1pdGVtLWluZGljYXRvci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudUl0ZW1SYWRpb0RpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtaXRlbS1yYWRpby5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudUl0ZW1EaXJlY3RpdmUgfSBmcm9tICcuL3NyYy9tZW51LWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVMYWJlbERpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtbGFiZWwuZGlyZWN0aXZlJztcbmltcG9ydCB7IFJkeE1lbnVSYWRpb0dyb3VwRGlyZWN0aXZlIH0gZnJvbSAnLi9zcmMvbWVudS1yYWRpby1ncm91cC5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgUmR4TWVudVNlcGFyYXRvckRpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtc2VwYXJhdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBSZHhNZW51VHJpZ2dlckRpcmVjdGl2ZSB9IGZyb20gJy4vc3JjL21lbnUtdHJpZ2dlci5kaXJlY3RpdmUnO1xuXG5leHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LWNvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtaXRlbS1jaGVja2JveC5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbWVudS1pdGVtLWluZGljYXRvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9zcmMvbWVudS1pdGVtLXJhZGlvLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LWl0ZW0uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtbGFiZWwuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtcmFkaW8tZ3JvdXAuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vc3JjL21lbnUtc2VwYXJhdG9yLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL3NyYy9tZW51LXRyaWdnZXIuZGlyZWN0aXZlJztcblxuZXhwb3J0IHR5cGUgeyBSZHhNZW51QWxpZ24sIFJkeE1lbnVTaWRlIH0gZnJvbSAnLi9zcmMvbWVudS10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5cbmNvbnN0IG1lbnVJbXBvcnRzID0gW1xuICAgIFJkeE1lbnVEaXJlY3RpdmUsXG4gICAgUmR4TWVudUl0ZW1DaGVja2JveERpcmVjdGl2ZSxcbiAgICBSZHhNZW51SXRlbVJhZGlvRGlyZWN0aXZlLFxuICAgIFJkeE1lbnVJdGVtSW5kaWNhdG9yRGlyZWN0aXZlLFxuICAgIFJkeE1lbnVUcmlnZ2VyRGlyZWN0aXZlLFxuICAgIFJkeE1lbnVHcm91cERpcmVjdGl2ZSxcbiAgICBSZHhNZW51UmFkaW9Hcm91cERpcmVjdGl2ZSxcbiAgICBSZHhNZW51SXRlbURpcmVjdGl2ZSxcbiAgICBSZHhNZW51U2VwYXJhdG9yRGlyZWN0aXZlLFxuICAgIFJkeE1lbnVDb250ZW50RGlyZWN0aXZlLFxuICAgIFJkeE1lbnVMYWJlbERpcmVjdGl2ZVxuXTtcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbLi4ubWVudUltcG9ydHNdLFxuICAgIGV4cG9ydHM6IFsuLi5tZW51SW1wb3J0c11cbn0pXG5leHBvcnQgY2xhc3MgUmR4TWVudU1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmFkaXgtbmctcHJpbWl0aXZlcy1tZW51LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcGFja2FnZXMvcHJpbWl0aXZlcy9tZW51L3JhZGl4LW5nLXByaW1pdGl2ZXMtbWVudS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"radix-ng-primitives-menu.mjs","sources":["../../../packages/primitives/menu/src/menu-root.ts","../../../packages/primitives/menu/src/menu-arrow.ts","../../../packages/primitives/menu/src/menu-backdrop.ts","../../../packages/primitives/menu/src/menu-utils.ts","../../../packages/primitives/menu/src/menu-checkbox-item.ts","../../../packages/primitives/menu/src/menu-checkbox-item-indicator.ts","../../../packages/primitives/menu/src/menu-group.ts","../../../packages/primitives/menu/src/menu-group-label.ts","../../../packages/primitives/menu/src/menu-item.ts","../../../packages/primitives/menu/src/menu-link-item.ts","../../../packages/primitives/menu/src/menu-popup.ts","../../../packages/primitives/menu/src/menu-portal.ts","../../../packages/primitives/menu/src/menu-positioner.ts","../../../packages/primitives/menu/src/menu-radio-group.ts","../../../packages/primitives/menu/src/menu-radio-item.ts","../../../packages/primitives/menu/src/menu-radio-item-indicator.ts","../../../packages/primitives/menu/src/menu-separator.ts","../../../packages/primitives/menu/src/menu-sub-trigger.ts","../../../packages/primitives/menu/src/menu-trigger.ts","../../../packages/primitives/menu/src/menu-viewport.ts","../../../packages/primitives/menu/index.ts","../../../packages/primitives/menu/radix-ng-primitives-menu.ts"],"sourcesContent":["import {\n booleanAttribute,\n computed,\n Directive,\n effect,\n inject,\n input,\n model,\n output,\n signal,\n Signal,\n untracked\n} from '@angular/core';\nimport { BooleanInput, createContext, useTransitionStatus } from '@radix-ng/primitives/core';\nimport { RdxPopper } from '@radix-ng/primitives/popper';\n\nexport type RdxMenuTransitionStatus = 'starting' | 'ending' | undefined;\n/**\n * How focus moves into the popup when it opens.\n * - `'first'` / `'last'` — focus and highlight the first / last item (keyboard opening).\n * - `'popup'` — focus the popup container without highlighting any item (pointer opening, e.g. a\n * context menu opened by right click).\n * - `false` — leave focus on the trigger.\n */\nexport type RdxMenuAutoFocus = 'first' | 'last' | 'popup' | false;\nexport type RdxMenuAutoFocusInput = boolean | RdxMenuAutoFocus;\nexport type RdxMenuOrientation = 'horizontal' | 'vertical';\n\nexport interface RdxMenuRootContext {\n isOpen: Signal<boolean>;\n disabled: Signal<boolean>;\n modal: Signal<boolean>;\n loopFocus: Signal<boolean>;\n highlightItemOnHover: Signal<boolean>;\n orientation: Signal<RdxMenuOrientation>;\n closeParentOnEsc: Signal<boolean>;\n /** Whether the popup should focus its first item when it opens. */\n autoFocus: Signal<RdxMenuAutoFocus>;\n isSubmenu: Signal<boolean>;\n hasTriggerInteractionHandler: Signal<boolean>;\n trigger: Signal<HTMLElement | undefined>;\n transitionStatus: Signal<RdxMenuTransitionStatus>;\n close: () => void;\n toggle: () => void;\n show: (autoFocus?: RdxMenuAutoFocusInput) => void;\n /** Open the menu without moving focus into the popup (used for menubar hover-switching). */\n showWithoutAutoFocus: () => void;\n registerTrigger: (el: HTMLElement) => () => void;\n registerTransitionElement: (element: HTMLElement) => () => void;\n registerPopupArrowNavigationHandler: (handler: (offset: 1 | -1) => boolean) => () => void;\n registerTriggerInteractionHandler: (handler: RdxMenuTriggerInteractionHandler) => () => void;\n markAsSubmenu: () => void;\n closeParent: () => void;\n handlePopupArrowNavigation: (offset: 1 | -1) => boolean;\n handleTriggerInteraction: (interaction: RdxMenuTriggerInteraction) => boolean;\n}\n\nexport type RdxMenuTriggerInteraction =\n | { type: 'click' }\n | { type: 'pointerenter'; event: PointerEvent }\n | { type: 'arrowdown'; event: Event }\n | { type: 'arrowup'; event: Event }\n | { type: 'arrowleft'; event: Event }\n | { type: 'arrowright'; event: Event }\n | { type: 'home'; event: Event }\n | { type: 'end'; event: Event }\n | { type: 'escape'; event: Event };\n\nexport type RdxMenuTriggerInteractionHandler = (interaction: RdxMenuTriggerInteraction) => boolean;\n\nexport const [injectRdxMenuRootContext, provideRdxMenuRootContext] =\n createContext<RdxMenuRootContext>('RdxMenuRootContext');\n\nfunction buildContext(instance: RdxMenuRoot): RdxMenuRootContext {\n return {\n isOpen: instance.open,\n disabled: instance.disabled,\n modal: instance.modal,\n loopFocus: instance.loopFocus,\n highlightItemOnHover: instance.highlightItemOnHover,\n orientation: instance.orientation,\n closeParentOnEsc: instance.closeParentOnEsc,\n autoFocus: instance.autoFocus.asReadonly(),\n isSubmenu: instance.isSubmenu.asReadonly(),\n hasTriggerInteractionHandler: instance.hasTriggerInteractionHandler.asReadonly(),\n trigger: instance.trigger.asReadonly(),\n transitionStatus: instance.transitionStatus,\n close: () => instance.close(),\n toggle: () => instance.toggle(),\n show: (autoFocus) => instance.show(autoFocus),\n showWithoutAutoFocus: () => instance.show(false),\n registerTrigger: (el) => instance.registerTrigger(el),\n registerTransitionElement: (el) => instance.registerTransitionElement(el),\n registerPopupArrowNavigationHandler: (handler) => instance.registerPopupArrowNavigationHandler(handler),\n registerTriggerInteractionHandler: (handler) => instance.registerTriggerInteractionHandler(handler),\n markAsSubmenu: () => instance.markAsSubmenu(),\n closeParent: () => instance.closeParent(),\n handlePopupArrowNavigation: (offset) => instance.handlePopupArrowNavigation(offset),\n handleTriggerInteraction: (interaction) => instance.handleTriggerInteraction(interaction)\n };\n}\n\nconst contextFactory = () => buildContext(inject(RdxMenuRoot));\n\n/**\n * Groups all parts of a menu.\n */\n@Directive({\n selector: '[rdxMenuRoot],[rdxMenuSubmenuRoot]',\n exportAs: 'rdxMenuRoot',\n providers: [provideRdxMenuRootContext(contextFactory)],\n hostDirectives: [RdxPopper]\n})\nexport class RdxMenuRoot {\n private readonly popper = inject(RdxPopper);\n\n /** Shared open/close transition state machine (completes on the real animationend). */\n private readonly transition = useTransitionStatus((open) => this.onOpenChangeComplete.emit(open));\n\n private registeredTrigger: HTMLElement | undefined;\n private popupArrowNavigationHandler: ((offset: 1 | -1) => boolean) | undefined;\n private triggerInteractionHandler: RdxMenuTriggerInteractionHandler | undefined;\n private hasAppliedDefaultOpen = false;\n\n /** Whether the menu is currently open. */\n readonly open = model(false);\n\n /** Whether the menu is initially open. */\n readonly defaultOpen = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether interactions with the menu are disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether the menu should block outside interactions. */\n readonly modal = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether keyboard navigation wraps at list boundaries. */\n readonly loopFocus = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n /** Whether moving the pointer over items should highlight them. */\n readonly highlightItemOnHover = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n /** The menu orientation. */\n readonly orientation = input<RdxMenuOrientation>('vertical');\n\n /** Whether pressing Escape inside a submenu closes the whole menu chain. */\n readonly closeParentOnEsc = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Emits when the open state changes. */\n readonly onOpenChange = output<boolean>();\n\n /** Emits when the open/close CSS transition or animation finishes. */\n readonly onOpenChangeComplete = output<boolean>();\n\n readonly trigger = signal<HTMLElement | undefined>(undefined);\n readonly transitionStatus = this.transition.status;\n /** Whether the popup grabs focus when it opens. Set false for menubar hover-switching. */\n readonly autoFocus = signal<RdxMenuAutoFocus>('first');\n readonly isSubmenu = signal(false);\n readonly hasTriggerInteractionHandler = signal(false);\n readonly state = computed(() => (this.open() ? 'open' : 'closed'));\n\n constructor() {\n effect(() => {\n const defaultOpen = this.defaultOpen();\n\n if (!this.hasAppliedDefaultOpen && defaultOpen) {\n this.hasAppliedDefaultOpen = true;\n this.open.set(defaultOpen);\n }\n });\n\n effect(() => this.popper.anchorOverride.set(this.trigger()));\n\n let previousOpen = this.open();\n effect(() => {\n const open = this.open();\n if (open !== previousOpen) {\n previousOpen = open;\n untracked(() => this.transition.start(open));\n }\n });\n }\n\n show(autoFocus: RdxMenuAutoFocusInput = 'first') {\n if (this.disabled()) {\n return;\n }\n\n this.autoFocus.set(autoFocus === true ? 'first' : autoFocus);\n if (!this.open()) {\n this.open.set(true);\n this.onOpenChange.emit(true);\n }\n }\n\n close() {\n if (this.open()) {\n this.open.set(false);\n this.onOpenChange.emit(false);\n }\n }\n\n toggle() {\n if (this.disabled()) {\n return;\n }\n\n if (this.open()) {\n this.close();\n } else {\n this.show();\n }\n }\n\n registerTrigger(el: HTMLElement): () => void {\n this.registeredTrigger = el;\n this.trigger.set(el);\n return () => {\n if (this.registeredTrigger === el) {\n this.registeredTrigger = undefined;\n this.trigger.set(undefined);\n }\n };\n }\n\n registerTransitionElement(element: HTMLElement): () => void {\n return this.transition.registerElement(element);\n }\n\n registerPopupArrowNavigationHandler(handler: (offset: 1 | -1) => boolean): () => void {\n this.popupArrowNavigationHandler = handler;\n\n return () => {\n if (this.popupArrowNavigationHandler === handler) {\n this.popupArrowNavigationHandler = undefined;\n }\n };\n }\n\n handlePopupArrowNavigation(offset: 1 | -1): boolean {\n return this.popupArrowNavigationHandler?.(offset) ?? false;\n }\n\n registerTriggerInteractionHandler(handler: RdxMenuTriggerInteractionHandler): () => void {\n this.triggerInteractionHandler = handler;\n this.hasTriggerInteractionHandler.set(true);\n\n return () => {\n if (this.triggerInteractionHandler === handler) {\n this.triggerInteractionHandler = undefined;\n this.hasTriggerInteractionHandler.set(false);\n }\n };\n }\n\n handleTriggerInteraction(interaction: RdxMenuTriggerInteraction): boolean {\n return this.triggerInteractionHandler?.(interaction) ?? false;\n }\n\n markAsSubmenu(): void {\n this.isSubmenu.set(true);\n }\n\n closeParent(): void {\n this.trigger()?.dispatchEvent(new CustomEvent('rdx-menu-close-parent', { bubbles: true }));\n }\n}\n","import { computed, Directive, inject } from '@angular/core';\nimport { RdxPopperArrow, RdxPopperContentWrapper } from '@radix-ng/primitives/popper';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/**\n * An optional visual arrow connecting the popup to its trigger.\n * Place it inside `rdxMenuPopup`. Positioning is handled by the shared Popper Arrow primitive.\n */\n@Directive({\n selector: '[rdxMenuArrow]',\n exportAs: 'rdxMenuArrow',\n hostDirectives: [RdxPopperArrow],\n host: {\n '[attr.data-open]': 'rootContext.isOpen() ? \"\" : undefined',\n '[attr.data-closed]': 'rootContext.isOpen() ? undefined : \"\"',\n '[attr.data-side]': 'side()',\n '[attr.data-align]': 'align()',\n '[attr.data-uncentered]': 'uncentered() ? \"\" : undefined'\n }\n})\nexport class RdxMenuArrow {\n protected readonly rootContext = injectRdxMenuRootContext()!;\n private readonly wrapper = inject(RdxPopperContentWrapper, { optional: true });\n\n protected readonly side = computed(() => this.wrapper?.placedSide());\n protected readonly align = computed(() => this.wrapper?.placedAlign());\n protected readonly uncentered = computed(() => this.wrapper?.arrowUncentered() ?? false);\n}\n","import { Directive } from '@angular/core';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/**\n * An optional overlay rendered behind the menu popup.\n * Style it with `position: fixed; inset: 0` and use `data-open` / `data-closed`\n * for CSS animations.\n */\n@Directive({\n selector: '[rdxMenuBackdrop]',\n exportAs: 'rdxMenuBackdrop',\n host: {\n '[attr.data-open]': 'rootContext.isOpen() ? \"\" : undefined',\n '[attr.data-closed]': 'rootContext.isOpen() ? undefined : \"\"',\n '[attr.data-state]': 'rootContext.isOpen() ? \"open\" : \"closed\"',\n '[attr.data-starting-style]': 'rootContext.transitionStatus() === \"starting\" ? \"\" : undefined',\n '[attr.data-ending-style]': 'rootContext.transitionStatus() === \"ending\" ? \"\" : undefined'\n }\n})\nexport class RdxMenuBackdrop {\n protected readonly rootContext = injectRdxMenuRootContext()!;\n}\n","export type CheckedState = boolean | 'indeterminate';\n\nexport function isIndeterminate(checked?: CheckedState): checked is 'indeterminate' {\n return checked === 'indeterminate';\n}\n\nexport function getCheckedState(checked: CheckedState): 'checked' | 'unchecked' | 'indeterminate' {\n return isIndeterminate(checked) ? 'indeterminate' : checked ? 'checked' : 'unchecked';\n}\n","import {\n booleanAttribute,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n model,\n output,\n signal,\n Signal\n} from '@angular/core';\nimport { BooleanInput, createContext } from '@radix-ng/primitives/core';\nimport { injectRdxMenuRootContext } from './menu-root';\nimport { CheckedState, getCheckedState, isIndeterminate } from './menu-utils';\n\nexport interface RdxMenuCheckboxItemContext {\n checked: Signal<CheckedState>;\n}\n\nexport const [injectRdxMenuCheckboxItemContext, provideRdxMenuCheckboxItemContext] =\n createContext<RdxMenuCheckboxItemContext>('RdxMenuCheckboxItemContext');\n\nconst checkboxItemContextFactory = (): RdxMenuCheckboxItemContext => {\n const instance = inject(RdxMenuCheckboxItem);\n return {\n checked: instance.checked\n };\n};\n\n/**\n * A menu item that can be checked or unchecked.\n */\n@Directive({\n selector: '[rdxMenuCheckboxItem]',\n exportAs: 'rdxMenuCheckboxItem',\n providers: [provideRdxMenuCheckboxItemContext(checkboxItemContextFactory)],\n host: {\n role: 'menuitemcheckbox',\n tabindex: '-1',\n '[attr.aria-checked]': 'isIndeterminate(checked()) ? \"mixed\" : checked()',\n '[attr.data-state]': 'getCheckedState(checked())',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? true : undefined',\n '[attr.data-highlighted]': 'highlighted() ? \"\" : undefined',\n '[attr.data-label]': 'label() ?? undefined',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)',\n '(pointerleave)': 'onPointerLeave($event)',\n '(click)': 'onItemClick()',\n '(keydown.enter)': 'onActivate($event)',\n '(keydown.space)': 'onActivate($event)'\n }\n})\nexport class RdxMenuCheckboxItem {\n private readonly rootContext = injectRdxMenuRootContext(true);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly isFocused = signal(false);\n\n /** Whether this item is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether toggling closes the menu. Defaults to false — checkbox items stay open. */\n readonly closeOnClick = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Explicit typeahead label. When set, overrides textContent for character search. */\n readonly label = input<string | undefined>(undefined);\n\n /** The checked state of the item. */\n readonly checked = model<CheckedState>(false);\n\n /** Emits when the checked state changes. */\n readonly onCheckedChange = output<CheckedState>();\n\n protected readonly highlighted = computed(() => this.isFocused());\n\n // Expose helpers for host bindings\n protected readonly isIndeterminate = isIndeterminate;\n protected readonly getCheckedState = getCheckedState;\n\n onFocus(): void {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n\n onBlur(): void {\n this.isFocused.set(false);\n }\n\n onPointerMove(event: PointerEvent): void {\n if (event.defaultPrevented || event.pointerType !== 'mouse' || this.disabled()) {\n return;\n }\n if (this.rootContext && !this.rootContext.highlightItemOnHover()) {\n return;\n }\n if (document.activeElement !== this.elementRef.nativeElement) {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n }\n }\n\n onPointerLeave(event: PointerEvent): void {\n if (event.pointerType !== 'mouse') {\n return;\n }\n if (document.activeElement === this.elementRef.nativeElement) {\n this.elementRef.nativeElement.closest<HTMLElement>('[rdxMenuPopup]')?.focus({ preventScroll: true });\n }\n }\n\n onItemClick(): void {\n if (this.disabled()) return;\n this.toggleChecked();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n\n protected onActivate(event: Event): void {\n if (this.disabled()) return;\n event.preventDefault();\n this.toggleChecked();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n\n private toggleChecked(): void {\n const next = isIndeterminate(this.checked()) ? true : !this.checked();\n this.checked.set(next);\n this.onCheckedChange.emit(next);\n }\n}\n","import { booleanAttribute, computed, Directive, input } from '@angular/core';\nimport { BooleanInput } from '@radix-ng/primitives/core';\nimport { injectRdxMenuCheckboxItemContext } from './menu-checkbox-item';\nimport { getCheckedState, isIndeterminate } from './menu-utils';\n\n/**\n * Renders when the parent checkbox item is checked or indeterminate.\n * Set `keepMounted` to keep the element in the DOM when unchecked (enables CSS animations).\n */\n@Directive({\n selector: '[rdxMenuCheckboxItemIndicator]',\n exportAs: 'rdxMenuCheckboxItemIndicator',\n host: {\n '[attr.data-state]': 'dataState()',\n '[attr.data-starting-style]': 'isVisible() ? \"\" : undefined',\n '[attr.data-ending-style]': '!isVisible() ? \"\" : undefined',\n '[style.display]': '!keepMounted() && !isVisible() ? \"none\" : null'\n }\n})\nexport class RdxMenuCheckboxItemIndicator {\n private readonly itemContext = injectRdxMenuCheckboxItemContext()!;\n\n /** Keep the indicator in the DOM when unchecked so CSS exit animations can play. */\n readonly keepMounted = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n protected readonly dataState = computed(() => getCheckedState(this.itemContext.checked()));\n protected readonly isVisible = computed(\n () => isIndeterminate(this.itemContext.checked()) || this.itemContext.checked() === true\n );\n}\n","import { Directive } from '@angular/core';\n\n/**\n * Groups related menu items together.\n */\n@Directive({\n selector: '[rdxMenuGroup]',\n exportAs: 'rdxMenuGroup',\n host: {\n role: 'group'\n }\n})\nexport class RdxMenuGroup {}\n","import { Directive } from '@angular/core';\n\n/**\n * A label for a menu group.\n */\n@Directive({\n selector: '[rdxMenuGroupLabel]',\n exportAs: 'rdxMenuGroupLabel'\n})\nexport class RdxMenuGroupLabel {}\n","import { booleanAttribute, computed, Directive, ElementRef, inject, input, output, signal } from '@angular/core';\nimport { BooleanInput } from '@radix-ng/primitives/core';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/**\n * An individual menu item.\n */\n@Directive({\n selector: '[rdxMenuItem]',\n exportAs: 'rdxMenuItem',\n host: {\n role: 'menuitem',\n tabindex: '-1',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? true : undefined',\n '[attr.data-highlighted]': 'highlighted() ? \"\" : undefined',\n '[attr.data-label]': 'label() ?? undefined',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)',\n '(pointerleave)': 'onPointerLeave($event)',\n '(click)': 'onItemClick()',\n '(keydown.enter)': 'onActivate($event)',\n '(keydown.space)': 'onActivate($event)'\n }\n})\nexport class RdxMenuItem {\n private readonly rootContext = injectRdxMenuRootContext(true);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly isFocused = signal(false);\n\n /** Whether this item is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether selecting this item closes the menu. */\n readonly closeOnClick = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n /** Explicit typeahead label. When set, overrides textContent for character search. */\n readonly label = input<string | undefined>(undefined);\n\n /** Emits when the item is selected. */\n readonly onSelect = output<void>();\n\n protected readonly highlighted = computed(() => this.isFocused());\n\n onFocus(): void {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n\n onBlur(): void {\n this.isFocused.set(false);\n }\n\n onPointerMove(event: PointerEvent): void {\n if (event.defaultPrevented || event.pointerType !== 'mouse' || this.disabled()) {\n return;\n }\n if (this.rootContext && !this.rootContext.highlightItemOnHover()) {\n return;\n }\n if (document.activeElement !== this.elementRef.nativeElement) {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n }\n }\n\n onPointerLeave(event: PointerEvent): void {\n if (event.pointerType !== 'mouse') {\n return;\n }\n // Clear highlight when the pointer leaves: move focus back to the popup. A subsequent\n // pointermove on a sibling item re-focuses it, so moving between items still works.\n if (document.activeElement === this.elementRef.nativeElement) {\n this.elementRef.nativeElement.closest<HTMLElement>('[rdxMenuPopup]')?.focus({ preventScroll: true });\n }\n }\n\n onItemClick(): void {\n if (this.disabled()) return;\n this.onSelect.emit();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n\n protected onActivate(event: Event): void {\n if (this.disabled()) return;\n event.preventDefault();\n this.onSelect.emit();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n}\n","import { booleanAttribute, computed, Directive, ElementRef, inject, input, output, signal } from '@angular/core';\nimport { BooleanInput } from '@radix-ng/primitives/core';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/**\n * A menu item that renders as a link.\n */\n@Directive({\n selector: 'a[rdxMenuLinkItem]',\n exportAs: 'rdxMenuLinkItem',\n host: {\n role: 'menuitem',\n tabindex: '-1',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? true : undefined',\n '[attr.data-highlighted]': 'highlighted() ? \"\" : undefined',\n '[attr.data-label]': 'label() ?? undefined',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)',\n '(pointerleave)': 'onPointerLeave($event)',\n '(click)': 'onItemClick($event)',\n '(keydown.enter)': 'onActivate($event)'\n }\n})\nexport class RdxMenuLinkItem {\n private readonly rootContext = injectRdxMenuRootContext(true);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly isFocused = signal(false);\n\n /** Whether this item is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether selecting this item closes the menu. Defaults to false — links navigate by default. */\n readonly closeOnClick = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Explicit typeahead label. When set, overrides textContent for character search. */\n readonly label = input<string | undefined>(undefined);\n\n /** Emits when the item is selected. */\n readonly onSelect = output<void>();\n\n protected readonly highlighted = computed(() => this.isFocused());\n\n onFocus(): void {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n\n onBlur(): void {\n this.isFocused.set(false);\n }\n\n onPointerMove(event: PointerEvent): void {\n if (event.defaultPrevented || event.pointerType !== 'mouse' || this.disabled()) {\n return;\n }\n if (this.rootContext && !this.rootContext.highlightItemOnHover()) {\n return;\n }\n if (document.activeElement !== this.elementRef.nativeElement) {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n }\n }\n\n onPointerLeave(event: PointerEvent): void {\n if (event.pointerType !== 'mouse') {\n return;\n }\n if (document.activeElement === this.elementRef.nativeElement) {\n this.elementRef.nativeElement.closest<HTMLElement>('[rdxMenuPopup]')?.focus({ preventScroll: true });\n }\n }\n\n onItemClick(event: MouseEvent): void {\n if (this.disabled()) {\n event.preventDefault();\n return;\n }\n this.onSelect.emit();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n\n protected onActivate(event: Event): void {\n if (this.disabled()) {\n event.preventDefault();\n return;\n }\n this.onSelect.emit();\n if (this.closeOnClick()) this.rootContext?.close();\n }\n}\n","import { computed, DestroyRef, Directive, effect, ElementRef, inject, signal } from '@angular/core';\nimport { outputFromObservable, outputToObservable } from '@angular/core/rxjs-interop';\nimport {\n provideRdxDismissableLayerConfig,\n RdxDismissableLayer,\n RdxDismissableLayersContextToken\n} from '@radix-ng/primitives/dismissable-layer';\nimport { provideRdxFocusScopeConfig, RdxFocusScope } from '@radix-ng/primitives/focus-scope';\nimport { RdxPopperContent, RdxPopperContentWrapper } from '@radix-ng/primitives/popper';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/** Selector for focusable menu items within the popup. */\nconst ITEM_SELECTOR = [\n '[rdxMenuItem]:not([data-disabled])',\n '[rdxMenuCheckboxItem]:not([data-disabled])',\n '[rdxMenuRadioItem]:not([data-disabled])',\n '[rdxMenuLinkItem]:not([data-disabled])',\n '[rdxMenuSubTrigger]:not([data-disabled])'\n].join(',');\n\nfunction getFocusableItems(popup: HTMLElement): HTMLElement[] {\n // Exclude items that belong to a nested child popup (submenu).\n return Array.from(popup.querySelectorAll<HTMLElement>(ITEM_SELECTOR)).filter(\n (item) => item.closest('[rdxMenuPopup]') === popup\n );\n}\n\n/**\n * A container for the menu contents.\n */\n@Directive({\n selector: '[rdxMenuPopup]',\n exportAs: 'rdxMenuPopup',\n hostDirectives: [RdxPopperContent, RdxDismissableLayer, RdxFocusScope],\n providers: [\n provideRdxDismissableLayerConfig(() => {\n const rootContext = injectRdxMenuRootContext()!;\n return {\n disableOutsidePointerEvents: computed(() => rootContext.modal())\n };\n }),\n provideRdxFocusScopeConfig(() => ({\n trapped: signal(false)\n }))\n ],\n host: {\n role: 'menu',\n tabindex: '-1',\n '[attr.aria-orientation]': 'rootContext.orientation()',\n '[attr.data-closed]': 'rootContext.isOpen() ? undefined : \"\"',\n '[attr.data-open]': 'rootContext.isOpen() ? \"\" : undefined',\n '[attr.data-state]': 'rootContext.isOpen() ? \"open\" : \"closed\"',\n '[attr.data-starting-style]': 'rootContext.transitionStatus() === \"starting\" ? \"\" : undefined',\n '[attr.data-ending-style]': 'rootContext.transitionStatus() === \"ending\" ? \"\" : undefined',\n '[attr.data-align]': 'align()',\n '[attr.data-side]': 'side()',\n '(keydown)': 'handleKeydown($event)',\n '(rdx-menu-close-parent)': 'handleCloseParent($event)'\n }\n})\nexport class RdxMenuPopup {\n protected readonly rootContext = injectRdxMenuRootContext()!;\n private readonly dismissableLayer = inject(RdxDismissableLayer);\n private readonly focusScope = inject(RdxFocusScope);\n private readonly wrapper = inject(RdxPopperContentWrapper, { optional: true });\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly dismissableLayersContext = inject(RdxDismissableLayersContextToken);\n private search = '';\n private searchTimer: ReturnType<typeof setTimeout> | undefined;\n\n protected readonly align = computed(() => this.wrapper?.placedAlign());\n protected readonly side = computed(() => this.wrapper?.placedSide());\n\n /**\n * Event handler called when the escape key is pressed. Can be prevented.\n */\n readonly escapeKeyDown = outputFromObservable(outputToObservable(this.dismissableLayer.escapeKeyDown));\n\n /**\n * Event handler called when a pointerdown event happens outside of the popup. Can be prevented.\n */\n readonly pointerDownOutside = outputFromObservable(outputToObservable(this.dismissableLayer.pointerDownOutside));\n\n /**\n * Event handler called when focus moves outside of the popup. Can be prevented.\n */\n readonly focusOutside = outputFromObservable(outputToObservable(this.dismissableLayer.focusOutside));\n\n /**\n * Event handler called when an interaction happens outside of the popup. Can be prevented.\n */\n readonly interactOutside = outputFromObservable(outputToObservable(this.dismissableLayer.interactOutside));\n\n /**\n * Event handler called before focus moves into the popup. Can be prevented.\n */\n readonly openAutoFocus = outputFromObservable(outputToObservable(this.focusScope.mountAutoFocus));\n\n /**\n * Event handler called before focus returns after the popup is removed. Can be prevented.\n */\n readonly closeAutoFocus = outputFromObservable(outputToObservable(this.focusScope.unmountAutoFocus));\n\n constructor() {\n const unregister = this.rootContext.registerTransitionElement(this.elementRef.nativeElement);\n inject(DestroyRef).onDestroy(() => {\n unregister();\n clearTimeout(this.searchTimer);\n });\n\n effect((onCleanup) => {\n if (!this.rootContext.isSubmenu()) {\n return;\n }\n\n const element = this.elementRef.nativeElement;\n this.dismissableLayersContext.branches.update((branches) => [...branches, element]);\n onCleanup(() => {\n this.dismissableLayersContext.branches.update((branches) =>\n branches.filter((branch) => branch !== element)\n );\n });\n });\n\n this.dismissableLayer.dismiss.subscribe(() => {\n this.rootContext.close();\n });\n\n // Move focus into the popup when the menu opens — unless the opener suppressed it\n // (e.g. menubar hover-switching, where focus stays on the trigger).\n effect(() => {\n const autoFocus = this.rootContext.autoFocus();\n if (this.rootContext.isOpen() && autoFocus) {\n requestAnimationFrame(() => {\n // `'popup'` focuses the container without highlighting an item (pointer opening).\n if (autoFocus === 'popup') {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n return;\n }\n\n const items = getFocusableItems(this.elementRef.nativeElement);\n const item = autoFocus === 'last' ? items[items.length - 1] : items[0];\n item?.focus({ preventScroll: true });\n });\n }\n });\n }\n\n protected handleCloseParent(event: Event): void {\n event.stopPropagation();\n this.rootContext.close();\n\n if (this.rootContext.isSubmenu() && this.rootContext.closeParentOnEsc()) {\n this.rootContext.closeParent();\n }\n }\n\n protected handleKeydown(event: KeyboardEvent): void {\n const el = this.elementRef.nativeElement;\n const items = getFocusableItems(el);\n const current = document.activeElement as HTMLElement;\n const currentIndex = items.indexOf(current);\n\n switch (event.key) {\n case 'ArrowDown': {\n event.preventDefault();\n event.stopPropagation();\n const atEnd = currentIndex >= items.length - 1;\n const next = atEnd\n ? this.rootContext.loopFocus()\n ? items[0]\n : items[items.length - 1]\n : items[currentIndex + 1];\n next?.focus({ preventScroll: true });\n break;\n }\n case 'ArrowUp': {\n event.preventDefault();\n event.stopPropagation();\n const atStart = currentIndex <= 0;\n const prev = atStart\n ? this.rootContext.loopFocus()\n ? items[items.length - 1]\n : items[0]\n : items[currentIndex - 1];\n prev?.focus({ preventScroll: true });\n break;\n }\n case 'Home': {\n event.preventDefault();\n event.stopPropagation();\n items[0]?.focus({ preventScroll: true });\n break;\n }\n case 'End': {\n event.preventDefault();\n event.stopPropagation();\n items[items.length - 1]?.focus({ preventScroll: true });\n break;\n }\n case 'ArrowLeft': {\n const trigger = this.rootContext.trigger();\n if (!trigger?.hasAttribute('rdxMenuSubTrigger')) {\n if (this.rootContext.handlePopupArrowNavigation(-1)) {\n event.preventDefault();\n event.stopPropagation();\n }\n break;\n }\n\n // Close this popup and return focus to the trigger (used by submenus).\n event.preventDefault();\n event.stopPropagation();\n this.rootContext.close();\n trigger.focus({ preventScroll: true });\n break;\n }\n case 'ArrowRight': {\n if (this.rootContext.handlePopupArrowNavigation(1)) {\n event.preventDefault();\n event.stopPropagation();\n }\n break;\n }\n case 'Escape': {\n event.preventDefault();\n event.stopPropagation();\n this.rootContext.close();\n if (this.rootContext.isSubmenu() && this.rootContext.closeParentOnEsc()) {\n this.rootContext.closeParent();\n }\n this.rootContext.trigger()?.focus({ preventScroll: true });\n break;\n }\n case 'Tab': {\n // Close on tab to allow natural tab navigation\n this.rootContext.close();\n break;\n }\n default: {\n // Typeahead\n if (event.key.length === 1 && !event.ctrlKey && !event.metaKey && !event.altKey) {\n event.preventDefault();\n const char = event.key.toLowerCase();\n this.search += char;\n clearTimeout(this.searchTimer);\n this.searchTimer = setTimeout(() => {\n this.search = '';\n this.searchTimer = undefined;\n }, 1000);\n\n const query =\n this.search.length > 1 && [...this.search].every((c) => c === char) ? char : this.search;\n const startIndex = currentIndex >= 0 ? currentIndex + 1 : 0;\n const rotated = [...items.slice(startIndex), ...items.slice(0, startIndex)];\n const match = rotated.find((item) => {\n const text = (item.dataset['label'] ?? item.textContent?.trim() ?? '').toLowerCase();\n return text.startsWith(query);\n });\n match?.focus({ preventScroll: true });\n }\n break;\n }\n }\n }\n}\n","import { Directive, input } from '@angular/core';\nimport { RdxPortal, RdxPortalContainer } from '@radix-ng/primitives/portal';\n\n/**\n * Moves the menu to a different part of the DOM.\n * Applied on ng-template — no host bindings (ng-template is not a real DOM node).\n */\n@Directive({\n selector: '[rdxMenuPortal]',\n exportAs: 'rdxMenuPortal',\n hostDirectives: [\n {\n directive: RdxPortal,\n inputs: ['container']\n }\n ]\n})\nexport class RdxMenuPortal {\n /**\n * Optional container to portal the content into. Defaults to `document.body`.\n */\n readonly container = input<RdxPortalContainer>();\n}\n","import { booleanAttribute, Directive, ElementRef, inject, input, numberAttribute } from '@angular/core';\nimport { outputFromObservable, outputToObservable } from '@angular/core/rxjs-interop';\nimport { BooleanInput, NumberInput } from '@radix-ng/primitives/core';\nimport {\n Align,\n provideRdxPopperContentConfig,\n RdxPopperAnchorElement,\n RdxPopperContentWrapper,\n Side\n} from '@radix-ng/primitives/popper';\nimport { injectRdxMenuRootContext } from './menu-root';\n\n/**\n * Positions the menu against its trigger.\n */\n@Directive({\n selector: '[rdxMenuPositioner]',\n exportAs: 'rdxMenuPositioner',\n providers: [\n provideRdxPopperContentConfig({ arrowPadding: 5, collisionPadding: 5, updatePositionStrategy: 'always' })\n ],\n hostDirectives: [\n {\n directive: RdxPopperContentWrapper,\n inputs: [\n 'anchor',\n 'side',\n 'sideOffset',\n 'align',\n 'alignOffset',\n 'arrowPadding',\n 'avoidCollisions',\n 'collisionBoundary',\n 'collisionPadding',\n 'sticky',\n 'hideWhenDetached',\n 'positionStrategy',\n 'updatePositionStrategy'\n ]\n }\n ],\n host: {\n '[attr.data-open]': 'rootContext.isOpen() ? \"\" : undefined',\n '[attr.data-closed]': 'rootContext.isOpen() ? undefined : \"\"',\n '[attr.data-anchor-hidden]': 'wrapper.anchorHidden() ? \"\" : undefined',\n '[attr.data-align]': 'wrapper.placedAlign()',\n '[attr.data-side]': 'wrapper.placedSide()',\n '[style]': `{\n '--anchor-width': 'var(--radix-popper-anchor-width)',\n '--anchor-height': 'var(--radix-popper-anchor-height)',\n '--available-width': 'var(--radix-popper-available-width)',\n '--available-height': 'var(--radix-popper-available-height)',\n '--positioner-width': 'var(--radix-popper-content-wrapper-width)',\n '--positioner-height': 'var(--radix-popper-content-wrapper-height)',\n '--transform-origin': 'var(--radix-popper-transform-origin)',\n '--radix-menu-content-transform-origin': 'var(--radix-popper-transform-origin)',\n '--radix-menu-content-available-width': 'var(--radix-popper-available-width)',\n '--radix-menu-content-available-height': 'var(--radix-popper-available-height)',\n '--radix-menu-trigger-width': 'var(--radix-popper-anchor-width)',\n '--radix-menu-trigger-height': 'var(--radix-popper-anchor-height)'\n }`\n }\n})\nexport class RdxMenuPositioner {\n protected readonly rootContext = injectRdxMenuRootContext()!;\n protected readonly wrapper = inject(RdxPopperContentWrapper);\n\n /**\n * An element to position the popup against. Defaults to the trigger.\n */\n readonly anchor = input<RdxPopperAnchorElement>();\n\n /**\n * The preferred side of the trigger to render against when open.\n */\n readonly side = input<Side>('bottom');\n\n /**\n * Distance between the trigger and the popup in pixels.\n */\n readonly sideOffset = input<number, NumberInput>(0, { transform: numberAttribute });\n\n /**\n * How to align the popup relative to the specified side.\n */\n readonly align = input<Align>('start');\n\n /**\n * An offset in pixels from the `start` or `end` alignment options.\n */\n readonly alignOffset = input<number, NumberInput>(0, { transform: numberAttribute });\n\n /**\n * Minimum distance to maintain between the arrow and the edges of the popup.\n */\n readonly arrowPadding = input<number, NumberInput>(5, { transform: numberAttribute });\n\n /**\n * Whether to override side and alignment preferences to prevent collisions.\n */\n readonly avoidCollisions = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n /**\n * The element used as the collision boundary.\n */\n readonly collisionBoundary = input<ElementRef<HTMLElement> | ElementRef<HTMLElement>[]>();\n\n /**\n * Distance in pixels from the boundary edges where collision detection should occur.\n */\n readonly collisionPadding = input<number | Partial<Record<Side, number>>>(5);\n\n /**\n * The sticky behavior on the alignment axis.\n */\n readonly sticky = input<'partial' | 'always'>('partial');\n\n /**\n * Whether to hide the popup when the trigger becomes fully occluded.\n */\n readonly hideWhenDetached = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /**\n * The CSS position strategy used by Floating UI.\n */\n readonly positionStrategy = input<'fixed' | 'absolute'>('fixed');\n\n /**\n * Whether to update position on every animation frame.\n */\n readonly updatePositionStrategy = input<'optimized' | 'always'>('always');\n\n /**\n * Emits when the popup has been placed.\n */\n readonly placed = outputFromObservable(outputToObservable(inject(RdxPopperContentWrapper).placed));\n}\n","import { Directive, inject, model, output, Signal } from '@angular/core';\nimport { createContext } from '@radix-ng/primitives/core';\n\nexport interface RdxMenuRadioGroupContext {\n value: Signal<string | undefined>;\n selectValue: (value: string) => void;\n}\n\nexport const [injectRdxMenuRadioGroupContext, provideRdxMenuRadioGroupContext] =\n createContext<RdxMenuRadioGroupContext>('RdxMenuRadioGroupContext');\n\nconst radioGroupContextFactory = (): RdxMenuRadioGroupContext => {\n const instance = inject(RdxMenuRadioGroup);\n return {\n value: instance.value,\n selectValue: (v) => instance.selectValue(v)\n };\n};\n\n/**\n * Groups radio items in a menu.\n */\n@Directive({\n selector: '[rdxMenuRadioGroup]',\n exportAs: 'rdxMenuRadioGroup',\n providers: [provideRdxMenuRadioGroupContext(radioGroupContextFactory)],\n host: {\n role: 'group'\n }\n})\nexport class RdxMenuRadioGroup {\n /**\n * The currently selected value.\n */\n readonly value = model<string | undefined>(undefined);\n\n /**\n * Emits when the selected value changes.\n */\n readonly onValueChange = output<string>();\n\n selectValue(newValue: string): void {\n this.value.set(newValue);\n this.onValueChange.emit(newValue);\n }\n}\n","import {\n booleanAttribute,\n computed,\n Directive,\n ElementRef,\n inject,\n input,\n output,\n signal,\n Signal\n} from '@angular/core';\nimport { BooleanInput, createContext } from '@radix-ng/primitives/core';\nimport { injectRdxMenuRadioGroupContext } from './menu-radio-group';\nimport { injectRdxMenuRootContext } from './menu-root';\nimport { getCheckedState } from './menu-utils';\n\nexport interface RdxMenuRadioItemContext {\n checked: Signal<boolean>;\n}\n\nexport const [injectRdxMenuRadioItemContext, provideRdxMenuRadioItemContext] =\n createContext<RdxMenuRadioItemContext>('RdxMenuRadioItemContext');\n\nconst radioItemContextFactory = (): RdxMenuRadioItemContext => {\n const instance = inject(RdxMenuRadioItem);\n return {\n checked: instance.checked\n };\n};\n\n/**\n * A radio item within a menu radio group.\n */\n@Directive({\n selector: '[rdxMenuRadioItem]',\n exportAs: 'rdxMenuRadioItem',\n providers: [provideRdxMenuRadioItemContext(radioItemContextFactory)],\n host: {\n role: 'menuitemradio',\n tabindex: '-1',\n '[attr.aria-checked]': 'checked()',\n '[attr.data-state]': 'getCheckedState(checked())',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.aria-disabled]': 'disabled() ? true : undefined',\n '[attr.data-highlighted]': 'highlighted() ? \"\" : undefined',\n '[attr.data-label]': 'label() ?? undefined',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(pointermove)': 'onPointerMove($event)',\n '(pointerleave)': 'onPointerLeave($event)',\n '(click)': 'onItemClick()',\n '(keydown.enter)': 'onActivate($event)',\n '(keydown.space)': 'onActivate($event)'\n }\n})\nexport class RdxMenuRadioItem {\n private readonly rootContext = injectRdxMenuRootContext(true);\n private readonly radioGroupContext = injectRdxMenuRadioGroupContext()!;\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly isFocused = signal(false);\n\n /** The value of this radio item. */\n readonly value = input.required<string>();\n\n /** Whether this item is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether selecting closes the menu. Defaults to false — radio items stay open. */\n readonly closeOnClick = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Explicit typeahead label. When set, overrides textContent for character search. */\n readonly label = input<string | undefined>(undefined);\n\n /** Emits when this item is selected. */\n readonly onSelect = output<string>();\n\n readonly checked = computed(() => this.radioGroupContext.value() === this.value());\n\n protected readonly highlighted = computed(() => this.isFocused());\n protected readonly getCheckedState = getCheckedState;\n\n onFocus(): void {\n if (!this.disabled()) {\n this.isFocused.set(true);\n }\n }\n\n onBlur(): void {\n this.isFocused.set(false);\n }\n\n onPointerMove(event: PointerEvent): void {\n if (event.defaultPrevented || event.pointerType !== 'mouse' || this.disabled()) {\n return;\n }\n if (this.rootContext && !this.rootContext.highlightItemOnHover()) {\n return;\n }\n if (document.activeElement !== this.elementRef.nativeElement) {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n }\n }\n\n onPointerLeave(event: PointerEvent): void {\n if (event.pointerType !== 'mouse') {\n return;\n }\n if (document.activeElement === this.elementRef.nativeElement) {\n this.elementRef.nativeElement.closest<HTMLElement>('[rdxMenuPopup]')?.focus({ preventScroll: true });\n }\n }\n\n onItemClick(): void {\n if (this.disabled()) {\n return;\n }\n this.selectItem();\n }\n\n protected onActivate(event: Event): void {\n if (this.disabled()) {\n return;\n }\n event.preventDefault();\n this.selectItem();\n }\n\n private selectItem(): void {\n const v = this.value();\n this.radioGroupContext.selectValue(v);\n this.onSelect.emit(v);\n if (this.closeOnClick()) this.rootContext?.close();\n }\n}\n","import { booleanAttribute, computed, Directive, input } from '@angular/core';\nimport { BooleanInput } from '@radix-ng/primitives/core';\nimport { injectRdxMenuRadioItemContext } from './menu-radio-item';\nimport { getCheckedState } from './menu-utils';\n\n/**\n * Renders when the parent radio item is selected.\n * Set `keepMounted` to keep the element in the DOM when unselected (enables CSS animations).\n */\n@Directive({\n selector: '[rdxMenuRadioItemIndicator]',\n exportAs: 'rdxMenuRadioItemIndicator',\n host: {\n '[attr.data-state]': 'dataState()',\n '[attr.data-starting-style]': 'isVisible() ? \"\" : undefined',\n '[attr.data-ending-style]': '!isVisible() ? \"\" : undefined',\n '[style.display]': '!keepMounted() && !isVisible() ? \"none\" : null'\n }\n})\nexport class RdxMenuRadioItemIndicator {\n private readonly itemContext = injectRdxMenuRadioItemContext()!;\n\n /** Keep the indicator in the DOM when unselected so CSS exit animations can play. */\n readonly keepMounted = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n protected readonly dataState = computed(() => getCheckedState(this.itemContext.checked()));\n protected readonly isVisible = computed(() => this.itemContext.checked() === true);\n}\n","import { Directive } from '@angular/core';\n\n/**\n * A visual separator between groups of menu items.\n */\n@Directive({\n selector: '[rdxMenuSeparator]',\n exportAs: 'rdxMenuSeparator',\n host: {\n role: 'separator',\n '[attr.aria-orientation]': '\"horizontal\"'\n }\n})\nexport class RdxMenuSeparator {}\n","import {\n booleanAttribute,\n computed,\n DestroyRef,\n Directive,\n effect,\n ElementRef,\n inject,\n input,\n numberAttribute,\n signal\n} from '@angular/core';\nimport { BooleanInput, NumberInput } from '@radix-ng/primitives/core';\nimport { RdxDismissableLayerBranch } from '@radix-ng/primitives/dismissable-layer';\nimport { RdxPopperAnchor } from '@radix-ng/primitives/popper';\nimport { injectRdxMenuRootContext, RdxMenuRoot } from './menu-root';\n\nconst numberOrUndefined = (value: NumberInput | undefined) => (value == null ? undefined : numberAttribute(value));\nconst submenuRootsByTrigger = new WeakMap<HTMLElement, RdxMenuRoot>();\n\n/**\n * An item inside a parent menu that opens a nested submenu.\n *\n * Place this inside `ng-container rdxMenuRoot` that wraps both the trigger\n * and the submenu positioner. The inner root provides the submenu context;\n * the outer popup discovers this element via `[rdxMenuSubTrigger]` in its\n * ITEM_SELECTOR and includes it in keyboard navigation.\n */\n@Directive({\n selector: '[rdxMenuSubTrigger]',\n exportAs: 'rdxMenuSubTrigger',\n hostDirectives: [RdxPopperAnchor, RdxDismissableLayerBranch],\n host: {\n '[attr.type]': 'nativeButtonState() ? \"button\" : undefined',\n role: 'menuitem',\n tabindex: '-1',\n '[attr.aria-haspopup]': '\"menu\"',\n '[attr.aria-expanded]': 'submenuContext.isOpen()',\n '[attr.aria-disabled]': 'disabled() ? true : undefined',\n '[attr.disabled]': 'nativeButtonState() && disabled() ? \"\" : undefined',\n '[attr.data-state]': 'submenuContext.isOpen() ? \"open\" : \"closed\"',\n '[attr.data-popup-open]': 'submenuContext.isOpen() ? \"\" : undefined',\n '[attr.data-highlighted]': 'highlighted() ? \"\" : undefined',\n '[attr.data-disabled]': 'disabled() ? \"\" : undefined',\n '[attr.data-label]': 'label() ?? undefined',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '(click)': 'onClick()',\n '(keydown.arrowright)': 'onArrowRight($event)',\n '(pointermove)': 'onPointerMove($event)',\n '(pointerleave)': 'onPointerLeave()',\n '(rdx-menu-subtrigger-clear-highlight)': 'clearHighlight()'\n }\n})\nexport class RdxMenuSubTrigger {\n protected readonly submenuContext = injectRdxMenuRootContext()!;\n private readonly submenuRoot = inject(RdxMenuRoot);\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly destroyRef = inject(DestroyRef);\n private readonly isFocused = signal(false);\n private openTimer: ReturnType<typeof setTimeout> | undefined;\n\n /** Whether this trigger (and therefore the submenu) is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether this trigger should be treated as a native button. Auto-detected for `<button>`. */\n readonly nativeButton = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether hovering the trigger opens the submenu. */\n readonly openOnHover = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\n /** Delay before hover opens the submenu, in milliseconds. */\n readonly delay = input<number | undefined, NumberInput | undefined>(100, { transform: numberOrUndefined });\n\n /** Delay before a pending hover close runs, in milliseconds. */\n readonly closeDelay = input<number | undefined, NumberInput | undefined>(0, { transform: numberOrUndefined });\n\n /** Explicit typeahead label. When set, overrides textContent for character search. */\n readonly label = input<string | undefined>(undefined);\n\n /** Highlighted when focused OR while the submenu is open. */\n protected readonly highlighted = computed(() => this.isFocused() || this.submenuContext.isOpen());\n protected readonly nativeButtonState = computed(\n () => this.nativeButton() || this.elementRef.nativeElement.tagName === 'BUTTON'\n );\n\n constructor() {\n this.submenuContext.markAsSubmenu();\n\n effect((onCleanup) => {\n const el = this.elementRef.nativeElement;\n const unregister = this.submenuContext.registerTrigger(el);\n submenuRootsByTrigger.set(el, this.submenuRoot);\n\n onCleanup(() => {\n unregister();\n submenuRootsByTrigger.delete(el);\n });\n });\n\n this.destroyRef.onDestroy(() => {\n clearTimeout(this.openTimer);\n });\n }\n\n protected onFocus(): void {\n if (!this.disabled()) {\n this.clearSiblingHighlights();\n this.isFocused.set(true);\n }\n }\n\n protected onBlur(): void {\n this.isFocused.set(false);\n }\n\n protected onClick(): void {\n if (this.disabled()) return;\n this.clearSiblingHighlights();\n if (!this.submenuContext.isOpen()) {\n this.closeSiblingSubmenus();\n }\n this.submenuContext.toggle();\n }\n\n protected onArrowRight(event: Event): void {\n if (this.disabled()) return;\n event.preventDefault();\n event.stopPropagation();\n this.clearSiblingHighlights();\n if (!this.submenuContext.isOpen()) {\n this.closeSiblingSubmenus();\n this.submenuContext.show();\n }\n }\n\n protected onPointerMove(event: PointerEvent): void {\n if (event.pointerType !== 'mouse' || this.disabled() || !this.openOnHover()) return;\n\n this.clearSiblingHighlights();\n if (this.submenuContext.highlightItemOnHover() && document.activeElement !== this.elementRef.nativeElement) {\n this.elementRef.nativeElement.focus({ preventScroll: true });\n }\n\n if (!this.submenuContext.isOpen()) {\n clearTimeout(this.openTimer);\n this.closeSiblingSubmenus();\n this.openTimer = setTimeout(() => {\n this.submenuContext.show(false);\n }, this.delay() ?? 100);\n }\n }\n\n protected onPointerLeave(): void {\n clearTimeout(this.openTimer);\n }\n\n protected clearHighlight(): void {\n this.isFocused.set(false);\n }\n\n private closeSiblingSubmenus(): void {\n const currentTrigger = this.elementRef.nativeElement;\n const parentPopup = currentTrigger.closest<HTMLElement>('[rdxMenuPopup]');\n\n if (!parentPopup) return;\n\n parentPopup.querySelectorAll<HTMLElement>('[rdxMenuSubTrigger]').forEach((trigger) => {\n if (trigger === currentTrigger || trigger.closest('[rdxMenuPopup]') !== parentPopup) {\n return;\n }\n\n submenuRootsByTrigger.get(trigger)?.close();\n trigger.dispatchEvent(new CustomEvent('rdx-menu-subtrigger-clear-highlight'));\n });\n }\n\n private clearSiblingHighlights(): void {\n const currentTrigger = this.elementRef.nativeElement;\n const parentPopup = currentTrigger.closest<HTMLElement>('[rdxMenuPopup]');\n\n if (!parentPopup) return;\n\n parentPopup.querySelectorAll<HTMLElement>('[rdxMenuSubTrigger]').forEach((trigger) => {\n if (trigger === currentTrigger || trigger.closest('[rdxMenuPopup]') !== parentPopup) {\n return;\n }\n\n trigger.dispatchEvent(new CustomEvent('rdx-menu-subtrigger-clear-highlight'));\n });\n }\n}\n","import {\n booleanAttribute,\n computed,\n DestroyRef,\n Directive,\n effect,\n ElementRef,\n inject,\n input,\n numberAttribute\n} from '@angular/core';\nimport { BooleanInput, NumberInput } from '@radix-ng/primitives/core';\nimport { RdxDismissableLayersContextToken } from '@radix-ng/primitives/dismissable-layer';\nimport { RdxPopperAnchor } from '@radix-ng/primitives/popper';\nimport { injectRdxMenuRootContext } from './menu-root';\n\nconst numberOrUndefined = (value: NumberInput | undefined) => (value == null ? undefined : numberAttribute(value));\n\n/**\n * A button that opens the menu.\n */\n@Directive({\n selector: '[rdxMenuTrigger]',\n exportAs: 'rdxMenuTrigger',\n hostDirectives: [RdxPopperAnchor],\n host: {\n '[attr.type]': 'nativeButtonState() ? \"button\" : undefined',\n '[attr.role]':\n 'rootContext.hasTriggerInteractionHandler() ? \"menuitem\" : nativeButtonState() ? undefined : \"button\"',\n '[attr.tabindex]': 'rootContext.hasTriggerInteractionHandler() ? \"-1\" : undefined',\n '[attr.aria-haspopup]': '\"menu\"',\n '[attr.aria-expanded]': 'rootContext.isOpen()',\n '[attr.aria-disabled]': 'isDisabled() ? true : undefined',\n '[attr.disabled]': 'nativeButtonState() && isDisabled() ? \"\" : undefined',\n '[attr.data-state]': 'rootContext.isOpen() ? \"open\" : \"closed\"',\n '[attr.data-disabled]': 'isDisabled() ? \"\" : undefined',\n '[attr.data-popup-open]': 'rootContext.isOpen() ? \"\" : undefined',\n '(click)': 'handleClick()',\n '(pointerenter)': 'handlePointerEnter($event)',\n '(pointerleave)': 'handlePointerLeave($event)',\n '(keydown.arrowdown)': 'handleArrowDown($event)',\n '(keydown.arrowup)': 'handleArrowUp($event)',\n '(keydown.arrowleft)': 'handleArrowLeft($event)',\n '(keydown.arrowright)': 'handleArrowRight($event)',\n '(keydown.home)': 'handleHome($event)',\n '(keydown.end)': 'handleEnd($event)',\n '(keydown.escape)': 'handleEscape($event)',\n '(keydown.enter)': 'handleKeyboardToggle($event)',\n '(keydown.space)': 'handleKeyboardToggle($event)'\n }\n})\nexport class RdxMenuTrigger {\n protected readonly rootContext = injectRdxMenuRootContext()!;\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly destroyRef = inject(DestroyRef);\n private readonly dismissableLayersContext = inject(RdxDismissableLayersContextToken);\n private openTimer: ReturnType<typeof setTimeout> | undefined;\n private closeTimer: ReturnType<typeof setTimeout> | undefined;\n\n /** Whether this trigger should be treated as a native button. Auto-detected for `<button>`. */\n readonly nativeButton = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether this trigger is disabled. */\n readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Whether hovering the trigger opens the menu. */\n readonly openOnHover = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n /** Delay before hover opens the menu, in milliseconds. */\n readonly delay = input<number | undefined, NumberInput | undefined>(undefined, { transform: numberOrUndefined });\n\n /** Delay before hover leave closes the menu, in milliseconds. */\n readonly closeDelay = input<number | undefined, NumberInput | undefined>(undefined, {\n transform: numberOrUndefined\n });\n\n protected readonly nativeButtonState = computed(\n () => this.nativeButton() || this.elementRef.nativeElement.tagName === 'BUTTON'\n );\n\n protected readonly isDisabled = computed(() => this.rootContext.disabled() || this.disabled());\n\n constructor() {\n effect((onCleanup) => {\n const el = this.elementRef.nativeElement;\n const unregister = this.rootContext.registerTrigger(el);\n onCleanup(unregister);\n });\n\n // When a coordinator (e.g. the menubar) drives this trigger, hover-switching focuses the\n // trigger and opens the popup without pulling focus inside it. Register the trigger as a\n // dismissable-layer branch so that focus/pointer interactions on it are treated as \"inside\"\n // and do not dismiss the just-opened popup.\n effect((onCleanup) => {\n if (!this.rootContext.hasTriggerInteractionHandler()) {\n return;\n }\n\n const el = this.elementRef.nativeElement;\n this.dismissableLayersContext.branches.update((branches) => [...branches, el]);\n onCleanup(() => {\n this.dismissableLayersContext.branches.update((branches) => branches.filter((b) => b !== el));\n });\n });\n\n this.destroyRef.onDestroy(() => {\n this.clearOpenTimer();\n this.clearCloseTimer();\n });\n }\n\n protected handleClick(): void {\n if (this.isDisabled()) {\n return;\n }\n\n if (this.rootContext.handleTriggerInteraction({ type: 'click' })) {\n return;\n }\n\n this.rootContext.toggle();\n }\n\n protected handleArrowDown(event: Event): void {\n if (this.rootContext.handleTriggerInteraction({ type: 'arrowdown', event })) {\n return;\n }\n\n event.preventDefault();\n if (!this.isDisabled() && !this.rootContext.isOpen()) {\n this.rootContext.show('first');\n }\n }\n\n protected handleArrowUp(event: Event): void {\n if (this.rootContext.handleTriggerInteraction({ type: 'arrowup', event })) {\n return;\n }\n\n event.preventDefault();\n if (!this.isDisabled() && !this.rootContext.isOpen()) {\n this.rootContext.show('last');\n }\n }\n\n protected handleArrowLeft(event: Event): void {\n this.rootContext.handleTriggerInteraction({ type: 'arrowleft', event });\n }\n\n protected handleArrowRight(event: Event): void {\n this.rootContext.handleTriggerInteraction({ type: 'arrowright', event });\n }\n\n protected handleHome(event: Event): void {\n this.rootContext.handleTriggerInteraction({ type: 'home', event });\n }\n\n protected handleEnd(event: Event): void {\n this.rootContext.handleTriggerInteraction({ type: 'end', event });\n }\n\n protected handleEscape(event: Event): void {\n this.rootContext.handleTriggerInteraction({ type: 'escape', event });\n }\n\n protected handleKeyboardToggle(event: Event): void {\n if (this.nativeButtonState()) {\n return;\n }\n\n event.preventDefault();\n this.handleClick();\n }\n\n protected handlePointerEnter(event: PointerEvent): void {\n if (this.rootContext.handleTriggerInteraction({ type: 'pointerenter', event })) {\n return;\n }\n\n if (event.pointerType === 'touch' || !this.openOnHover() || this.isDisabled()) {\n return;\n }\n\n this.clearCloseTimer();\n this.clearOpenTimer();\n\n const delay = this.delay() ?? 0;\n if (delay <= 0) {\n this.rootContext.show();\n return;\n }\n\n this.openTimer = setTimeout(() => {\n this.openTimer = undefined;\n this.rootContext.show();\n }, delay);\n }\n\n protected handlePointerLeave(event: PointerEvent): void {\n if (event.pointerType === 'touch' || !this.openOnHover()) {\n return;\n }\n\n this.clearOpenTimer();\n this.clearCloseTimer();\n\n const closeDelay = this.closeDelay() ?? 0;\n if (closeDelay <= 0) {\n this.rootContext.close();\n return;\n }\n\n this.closeTimer = setTimeout(() => {\n this.closeTimer = undefined;\n this.rootContext.close();\n }, closeDelay);\n }\n\n private clearOpenTimer(): void {\n clearTimeout(this.openTimer);\n this.openTimer = undefined;\n }\n\n private clearCloseTimer(): void {\n clearTimeout(this.closeTimer);\n this.closeTimer = undefined;\n }\n}\n","import { afterNextRender, DestroyRef, Directive, ElementRef, inject, signal } from '@angular/core';\nimport { getMaxTransitionDuration } from '@radix-ng/primitives/core';\n\n/**\n * A viewport that smoothly animates the popup size when its content changes\n * (e.g. switching menubar menus of different sizes, or expanding a section).\n *\n * It measures its content with a `ResizeObserver` and exposes the current size\n * as `--popup-width` / `--popup-height` CSS variables on the host. Drive the\n * animation from the consumer side, for example:\n *\n * ```css\n * [rdxMenuPopup] {\n * width: var(--popup-width);\n * height: var(--popup-height);\n * transition: width 200ms, height 200ms;\n * }\n * ```\n *\n * `data-transitioning` is present while a size change is in flight.\n */\n@Directive({\n selector: '[rdxMenuViewport]',\n exportAs: 'rdxMenuViewport',\n host: {\n '[attr.data-transitioning]': 'transitioning() ? \"\" : undefined',\n '[style.--popup-width.px]': 'width()',\n '[style.--popup-height.px]': 'height()'\n }\n})\nexport class RdxMenuViewport {\n private readonly elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly destroyRef = inject(DestroyRef);\n private observer: ResizeObserver | undefined;\n private transitionTimer: ReturnType<typeof setTimeout> | undefined;\n\n protected readonly width = signal<number | undefined>(undefined);\n protected readonly height = signal<number | undefined>(undefined);\n protected readonly transitioning = signal(false);\n\n constructor() {\n afterNextRender(() => {\n const el = this.elementRef.nativeElement;\n\n // Seed the initial size without marking a transition.\n this.width.set(el.offsetWidth);\n this.height.set(el.offsetHeight);\n\n if (typeof ResizeObserver === 'undefined') {\n return;\n }\n\n this.observer = new ResizeObserver((entries) => {\n const entry = entries[0];\n if (!entry) {\n return;\n }\n\n const nextWidth = Math.round(entry.contentRect.width);\n const nextHeight = Math.round(entry.contentRect.height);\n\n if (nextWidth === this.width() && nextHeight === this.height()) {\n return;\n }\n\n this.width.set(nextWidth);\n this.height.set(nextHeight);\n this.markTransitioning();\n });\n\n this.observer.observe(el);\n });\n\n this.destroyRef.onDestroy(() => {\n this.observer?.disconnect();\n clearTimeout(this.transitionTimer);\n });\n }\n\n private markTransitioning(): void {\n this.transitioning.set(true);\n clearTimeout(this.transitionTimer);\n\n const duration = getMaxTransitionDuration(this.elementRef.nativeElement);\n this.transitionTimer = setTimeout(() => this.transitioning.set(false), duration > 0 ? duration + 50 : 0);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { RdxMenuArrow } from './src/menu-arrow';\nimport { RdxMenuBackdrop } from './src/menu-backdrop';\nimport { RdxMenuCheckboxItem } from './src/menu-checkbox-item';\nimport { RdxMenuCheckboxItemIndicator } from './src/menu-checkbox-item-indicator';\nimport { RdxMenuGroup } from './src/menu-group';\nimport { RdxMenuGroupLabel } from './src/menu-group-label';\nimport { RdxMenuItem } from './src/menu-item';\nimport { RdxMenuLinkItem } from './src/menu-link-item';\nimport { RdxMenuPopup } from './src/menu-popup';\nimport { RdxMenuPortal } from './src/menu-portal';\nimport { RdxMenuPositioner } from './src/menu-positioner';\nimport { RdxMenuRadioGroup } from './src/menu-radio-group';\nimport { RdxMenuRadioItem } from './src/menu-radio-item';\nimport { RdxMenuRadioItemIndicator } from './src/menu-radio-item-indicator';\nimport { RdxMenuRoot } from './src/menu-root';\nimport { RdxMenuSeparator } from './src/menu-separator';\nimport { RdxMenuSubTrigger } from './src/menu-sub-trigger';\nimport { RdxMenuTrigger } from './src/menu-trigger';\nimport { RdxMenuViewport } from './src/menu-viewport';\n\nexport * from './src/menu-arrow';\nexport * from './src/menu-backdrop';\nexport * from './src/menu-checkbox-item';\nexport * from './src/menu-checkbox-item-indicator';\nexport * from './src/menu-group';\nexport * from './src/menu-group-label';\nexport * from './src/menu-item';\nexport * from './src/menu-link-item';\nexport * from './src/menu-popup';\nexport * from './src/menu-portal';\nexport * from './src/menu-positioner';\nexport * from './src/menu-radio-group';\nexport * from './src/menu-radio-item';\nexport * from './src/menu-radio-item-indicator';\nexport * from './src/menu-root';\nexport * from './src/menu-separator';\nexport * from './src/menu-sub-trigger';\nexport * from './src/menu-trigger';\nexport * from './src/menu-utils';\nexport * from './src/menu-viewport';\n\nconst menuImports = [\n RdxMenuRoot,\n RdxMenuTrigger,\n RdxMenuSubTrigger,\n RdxMenuPortal,\n RdxMenuPositioner,\n RdxMenuPopup,\n RdxMenuViewport,\n RdxMenuBackdrop,\n RdxMenuArrow,\n RdxMenuItem,\n RdxMenuLinkItem,\n RdxMenuGroup,\n RdxMenuGroupLabel,\n RdxMenuSeparator,\n RdxMenuCheckboxItem,\n RdxMenuCheckboxItemIndicator,\n RdxMenuRadioGroup,\n RdxMenuRadioItem,\n RdxMenuRadioItemIndicator\n];\n\n@NgModule({\n imports: [...menuImports],\n exports: [...menuImports]\n})\nexport class RdxMenuModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","numberOrUndefined"],"mappings":"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"}
|