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,361 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive, input, booleanAttribute, ChangeDetectionStrategy, Component, inject } from '@angular/core';
3
+ import * as i1 from '@spartan-ng/brain/autocomplete';
4
+ import { BrnAutocomplete, BrnAutocompleteContent, BrnAutocompleteEmpty, BrnAutocompleteGroup, BrnAutocompleteClear, BrnAutocompleteInput, BrnAutocompleteAnchor, BrnAutocompleteItem, BrnAutocompleteLabel, BrnAutocompleteList, BrnAutocompleteSearch, BrnAutocompleteSeparator, BrnAutocompleteStatus } from '@spartan-ng/brain/autocomplete';
5
+ import * as i2 from '@spartan-ng/brain/popover';
6
+ import { provideBrnPopoverConfig, provideBrnPopoverDefaultOptions, BrnPopover, BrnPopoverContent } from '@spartan-ng/brain/popover';
7
+ import { classes } from 'yukit-web/helm/utils';
8
+ import { NgIcon, provideIcons } from '@ng-icons/core';
9
+ import { lucideX, lucideSearch, lucideCheck } from '@ng-icons/lucide';
10
+ import * as i2$1 from 'yukit-web/helm/input-group';
11
+ import { HlmInputGroup, HlmInputGroupImports } from 'yukit-web/helm/input-group';
12
+
13
+ class HlmAutocomplete {
14
+ constructor() {
15
+ classes(() => 'block');
16
+ }
17
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocomplete, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
18
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocomplete, isStandalone: true, selector: "[hlmAutocomplete],hlm-autocomplete", host: { attributes: { "data-slot": "autocomplete" } }, providers: [
19
+ provideBrnPopoverConfig({
20
+ align: 'start',
21
+ sideOffset: 6,
22
+ }),
23
+ provideBrnPopoverDefaultOptions({ role: null }),
24
+ ], hostDirectives: [{ directive: i1.BrnAutocomplete, inputs: ["autoHighlight", "autoHighlight", "disabled", "disabled", "value", "value", "search", "search", "itemToString", "itemToString", "isItemEqualToValue", "isItemEqualToValue"], outputs: ["valueChange", "valueChange", "searchChange", "searchChange"] }, { directive: i2.BrnPopover, inputs: ["align", "align", "closeOnOutsidePointerEvents", "closeOnOutsidePointerEvents", "sideOffset", "sideOffset", "state", "state", "offsetX", "offsetX"], outputs: ["stateChanged", "stateChanged", "closed", "closed"] }], ngImport: i0 }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocomplete, decorators: [{
27
+ type: Directive,
28
+ args: [{
29
+ selector: '[hlmAutocomplete],hlm-autocomplete',
30
+ providers: [
31
+ provideBrnPopoverConfig({
32
+ align: 'start',
33
+ sideOffset: 6,
34
+ }),
35
+ provideBrnPopoverDefaultOptions({ role: null }),
36
+ ],
37
+ hostDirectives: [
38
+ {
39
+ directive: BrnAutocomplete,
40
+ inputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],
41
+ outputs: ['valueChange', 'searchChange'],
42
+ },
43
+ {
44
+ directive: BrnPopover,
45
+ inputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],
46
+ outputs: ['stateChanged', 'closed'],
47
+ },
48
+ ],
49
+ host: { 'data-slot': 'autocomplete' },
50
+ }]
51
+ }], ctorParameters: () => [] });
52
+
53
+ class HlmAutocompleteContent {
54
+ constructor() {
55
+ classes(() => 'bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 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 ring-foreground/10 max-h-72 min-w-36 overflow-hidden rounded-lg shadow-md ring-1 duration-100 group/autocomplete-content flex w-(--brn-autocomplete-width) flex-col p-0');
56
+ }
57
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
58
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteContent, isStandalone: true, selector: "[hlmAutocompleteContent],hlm-autocomplete-content", hostDirectives: [{ directive: i1.BrnAutocompleteContent }], ngImport: i0 }); }
59
+ }
60
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteContent, decorators: [{
61
+ type: Directive,
62
+ args: [{
63
+ selector: '[hlmAutocompleteContent],hlm-autocomplete-content',
64
+ hostDirectives: [BrnAutocompleteContent],
65
+ }]
66
+ }], ctorParameters: () => [] });
67
+
68
+ class HlmAutocompleteEmpty {
69
+ constructor() {
70
+ classes(() => 'text-muted-foreground hidden w-full items-center justify-center py-2 text-center text-sm group-data-empty/autocomplete-content:flex');
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteEmpty, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
73
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteEmpty, isStandalone: true, selector: "[hlmAutocompleteEmpty],hlm-autocomplete-empty", host: { attributes: { "data-slot": "autocomplete-empty" } }, hostDirectives: [{ directive: i1.BrnAutocompleteEmpty }], ngImport: i0 }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteEmpty, decorators: [{
76
+ type: Directive,
77
+ args: [{
78
+ selector: '[hlmAutocompleteEmpty],hlm-autocomplete-empty',
79
+ hostDirectives: [BrnAutocompleteEmpty],
80
+ host: { 'data-slot': 'autocomplete-empty' },
81
+ }]
82
+ }], ctorParameters: () => [] });
83
+
84
+ class HlmAutocompleteGroup {
85
+ constructor() {
86
+ classes(() => 'data-hidden:hidden');
87
+ }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
89
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteGroup, isStandalone: true, selector: "[hlmAutocompleteGroup]", host: { attributes: { "data-slot": "autocomplete-group" } }, hostDirectives: [{ directive: i1.BrnAutocompleteGroup }], ngImport: i0 }); }
90
+ }
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteGroup, decorators: [{
92
+ type: Directive,
93
+ args: [{
94
+ selector: '[hlmAutocompleteGroup]',
95
+ hostDirectives: [BrnAutocompleteGroup],
96
+ host: { 'data-slot': 'autocomplete-group' },
97
+ }]
98
+ }], ctorParameters: () => [] });
99
+
100
+ class HlmAutocompleteInput {
101
+ static { this._id = 0; }
102
+ constructor() {
103
+ this.inputId = input(`hlm-autocomplete-input-${HlmAutocompleteInput._id++}`, ...(ngDevMode ? [{ debugName: "inputId" }] : /* istanbul ignore next */ []));
104
+ this.placeholder = input('', ...(ngDevMode ? [{ debugName: "placeholder" }] : /* istanbul ignore next */ []));
105
+ this.showSearch = input(true, { ...(ngDevMode ? { debugName: "showSearch" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
106
+ this.showClear = input(false, { ...(ngDevMode ? { debugName: "showClear" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
107
+ /** Forces the invalid state visually, regardless of form control state. */
108
+ this.forceInvalid = input(false, { ...(ngDevMode ? { debugName: "forceInvalid" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
109
+ /** Manual override for aria-invalid. When not set, auto-detects from the parent autocomplete error state. */
110
+ this.ariaInvalidOverride = input(undefined, { ...(ngDevMode ? { debugName: "ariaInvalidOverride" } : /* istanbul ignore next */ {}), transform: (v) => (v === '' || v === undefined ? undefined : booleanAttribute(v)),
111
+ alias: 'aria-invalid' });
112
+ classes(() => 'w-auto');
113
+ }
114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteInput, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
115
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: HlmAutocompleteInput, isStandalone: true, selector: "hlm-autocomplete-input", inputs: { inputId: { classPropertyName: "inputId", publicName: "inputId", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, showSearch: { classPropertyName: "showSearch", publicName: "showSearch", isSignal: true, isRequired: false, transformFunction: null }, showClear: { classPropertyName: "showClear", publicName: "showClear", 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 } }, providers: [provideIcons({ lucideSearch, lucideX })], hostDirectives: [{ directive: i1.BrnAutocompleteAnchor }, { directive: i2$1.HlmInputGroup }], ngImport: i0, template: `
116
+ <input
117
+ brnAutocompleteInput
118
+ #autocompleteInput="brnAutocompleteInput"
119
+ hlmInputGroupInput
120
+ [id]="inputId()"
121
+ [placeholder]="placeholder()"
122
+ [aria-invalid]="ariaInvalidOverride()"
123
+ [forceInvalid]="forceInvalid()"
124
+ />
125
+
126
+ @if (showSearch()) {
127
+ <hlm-input-group-addon>
128
+ <ng-icon name="lucideSearch" [class.opacity-50]="autocompleteInput.disabled()" />
129
+ </hlm-input-group-addon>
130
+ }
131
+
132
+ @if (showClear()) {
133
+ <hlm-input-group-addon align="inline-end">
134
+ <button
135
+ *brnAutocompleteClear
136
+ hlmInputGroupButton
137
+ data-slot="autocomplete-clear"
138
+ [disabled]="autocompleteInput.disabled()"
139
+ size="icon-xs"
140
+ variant="ghost"
141
+ >
142
+ <ng-icon name="lucideX" />
143
+ </button>
144
+ </hlm-input-group-addon>
145
+ }
146
+ <ng-content />
147
+ `, isInline: true, dependencies: [{ kind: "directive", type: i2$1.HlmInputGroupAddon, selector: "[hlmInputGroupAddon],hlm-input-group-addon", inputs: ["align"] }, { kind: "directive", type: i2$1.HlmInputGroupButton, selector: "button[hlmInputGroupButton]", inputs: ["size", "type"] }, { kind: "directive", type: i2$1.HlmInputGroupInput, selector: "input[hlmInputGroupInput]" }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }, { kind: "directive", type: BrnAutocompleteClear, selector: "[brnAutocompleteClear]" }, { kind: "directive", type: BrnAutocompleteInput, selector: "input[brnAutocompleteInput]", inputs: ["id", "aria-invalid", "forceInvalid"], exportAs: ["brnAutocompleteInput"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
148
+ }
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteInput, decorators: [{
150
+ type: Component,
151
+ args: [{
152
+ selector: 'hlm-autocomplete-input',
153
+ imports: [HlmInputGroupImports, NgIcon, BrnAutocompleteClear, BrnAutocompleteInput],
154
+ providers: [provideIcons({ lucideSearch, lucideX })],
155
+ changeDetection: ChangeDetectionStrategy.OnPush,
156
+ hostDirectives: [BrnAutocompleteAnchor, HlmInputGroup],
157
+ template: `
158
+ <input
159
+ brnAutocompleteInput
160
+ #autocompleteInput="brnAutocompleteInput"
161
+ hlmInputGroupInput
162
+ [id]="inputId()"
163
+ [placeholder]="placeholder()"
164
+ [aria-invalid]="ariaInvalidOverride()"
165
+ [forceInvalid]="forceInvalid()"
166
+ />
167
+
168
+ @if (showSearch()) {
169
+ <hlm-input-group-addon>
170
+ <ng-icon name="lucideSearch" [class.opacity-50]="autocompleteInput.disabled()" />
171
+ </hlm-input-group-addon>
172
+ }
173
+
174
+ @if (showClear()) {
175
+ <hlm-input-group-addon align="inline-end">
176
+ <button
177
+ *brnAutocompleteClear
178
+ hlmInputGroupButton
179
+ data-slot="autocomplete-clear"
180
+ [disabled]="autocompleteInput.disabled()"
181
+ size="icon-xs"
182
+ variant="ghost"
183
+ >
184
+ <ng-icon name="lucideX" />
185
+ </button>
186
+ </hlm-input-group-addon>
187
+ }
188
+ <ng-content />
189
+ `,
190
+ }]
191
+ }], ctorParameters: () => [], propDecorators: { inputId: [{ type: i0.Input, args: [{ isSignal: true, alias: "inputId", required: false }] }], placeholder: [{ type: i0.Input, args: [{ isSignal: true, alias: "placeholder", required: false }] }], showSearch: [{ type: i0.Input, args: [{ isSignal: true, alias: "showSearch", required: false }] }], showClear: [{ type: i0.Input, args: [{ isSignal: true, alias: "showClear", 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 }] }] } });
192
+
193
+ class HlmAutocompleteItem {
194
+ constructor() {
195
+ this._brnAutocompleteItem = inject(BrnAutocompleteItem);
196
+ this._active = this._brnAutocompleteItem.active;
197
+ classes(() => 'data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground gap-2 rounded-md py-1 ps-1.5 pe-8 text-sm relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-hidden:hidden [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0');
198
+ }
199
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteItem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
200
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: HlmAutocompleteItem, isStandalone: true, selector: "hlm-autocomplete-item", host: { attributes: { "data-slot": "autocomplete-item" } }, providers: [provideIcons({ lucideCheck })], hostDirectives: [{ directive: i1.BrnAutocompleteItem, inputs: ["id", "id", "disabled", "disabled", "value", "value"] }], ngImport: i0, template: `
201
+ <ng-content />
202
+ @if (_active()) {
203
+ <ng-icon name="lucideCheck" class="absolute end-2 flex items-center justify-center text-[length:--spacing(4)]" aria-hidden="true" />
204
+ }
205
+ `, isInline: true, dependencies: [{ kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
206
+ }
207
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteItem, decorators: [{
208
+ type: Component,
209
+ args: [{
210
+ selector: 'hlm-autocomplete-item',
211
+ imports: [NgIcon],
212
+ providers: [provideIcons({ lucideCheck })],
213
+ changeDetection: ChangeDetectionStrategy.OnPush,
214
+ hostDirectives: [{ directive: BrnAutocompleteItem, inputs: ['id', 'disabled', 'value'] }],
215
+ host: { 'data-slot': 'autocomplete-item' },
216
+ template: `
217
+ <ng-content />
218
+ @if (_active()) {
219
+ <ng-icon name="lucideCheck" class="absolute end-2 flex items-center justify-center text-[length:--spacing(4)]" aria-hidden="true" />
220
+ }
221
+ `,
222
+ }]
223
+ }], ctorParameters: () => [] });
224
+
225
+ class HlmAutocompleteLabel {
226
+ constructor() {
227
+ classes(() => 'text-muted-foreground px-2 py-1.5 text-xs');
228
+ }
229
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteLabel, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
230
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteLabel, isStandalone: true, selector: "[hlmAutocompleteLabel]", host: { attributes: { "data-slot": "autocomplete-label" } }, hostDirectives: [{ directive: i1.BrnAutocompleteLabel, inputs: ["id", "id"] }], ngImport: i0 }); }
231
+ }
232
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteLabel, decorators: [{
233
+ type: Directive,
234
+ args: [{
235
+ selector: '[hlmAutocompleteLabel]',
236
+ hostDirectives: [{ directive: BrnAutocompleteLabel, inputs: ['id'] }],
237
+ host: { 'data-slot': 'autocomplete-label' },
238
+ }]
239
+ }], ctorParameters: () => [] });
240
+
241
+ class HlmAutocompleteList {
242
+ constructor() {
243
+ classes(() => 'no-scrollbar max-h-[calc(--spacing(72)---spacing(9))] scroll-py-1 p-1 data-empty:p-0 overflow-y-auto overscroll-contain');
244
+ }
245
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
246
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteList, isStandalone: true, selector: "[hlmAutocompleteList]", host: { attributes: { "data-slot": "autocomplete-list" } }, hostDirectives: [{ directive: i1.BrnAutocompleteList, inputs: ["id", "id"] }], ngImport: i0 }); }
247
+ }
248
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteList, decorators: [{
249
+ type: Directive,
250
+ args: [{
251
+ selector: '[hlmAutocompleteList]',
252
+ hostDirectives: [{ directive: BrnAutocompleteList, inputs: ['id'] }],
253
+ host: { 'data-slot': 'autocomplete-list' },
254
+ }]
255
+ }], ctorParameters: () => [] });
256
+
257
+ class HlmAutocompletePortal {
258
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompletePortal, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
259
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompletePortal, isStandalone: true, selector: "[hlmAutocompletePortal]", hostDirectives: [{ directive: i2.BrnPopoverContent, inputs: ["context", "context", "class", "class"] }], ngImport: i0 }); }
260
+ }
261
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompletePortal, decorators: [{
262
+ type: Directive,
263
+ args: [{
264
+ selector: '[hlmAutocompletePortal]',
265
+ hostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],
266
+ }]
267
+ }] });
268
+
269
+ class HlmAutocompleteSearch {
270
+ constructor() {
271
+ classes(() => 'block');
272
+ }
273
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteSearch, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
274
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteSearch, isStandalone: true, selector: "[hlmAutocompleteSearch],hlm-autocomplete-search", host: { attributes: { "data-slot": "autocomplete" } }, providers: [
275
+ provideBrnPopoverConfig({
276
+ align: 'start',
277
+ sideOffset: 6,
278
+ }),
279
+ provideBrnPopoverDefaultOptions({ role: null }),
280
+ ], hostDirectives: [{ directive: i1.BrnAutocompleteSearch, inputs: ["autoHighlight", "autoHighlight", "disabled", "disabled", "value", "value", "search", "search", "itemToString", "itemToString"], outputs: ["valueChange", "valueChange", "searchChange", "searchChange"] }, { directive: i2.BrnPopover, inputs: ["align", "align", "closeOnOutsidePointerEvents", "closeOnOutsidePointerEvents", "sideOffset", "sideOffset", "state", "state", "offsetX", "offsetX"], outputs: ["stateChanged", "stateChanged", "closed", "closed"] }], ngImport: i0 }); }
281
+ }
282
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteSearch, decorators: [{
283
+ type: Directive,
284
+ args: [{
285
+ selector: '[hlmAutocompleteSearch],hlm-autocomplete-search',
286
+ providers: [
287
+ provideBrnPopoverConfig({
288
+ align: 'start',
289
+ sideOffset: 6,
290
+ }),
291
+ provideBrnPopoverDefaultOptions({ role: null }),
292
+ ],
293
+ hostDirectives: [
294
+ {
295
+ directive: BrnAutocompleteSearch,
296
+ inputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString'],
297
+ outputs: ['valueChange', 'searchChange'],
298
+ },
299
+ {
300
+ directive: BrnPopover,
301
+ inputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],
302
+ outputs: ['stateChanged', 'closed'],
303
+ },
304
+ ],
305
+ host: { 'data-slot': 'autocomplete' },
306
+ }]
307
+ }], ctorParameters: () => [] });
308
+
309
+ class HlmAutocompleteSeparator {
310
+ constructor() {
311
+ classes(() => 'bg-border -mx-1 my-1 h-px');
312
+ }
313
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteSeparator, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
314
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteSeparator, isStandalone: true, selector: "[hlmAutocompleteSeparator]", host: { attributes: { "data-slot": "autocomplete-separator" } }, hostDirectives: [{ directive: i1.BrnAutocompleteSeparator, inputs: ["orientation", "orientation"] }], ngImport: i0 }); }
315
+ }
316
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteSeparator, decorators: [{
317
+ type: Directive,
318
+ args: [{
319
+ selector: '[hlmAutocompleteSeparator]',
320
+ hostDirectives: [{ directive: BrnAutocompleteSeparator, inputs: ['orientation'] }],
321
+ host: { 'data-slot': 'autocomplete-separator' },
322
+ }]
323
+ }], ctorParameters: () => [] });
324
+
325
+ class HlmAutocompleteStatus {
326
+ constructor() {
327
+ classes(() => 'text-muted-foreground gap-2 px-2.5 py-2 text-sm flex w-full items-center justify-center text-center');
328
+ }
329
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteStatus, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
330
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAutocompleteStatus, isStandalone: true, selector: "[hlmAutocompleteStatus],hlm-autocomplete-status", host: { attributes: { "data-slot": "autocomplete-status" } }, hostDirectives: [{ directive: i1.BrnAutocompleteStatus }], ngImport: i0 }); }
331
+ }
332
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAutocompleteStatus, decorators: [{
333
+ type: Directive,
334
+ args: [{
335
+ selector: '[hlmAutocompleteStatus],hlm-autocomplete-status',
336
+ hostDirectives: [BrnAutocompleteStatus],
337
+ host: { 'data-slot': 'autocomplete-status' },
338
+ }]
339
+ }], ctorParameters: () => [] });
340
+
341
+ const HlmAutocompleteImports = [
342
+ HlmAutocomplete,
343
+ HlmAutocompleteContent,
344
+ HlmAutocompleteEmpty,
345
+ HlmAutocompleteGroup,
346
+ HlmAutocompleteInput,
347
+ HlmAutocompleteItem,
348
+ HlmAutocompleteLabel,
349
+ HlmAutocompleteList,
350
+ HlmAutocompletePortal,
351
+ HlmAutocompleteSearch,
352
+ HlmAutocompleteSeparator,
353
+ HlmAutocompleteStatus,
354
+ ];
355
+
356
+ /**
357
+ * Generated bundle index. Do not edit.
358
+ */
359
+
360
+ export { HlmAutocomplete, HlmAutocompleteContent, HlmAutocompleteEmpty, HlmAutocompleteGroup, HlmAutocompleteImports, HlmAutocompleteInput, HlmAutocompleteItem, HlmAutocompleteLabel, HlmAutocompleteList, HlmAutocompletePortal, HlmAutocompleteSearch, HlmAutocompleteSeparator, HlmAutocompleteStatus };
361
+ //# sourceMappingURL=yukit-web-helm-autocomplete.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yukit-web-helm-autocomplete.mjs","sources":["../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-content.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-empty.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-group.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-input.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-item.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-label.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-list.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-portal.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-search.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-separator.ts","../../../projects/yukit-web/helm/autocomplete/src/lib/hlm-autocomplete-status.ts","../../../projects/yukit-web/helm/autocomplete/src/index.ts","../../../projects/yukit-web/helm/autocomplete/src/yukit-web-helm-autocomplete.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { BrnAutocomplete } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocomplete],hlm-autocomplete',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocomplete,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString', 'isItemEqualToValue'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocomplete {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteContent } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteContent],hlm-autocomplete-content',\n\thostDirectives: [BrnAutocompleteContent],\n})\nexport class HlmAutocompleteContent {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => 'bg-popover text-popover-foreground data-open:animate-in data-closed:animate-out data-closed:fade-out-0 data-open:fade-in-0 data-closed:zoom-out-95 data-open:zoom-in-95 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 ring-foreground/10 max-h-72 min-w-36 overflow-hidden rounded-lg shadow-md ring-1 duration-100 group/autocomplete-content flex w-(--brn-autocomplete-width) flex-col p-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteEmpty } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteEmpty],hlm-autocomplete-empty',\n\thostDirectives: [BrnAutocompleteEmpty],\n\thost: { 'data-slot': 'autocomplete-empty' },\n})\nexport class HlmAutocompleteEmpty {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground hidden w-full items-center justify-center py-2 text-center text-sm group-data-empty/autocomplete-content:flex');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteGroup } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteGroup]',\n\thostDirectives: [BrnAutocompleteGroup],\n\thost: { 'data-slot': 'autocomplete-group' },\n})\nexport class HlmAutocompleteGroup {\n\tconstructor() {\n\t\tclasses(() => 'data-hidden:hidden');\n\t}\n}\n","import { BooleanInput } from '@angular/cdk/coercion';\nimport { booleanAttribute, ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideSearch, lucideX } from '@ng-icons/lucide';\nimport { BrnAutocompleteAnchor, BrnAutocompleteClear, BrnAutocompleteInput } from '@spartan-ng/brain/autocomplete';\nimport { HlmInputGroup, HlmInputGroupImports } from 'yukit-web/helm/input-group';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-input',\n\timports: [HlmInputGroupImports, NgIcon, BrnAutocompleteClear, BrnAutocompleteInput],\n\tproviders: [provideIcons({ lucideSearch, lucideX })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [BrnAutocompleteAnchor, HlmInputGroup],\n\ttemplate: `\n\t\t<input\n\t\t\tbrnAutocompleteInput\n\t\t\t#autocompleteInput=\"brnAutocompleteInput\"\n\t\t\thlmInputGroupInput\n\t\t\t[id]=\"inputId()\"\n\t\t\t[placeholder]=\"placeholder()\"\n\t\t\t[aria-invalid]=\"ariaInvalidOverride()\"\n\t\t\t[forceInvalid]=\"forceInvalid()\"\n\t\t/>\n\n\t\t@if (showSearch()) {\n\t\t\t<hlm-input-group-addon>\n\t\t\t\t<ng-icon name=\"lucideSearch\" [class.opacity-50]=\"autocompleteInput.disabled()\" />\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\n\t\t@if (showClear()) {\n\t\t\t<hlm-input-group-addon align=\"inline-end\">\n\t\t\t\t<button\n\t\t\t\t\t*brnAutocompleteClear\n\t\t\t\t\thlmInputGroupButton\n\t\t\t\t\tdata-slot=\"autocomplete-clear\"\n\t\t\t\t\t[disabled]=\"autocompleteInput.disabled()\"\n\t\t\t\t\tsize=\"icon-xs\"\n\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t>\n\t\t\t\t\t<ng-icon name=\"lucideX\" />\n\t\t\t\t</button>\n\t\t\t</hlm-input-group-addon>\n\t\t}\n\t\t<ng-content />\n\t`,\n})\nexport class HlmAutocompleteInput {\n\tprivate static _id = 0;\n\n\tpublic readonly inputId = input<string>(`hlm-autocomplete-input-${HlmAutocompleteInput._id++}`);\n\n\tpublic readonly placeholder = input<string>('');\n\n\tpublic readonly showSearch = input<boolean, BooleanInput>(true, { transform: booleanAttribute });\n\tpublic readonly showClear = input<boolean, BooleanInput>(false, { transform: booleanAttribute });\n\n\t/** Forces the invalid state visually, regardless of form control 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\tconstructor() {\n\t\tclasses(() => 'w-auto');\n\t}\n}\n","import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideCheck } from '@ng-icons/lucide';\nimport { BrnAutocompleteItem } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-autocomplete-item',\n\timports: [NgIcon],\n\tproviders: [provideIcons({ lucideCheck })],\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thostDirectives: [{ directive: BrnAutocompleteItem, inputs: ['id', 'disabled', 'value'] }],\n\thost: { 'data-slot': 'autocomplete-item' },\n\ttemplate: `\n\t\t<ng-content />\n\t\t@if (_active()) {\n\t\t\t<ng-icon name=\"lucideCheck\" class=\"absolute end-2 flex items-center justify-center text-[length:--spacing(4)]\" aria-hidden=\"true\" />\n\t\t}\n\t`,\n})\nexport class HlmAutocompleteItem {\n\tprivate readonly _brnAutocompleteItem = inject(BrnAutocompleteItem);\n\n\tprotected readonly _active = this._brnAutocompleteItem.active;\n\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground gap-2 rounded-md py-1 ps-1.5 pe-8 text-sm relative flex w-full cursor-default items-center outline-hidden select-none data-disabled:pointer-events-none data-disabled:opacity-50 data-hidden:hidden [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteLabel } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteLabel]',\n\thostDirectives: [{ directive: BrnAutocompleteLabel, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-label' },\n})\nexport class HlmAutocompleteLabel {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground px-2 py-1.5 text-xs');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteList } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteList]',\n\thostDirectives: [{ directive: BrnAutocompleteList, inputs: ['id'] }],\n\thost: { 'data-slot': 'autocomplete-list' },\n})\nexport class HlmAutocompleteList {\n\tconstructor() {\n\t\tclasses(() => 'no-scrollbar max-h-[calc(--spacing(72)---spacing(9))] scroll-py-1 p-1 data-empty:p-0 overflow-y-auto overscroll-contain');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnPopoverContent } from '@spartan-ng/brain/popover';\n\n@Directive({\n\tselector: '[hlmAutocompletePortal]',\n\thostDirectives: [{ directive: BrnPopoverContent, inputs: ['context', 'class'] }],\n})\nexport class HlmAutocompletePortal {}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSearch } from '@spartan-ng/brain/autocomplete';\nimport { BrnPopover, provideBrnPopoverConfig, provideBrnPopoverDefaultOptions } from '@spartan-ng/brain/popover';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSearch],hlm-autocomplete-search',\n\tproviders: [\n\t\tprovideBrnPopoverConfig({\n\t\t\talign: 'start',\n\t\t\tsideOffset: 6,\n\t\t}),\n\t\tprovideBrnPopoverDefaultOptions({ role: null }),\n\t],\n\thostDirectives: [\n\t\t{\n\t\t\tdirective: BrnAutocompleteSearch,\n\t\t\tinputs: ['autoHighlight', 'disabled', 'value', 'search', 'itemToString'],\n\t\t\toutputs: ['valueChange', 'searchChange'],\n\t\t},\n\t\t{\n\t\t\tdirective: BrnPopover,\n\t\t\tinputs: ['align', 'closeOnOutsidePointerEvents', 'sideOffset', 'state', 'offsetX'],\n\t\t\toutputs: ['stateChanged', 'closed'],\n\t\t},\n\t],\n\thost: { 'data-slot': 'autocomplete' },\n})\nexport class HlmAutocompleteSearch {\n\tconstructor() {\n\t\tclasses(() => 'block');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteSeparator } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteSeparator]',\n\thostDirectives: [{ directive: BrnAutocompleteSeparator, inputs: ['orientation'] }],\n\thost: { 'data-slot': 'autocomplete-separator' },\n})\nexport class HlmAutocompleteSeparator {\n\tconstructor() {\n\t\tclasses(() => 'bg-border -mx-1 my-1 h-px');\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAutocompleteStatus } from '@spartan-ng/brain/autocomplete';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAutocompleteStatus],hlm-autocomplete-status',\n\thostDirectives: [BrnAutocompleteStatus],\n\thost: { 'data-slot': 'autocomplete-status' },\n})\nexport class HlmAutocompleteStatus {\n\tconstructor() {\n\t\tclasses(() => 'text-muted-foreground gap-2 px-2.5 py-2 text-sm flex w-full items-center justify-center text-center');\n\t}\n}\n","import { HlmAutocomplete } from './lib/hlm-autocomplete';\nimport { HlmAutocompleteContent } from './lib/hlm-autocomplete-content';\nimport { HlmAutocompleteEmpty } from './lib/hlm-autocomplete-empty';\nimport { HlmAutocompleteGroup } from './lib/hlm-autocomplete-group';\nimport { HlmAutocompleteInput } from './lib/hlm-autocomplete-input';\nimport { HlmAutocompleteItem } from './lib/hlm-autocomplete-item';\nimport { HlmAutocompleteLabel } from './lib/hlm-autocomplete-label';\nimport { HlmAutocompleteList } from './lib/hlm-autocomplete-list';\nimport { HlmAutocompletePortal } from './lib/hlm-autocomplete-portal';\nimport { HlmAutocompleteSearch } from './lib/hlm-autocomplete-search';\nimport { HlmAutocompleteSeparator } from './lib/hlm-autocomplete-separator';\nimport { HlmAutocompleteStatus } from './lib/hlm-autocomplete-status';\n\nexport * from './lib/hlm-autocomplete';\nexport * from './lib/hlm-autocomplete-content';\nexport * from './lib/hlm-autocomplete-empty';\nexport * from './lib/hlm-autocomplete-group';\nexport * from './lib/hlm-autocomplete-input';\nexport * from './lib/hlm-autocomplete-item';\nexport * from './lib/hlm-autocomplete-label';\nexport * from './lib/hlm-autocomplete-list';\nexport * from './lib/hlm-autocomplete-portal';\nexport * from './lib/hlm-autocomplete-search';\nexport * from './lib/hlm-autocomplete-separator';\nexport * from './lib/hlm-autocomplete-status';\n\nexport const HlmAutocompleteImports = [\n\tHlmAutocomplete,\n\tHlmAutocompleteContent,\n\tHlmAutocompleteEmpty,\n\tHlmAutocompleteGroup,\n\tHlmAutocompleteInput,\n\tHlmAutocompleteItem,\n\tHlmAutocompleteLabel,\n\tHlmAutocompleteList,\n\tHlmAutocompletePortal,\n\tHlmAutocompleteSearch,\n\tHlmAutocompleteSeparator,\n\tHlmAutocompleteStatus,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2","i1"],"mappings":"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"}
@@ -0,0 +1,152 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, ChangeDetectionStrategy, Component, Directive, inject } from '@angular/core';
3
+ import * as i1 from '@spartan-ng/brain/avatar';
4
+ import { BrnAvatar, BrnAvatarFallback, BrnAvatarImage } from '@spartan-ng/brain/avatar';
5
+ import { classes } from 'yukit-web/helm/utils';
6
+
7
+ class HlmAvatar extends BrnAvatar {
8
+ constructor() {
9
+ super();
10
+ this.size = input('default', ...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
11
+ classes(() => 'size-8 rounded-full after:rounded-full data-[size=lg]:size-10 data-[size=sm]:size-6 group/avatar after:border-border relative flex shrink-0 select-none after:absolute after:inset-0 after:border after:mix-blend-darken dark:after:mix-blend-lighten');
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatar, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.8", type: HlmAvatar, isStandalone: true, selector: "hlm-avatar", inputs: { size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "avatar" }, properties: { "attr.data-size": "size()" } }, usesInheritance: true, ngImport: i0, template: `
15
+ @if (_image()?.canShow()) {
16
+ <ng-content select="[hlmAvatarImage],[brnAvatarImage]" />
17
+ } @else {
18
+ <ng-content select="[hlmAvatarFallback],[brnAvatarFallback]" />
19
+ }
20
+ <ng-content />
21
+ `, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatar, decorators: [{
24
+ type: Component,
25
+ args: [{
26
+ selector: 'hlm-avatar',
27
+ changeDetection: ChangeDetectionStrategy.OnPush,
28
+ host: {
29
+ 'data-slot': 'avatar',
30
+ '[attr.data-size]': 'size()',
31
+ },
32
+ template: `
33
+ @if (_image()?.canShow()) {
34
+ <ng-content select="[hlmAvatarImage],[brnAvatarImage]" />
35
+ } @else {
36
+ <ng-content select="[hlmAvatarFallback],[brnAvatarFallback]" />
37
+ }
38
+ <ng-content />
39
+ `,
40
+ }]
41
+ }], ctorParameters: () => [], propDecorators: { size: [{ type: i0.Input, args: [{ isSignal: true, alias: "size", required: false }] }] } });
42
+
43
+ class HlmAvatarBadge {
44
+ constructor() {
45
+ classes(() => [
46
+ 'bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none',
47
+ 'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>ng-icon]:hidden',
48
+ 'group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>ng-icon]:text-[length:--spacing(2)]',
49
+ 'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>ng-icon]:text-[length:--spacing(2)]',
50
+ ]);
51
+ }
52
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarBadge, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
53
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAvatarBadge, isStandalone: true, selector: "[hlmAvatarBadge],hlm-avatar-badge", host: { attributes: { "data-slot": "avatar-badge" } }, ngImport: i0 }); }
54
+ }
55
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarBadge, decorators: [{
56
+ type: Directive,
57
+ args: [{
58
+ selector: '[hlmAvatarBadge],hlm-avatar-badge',
59
+ host: {
60
+ 'data-slot': 'avatar-badge',
61
+ },
62
+ }]
63
+ }], ctorParameters: () => [] });
64
+
65
+ class HlmAvatarFallback {
66
+ constructor() {
67
+ classes(() => 'bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs');
68
+ }
69
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarFallback, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
70
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAvatarFallback, isStandalone: true, selector: "[hlmAvatarFallback]", host: { attributes: { "data-slot": "avatar-fallback" } }, exportAs: ["hlmAvatarFallback"], hostDirectives: [{ directive: i1.BrnAvatarFallback }], ngImport: i0 }); }
71
+ }
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarFallback, decorators: [{
73
+ type: Directive,
74
+ args: [{
75
+ selector: '[hlmAvatarFallback]',
76
+ exportAs: 'hlmAvatarFallback',
77
+ hostDirectives: [BrnAvatarFallback],
78
+ host: {
79
+ 'data-slot': 'avatar-fallback',
80
+ },
81
+ }]
82
+ }], ctorParameters: () => [] });
83
+
84
+ class HlmAvatarGroup {
85
+ constructor() {
86
+ classes(() => '*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2');
87
+ }
88
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarGroup, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
89
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAvatarGroup, isStandalone: true, selector: "[hlmAvatarGroup],hlm-avatar-group", host: { attributes: { "data-slot": "avatar-group" } }, ngImport: i0 }); }
90
+ }
91
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarGroup, decorators: [{
92
+ type: Directive,
93
+ args: [{
94
+ selector: '[hlmAvatarGroup],hlm-avatar-group',
95
+ host: {
96
+ 'data-slot': 'avatar-group',
97
+ },
98
+ }]
99
+ }], ctorParameters: () => [] });
100
+
101
+ class HlmAvatarGroupCount {
102
+ constructor() {
103
+ classes(() => 'bg-muted text-muted-foreground ring-background relative flex size-8 shrink-0 items-center justify-center rounded-full text-sm ring-2 group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>ng-icon]:text-base group-has-data-[size=lg]/avatar-group:[&>ng-icon]:text-xl group-has-data-[size=sm]/avatar-group:[&>ng-icon]:text-xs');
104
+ }
105
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarGroupCount, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
106
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAvatarGroupCount, isStandalone: true, selector: "[hlmAvatarGroupCount],hlm-avatar-group-count", host: { attributes: { "data-slot": "avatar-group-count" } }, ngImport: i0 }); }
107
+ }
108
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarGroupCount, decorators: [{
109
+ type: Directive,
110
+ args: [{
111
+ selector: '[hlmAvatarGroupCount],hlm-avatar-group-count',
112
+ host: {
113
+ 'data-slot': 'avatar-group-count',
114
+ },
115
+ }]
116
+ }], ctorParameters: () => [] });
117
+
118
+ class HlmAvatarImage {
119
+ constructor() {
120
+ this.canShow = inject(BrnAvatarImage).canShow;
121
+ classes(() => 'rounded-full aspect-square size-full object-cover');
122
+ }
123
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarImage, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
124
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.8", type: HlmAvatarImage, isStandalone: true, selector: "img[hlmAvatarImage]", host: { attributes: { "data-slot": "avatar-image" } }, exportAs: ["hlmAvatarImage"], hostDirectives: [{ directive: i1.BrnAvatarImage }], ngImport: i0 }); }
125
+ }
126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.8", ngImport: i0, type: HlmAvatarImage, decorators: [{
127
+ type: Directive,
128
+ args: [{
129
+ selector: 'img[hlmAvatarImage]',
130
+ exportAs: 'hlmAvatarImage',
131
+ hostDirectives: [BrnAvatarImage],
132
+ host: {
133
+ 'data-slot': 'avatar-image',
134
+ },
135
+ }]
136
+ }], ctorParameters: () => [] });
137
+
138
+ const HlmAvatarImports = [
139
+ HlmAvatar,
140
+ HlmAvatarBadge,
141
+ HlmAvatarFallback,
142
+ HlmAvatarGroup,
143
+ HlmAvatarGroupCount,
144
+ HlmAvatarImage,
145
+ ];
146
+
147
+ /**
148
+ * Generated bundle index. Do not edit.
149
+ */
150
+
151
+ export { HlmAvatar, HlmAvatarBadge, HlmAvatarFallback, HlmAvatarGroup, HlmAvatarGroupCount, HlmAvatarImage, HlmAvatarImports };
152
+ //# sourceMappingURL=yukit-web-helm-avatar.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yukit-web-helm-avatar.mjs","sources":["../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar.ts","../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar-badge.ts","../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar-fallback.ts","../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar-group.ts","../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar-group-count.ts","../../../projects/yukit-web/helm/avatar/src/lib/hlm-avatar-image.ts","../../../projects/yukit-web/helm/avatar/src/index.ts","../../../projects/yukit-web/helm/avatar/src/yukit-web-helm-avatar.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, input } from '@angular/core';\nimport { BrnAvatar } from '@spartan-ng/brain/avatar';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Component({\n\tselector: 'hlm-avatar',\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n\thost: {\n\t\t'data-slot': 'avatar',\n\t\t'[attr.data-size]': 'size()',\n\t},\n\ttemplate: `\n\t\t@if (_image()?.canShow()) {\n\t\t\t<ng-content select=\"[hlmAvatarImage],[brnAvatarImage]\" />\n\t\t} @else {\n\t\t\t<ng-content select=\"[hlmAvatarFallback],[brnAvatarFallback]\" />\n\t\t}\n\t\t<ng-content />\n\t`,\n})\nexport class HlmAvatar extends BrnAvatar {\n\tpublic readonly size = input<'default' | 'sm' | 'lg'>('default');\n\n\tconstructor() {\n\t\tsuper();\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'size-8 rounded-full after:rounded-full data-[size=lg]:size-10 data-[size=sm]:size-6 group/avatar after:border-border relative flex shrink-0 select-none after:absolute after:inset-0 after:border after:mix-blend-darken dark:after:mix-blend-lighten',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAvatarBadge],hlm-avatar-badge',\n\thost: {\n\t\t'data-slot': 'avatar-badge',\n\t},\n})\nexport class HlmAvatarBadge {\n\tconstructor() {\n\t\tclasses(() => [\n\t\t\t'bg-primary text-primary-foreground ring-background absolute right-0 bottom-0 z-10 inline-flex items-center justify-center rounded-full bg-blend-color ring-2 select-none',\n\t\t\t'group-data-[size=sm]/avatar:size-2 group-data-[size=sm]/avatar:[&>ng-icon]:hidden',\n\t\t\t'group-data-[size=default]/avatar:size-2.5 group-data-[size=default]/avatar:[&>ng-icon]:text-[length:--spacing(2)]',\n\t\t\t'group-data-[size=lg]/avatar:size-3 group-data-[size=lg]/avatar:[&>ng-icon]:text-[length:--spacing(2)]',\n\t\t]);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { BrnAvatarFallback } from '@spartan-ng/brain/avatar';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAvatarFallback]',\n\texportAs: 'hlmAvatarFallback',\n\thostDirectives: [BrnAvatarFallback],\n\thost: {\n\t\t'data-slot': 'avatar-fallback',\n\t},\n})\nexport class HlmAvatarFallback {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'bg-muted text-muted-foreground rounded-full flex size-full items-center justify-center text-sm group-data-[size=sm]/avatar:text-xs',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAvatarGroup],hlm-avatar-group',\n\thost: {\n\t\t'data-slot': 'avatar-group',\n\t},\n})\nexport class HlmAvatarGroup {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() => '*:data-[slot=avatar]:ring-background group/avatar-group flex -space-x-2 *:data-[slot=avatar]:ring-2',\n\t\t);\n\t}\n}\n","import { Directive } from '@angular/core';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: '[hlmAvatarGroupCount],hlm-avatar-group-count',\n\thost: {\n\t\t'data-slot': 'avatar-group-count',\n\t},\n})\nexport class HlmAvatarGroupCount {\n\tconstructor() {\n\t\tclasses(\n\t\t\t() =>\n\t\t\t\t'bg-muted text-muted-foreground ring-background relative flex size-8 shrink-0 items-center justify-center rounded-full text-sm ring-2 group-has-data-[size=lg]/avatar-group:size-10 group-has-data-[size=sm]/avatar-group:size-6 [&>ng-icon]:text-base group-has-data-[size=lg]/avatar-group:[&>ng-icon]:text-xl group-has-data-[size=sm]/avatar-group:[&>ng-icon]:text-xs',\n\t\t);\n\t}\n}\n","import { Directive, inject } from '@angular/core';\nimport { BrnAvatarImage } from '@spartan-ng/brain/avatar';\nimport { classes } from 'yukit-web/helm/utils';\n\n@Directive({\n\tselector: 'img[hlmAvatarImage]',\n\texportAs: 'hlmAvatarImage',\n\thostDirectives: [BrnAvatarImage],\n\thost: {\n\t\t'data-slot': 'avatar-image',\n\t},\n})\nexport class HlmAvatarImage {\n\tpublic readonly canShow = inject(BrnAvatarImage).canShow;\n\n\tconstructor() {\n\t\tclasses(() => 'rounded-full aspect-square size-full object-cover');\n\t}\n}\n","import { HlmAvatar } from './lib/hlm-avatar';\nimport { HlmAvatarBadge } from './lib/hlm-avatar-badge';\nimport { HlmAvatarFallback } from './lib/hlm-avatar-fallback';\nimport { HlmAvatarGroup } from './lib/hlm-avatar-group';\nimport { HlmAvatarGroupCount } from './lib/hlm-avatar-group-count';\nimport { HlmAvatarImage } from './lib/hlm-avatar-image';\n\nexport * from './lib/hlm-avatar';\nexport * from './lib/hlm-avatar-badge';\nexport * from './lib/hlm-avatar-fallback';\nexport * from './lib/hlm-avatar-group';\nexport * from './lib/hlm-avatar-group-count';\nexport * from './lib/hlm-avatar-image';\n\nexport const HlmAvatarImports = [\n\tHlmAvatar,\n\tHlmAvatarBadge,\n\tHlmAvatarFallback,\n\tHlmAvatarGroup,\n\tHlmAvatarGroupCount,\n\tHlmAvatarImage,\n] as const;\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}