yukit-web 0.0.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 (196) hide show
  1. package/.npm/_logs/2026-08-20T08_40_55_706Z-debug-0.log +38 -0
  2. package/.npm/_logs/2026-08-20T08_40_56_280Z-debug-0.log +14 -0
  3. package/README.md +1465 -0
  4. package/fesm2022/yukit-web-helm-accordion.mjs +141 -0
  5. package/fesm2022/yukit-web-helm-accordion.mjs.map +1 -0
  6. package/fesm2022/yukit-web-helm-alert-dialog.mjs +250 -0
  7. package/fesm2022/yukit-web-helm-alert-dialog.mjs.map +1 -0
  8. package/fesm2022/yukit-web-helm-alert.mjs +94 -0
  9. package/fesm2022/yukit-web-helm-alert.mjs.map +1 -0
  10. package/fesm2022/yukit-web-helm-aspect-ratio.mjs +47 -0
  11. package/fesm2022/yukit-web-helm-aspect-ratio.mjs.map +1 -0
  12. package/fesm2022/yukit-web-helm-attachment.mjs +211 -0
  13. package/fesm2022/yukit-web-helm-attachment.mjs.map +1 -0
  14. package/fesm2022/yukit-web-helm-autocomplete.mjs +361 -0
  15. package/fesm2022/yukit-web-helm-autocomplete.mjs.map +1 -0
  16. package/fesm2022/yukit-web-helm-avatar.mjs +152 -0
  17. package/fesm2022/yukit-web-helm-avatar.mjs.map +1 -0
  18. package/fesm2022/yukit-web-helm-badge.mjs +47 -0
  19. package/fesm2022/yukit-web-helm-badge.mjs.map +1 -0
  20. package/fesm2022/yukit-web-helm-breadcrumb.mjs +196 -0
  21. package/fesm2022/yukit-web-helm-breadcrumb.mjs.map +1 -0
  22. package/fesm2022/yukit-web-helm-bubble.mjs +121 -0
  23. package/fesm2022/yukit-web-helm-bubble.mjs.map +1 -0
  24. package/fesm2022/yukit-web-helm-button-group.mjs +86 -0
  25. package/fesm2022/yukit-web-helm-button-group.mjs.map +1 -0
  26. package/fesm2022/yukit-web-helm-button.mjs +77 -0
  27. package/fesm2022/yukit-web-helm-button.mjs.map +1 -0
  28. package/fesm2022/yukit-web-helm-calendar.mjs +937 -0
  29. package/fesm2022/yukit-web-helm-calendar.mjs.map +1 -0
  30. package/fesm2022/yukit-web-helm-card.mjs +141 -0
  31. package/fesm2022/yukit-web-helm-card.mjs.map +1 -0
  32. package/fesm2022/yukit-web-helm-carousel.mjs +270 -0
  33. package/fesm2022/yukit-web-helm-carousel.mjs.map +1 -0
  34. package/fesm2022/yukit-web-helm-checkbox.mjs +147 -0
  35. package/fesm2022/yukit-web-helm-checkbox.mjs.map +1 -0
  36. package/fesm2022/yukit-web-helm-collapsible.mjs +62 -0
  37. package/fesm2022/yukit-web-helm-collapsible.mjs.map +1 -0
  38. package/fesm2022/yukit-web-helm-combobox.mjs +624 -0
  39. package/fesm2022/yukit-web-helm-combobox.mjs.map +1 -0
  40. package/fesm2022/yukit-web-helm-command.mjs +315 -0
  41. package/fesm2022/yukit-web-helm-command.mjs.map +1 -0
  42. package/fesm2022/yukit-web-helm-context-menu.mjs +71 -0
  43. package/fesm2022/yukit-web-helm-context-menu.mjs.map +1 -0
  44. package/fesm2022/yukit-web-helm-date-picker.mjs +1517 -0
  45. package/fesm2022/yukit-web-helm-date-picker.mjs.map +1 -0
  46. package/fesm2022/yukit-web-helm-dialog.mjs +271 -0
  47. package/fesm2022/yukit-web-helm-dialog.mjs.map +1 -0
  48. package/fesm2022/yukit-web-helm-drawer.mjs +233 -0
  49. package/fesm2022/yukit-web-helm-drawer.mjs.map +1 -0
  50. package/fesm2022/yukit-web-helm-dropdown-menu.mjs +508 -0
  51. package/fesm2022/yukit-web-helm-dropdown-menu.mjs.map +1 -0
  52. package/fesm2022/yukit-web-helm-empty.mjs +125 -0
  53. package/fesm2022/yukit-web-helm-empty.mjs.map +1 -0
  54. package/fesm2022/yukit-web-helm-field.mjs +325 -0
  55. package/fesm2022/yukit-web-helm-field.mjs.map +1 -0
  56. package/fesm2022/yukit-web-helm-hover-card.mjs +102 -0
  57. package/fesm2022/yukit-web-helm-hover-card.mjs.map +1 -0
  58. package/fesm2022/yukit-web-helm-input-group.mjs +171 -0
  59. package/fesm2022/yukit-web-helm-input-group.mjs.map +1 -0
  60. package/fesm2022/yukit-web-helm-input-otp.mjs +127 -0
  61. package/fesm2022/yukit-web-helm-input-otp.mjs.map +1 -0
  62. package/fesm2022/yukit-web-helm-input.mjs +32 -0
  63. package/fesm2022/yukit-web-helm-input.mjs.map +1 -0
  64. package/fesm2022/yukit-web-helm-item.mjs +242 -0
  65. package/fesm2022/yukit-web-helm-item.mjs.map +1 -0
  66. package/fesm2022/yukit-web-helm-kbd.mjs +46 -0
  67. package/fesm2022/yukit-web-helm-kbd.mjs.map +1 -0
  68. package/fesm2022/yukit-web-helm-label.mjs +30 -0
  69. package/fesm2022/yukit-web-helm-label.mjs.map +1 -0
  70. package/fesm2022/yukit-web-helm-marker.mjs +77 -0
  71. package/fesm2022/yukit-web-helm-marker.mjs.map +1 -0
  72. package/fesm2022/yukit-web-helm-menubar.mjs +90 -0
  73. package/fesm2022/yukit-web-helm-menubar.mjs.map +1 -0
  74. package/fesm2022/yukit-web-helm-message.mjs +115 -0
  75. package/fesm2022/yukit-web-helm-message.mjs.map +1 -0
  76. package/fesm2022/yukit-web-helm-native-select.mjs +180 -0
  77. package/fesm2022/yukit-web-helm-native-select.mjs.map +1 -0
  78. package/fesm2022/yukit-web-helm-navigation-menu.mjs +173 -0
  79. package/fesm2022/yukit-web-helm-navigation-menu.mjs.map +1 -0
  80. package/fesm2022/yukit-web-helm-pagination.mjs +745 -0
  81. package/fesm2022/yukit-web-helm-pagination.mjs.map +1 -0
  82. package/fesm2022/yukit-web-helm-popover.mjs +136 -0
  83. package/fesm2022/yukit-web-helm-popover.mjs.map +1 -0
  84. package/fesm2022/yukit-web-helm-progress.mjs +60 -0
  85. package/fesm2022/yukit-web-helm-progress.mjs.map +1 -0
  86. package/fesm2022/yukit-web-helm-radio-group.mjs +185 -0
  87. package/fesm2022/yukit-web-helm-radio-group.mjs.map +1 -0
  88. package/fesm2022/yukit-web-helm-resizable.mjs +98 -0
  89. package/fesm2022/yukit-web-helm-resizable.mjs.map +1 -0
  90. package/fesm2022/yukit-web-helm-scroll-area.mjs +36 -0
  91. package/fesm2022/yukit-web-helm-scroll-area.mjs.map +1 -0
  92. package/fesm2022/yukit-web-helm-select.mjs +412 -0
  93. package/fesm2022/yukit-web-helm-select.mjs.map +1 -0
  94. package/fesm2022/yukit-web-helm-separator.mjs +33 -0
  95. package/fesm2022/yukit-web-helm-separator.mjs.map +1 -0
  96. package/fesm2022/yukit-web-helm-sheet.mjs +254 -0
  97. package/fesm2022/yukit-web-helm-sheet.mjs.map +1 -0
  98. package/fesm2022/yukit-web-helm-sidebar.mjs +857 -0
  99. package/fesm2022/yukit-web-helm-sidebar.mjs.map +1 -0
  100. package/fesm2022/yukit-web-helm-skeleton.mjs +29 -0
  101. package/fesm2022/yukit-web-helm-skeleton.mjs.map +1 -0
  102. package/fesm2022/yukit-web-helm-slider.mjs +123 -0
  103. package/fesm2022/yukit-web-helm-slider.mjs.map +1 -0
  104. package/fesm2022/yukit-web-helm-sonner.mjs +126 -0
  105. package/fesm2022/yukit-web-helm-sonner.mjs.map +1 -0
  106. package/fesm2022/yukit-web-helm-spinner.mjs +48 -0
  107. package/fesm2022/yukit-web-helm-spinner.mjs.map +1 -0
  108. package/fesm2022/yukit-web-helm-switch.mjs +126 -0
  109. package/fesm2022/yukit-web-helm-switch.mjs.map +1 -0
  110. package/fesm2022/yukit-web-helm-table.mjs +180 -0
  111. package/fesm2022/yukit-web-helm-table.mjs.map +1 -0
  112. package/fesm2022/yukit-web-helm-tabs.mjs +251 -0
  113. package/fesm2022/yukit-web-helm-tabs.mjs.map +1 -0
  114. package/fesm2022/yukit-web-helm-textarea.mjs +32 -0
  115. package/fesm2022/yukit-web-helm-textarea.mjs.map +1 -0
  116. package/fesm2022/yukit-web-helm-toggle-group.mjs +95 -0
  117. package/fesm2022/yukit-web-helm-toggle-group.mjs.map +1 -0
  118. package/fesm2022/yukit-web-helm-toggle.mjs +61 -0
  119. package/fesm2022/yukit-web-helm-toggle.mjs.map +1 -0
  120. package/fesm2022/yukit-web-helm-tooltip.mjs +57 -0
  121. package/fesm2022/yukit-web-helm-tooltip.mjs.map +1 -0
  122. package/fesm2022/yukit-web-helm-typography.mjs +205 -0
  123. package/fesm2022/yukit-web-helm-typography.mjs.map +1 -0
  124. package/fesm2022/yukit-web-helm-utils.mjs +272 -0
  125. package/fesm2022/yukit-web-helm-utils.mjs.map +1 -0
  126. package/fesm2022/yukit-web.mjs +3592 -0
  127. package/fesm2022/yukit-web.mjs.map +1 -0
  128. package/package.json +291 -0
  129. package/src/lib/theme/spartan-overwrites/accordion.css +4 -0
  130. package/src/lib/theme/theme.css +161 -0
  131. package/src/lib/theme/tokens/color.css +356 -0
  132. package/src/lib/theme/tokens/component-colors.css +167 -0
  133. package/src/lib/theme/tokens/radius.css +18 -0
  134. package/src/lib/theme/tokens/typography.css +201 -0
  135. package/types/yukit-web-helm-accordion.d.ts +32 -0
  136. package/types/yukit-web-helm-alert-dialog.d.ts +85 -0
  137. package/types/yukit-web-helm-alert.d.ts +37 -0
  138. package/types/yukit-web-helm-aspect-ratio.d.ts +16 -0
  139. package/types/yukit-web-helm-attachment.d.ts +80 -0
  140. package/types/yukit-web-helm-autocomplete.d.ts +91 -0
  141. package/types/yukit-web-helm-avatar.d.ts +45 -0
  142. package/types/yukit-web-helm-badge.d.ts +19 -0
  143. package/types/yukit-web-helm-breadcrumb.d.ts +52 -0
  144. package/types/yukit-web-helm-bubble.d.ts +46 -0
  145. package/types/yukit-web-helm-button-group.d.ts +25 -0
  146. package/types/yukit-web-helm-button.d.ts +33 -0
  147. package/types/yukit-web-helm-calendar.d.ts +89 -0
  148. package/types/yukit-web-helm-card.d.ts +49 -0
  149. package/types/yukit-web-helm-carousel.d.ts +79 -0
  150. package/types/yukit-web-helm-checkbox.d.ts +60 -0
  151. package/types/yukit-web-helm-collapsible.d.ts +22 -0
  152. package/types/yukit-web-helm-combobox.d.ts +150 -0
  153. package/types/yukit-web-helm-command.d.ts +84 -0
  154. package/types/yukit-web-helm-context-menu.d.ts +29 -0
  155. package/types/yukit-web-helm-date-picker.d.ts +574 -0
  156. package/types/yukit-web-helm-dialog.d.ts +90 -0
  157. package/types/yukit-web-helm-drawer.d.ts +71 -0
  158. package/types/yukit-web-helm-dropdown-menu.d.ts +171 -0
  159. package/types/yukit-web-helm-empty.d.ts +49 -0
  160. package/types/yukit-web-helm-field.d.ts +102 -0
  161. package/types/yukit-web-helm-hover-card.d.ts +31 -0
  162. package/types/yukit-web-helm-input-group.d.ts +47 -0
  163. package/types/yukit-web-helm-input-otp.d.ts +40 -0
  164. package/types/yukit-web-helm-input.d.ts +13 -0
  165. package/types/yukit-web-helm-item.d.ts +96 -0
  166. package/types/yukit-web-helm-kbd.d.ts +17 -0
  167. package/types/yukit-web-helm-label.d.ts +12 -0
  168. package/types/yukit-web-helm-marker.d.ts +31 -0
  169. package/types/yukit-web-helm-menubar.d.ts +35 -0
  170. package/types/yukit-web-helm-message.d.ts +44 -0
  171. package/types/yukit-web-helm-native-select.d.ts +65 -0
  172. package/types/yukit-web-helm-navigation-menu.d.ts +49 -0
  173. package/types/yukit-web-helm-pagination.d.ts +187 -0
  174. package/types/yukit-web-helm-popover.d.ts +49 -0
  175. package/types/yukit-web-helm-progress.d.ts +22 -0
  176. package/types/yukit-web-helm-radio-group.d.ts +66 -0
  177. package/types/yukit-web-helm-resizable.d.ts +27 -0
  178. package/types/yukit-web-helm-scroll-area.d.ts +11 -0
  179. package/types/yukit-web-helm-select.d.ts +114 -0
  180. package/types/yukit-web-helm-separator.d.ts +13 -0
  181. package/types/yukit-web-helm-sheet.d.ts +75 -0
  182. package/types/yukit-web-helm-sidebar.d.ts +232 -0
  183. package/types/yukit-web-helm-skeleton.d.ts +11 -0
  184. package/types/yukit-web-helm-slider.d.ts +14 -0
  185. package/types/yukit-web-helm-sonner.d.ts +52 -0
  186. package/types/yukit-web-helm-spinner.d.ts +18 -0
  187. package/types/yukit-web-helm-switch.d.ts +54 -0
  188. package/types/yukit-web-helm-table.d.ts +82 -0
  189. package/types/yukit-web-helm-tabs.d.ts +66 -0
  190. package/types/yukit-web-helm-textarea.d.ts +13 -0
  191. package/types/yukit-web-helm-toggle-group.d.ts +34 -0
  192. package/types/yukit-web-helm-toggle.d.ts +22 -0
  193. package/types/yukit-web-helm-tooltip.d.ts +17 -0
  194. package/types/yukit-web-helm-typography.d.ts +89 -0
  195. package/types/yukit-web-helm-utils.d.ts +44 -0
  196. package/types/yukit-web.d.ts +2426 -0
