@egose/shadcn-theme-ng 0.0.28 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (237) hide show
  1. package/README.md +130 -13
  2. package/accordion/README.md +376 -34
  3. package/accordion/fesm2022/accordion.mjs +27 -39
  4. package/alert/README.md +343 -34
  5. package/alert/fesm2022/alert.mjs +47 -47
  6. package/alert-dialog/README.md +471 -5
  7. package/alert-dialog/fesm2022/alert-dialog.mjs +47 -47
  8. package/aspect-ratio/README.md +272 -5
  9. package/aspect-ratio/fesm2022/aspect-ratio.mjs +9 -9
  10. package/autocomplete/README.md +473 -34
  11. package/autocomplete/fesm2022/autocomplete.mjs +53 -71
  12. package/avatar/README.md +357 -5
  13. package/avatar/fesm2022/avatar.mjs +32 -32
  14. package/badge/README.md +289 -34
  15. package/badge/fesm2022/badge.mjs +57 -57
  16. package/basic-alert/README.md +324 -34
  17. package/basic-alert/fesm2022/basic-alert.mjs +6 -18
  18. package/breadcrumb/README.md +406 -5
  19. package/breadcrumb/fesm2022/breadcrumb.mjs +33 -39
  20. package/button/README.md +453 -34
  21. package/button/fesm2022/button.mjs +147 -219
  22. package/button/types/button.d.ts +7 -10
  23. package/button-group/README.md +318 -5
  24. package/button-group/fesm2022/button-group.mjs +20 -20
  25. package/calendar/README.md +328 -34
  26. package/calendar/fesm2022/calendar.mjs +29 -743
  27. package/card/README.md +331 -5
  28. package/card/fesm2022/card.mjs +33 -33
  29. package/carousel/README.md +333 -5
  30. package/carousel/fesm2022/carousel.mjs +39 -78
  31. package/checkbox/README.md +291 -34
  32. package/checkbox/fesm2022/checkbox.mjs +20 -58
  33. package/checkbox/types/checkbox.d.ts +5 -4
  34. package/collapsible/README.md +332 -5
  35. package/collapsible/fesm2022/collapsible.mjs +15 -15
  36. package/combobox/README.md +507 -5
  37. package/combobox/fesm2022/combobox.mjs +91 -224
  38. package/command/README.md +435 -5
  39. package/command/fesm2022/command.mjs +49 -109
  40. package/confirmation-dialog/README.md +272 -34
  41. package/confirmation-dialog/fesm2022/confirmation-dialog.mjs +15 -40
  42. package/confirmation-dialog/types/confirmation-dialog.d.ts +8 -4
  43. package/context-menu/README.md +366 -5
  44. package/context-menu/fesm2022/context-menu.mjs +9 -9
  45. package/date-picker/README.md +436 -34
  46. package/date-picker/fesm2022/date-picker.mjs +64 -267
  47. package/date-picker/types/date-picker.d.ts +7 -3
  48. package/dialog/README.md +419 -34
  49. package/dialog/fesm2022/dialog.mjs +45 -71
  50. package/drawer/README.md +395 -5
  51. package/drawer/fesm2022/drawer.mjs +44 -54
  52. package/dropdown-menu/README.md +417 -5
  53. package/dropdown-menu/fesm2022/dropdown-menu.mjs +82 -70
  54. package/dropdown-menu/types/dropdown-menu.d.ts +4 -0
  55. package/empty/README.md +329 -5
  56. package/empty/fesm2022/empty.mjs +30 -30
  57. package/field/README.md +385 -5
  58. package/field/fesm2022/field.mjs +56 -72
  59. package/form-checkbox/README.md +283 -34
  60. package/form-checkbox/fesm2022/form-checkbox.mjs +25 -85
  61. package/form-checkbox/types/form-checkbox.d.ts +7 -1
  62. package/form-date-picker/README.md +293 -34
  63. package/form-date-picker/fesm2022/form-date-picker.mjs +31 -84
  64. package/form-date-picker/types/form-date-picker.d.ts +7 -1
  65. package/form-field/README.md +327 -34
  66. package/form-field/fesm2022/form-field.mjs +33 -19
  67. package/form-field/types/form-field.d.ts +28 -20
  68. package/form-field-simple/README.md +311 -34
  69. package/form-field-simple/fesm2022/form-field-simple.mjs +4 -4
  70. package/form-searchable-multiselect/README.md +332 -34
  71. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs +31 -91
  72. package/form-searchable-multiselect/types/form-searchable-multiselect.d.ts +7 -1
  73. package/form-select/README.md +321 -34
  74. package/form-select/fesm2022/form-select.mjs +32 -149
  75. package/form-select/types/form-select.d.ts +7 -1
  76. package/form-text-input/README.md +342 -34
  77. package/form-text-input/fesm2022/form-text-input.mjs +35 -149
  78. package/form-text-input/types/form-text-input.d.ts +9 -12
  79. package/form-textarea/README.md +318 -34
  80. package/form-textarea/fesm2022/form-textarea.mjs +34 -109
  81. package/form-textarea/types/form-textarea.d.ts +8 -1
  82. package/hover-card/README.md +256 -5
  83. package/hover-card/fesm2022/hover-card.mjs +19 -19
  84. package/icon/README.md +210 -34
  85. package/icon/fesm2022/icon.mjs +8 -8
  86. package/input/README.md +240 -34
  87. package/input/fesm2022/input.mjs +17 -12
  88. package/input/types/input.d.ts +2 -1
  89. package/input-group/README.md +335 -5
  90. package/input-group/fesm2022/input-group.mjs +34 -34
  91. package/input-otp/README.md +375 -5
  92. package/input-otp/fesm2022/input-otp.mjs +26 -26
  93. package/item/README.md +385 -5
  94. package/item/fesm2022/item.mjs +53 -53
  95. package/kbd/README.md +291 -5
  96. package/kbd/fesm2022/kbd.mjs +12 -12
  97. package/label/README.md +243 -34
  98. package/label/fesm2022/label.mjs +10 -10
  99. package/label/types/label.d.ts +1 -1
  100. package/layout-simple/README.md +174 -44
  101. package/layout-simple/fesm2022/layout-simple.mjs +508 -603
  102. package/layout-simple/types/layout-simple.d.ts +179 -128
  103. package/menu/README.md +418 -0
  104. package/menu/fesm2022/menu.mjs +455 -0
  105. package/menu/package.json +24 -0
  106. package/menu/types/menu.d.ts +137 -0
  107. package/menubar/README.md +343 -5
  108. package/menubar/fesm2022/menubar.mjs +13 -13
  109. package/native-select/README.md +323 -5
  110. package/native-select/fesm2022/native-select.mjs +19 -19
  111. package/navigation-menu/README.md +369 -5
  112. package/navigation-menu/fesm2022/navigation-menu.mjs +35 -47
  113. package/package.json +183 -154
  114. package/pagination/README.md +388 -5
  115. package/pagination/fesm2022/pagination.mjs +45 -331
  116. package/popover/README.md +302 -34
  117. package/popover/fesm2022/popover.mjs +30 -30
  118. package/progress/README.md +311 -5
  119. package/progress/fesm2022/progress.mjs +13 -13
  120. package/radio-group/README.md +335 -34
  121. package/radio-group/fesm2022/radio-group.mjs +26 -19
  122. package/radio-group/types/radio-group.d.ts +1 -1
  123. package/resizable/README.md +269 -5
  124. package/resizable/fesm2022/resizable.mjs +18 -26
  125. package/scroll-area/README.md +233 -5
  126. package/scroll-area/fesm2022/scroll-area.mjs +9 -9
  127. package/searchable-multiselect/README.md +294 -34
  128. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs +28 -117
  129. package/searchable-multiselect/types/searchable-multiselect.d.ts +8 -2
  130. package/select/README.md +408 -34
  131. package/select/fesm2022/select.mjs +71 -111
  132. package/select/types/select.d.ts +3 -1
  133. package/separator/README.md +193 -34
  134. package/separator/fesm2022/separator.mjs +9 -9
  135. package/separator/types/separator.d.ts +1 -1
  136. package/sheet/README.md +282 -34
  137. package/sheet/fesm2022/sheet.mjs +41 -53
  138. package/sidebar/README.md +457 -5
  139. package/sidebar/fesm2022/sidebar.mjs +125 -227
  140. package/skeleton/README.md +217 -5
  141. package/skeleton/fesm2022/skeleton.mjs +9 -9
  142. package/slider/README.md +273 -5
  143. package/slider/fesm2022/slider.mjs +10 -80
  144. package/sonner/README.md +317 -34
  145. package/sonner/fesm2022/sonner.mjs +13 -13
  146. package/spinner/README.md +255 -34
  147. package/spinner/fesm2022/spinner.mjs +11 -11
  148. package/switch/README.md +281 -34
  149. package/switch/fesm2022/switch.mjs +13 -15
  150. package/table/README.md +423 -5
  151. package/table/fesm2022/table.mjs +41 -41
  152. package/tabs/README.md +382 -34
  153. package/tabs/fesm2022/tabs.mjs +35 -111
  154. package/textarea/README.md +282 -5
  155. package/textarea/fesm2022/textarea.mjs +9 -9
  156. package/toggle/README.md +270 -5
  157. package/toggle/fesm2022/toggle.mjs +13 -13
  158. package/toggle-group/README.md +340 -5
  159. package/toggle-group/fesm2022/toggle-group.mjs +13 -13
  160. package/toggle-group/types/toggle-group.d.ts +13 -7
  161. package/tooltip/README.md +240 -34
  162. package/tooltip/fesm2022/tooltip.mjs +14 -14
  163. package/typography/README.md +271 -5
  164. package/typography/fesm2022/typography.mjs +53 -53
  165. package/typography/types/typography.d.ts +19 -19
  166. package/utils/README.md +274 -34
  167. package/utils/fesm2022/utils.mjs +68 -44
  168. package/accordion/fesm2022/accordion.mjs.map +0 -1
  169. package/alert/fesm2022/alert.mjs.map +0 -1
  170. package/alert-dialog/fesm2022/alert-dialog.mjs.map +0 -1
  171. package/aspect-ratio/fesm2022/aspect-ratio.mjs.map +0 -1
  172. package/autocomplete/fesm2022/autocomplete.mjs.map +0 -1
  173. package/avatar/fesm2022/avatar.mjs.map +0 -1
  174. package/badge/fesm2022/badge.mjs.map +0 -1
  175. package/basic-alert/fesm2022/basic-alert.mjs.map +0 -1
  176. package/breadcrumb/fesm2022/breadcrumb.mjs.map +0 -1
  177. package/button/fesm2022/button.mjs.map +0 -1
  178. package/button-group/fesm2022/button-group.mjs.map +0 -1
  179. package/calendar/fesm2022/calendar.mjs.map +0 -1
  180. package/card/fesm2022/card.mjs.map +0 -1
  181. package/carousel/fesm2022/carousel.mjs.map +0 -1
  182. package/checkbox/fesm2022/checkbox.mjs.map +0 -1
  183. package/collapsible/fesm2022/collapsible.mjs.map +0 -1
  184. package/combobox/fesm2022/combobox.mjs.map +0 -1
  185. package/command/fesm2022/command.mjs.map +0 -1
  186. package/confirmation-dialog/fesm2022/confirmation-dialog.mjs.map +0 -1
  187. package/context-menu/fesm2022/context-menu.mjs.map +0 -1
  188. package/date-picker/fesm2022/date-picker.mjs.map +0 -1
  189. package/dialog/fesm2022/dialog.mjs.map +0 -1
  190. package/drawer/fesm2022/drawer.mjs.map +0 -1
  191. package/dropdown-menu/fesm2022/dropdown-menu.mjs.map +0 -1
  192. package/empty/fesm2022/empty.mjs.map +0 -1
  193. package/field/fesm2022/field.mjs.map +0 -1
  194. package/form-checkbox/fesm2022/form-checkbox.mjs.map +0 -1
  195. package/form-date-picker/fesm2022/form-date-picker.mjs.map +0 -1
  196. package/form-field/fesm2022/form-field.mjs.map +0 -1
  197. package/form-field-simple/fesm2022/form-field-simple.mjs.map +0 -1
  198. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs.map +0 -1
  199. package/form-select/fesm2022/form-select.mjs.map +0 -1
  200. package/form-text-input/fesm2022/form-text-input.mjs.map +0 -1
  201. package/form-textarea/fesm2022/form-textarea.mjs.map +0 -1
  202. package/hover-card/fesm2022/hover-card.mjs.map +0 -1
  203. package/icon/fesm2022/icon.mjs.map +0 -1
  204. package/input/fesm2022/input.mjs.map +0 -1
  205. package/input-group/fesm2022/input-group.mjs.map +0 -1
  206. package/input-otp/fesm2022/input-otp.mjs.map +0 -1
  207. package/item/fesm2022/item.mjs.map +0 -1
  208. package/kbd/fesm2022/kbd.mjs.map +0 -1
  209. package/label/fesm2022/label.mjs.map +0 -1
  210. package/layout-simple/fesm2022/layout-simple.mjs.map +0 -1
  211. package/menubar/fesm2022/menubar.mjs.map +0 -1
  212. package/native-select/fesm2022/native-select.mjs.map +0 -1
  213. package/navigation-menu/fesm2022/navigation-menu.mjs.map +0 -1
  214. package/pagination/fesm2022/pagination.mjs.map +0 -1
  215. package/popover/fesm2022/popover.mjs.map +0 -1
  216. package/progress/fesm2022/progress.mjs.map +0 -1
  217. package/radio-group/fesm2022/radio-group.mjs.map +0 -1
  218. package/resizable/fesm2022/resizable.mjs.map +0 -1
  219. package/scroll-area/fesm2022/scroll-area.mjs.map +0 -1
  220. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs.map +0 -1
  221. package/select/fesm2022/select.mjs.map +0 -1
  222. package/separator/fesm2022/separator.mjs.map +0 -1
  223. package/sheet/fesm2022/sheet.mjs.map +0 -1
  224. package/sidebar/fesm2022/sidebar.mjs.map +0 -1
  225. package/skeleton/fesm2022/skeleton.mjs.map +0 -1
  226. package/slider/fesm2022/slider.mjs.map +0 -1
  227. package/sonner/fesm2022/sonner.mjs.map +0 -1
  228. package/spinner/fesm2022/spinner.mjs.map +0 -1
  229. package/switch/fesm2022/switch.mjs.map +0 -1
  230. package/table/fesm2022/table.mjs.map +0 -1
  231. package/tabs/fesm2022/tabs.mjs.map +0 -1
  232. package/textarea/fesm2022/textarea.mjs.map +0 -1
  233. package/toggle/fesm2022/toggle.mjs.map +0 -1
  234. package/toggle-group/fesm2022/toggle-group.mjs.map +0 -1
  235. package/tooltip/fesm2022/tooltip.mjs.map +0 -1
  236. package/typography/fesm2022/typography.mjs.map +0 -1
  237. package/utils/fesm2022/utils.mjs.map +0 -1
