@loomui-ng/ui 0.0.0-stage → 0.1.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 (270) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +46 -2
  3. package/accordion/README.md +38 -0
  4. package/alert/README.md +32 -0
  5. package/alert-dialog/README.md +37 -0
  6. package/aspect-ratio/README.md +24 -0
  7. package/attachment/README.md +40 -0
  8. package/avatar/README.md +34 -0
  9. package/badge/README.md +29 -0
  10. package/breadcrumb/README.md +33 -0
  11. package/bubble/README.md +32 -0
  12. package/button/README.md +31 -0
  13. package/button-group/README.md +30 -0
  14. package/calendar/README.md +35 -0
  15. package/card/README.md +41 -0
  16. package/carousel/README.md +41 -0
  17. package/chart/README.md +25 -0
  18. package/checkbox/README.md +31 -0
  19. package/collapsible/README.md +31 -0
  20. package/combobox/README.md +47 -0
  21. package/command/README.md +44 -0
  22. package/context-menu/README.md +36 -0
  23. package/data-table/README.md +39 -0
  24. package/date-picker/README.md +23 -0
  25. package/dialog/README.md +52 -0
  26. package/direction/README.md +19 -0
  27. package/drawer/README.md +37 -0
  28. package/dropdown-menu/README.md +46 -0
  29. package/empty/README.md +38 -0
  30. package/fesm2022/loomui-ng-ui-accordion.mjs +555 -0
  31. package/fesm2022/loomui-ng-ui-accordion.mjs.map +1 -0
  32. package/fesm2022/loomui-ng-ui-alert-dialog.mjs +652 -0
  33. package/fesm2022/loomui-ng-ui-alert-dialog.mjs.map +1 -0
  34. package/fesm2022/loomui-ng-ui-alert.mjs +286 -0
  35. package/fesm2022/loomui-ng-ui-alert.mjs.map +1 -0
  36. package/fesm2022/loomui-ng-ui-aspect-ratio.mjs +97 -0
  37. package/fesm2022/loomui-ng-ui-aspect-ratio.mjs.map +1 -0
  38. package/fesm2022/loomui-ng-ui-attachment.mjs +713 -0
  39. package/fesm2022/loomui-ng-ui-attachment.mjs.map +1 -0
  40. package/fesm2022/loomui-ng-ui-avatar.mjs +561 -0
  41. package/fesm2022/loomui-ng-ui-avatar.mjs.map +1 -0
  42. package/fesm2022/loomui-ng-ui-badge.mjs +102 -0
  43. package/fesm2022/loomui-ng-ui-badge.mjs.map +1 -0
  44. package/fesm2022/loomui-ng-ui-breadcrumb.mjs +520 -0
  45. package/fesm2022/loomui-ng-ui-breadcrumb.mjs.map +1 -0
  46. package/fesm2022/loomui-ng-ui-bubble.mjs +386 -0
  47. package/fesm2022/loomui-ng-ui-bubble.mjs.map +1 -0
  48. package/fesm2022/loomui-ng-ui-button-group.mjs +193 -0
  49. package/fesm2022/loomui-ng-ui-button-group.mjs.map +1 -0
  50. package/fesm2022/loomui-ng-ui-button.mjs +162 -0
  51. package/fesm2022/loomui-ng-ui-button.mjs.map +1 -0
  52. package/fesm2022/loomui-ng-ui-calendar.mjs +681 -0
  53. package/fesm2022/loomui-ng-ui-calendar.mjs.map +1 -0
  54. package/fesm2022/loomui-ng-ui-card.mjs +461 -0
  55. package/fesm2022/loomui-ng-ui-card.mjs.map +1 -0
  56. package/fesm2022/loomui-ng-ui-carousel.mjs +532 -0
  57. package/fesm2022/loomui-ng-ui-carousel.mjs.map +1 -0
  58. package/fesm2022/loomui-ng-ui-chart.mjs +373 -0
  59. package/fesm2022/loomui-ng-ui-chart.mjs.map +1 -0
  60. package/fesm2022/loomui-ng-ui-checkbox.mjs +265 -0
  61. package/fesm2022/loomui-ng-ui-checkbox.mjs.map +1 -0
  62. package/fesm2022/loomui-ng-ui-collapsible.mjs +274 -0
  63. package/fesm2022/loomui-ng-ui-collapsible.mjs.map +1 -0
  64. package/fesm2022/loomui-ng-ui-combobox.mjs +971 -0
  65. package/fesm2022/loomui-ng-ui-combobox.mjs.map +1 -0
  66. package/fesm2022/loomui-ng-ui-command.mjs +982 -0
  67. package/fesm2022/loomui-ng-ui-command.mjs.map +1 -0
  68. package/fesm2022/loomui-ng-ui-context-menu.mjs +1359 -0
  69. package/fesm2022/loomui-ng-ui-context-menu.mjs.map +1 -0
  70. package/fesm2022/loomui-ng-ui-data-table.mjs +535 -0
  71. package/fesm2022/loomui-ng-ui-data-table.mjs.map +1 -0
  72. package/fesm2022/loomui-ng-ui-date-picker.mjs +312 -0
  73. package/fesm2022/loomui-ng-ui-date-picker.mjs.map +1 -0
  74. package/fesm2022/loomui-ng-ui-dialog.mjs +508 -0
  75. package/fesm2022/loomui-ng-ui-dialog.mjs.map +1 -0
  76. package/fesm2022/loomui-ng-ui-direction.mjs +112 -0
  77. package/fesm2022/loomui-ng-ui-direction.mjs.map +1 -0
  78. package/fesm2022/loomui-ng-ui-drawer.mjs +590 -0
  79. package/fesm2022/loomui-ng-ui-drawer.mjs.map +1 -0
  80. package/fesm2022/loomui-ng-ui-dropdown-menu.mjs +1322 -0
  81. package/fesm2022/loomui-ng-ui-dropdown-menu.mjs.map +1 -0
  82. package/fesm2022/loomui-ng-ui-empty.mjs +408 -0
  83. package/fesm2022/loomui-ng-ui-empty.mjs.map +1 -0
  84. package/fesm2022/loomui-ng-ui-field.mjs +630 -0
  85. package/fesm2022/loomui-ng-ui-field.mjs.map +1 -0
  86. package/fesm2022/loomui-ng-ui-hover-card.mjs +230 -0
  87. package/fesm2022/loomui-ng-ui-hover-card.mjs.map +1 -0
  88. package/fesm2022/loomui-ng-ui-icon.mjs +498 -0
  89. package/fesm2022/loomui-ng-ui-icon.mjs.map +1 -0
  90. package/fesm2022/loomui-ng-ui-input-group.mjs +463 -0
  91. package/fesm2022/loomui-ng-ui-input-group.mjs.map +1 -0
  92. package/fesm2022/loomui-ng-ui-input-otp.mjs +586 -0
  93. package/fesm2022/loomui-ng-ui-input-otp.mjs.map +1 -0
  94. package/fesm2022/loomui-ng-ui-input.mjs +289 -0
  95. package/fesm2022/loomui-ng-ui-input.mjs.map +1 -0
  96. package/fesm2022/loomui-ng-ui-item.mjs +598 -0
  97. package/fesm2022/loomui-ng-ui-item.mjs.map +1 -0
  98. package/fesm2022/loomui-ng-ui-kbd.mjs +129 -0
  99. package/fesm2022/loomui-ng-ui-kbd.mjs.map +1 -0
  100. package/fesm2022/loomui-ng-ui-label.mjs +68 -0
  101. package/fesm2022/loomui-ng-ui-label.mjs.map +1 -0
  102. package/fesm2022/loomui-ng-ui-marker.mjs +234 -0
  103. package/fesm2022/loomui-ng-ui-marker.mjs.map +1 -0
  104. package/fesm2022/loomui-ng-ui-menubar.mjs +1523 -0
  105. package/fesm2022/loomui-ng-ui-menubar.mjs.map +1 -0
  106. package/fesm2022/loomui-ng-ui-message-scroller.mjs +519 -0
  107. package/fesm2022/loomui-ng-ui-message-scroller.mjs.map +1 -0
  108. package/fesm2022/loomui-ng-ui-message.mjs +408 -0
  109. package/fesm2022/loomui-ng-ui-message.mjs.map +1 -0
  110. package/fesm2022/loomui-ng-ui-native-select.mjs +389 -0
  111. package/fesm2022/loomui-ng-ui-native-select.mjs.map +1 -0
  112. package/fesm2022/loomui-ng-ui-navigation-menu.mjs +609 -0
  113. package/fesm2022/loomui-ng-ui-navigation-menu.mjs.map +1 -0
  114. package/fesm2022/loomui-ng-ui-pagination.mjs +611 -0
  115. package/fesm2022/loomui-ng-ui-pagination.mjs.map +1 -0
  116. package/fesm2022/loomui-ng-ui-popover.mjs +358 -0
  117. package/fesm2022/loomui-ng-ui-popover.mjs.map +1 -0
  118. package/fesm2022/loomui-ng-ui-progress.mjs +159 -0
  119. package/fesm2022/loomui-ng-ui-progress.mjs.map +1 -0
  120. package/fesm2022/loomui-ng-ui-questionnaire.mjs +1012 -0
  121. package/fesm2022/loomui-ng-ui-questionnaire.mjs.map +1 -0
  122. package/fesm2022/loomui-ng-ui-radio-group.mjs +399 -0
  123. package/fesm2022/loomui-ng-ui-radio-group.mjs.map +1 -0
  124. package/fesm2022/loomui-ng-ui-resizable.mjs +518 -0
  125. package/fesm2022/loomui-ng-ui-resizable.mjs.map +1 -0
  126. package/fesm2022/loomui-ng-ui-scroll-area.mjs +135 -0
  127. package/fesm2022/loomui-ng-ui-scroll-area.mjs.map +1 -0
  128. package/fesm2022/loomui-ng-ui-select.mjs +863 -0
  129. package/fesm2022/loomui-ng-ui-select.mjs.map +1 -0
  130. package/fesm2022/loomui-ng-ui-separator.mjs +114 -0
  131. package/fesm2022/loomui-ng-ui-separator.mjs.map +1 -0
  132. package/fesm2022/loomui-ng-ui-sheet.mjs +530 -0
  133. package/fesm2022/loomui-ng-ui-sheet.mjs.map +1 -0
  134. package/fesm2022/loomui-ng-ui-sidebar.mjs +1918 -0
  135. package/fesm2022/loomui-ng-ui-sidebar.mjs.map +1 -0
  136. package/fesm2022/loomui-ng-ui-skeleton.mjs +69 -0
  137. package/fesm2022/loomui-ng-ui-skeleton.mjs.map +1 -0
  138. package/fesm2022/loomui-ng-ui-slider.mjs +390 -0
  139. package/fesm2022/loomui-ng-ui-slider.mjs.map +1 -0
  140. package/fesm2022/loomui-ng-ui-spinner.mjs +85 -0
  141. package/fesm2022/loomui-ng-ui-spinner.mjs.map +1 -0
  142. package/fesm2022/loomui-ng-ui-switch.mjs +212 -0
  143. package/fesm2022/loomui-ng-ui-switch.mjs.map +1 -0
  144. package/fesm2022/loomui-ng-ui-table.mjs +559 -0
  145. package/fesm2022/loomui-ng-ui-table.mjs.map +1 -0
  146. package/fesm2022/loomui-ng-ui-tabs.mjs +544 -0
  147. package/fesm2022/loomui-ng-ui-tabs.mjs.map +1 -0
  148. package/fesm2022/loomui-ng-ui-textarea.mjs +206 -0
  149. package/fesm2022/loomui-ng-ui-textarea.mjs.map +1 -0
  150. package/fesm2022/loomui-ng-ui-toast.mjs +432 -0
  151. package/fesm2022/loomui-ng-ui-toast.mjs.map +1 -0
  152. package/fesm2022/loomui-ng-ui-toggle-group.mjs +477 -0
  153. package/fesm2022/loomui-ng-ui-toggle-group.mjs.map +1 -0
  154. package/fesm2022/loomui-ng-ui-toggle.mjs +219 -0
  155. package/fesm2022/loomui-ng-ui-toggle.mjs.map +1 -0
  156. package/fesm2022/loomui-ng-ui-tooltip.mjs +240 -0
  157. package/fesm2022/loomui-ng-ui-tooltip.mjs.map +1 -0
  158. package/fesm2022/loomui-ng-ui-typography.mjs +129 -0
  159. package/fesm2022/loomui-ng-ui-typography.mjs.map +1 -0
  160. package/fesm2022/loomui-ng-ui-utils.mjs +1533 -0
  161. package/fesm2022/loomui-ng-ui-utils.mjs.map +1 -0
  162. package/fesm2022/loomui-ng-ui.mjs +4 -0
  163. package/fesm2022/loomui-ng-ui.mjs.map +1 -0
  164. package/field/README.md +43 -0
  165. package/hover-card/README.md +31 -0
  166. package/icon/README.md +42 -0
  167. package/input/README.md +26 -0
  168. package/input-group/README.md +40 -0
  169. package/input-otp/README.md +35 -0
  170. package/item/README.md +33 -0
  171. package/kbd/README.md +21 -0
  172. package/label/README.md +24 -0
  173. package/marker/README.md +24 -0
  174. package/menubar/README.md +40 -0
  175. package/message/README.md +32 -0
  176. package/message-scroller/README.md +40 -0
  177. package/native-select/README.md +26 -0
  178. package/navigation-menu/README.md +39 -0
  179. package/package.json +325 -3
  180. package/pagination/README.md +37 -0
  181. package/popover/README.md +37 -0
  182. package/progress/README.md +25 -0
  183. package/questionnaire/README.md +52 -0
  184. package/radio-group/README.md +33 -0
  185. package/resizable/README.md +37 -0
  186. package/scroll-area/README.md +25 -0
  187. package/select/README.md +45 -0
  188. package/separator/README.md +28 -0
  189. package/sheet/README.md +38 -0
  190. package/sidebar/README.md +60 -0
  191. package/skeleton/README.md +21 -0
  192. package/slider/README.md +29 -0
  193. package/spinner/README.md +15 -0
  194. package/styles/loomui.css +330 -0
  195. package/switch/README.md +29 -0
  196. package/table/README.md +31 -0
  197. package/tabs/README.md +42 -0
  198. package/textarea/README.md +28 -0
  199. package/toast/README.md +27 -0
  200. package/toggle/README.md +27 -0
  201. package/toggle-group/README.md +37 -0
  202. package/tooltip/README.md +31 -0
  203. package/types/loomui-ng-ui-accordion.d.ts +141 -0
  204. package/types/loomui-ng-ui-alert-dialog.d.ts +175 -0
  205. package/types/loomui-ng-ui-alert.d.ts +77 -0
  206. package/types/loomui-ng-ui-aspect-ratio.d.ts +31 -0
  207. package/types/loomui-ng-ui-attachment.d.ts +192 -0
  208. package/types/loomui-ng-ui-avatar.d.ts +147 -0
  209. package/types/loomui-ng-ui-badge.d.ts +32 -0
  210. package/types/loomui-ng-ui-breadcrumb.d.ts +118 -0
  211. package/types/loomui-ng-ui-bubble.d.ts +100 -0
  212. package/types/loomui-ng-ui-button-group.d.ts +51 -0
  213. package/types/loomui-ng-ui-button.d.ts +57 -0
  214. package/types/loomui-ng-ui-calendar.d.ts +171 -0
  215. package/types/loomui-ng-ui-card.d.ts +123 -0
  216. package/types/loomui-ng-ui-carousel.d.ts +140 -0
  217. package/types/loomui-ng-ui-chart.d.ts +95 -0
  218. package/types/loomui-ng-ui-checkbox.d.ts +62 -0
  219. package/types/loomui-ng-ui-collapsible.d.ts +74 -0
  220. package/types/loomui-ng-ui-combobox.d.ts +229 -0
  221. package/types/loomui-ng-ui-command.d.ts +231 -0
  222. package/types/loomui-ng-ui-context-menu.d.ts +288 -0
  223. package/types/loomui-ng-ui-data-table.d.ts +111 -0
  224. package/types/loomui-ng-ui-date-picker.d.ts +63 -0
  225. package/types/loomui-ng-ui-dialog.d.ts +127 -0
  226. package/types/loomui-ng-ui-direction.d.ts +42 -0
  227. package/types/loomui-ng-ui-drawer.d.ts +149 -0
  228. package/types/loomui-ng-ui-dropdown-menu.d.ts +258 -0
  229. package/types/loomui-ng-ui-empty.d.ts +109 -0
  230. package/types/loomui-ng-ui-field.d.ts +169 -0
  231. package/types/loomui-ng-ui-hover-card.d.ts +62 -0
  232. package/types/loomui-ng-ui-icon.d.ts +156 -0
  233. package/types/loomui-ng-ui-input-group.d.ts +130 -0
  234. package/types/loomui-ng-ui-input-otp.d.ts +149 -0
  235. package/types/loomui-ng-ui-input.d.ts +89 -0
  236. package/types/loomui-ng-ui-item.d.ts +157 -0
  237. package/types/loomui-ng-ui-kbd.d.ts +36 -0
  238. package/types/loomui-ng-ui-label.d.ts +19 -0
  239. package/types/loomui-ng-ui-marker.d.ts +61 -0
  240. package/types/loomui-ng-ui-menubar.d.ts +321 -0
  241. package/types/loomui-ng-ui-message-scroller.d.ts +138 -0
  242. package/types/loomui-ng-ui-message.d.ts +109 -0
  243. package/types/loomui-ng-ui-native-select.d.ts +84 -0
  244. package/types/loomui-ng-ui-navigation-menu.d.ts +160 -0
  245. package/types/loomui-ng-ui-pagination.d.ts +130 -0
  246. package/types/loomui-ng-ui-popover.d.ts +90 -0
  247. package/types/loomui-ng-ui-progress.d.ts +39 -0
  248. package/types/loomui-ng-ui-questionnaire.d.ts +274 -0
  249. package/types/loomui-ng-ui-radio-group.d.ts +109 -0
  250. package/types/loomui-ng-ui-resizable.d.ts +121 -0
  251. package/types/loomui-ng-ui-scroll-area.d.ts +44 -0
  252. package/types/loomui-ng-ui-select.d.ts +204 -0
  253. package/types/loomui-ng-ui-separator.d.ts +35 -0
  254. package/types/loomui-ng-ui-sheet.d.ts +124 -0
  255. package/types/loomui-ng-ui-sidebar.d.ts +485 -0
  256. package/types/loomui-ng-ui-skeleton.d.ts +20 -0
  257. package/types/loomui-ng-ui-slider.d.ts +103 -0
  258. package/types/loomui-ng-ui-spinner.d.ts +19 -0
  259. package/types/loomui-ng-ui-switch.d.ts +56 -0
  260. package/types/loomui-ng-ui-table.d.ts +148 -0
  261. package/types/loomui-ng-ui-tabs.d.ts +148 -0
  262. package/types/loomui-ng-ui-textarea.d.ts +52 -0
  263. package/types/loomui-ng-ui-toast.d.ts +97 -0
  264. package/types/loomui-ng-ui-toggle-group.d.ts +138 -0
  265. package/types/loomui-ng-ui-toggle.d.ts +63 -0
  266. package/types/loomui-ng-ui-tooltip.d.ts +63 -0
  267. package/types/loomui-ng-ui-typography.d.ts +42 -0
  268. package/types/loomui-ng-ui-utils.d.ts +392 -0
  269. package/types/loomui-ng-ui.d.ts +5 -0
  270. package/typography/README.md +29 -0
