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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/fesm2022/radix-ng-primitives-accordion.mjs +105 -38
  2. package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -1
  3. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +221 -129
  4. package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -1
  5. package/fesm2022/radix-ng-primitives-arrow.mjs +20 -4
  6. package/fesm2022/radix-ng-primitives-arrow.mjs.map +1 -1
  7. package/fesm2022/radix-ng-primitives-aspect-ratio.mjs.map +1 -1
  8. package/fesm2022/radix-ng-primitives-avatar.mjs +54 -61
  9. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -1
  10. package/fesm2022/radix-ng-primitives-button.mjs +123 -0
  11. package/fesm2022/radix-ng-primitives-button.mjs.map +1 -0
  12. package/fesm2022/radix-ng-primitives-calendar.mjs +95 -83
  13. package/fesm2022/radix-ng-primitives-calendar.mjs.map +1 -1
  14. package/fesm2022/radix-ng-primitives-checkbox.mjs +378 -54
  15. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -1
  16. package/fesm2022/radix-ng-primitives-collapsible.mjs +182 -81
  17. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -1
  18. package/fesm2022/radix-ng-primitives-collection.mjs +40 -57
  19. package/fesm2022/radix-ng-primitives-collection.mjs.map +1 -1
  20. package/fesm2022/radix-ng-primitives-config.mjs.map +1 -1
  21. package/fesm2022/radix-ng-primitives-context-menu.mjs +140 -424
  22. package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -1
  23. package/fesm2022/radix-ng-primitives-core.mjs +845 -744
  24. package/fesm2022/radix-ng-primitives-core.mjs.map +1 -1
  25. package/fesm2022/radix-ng-primitives-cropper.mjs +288 -308
  26. package/fesm2022/radix-ng-primitives-cropper.mjs.map +1 -1
  27. package/fesm2022/radix-ng-primitives-date-field.mjs +104 -58
  28. package/fesm2022/radix-ng-primitives-date-field.mjs.map +1 -1
  29. package/fesm2022/radix-ng-primitives-dialog.mjs +655 -327
  30. package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -1
  31. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs +70 -46
  32. package/fesm2022/radix-ng-primitives-dismissable-layer.mjs.map +1 -1
  33. package/fesm2022/radix-ng-primitives-drawer.mjs +960 -0
  34. package/fesm2022/radix-ng-primitives-drawer.mjs.map +1 -0
  35. package/fesm2022/radix-ng-primitives-editable.mjs +304 -23
  36. package/fesm2022/radix-ng-primitives-editable.mjs.map +1 -1
  37. package/fesm2022/radix-ng-primitives-field.mjs +363 -0
  38. package/fesm2022/radix-ng-primitives-field.mjs.map +1 -0
  39. package/fesm2022/radix-ng-primitives-fieldset.mjs +79 -0
  40. package/fesm2022/radix-ng-primitives-fieldset.mjs.map +1 -0
  41. package/fesm2022/radix-ng-primitives-focus-scope.mjs +23 -8
  42. package/fesm2022/radix-ng-primitives-focus-scope.mjs.map +1 -1
  43. package/fesm2022/radix-ng-primitives-input.mjs +172 -0
  44. package/fesm2022/radix-ng-primitives-input.mjs.map +1 -0
  45. package/fesm2022/radix-ng-primitives-label.mjs +6 -6
  46. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -1
  47. package/fesm2022/radix-ng-primitives-menu.mjs +1907 -363
  48. package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -1
  49. package/fesm2022/radix-ng-primitives-menubar.mjs +290 -162
  50. package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -1
  51. package/fesm2022/radix-ng-primitives-meter.mjs +271 -0
  52. package/fesm2022/radix-ng-primitives-meter.mjs.map +1 -0
  53. package/fesm2022/radix-ng-primitives-navigation-menu.mjs +1052 -1553
  54. package/fesm2022/radix-ng-primitives-navigation-menu.mjs.map +1 -1
  55. package/fesm2022/radix-ng-primitives-number-field.mjs +1102 -367
  56. package/fesm2022/radix-ng-primitives-number-field.mjs.map +1 -1
  57. package/fesm2022/radix-ng-primitives-pagination.mjs.map +1 -1
  58. package/fesm2022/radix-ng-primitives-popover.mjs +978 -989
  59. package/fesm2022/radix-ng-primitives-popover.mjs.map +1 -1
  60. package/fesm2022/radix-ng-primitives-popper.mjs +111 -44
  61. package/fesm2022/radix-ng-primitives-popper.mjs.map +1 -1
  62. package/fesm2022/radix-ng-primitives-portal.mjs +34 -10
  63. package/fesm2022/radix-ng-primitives-portal.mjs.map +1 -1
  64. package/fesm2022/radix-ng-primitives-presence.mjs +134 -246
  65. package/fesm2022/radix-ng-primitives-presence.mjs.map +1 -1
  66. package/fesm2022/radix-ng-primitives-preview-card.mjs +997 -0
  67. package/fesm2022/radix-ng-primitives-preview-card.mjs.map +1 -0
  68. package/fesm2022/radix-ng-primitives-progress.mjs +223 -84
  69. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -1
  70. package/fesm2022/radix-ng-primitives-radio.mjs +191 -51
  71. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -1
  72. package/fesm2022/radix-ng-primitives-roving-focus.mjs +96 -50
  73. package/fesm2022/radix-ng-primitives-roving-focus.mjs.map +1 -1
  74. package/fesm2022/radix-ng-primitives-scroll-area.mjs +923 -0
  75. package/fesm2022/radix-ng-primitives-scroll-area.mjs.map +1 -0
  76. package/fesm2022/radix-ng-primitives-select.mjs +791 -509
  77. package/fesm2022/radix-ng-primitives-select.mjs.map +1 -1
  78. package/fesm2022/radix-ng-primitives-separator.mjs +12 -35
  79. package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -1
  80. package/fesm2022/radix-ng-primitives-slider.mjs +969 -717
  81. package/fesm2022/radix-ng-primitives-slider.mjs.map +1 -1
  82. package/fesm2022/radix-ng-primitives-stepper.mjs +15 -19
  83. package/fesm2022/radix-ng-primitives-stepper.mjs.map +1 -1
  84. package/fesm2022/radix-ng-primitives-switch.mjs +125 -113
  85. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -1
  86. package/fesm2022/radix-ng-primitives-tabs.mjs +390 -108
  87. package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -1
  88. package/fesm2022/radix-ng-primitives-time-field.mjs +55 -46
  89. package/fesm2022/radix-ng-primitives-time-field.mjs.map +1 -1
  90. package/fesm2022/radix-ng-primitives-toast.mjs +839 -0
  91. package/fesm2022/radix-ng-primitives-toast.mjs.map +1 -0
  92. package/fesm2022/radix-ng-primitives-toggle-group.mjs +121 -247
  93. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -1
  94. package/fesm2022/radix-ng-primitives-toggle.mjs +98 -61
  95. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -1
  96. package/fesm2022/radix-ng-primitives-toolbar.mjs +303 -92
  97. package/fesm2022/radix-ng-primitives-toolbar.mjs.map +1 -1
  98. package/fesm2022/radix-ng-primitives-tooltip.mjs +699 -1072
  99. package/fesm2022/radix-ng-primitives-tooltip.mjs.map +1 -1
  100. package/fesm2022/radix-ng-primitives-visually-hidden.mjs +25 -66
  101. package/fesm2022/radix-ng-primitives-visually-hidden.mjs.map +1 -1
  102. package/meter/README.md +3 -0
  103. package/navigation-menu/README.md +2 -1
  104. package/package.json +39 -18
  105. package/portal/README.md +2 -0
  106. package/preview-card/README.md +3 -0
  107. package/schematics/collection.json +1 -0
  108. package/schematics/ng-add/index.d.ts +3 -2
  109. package/schematics/ng-add/index.js +62 -31
  110. package/schematics/ng-add/index.js.map +1 -1
  111. package/schematics/ng-add/package-config.d.ts +4 -2
  112. package/schematics/ng-add/package-config.js +10 -2
  113. package/schematics/ng-add/package-config.js.map +1 -1
  114. package/schematics/ng-add/schema.d.ts +3 -0
  115. package/schematics/ng-add/schema.js +3 -0
  116. package/schematics/ng-add/schema.js.map +1 -0
  117. package/schematics/ng-add/schema.json +14 -0
  118. package/select/README.md +2 -0
  119. package/types/radix-ng-primitives-accordion.d.ts +51 -16
  120. package/types/radix-ng-primitives-alert-dialog.d.ts +95 -38
  121. package/types/radix-ng-primitives-arrow.d.ts +1 -1
  122. package/types/radix-ng-primitives-aspect-ratio.d.ts +1 -1
  123. package/types/radix-ng-primitives-avatar.d.ts +7 -11
  124. package/types/radix-ng-primitives-button.d.ts +73 -0
  125. package/types/radix-ng-primitives-calendar.d.ts +39 -20
  126. package/types/radix-ng-primitives-checkbox.d.ts +204 -35
  127. package/types/radix-ng-primitives-collapsible.d.ts +114 -40
  128. package/types/radix-ng-primitives-collection.d.ts +38 -34
  129. package/types/radix-ng-primitives-config.d.ts +1 -1
  130. package/types/radix-ng-primitives-context-menu.d.ts +61 -116
  131. package/types/radix-ng-primitives-core.d.ts +345 -235
  132. package/types/radix-ng-primitives-cropper.d.ts +89 -56
  133. package/types/radix-ng-primitives-date-field.d.ts +49 -28
  134. package/types/radix-ng-primitives-dialog.d.ts +283 -165
  135. package/types/radix-ng-primitives-dismissable-layer.d.ts +15 -7
  136. package/types/radix-ng-primitives-drawer.d.ts +426 -0
  137. package/types/radix-ng-primitives-editable.d.ts +91 -14
  138. package/types/radix-ng-primitives-field.d.ts +374 -0
  139. package/types/radix-ng-primitives-fieldset.d.ts +49 -0
  140. package/types/radix-ng-primitives-focus-scope.d.ts +15 -6
  141. package/types/radix-ng-primitives-input.d.ts +87 -0
  142. package/types/radix-ng-primitives-label.d.ts +0 -1
  143. package/types/radix-ng-primitives-menu.d.ts +584 -99
  144. package/types/radix-ng-primitives-menubar.d.ts +61 -50
  145. package/types/radix-ng-primitives-meter.d.ts +194 -0
  146. package/types/radix-ng-primitives-navigation-menu.d.ts +422 -340
  147. package/types/radix-ng-primitives-number-field.d.ts +405 -145
  148. package/types/radix-ng-primitives-pagination.d.ts +2 -2
  149. package/types/radix-ng-primitives-popover.d.ts +366 -351
  150. package/types/radix-ng-primitives-popper.d.ts +68 -11
  151. package/types/radix-ng-primitives-portal.d.ts +14 -6
  152. package/types/radix-ng-primitives-presence.d.ts +28 -76
  153. package/types/radix-ng-primitives-preview-card.d.ts +359 -0
  154. package/types/radix-ng-primitives-progress.d.ts +175 -48
  155. package/types/radix-ng-primitives-radio.d.ts +55 -25
  156. package/types/radix-ng-primitives-roving-focus.d.ts +33 -23
  157. package/types/radix-ng-primitives-scroll-area.d.ts +253 -0
  158. package/types/radix-ng-primitives-select.d.ts +475 -177
  159. package/types/radix-ng-primitives-separator.d.ts +7 -32
  160. package/types/radix-ng-primitives-slider.d.ts +315 -201
  161. package/types/radix-ng-primitives-stepper.d.ts +5 -7
  162. package/types/radix-ng-primitives-switch.d.ts +86 -71
  163. package/types/radix-ng-primitives-tabs.d.ts +213 -79
  164. package/types/radix-ng-primitives-time-field.d.ts +42 -27
  165. package/types/radix-ng-primitives-toast.d.ts +378 -0
  166. package/types/radix-ng-primitives-toggle-group.d.ts +86 -164
  167. package/types/radix-ng-primitives-toggle.d.ts +43 -53
  168. package/types/radix-ng-primitives-toolbar.d.ts +164 -38
  169. package/types/radix-ng-primitives-tooltip.d.ts +348 -384
  170. package/types/radix-ng-primitives-visually-hidden.d.ts +19 -19
  171. package/dropdown-menu/README.md +0 -1
  172. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +0 -581
  173. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +0 -1
  174. package/fesm2022/radix-ng-primitives-hover-card.mjs +0 -1238
  175. package/fesm2022/radix-ng-primitives-hover-card.mjs.map +0 -1
  176. package/fesm2022/radix-ng-primitives-select2.mjs +0 -897
  177. package/fesm2022/radix-ng-primitives-select2.mjs.map +0 -1
  178. package/fesm2022/radix-ng-primitives-tooltip2.mjs +0 -735
  179. package/fesm2022/radix-ng-primitives-tooltip2.mjs.map +0 -1
  180. package/hover-card/README.md +0 -3
  181. package/select2/README.md +0 -3
  182. package/tooltip2/README.md +0 -3
  183. package/types/radix-ng-primitives-dropdown-menu.d.ts +0 -171
  184. package/types/radix-ng-primitives-hover-card.d.ts +0 -471
  185. package/types/radix-ng-primitives-select2.d.ts +0 -511
  186. package/types/radix-ng-primitives-tooltip2.d.ts +0 -325