@@ -0,0 +1,455 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, computed, ChangeDetectionStrategy, Component, Directive, booleanAttribute, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/cdk/menu';
4
+ import { CdkMenu, CdkMenuBar, CdkMenuItem, CdkMenuGroup, CdkMenuItemCheckbox, CdkMenuItemRadio } from '@angular/cdk/menu';
5
+ import { hlm } from '@egose/shadcn-theme-ng/utils';
6
+ import { cva } from 'class-variance-authority';
7
+ import { NgIcon, provideIcons } from '@ng-icons/core';
8
+ import { lucideCheck, lucideCircle, lucideChevronRight } from '@ng-icons/lucide';
9
+ import { HlmIcon, provideHlmIconConfig } from '@egose/shadcn-theme-ng/icon';
10
+
11
+ const menuVariants = cva("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 tw:data-[side=bottom]:slide-in-from-top-2 tw:data-[side=left]:slide-in-from-right-2 tw:data-[side=right]:slide-in-from-left-2 tw:data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-top overflow-y-auto overflow-x-hidden rounded-md border p-1 shadow-md", {
12
+ variants: {
13
+ variant: {
14
+ default: "my-0.5",
15
+ menubar: "my-2",
16
+ },
17
+ },
18
+ defaultVariants: {
19
+ variant: 'default',
20
+ },
21
+ });
22
+ class HlmMenu {
23
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
24
+ _computedClass = computed(() => hlm(menuVariants({ variant: this.variant() }), this.userClass()), /* @ts-ignore */
25
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
26
+ variant = input('default', /* @ts-ignore */
27
+ ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
28
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenu, deps: [], target: i0.ɵɵFactoryTarget.Component });
29
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenu, isStandalone: true, selector: "hlm-menu", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null }, variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ }
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenu, decorators: [{
32
+ type: Component,
33
+ args: [{
34
+ selector: 'hlm-menu',
35
+ host: {
36
+ '[class]': '_computedClass()',
37
+ },
38
+ hostDirectives: [CdkMenu],
39
+ template: ` <ng-content /> `,
40
+ changeDetection: ChangeDetectionStrategy.OnPush,
41
+ }]
42
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] } });
43
+
44
+ class HlmMenuBar {
45
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
46
+ _computedClass = computed(() => hlm("bg-background shadow-xs flex h-9 items-center gap-1 rounded-md border p-1", this.userClass()), /* @ts-ignore */
47
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
48
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBar, deps: [], target: i0.ɵɵFactoryTarget.Component });
49
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuBar, isStandalone: true, selector: "hlm-menu-bar", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenuBar }], ngImport: i0, template: '<ng-content/>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBar, decorators: [{
52
+ type: Component,
53
+ args: [{
54
+ selector: 'hlm-menu-bar',
55
+ host: {
56
+ '[class]': '_computedClass()',
57
+ },
58
+ hostDirectives: [CdkMenuBar],
59
+ template: '<ng-content/>',
60
+ changeDetection: ChangeDetectionStrategy.OnPush,
61
+ }]
62
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
63
+
64
+ class HlmMenuBarItem {
65
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
66
+ _computedClass = computed(() => hlm("focus:bg-secondary focus:text-secondary-foreground aria-expanded:bg-secondary aria-expanded:text-secondary-foreground flex select-none items-center rounded-sm px-2 py-1 text-sm font-medium outline-none", this.userClass()), /* @ts-ignore */
67
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
68
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
69
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuBarItem, isStandalone: true, selector: "[hlmMenuBarItem]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenuItem }], ngImport: i0 });
70
+ }
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarItem, decorators: [{
72
+ type: Directive,
73
+ args: [{
74
+ selector: '[hlmMenuBarItem]',
75
+ host: {
76
+ '[class]': '_computedClass()',
77
+ },
78
+ hostDirectives: [CdkMenuItem],
79
+ }]
80
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
81
+
82
+ class HlmMenuGroup {
83
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuGroup, deps: [], target: i0.ɵɵFactoryTarget.Component });
84
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "22.1.3", type: HlmMenuGroup, isStandalone: true, selector: "hlm-menu-group", host: { classAttribute: "block" }, hostDirectives: [{ directive: i1.CdkMenuGroup }], ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
85
+ }
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuGroup, decorators: [{
87
+ type: Component,
88
+ args: [{
89
+ selector: 'hlm-menu-group',
90
+ host: {
91
+ class: 'block',
92
+ },
93
+ hostDirectives: [CdkMenuGroup],
94
+ template: ` <ng-content /> `,
95
+ changeDetection: ChangeDetectionStrategy.OnPush,
96
+ }]
97
+ }] });
98
+
99
+ class HlmMenuItem {
100
+ variant = input('default', /* @ts-ignore */
101
+ ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
102
+ inset = input(false, { ...(ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
103
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
104
+ _computedClass = computed(() => hlm("hover:bg-secondary hover:text-secondary-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[ng-icon]:!text-destructive [&_ng-icon]:text-muted-foreground relative flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled]:pointer-events-none data-[inset]:pl-8 data-[disabled]:opacity-50 [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0", this.userClass()), /* @ts-ignore */
105
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
106
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItem, deps: [], target: i0.ɵɵFactoryTarget.Directive });
107
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItem, isStandalone: true, selector: "[hlmMenuItem]", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null }, inset: { classPropertyName: "inset", publicName: "inset", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-variant": "variant()", "attr.data-inset": "inset() ? \"\" : null" } }, hostDirectives: [{ directive: i1.CdkMenuItem, inputs: ["cdkMenuItemDisabled", "disabled"], outputs: ["cdkMenuItemTriggered", "triggered"] }], ngImport: i0 });
108
+ }
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItem, decorators: [{
110
+ type: Directive,
111
+ args: [{
112
+ selector: '[hlmMenuItem]',
113
+ host: {
114
+ '[class]': '_computedClass()',
115
+ '[attr.data-variant]': 'variant()',
116
+ '[attr.data-inset]': 'inset() ? "" : null',
117
+ },
118
+ hostDirectives: [
119
+ {
120
+ directive: CdkMenuItem,
121
+ inputs: ['cdkMenuItemDisabled: disabled'],
122
+ outputs: ['cdkMenuItemTriggered: triggered'],
123
+ },
124
+ ],
125
+ }]
126
+ }], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }], inset: [{ type: i0.Input, args: [{ isSignal: true, alias: "inset", required: false }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
127
+
128
+ class HlmMenuItemCheck {
129
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
130
+ _computedClass = computed(() => hlm("absolute left-2 flex h-3.5 w-3.5 items-center justify-center opacity-0 group-[.checked]:opacity-100", this.userClass()), /* @ts-ignore */
131
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
132
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemCheck, deps: [], target: i0.ɵɵFactoryTarget.Component });
133
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemCheck, isStandalone: true, selector: "hlm-menu-item-check", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideCheck })], ngImport: i0, template: `
134
+ <!-- Using 1rem for size to mimick h-4 w-4 -->
135
+ <ng-icon hlm size="1rem" name="lucideCheck" />
136
+ `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
137
+ }
138
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemCheck, decorators: [{
139
+ type: Component,
140
+ args: [{
141
+ selector: 'hlm-menu-item-check',
142
+ providers: [provideIcons({ lucideCheck })],
143
+ imports: [NgIcon, HlmIcon],
144
+ template: `
145
+ <!-- Using 1rem for size to mimick h-4 w-4 -->
146
+ <ng-icon hlm size="1rem" name="lucideCheck" />
147
+ `,
148
+ host: {
149
+ '[class]': '_computedClass()',
150
+ },
151
+ changeDetection: ChangeDetectionStrategy.OnPush,
152
+ }]
153
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
154
+
155
+ class HlmMenuItemCheckbox {
156
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
157
+ _computedClass = computed(() => hlm("hover:bg-secondary hover:text-secondary-foreground focus-visible:bg-secondary focus-visible:text-secondary-foreground group relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors disabled:pointer-events-none disabled:opacity-50", this.userClass()), /* @ts-ignore */
158
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
159
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemCheckbox, deps: [], target: i0.ɵɵFactoryTarget.Directive });
160
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemCheckbox, isStandalone: true, selector: "[hlmMenuItemCheckbox]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenuItemCheckbox, inputs: ["cdkMenuItemDisabled", "disabled", "cdkMenuItemChecked", "checked"], outputs: ["cdkMenuItemTriggered", "triggered"] }], ngImport: i0 });
161
+ }
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemCheckbox, decorators: [{
163
+ type: Directive,
164
+ args: [{
165
+ selector: '[hlmMenuItemCheckbox]',
166
+ host: {
167
+ '[class]': '_computedClass()',
168
+ },
169
+ hostDirectives: [
170
+ {
171
+ directive: CdkMenuItemCheckbox,
172
+ inputs: ['cdkMenuItemDisabled: disabled', 'cdkMenuItemChecked: checked'],
173
+ outputs: ['cdkMenuItemTriggered: triggered'],
174
+ },
175
+ ],
176
+ }]
177
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
178
+
179
+ class HlmMenuItemIcon {
180
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
181
+ _computedClass = computed(() => hlm("mr-2", this.userClass()), /* @ts-ignore */
182
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
183
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemIcon, deps: [], target: i0.ɵɵFactoryTarget.Directive });
184
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemIcon, isStandalone: true, selector: "[hlmMenuIcon]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideHlmIconConfig({ size: 'sm' })], ngImport: i0 });
185
+ }
186
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemIcon, decorators: [{
187
+ type: Directive,
188
+ args: [{
189
+ selector: '[hlmMenuIcon]',
190
+ providers: [provideHlmIconConfig({ size: 'sm' })],
191
+ host: {
192
+ '[class]': '_computedClass()',
193
+ },
194
+ }]
195
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
196
+
197
+ class HlmMenuItemRadio {
198
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
199
+ _computedClass = computed(() => hlm("hover:bg-secondary hover:text-secondary-foreground focus-visible:bg-secondary focus-visible:text-secondary-foreground group relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors disabled:pointer-events-none disabled:opacity-50", this.userClass()), /* @ts-ignore */
200
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
201
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemRadio, deps: [], target: i0.ɵɵFactoryTarget.Directive });
202
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemRadio, isStandalone: true, selector: "[hlmMenuItemRadio]", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenuItemRadio, inputs: ["cdkMenuItemDisabled", "disabled", "cdkMenuItemChecked", "checked"], outputs: ["cdkMenuItemTriggered", "triggered"] }], ngImport: i0 });
203
+ }
204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemRadio, decorators: [{
205
+ type: Directive,
206
+ args: [{
207
+ selector: '[hlmMenuItemRadio]',
208
+ host: {
209
+ '[class]': '_computedClass()',
210
+ },
211
+ hostDirectives: [
212
+ {
213
+ directive: CdkMenuItemRadio,
214
+ inputs: ['cdkMenuItemDisabled: disabled', 'cdkMenuItemChecked: checked'],
215
+ outputs: ['cdkMenuItemTriggered: triggered'],
216
+ },
217
+ ],
218
+ }]
219
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
220
+
221
+ class HlmMenuItemRadioIndicator {
222
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
223
+ _computedClass = computed(() => hlm("absolute left-2 flex h-3.5 w-3.5 items-center justify-center opacity-0 group-[.checked]:opacity-100", this.userClass()), /* @ts-ignore */
224
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
225
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemRadioIndicator, deps: [], target: i0.ɵɵFactoryTarget.Component });
226
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemRadioIndicator, isStandalone: true, selector: "hlm-menu-item-radio", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideCircle })], ngImport: i0, template: "\n <!-- Using 0.5rem for size to mimick h-2 w-2 -->\n <ng-icon hlm size=\"0.5rem\" class=\"*:*:fill-current\" name=\"lucideCircle\" />\n ", isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
227
+ }
228
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemRadioIndicator, decorators: [{
229
+ type: Component,
230
+ args: [{
231
+ selector: 'hlm-menu-item-radio',
232
+ providers: [provideIcons({ lucideCircle })],
233
+ imports: [NgIcon, HlmIcon],
234
+ template: "\n <!-- Using 0.5rem for size to mimick h-2 w-2 -->\n <ng-icon hlm size=\"0.5rem\" class=\"*:*:fill-current\" name=\"lucideCircle\" />\n ",
235
+ host: {
236
+ '[class]': '_computedClass()',
237
+ },
238
+ changeDetection: ChangeDetectionStrategy.OnPush,
239
+ }]
240
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
241
+
242
+ class HlmMenuItemSubIndicator {
243
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
244
+ _computedClass = computed(() => hlm("ml-auto size-4", this.userClass()), /* @ts-ignore */
245
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
246
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemSubIndicator, deps: [], target: i0.ɵɵFactoryTarget.Component });
247
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuItemSubIndicator, isStandalone: true, selector: "hlm-menu-item-sub-indicator", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, providers: [provideIcons({ lucideChevronRight })], ngImport: i0, template: " <ng-icon hlm size=\"sm\" name=\"lucideChevronRight\" class=\"text-popover-foreground\" /> ", isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: HlmIcon, selector: "ng-icon[hlm]", inputs: ["size"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
248
+ }
249
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemSubIndicator, decorators: [{
250
+ type: Component,
251
+ args: [{
252
+ selector: 'hlm-menu-item-sub-indicator',
253
+ providers: [provideIcons({ lucideChevronRight })],
254
+ imports: [NgIcon, HlmIcon],
255
+ template: " <ng-icon hlm size=\"sm\" name=\"lucideChevronRight\" class=\"text-popover-foreground\" /> ",
256
+ host: {
257
+ '[class]': '_computedClass()',
258
+ },
259
+ changeDetection: ChangeDetectionStrategy.OnPush,
260
+ }]
261
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
262
+
263
+ class HlmMenuLabel {
264
+ inset = input(false, { ...(ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
265
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
266
+ _computedClass = computed(() => hlm("block px-2 py-1.5 text-sm font-semibold data-[inset]:pl-8", this.userClass()), /* @ts-ignore */
267
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
268
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuLabel, deps: [], target: i0.ɵɵFactoryTarget.Component });
269
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuLabel, isStandalone: true, selector: "hlm-menu-label", inputs: { inset: { classPropertyName: "inset", publicName: "inset", isSignal: true, isRequired: false, transformFunction: null }, userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()", "attr.data-inset": "inset() ? \"\" : null" } }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
270
+ }
271
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuLabel, decorators: [{
272
+ type: Component,
273
+ args: [{
274
+ selector: 'hlm-menu-label',
275
+ template: ` <ng-content /> `,
276
+ host: {
277
+ '[class]': '_computedClass()',
278
+ '[attr.data-inset]': 'inset() ? "" : null',
279
+ },
280
+ changeDetection: ChangeDetectionStrategy.OnPush,
281
+ }]
282
+ }], propDecorators: { inset: [{ type: i0.Input, args: [{ isSignal: true, alias: "inset", required: false }] }], userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
283
+
284
+ class HlmMenuSeparator {
285
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
286
+ _computedClass = computed(() => hlm("bg-border -mx-1 my-1 block h-px", this.userClass()), /* @ts-ignore */
287
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
288
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuSeparator, deps: [], target: i0.ɵɵFactoryTarget.Component });
289
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuSeparator, isStandalone: true, selector: "hlm-menu-separator", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
290
+ }
291
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuSeparator, decorators: [{
292
+ type: Component,
293
+ args: [{
294
+ selector: 'hlm-menu-separator',
295
+ template: '',
296
+ host: {
297
+ '[class]': '_computedClass()',
298
+ },
299
+ changeDetection: ChangeDetectionStrategy.OnPush,
300
+ }]
301
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
302
+
303
+ class HlmMenuShortcut {
304
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
305
+ _computedClass = computed(() => hlm("text-muted-foreground ml-auto text-xs tracking-widest", this.userClass()), /* @ts-ignore */
306
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
307
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuShortcut, deps: [], target: i0.ɵɵFactoryTarget.Component });
308
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmMenuShortcut, isStandalone: true, selector: "hlm-menu-shortcut", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
309
+ }
310
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuShortcut, decorators: [{
311
+ type: Component,
312
+ args: [{
313
+ selector: 'hlm-menu-shortcut',
314
+ template: ` <ng-content /> `,
315
+ host: {
316
+ '[class]': '_computedClass()',
317
+ },
318
+ changeDetection: ChangeDetectionStrategy.OnPush,
319
+ }]
320
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
321
+
322
+ class HlmSubMenu {
323
+ userClass = input('', { ...(ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {}), alias: 'class' });
324
+ _computedClass = computed(() => hlm("border-border bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out tw:data-[state=closed]:fade-out-0 tw:data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 tw:data-[side=bottom]:slide-in-from-top-2 tw:data-[side=left]:slide-in-from-right-2 tw:data-[side=right]:slide-in-from-left-2 tw:data-[side=top]:slide-in-from-bottom-2 min-w-[8rem] overflow-hidden rounded-md border p-1 shadow-lg", this.userClass()), /* @ts-ignore */
325
+ ...(ngDevMode ? [{ debugName: "_computedClass" }] : /* istanbul ignore next */ []));
326
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmSubMenu, deps: [], target: i0.ɵɵFactoryTarget.Component });
327
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", type: HlmSubMenu, isStandalone: true, selector: "hlm-sub-menu", inputs: { userClass: { classPropertyName: "userClass", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class": "_computedClass()" } }, hostDirectives: [{ directive: i1.CdkMenu }], ngImport: i0, template: ` <ng-content /> `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
328
+ }
329
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmSubMenu, decorators: [{
330
+ type: Component,
331
+ args: [{
332
+ selector: 'hlm-sub-menu',
333
+ host: {
334
+ '[class]': '_computedClass()',
335
+ },
336
+ hostDirectives: [CdkMenu],
337
+ template: ` <ng-content /> `,
338
+ changeDetection: ChangeDetectionStrategy.OnPush,
339
+ }]
340
+ }], propDecorators: { userClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }] } });
341
+
342
+ /*
343
+ * Public API Surface of menu
344
+ */
345
+ const HlmMenuItemImports = [
346
+ HlmMenuItem,
347
+ HlmMenuItemIcon,
348
+ HlmMenuGroup,
349
+ HlmMenuItemSubIndicator,
350
+ HlmMenuItemRadioIndicator,
351
+ HlmMenuItemCheck,
352
+ HlmMenuShortcut,
353
+ HlmMenuItemCheckbox,
354
+ HlmMenuItemRadio,
355
+ ];
356
+ const HlmMenuStructureImports = [HlmMenuLabel, HlmMenuSeparator];
357
+ const HlmMenuImports = [...HlmMenuItemImports, ...HlmMenuStructureImports, HlmMenu, HlmSubMenu];
358
+ const HlmMenuBarImports = [...HlmMenuImports, HlmMenuBar, HlmMenuBarItem];
359
+ class HlmMenuItemModule {
360
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
361
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemModule, imports: [HlmMenuItem,
362
+ HlmMenuItemIcon,
363
+ HlmMenuGroup,
364
+ HlmMenuItemSubIndicator,
365
+ HlmMenuItemRadioIndicator,
366
+ HlmMenuItemCheck,
367
+ HlmMenuShortcut,
368
+ HlmMenuItemCheckbox,
369
+ HlmMenuItemRadio], exports: [HlmMenuItem,
370
+ HlmMenuItemIcon,
371
+ HlmMenuGroup,
372
+ HlmMenuItemSubIndicator,
373
+ HlmMenuItemRadioIndicator,
374
+ HlmMenuItemCheck,
375
+ HlmMenuShortcut,
376
+ HlmMenuItemCheckbox,
377
+ HlmMenuItemRadio] });
378
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemModule, imports: [HlmMenuItemSubIndicator,
379
+ HlmMenuItemRadioIndicator,
380
+ HlmMenuItemCheck] });
381
+ }
382
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuItemModule, decorators: [{
383
+ type: NgModule,
384
+ args: [{
385
+ imports: [...HlmMenuItemImports],
386
+ exports: [...HlmMenuItemImports],
387
+ }]
388
+ }] });
389
+ class HlmMenuModule {
390
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
391
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuModule, imports: [HlmMenuItem,
392
+ HlmMenuItemIcon,
393
+ HlmMenuGroup,
394
+ HlmMenuItemSubIndicator,
395
+ HlmMenuItemRadioIndicator,
396
+ HlmMenuItemCheck,
397
+ HlmMenuShortcut,
398
+ HlmMenuItemCheckbox,
399
+ HlmMenuItemRadio, HlmMenuLabel, HlmMenuSeparator, HlmMenu, HlmSubMenu], exports: [HlmMenuItem,
400
+ HlmMenuItemIcon,
401
+ HlmMenuGroup,
402
+ HlmMenuItemSubIndicator,
403
+ HlmMenuItemRadioIndicator,
404
+ HlmMenuItemCheck,
405
+ HlmMenuShortcut,
406
+ HlmMenuItemCheckbox,
407
+ HlmMenuItemRadio, HlmMenuLabel, HlmMenuSeparator, HlmMenu, HlmSubMenu] });
408
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuModule, imports: [HlmMenuItemSubIndicator,
409
+ HlmMenuItemRadioIndicator,
410
+ HlmMenuItemCheck] });
411
+ }
412
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuModule, decorators: [{
413
+ type: NgModule,
414
+ args: [{
415
+ imports: [...HlmMenuImports],
416
+ exports: [...HlmMenuImports],
417
+ }]
418
+ }] });
419
+ class HlmMenuBarModule {
420
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
421
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarModule, imports: [HlmMenuItem,
422
+ HlmMenuItemIcon,
423
+ HlmMenuGroup,
424
+ HlmMenuItemSubIndicator,
425
+ HlmMenuItemRadioIndicator,
426
+ HlmMenuItemCheck,
427
+ HlmMenuShortcut,
428
+ HlmMenuItemCheckbox,
429
+ HlmMenuItemRadio, HlmMenuLabel, HlmMenuSeparator, HlmMenu, HlmSubMenu, HlmMenuBar, HlmMenuBarItem], exports: [HlmMenuItem,
430
+ HlmMenuItemIcon,
431
+ HlmMenuGroup,
432
+ HlmMenuItemSubIndicator,
433
+ HlmMenuItemRadioIndicator,
434
+ HlmMenuItemCheck,
435
+ HlmMenuShortcut,
436
+ HlmMenuItemCheckbox,
437
+ HlmMenuItemRadio, HlmMenuLabel, HlmMenuSeparator, HlmMenu, HlmSubMenu, HlmMenuBar, HlmMenuBarItem] });
438
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarModule, imports: [HlmMenuItemSubIndicator,
439
+ HlmMenuItemRadioIndicator,
440
+ HlmMenuItemCheck] });
441
+ }
442
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: HlmMenuBarModule, decorators: [{
443
+ type: NgModule,
444
+ args: [{
445
+ imports: [...HlmMenuBarImports],
446
+ exports: [...HlmMenuBarImports],
447
+ }]
448
+ }] });
449
+
450
+ /**
451
+ * Generated bundle index. Do not edit.
452
+ */
453
+
454
+ export { HlmMenu, HlmMenuBar, HlmMenuBarImports, HlmMenuBarItem, HlmMenuBarModule, HlmMenuGroup, HlmMenuImports, HlmMenuItem, HlmMenuItemCheck, HlmMenuItemCheckbox, HlmMenuItemIcon, HlmMenuItemImports, HlmMenuItemModule, HlmMenuItemRadio, HlmMenuItemRadioIndicator, HlmMenuItemSubIndicator, HlmMenuLabel, HlmMenuModule, HlmMenuSeparator, HlmMenuShortcut, HlmMenuStructureImports, HlmSubMenu, menuVariants };
455
+
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "menu",
3
+ "version": "0.0.1",
4
+ "peerDependencies": {
5
+ "@angular/common": "^20.3.0 || ^22.0.0",
6
+ "@angular/core": "^20.3.0 || ^22.0.0"
7
+ },
8
+ "dependencies": {
9
+ "tslib": "^2.3.0"
10
+ },
11
+ "sideEffects": false,
12
+ "module": "fesm2022/menu.mjs",
13
+ "typings": "types/menu.d.ts",
14
+ "exports": {
15
+ "./package.json": {
16
+ "default": "./package.json"
17
+ },
18
+ ".": {
19
+ "types": "./types/menu.d.ts",
20
+ "default": "./fesm2022/menu.mjs"
21
+ }
22
+ },
23
+ "type": "module"
24
+ }
@@ -0,0 +1,137 @@
1
+ import * as i0 from '@angular/core';
2
+ import * as class_variance_authority_types from 'class-variance-authority/types';
3
+ import { ClassValue } from 'clsx';
4
+ import * as i1 from '@angular/cdk/menu';
5
+ import { BooleanInput } from '@angular/cdk/coercion';
6
+
7
+ declare const menuVariants: (props?: ({
8
+ variant?: "default" | "menubar" | null | undefined;
9
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
10
+ declare class HlmMenu {
11
+ readonly userClass: i0.InputSignal<ClassValue>;
12
+ protected readonly _computedClass: i0.Signal<string>;
13
+ readonly variant: i0.InputSignal<"default" | "menubar" | null | undefined>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenu, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenu, "hlm-menu", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.CdkMenu; inputs: {}; outputs: {}; }]>;
16
+ }
17
+
18
+ declare class HlmMenuBar {
19
+ readonly userClass: i0.InputSignal<ClassValue>;
20
+ protected _computedClass: i0.Signal<string>;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuBar, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuBar, "hlm-menu-bar", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.CdkMenuBar; inputs: {}; outputs: {}; }]>;
23
+ }
24
+
25
+ declare class HlmMenuBarItem {
26
+ readonly userClass: i0.InputSignal<ClassValue>;
27
+ protected readonly _computedClass: i0.Signal<string>;
28
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuBarItem, never>;
29
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmMenuBarItem, "[hlmMenuBarItem]", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.CdkMenuItem; inputs: {}; outputs: {}; }]>;
30
+ }
31
+
32
+ declare class HlmMenuGroup {
33
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuGroup, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuGroup, "hlm-menu-group", never, {}, {}, never, ["*"], true, [{ directive: typeof i1.CdkMenuGroup; inputs: {}; outputs: {}; }]>;
35
+ }
36
+
37
+ declare class HlmMenuLabel {
38
+ readonly inset: i0.InputSignalWithTransform<boolean, BooleanInput>;
39
+ readonly userClass: i0.InputSignal<ClassValue>;
40
+ protected _computedClass: i0.Signal<string>;
41
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuLabel, never>;
42
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuLabel, "hlm-menu-label", never, { "inset": { "alias": "inset"; "required": false; "isSignal": true; }; "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
43
+ }
44
+
45
+ declare class HlmMenuSeparator {
46
+ readonly userClass: i0.InputSignal<ClassValue>;
47
+ protected readonly _computedClass: i0.Signal<string>;
48
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuSeparator, never>;
49
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuSeparator, "hlm-menu-separator", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
50
+ }
51
+
52
+ declare class HlmSubMenu {
53
+ readonly userClass: i0.InputSignal<ClassValue>;
54
+ protected readonly _computedClass: i0.Signal<string>;
55
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmSubMenu, never>;
56
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmSubMenu, "hlm-sub-menu", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, [{ directive: typeof i1.CdkMenu; inputs: {}; outputs: {}; }]>;
57
+ }
58
+
59
+ declare class HlmMenuItem {
60
+ readonly variant: i0.InputSignal<"default" | "destructive">;
61
+ readonly inset: i0.InputSignalWithTransform<boolean, BooleanInput>;
62
+ readonly userClass: i0.InputSignal<ClassValue>;
63
+ protected readonly _computedClass: i0.Signal<string>;
64
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItem, never>;
65
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmMenuItem, "[hlmMenuItem]", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "inset": { "alias": "inset"; "required": false; "isSignal": true; }; "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.CdkMenuItem; inputs: { "cdkMenuItemDisabled": "disabled"; }; outputs: { "cdkMenuItemTriggered": "triggered"; }; }]>;
66
+ }
67
+
68
+ declare class HlmMenuItemIcon {
69
+ readonly userClass: i0.InputSignal<ClassValue>;
70
+ protected _computedClass: i0.Signal<string>;
71
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemIcon, never>;
72
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmMenuItemIcon, "[hlmMenuIcon]", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
73
+ }
74
+
75
+ declare class HlmMenuItemSubIndicator {
76
+ readonly userClass: i0.InputSignal<ClassValue>;
77
+ protected readonly _computedClass: i0.Signal<string>;
78
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemSubIndicator, never>;
79
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuItemSubIndicator, "hlm-menu-item-sub-indicator", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
80
+ }
81
+
82
+ declare class HlmMenuItemRadioIndicator {
83
+ readonly userClass: i0.InputSignal<ClassValue>;
84
+ protected readonly _computedClass: i0.Signal<string>;
85
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemRadioIndicator, never>;
86
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuItemRadioIndicator, "hlm-menu-item-radio", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
87
+ }
88
+
89
+ declare class HlmMenuItemCheck {
90
+ readonly userClass: i0.InputSignal<ClassValue>;
91
+ protected _computedClass: i0.Signal<string>;
92
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemCheck, never>;
93
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuItemCheck, "hlm-menu-item-check", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
94
+ }
95
+
96
+ declare class HlmMenuShortcut {
97
+ readonly userClass: i0.InputSignal<ClassValue>;
98
+ protected _computedClass: i0.Signal<string>;
99
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuShortcut, never>;
100
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmMenuShortcut, "hlm-menu-shortcut", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
101
+ }
102
+
103
+ declare class HlmMenuItemCheckbox {
104
+ readonly userClass: i0.InputSignal<ClassValue>;
105
+ protected readonly _computedClass: i0.Signal<string>;
106
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemCheckbox, never>;
107
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmMenuItemCheckbox, "[hlmMenuItemCheckbox]", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.CdkMenuItemCheckbox; inputs: { "cdkMenuItemDisabled": "disabled"; "cdkMenuItemChecked": "checked"; }; outputs: { "cdkMenuItemTriggered": "triggered"; }; }]>;
108
+ }
109
+
110
+ declare class HlmMenuItemRadio {
111
+ readonly userClass: i0.InputSignal<ClassValue>;
112
+ protected readonly _computedClass: i0.Signal<string>;
113
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemRadio, never>;
114
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmMenuItemRadio, "[hlmMenuItemRadio]", never, { "userClass": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.CdkMenuItemRadio; inputs: { "cdkMenuItemDisabled": "disabled"; "cdkMenuItemChecked": "checked"; }; outputs: { "cdkMenuItemTriggered": "triggered"; }; }]>;
115
+ }
116
+
117
+ declare const HlmMenuItemImports: (typeof HlmMenuGroup)[];
118
+ declare const HlmMenuStructureImports: readonly [typeof HlmMenuLabel, typeof HlmMenuSeparator];
119
+ declare const HlmMenuImports: readonly [...(typeof HlmMenuGroup)[], typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu];
120
+ declare const HlmMenuBarImports: readonly [...(typeof HlmMenuGroup)[], typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu, typeof HlmMenuBar, typeof HlmMenuBarItem];
121
+ declare class HlmMenuItemModule {
122
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuItemModule, never>;
123
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HlmMenuItemModule, never, [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio], [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio]>;
124
+ static ɵinj: i0.ɵɵInjectorDeclaration<HlmMenuItemModule>;
125
+ }
126
+ declare class HlmMenuModule {
127
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuModule, never>;
128
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HlmMenuModule, never, [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio, typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu], [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio, typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu]>;
129
+ static ɵinj: i0.ɵɵInjectorDeclaration<HlmMenuModule>;
130
+ }
131
+ declare class HlmMenuBarModule {
132
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmMenuBarModule, never>;
133
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HlmMenuBarModule, never, [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio, typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu, typeof HlmMenuBar, typeof HlmMenuBarItem], [typeof HlmMenuItem, typeof HlmMenuItemIcon, typeof HlmMenuGroup, typeof HlmMenuItemSubIndicator, typeof HlmMenuItemRadioIndicator, typeof HlmMenuItemCheck, typeof HlmMenuShortcut, typeof HlmMenuItemCheckbox, typeof HlmMenuItemRadio, typeof HlmMenuLabel, typeof HlmMenuSeparator, typeof HlmMenu, typeof HlmSubMenu, typeof HlmMenuBar, typeof HlmMenuBarItem]>;
134
+ static ɵinj: i0.ɵɵInjectorDeclaration<HlmMenuBarModule>;
135
+ }
136
+
137
+ export { HlmMenu, HlmMenuBar, HlmMenuBarImports, HlmMenuBarItem, HlmMenuBarModule, HlmMenuGroup, HlmMenuImports, HlmMenuItem, HlmMenuItemCheck, HlmMenuItemCheckbox, HlmMenuItemIcon, HlmMenuItemImports, HlmMenuItemModule, HlmMenuItemRadio, HlmMenuItemRadioIndicator, HlmMenuItemSubIndicator, HlmMenuLabel, HlmMenuModule, HlmMenuSeparator, HlmMenuShortcut, HlmMenuStructureImports, HlmSubMenu, menuVariants };