@@ -0,0 +1,1359 @@
1
+ import * as i0 from "@angular/core";
2
+ import { ChangeDetectionStrategy, Component, Directive, ElementRef, booleanAttribute, computed, contentChildren, forwardRef, inject, input, model } from "@angular/core";
3
+ import * as i1 from "@loomui-ng/ui/utils";
4
+ import { UI_MENU_CTX, UI_MENU_ITEM, UI_MENU_SUB, UiElementHost, UiMenuContentBase, UiMenuItemBase, UiMenuRootBase, UiMenuSelectEvent, UiMenuSubBase, UiMenuSubTriggerBase, cn } from "@loomui-ng/ui/utils";
5
+ import { UiIconSvg } from "@loomui-ng/ui/icon";
6
+ import "@angular/cdk/bidi";
7
+ const contextMenuTriggerClass = "select-none flex aspect-video w-full max-w-xs items-center justify-center rounded-xl border border-dashed text-sm";
8
+ const contextMenuContentClass = "z-50 max-h-(--radix-context-menu-content-available-height) min-w-36 origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95 w-48";
9
+ const contextMenuItemClass = "group/context-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:ps-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 focus:*:[svg]:text-accent-foreground data-[variant=destructive]:*:[svg]:text-destructive";
10
+ const contextMenuSubTriggerClass = "flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:ps-7 data-open:bg-accent data-open:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4";
11
+ const contextMenuCheckboxItemClass = "relative flex cursor-default items-center gap-1.5 rounded-md py-1 pe-8 ps-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4";
12
+ const contextMenuRadioItemClass = "relative flex cursor-default items-center gap-1.5 rounded-md py-1 pe-8 ps-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-inset:ps-7 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4";
13
+ const contextMenuLabelClass = "px-1.5 py-1 text-xs font-medium text-muted-foreground data-inset:ps-7";
14
+ const contextMenuSeparatorClass = "-mx-1 my-1 h-px bg-border";
15
+ const contextMenuShortcutClass = "ms-auto text-xs tracking-widest text-muted-foreground group-focus/context-menu-item:text-accent-foreground";
16
+ const UI_CONTEXT_MENU_GENERATED = [];
17
+ const ITEM_CLASS = contextMenuItemClass;
18
+ const SUB_TRIGGER_CLASS = contextMenuSubTriggerClass;
19
+ const CHECKBOX_CLASS = contextMenuCheckboxItemClass;
20
+ const RADIO_CLASS = contextMenuRadioItemClass;
21
+ const LABEL_CLASS = contextMenuLabelClass;
22
+ const SEPARATOR_CLASS = contextMenuSeparatorClass;
23
+ const SHORTCUT_CLASS = contextMenuShortcutClass;
24
+ const CONTENT_CLASS = contextMenuContentClass;
25
+ var UiContextMenuItem = class UiContextMenuItem extends UiMenuItemBase {
26
+ variant = input("default", ...ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []);
27
+ inset = input(false, {
28
+ ...ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {},
29
+ transform: booleanAttribute
30
+ });
31
+ classes = computed(() => cn(ITEM_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
32
+ static ɵfac = i0.ɵɵngDeclareFactory({
33
+ minVersion: "12.0.0",
34
+ version: "22.2.2",
35
+ ngImport: i0,
36
+ type: UiContextMenuItem,
37
+ deps: null,
38
+ target: i0.ɵɵFactoryTarget.Directive
39
+ });
40
+ static ɵdir = i0.ɵɵngDeclareDirective({
41
+ minVersion: "17.1.0",
42
+ version: "22.2.2",
43
+ type: UiContextMenuItem,
44
+ isStandalone: true,
45
+ selector: "[uiContextMenuItem], ui-context-menu-item",
46
+ inputs: {
47
+ variant: {
48
+ classPropertyName: "variant",
49
+ publicName: "variant",
50
+ isSignal: true,
51
+ isRequired: false,
52
+ transformFunction: null
53
+ },
54
+ inset: {
55
+ classPropertyName: "inset",
56
+ publicName: "inset",
57
+ isSignal: true,
58
+ isRequired: false,
59
+ transformFunction: null
60
+ }
61
+ },
62
+ host: {
63
+ attributes: {
64
+ "tabindex": "-1",
65
+ "data-slot": "context-menu-item",
66
+ "role": "menuitem"
67
+ },
68
+ listeners: {
69
+ "focus": "onFocus()",
70
+ "blur": "onBlur()",
71
+ "pointermove": "onPointerMove()",
72
+ "pointerleave": "onPointerLeave()",
73
+ "click": "activate()"
74
+ },
75
+ properties: {
76
+ "attr.data-disabled": "disabled ? \"\" : null",
77
+ "attr.aria-disabled": "disabled ? \"true\" : null",
78
+ "attr.data-highlighted": "highlighted() ? \"\" : null",
79
+ "attr.data-variant": "variant()",
80
+ "attr.data-inset": "inset() ? \"\" : null",
81
+ "attr.class": "classes()"
82
+ }
83
+ },
84
+ providers: [{
85
+ provide: UI_MENU_ITEM,
86
+ useExisting: forwardRef(() => UiContextMenuItem)
87
+ }],
88
+ usesInheritance: true,
89
+ hostDirectives: [{ directive: i1.UiElementHost }],
90
+ ngImport: i0
91
+ });
92
+ };
93
+ i0.ɵɵngDeclareClassMetadata({
94
+ minVersion: "12.0.0",
95
+ version: "22.2.2",
96
+ ngImport: i0,
97
+ type: UiContextMenuItem,
98
+ decorators: [{
99
+ type: Directive,
100
+ args: [{
101
+ selector: "[uiContextMenuItem], ui-context-menu-item",
102
+ hostDirectives: [UiElementHost],
103
+ providers: [{
104
+ provide: UI_MENU_ITEM,
105
+ useExisting: forwardRef(() => UiContextMenuItem)
106
+ }],
107
+ host: {
108
+ tabindex: "-1",
109
+ "[attr.data-disabled]": "disabled ? \"\" : null",
110
+ "[attr.aria-disabled]": "disabled ? \"true\" : null",
111
+ "[attr.data-highlighted]": "highlighted() ? \"\" : null",
112
+ "(focus)": "onFocus()",
113
+ "(blur)": "onBlur()",
114
+ "(pointermove)": "onPointerMove()",
115
+ "(pointerleave)": "onPointerLeave()",
116
+ "(click)": "activate()",
117
+ "data-slot": "context-menu-item",
118
+ role: "menuitem",
119
+ "[attr.data-variant]": "variant()",
120
+ "[attr.data-inset]": "inset() ? \"\" : null",
121
+ "[attr.class]": "classes()"
122
+ }
123
+ }]
124
+ }],
125
+ propDecorators: {
126
+ variant: [{
127
+ type: i0.Input,
128
+ args: [{
129
+ isSignal: true,
130
+ alias: "variant",
131
+ required: false
132
+ }]
133
+ }],
134
+ inset: [{
135
+ type: i0.Input,
136
+ args: [{
137
+ isSignal: true,
138
+ alias: "inset",
139
+ required: false
140
+ }]
141
+ }]
142
+ }
143
+ });
144
+ const CHECK = "<svg uiIcon=\"check\" class=\"size-4\"></svg>";
145
+ var UiContextMenuCheckboxItem = class UiContextMenuCheckboxItem extends UiMenuItemBase {
146
+ checked = model(false, ...ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []);
147
+ inset = input(false, {
148
+ ...ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {},
149
+ transform: booleanAttribute
150
+ });
151
+ classes = computed(() => cn(CHECKBOX_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
152
+ beforeSelect() {
153
+ this.checked.update((v) => !v);
154
+ }
155
+ static ɵfac = i0.ɵɵngDeclareFactory({
156
+ minVersion: "12.0.0",
157
+ version: "22.2.2",
158
+ ngImport: i0,
159
+ type: UiContextMenuCheckboxItem,
160
+ deps: null,
161
+ target: i0.ɵɵFactoryTarget.Component
162
+ });
163
+ static ɵcmp = i0.ɵɵngDeclareComponent({
164
+ minVersion: "17.0.0",
165
+ version: "22.2.2",
166
+ type: UiContextMenuCheckboxItem,
167
+ isStandalone: true,
168
+ selector: "[uiContextMenuCheckboxItem], ui-context-menu-checkbox-item",
169
+ inputs: {
170
+ checked: {
171
+ classPropertyName: "checked",
172
+ publicName: "checked",
173
+ isSignal: true,
174
+ isRequired: false,
175
+ transformFunction: null
176
+ },
177
+ inset: {
178
+ classPropertyName: "inset",
179
+ publicName: "inset",
180
+ isSignal: true,
181
+ isRequired: false,
182
+ transformFunction: null
183
+ }
184
+ },
185
+ outputs: { checked: "checkedChange" },
186
+ host: {
187
+ attributes: {
188
+ "tabindex": "-1",
189
+ "data-slot": "context-menu-checkbox-item",
190
+ "role": "menuitemcheckbox"
191
+ },
192
+ listeners: {
193
+ "focus": "onFocus()",
194
+ "blur": "onBlur()",
195
+ "pointermove": "onPointerMove()",
196
+ "pointerleave": "onPointerLeave()",
197
+ "click": "activate()"
198
+ },
199
+ properties: {
200
+ "attr.data-disabled": "disabled ? \"\" : null",
201
+ "attr.aria-disabled": "disabled ? \"true\" : null",
202
+ "attr.data-highlighted": "highlighted() ? \"\" : null",
203
+ "attr.aria-checked": "checked()",
204
+ "attr.data-state": "checked() ? \"checked\" : \"unchecked\"",
205
+ "attr.data-inset": "inset() ? \"\" : null",
206
+ "attr.class": "classes()"
207
+ }
208
+ },
209
+ providers: [{
210
+ provide: UI_MENU_ITEM,
211
+ useExisting: forwardRef(() => UiContextMenuCheckboxItem)
212
+ }],
213
+ usesInheritance: true,
214
+ hostDirectives: [{ directive: i1.UiElementHost }],
215
+ ngImport: i0,
216
+ template: "\n <ng-content />\n <span class=\"pointer-events-none absolute end-2 flex items-center justify-center\" data-slot=\"context-menu-checkbox-item-indicator\">\n @if (checked()) { <svg uiIcon=\"check\" class=\"size-4\"></svg> }\n </span>\n ",
217
+ isInline: true,
218
+ dependencies: [{
219
+ kind: "directive",
220
+ type: UiIconSvg,
221
+ selector: "svg[uiIcon]",
222
+ inputs: [
223
+ "uiIcon",
224
+ "icon",
225
+ "size",
226
+ "strokeWidth",
227
+ "absoluteStrokeWidth",
228
+ "color",
229
+ "label",
230
+ "class"
231
+ ]
232
+ }],
233
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
234
+ });
235
+ };
236
+ i0.ɵɵngDeclareClassMetadata({
237
+ minVersion: "12.0.0",
238
+ version: "22.2.2",
239
+ ngImport: i0,
240
+ type: UiContextMenuCheckboxItem,
241
+ decorators: [{
242
+ type: Component,
243
+ args: [{
244
+ selector: "[uiContextMenuCheckboxItem], ui-context-menu-checkbox-item",
245
+ hostDirectives: [UiElementHost],
246
+ imports: [UiIconSvg],
247
+ changeDetection: ChangeDetectionStrategy.OnPush,
248
+ providers: [{
249
+ provide: UI_MENU_ITEM,
250
+ useExisting: forwardRef(() => UiContextMenuCheckboxItem)
251
+ }],
252
+ host: {
253
+ tabindex: "-1",
254
+ "[attr.data-disabled]": "disabled ? \"\" : null",
255
+ "[attr.aria-disabled]": "disabled ? \"true\" : null",
256
+ "[attr.data-highlighted]": "highlighted() ? \"\" : null",
257
+ "(focus)": "onFocus()",
258
+ "(blur)": "onBlur()",
259
+ "(pointermove)": "onPointerMove()",
260
+ "(pointerleave)": "onPointerLeave()",
261
+ "(click)": "activate()",
262
+ "data-slot": "context-menu-checkbox-item",
263
+ role: "menuitemcheckbox",
264
+ "[attr.aria-checked]": "checked()",
265
+ "[attr.data-state]": "checked() ? \"checked\" : \"unchecked\"",
266
+ "[attr.data-inset]": "inset() ? \"\" : null",
267
+ "[attr.class]": "classes()"
268
+ },
269
+ template: `
270
+ <ng-content />
271
+ <span class="pointer-events-none absolute end-2 flex items-center justify-center" data-slot="context-menu-checkbox-item-indicator">
272
+ @if (checked()) { ${CHECK} }
273
+ </span>
274
+ `
275
+ }]
276
+ }],
277
+ propDecorators: {
278
+ checked: [{
279
+ type: i0.Input,
280
+ args: [{
281
+ isSignal: true,
282
+ alias: "checked",
283
+ required: false
284
+ }]
285
+ }, {
286
+ type: i0.Output,
287
+ args: ["checkedChange"]
288
+ }],
289
+ inset: [{
290
+ type: i0.Input,
291
+ args: [{
292
+ isSignal: true,
293
+ alias: "inset",
294
+ required: false
295
+ }]
296
+ }]
297
+ }
298
+ });
299
+ var UiContextMenuRadioGroup = class UiContextMenuRadioGroup {
300
+ value = model(void 0, ...ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []);
301
+ static ɵfac = i0.ɵɵngDeclareFactory({
302
+ minVersion: "12.0.0",
303
+ version: "22.2.2",
304
+ ngImport: i0,
305
+ type: UiContextMenuRadioGroup,
306
+ deps: [],
307
+ target: i0.ɵɵFactoryTarget.Directive
308
+ });
309
+ static ɵdir = i0.ɵɵngDeclareDirective({
310
+ minVersion: "17.1.0",
311
+ version: "22.2.2",
312
+ type: UiContextMenuRadioGroup,
313
+ isStandalone: true,
314
+ selector: "[uiContextMenuRadioGroup], ui-context-menu-radio-group",
315
+ inputs: { value: {
316
+ classPropertyName: "value",
317
+ publicName: "value",
318
+ isSignal: true,
319
+ isRequired: false,
320
+ transformFunction: null
321
+ } },
322
+ outputs: { value: "valueChange" },
323
+ host: { attributes: {
324
+ "role": "group",
325
+ "data-slot": "context-menu-radio-group"
326
+ } },
327
+ hostDirectives: [{ directive: i1.UiElementHost }],
328
+ ngImport: i0
329
+ });
330
+ };
331
+ i0.ɵɵngDeclareClassMetadata({
332
+ minVersion: "12.0.0",
333
+ version: "22.2.2",
334
+ ngImport: i0,
335
+ type: UiContextMenuRadioGroup,
336
+ decorators: [{
337
+ type: Directive,
338
+ args: [{
339
+ selector: "[uiContextMenuRadioGroup], ui-context-menu-radio-group",
340
+ hostDirectives: [UiElementHost],
341
+ host: {
342
+ role: "group",
343
+ "data-slot": "context-menu-radio-group"
344
+ }
345
+ }]
346
+ }],
347
+ propDecorators: { value: [{
348
+ type: i0.Input,
349
+ args: [{
350
+ isSignal: true,
351
+ alias: "value",
352
+ required: false
353
+ }]
354
+ }, {
355
+ type: i0.Output,
356
+ args: ["valueChange"]
357
+ }] }
358
+ });
359
+ var UiContextMenuRadioItem = class UiContextMenuRadioItem extends UiMenuItemBase {
360
+ group = inject(UiContextMenuRadioGroup);
361
+ value = input("", ...ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []);
362
+ inset = input(false, {
363
+ ...ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {},
364
+ transform: booleanAttribute
365
+ });
366
+ checked = computed(() => this.group.value() === this.value(), ...ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []);
367
+ classes = computed(() => cn(RADIO_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
368
+ beforeSelect() {
369
+ this.group.value.set(this.value());
370
+ }
371
+ static ɵfac = i0.ɵɵngDeclareFactory({
372
+ minVersion: "12.0.0",
373
+ version: "22.2.2",
374
+ ngImport: i0,
375
+ type: UiContextMenuRadioItem,
376
+ deps: null,
377
+ target: i0.ɵɵFactoryTarget.Component
378
+ });
379
+ static ɵcmp = i0.ɵɵngDeclareComponent({
380
+ minVersion: "17.0.0",
381
+ version: "22.2.2",
382
+ type: UiContextMenuRadioItem,
383
+ isStandalone: true,
384
+ selector: "[uiContextMenuRadioItem], ui-context-menu-radio-item",
385
+ inputs: {
386
+ value: {
387
+ classPropertyName: "value",
388
+ publicName: "value",
389
+ isSignal: true,
390
+ isRequired: false,
391
+ transformFunction: null
392
+ },
393
+ inset: {
394
+ classPropertyName: "inset",
395
+ publicName: "inset",
396
+ isSignal: true,
397
+ isRequired: false,
398
+ transformFunction: null
399
+ }
400
+ },
401
+ host: {
402
+ attributes: {
403
+ "tabindex": "-1",
404
+ "data-slot": "context-menu-radio-item",
405
+ "role": "menuitemradio"
406
+ },
407
+ listeners: {
408
+ "focus": "onFocus()",
409
+ "blur": "onBlur()",
410
+ "pointermove": "onPointerMove()",
411
+ "pointerleave": "onPointerLeave()",
412
+ "click": "activate()"
413
+ },
414
+ properties: {
415
+ "attr.data-disabled": "disabled ? \"\" : null",
416
+ "attr.aria-disabled": "disabled ? \"true\" : null",
417
+ "attr.data-highlighted": "highlighted() ? \"\" : null",
418
+ "attr.aria-checked": "checked()",
419
+ "attr.data-state": "checked() ? \"checked\" : \"unchecked\"",
420
+ "attr.data-inset": "inset() ? \"\" : null",
421
+ "attr.class": "classes()"
422
+ }
423
+ },
424
+ providers: [{
425
+ provide: UI_MENU_ITEM,
426
+ useExisting: forwardRef(() => UiContextMenuRadioItem)
427
+ }],
428
+ usesInheritance: true,
429
+ hostDirectives: [{ directive: i1.UiElementHost }],
430
+ ngImport: i0,
431
+ template: "\n <ng-content />\n <span class=\"pointer-events-none absolute end-2 flex items-center justify-center\" data-slot=\"context-menu-radio-item-indicator\">\n @if (checked()) { <svg uiIcon=\"check\" class=\"size-4\"></svg> }\n </span>\n ",
432
+ isInline: true,
433
+ dependencies: [{
434
+ kind: "directive",
435
+ type: UiIconSvg,
436
+ selector: "svg[uiIcon]",
437
+ inputs: [
438
+ "uiIcon",
439
+ "icon",
440
+ "size",
441
+ "strokeWidth",
442
+ "absoluteStrokeWidth",
443
+ "color",
444
+ "label",
445
+ "class"
446
+ ]
447
+ }],
448
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
449
+ });
450
+ };
451
+ i0.ɵɵngDeclareClassMetadata({
452
+ minVersion: "12.0.0",
453
+ version: "22.2.2",
454
+ ngImport: i0,
455
+ type: UiContextMenuRadioItem,
456
+ decorators: [{
457
+ type: Component,
458
+ args: [{
459
+ selector: "[uiContextMenuRadioItem], ui-context-menu-radio-item",
460
+ hostDirectives: [UiElementHost],
461
+ imports: [UiIconSvg],
462
+ changeDetection: ChangeDetectionStrategy.OnPush,
463
+ providers: [{
464
+ provide: UI_MENU_ITEM,
465
+ useExisting: forwardRef(() => UiContextMenuRadioItem)
466
+ }],
467
+ host: {
468
+ tabindex: "-1",
469
+ "[attr.data-disabled]": "disabled ? \"\" : null",
470
+ "[attr.aria-disabled]": "disabled ? \"true\" : null",
471
+ "[attr.data-highlighted]": "highlighted() ? \"\" : null",
472
+ "(focus)": "onFocus()",
473
+ "(blur)": "onBlur()",
474
+ "(pointermove)": "onPointerMove()",
475
+ "(pointerleave)": "onPointerLeave()",
476
+ "(click)": "activate()",
477
+ "data-slot": "context-menu-radio-item",
478
+ role: "menuitemradio",
479
+ "[attr.aria-checked]": "checked()",
480
+ "[attr.data-state]": "checked() ? \"checked\" : \"unchecked\"",
481
+ "[attr.data-inset]": "inset() ? \"\" : null",
482
+ "[attr.class]": "classes()"
483
+ },
484
+ template: `
485
+ <ng-content />
486
+ <span class="pointer-events-none absolute end-2 flex items-center justify-center" data-slot="context-menu-radio-item-indicator">
487
+ @if (checked()) { ${CHECK} }
488
+ </span>
489
+ `
490
+ }]
491
+ }],
492
+ propDecorators: {
493
+ value: [{
494
+ type: i0.Input,
495
+ args: [{
496
+ isSignal: true,
497
+ alias: "value",
498
+ required: false
499
+ }]
500
+ }],
501
+ inset: [{
502
+ type: i0.Input,
503
+ args: [{
504
+ isSignal: true,
505
+ alias: "inset",
506
+ required: false
507
+ }]
508
+ }]
509
+ }
510
+ });
511
+ var UiContextMenuSub = class UiContextMenuSub extends UiMenuSubBase {
512
+ static ɵfac = i0.ɵɵngDeclareFactory({
513
+ minVersion: "12.0.0",
514
+ version: "22.2.2",
515
+ ngImport: i0,
516
+ type: UiContextMenuSub,
517
+ deps: null,
518
+ target: i0.ɵɵFactoryTarget.Directive
519
+ });
520
+ static ɵdir = i0.ɵɵngDeclareDirective({
521
+ minVersion: "14.0.0",
522
+ version: "22.2.2",
523
+ type: UiContextMenuSub,
524
+ isStandalone: true,
525
+ selector: "[uiContextMenuSub], ui-context-menu-sub",
526
+ providers: [{
527
+ provide: UI_MENU_CTX,
528
+ useExisting: forwardRef(() => UiContextMenuSub)
529
+ }, {
530
+ provide: UI_MENU_SUB,
531
+ useExisting: forwardRef(() => UiContextMenuSub)
532
+ }],
533
+ usesInheritance: true,
534
+ hostDirectives: [{ directive: i1.UiElementHost }],
535
+ ngImport: i0
536
+ });
537
+ };
538
+ i0.ɵɵngDeclareClassMetadata({
539
+ minVersion: "12.0.0",
540
+ version: "22.2.2",
541
+ ngImport: i0,
542
+ type: UiContextMenuSub,
543
+ decorators: [{
544
+ type: Directive,
545
+ args: [{
546
+ selector: "[uiContextMenuSub], ui-context-menu-sub",
547
+ hostDirectives: [UiElementHost],
548
+ providers: [{
549
+ provide: UI_MENU_CTX,
550
+ useExisting: forwardRef(() => UiContextMenuSub)
551
+ }, {
552
+ provide: UI_MENU_SUB,
553
+ useExisting: forwardRef(() => UiContextMenuSub)
554
+ }]
555
+ }]
556
+ }]
557
+ });
558
+ var UiContextMenuSubTrigger = class UiContextMenuSubTrigger extends UiMenuSubTriggerBase {
559
+ inset = input(false, {
560
+ ...ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {},
561
+ transform: booleanAttribute
562
+ });
563
+ classes = computed(() => cn(SUB_TRIGGER_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
564
+ static ɵfac = i0.ɵɵngDeclareFactory({
565
+ minVersion: "12.0.0",
566
+ version: "22.2.2",
567
+ ngImport: i0,
568
+ type: UiContextMenuSubTrigger,
569
+ deps: null,
570
+ target: i0.ɵɵFactoryTarget.Component
571
+ });
572
+ static ɵcmp = i0.ɵɵngDeclareComponent({
573
+ minVersion: "17.1.0",
574
+ version: "22.2.2",
575
+ type: UiContextMenuSubTrigger,
576
+ isStandalone: true,
577
+ selector: "[uiContextMenuSubTrigger], ui-context-menu-sub-trigger",
578
+ inputs: { inset: {
579
+ classPropertyName: "inset",
580
+ publicName: "inset",
581
+ isSignal: true,
582
+ isRequired: false,
583
+ transformFunction: null
584
+ } },
585
+ host: {
586
+ attributes: {
587
+ "tabindex": "-1",
588
+ "data-slot": "context-menu-sub-trigger",
589
+ "role": "menuitem",
590
+ "aria-haspopup": "menu"
591
+ },
592
+ listeners: {
593
+ "focus": "onFocus()",
594
+ "blur": "onBlur()",
595
+ "pointermove": "onPointerMove()",
596
+ "pointerleave": "onPointerLeave()",
597
+ "click": "activate()"
598
+ },
599
+ properties: {
600
+ "attr.data-disabled": "disabled ? \"\" : null",
601
+ "attr.aria-disabled": "disabled ? \"true\" : null",
602
+ "attr.data-highlighted": "highlighted() ? \"\" : null",
603
+ "attr.aria-expanded": "sub.open()",
604
+ "attr.data-state": "sub.open() ? \"open\" : \"closed\"",
605
+ "attr.data-inset": "inset() ? \"\" : null",
606
+ "attr.class": "classes()"
607
+ }
608
+ },
609
+ providers: [{
610
+ provide: UI_MENU_ITEM,
611
+ useExisting: forwardRef(() => UiContextMenuSubTrigger)
612
+ }],
613
+ usesInheritance: true,
614
+ hostDirectives: [{ directive: i1.UiElementHost }],
615
+ ngImport: i0,
616
+ template: `
617
+ <ng-content />
618
+ <svg uiIcon="chevron-right" class="ms-auto rtl:rotate-180"></svg>
619
+ `,
620
+ isInline: true,
621
+ dependencies: [{
622
+ kind: "directive",
623
+ type: UiIconSvg,
624
+ selector: "svg[uiIcon]",
625
+ inputs: [
626
+ "uiIcon",
627
+ "icon",
628
+ "size",
629
+ "strokeWidth",
630
+ "absoluteStrokeWidth",
631
+ "color",
632
+ "label",
633
+ "class"
634
+ ]
635
+ }],
636
+ changeDetection: i0.ChangeDetectionStrategy.OnPush
637
+ });
638
+ };
639
+ i0.ɵɵngDeclareClassMetadata({
640
+ minVersion: "12.0.0",
641
+ version: "22.2.2",
642
+ ngImport: i0,
643
+ type: UiContextMenuSubTrigger,
644
+ decorators: [{
645
+ type: Component,
646
+ args: [{
647
+ selector: "[uiContextMenuSubTrigger], ui-context-menu-sub-trigger",
648
+ hostDirectives: [UiElementHost],
649
+ imports: [UiIconSvg],
650
+ changeDetection: ChangeDetectionStrategy.OnPush,
651
+ providers: [{
652
+ provide: UI_MENU_ITEM,
653
+ useExisting: forwardRef(() => UiContextMenuSubTrigger)
654
+ }],
655
+ host: {
656
+ tabindex: "-1",
657
+ "[attr.data-disabled]": "disabled ? \"\" : null",
658
+ "[attr.aria-disabled]": "disabled ? \"true\" : null",
659
+ "[attr.data-highlighted]": "highlighted() ? \"\" : null",
660
+ "(focus)": "onFocus()",
661
+ "(blur)": "onBlur()",
662
+ "(pointermove)": "onPointerMove()",
663
+ "(pointerleave)": "onPointerLeave()",
664
+ "(click)": "activate()",
665
+ "data-slot": "context-menu-sub-trigger",
666
+ role: "menuitem",
667
+ "aria-haspopup": "menu",
668
+ "[attr.aria-expanded]": "sub.open()",
669
+ "[attr.data-state]": "sub.open() ? \"open\" : \"closed\"",
670
+ "[attr.data-inset]": "inset() ? \"\" : null",
671
+ "[attr.class]": "classes()"
672
+ },
673
+ template: `
674
+ <ng-content />
675
+ <svg uiIcon="chevron-right" class="ms-auto rtl:rotate-180"></svg>
676
+ `
677
+ }]
678
+ }],
679
+ propDecorators: { inset: [{
680
+ type: i0.Input,
681
+ args: [{
682
+ isSignal: true,
683
+ alias: "inset",
684
+ required: false
685
+ }]
686
+ }] }
687
+ });
688
+ var UiContextMenuSubContent = class UiContextMenuSubContent extends UiMenuContentBase {
689
+ root = inject(UiContextMenuSub);
690
+ menu = this.root;
691
+ varPrefix = "--radix-context-menu";
692
+ side = input("right", ...ngDevMode ? [{ debugName: "side" }] : /* istanbul ignore next */ []);
693
+ align = input("start", ...ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []);
694
+ sideOffset = input(0, ...ngDevMode ? [{ debugName: "sideOffset" }] : /* istanbul ignore next */ []);
695
+ items = contentChildren(UI_MENU_ITEM, {
696
+ ...ngDevMode ? { debugName: "items" } : /* istanbul ignore next */ {},
697
+ descendants: true
698
+ });
699
+ classes = computed(() => cn(CONTENT_CLASS, "w-auto", this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
700
+ menuItems() {
701
+ return this.items();
702
+ }
703
+ constructor() {
704
+ super();
705
+ this.isSub = true;
706
+ this.init();
707
+ }
708
+ static ɵfac = i0.ɵɵngDeclareFactory({
709
+ minVersion: "12.0.0",
710
+ version: "22.2.2",
711
+ ngImport: i0,
712
+ type: UiContextMenuSubContent,
713
+ deps: [],
714
+ target: i0.ɵɵFactoryTarget.Directive
715
+ });
716
+ static ɵdir = i0.ɵɵngDeclareDirective({
717
+ minVersion: "17.2.0",
718
+ version: "22.2.2",
719
+ type: UiContextMenuSubContent,
720
+ isStandalone: true,
721
+ selector: "[uiContextMenuSubContent], ui-context-menu-sub-content",
722
+ inputs: {
723
+ side: {
724
+ classPropertyName: "side",
725
+ publicName: "side",
726
+ isSignal: true,
727
+ isRequired: false,
728
+ transformFunction: null
729
+ },
730
+ align: {
731
+ classPropertyName: "align",
732
+ publicName: "align",
733
+ isSignal: true,
734
+ isRequired: false,
735
+ transformFunction: null
736
+ },
737
+ sideOffset: {
738
+ classPropertyName: "sideOffset",
739
+ publicName: "sideOffset",
740
+ isSignal: true,
741
+ isRequired: false,
742
+ transformFunction: null
743
+ }
744
+ },
745
+ host: {
746
+ attributes: {
747
+ "role": "menu",
748
+ "aria-orientation": "vertical",
749
+ "data-slot": "context-menu-sub-content",
750
+ "tabindex": "-1"
751
+ },
752
+ listeners: { "keydown": "onMenuKeydown($event)" },
753
+ properties: {
754
+ "attr.data-state": "root.state()",
755
+ "attr.dir": "dir.value",
756
+ "attr.class": "classes()"
757
+ }
758
+ },
759
+ queries: [{
760
+ propertyName: "items",
761
+ predicate: UI_MENU_ITEM,
762
+ descendants: true,
763
+ isSignal: true
764
+ }],
765
+ usesInheritance: true,
766
+ hostDirectives: [{ directive: i1.UiElementHost }],
767
+ ngImport: i0
768
+ });
769
+ };
770
+ i0.ɵɵngDeclareClassMetadata({
771
+ minVersion: "12.0.0",
772
+ version: "22.2.2",
773
+ ngImport: i0,
774
+ type: UiContextMenuSubContent,
775
+ decorators: [{
776
+ type: Directive,
777
+ args: [{
778
+ selector: "[uiContextMenuSubContent], ui-context-menu-sub-content",
779
+ hostDirectives: [UiElementHost],
780
+ host: {
781
+ role: "menu",
782
+ "aria-orientation": "vertical",
783
+ "data-slot": "context-menu-sub-content",
784
+ tabindex: "-1",
785
+ "[attr.data-state]": "root.state()",
786
+ "[attr.dir]": "dir.value",
787
+ "[attr.class]": "classes()",
788
+ "(keydown)": "onMenuKeydown($event)"
789
+ }
790
+ }]
791
+ }],
792
+ ctorParameters: () => [],
793
+ propDecorators: {
794
+ side: [{
795
+ type: i0.Input,
796
+ args: [{
797
+ isSignal: true,
798
+ alias: "side",
799
+ required: false
800
+ }]
801
+ }],
802
+ align: [{
803
+ type: i0.Input,
804
+ args: [{
805
+ isSignal: true,
806
+ alias: "align",
807
+ required: false
808
+ }]
809
+ }],
810
+ sideOffset: [{
811
+ type: i0.Input,
812
+ args: [{
813
+ isSignal: true,
814
+ alias: "sideOffset",
815
+ required: false
816
+ }]
817
+ }],
818
+ items: [{
819
+ type: i0.ContentChildren,
820
+ args: [i0.forwardRef(() => UI_MENU_ITEM), {
821
+ descendants: true,
822
+ isSignal: true
823
+ }]
824
+ }]
825
+ }
826
+ });
827
+ var UiContextMenuLabel = class UiContextMenuLabel {
828
+ inset = input(false, {
829
+ ...ngDevMode ? { debugName: "inset" } : /* istanbul ignore next */ {},
830
+ transform: booleanAttribute
831
+ });
832
+ userClass = input("", {
833
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
834
+ alias: "class"
835
+ });
836
+ classes = computed(() => cn(LABEL_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
837
+ static ɵfac = i0.ɵɵngDeclareFactory({
838
+ minVersion: "12.0.0",
839
+ version: "22.2.2",
840
+ ngImport: i0,
841
+ type: UiContextMenuLabel,
842
+ deps: [],
843
+ target: i0.ɵɵFactoryTarget.Directive
844
+ });
845
+ static ɵdir = i0.ɵɵngDeclareDirective({
846
+ minVersion: "17.1.0",
847
+ version: "22.2.2",
848
+ type: UiContextMenuLabel,
849
+ isStandalone: true,
850
+ selector: "[uiContextMenuLabel], ui-context-menu-label",
851
+ inputs: {
852
+ inset: {
853
+ classPropertyName: "inset",
854
+ publicName: "inset",
855
+ isSignal: true,
856
+ isRequired: false,
857
+ transformFunction: null
858
+ },
859
+ userClass: {
860
+ classPropertyName: "userClass",
861
+ publicName: "class",
862
+ isSignal: true,
863
+ isRequired: false,
864
+ transformFunction: null
865
+ }
866
+ },
867
+ host: {
868
+ attributes: { "data-slot": "context-menu-label" },
869
+ properties: {
870
+ "attr.data-inset": "inset() ? \"\" : null",
871
+ "attr.class": "classes()"
872
+ }
873
+ },
874
+ hostDirectives: [{ directive: i1.UiElementHost }],
875
+ ngImport: i0
876
+ });
877
+ };
878
+ i0.ɵɵngDeclareClassMetadata({
879
+ minVersion: "12.0.0",
880
+ version: "22.2.2",
881
+ ngImport: i0,
882
+ type: UiContextMenuLabel,
883
+ decorators: [{
884
+ type: Directive,
885
+ args: [{
886
+ selector: "[uiContextMenuLabel], ui-context-menu-label",
887
+ hostDirectives: [UiElementHost],
888
+ host: {
889
+ "data-slot": "context-menu-label",
890
+ "[attr.data-inset]": "inset() ? \"\" : null",
891
+ "[attr.class]": "classes()"
892
+ }
893
+ }]
894
+ }],
895
+ propDecorators: {
896
+ inset: [{
897
+ type: i0.Input,
898
+ args: [{
899
+ isSignal: true,
900
+ alias: "inset",
901
+ required: false
902
+ }]
903
+ }],
904
+ userClass: [{
905
+ type: i0.Input,
906
+ args: [{
907
+ isSignal: true,
908
+ alias: "class",
909
+ required: false
910
+ }]
911
+ }]
912
+ }
913
+ });
914
+ var UiContextMenuSeparator = class UiContextMenuSeparator {
915
+ userClass = input("", {
916
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
917
+ alias: "class"
918
+ });
919
+ classes = computed(() => cn(SEPARATOR_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
920
+ static ɵfac = i0.ɵɵngDeclareFactory({
921
+ minVersion: "12.0.0",
922
+ version: "22.2.2",
923
+ ngImport: i0,
924
+ type: UiContextMenuSeparator,
925
+ deps: [],
926
+ target: i0.ɵɵFactoryTarget.Directive
927
+ });
928
+ static ɵdir = i0.ɵɵngDeclareDirective({
929
+ minVersion: "17.1.0",
930
+ version: "22.2.2",
931
+ type: UiContextMenuSeparator,
932
+ isStandalone: true,
933
+ selector: "[uiContextMenuSeparator], ui-context-menu-separator",
934
+ inputs: { userClass: {
935
+ classPropertyName: "userClass",
936
+ publicName: "class",
937
+ isSignal: true,
938
+ isRequired: false,
939
+ transformFunction: null
940
+ } },
941
+ host: {
942
+ attributes: {
943
+ "role": "separator",
944
+ "aria-orientation": "horizontal",
945
+ "data-slot": "context-menu-separator"
946
+ },
947
+ properties: { "attr.class": "classes()" }
948
+ },
949
+ hostDirectives: [{ directive: i1.UiElementHost }],
950
+ ngImport: i0
951
+ });
952
+ };
953
+ i0.ɵɵngDeclareClassMetadata({
954
+ minVersion: "12.0.0",
955
+ version: "22.2.2",
956
+ ngImport: i0,
957
+ type: UiContextMenuSeparator,
958
+ decorators: [{
959
+ type: Directive,
960
+ args: [{
961
+ selector: "[uiContextMenuSeparator], ui-context-menu-separator",
962
+ hostDirectives: [UiElementHost],
963
+ host: {
964
+ role: "separator",
965
+ "aria-orientation": "horizontal",
966
+ "data-slot": "context-menu-separator",
967
+ "[attr.class]": "classes()"
968
+ }
969
+ }]
970
+ }],
971
+ propDecorators: { userClass: [{
972
+ type: i0.Input,
973
+ args: [{
974
+ isSignal: true,
975
+ alias: "class",
976
+ required: false
977
+ }]
978
+ }] }
979
+ });
980
+ var UiContextMenuShortcut = class UiContextMenuShortcut {
981
+ userClass = input("", {
982
+ ...ngDevMode ? { debugName: "userClass" } : /* istanbul ignore next */ {},
983
+ alias: "class"
984
+ });
985
+ classes = computed(() => cn(SHORTCUT_CLASS, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
986
+ static ɵfac = i0.ɵɵngDeclareFactory({
987
+ minVersion: "12.0.0",
988
+ version: "22.2.2",
989
+ ngImport: i0,
990
+ type: UiContextMenuShortcut,
991
+ deps: [],
992
+ target: i0.ɵɵFactoryTarget.Directive
993
+ });
994
+ static ɵdir = i0.ɵɵngDeclareDirective({
995
+ minVersion: "17.1.0",
996
+ version: "22.2.2",
997
+ type: UiContextMenuShortcut,
998
+ isStandalone: true,
999
+ selector: "[uiContextMenuShortcut], ui-context-menu-shortcut",
1000
+ inputs: { userClass: {
1001
+ classPropertyName: "userClass",
1002
+ publicName: "class",
1003
+ isSignal: true,
1004
+ isRequired: false,
1005
+ transformFunction: null
1006
+ } },
1007
+ host: {
1008
+ attributes: { "data-slot": "context-menu-shortcut" },
1009
+ properties: { "attr.class": "classes()" }
1010
+ },
1011
+ hostDirectives: [{ directive: i1.UiElementHost }],
1012
+ ngImport: i0
1013
+ });
1014
+ };
1015
+ i0.ɵɵngDeclareClassMetadata({
1016
+ minVersion: "12.0.0",
1017
+ version: "22.2.2",
1018
+ ngImport: i0,
1019
+ type: UiContextMenuShortcut,
1020
+ decorators: [{
1021
+ type: Directive,
1022
+ args: [{
1023
+ selector: "[uiContextMenuShortcut], ui-context-menu-shortcut",
1024
+ hostDirectives: [UiElementHost],
1025
+ host: {
1026
+ "data-slot": "context-menu-shortcut",
1027
+ "[attr.class]": "classes()"
1028
+ }
1029
+ }]
1030
+ }],
1031
+ propDecorators: { userClass: [{
1032
+ type: i0.Input,
1033
+ args: [{
1034
+ isSignal: true,
1035
+ alias: "class",
1036
+ required: false
1037
+ }]
1038
+ }] }
1039
+ });
1040
+ var UiContextMenuGroup = class UiContextMenuGroup {
1041
+ static ɵfac = i0.ɵɵngDeclareFactory({
1042
+ minVersion: "12.0.0",
1043
+ version: "22.2.2",
1044
+ ngImport: i0,
1045
+ type: UiContextMenuGroup,
1046
+ deps: [],
1047
+ target: i0.ɵɵFactoryTarget.Directive
1048
+ });
1049
+ static ɵdir = i0.ɵɵngDeclareDirective({
1050
+ minVersion: "14.0.0",
1051
+ version: "22.2.2",
1052
+ type: UiContextMenuGroup,
1053
+ isStandalone: true,
1054
+ selector: "[uiContextMenuGroup], ui-context-menu-group",
1055
+ host: { attributes: {
1056
+ "role": "group",
1057
+ "data-slot": "context-menu-group"
1058
+ } },
1059
+ hostDirectives: [{ directive: i1.UiElementHost }],
1060
+ ngImport: i0
1061
+ });
1062
+ };
1063
+ i0.ɵɵngDeclareClassMetadata({
1064
+ minVersion: "12.0.0",
1065
+ version: "22.2.2",
1066
+ ngImport: i0,
1067
+ type: UiContextMenuGroup,
1068
+ decorators: [{
1069
+ type: Directive,
1070
+ args: [{
1071
+ selector: "[uiContextMenuGroup], ui-context-menu-group",
1072
+ hostDirectives: [UiElementHost],
1073
+ host: {
1074
+ role: "group",
1075
+ "data-slot": "context-menu-group"
1076
+ }
1077
+ }]
1078
+ }]
1079
+ });
1080
+ const CONTEXT_MENU_SHARED = [
1081
+ UiContextMenuItem,
1082
+ UiContextMenuCheckboxItem,
1083
+ UiContextMenuRadioGroup,
1084
+ UiContextMenuRadioItem,
1085
+ UiContextMenuSub,
1086
+ UiContextMenuSubTrigger,
1087
+ UiContextMenuSubContent,
1088
+ UiContextMenuLabel,
1089
+ UiContextMenuSeparator,
1090
+ UiContextMenuShortcut,
1091
+ UiContextMenuGroup
1092
+ ];
1093
+ var UiContextMenu = class UiContextMenu extends UiMenuRootBase {
1094
+ static ɵfac = i0.ɵɵngDeclareFactory({
1095
+ minVersion: "12.0.0",
1096
+ version: "22.2.2",
1097
+ ngImport: i0,
1098
+ type: UiContextMenu,
1099
+ deps: null,
1100
+ target: i0.ɵɵFactoryTarget.Directive
1101
+ });
1102
+ static ɵdir = i0.ɵɵngDeclareDirective({
1103
+ minVersion: "14.0.0",
1104
+ version: "22.2.2",
1105
+ type: UiContextMenu,
1106
+ isStandalone: true,
1107
+ selector: "[uiContextMenu], ui-context-menu",
1108
+ providers: [{
1109
+ provide: UI_MENU_CTX,
1110
+ useExisting: forwardRef(() => UiContextMenu)
1111
+ }],
1112
+ exportAs: ["uiContextMenu"],
1113
+ usesInheritance: true,
1114
+ hostDirectives: [{ directive: i1.UiElementHost }],
1115
+ ngImport: i0
1116
+ });
1117
+ };
1118
+ i0.ɵɵngDeclareClassMetadata({
1119
+ minVersion: "12.0.0",
1120
+ version: "22.2.2",
1121
+ ngImport: i0,
1122
+ type: UiContextMenu,
1123
+ decorators: [{
1124
+ type: Directive,
1125
+ args: [{
1126
+ selector: "[uiContextMenu], ui-context-menu",
1127
+ hostDirectives: [UiElementHost],
1128
+ exportAs: "uiContextMenu",
1129
+ providers: [{
1130
+ provide: UI_MENU_CTX,
1131
+ useExisting: forwardRef(() => UiContextMenu)
1132
+ }]
1133
+ }]
1134
+ }]
1135
+ });
1136
+ var UiContextMenuTrigger = class UiContextMenuTrigger {
1137
+ root = inject(UiContextMenu);
1138
+ el = inject(ElementRef).nativeElement;
1139
+ constructor() {
1140
+ this.root.trigger.set(this.el);
1141
+ }
1142
+ onContext(e) {
1143
+ e.preventDefault();
1144
+ this.root.anchorPoint.set({
1145
+ x: e.clientX,
1146
+ y: e.clientY
1147
+ });
1148
+ this.root.keyboardOpen = null;
1149
+ this.root.open.set(true);
1150
+ }
1151
+ onKeydown(e) {
1152
+ if (e.key === "ContextMenu" || e.key === "F10" && e.shiftKey) {
1153
+ e.preventDefault();
1154
+ const r = this.el.getBoundingClientRect();
1155
+ this.root.anchorPoint.set({
1156
+ x: r.left + r.width / 2,
1157
+ y: r.top + r.height / 2
1158
+ });
1159
+ this.root.keyboardOpen = "first";
1160
+ this.root.open.set(true);
1161
+ }
1162
+ }
1163
+ static ɵfac = i0.ɵɵngDeclareFactory({
1164
+ minVersion: "12.0.0",
1165
+ version: "22.2.2",
1166
+ ngImport: i0,
1167
+ type: UiContextMenuTrigger,
1168
+ deps: [],
1169
+ target: i0.ɵɵFactoryTarget.Directive
1170
+ });
1171
+ static ɵdir = i0.ɵɵngDeclareDirective({
1172
+ minVersion: "14.0.0",
1173
+ version: "22.2.2",
1174
+ type: UiContextMenuTrigger,
1175
+ isStandalone: true,
1176
+ selector: "[uiContextMenuTrigger], ui-context-menu-trigger",
1177
+ host: {
1178
+ attributes: { "data-slot": "context-menu-trigger" },
1179
+ listeners: {
1180
+ "contextmenu": "onContext($event)",
1181
+ "keydown": "onKeydown($event)"
1182
+ },
1183
+ properties: { "attr.data-state": "root.open() ? \"open\" : \"closed\"" }
1184
+ },
1185
+ hostDirectives: [{ directive: i1.UiElementHost }],
1186
+ ngImport: i0
1187
+ });
1188
+ };
1189
+ i0.ɵɵngDeclareClassMetadata({
1190
+ minVersion: "12.0.0",
1191
+ version: "22.2.2",
1192
+ ngImport: i0,
1193
+ type: UiContextMenuTrigger,
1194
+ decorators: [{
1195
+ type: Directive,
1196
+ args: [{
1197
+ selector: "[uiContextMenuTrigger], ui-context-menu-trigger",
1198
+ hostDirectives: [UiElementHost],
1199
+ host: {
1200
+ "data-slot": "context-menu-trigger",
1201
+ "[attr.data-state]": "root.open() ? \"open\" : \"closed\"",
1202
+ "(contextmenu)": "onContext($event)",
1203
+ "(keydown)": "onKeydown($event)"
1204
+ }
1205
+ }]
1206
+ }],
1207
+ ctorParameters: () => []
1208
+ });
1209
+ var UiContextMenuContent = class UiContextMenuContent extends UiMenuContentBase {
1210
+ root = inject(UiContextMenu);
1211
+ menu = this.root;
1212
+ varPrefix = "--radix-context-menu";
1213
+ side = input("right", ...ngDevMode ? [{ debugName: "side" }] : /* istanbul ignore next */ []);
1214
+ align = input("start", ...ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []);
1215
+ sideOffset = input(2, ...ngDevMode ? [{ debugName: "sideOffset" }] : /* istanbul ignore next */ []);
1216
+ items = contentChildren(UI_MENU_ITEM, {
1217
+ ...ngDevMode ? { debugName: "items" } : /* istanbul ignore next */ {},
1218
+ descendants: true
1219
+ });
1220
+ classes = computed(() => cn(contextMenuContentClass, this.userClass()), ...ngDevMode ? [{ debugName: "classes" }] : /* istanbul ignore next */ []);
1221
+ menuItems() {
1222
+ return this.items();
1223
+ }
1224
+ constructor() {
1225
+ super();
1226
+ this.init();
1227
+ }
1228
+ static ɵfac = i0.ɵɵngDeclareFactory({
1229
+ minVersion: "12.0.0",
1230
+ version: "22.2.2",
1231
+ ngImport: i0,
1232
+ type: UiContextMenuContent,
1233
+ deps: [],
1234
+ target: i0.ɵɵFactoryTarget.Directive
1235
+ });
1236
+ static ɵdir = i0.ɵɵngDeclareDirective({
1237
+ minVersion: "17.2.0",
1238
+ version: "22.2.2",
1239
+ type: UiContextMenuContent,
1240
+ isStandalone: true,
1241
+ selector: "[uiContextMenuContent], ui-context-menu-content",
1242
+ inputs: {
1243
+ side: {
1244
+ classPropertyName: "side",
1245
+ publicName: "side",
1246
+ isSignal: true,
1247
+ isRequired: false,
1248
+ transformFunction: null
1249
+ },
1250
+ align: {
1251
+ classPropertyName: "align",
1252
+ publicName: "align",
1253
+ isSignal: true,
1254
+ isRequired: false,
1255
+ transformFunction: null
1256
+ },
1257
+ sideOffset: {
1258
+ classPropertyName: "sideOffset",
1259
+ publicName: "sideOffset",
1260
+ isSignal: true,
1261
+ isRequired: false,
1262
+ transformFunction: null
1263
+ }
1264
+ },
1265
+ host: {
1266
+ attributes: {
1267
+ "role": "menu",
1268
+ "aria-orientation": "vertical",
1269
+ "data-slot": "context-menu-content",
1270
+ "data-orientation": "vertical",
1271
+ "tabindex": "-1"
1272
+ },
1273
+ listeners: { "keydown": "onMenuKeydown($event)" },
1274
+ properties: {
1275
+ "id": "root.id",
1276
+ "attr.data-state": "root.state()",
1277
+ "attr.dir": "dir.value",
1278
+ "attr.class": "classes()"
1279
+ }
1280
+ },
1281
+ queries: [{
1282
+ propertyName: "items",
1283
+ predicate: UI_MENU_ITEM,
1284
+ descendants: true,
1285
+ isSignal: true
1286
+ }],
1287
+ usesInheritance: true,
1288
+ hostDirectives: [{ directive: i1.UiElementHost }],
1289
+ ngImport: i0
1290
+ });
1291
+ };
1292
+ i0.ɵɵngDeclareClassMetadata({
1293
+ minVersion: "12.0.0",
1294
+ version: "22.2.2",
1295
+ ngImport: i0,
1296
+ type: UiContextMenuContent,
1297
+ decorators: [{
1298
+ type: Directive,
1299
+ args: [{
1300
+ selector: "[uiContextMenuContent], ui-context-menu-content",
1301
+ hostDirectives: [UiElementHost],
1302
+ host: {
1303
+ role: "menu",
1304
+ "aria-orientation": "vertical",
1305
+ "data-slot": "context-menu-content",
1306
+ "data-orientation": "vertical",
1307
+ tabindex: "-1",
1308
+ "[id]": "root.id",
1309
+ "[attr.data-state]": "root.state()",
1310
+ "[attr.dir]": "dir.value",
1311
+ "[attr.class]": "classes()",
1312
+ "(keydown)": "onMenuKeydown($event)"
1313
+ }
1314
+ }]
1315
+ }],
1316
+ ctorParameters: () => [],
1317
+ propDecorators: {
1318
+ side: [{
1319
+ type: i0.Input,
1320
+ args: [{
1321
+ isSignal: true,
1322
+ alias: "side",
1323
+ required: false
1324
+ }]
1325
+ }],
1326
+ align: [{
1327
+ type: i0.Input,
1328
+ args: [{
1329
+ isSignal: true,
1330
+ alias: "align",
1331
+ required: false
1332
+ }]
1333
+ }],
1334
+ sideOffset: [{
1335
+ type: i0.Input,
1336
+ args: [{
1337
+ isSignal: true,
1338
+ alias: "sideOffset",
1339
+ required: false
1340
+ }]
1341
+ }],
1342
+ items: [{
1343
+ type: i0.ContentChildren,
1344
+ args: [i0.forwardRef(() => UI_MENU_ITEM), {
1345
+ descendants: true,
1346
+ isSignal: true
1347
+ }]
1348
+ }]
1349
+ }
1350
+ });
1351
+ const UI_CONTEXT_MENU = [
1352
+ UiContextMenu,
1353
+ UiContextMenuTrigger,
1354
+ UiContextMenuContent,
1355
+ ...CONTEXT_MENU_SHARED
1356
+ ];
1357
+ export { CONTEXT_MENU_SHARED, UI_CONTEXT_MENU, UI_CONTEXT_MENU_GENERATED, UiContextMenu, UiContextMenuCheckboxItem, UiContextMenuContent, UiContextMenuGroup, UiContextMenuItem, UiContextMenuLabel, UiContextMenuRadioGroup, UiContextMenuRadioItem, UiContextMenuSeparator, UiContextMenuShortcut, UiContextMenuSub, UiContextMenuSubContent, UiContextMenuSubTrigger, UiContextMenuTrigger, UiMenuSelectEvent, contextMenuCheckboxItemClass, contextMenuContentClass, contextMenuItemClass, contextMenuLabelClass, contextMenuRadioItemClass, contextMenuSeparatorClass, contextMenuShortcutClass, contextMenuSubTriggerClass, contextMenuTriggerClass };
1358
+
1359
+ //# sourceMappingURL=loomui-ng-ui-context-menu.mjs.map