@@ -40,25 +40,25 @@ declare class RdxVisuallyHiddenInputBubbleDirective<T> {
40
40
  static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxVisuallyHiddenInputBubbleDirective<any>, "input[rdxVisuallyHiddenInputBubble]", never, { "feature": { "alias": "feature"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof RdxVisuallyHiddenDirective; inputs: { "feature": "feature"; }; outputs: {}; }]>;
41
41
  }
42
42
 
43
- declare class RdxVisuallyHiddenInputDirective<T> {
44
- private readonly elementRef;
45
- private readonly injector;
46
- readonly name: _angular_core.InputSignal<string | undefined>;
47
- readonly value: _angular_core.InputSignal<string | T | undefined>;
48
- readonly checked: _angular_core.InputSignal<boolean | undefined>;
49
- readonly required: _angular_core.InputSignal<boolean | undefined>;
50
- readonly disabled: _angular_core.InputSignal<boolean | undefined>;
51
- readonly feature: _angular_core.InputSignal<VisuallyHidden>;
52
- readonly parsedValue: _angular_core.Signal<{
53
- name: string;
54
- value: any;
55
- }[] | {
56
- name: string | undefined;
57
- value: string | (T & number) | (T & boolean);
58
- }[]>;
59
- constructor();
60
- static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxVisuallyHiddenInputDirective<any>, never>;
61
- static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxVisuallyHiddenInputDirective<any>, "[rdxVisuallyHiddenInput]", never, { "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "checked": { "alias": "checked"; "required": false; "isSignal": true; }; "required": { "alias": "required"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "feature": { "alias": "feature"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof RdxVisuallyHiddenInputBubbleDirective; inputs: { "feature": "feature"; "name": "name"; "value": "value"; "checked": "checked"; "disabled": "disabled"; "required": "required"; }; outputs: {}; }]>;
43
+ /**
44
+ * Mirrors a control's value into a visually hidden `<input>` so it participates in form
45
+ * submission while staying out of the visual and (when `fully-hidden`) accessibility tree.
46
+ *
47
+ * Apply it to a real `<input>` element. It carries a **single scalar value** — the composed
48
+ * {@link RdxVisuallyHiddenInputBubbleDirective} owns `name`/`value`/`checked` and keeps the
49
+ * native value in sync, re-dispatching `input`/`change` events so the value bubbles to the form.
50
+ *
51
+ * A single `<input>` can only represent one form field, so object/array values are not
52
+ * supported here; render one directive per field instead.
53
+ *
54
+ * @example
55
+ * ```html
56
+ * <input rdxVisuallyHiddenInput [name]="'agree'" [value]="checked() ? 'on' : 'off'" />
57
+ * ```
58
+ */
59
+ declare class RdxVisuallyHiddenInputDirective {
60
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<RdxVisuallyHiddenInputDirective, never>;
61
+ static ɵdir: _angular_core.ɵɵDirectiveDeclaration<RdxVisuallyHiddenInputDirective, "input[rdxVisuallyHiddenInput]", never, {}, {}, never, never, true, [{ directive: typeof RdxVisuallyHiddenInputBubbleDirective; inputs: { "feature": "feature"; "name": "name"; "value": "value"; "checked": "checked"; "required": "required"; "disabled": "disabled"; }; outputs: {}; }]>;
62
62
  }
63
63
 
64
64
  export { RdxVisuallyHiddenDirective, RdxVisuallyHiddenInputBubbleDirective, RdxVisuallyHiddenInputDirective };
@@ -1 +0,0 @@
1
- # @radix-ng/primitives/dropdown-menu
@@ -1,581 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { input, booleanAttribute, numberAttribute, Input, Directive, inject, ElementRef, EventEmitter, Output, NgModule } from '@angular/core';
3
- import { CdkMenuTrigger, MENU_TRIGGER, PARENT_OR_NEW_MENU_STACK_PROVIDER, CdkMenu, CdkMenuItem, CDK_MENU } from '@angular/cdk/menu';
4
- import { Subject, startWith, pairwise } from 'rxjs';
5
- import { outputFromObservable, takeUntilDestroyed } from '@angular/core/rxjs-interop';
6
- import { UniqueSelectionDispatcher } from '@angular/cdk/collections';
7
- import * as i1 from '@radix-ng/primitives/menu';
8
- import { RdxMenuLabelDirective, RdxMenuSeparatorDirective } from '@radix-ng/primitives/menu';
9
-
10
- var DropdownSide;
11
- (function (DropdownSide) {
12
- DropdownSide["Top"] = "top";
13
- DropdownSide["Right"] = "right";
14
- DropdownSide["Bottom"] = "bottom";
15
- DropdownSide["Left"] = "left";
16
- })(DropdownSide || (DropdownSide = {}));
17
- var DropdownAlign;
18
- (function (DropdownAlign) {
19
- DropdownAlign["Start"] = "start";
20
- DropdownAlign["Center"] = "center";
21
- DropdownAlign["End"] = "end";
22
- })(DropdownAlign || (DropdownAlign = {}));
23
- const mapRdxAlignToCdkPosition = {
24
- start: 'top',
25
- center: 'center',
26
- end: 'bottom'
27
- };
28
- const dropdownPositions = {
29
- top: {
30
- originX: 'start',
31
- originY: 'top',
32
- overlayX: 'start',
33
- overlayY: 'bottom',
34
- offsetX: 0,
35
- offsetY: 0
36
- },
37
- right: {
38
- originX: 'end',
39
- originY: 'top',
40
- overlayX: 'start',
41
- overlayY: 'top',
42
- offsetX: 0,
43
- offsetY: 0
44
- },
45
- bottom: {
46
- originX: 'start',
47
- originY: 'bottom',
48
- overlayX: 'start',
49
- overlayY: 'top',
50
- offsetX: 0,
51
- offsetY: 0
52
- },
53
- left: {
54
- originX: 'start',
55
- originY: 'top',
56
- overlayX: 'end',
57
- overlayY: 'top',
58
- offsetX: 0,
59
- offsetY: 0
60
- }
61
- };
62
- /**
63
- * @group Components
64
- */
65
- class RdxDropdownMenuTriggerDirective extends CdkMenuTrigger {
66
- set rdxDropdownMenuTrigger(value) {
67
- this.menuTemplateRef = value;
68
- }
69
- /**
70
- * The preferred side of the trigger to render against when open.
71
- * Will be reversed when collisions occur and `avoidCollisions` is enabled.
72
- *
73
- * @group Props
74
- * @defaultValue 'bottom'
75
- */
76
- set side(value) {
77
- if (!Object.values(DropdownSide).includes(value)) {
78
- throw new Error(`Unknown side: ${value}`);
79
- }
80
- this._side = value;
81
- this.menuPosition[0] = dropdownPositions[value];
82
- }
83
- get side() {
84
- return this._side;
85
- }
86
- /**
87
- * The preferred alignment against the trigger. May change when collisions occur.
88
- *
89
- * @group Props
90
- * @defaultValue 'center'
91
- */
92
- set align(value) {
93
- if (!Object.values(DropdownAlign).includes(value)) {
94
- throw new Error(`Unknown align: ${value}`);
95
- }
96
- this._align = value;
97
- if (this.isVertical) {
98
- this.defaultPosition.overlayX = this.defaultPosition.originX = value;
99
- }
100
- else {
101
- this.defaultPosition.overlayY = this.defaultPosition.originY = mapRdxAlignToCdkPosition[value];
102
- }
103
- }
104
- get align() {
105
- return this._align;
106
- }
107
- /**
108
- * The distance in pixels from the trigger.
109
- * @group Props
110
- * @defaultValue 0
111
- */
112
- set sideOffset(value) {
113
- // todo need invert value for top and left
114
- if (this.isVertical) {
115
- this.defaultPosition.offsetY = value;
116
- }
117
- else {
118
- this.defaultPosition.offsetX = value;
119
- }
120
- }
121
- get sideOffset() {
122
- return this._sideOffset;
123
- }
124
- /**
125
- * An offset in pixels from the "start" or "end" alignment options.
126
- * @group Props
127
- * @defaultValue 0
128
- */
129
- set alignOffset(value) {
130
- // todo need invert value for top and left
131
- if (this.isVertical) {
132
- this.defaultPosition.offsetX = value;
133
- }
134
- else {
135
- this.defaultPosition.offsetY = value;
136
- }
137
- }
138
- get alignOffset() {
139
- return this._alignOffset;
140
- }
141
- get isVertical() {
142
- return this._side === DropdownSide.Top || this._side === DropdownSide.Bottom;
143
- }
144
- get defaultPosition() {
145
- return this.menuPosition[0];
146
- }
147
- constructor() {
148
- super();
149
- this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
150
- this._side = DropdownSide.Bottom;
151
- this._align = DropdownAlign.Start;
152
- this._sideOffset = 0;
153
- this._alignOffset = 0;
154
- this.onOpenChange = outputFromObservable(this.opened);
155
- // todo priority
156
- this.menuPosition = [{ ...dropdownPositions[DropdownSide.Bottom] }];
157
- }
158
- onPointerDown($event) {
159
- // only call handler if it's the left button (mousedown gets triggered by all mouse buttons)
160
- // but not when the control key is pressed (avoiding MacOS right click)
161
- if (!this.disabled() && $event.button === 0 && !$event.ctrlKey) {
162
- /* empty */
163
- if (!this.isOpen()) {
164
- // prevent trigger focusing when opening
165
- // this allows the content to be given focus without competition
166
- $event.preventDefault();
167
- }
168
- }
169
- }
170
- getOverlayRef() {
171
- return this.overlayRef;
172
- }
173
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
174
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.9", type: RdxDropdownMenuTriggerDirective, isStandalone: true, selector: "[rdxDropdownMenuTrigger]", inputs: { disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, rdxDropdownMenuTrigger: { classPropertyName: "rdxDropdownMenuTrigger", publicName: "rdxDropdownMenuTrigger", isSignal: false, isRequired: false, transformFunction: null }, side: { classPropertyName: "side", publicName: "side", isSignal: false, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: false, isRequired: false, transformFunction: null }, sideOffset: { classPropertyName: "sideOffset", publicName: "sideOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute }, alignOffset: { classPropertyName: "alignOffset", publicName: "alignOffset", isSignal: false, isRequired: false, transformFunction: numberAttribute } }, outputs: { onOpenChange: "onOpenChange" }, host: { attributes: { "type": "button" }, listeners: { "pointerdown": "onPointerDown($event)" }, properties: { "attr.aria-haspopup": "'menu'", "attr.aria-expanded": "isOpen()", "attr.data-state": "isOpen() ? 'open': 'closed'", "attr.data-disabled": "disabled() ? '' : undefined", "attr.disabled": "disabled() ? \"\" : undefined" } }, providers: [
175
- { provide: CdkMenuTrigger, useExisting: RdxDropdownMenuTriggerDirective },
176
- { provide: MENU_TRIGGER, useExisting: CdkMenuTrigger },
177
- PARENT_OR_NEW_MENU_STACK_PROVIDER
178
- ], usesInheritance: true, ngImport: i0 }); }
179
- }
180
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuTriggerDirective, decorators: [{
181
- type: Directive,
182
- args: [{
183
- selector: '[rdxDropdownMenuTrigger]',
184
- standalone: true,
185
- host: {
186
- type: 'button',
187
- '[attr.aria-haspopup]': "'menu'",
188
- '[attr.aria-expanded]': 'isOpen()',
189
- '[attr.data-state]': "isOpen() ? 'open': 'closed'",
190
- '[attr.data-disabled]': "disabled() ? '' : undefined",
191
- '[attr.disabled]': 'disabled() ? "" : undefined',
192
- '(pointerdown)': 'onPointerDown($event)'
193
- },
194
- providers: [
195
- { provide: CdkMenuTrigger, useExisting: RdxDropdownMenuTriggerDirective },
196
- { provide: MENU_TRIGGER, useExisting: CdkMenuTrigger },
197
- PARENT_OR_NEW_MENU_STACK_PROVIDER
198
- ]
199
- }]
200
- }], ctorParameters: () => [], propDecorators: { disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], rdxDropdownMenuTrigger: [{
201
- type: Input
202
- }], side: [{
203
- type: Input
204
- }], align: [{
205
- type: Input
206
- }], sideOffset: [{
207
- type: Input,
208
- args: [{ transform: numberAttribute }]
209
- }], alignOffset: [{
210
- type: Input,
211
- args: [{ transform: numberAttribute }]
212
- }], onOpenChange: [{ type: i0.Output, args: ["onOpenChange"] }] } });
213
-
214
- class RdxDropdownMenuContentDirective extends CdkMenu {
215
- constructor() {
216
- super();
217
- this.highlighted = new Subject();
218
- this.menuTrigger = inject(RdxDropdownMenuTriggerDirective, { optional: true });
219
- this.onEscapeKeyDown = () => undefined;
220
- this.closeOnEscape = true;
221
- this.highlighted.pipe(startWith(null), pairwise()).subscribe(([prev, item]) => {
222
- if (prev) {
223
- prev.highlighted = false;
224
- }
225
- if (item) {
226
- item.highlighted = true;
227
- }
228
- });
229
- }
230
- updateActiveItem(item) {
231
- this.keyManager.updateActiveItem(item);
232
- }
233
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
234
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuContentDirective, isStandalone: true, selector: "[rdxDropdownMenuContent]", inputs: { onEscapeKeyDown: "onEscapeKeyDown", closeOnEscape: "closeOnEscape" }, host: { properties: { "attr.data-state": "menuTrigger?.isOpen() ? 'open': 'closed'", "attr.data-align": "menuTrigger?.align", "attr.data-side": "menuTrigger?.side", "attr.data-orientation": "orientation" } }, providers: [
235
- {
236
- provide: CdkMenu,
237
- useExisting: RdxDropdownMenuContentDirective
238
- }
239
- ], usesInheritance: true, ngImport: i0 }); }
240
- }
241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuContentDirective, decorators: [{
242
- type: Directive,
243
- args: [{
244
- selector: '[rdxDropdownMenuContent]',
245
- standalone: true,
246
- host: {
247
- '[attr.data-state]': "menuTrigger?.isOpen() ? 'open': 'closed'",
248
- '[attr.data-align]': 'menuTrigger?.align',
249
- '[attr.data-side]': 'menuTrigger?.side',
250
- '[attr.data-orientation]': 'orientation'
251
- },
252
- providers: [
253
- {
254
- provide: CdkMenu,
255
- useExisting: RdxDropdownMenuContentDirective
256
- }
257
- ]
258
- }]
259
- }], ctorParameters: () => [], propDecorators: { onEscapeKeyDown: [{
260
- type: Input
261
- }], closeOnEscape: [{
262
- type: Input
263
- }] } });
264
-
265
- class RdxDropdownMenuItemDirective extends CdkMenuItem {
266
- constructor() {
267
- super();
268
- this.menu = inject(RdxDropdownMenuContentDirective);
269
- this.nativeElement = inject(ElementRef).nativeElement;
270
- this.highlighted = false;
271
- this.disabled = false;
272
- this.onSelect = new EventEmitter();
273
- this.menu.highlighted.pipe(takeUntilDestroyed()).subscribe((value) => {
274
- if (value !== this) {
275
- this.highlighted = false;
276
- }
277
- });
278
- this.triggered.subscribe(this.onSelect);
279
- }
280
- onPointerMove() {
281
- if (!this.highlighted) {
282
- this.nativeElement.focus({ preventScroll: true });
283
- this.menu.updateActiveItem(this);
284
- }
285
- }
286
- onKeydown(event) {
287
- if (this.nativeElement.tagName !== 'BUTTON' && ['Enter', ' '].includes(event.key)) {
288
- event.preventDefault();
289
- }
290
- if (event.key === 'Escape') {
291
- if (!this.menu.closeOnEscape) {
292
- event.stopPropagation();
293
- }
294
- else {
295
- this.menu.onEscapeKeyDown(event);
296
- }
297
- }
298
- }
299
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
300
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.2.9", type: RdxDropdownMenuItemDirective, isStandalone: true, selector: "[rdxDropdownMenuItem]", inputs: { disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { onSelect: "onSelect" }, host: { attributes: { "type": "button" }, listeners: { "pointermove": "onPointerMove()", "focus": "menu.highlighted.next(this)", "keydown": "onKeydown($event)" }, properties: { "attr.data-orientation": "\"vertical\"", "attr.data-highlighted": "highlighted ? \"\" : null", "attr.data-disabled": "disabled ? \"\" : null", "attr.disabled": "disabled ? \"\" : null" } }, providers: [
301
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
302
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
303
- ], usesInheritance: true, ngImport: i0 }); }
304
- }
305
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemDirective, decorators: [{
306
- type: Directive,
307
- args: [{
308
- selector: '[rdxDropdownMenuItem]',
309
- standalone: true,
310
- host: {
311
- type: 'button',
312
- // todo horizontal ?
313
- '[attr.data-orientation]': '"vertical"',
314
- '[attr.data-highlighted]': 'highlighted ? "" : null',
315
- '[attr.data-disabled]': 'disabled ? "" : null',
316
- '[attr.disabled]': 'disabled ? "" : null',
317
- '(pointermove)': 'onPointerMove()',
318
- '(focus)': 'menu.highlighted.next(this)',
319
- '(keydown)': 'onKeydown($event)'
320
- },
321
- providers: [
322
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
323
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
324
- ]
325
- }]
326
- }], ctorParameters: () => [], propDecorators: { disabled: [{
327
- type: Input,
328
- args: [{ transform: booleanAttribute }]
329
- }], onSelect: [{
330
- type: Output
331
- }] } });
332
-
333
- /** Base class providing checked state for selectable DropdownMenuItems. */
334
- class RdxDropdownMenuSelectable extends RdxDropdownMenuItemDirective {
335
- constructor() {
336
- super(...arguments);
337
- /** Whether the element is checked */
338
- this.checked = false;
339
- this.checkedChange = new EventEmitter();
340
- }
341
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuSelectable, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
342
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "21.2.9", type: RdxDropdownMenuSelectable, isStandalone: true, inputs: { checked: ["checked", "checked", booleanAttribute] }, outputs: { checkedChange: "checkedChange" }, host: { properties: { "attr.aria-checked": "!!checked", "attr.aria-disabled": "disabled || null", "attr.data-state": "checked ? \"checked\" : \"unchecked\"" } }, usesInheritance: true, ngImport: i0 }); }
343
- }
344
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuSelectable, decorators: [{
345
- type: Directive,
346
- args: [{
347
- standalone: true,
348
- host: {
349
- '[attr.aria-checked]': '!!checked',
350
- '[attr.aria-disabled]': 'disabled || null',
351
- '[attr.data-state]': 'checked ? "checked" : "unchecked"'
352
- }
353
- }]
354
- }], propDecorators: { checked: [{
355
- type: Input,
356
- args: [{ transform: booleanAttribute }]
357
- }], checkedChange: [{
358
- type: Output
359
- }] } });
360
-
361
- class RdxDropdownMenuItemCheckboxDirective extends RdxDropdownMenuSelectable {
362
- trigger(options) {
363
- if (!this.disabled) {
364
- this.checked = !this.checked;
365
- this.checkedChange.emit(this.checked);
366
- }
367
- super.trigger(options);
368
- }
369
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemCheckboxDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive }); }
370
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuItemCheckboxDirective, isStandalone: true, selector: "[rdxDropdownMenuItemCheckbox]", host: { attributes: { "role": "menuitemcheckbox" } }, providers: [
371
- { provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemCheckboxDirective },
372
- { provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
373
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
374
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
375
- ], usesInheritance: true, ngImport: i0 }); }
376
- }
377
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemCheckboxDirective, decorators: [{
378
- type: Directive,
379
- args: [{
380
- selector: '[rdxDropdownMenuItemCheckbox]',
381
- standalone: true,
382
- host: {
383
- role: 'menuitemcheckbox'
384
- },
385
- providers: [
386
- { provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemCheckboxDirective },
387
- { provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
388
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
389
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
390
- ]
391
- }]
392
- }] });
393
-
394
- class RdxDropdownMenuItemIndicatorDirective {
395
- constructor() {
396
- this.item = inject(RdxDropdownMenuSelectable);
397
- }
398
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
399
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuItemIndicatorDirective, isStandalone: true, selector: "[rdxDropdownMenuItemIndicator]", host: { properties: { "style.display": "item.checked ? 'block' : 'none'", "attr.data-state": "item.checked ? 'checked' : 'unchecked'" } }, ngImport: i0 }); }
400
- }
401
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemIndicatorDirective, decorators: [{
402
- type: Directive,
403
- args: [{
404
- selector: '[rdxDropdownMenuItemIndicator]',
405
- standalone: true,
406
- host: {
407
- '[style.display]': "item.checked ? 'block' : 'none'",
408
- '[attr.data-state]': "item.checked ? 'checked' : 'unchecked'"
409
- }
410
- }]
411
- }] });
412
-
413
- class RdxDropdownMenuItemRadioGroupDirective {
414
- constructor() {
415
- this.selectionDispatcher = inject(UniqueSelectionDispatcher);
416
- this._value = null;
417
- this.valueChange = new EventEmitter();
418
- }
419
- set value(id) {
420
- this._value = id;
421
- }
422
- get value() {
423
- return this._value;
424
- }
425
- ngAfterContentInit() {
426
- this.selectionDispatcher.notify(this.value, '');
427
- }
428
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemRadioGroupDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
429
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuItemRadioGroupDirective, isStandalone: true, selector: "[rdxDropdownMenuItemRadioGroup]", inputs: { value: "value" }, outputs: { valueChange: "valueChange" }, host: { attributes: { "role": "group" } }, providers: [{ provide: UniqueSelectionDispatcher, useClass: UniqueSelectionDispatcher }], ngImport: i0 }); }
430
- }
431
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemRadioGroupDirective, decorators: [{
432
- type: Directive,
433
- args: [{
434
- selector: '[rdxDropdownMenuItemRadioGroup]',
435
- standalone: true,
436
- host: {
437
- role: 'group'
438
- },
439
- providers: [{ provide: UniqueSelectionDispatcher, useClass: UniqueSelectionDispatcher }]
440
- }]
441
- }], propDecorators: { value: [{
442
- type: Input
443
- }], valueChange: [{
444
- type: Output
445
- }] } });
446
-
447
- /** Counter used to set a unique id and name for a selectable item */
448
- let nextId = 0;
449
- class RdxDropdownMenuItemRadioDirective extends RdxDropdownMenuSelectable {
450
- get value() {
451
- return this._value || this.id;
452
- }
453
- set value(value) {
454
- this._value = value;
455
- }
456
- constructor() {
457
- super();
458
- /** The unique selection dispatcher for this radio's `RdxDropdownMenuItemRadioGroupDirective`. */
459
- this.selectionDispatcher = inject(UniqueSelectionDispatcher);
460
- this.group = inject(RdxDropdownMenuItemRadioGroupDirective);
461
- /** An ID to identify this radio item to the `UniqueSelectionDispatcher`. */
462
- this.id = `${nextId++}`;
463
- this.triggered.subscribe(() => {
464
- if (!this.disabled) {
465
- this.selectionDispatcher.notify(this.value, '');
466
- this.group.valueChange.emit(this.value);
467
- }
468
- });
469
- }
470
- ngAfterContentInit() {
471
- this.removeDispatcherListener = this.selectionDispatcher.listen((id) => {
472
- this.checked = this.value === id;
473
- });
474
- }
475
- ngOnDestroy() {
476
- super.ngOnDestroy();
477
- this.removeDispatcherListener();
478
- }
479
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemRadioDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
480
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuItemRadioDirective, isStandalone: true, selector: "[rdxDropdownMenuItemRadio]", inputs: { value: "value" }, host: { attributes: { "role": "menuitemradio" } }, providers: [
481
- { provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemRadioDirective },
482
- { provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
483
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
484
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
485
- ], usesInheritance: true, ngImport: i0 }); }
486
- }
487
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuItemRadioDirective, decorators: [{
488
- type: Directive,
489
- args: [{
490
- selector: '[rdxDropdownMenuItemRadio]',
491
- standalone: true,
492
- host: {
493
- role: 'menuitemradio'
494
- },
495
- providers: [
496
- { provide: RdxDropdownMenuSelectable, useExisting: RdxDropdownMenuItemRadioDirective },
497
- { provide: RdxDropdownMenuItemDirective, useExisting: RdxDropdownMenuSelectable },
498
- { provide: CdkMenuItem, useExisting: RdxDropdownMenuItemDirective },
499
- { provide: CDK_MENU, useExisting: RdxDropdownMenuContentDirective }
500
- ]
501
- }]
502
- }], ctorParameters: () => [], propDecorators: { value: [{
503
- type: Input
504
- }] } });
505
-
506
- class RdxDropdownMenuLabelDirective {
507
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuLabelDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
508
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuLabelDirective, isStandalone: true, selector: "[rdxDropdownMenuLabel]", hostDirectives: [{ directive: i1.RdxMenuLabelDirective }], ngImport: i0 }); }
509
- }
510
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuLabelDirective, decorators: [{
511
- type: Directive,
512
- args: [{
513
- selector: '[rdxDropdownMenuLabel]',
514
- hostDirectives: [RdxMenuLabelDirective]
515
- }]
516
- }] });
517
-
518
- class RdxDropdownMenuSeparatorDirective {
519
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuSeparatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
520
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.9", type: RdxDropdownMenuSeparatorDirective, isStandalone: true, selector: "[rdxDropdownMenuSeparator]", hostDirectives: [{ directive: i1.RdxMenuSeparatorDirective }], ngImport: i0 }); }
521
- }
522
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: RdxDropdownMenuSeparatorDirective, decorators: [{
523
- type: Directive,
524
- args: [{
525
- selector: '[rdxDropdownMenuSeparator]',
526
- hostDirectives: [RdxMenuSeparatorDirective]
527
- }]
528
- }] });
529
-
530
- const _imports = [
531
- RdxDropdownMenuTriggerDirective,
532
- RdxDropdownMenuContentDirective,
533
- RdxDropdownMenuItemCheckboxDirective,
534
- RdxDropdownMenuItemIndicatorDirective,
535
- RdxDropdownMenuItemRadioGroupDirective,
536
- RdxDropdownMenuItemRadioDirective,
537
- RdxDropdownMenuSelectable,
538
- RdxDropdownMenuItemDirective,
539
- RdxDropdownMenuLabelDirective,
540
- RdxDropdownMenuSeparatorDirective,
541
- RdxDropdownMenuTriggerDirective
542
- ];
543
- class Rdx {
544
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: Rdx, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
545
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.2.9", ngImport: i0, type: Rdx, imports: [RdxDropdownMenuTriggerDirective,
546
- RdxDropdownMenuContentDirective,
547
- RdxDropdownMenuItemCheckboxDirective,
548
- RdxDropdownMenuItemIndicatorDirective,
549
- RdxDropdownMenuItemRadioGroupDirective,
550
- RdxDropdownMenuItemRadioDirective,
551
- RdxDropdownMenuSelectable,
552
- RdxDropdownMenuItemDirective,
553
- RdxDropdownMenuLabelDirective,
554
- RdxDropdownMenuSeparatorDirective,
555
- RdxDropdownMenuTriggerDirective], exports: [RdxDropdownMenuTriggerDirective,
556
- RdxDropdownMenuContentDirective,
557
- RdxDropdownMenuItemCheckboxDirective,
558
- RdxDropdownMenuItemIndicatorDirective,
559
- RdxDropdownMenuItemRadioGroupDirective,
560
- RdxDropdownMenuItemRadioDirective,
561
- RdxDropdownMenuSelectable,
562
- RdxDropdownMenuItemDirective,
563
- RdxDropdownMenuLabelDirective,
564
- RdxDropdownMenuSeparatorDirective,
565
- RdxDropdownMenuTriggerDirective] }); }
566
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: Rdx }); }
567
- }
568
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: Rdx, decorators: [{
569
- type: NgModule,
570
- args: [{
571
- imports: [..._imports],
572
- exports: [..._imports]
573
- }]
574
- }] });
575
-
576
- /**
577
- * Generated bundle index. Do not edit.
578
- */
579
-
580
- export { DropdownAlign, DropdownSide, Rdx, RdxDropdownMenuContentDirective, RdxDropdownMenuItemCheckboxDirective, RdxDropdownMenuItemDirective, RdxDropdownMenuItemIndicatorDirective, RdxDropdownMenuItemRadioDirective, RdxDropdownMenuItemRadioGroupDirective, RdxDropdownMenuLabelDirective, RdxDropdownMenuSelectable, RdxDropdownMenuSeparatorDirective, RdxDropdownMenuTriggerDirective, mapRdxAlignToCdkPosition };
581
- //# sourceMappingURL=radix-ng-primitives-dropdown-menu.mjs.map