@@ -0,0 +1,115 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, Directive } from '@angular/core';
3
+ import { classes } from 'yukit-web/helm/utils';
4
+
5
+ class HlmMessage {
6
+ constructor() {
7
+ this.align = input('start', ...(ngDevMode ? [{ debugName: "align" }] : /* istanbul ignore next */ []));
8
+ classes(() => 'gap-2 text-sm group/message relative flex w-full min-w-0 data-[align=end]:flex-row-reverse');
9
+ }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
11
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: HlmMessage, isStandalone: true, selector: "[hlmMessage],hlm-message", inputs: { align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "message" }, properties: { "attr.data-align": "align()", "attr.align": "null" } }, ngImport: i0 }); }
12
+ }
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessage, decorators: [{
14
+ type: Directive,
15
+ args: [{
16
+ selector: '[hlmMessage],hlm-message',
17
+ host: {
18
+ 'data-slot': 'message',
19
+ '[attr.data-align]': 'align()',
20
+ // Prevent the legacy HTML `align` attribute from forcing text-align.
21
+ '[attr.align]': 'null',
22
+ },
23
+ }]
24
+ }], ctorParameters: () => [], propDecorators: { align: [{ type: i0.Input, args: [{ isSignal: true, alias: "align", required: false }] }] } });
25
+
26
+ class HlmMessageAvatar {
27
+ constructor() {
28
+ classes(() => 'bg-muted min-w-8 rounded-full flex w-fit shrink-0 items-center justify-center self-end overflow-hidden group-has-data-[slot=message-footer]/message:-translate-y-8');
29
+ }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageAvatar, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
31
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmMessageAvatar, isStandalone: true, selector: "[hlmMessageAvatar],hlm-message-avatar", host: { attributes: { "data-slot": "message-avatar" } }, ngImport: i0 }); }
32
+ }
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageAvatar, decorators: [{
34
+ type: Directive,
35
+ args: [{
36
+ selector: '[hlmMessageAvatar],hlm-message-avatar',
37
+ host: { 'data-slot': 'message-avatar' },
38
+ }]
39
+ }], ctorParameters: () => [] });
40
+
41
+ class HlmMessageContent {
42
+ constructor() {
43
+ classes(() => 'gap-2.5 flex w-full min-w-0 flex-col wrap-break-word group-data-[align=end]/message:*:data-slot:self-end');
44
+ }
45
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
46
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmMessageContent, isStandalone: true, selector: "[hlmMessageContent],hlm-message-content", host: { attributes: { "data-slot": "message-content" } }, ngImport: i0 }); }
47
+ }
48
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageContent, decorators: [{
49
+ type: Directive,
50
+ args: [{
51
+ selector: '[hlmMessageContent],hlm-message-content',
52
+ host: { 'data-slot': 'message-content' },
53
+ }]
54
+ }], ctorParameters: () => [] });
55
+
56
+ class HlmMessageFooter {
57
+ constructor() {
58
+ classes(() => 'text-muted-foreground px-3 text-xs font-medium flex max-w-full min-w-0 items-center group-has-data-[variant=ghost]/message:px-0 group-data-[align=end]/message:justify-end');
59
+ }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageFooter, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
61
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmMessageFooter, isStandalone: true, selector: "[hlmMessageFooter],hlm-message-footer", host: { attributes: { "data-slot": "message-footer" } }, ngImport: i0 }); }
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageFooter, decorators: [{
64
+ type: Directive,
65
+ args: [{
66
+ selector: '[hlmMessageFooter],hlm-message-footer',
67
+ host: { 'data-slot': 'message-footer' },
68
+ }]
69
+ }], ctorParameters: () => [] });
70
+
71
+ class HlmMessageGroup {
72
+ constructor() {
73
+ classes(() => 'gap-2 flex min-w-0 flex-col');
74
+ }
75
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
76
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmMessageGroup, isStandalone: true, selector: "[hlmMessageGroup],hlm-message-group", host: { attributes: { "data-slot": "message-group" } }, ngImport: i0 }); }
77
+ }
78
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageGroup, decorators: [{
79
+ type: Directive,
80
+ args: [{
81
+ selector: '[hlmMessageGroup],hlm-message-group',
82
+ host: { 'data-slot': 'message-group' },
83
+ }]
84
+ }], ctorParameters: () => [] });
85
+
86
+ class HlmMessageHeader {
87
+ constructor() {
88
+ classes(() => 'text-muted-foreground px-3 text-xs font-medium flex max-w-full min-w-0 items-center group-has-data-[variant=ghost]/message:px-0');
89
+ }
90
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageHeader, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
91
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmMessageHeader, isStandalone: true, selector: "[hlmMessageHeader],hlm-message-header", host: { attributes: { "data-slot": "message-header" } }, ngImport: i0 }); }
92
+ }
93
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmMessageHeader, decorators: [{
94
+ type: Directive,
95
+ args: [{
96
+ selector: '[hlmMessageHeader],hlm-message-header',
97
+ host: { 'data-slot': 'message-header' },
98
+ }]
99
+ }], ctorParameters: () => [] });
100
+
101
+ const HlmMessageImports = [
102
+ HlmMessage,
103
+ HlmMessageAvatar,
104
+ HlmMessageContent,
105
+ HlmMessageFooter,
106
+ HlmMessageGroup,
107
+ HlmMessageHeader,
108
+ ];
109
+
110
+ /**
111
+ * Generated bundle index. Do not edit.
112
+ */
113
+
114
+ export { HlmMessage, HlmMessageAvatar, HlmMessageContent, HlmMessageFooter, HlmMessageGroup, HlmMessageHeader, HlmMessageImports };
115
+ //# sourceMappingURL=yukit-web-helm-message.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yukit-web-helm-message.mjs","sources":["../../../projects/yukit-web/helm/message/src/lib/hlm-message.ts","../../../projects/yukit-web/helm/message/src/lib/hlm-message-avatar.ts","../../../projects/yukit-web/helm/message/src/lib/hlm-message-content.ts","../../../projects/yukit-web/helm/message/src/lib/hlm-message-footer.ts","../../../projects/yukit-web/helm/message/src/lib/hlm-message-group.ts","../../../projects/yukit-web/helm/message/src/lib/hlm-message-header.ts","../../../projects/yukit-web/helm/message/src/index.ts","../../../projects/yukit-web/helm/message/src/yukit-web-helm-message.ts"],"sourcesContent":["import { Directive, input } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\nexport type MessageAlign = 'start' | 'end';\n\n@Directive({\n\tselector: '[hlmMessage],hlm-message',\n\thost: {\n\t\t'data-slot': 'message',\n\t\t'[attr.data-align]': 'align()',\n\t\t// Prevent the legacy HTML `align` attribute from forcing text-align.\n\t\t'[attr.align]': 'null',\n\t},\n})\nexport class HlmMessage {\n\tpublic readonly align = input<MessageAlign>('start');\n\n\tconstructor() {\n\t\tclasses(() => 'gap-2 text-sm group/message relative flex w-full min-w-0 data-[align=end]:flex-row-reverse');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmMessageAvatar],hlm-message-avatar',\n\thost: { 'data-slot': 'message-avatar' },\n})\nexport class HlmMessageAvatar {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'bg-muted min-w-8 rounded-full flex w-fit shrink-0 items-center justify-center self-end overflow-hidden group-has-data-[slot=message-footer]/message:-translate-y-8',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmMessageContent],hlm-message-content',\n\thost: { 'data-slot': 'message-content' },\n})\nexport class HlmMessageContent {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'gap-2.5 flex w-full min-w-0 flex-col wrap-break-word group-data-[align=end]/message:*:data-slot:self-end',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmMessageFooter],hlm-message-footer',\n\thost: { 'data-slot': 'message-footer' },\n})\nexport class HlmMessageFooter {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'text-muted-foreground px-3 text-xs font-medium flex max-w-full min-w-0 items-center group-has-data-[variant=ghost]/message:px-0 group-data-[align=end]/message:justify-end',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmMessageGroup],hlm-message-group',\n\thost: { 'data-slot': 'message-group' },\n})\nexport class HlmMessageGroup {\n\tconstructor() {\n\t\tclasses(() => 'gap-2 flex min-w-0 flex-col');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmMessageHeader],hlm-message-header',\n\thost: { 'data-slot': 'message-header' },\n})\nexport class HlmMessageHeader {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => 'text-muted-foreground px-3 text-xs font-medium flex max-w-full min-w-0 items-center group-has-data-[variant=ghost]/message:px-0',\n\t\t);\n\t}\n}\n","import { HlmMessage } from './lib/hlm-message';\nimport { HlmMessageAvatar } from './lib/hlm-message-avatar';\nimport { HlmMessageContent } from './lib/hlm-message-content';\nimport { HlmMessageFooter } from './lib/hlm-message-footer';\nimport { HlmMessageGroup } from './lib/hlm-message-group';\nimport { HlmMessageHeader } from './lib/hlm-message-header';\n\nexport * from './lib/hlm-message';\nexport * from './lib/hlm-message-avatar';\nexport * from './lib/hlm-message-content';\nexport * from './lib/hlm-message-footer';\nexport * from './lib/hlm-message-group';\nexport * from './lib/hlm-message-header';\n\nexport const HlmMessageImports = [\n\tHlmMessage,\n\tHlmMessageAvatar,\n\tHlmMessageContent,\n\tHlmMessageFooter,\n\tHlmMessageGroup,\n\tHlmMessageHeader,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,180 @@
1
+ import * as i0 from '@angular/core';
2
+ import { forwardRef, inject, input, computed, booleanAttribute, linkedSignal, output, ChangeDetectionStrategy, Component, Directive } from '@angular/core';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+ import { NgIcon, provideIcons } from '@ng-icons/core';
5
+ import { lucideChevronDown } from '@ng-icons/lucide';
6
+ import * as i1 from '@spartan-ng/brain/field';
7
+ import { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';
8
+ import { hlm, classes } from 'yukit-web/helm/utils';
9
+
10
+ const HLM_NATIVE_SELECT_VALUE_ACCESSOR = {
11
+ provide: NG_VALUE_ACCESSOR,
12
+ useExisting: forwardRef(() => HlmNativeSelect),
13
+ multi: true,
14
+ };
15
+ class HlmNativeSelect {
16
+ static { this._id = 0; }
17
+ constructor() {
18
+ this._fieldControl = inject(BrnFieldControl, { optional: true });
19
+ this.selectId = input(`hlm-native-select-${HlmNativeSelect._id++}`, ...(ngDevMode ? [{ debugName: "selectId" }] : /* istanbul ignore next */ []));
20
+ this.selectClass = input('', ...(ngDevMode ? [{ debugName: "selectClass" }] : /* istanbul ignore next */ []));
21
+ this._computedSelectClass = computed(() => hlm('border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 data-[matches-spartan-invalid=true]:ring-destructive/20 dark:data-[matches-spartan-invalid=true]:ring-destructive/40 data-[matches-spartan-invalid=true]:border-destructive dark:data-[matches-spartan-invalid=true]:border-destructive/50 h-8 w-full min-w-0 appearance-none rounded-lg border bg-transparent py-1 ps-2.5 pe-8 text-sm transition-colors select-none focus-visible:ring-3 data-[matches-spartan-invalid=true]:ring-3 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-[size=sm]:py-0.5 outline-none disabled:pointer-events-none disabled:cursor-not-allowed', this.selectClass()), ...(ngDevMode ? [{ debugName: "_computedSelectClass" }] : /* istanbul ignore next */ []));
22
+ this.selectIconClass = input('', ...(ngDevMode ? [{ debugName: "selectIconClass" }] : /* istanbul ignore next */ []));
23
+ this._computedSelectIconClass = computed(() => hlm('text-muted-foreground end-2.5 top-1/2 -translate-y-1/2 text-[length:--spacing(4)] pointer-events-none absolute select-none', this.selectIconClass()), ...(ngDevMode ? [{ debugName: "_computedSelectIconClass" }] : /* istanbul ignore next */ []));
24
+ this.size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
25
+ this.disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
26
+ this._disabled = linkedSignal(this.disabled, ...(ngDevMode ? [{ debugName: "_disabled" }] : /* istanbul ignore next */ []));
27
+ /** Whether to force the input into an invalid state. */
28
+ this.forceInvalid = input(false, { ...(ngDevMode ? { debugName: "forceInvalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
29
+ /** Manual override for aria-invalid. When not set, auto-detects from the parent autocomplete error state. */
30
+ this.ariaInvalidOverride = input(undefined, { ...(ngDevMode ? { debugName: "ariaInvalidOverride" } : /* istanbul ignore next */ {}), transform: (v) => (v === '' || v === undefined ? undefined : booleanAttribute(v)),
31
+ alias: 'aria-invalid' });
32
+ this._ariaInvalid = computed(() => this.ariaInvalidOverride() ?? this._invalid?.(), ...(ngDevMode ? [{ debugName: "_ariaInvalid" }] : /* istanbul ignore next */ []));
33
+ this.valueInput = input('', { ...(ngDevMode ? { debugName: "valueInput" } : /* istanbul ignore next */ {}), alias: 'value' });
34
+ this.value = linkedSignal(this.valueInput, ...(ngDevMode ? [{ debugName: "value" }] : /* istanbul ignore next */ []));
35
+ this.valueChange = output();
36
+ this.labelableId = this.selectId;
37
+ this._invalid = this._fieldControl?.invalid;
38
+ this._touched = this._fieldControl?.touched;
39
+ this._dirty = this._fieldControl?.dirty;
40
+ this._spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid(), ...(ngDevMode ? [{ debugName: "_spartanInvalid" }] : /* istanbul ignore next */ []));
41
+ classes(() => 'group/native-select relative w-fit has-[select:disabled]:opacity-50');
42
+ }
43
+ _valueChanged(event) {
44
+ const value = event.target.value;
45
+ this.value.set(value);
46
+ this.valueChange.emit(value);
47
+ this._onChange?.(value);
48
+ this._onTouched?.();
49
+ }
50
+ _blur() {
51
+ this._onTouched?.();
52
+ }
53
+ /** CONTROL VALUE ACCESSOR */
54
+ writeValue(value) {
55
+ this.value.set(value);
56
+ }
57
+ registerOnChange(fn) {
58
+ this._onChange = fn;
59
+ }
60
+ registerOnTouched(fn) {
61
+ this._onTouched = fn;
62
+ }
63
+ setDisabledState(isDisabled) {
64
+ this._disabled.set(isDisabled);
65
+ }
66
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelect, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.2.8", type: HlmNativeSelect, isStandalone: true, selector: "hlm-native-select", inputs: { selectId: { classPropertyName: "selectId", publicName: "selectId", isSignal: true, isRequired: false, transformFunction: null }, selectClass: { classPropertyName: "selectClass", publicName: "selectClass", isSignal: true, isRequired: false, transformFunction: null }, selectIconClass: { classPropertyName: "selectIconClass", publicName: "selectIconClass", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, forceInvalid: { classPropertyName: "forceInvalid", publicName: "forceInvalid", isSignal: true, isRequired: false, transformFunction: null }, ariaInvalidOverride: { classPropertyName: "ariaInvalidOverride", publicName: "aria-invalid", isSignal: true, isRequired: false, transformFunction: null }, valueInput: { classPropertyName: "valueInput", publicName: "value", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { valueChange: "valueChange" }, host: { attributes: { "data-slot": "native-select-wrapper" }, properties: { "attr.data-size": "size()" } }, providers: [
68
+ HLM_NATIVE_SELECT_VALUE_ACCESSOR,
69
+ provideIcons({ lucideChevronDown }),
70
+ provideBrnLabelable(HlmNativeSelect),
71
+ ], hostDirectives: [{ directive: i1.BrnFieldControl }], ngImport: i0, template: `
72
+ <select
73
+ data-slot="native-select"
74
+ [id]="selectId()"
75
+ [class]="_computedSelectClass()"
76
+ [attr.data-size]="size()"
77
+ [attr.aria-invalid]="_ariaInvalid() ? 'true' : null"
78
+ [attr.data-invalid]="_ariaInvalid() ? 'true' : null"
79
+ [attr.data-dirty]="_dirty?.() ? 'true' : null"
80
+ [attr.data-touched]="_touched?.() ? 'true' : null"
81
+ [attr.data-matches-spartan-invalid]="_spartanInvalid() ? 'true' : null"
82
+ [value]="value()"
83
+ [disabled]="_disabled()"
84
+ (change)="_valueChanged($event)"
85
+ (blur)="_blur()"
86
+ >
87
+ <ng-content />
88
+ </select>
89
+
90
+ <ng-icon
91
+ name="lucideChevronDown"
92
+ [class]="_computedSelectIconClass()"
93
+ aria-hidden="true"
94
+ data-slot="native-select-icon"
95
+ />
96
+ `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
97
+ }
98
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelect, decorators: [{
99
+ type: Component,
100
+ args: [{
101
+ selector: 'hlm-native-select',
102
+ imports: [NgIcon],
103
+ providers: [
104
+ HLM_NATIVE_SELECT_VALUE_ACCESSOR,
105
+ provideIcons({ lucideChevronDown }),
106
+ provideBrnLabelable(HlmNativeSelect),
107
+ ],
108
+ changeDetection: ChangeDetectionStrategy.OnPush,
109
+ hostDirectives: [BrnFieldControl],
110
+ host: {
111
+ 'data-slot': 'native-select-wrapper',
112
+ '[attr.data-size]': 'size()',
113
+ },
114
+ template: `
115
+ <select
116
+ data-slot="native-select"
117
+ [id]="selectId()"
118
+ [class]="_computedSelectClass()"
119
+ [attr.data-size]="size()"
120
+ [attr.aria-invalid]="_ariaInvalid() ? 'true' : null"
121
+ [attr.data-invalid]="_ariaInvalid() ? 'true' : null"
122
+ [attr.data-dirty]="_dirty?.() ? 'true' : null"
123
+ [attr.data-touched]="_touched?.() ? 'true' : null"
124
+ [attr.data-matches-spartan-invalid]="_spartanInvalid() ? 'true' : null"
125
+ [value]="value()"
126
+ [disabled]="_disabled()"
127
+ (change)="_valueChanged($event)"
128
+ (blur)="_blur()"
129
+ >
130
+ <ng-content />
131
+ </select>
132
+
133
+ <ng-icon
134
+ name="lucideChevronDown"
135
+ [class]="_computedSelectIconClass()"
136
+ aria-hidden="true"
137
+ data-slot="native-select-icon"
138
+ />
139
+ `,
140
+ }]
141
+ }], ctorParameters: () => [], propDecorators: { selectId: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectId", required: false }] }], selectClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectClass", required: false }] }], selectIconClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "selectIconClass", required: false }] }], size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], forceInvalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "forceInvalid", required: false }] }], ariaInvalidOverride: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-invalid", required: false }] }], valueInput: [{ type: i0.Input, args: [{ isSignal: true, alias: "value", required: false }] }], valueChange: [{ type: i0.Output, args: ["valueChange"] }] } });
142
+
143
+ class HlmNativeSelectOptGroup {
144
+ constructor() {
145
+ classes(() => 'bg-[Canvas] text-[CanvasText]');
146
+ }
147
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelectOptGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
148
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNativeSelectOptGroup, isStandalone: true, selector: "optgroup[hlmNativeSelectOptGroup]", host: { attributes: { "data-slot": "native-select-optgroup" } }, ngImport: i0 }); }
149
+ }
150
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelectOptGroup, decorators: [{
151
+ type: Directive,
152
+ args: [{
153
+ selector: 'optgroup[hlmNativeSelectOptGroup]',
154
+ host: { 'data-slot': 'native-select-optgroup' },
155
+ }]
156
+ }], ctorParameters: () => [] });
157
+
158
+ class HlmNativeSelectOption {
159
+ constructor() {
160
+ classes(() => 'bg-[Canvas] text-[CanvasText]');
161
+ }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelectOption, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
163
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNativeSelectOption, isStandalone: true, selector: "option[hlmNativeSelectOption]", host: { attributes: { "data-slot": "native-select-option" } }, ngImport: i0 }); }
164
+ }
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNativeSelectOption, decorators: [{
166
+ type: Directive,
167
+ args: [{
168
+ selector: 'option[hlmNativeSelectOption]',
169
+ host: { 'data-slot': 'native-select-option' },
170
+ }]
171
+ }], ctorParameters: () => [] });
172
+
173
+ const HlmNativeSelectImports = [HlmNativeSelect, HlmNativeSelectOption, HlmNativeSelectOptGroup];
174
+
175
+ /**
176
+ * Generated bundle index. Do not edit.
177
+ */
178
+
179
+ export { HLM_NATIVE_SELECT_VALUE_ACCESSOR, HlmNativeSelect, HlmNativeSelectImports, HlmNativeSelectOptGroup, HlmNativeSelectOption };
180
+ //# sourceMappingURL=yukit-web-helm-native-select.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yukit-web-helm-native-select.mjs","sources":["../../../projects/yukit-web/helm/native-select/src/lib/hlm-native-select.ts","../../../projects/yukit-web/helm/native-select/src/lib/hlm-native-select-opt-group.ts","../../../projects/yukit-web/helm/native-select/src/lib/hlm-native-select-option.ts","../../../projects/yukit-web/helm/native-select/src/index.ts","../../../projects/yukit-web/helm/native-select/src/yukit-web-helm-native-select.ts"],"sourcesContent":["import type { BooleanInput } from '@angular/cdk/coercion';\nimport {\n\tbooleanAttribute,\n\tChangeDetectionStrategy,\n\tComponent,\n\tcomputed,\n\tforwardRef,\n\tinject,\n\tinput,\n\tlinkedSignal,\n\toutput,\n} from '@angular/core';\nimport { NG_VALUE_ACCESSOR, type ControlValueAccessor } from '@angular/forms';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronDown } from '@ng-icons/lucide';\nimport { BrnFieldControl, provideBrnLabelable } from '@spartan-ng/brain/field';\nimport { type ChangeFn, type TouchFn } from '@spartan-ng/brain/forms';\nimport { classes, hlm } from 'yukit-web/helm/utils';\nimport type { ClassValue } from 'clsx';\n\nexport const HLM_NATIVE_SELECT_VALUE_ACCESSOR = {\n\tprovide: NG_VALUE_ACCESSOR,\n\tuseExisting: forwardRef(() => HlmNativeSelect),\n\tmulti: true,\n};\n\n@Component({\n\tselector: 'hlm-native-select',\n\timports: [NgIcon],\n\tproviders: [\n\t\tHLM_NATIVE_SELECT_VALUE_ACCESSOR,\n\t\tprovideIcons({ lucideChevronDown }),\n\t\tprovideBrnLabelable(HlmNativeSelect),\n\t],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [BrnFieldControl],\n\thost: {\n\t\t'data-slot': 'native-select-wrapper',\n\t\t'[attr.data-size]': 'size()',\n\t},\n\ttemplate: `\n\t\t<select\n\t\t\tdata-slot=\"native-select\"\n\t\t\t[id]=\"selectId()\"\n\t\t\t[class]=\"_computedSelectClass()\"\n\t\t\t[attr.data-size]=\"size()\"\n\t\t\t[attr.aria-invalid]=\"_ariaInvalid() ? 'true' : null\"\n\t\t\t[attr.data-invalid]=\"_ariaInvalid() ? 'true' : null\"\n\t\t\t[attr.data-dirty]=\"_dirty?.() ? 'true' : null\"\n\t\t\t[attr.data-touched]=\"_touched?.() ? 'true' : null\"\n\t\t\t[attr.data-matches-spartan-invalid]=\"_spartanInvalid() ? 'true' : null\"\n\t\t\t[value]=\"value()\"\n\t\t\t[disabled]=\"_disabled()\"\n\t\t\t(change)=\"_valueChanged($event)\"\n\t\t\t(blur)=\"_blur()\"\n\t\t>\n\t\t\t<ng-content />\n\t\t</select>\n\n\t\t<ng-icon\n\t\t\tname=\"lucideChevronDown\"\n\t\t\t[class]=\"_computedSelectIconClass()\"\n\t\t\taria-hidden=\"true\"\n\t\t\tdata-slot=\"native-select-icon\"\n\t\t/>\n\t`,\n})\nexport class HlmNativeSelect implements ControlValueAccessor {\n\tprivate readonly _fieldControl = inject(BrnFieldControl, { optional: true });\n\n\tprivate static _id = 0;\n\n\tpublic readonly selectId = input<string>(`hlm-native-select-${HlmNativeSelect._id++}`);\n\n\tpublic readonly selectClass = input<ClassValue>('');\n\n\tprotected readonly _computedSelectClass = computed(() =>\n\t\thlm(\n\t\t\t'border-input placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 dark:hover:bg-input/50 focus-visible:border-ring focus-visible:ring-ring/50 data-[matches-spartan-invalid=true]:ring-destructive/20 dark:data-[matches-spartan-invalid=true]:ring-destructive/40 data-[matches-spartan-invalid=true]:border-destructive dark:data-[matches-spartan-invalid=true]:border-destructive/50 h-8 w-full min-w-0 appearance-none rounded-lg border bg-transparent py-1 ps-2.5 pe-8 text-sm transition-colors select-none focus-visible:ring-3 data-[matches-spartan-invalid=true]:ring-3 data-[size=sm]:h-7 data-[size=sm]:rounded-[min(var(--radius-md),10px)] data-[size=sm]:py-0.5 outline-none disabled:pointer-events-none disabled:cursor-not-allowed',\n\t\t\tthis.selectClass(),\n\t\t),\n\t);\n\n\tpublic readonly selectIconClass = input<ClassValue>('');\n\n\tprotected readonly _computedSelectIconClass = computed(() =>\n\t\thlm('text-muted-foreground end-2.5 top-1/2 -translate-y-1/2 text-[length:--spacing(4)] pointer-events-none absolute select-none', this.selectIconClass()),\n\t);\n\n\tpublic readonly size = input<'sm' | 'default'>('default');\n\n\tpublic readonly disabled = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\tprotected readonly _disabled = linkedSignal(this.disabled);\n\n\t/** Whether to force the input into an invalid state. */\n\tpublic readonly forceInvalid = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Manual override for aria-invalid. When not set, auto-detects from the parent autocomplete error state. */\n\tpublic readonly ariaInvalidOverride = input<boolean | undefined, BooleanInput>(undefined, {\n\t\ttransform: (v: BooleanInput) => (v === '' || v === undefined ? undefined : booleanAttribute(v)),\n\t\talias: 'aria-invalid',\n\t});\n\n\tprotected readonly _ariaInvalid = computed(() => this.ariaInvalidOverride() ?? this._invalid?.());\n\n\tpublic readonly valueInput = input<string | undefined | null>('', { alias: 'value' });\n\tpublic readonly value = linkedSignal(this.valueInput);\n\n\tpublic readonly valueChange = output<string | undefined | null>();\n\n\tprotected _onChange?: ChangeFn<string | undefined | null>;\n\tprotected _onTouched?: TouchFn;\n\n\tpublic readonly labelableId = this.selectId;\n\n\tprotected readonly _invalid = this._fieldControl?.invalid;\n\tprotected readonly _touched = this._fieldControl?.touched;\n\tprotected readonly _dirty = this._fieldControl?.dirty;\n\tprotected readonly _spartanInvalid = computed(() => this.forceInvalid() || this._fieldControl?.spartanInvalid());\n\n\tconstructor() {\n\t\tclasses(() => 'group/native-select relative w-fit has-[select:disabled]:opacity-50');\n\t}\n\n\tprotected _valueChanged(event: Event): void {\n\t\tconst value = (event.target as HTMLSelectElement).value;\n\t\tthis.value.set(value);\n\t\tthis.valueChange.emit(value);\n\t\tthis._onChange?.(value);\n\t\tthis._onTouched?.();\n\t}\n\n\tprotected _blur(): void {\n\t\tthis._onTouched?.();\n\t}\n\n\t/** CONTROL VALUE ACCESSOR */\n\tpublic writeValue(value: string | undefined | null): void {\n\t\tthis.value.set(value);\n\t}\n\n\tpublic registerOnChange(fn: ChangeFn<string | undefined | null>): void {\n\t\tthis._onChange = fn;\n\t}\n\n\tpublic registerOnTouched(fn: TouchFn): void {\n\t\tthis._onTouched = fn;\n\t}\n\n\tpublic setDisabledState(isDisabled: boolean): void {\n\t\tthis._disabled.set(isDisabled);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'optgroup[hlmNativeSelectOptGroup]',\n\thost: { 'data-slot': 'native-select-optgroup' },\n})\nexport class HlmNativeSelectOptGroup {\n\tconstructor() {\n\t\tclasses(() => 'bg-[Canvas] text-[CanvasText]');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'option[hlmNativeSelectOption]',\n\thost: { 'data-slot': 'native-select-option' },\n})\nexport class HlmNativeSelectOption {\n\tconstructor() {\n\t\tclasses(() => 'bg-[Canvas] text-[CanvasText]');\n\t}\n}\n","import { HlmNativeSelect } from './lib/hlm-native-select';\nimport { HlmNativeSelectOptGroup } from './lib/hlm-native-select-opt-group';\nimport { HlmNativeSelectOption } from './lib/hlm-native-select-option';\n\nexport * from './lib/hlm-native-select';\nexport * from './lib/hlm-native-select-opt-group';\nexport * from './lib/hlm-native-select-option';\n\nexport const HlmNativeSelectImports = [HlmNativeSelect, HlmNativeSelectOption, HlmNativeSelectOptGroup] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,173 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive, input, numberAttribute, ChangeDetectionStrategy, Component } from '@angular/core';
3
+ import * as i1 from '@spartan-ng/brain/navigation-menu';
4
+ import { BrnNavigationMenu, BrnNavigationMenuItem, BrnNavigationMenuLink, BrnNavigationMenuList, BrnNavigationMenuContent, BrnNavigationMenuTrigger } from '@spartan-ng/brain/navigation-menu';
5
+ import { classes } from 'yukit-web/helm/utils';
6
+ import { NgIcon, provideIcons } from '@ng-icons/core';
7
+ import { lucideChevronDown } from '@ng-icons/lucide';
8
+
9
+ class HlmNavigationMenu {
10
+ constructor() {
11
+ classes(() => 'group/navigation-menu relative flex max-w-max flex-1 items-center justify-center');
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenu, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenu, isStandalone: true, selector: "nav[hlmNavigationMenu]", host: { attributes: { "data-slot": "navigation-menu" } }, hostDirectives: [{ directive: i1.BrnNavigationMenu, inputs: ["value", "value", "delayDuration", "delayDuration", "skipDelayDuration", "skipDelayDuration", "orientation", "orientation", "openOn", "openOn"], outputs: ["valueChange", "valueChange"] }], ngImport: i0 }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenu, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: 'nav[hlmNavigationMenu]',
20
+ hostDirectives: [
21
+ {
22
+ directive: BrnNavigationMenu,
23
+ inputs: ['value', 'delayDuration', 'skipDelayDuration', 'orientation', 'openOn'],
24
+ outputs: ['valueChange'],
25
+ },
26
+ ],
27
+ host: {
28
+ 'data-slot': 'navigation-menu',
29
+ },
30
+ }]
31
+ }], ctorParameters: () => [] });
32
+
33
+ class HlmNavigationMenuContent {
34
+ constructor() {
35
+ this.navOffset = input(1.5, { ...(ngDevMode ? { debugName: "navOffset" } : /* istanbul ignore next */ {}), transform: numberAttribute });
36
+ classes(() => [
37
+ 'data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out top-0 left-0 w-full p-2 pr-2.5 md:w-auto',
38
+ 'data-[orientation=horizontal]:data-[motion=from-end]:slide-in-from-right-52 data-[orientation=horizontal]:data-[motion=from-start]:slide-in-from-left-52 data-[orientation=horizontal]:data-[motion=to-end]:slide-out-to-right-52 data-[orientation=horizontal]:data-[motion=to-start]:slide-out-to-left-52',
39
+ 'data-[orientation=vertical]:data-[motion=from-end]:slide-in-from-bottom-52 data-[orientation=vertical]:data-[motion=from-start]:slide-in-from-top-52 data-[orientation=vertical]:data-[motion=to-end]:slide-out-to-bottom-52 data-[orientation=vertical]:data-[motion=to-start]:slide-out-to-top-52',
40
+ 'data-[orientation=horizontal]:mt-[--spacing(var(--nav-offset))] data-[orientation=vertical]:mx-[--spacing(var(--nav-offset))]',
41
+ 'bg-popover text-popover-foreground ring-foreground/10 rounded-lg shadow ring-1 transition-all ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:scale-90 data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:scale-90 data-starting-style:opacity-0 block',
42
+ ]);
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.2.8", type: HlmNavigationMenuContent, isStandalone: true, selector: "[hlmNavigationMenuContent],hlm-navigation-menu-content", inputs: { navOffset: { classPropertyName: "navOffset", publicName: "navOffset", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "navigation-menu-content" }, properties: { "style.--nav-offset": "navOffset()" } }, ngImport: i0 }); }
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuContent, decorators: [{
48
+ type: Directive,
49
+ args: [{
50
+ selector: '[hlmNavigationMenuContent],hlm-navigation-menu-content',
51
+ host: {
52
+ 'data-slot': 'navigation-menu-content',
53
+ '[style.--nav-offset]': 'navOffset()',
54
+ },
55
+ }]
56
+ }], ctorParameters: () => [], propDecorators: { navOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "navOffset", required: false }] }] } });
57
+
58
+ class HlmNavigationMenuItem {
59
+ constructor() {
60
+ classes(() => 'relative has-[:focus]:z-10 data-active:z-10');
61
+ }
62
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuItem, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
63
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenuItem, isStandalone: true, selector: "li[hlmNavigationMenuItem]", host: { attributes: { "data-slot": "navigation-menu-item" } }, hostDirectives: [{ directive: i1.BrnNavigationMenuItem, inputs: ["id", "id"] }], ngImport: i0 }); }
64
+ }
65
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuItem, decorators: [{
66
+ type: Directive,
67
+ args: [{
68
+ selector: 'li[hlmNavigationMenuItem]',
69
+ hostDirectives: [{ directive: BrnNavigationMenuItem, inputs: ['id'] }],
70
+ host: {
71
+ 'data-slot': 'navigation-menu-item',
72
+ },
73
+ }]
74
+ }], ctorParameters: () => [] });
75
+
76
+ class HlmNavigationMenuLink {
77
+ constructor() {
78
+ classes(() => "data-active:focus:bg-muted data-active:hover:bg-muted data-active:bg-muted/50 focus-visible:ring-ring/50 hover:bg-muted focus:bg-muted flex items-center gap-2 rounded-lg p-2 text-sm transition-all outline-none focus-visible:ring-3 focus-visible:outline-1 in-data-[slot=navigation-menu-content]:rounded-md [&_ng-icon:not([class*='text-'])]:text-[length:--spacing(4)]");
79
+ }
80
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuLink, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
81
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenuLink, isStandalone: true, selector: "a[hlmNavigationMenuLink]", host: { attributes: { "data-slot": "navigation-menu-link" } }, hostDirectives: [{ directive: i1.BrnNavigationMenuLink, inputs: ["active", "active"] }], ngImport: i0 }); }
82
+ }
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuLink, decorators: [{
84
+ type: Directive,
85
+ args: [{
86
+ selector: 'a[hlmNavigationMenuLink]',
87
+ hostDirectives: [{ directive: BrnNavigationMenuLink, inputs: ['active'] }],
88
+ host: {
89
+ 'data-slot': 'navigation-menu-link',
90
+ },
91
+ }]
92
+ }], ctorParameters: () => [] });
93
+
94
+ class HlmNavigationMenuList {
95
+ constructor() {
96
+ classes(() => [
97
+ 'gap-0 group flex flex-1 list-none items-center justify-center',
98
+ 'data-[orientation=vertical]:flex-col',
99
+ ]);
100
+ }
101
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
102
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenuList, isStandalone: true, selector: "ul[hlmNavigationMenuList]", host: { attributes: { "data-slot": "navigation-menu-list" } }, hostDirectives: [{ directive: i1.BrnNavigationMenuList }], ngImport: i0 }); }
103
+ }
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuList, decorators: [{
105
+ type: Directive,
106
+ args: [{
107
+ selector: 'ul[hlmNavigationMenuList]',
108
+ hostDirectives: [
109
+ {
110
+ directive: BrnNavigationMenuList,
111
+ },
112
+ ],
113
+ host: {
114
+ 'data-slot': 'navigation-menu-list',
115
+ },
116
+ }]
117
+ }], ctorParameters: () => [] });
118
+
119
+ class HlmNavigationMenuPortal {
120
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuPortal, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
121
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenuPortal, isStandalone: true, selector: "[hlmNavigationMenuPortal]", hostDirectives: [{ directive: i1.BrnNavigationMenuContent }], ngImport: i0 }); }
122
+ }
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuPortal, decorators: [{
124
+ type: Directive,
125
+ args: [{
126
+ selector: '[hlmNavigationMenuPortal]',
127
+ hostDirectives: [BrnNavigationMenuContent],
128
+ }]
129
+ }] });
130
+
131
+ class HlmNavigationMenuTrigger {
132
+ constructor() {
133
+ classes(() => 'bg-background hover:bg-muted focus:bg-muted data-open:hover:bg-muted data-open:focus:bg-muted data-open:bg-muted/50 focus-visible:ring-ring/50 rounded-lg px-2.5 py-1.5 text-sm font-medium transition-all focus-visible:ring-3 focus-visible:outline-1 disabled:opacity-50 group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center outline-none disabled:pointer-events-none');
134
+ }
135
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuTrigger, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
136
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.8", type: HlmNavigationMenuTrigger, isStandalone: true, selector: "button[hlmNavigationMenuTrigger]", host: { attributes: { "data-slot": "navigation-menu-trigger" } }, providers: [provideIcons({ lucideChevronDown })], hostDirectives: [{ directive: i1.BrnNavigationMenuTrigger, inputs: ["align", "align"] }], ngImport: i0, template: `
137
+ <ng-content />
138
+ <ng-icon name="lucideChevronDown" class="relative top-px ml-1 size-3 transition duration-300 group-data-open/navigation-menu-trigger:rotate-180" />
139
+ `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
140
+ }
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmNavigationMenuTrigger, decorators: [{
142
+ type: Component,
143
+ args: [{
144
+ // eslint-disable-next-line @angular-eslint/component-selector
145
+ selector: 'button[hlmNavigationMenuTrigger]',
146
+ imports: [NgIcon],
147
+ providers: [provideIcons({ lucideChevronDown })],
148
+ changeDetection: ChangeDetectionStrategy.OnPush,
149
+ hostDirectives: [{ directive: BrnNavigationMenuTrigger, inputs: ['align'] }],
150
+ host: { 'data-slot': 'navigation-menu-trigger' },
151
+ template: `
152
+ <ng-content />
153
+ <ng-icon name="lucideChevronDown" class="relative top-px ml-1 size-3 transition duration-300 group-data-open/navigation-menu-trigger:rotate-180" />
154
+ `,
155
+ }]
156
+ }], ctorParameters: () => [] });
157
+
158
+ const HlmNavigationMenuImports = [
159
+ HlmNavigationMenu,
160
+ HlmNavigationMenuContent,
161
+ HlmNavigationMenuItem,
162
+ HlmNavigationMenuLink,
163
+ HlmNavigationMenuList,
164
+ HlmNavigationMenuPortal,
165
+ HlmNavigationMenuTrigger,
166
+ ];
167
+
168
+ /**
169
+ * Generated bundle index. Do not edit.
170
+ */
171
+
172
+ export { HlmNavigationMenu, HlmNavigationMenuContent, HlmNavigationMenuImports, HlmNavigationMenuItem, HlmNavigationMenuLink, HlmNavigationMenuList, HlmNavigationMenuPortal, HlmNavigationMenuTrigger };
173
+ //# sourceMappingURL=yukit-web-helm-navigation-menu.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yukit-web-helm-navigation-menu.mjs","sources":["../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-content.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-item.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-link.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-list.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-portal.ts","../../../projects/yukit-web/helm/navigation-menu/src/lib/hlm-navigation-menu-trigger.ts","../../../projects/yukit-web/helm/navigation-menu/src/index.ts","../../../projects/yukit-web/helm/navigation-menu/src/yukit-web-helm-navigation-menu.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { BrnNavigationMenu } from '@spartan-ng/brain/navigation-menu';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'nav[hlmNavigationMenu]',\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnNavigationMenu,\n\t\t\tinputs: ['value', 'delayDuration', 'skipDelayDuration', 'orientation', 'openOn'],\n\t\t\toutputs: ['valueChange'],\n\t\t},\n\t],\n\thost: {\n\t\t'data-slot': 'navigation-menu',\n\t},\n})\nexport class HlmNavigationMenu {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => 'group/navigation-menu relative flex max-w-max flex-1 items-center justify-center',\n\t\t);\n\t}\n}\n","import { type NumberInput } from '@angular/cdk/coercion';\nimport { Directive, input, numberAttribute } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmNavigationMenuContent],hlm-navigation-menu-content',\n\thost: {\n\t\t'data-slot': 'navigation-menu-content',\n\t\t'[style.--nav-offset]': 'navOffset()',\n\t},\n})\nexport class HlmNavigationMenuContent {\n\tpublic readonly navOffset = input<number, NumberInput>(1.5, { transform: numberAttribute });\n\n\tconstructor() {\n\t\tclasses(() => [\n\t\t\t'data-[motion^=from-]:animate-in data-[motion^=to-]:animate-out data-[motion^=from-]:fade-in data-[motion^=to-]:fade-out top-0 left-0 w-full p-2 pr-2.5 md:w-auto',\n\t\t\t'data-[orientation=horizontal]:data-[motion=from-end]:slide-in-from-right-52 data-[orientation=horizontal]:data-[motion=from-start]:slide-in-from-left-52 data-[orientation=horizontal]:data-[motion=to-end]:slide-out-to-right-52 data-[orientation=horizontal]:data-[motion=to-start]:slide-out-to-left-52',\n\t\t\t'data-[orientation=vertical]:data-[motion=from-end]:slide-in-from-bottom-52 data-[orientation=vertical]:data-[motion=from-start]:slide-in-from-top-52 data-[orientation=vertical]:data-[motion=to-end]:slide-out-to-bottom-52 data-[orientation=vertical]:data-[motion=to-start]:slide-out-to-top-52',\n\t\t\t'data-[orientation=horizontal]:mt-[--spacing(var(--nav-offset))] data-[orientation=vertical]:mx-[--spacing(var(--nav-offset))]',\n\t\t\t'bg-popover text-popover-foreground ring-foreground/10 rounded-lg shadow ring-1 transition-all ease-[cubic-bezier(0.22,1,0.36,1)] outline-none data-ending-style:scale-90 data-ending-style:opacity-0 data-ending-style:duration-150 data-starting-style:scale-90 data-starting-style:opacity-0 block',\n\t\t]);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnNavigationMenuItem } from '@spartan-ng/brain/navigation-menu';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'li[hlmNavigationMenuItem]',\n\thostDirectives: [{ directive: BrnNavigationMenuItem, inputs: ['id'] }],\n\thost: {\n\t\t'data-slot': 'navigation-menu-item',\n\t},\n})\nexport class HlmNavigationMenuItem {\n\tconstructor() {\n\t\tclasses(() => 'relative has-[:focus]:z-10 data-active:z-10');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnNavigationMenuLink } from '@spartan-ng/brain/navigation-menu';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'a[hlmNavigationMenuLink]',\n\thostDirectives: [{ directive: BrnNavigationMenuLink, inputs: ['active'] }],\n\thost: {\n\t\t'data-slot': 'navigation-menu-link',\n\t},\n})\nexport class HlmNavigationMenuLink {\n\tconstructor() {\n\t\tclasses(() => \"data-active:focus:bg-muted data-active:hover:bg-muted data-active:bg-muted/50 focus-visible:ring-ring/50 hover:bg-muted focus:bg-muted flex items-center gap-2 rounded-lg p-2 text-sm transition-all outline-none focus-visible:ring-3 focus-visible:outline-1 in-data-[slot=navigation-menu-content]:rounded-md [&_ng-icon:not([class*='text-'])]:text-[length:--spacing(4)]\");\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnNavigationMenuList } from '@spartan-ng/brain/navigation-menu';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'ul[hlmNavigationMenuList]',\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnNavigationMenuList,\n\t\t},\n\t],\n\thost: {\n\t\t'data-slot': 'navigation-menu-list',\n\t},\n})\nexport class HlmNavigationMenuList {\n\tconstructor() {\n\t\tclasses(() => [\n\t\t\t'gap-0 group flex flex-1 list-none items-center justify-center',\n\t\t\t'data-[orientation=vertical]:flex-col',\n\t\t]);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnNavigationMenuContent } from '@spartan-ng/brain/navigation-menu';\n\n@Directive({\n\tselector: '[hlmNavigationMenuPortal]',\n\thostDirectives: [BrnNavigationMenuContent],\n})\nexport class HlmNavigationMenuPortal {}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronDown } from '@ng-icons/lucide';\nimport { BrnNavigationMenuTrigger } from '@spartan-ng/brain/navigation-menu';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\t// eslint-disable-next-line @angular-eslint/component-selector\n\tselector: 'button[hlmNavigationMenuTrigger]',\n\timports: [NgIcon],\n\tproviders: [provideIcons({ lucideChevronDown })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [{ directive: BrnNavigationMenuTrigger, inputs: ['align'] }],\n\thost: { 'data-slot': 'navigation-menu-trigger' },\n\ttemplate: `\n\t\t<ng-content />\n\t\t<ng-icon name=\"lucideChevronDown\" class=\"relative top-px ml-1 size-3 transition duration-300 group-data-open/navigation-menu-trigger:rotate-180\" />\n\t`,\n})\nexport class HlmNavigationMenuTrigger {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'bg-background hover:bg-muted focus:bg-muted data-open:hover:bg-muted data-open:focus:bg-muted data-open:bg-muted/50 focus-visible:ring-ring/50 rounded-lg px-2.5 py-1.5 text-sm font-medium transition-all focus-visible:ring-3 focus-visible:outline-1 disabled:opacity-50 group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center outline-none disabled:pointer-events-none',\n\t\t);\n\t}\n}\n","import { HlmNavigationMenu } from './lib/hlm-navigation-menu';\nimport { HlmNavigationMenuContent } from './lib/hlm-navigation-menu-content';\nimport { HlmNavigationMenuItem } from './lib/hlm-navigation-menu-item';\nimport { HlmNavigationMenuLink } from './lib/hlm-navigation-menu-link';\nimport { HlmNavigationMenuList } from './lib/hlm-navigation-menu-list';\nimport { HlmNavigationMenuPortal } from './lib/hlm-navigation-menu-portal';\nimport { HlmNavigationMenuTrigger } from './lib/hlm-navigation-menu-trigger';\n\nexport * from './lib/hlm-navigation-menu';\nexport * from './lib/hlm-navigation-menu-content';\nexport * from './lib/hlm-navigation-menu-item';\nexport * from './lib/hlm-navigation-menu-link';\nexport * from './lib/hlm-navigation-menu-list';\nexport * from './lib/hlm-navigation-menu-portal';\nexport * from './lib/hlm-navigation-menu-trigger';\n\nexport const HlmNavigationMenuImports = [\n\tHlmNavigationMenu,\n\tHlmNavigationMenuContent,\n\tHlmNavigationMenuItem,\n\tHlmNavigationMenuLink,\n\tHlmNavigationMenuList,\n\tHlmNavigationMenuPortal,\n\tHlmNavigationMenuTrigger,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}