@egose/shadcn-theme-ng 0.0.27 → 0.0.28

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 (334) hide show
  1. package/accordion/README.md +64 -0
  2. package/accordion/fesm2022/accordion.mjs +160 -0
  3. package/accordion/fesm2022/accordion.mjs.map +1 -0
  4. package/accordion/package.json +25 -0
  5. package/accordion/types/accordion.d.ts +49 -0
  6. package/alert/fesm2022/alert.mjs +29 -24
  7. package/alert/fesm2022/alert.mjs.map +1 -1
  8. package/alert/package.json +25 -0
  9. package/alert-dialog/README.md +11 -0
  10. package/alert-dialog/fesm2022/alert-dialog.mjs +287 -0
  11. package/alert-dialog/fesm2022/alert-dialog.mjs.map +1 -0
  12. package/alert-dialog/package.json +25 -0
  13. package/alert-dialog/types/alert-dialog.d.ts +90 -0
  14. package/aspect-ratio/README.md +11 -0
  15. package/aspect-ratio/fesm2022/aspect-ratio.mjs +62 -0
  16. package/aspect-ratio/fesm2022/aspect-ratio.mjs.map +1 -0
  17. package/aspect-ratio/package.json +25 -0
  18. package/aspect-ratio/types/aspect-ratio.d.ts +21 -0
  19. package/autocomplete/README.md +64 -0
  20. package/autocomplete/fesm2022/autocomplete.mjs +409 -0
  21. package/autocomplete/fesm2022/autocomplete.mjs.map +1 -0
  22. package/autocomplete/package.json +24 -0
  23. package/autocomplete/types/autocomplete.d.ts +96 -0
  24. package/avatar/README.md +11 -0
  25. package/avatar/fesm2022/avatar.mjs +178 -0
  26. package/avatar/fesm2022/avatar.mjs.map +1 -0
  27. package/avatar/package.json +25 -0
  28. package/avatar/types/avatar.d.ts +50 -0
  29. package/badge/fesm2022/badge.mjs +15 -9
  30. package/badge/fesm2022/badge.mjs.map +1 -1
  31. package/badge/package.json +25 -0
  32. package/basic-alert/fesm2022/basic-alert.mjs +11 -7
  33. package/basic-alert/fesm2022/basic-alert.mjs.map +1 -1
  34. package/basic-alert/package.json +24 -0
  35. package/breadcrumb/README.md +11 -0
  36. package/breadcrumb/fesm2022/breadcrumb.mjs +224 -0
  37. package/breadcrumb/fesm2022/breadcrumb.mjs.map +1 -0
  38. package/breadcrumb/package.json +25 -0
  39. package/breadcrumb/types/breadcrumb.d.ts +57 -0
  40. package/button/fesm2022/button.mjs +99 -25
  41. package/button/fesm2022/button.mjs.map +1 -1
  42. package/button/package.json +25 -0
  43. package/button/{index.d.ts → types/button.d.ts} +30 -9
  44. package/button-group/README.md +11 -0
  45. package/button-group/fesm2022/button-group.mjs +102 -0
  46. package/button-group/fesm2022/button-group.mjs.map +1 -0
  47. package/button-group/package.json +25 -0
  48. package/button-group/types/button-group.d.ts +30 -0
  49. package/calendar/fesm2022/calendar.mjs +868 -546
  50. package/calendar/fesm2022/calendar.mjs.map +1 -1
  51. package/calendar/package.json +24 -0
  52. package/calendar/types/calendar.d.ts +94 -0
  53. package/card/README.md +11 -0
  54. package/card/fesm2022/card.mjs +169 -0
  55. package/card/fesm2022/card.mjs.map +1 -0
  56. package/card/package.json +25 -0
  57. package/card/types/card.d.ts +54 -0
  58. package/carousel/README.md +11 -0
  59. package/carousel/fesm2022/carousel.mjs +309 -0
  60. package/carousel/fesm2022/carousel.mjs.map +1 -0
  61. package/carousel/package.json +25 -0
  62. package/carousel/types/carousel.d.ts +84 -0
  63. package/checkbox/README.md +64 -0
  64. package/checkbox/fesm2022/checkbox.mjs +151 -0
  65. package/checkbox/fesm2022/checkbox.mjs.map +1 -0
  66. package/checkbox/package.json +24 -0
  67. package/checkbox/types/checkbox.d.ts +55 -0
  68. package/collapsible/README.md +11 -0
  69. package/collapsible/fesm2022/collapsible.mjs +77 -0
  70. package/collapsible/fesm2022/collapsible.mjs.map +1 -0
  71. package/collapsible/package.json +25 -0
  72. package/collapsible/types/collapsible.d.ts +27 -0
  73. package/combobox/README.md +11 -0
  74. package/combobox/fesm2022/combobox.mjs +683 -0
  75. package/combobox/fesm2022/combobox.mjs.map +1 -0
  76. package/combobox/package.json +25 -0
  77. package/combobox/types/combobox.d.ts +151 -0
  78. package/command/README.md +11 -0
  79. package/command/fesm2022/command.mjs +361 -0
  80. package/command/fesm2022/command.mjs.map +1 -0
  81. package/command/package.json +25 -0
  82. package/command/types/command.d.ts +89 -0
  83. package/confirmation-dialog/README.md +64 -0
  84. package/confirmation-dialog/fesm2022/confirmation-dialog.mjs +104 -0
  85. package/confirmation-dialog/fesm2022/confirmation-dialog.mjs.map +1 -0
  86. package/confirmation-dialog/package.json +24 -0
  87. package/confirmation-dialog/types/confirmation-dialog.d.ts +24 -0
  88. package/context-menu/README.md +11 -0
  89. package/context-menu/fesm2022/context-menu.mjs +89 -0
  90. package/context-menu/fesm2022/context-menu.mjs.map +1 -0
  91. package/context-menu/package.json +25 -0
  92. package/context-menu/types/context-menu.d.ts +34 -0
  93. package/date-picker/fesm2022/date-picker.mjs +1262 -307
  94. package/date-picker/fesm2022/date-picker.mjs.map +1 -1
  95. package/date-picker/package.json +24 -0
  96. package/date-picker/types/date-picker.d.ts +551 -0
  97. package/dialog/README.md +64 -0
  98. package/dialog/fesm2022/dialog.mjs +307 -0
  99. package/dialog/fesm2022/dialog.mjs.map +1 -0
  100. package/dialog/package.json +24 -0
  101. package/dialog/types/dialog.d.ts +95 -0
  102. package/drawer/README.md +11 -0
  103. package/drawer/fesm2022/drawer.mjs +271 -0
  104. package/drawer/fesm2022/drawer.mjs.map +1 -0
  105. package/drawer/package.json +25 -0
  106. package/drawer/types/drawer.d.ts +76 -0
  107. package/dropdown-menu/README.md +11 -0
  108. package/dropdown-menu/fesm2022/dropdown-menu.mjs +542 -0
  109. package/dropdown-menu/fesm2022/dropdown-menu.mjs.map +1 -0
  110. package/dropdown-menu/package.json +25 -0
  111. package/dropdown-menu/types/dropdown-menu.d.ts +176 -0
  112. package/empty/README.md +11 -0
  113. package/empty/fesm2022/empty.mjs +151 -0
  114. package/empty/fesm2022/empty.mjs.map +1 -0
  115. package/empty/package.json +25 -0
  116. package/empty/types/empty.d.ts +54 -0
  117. package/field/README.md +11 -0
  118. package/field/fesm2022/field.mjs +367 -0
  119. package/field/fesm2022/field.mjs.map +1 -0
  120. package/field/package.json +25 -0
  121. package/field/types/field.d.ts +107 -0
  122. package/form-checkbox/README.md +64 -0
  123. package/form-checkbox/fesm2022/form-checkbox.mjs +154 -0
  124. package/form-checkbox/fesm2022/form-checkbox.mjs.map +1 -0
  125. package/form-checkbox/package.json +24 -0
  126. package/form-checkbox/types/form-checkbox.d.ts +27 -0
  127. package/form-date-picker/fesm2022/form-date-picker.mjs +57 -50
  128. package/form-date-picker/fesm2022/form-date-picker.mjs.map +1 -1
  129. package/form-date-picker/package.json +24 -0
  130. package/form-field/fesm2022/form-field.mjs +37 -25
  131. package/form-field/fesm2022/form-field.mjs.map +1 -1
  132. package/form-field/package.json +25 -0
  133. package/form-field/{index.d.ts → types/form-field.d.ts} +4 -3
  134. package/form-field-simple/fesm2022/form-field-simple.mjs +14 -9
  135. package/form-field-simple/fesm2022/form-field-simple.mjs.map +1 -1
  136. package/form-field-simple/package.json +24 -0
  137. package/form-searchable-multiselect/README.md +64 -0
  138. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs +158 -0
  139. package/form-searchable-multiselect/fesm2022/form-searchable-multiselect.mjs.map +1 -0
  140. package/form-searchable-multiselect/package.json +24 -0
  141. package/form-searchable-multiselect/types/form-searchable-multiselect.d.ts +30 -0
  142. package/form-select/fesm2022/form-select.mjs +131 -70
  143. package/form-select/fesm2022/form-select.mjs.map +1 -1
  144. package/form-select/package.json +24 -0
  145. package/form-text-input/fesm2022/form-text-input.mjs +66 -37
  146. package/form-text-input/fesm2022/form-text-input.mjs.map +1 -1
  147. package/form-text-input/package.json +24 -0
  148. package/form-textarea/fesm2022/form-textarea.mjs +53 -29
  149. package/form-textarea/fesm2022/form-textarea.mjs.map +1 -1
  150. package/form-textarea/package.json +24 -0
  151. package/hover-card/README.md +11 -0
  152. package/hover-card/fesm2022/hover-card.mjs +123 -0
  153. package/hover-card/fesm2022/hover-card.mjs.map +1 -0
  154. package/hover-card/package.json +25 -0
  155. package/hover-card/types/hover-card.d.ts +36 -0
  156. package/icon/fesm2022/icon.mjs +11 -9
  157. package/icon/fesm2022/icon.mjs.map +1 -1
  158. package/icon/package.json +25 -0
  159. package/input/fesm2022/input.mjs +21 -71
  160. package/input/fesm2022/input.mjs.map +1 -1
  161. package/input/package.json +25 -0
  162. package/input/types/input.d.ts +18 -0
  163. package/input-group/README.md +11 -0
  164. package/input-group/fesm2022/input-group.mjs +199 -0
  165. package/input-group/fesm2022/input-group.mjs.map +1 -0
  166. package/input-group/package.json +25 -0
  167. package/input-group/types/input-group.d.ts +52 -0
  168. package/input-otp/README.md +11 -0
  169. package/input-otp/fesm2022/input-otp.mjs +141 -0
  170. package/input-otp/fesm2022/input-otp.mjs.map +1 -0
  171. package/input-otp/package.json +25 -0
  172. package/input-otp/types/input-otp.d.ts +43 -0
  173. package/item/README.md +11 -0
  174. package/item/fesm2022/item.mjs +278 -0
  175. package/item/fesm2022/item.mjs.map +1 -0
  176. package/item/package.json +25 -0
  177. package/item/types/item.d.ts +101 -0
  178. package/kbd/README.md +11 -0
  179. package/kbd/fesm2022/kbd.mjs +61 -0
  180. package/kbd/fesm2022/kbd.mjs.map +1 -0
  181. package/kbd/package.json +25 -0
  182. package/kbd/types/kbd.d.ts +22 -0
  183. package/label/fesm2022/label.mjs +10 -9
  184. package/label/fesm2022/label.mjs.map +1 -1
  185. package/label/package.json +25 -0
  186. package/layout-simple/README.md +64 -0
  187. package/layout-simple/fesm2022/layout-simple.mjs +719 -0
  188. package/layout-simple/fesm2022/layout-simple.mjs.map +1 -0
  189. package/layout-simple/package.json +24 -0
  190. package/layout-simple/types/layout-simple.d.ts +153 -0
  191. package/menubar/README.md +11 -0
  192. package/menubar/fesm2022/menubar.mjs +108 -0
  193. package/menubar/fesm2022/menubar.mjs.map +1 -0
  194. package/menubar/package.json +25 -0
  195. package/menubar/types/menubar.d.ts +40 -0
  196. package/native-select/README.md +11 -0
  197. package/native-select/fesm2022/native-select.mjs +207 -0
  198. package/native-select/fesm2022/native-select.mjs.map +1 -0
  199. package/native-select/package.json +25 -0
  200. package/native-select/types/native-select.d.ts +70 -0
  201. package/navigation-menu/README.md +11 -0
  202. package/navigation-menu/fesm2022/navigation-menu.mjs +206 -0
  203. package/navigation-menu/fesm2022/navigation-menu.mjs.map +1 -0
  204. package/navigation-menu/package.json +25 -0
  205. package/navigation-menu/types/navigation-menu.d.ts +54 -0
  206. package/package.json +239 -47
  207. package/pagination/README.md +11 -0
  208. package/pagination/fesm2022/pagination.mjs +808 -0
  209. package/pagination/fesm2022/pagination.mjs.map +1 -0
  210. package/pagination/package.json +25 -0
  211. package/pagination/types/pagination.d.ts +192 -0
  212. package/popover/fesm2022/popover.mjs +123 -29
  213. package/popover/fesm2022/popover.mjs.map +1 -1
  214. package/popover/package.json +24 -0
  215. package/popover/types/popover.d.ts +54 -0
  216. package/progress/README.md +11 -0
  217. package/progress/fesm2022/progress.mjs +77 -0
  218. package/progress/fesm2022/progress.mjs.map +1 -0
  219. package/progress/package.json +25 -0
  220. package/progress/types/progress.d.ts +27 -0
  221. package/radio-group/README.md +64 -0
  222. package/radio-group/fesm2022/radio-group.mjs +204 -0
  223. package/radio-group/fesm2022/radio-group.mjs.map +1 -0
  224. package/radio-group/package.json +25 -0
  225. package/radio-group/types/radio-group.d.ts +71 -0
  226. package/resizable/README.md +11 -0
  227. package/resizable/fesm2022/resizable.mjs +111 -0
  228. package/resizable/fesm2022/resizable.mjs.map +1 -0
  229. package/resizable/package.json +25 -0
  230. package/resizable/types/resizable.d.ts +32 -0
  231. package/scroll-area/README.md +11 -0
  232. package/scroll-area/fesm2022/scroll-area.mjs +51 -0
  233. package/scroll-area/fesm2022/scroll-area.mjs.map +1 -0
  234. package/scroll-area/package.json +25 -0
  235. package/scroll-area/types/scroll-area.d.ts +16 -0
  236. package/searchable-multiselect/README.md +64 -0
  237. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs +225 -0
  238. package/searchable-multiselect/fesm2022/searchable-multiselect.mjs.map +1 -0
  239. package/searchable-multiselect/package.json +24 -0
  240. package/searchable-multiselect/types/searchable-multiselect.d.ts +39 -0
  241. package/select/fesm2022/select.mjs +373 -191
  242. package/select/fesm2022/select.mjs.map +1 -1
  243. package/select/package.json +25 -0
  244. package/select/types/select.d.ts +119 -0
  245. package/separator/fesm2022/separator.mjs +16 -14
  246. package/separator/fesm2022/separator.mjs.map +1 -1
  247. package/separator/package.json +24 -0
  248. package/separator/{index.d.ts → types/separator.d.ts} +4 -5
  249. package/sheet/fesm2022/sheet.mjs +49 -42
  250. package/sheet/fesm2022/sheet.mjs.map +1 -1
  251. package/sheet/package.json +24 -0
  252. package/sidebar/README.md +11 -0
  253. package/sidebar/fesm2022/sidebar.mjs +948 -0
  254. package/sidebar/fesm2022/sidebar.mjs.map +1 -0
  255. package/sidebar/package.json +25 -0
  256. package/sidebar/types/sidebar.d.ts +237 -0
  257. package/skeleton/README.md +11 -0
  258. package/skeleton/fesm2022/skeleton.mjs +44 -0
  259. package/skeleton/fesm2022/skeleton.mjs.map +1 -0
  260. package/skeleton/package.json +25 -0
  261. package/skeleton/types/skeleton.d.ts +16 -0
  262. package/slider/README.md +11 -0
  263. package/slider/fesm2022/slider.mjs +144 -0
  264. package/slider/fesm2022/slider.mjs.map +1 -0
  265. package/slider/package.json +25 -0
  266. package/slider/types/slider.d.ts +19 -0
  267. package/sonner/fesm2022/sonner.mjs +29 -34
  268. package/sonner/fesm2022/sonner.mjs.map +1 -1
  269. package/sonner/package.json +25 -0
  270. package/spinner/fesm2022/spinner.mjs +17 -13
  271. package/spinner/fesm2022/spinner.mjs.map +1 -1
  272. package/spinner/package.json +25 -0
  273. package/switch/fesm2022/switch.mjs +27 -24
  274. package/switch/fesm2022/switch.mjs.map +1 -1
  275. package/switch/package.json +25 -0
  276. package/table/README.md +11 -0
  277. package/table/fesm2022/table.mjs +211 -0
  278. package/table/fesm2022/table.mjs.map +1 -0
  279. package/table/package.json +25 -0
  280. package/table/types/table.d.ts +87 -0
  281. package/tabs/README.md +64 -0
  282. package/tabs/fesm2022/tabs.mjs +286 -0
  283. package/tabs/fesm2022/tabs.mjs.map +1 -0
  284. package/tabs/package.json +25 -0
  285. package/tabs/types/tabs.d.ts +71 -0
  286. package/textarea/README.md +11 -0
  287. package/textarea/fesm2022/textarea.mjs +47 -0
  288. package/textarea/fesm2022/textarea.mjs.map +1 -0
  289. package/textarea/package.json +25 -0
  290. package/textarea/types/textarea.d.ts +18 -0
  291. package/toggle/README.md +11 -0
  292. package/toggle/fesm2022/toggle.mjs +78 -0
  293. package/toggle/fesm2022/toggle.mjs.map +1 -0
  294. package/toggle/package.json +25 -0
  295. package/toggle/types/toggle.d.ts +27 -0
  296. package/toggle-group/README.md +11 -0
  297. package/toggle-group/fesm2022/toggle-group.mjs +117 -0
  298. package/toggle-group/fesm2022/toggle-group.mjs.map +1 -0
  299. package/toggle-group/package.json +25 -0
  300. package/toggle-group/types/toggle-group.d.ts +39 -0
  301. package/tooltip/README.md +64 -0
  302. package/tooltip/fesm2022/tooltip.mjs +72 -0
  303. package/tooltip/fesm2022/tooltip.mjs.map +1 -0
  304. package/tooltip/package.json +25 -0
  305. package/tooltip/types/tooltip.d.ts +22 -0
  306. package/typography/README.md +11 -0
  307. package/typography/fesm2022/typography.mjs +242 -0
  308. package/typography/fesm2022/typography.mjs.map +1 -0
  309. package/typography/package.json +25 -0
  310. package/typography/types/typography.d.ts +94 -0
  311. package/utils/fesm2022/utils.mjs +184 -1
  312. package/utils/fesm2022/utils.mjs.map +1 -1
  313. package/utils/package.json +25 -0
  314. package/utils/types/utils.d.ts +13 -0
  315. package/calendar/index.d.ts +0 -111
  316. package/date-picker/index.d.ts +0 -227
  317. package/input/index.d.ts +0 -41
  318. package/popover/index.d.ts +0 -30
  319. package/select/index.d.ts +0 -92
  320. package/utils/index.d.ts +0 -5
  321. /package/alert/{index.d.ts → types/alert.d.ts} +0 -0
  322. /package/badge/{index.d.ts → types/badge.d.ts} +0 -0
  323. /package/basic-alert/{index.d.ts → types/basic-alert.d.ts} +0 -0
  324. /package/form-date-picker/{index.d.ts → types/form-date-picker.d.ts} +0 -0
  325. /package/form-field-simple/{index.d.ts → types/form-field-simple.d.ts} +0 -0
  326. /package/form-select/{index.d.ts → types/form-select.d.ts} +0 -0
  327. /package/form-text-input/{index.d.ts → types/form-text-input.d.ts} +0 -0
  328. /package/form-textarea/{index.d.ts → types/form-textarea.d.ts} +0 -0
  329. /package/icon/{index.d.ts → types/icon.d.ts} +0 -0
  330. /package/label/{index.d.ts → types/label.d.ts} +0 -0
  331. /package/sheet/{index.d.ts → types/sheet.d.ts} +0 -0
  332. /package/sonner/{index.d.ts → types/sonner.d.ts} +0 -0
  333. /package/spinner/{index.d.ts → types/spinner.d.ts} +0 -0
  334. /package/switch/{index.d.ts → types/switch.d.ts} +0 -0
@@ -0,0 +1,286 @@
1
+ import * as i0 from '@angular/core';
2
+ import { input, Directive, contentChildren, viewChild, computed, ChangeDetectionStrategy, Component, NgModule } from '@angular/core';
3
+ import * as i1 from '@spartan-ng/brain/tabs';
4
+ import { BrnTabs, BrnTabsContent, BrnTabsContentLazy, BrnTabsList, BrnTabsPaginatedList, BrnTabsTrigger } from '@spartan-ng/brain/tabs';
5
+ import { classes, hlm } from '@egose/shadcn-theme-ng/utils';
6
+ import { cva } from 'class-variance-authority';
7
+ import { CdkObserveContent } from '@angular/cdk/observers';
8
+ import { toObservable } from '@angular/core/rxjs-interop';
9
+ import { NgIcon, provideIcons } from '@ng-icons/core';
10
+ import { lucideChevronLeft, lucideChevronRight } from '@ng-icons/lucide';
11
+ import { buttonVariants } from '@egose/shadcn-theme-ng/button';
12
+
13
+ class HlmTabs {
14
+ tab = input.required(/* @ts-ignore */
15
+ ...(ngDevMode ? [{ debugName: "tab" }] : /* istanbul ignore next */ []));
16
+ constructor() {
17
+ classes(() => 'group/tabs flex gap-2 data-[orientation=horizontal]:flex-col');
18
+ }
19
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabs, deps: [], target: i0.ɵɵFactoryTarget.Directive });
20
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: HlmTabs, isStandalone: true, selector: "[hlmTabs],hlm-tabs", inputs: { tab: { classPropertyName: "tab", publicName: "tab", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "data-slot": "tabs" } }, hostDirectives: [{ directive: i1.BrnTabs, inputs: ["orientation", "orientation", "activationMode", "activationMode", "brnTabs", "tab"], outputs: ["tabActivated", "tabActivated"] }], ngImport: i0 });
21
+ }
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabs, decorators: [{
23
+ type: Directive,
24
+ args: [{
25
+ selector: '[hlmTabs],hlm-tabs',
26
+ hostDirectives: [
27
+ {
28
+ directive: BrnTabs,
29
+ inputs: ['orientation', 'activationMode', 'brnTabs: tab'],
30
+ outputs: ['tabActivated'],
31
+ },
32
+ ],
33
+ host: {
34
+ 'data-slot': 'tabs',
35
+ },
36
+ }]
37
+ }], ctorParameters: () => [], propDecorators: { tab: [{ type: i0.Input, args: [{ isSignal: true, alias: "tab", required: true }] }] } });
38
+
39
+ class HlmTabsContent {
40
+ contentFor = input.required({ ...(ngDevMode ? { debugName: "contentFor" } : /* istanbul ignore next */ {}), alias: 'hlmTabsContent' });
41
+ constructor() {
42
+ classes(() => 'flex-1 text-sm outline-none');
43
+ }
44
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsContent, deps: [], target: i0.ɵɵFactoryTarget.Directive });
45
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: HlmTabsContent, isStandalone: true, selector: "[hlmTabsContent]", inputs: { contentFor: { classPropertyName: "contentFor", publicName: "hlmTabsContent", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "data-slot": "tabs-content" } }, hostDirectives: [{ directive: i1.BrnTabsContent, inputs: ["brnTabsContent", "hlmTabsContent"] }], ngImport: i0 });
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsContent, decorators: [{
48
+ type: Directive,
49
+ args: [{
50
+ selector: '[hlmTabsContent]',
51
+ hostDirectives: [{ directive: BrnTabsContent, inputs: ['brnTabsContent: hlmTabsContent'] }],
52
+ host: {
53
+ 'data-slot': 'tabs-content',
54
+ },
55
+ }]
56
+ }], ctorParameters: () => [], propDecorators: { contentFor: [{ type: i0.Input, args: [{ isSignal: true, alias: "hlmTabsContent", required: true }] }] } });
57
+
58
+ class HlmTabsContentLazy {
59
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsContentLazy, deps: [], target: i0.ɵɵFactoryTarget.Directive });
60
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: HlmTabsContentLazy, isStandalone: true, selector: "ng-template[hlmTabsContentLazy]", hostDirectives: [{ directive: i1.BrnTabsContentLazy }], ngImport: i0 });
61
+ }
62
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsContentLazy, decorators: [{
63
+ type: Directive,
64
+ args: [{
65
+ selector: 'ng-template[hlmTabsContentLazy]',
66
+ hostDirectives: [BrnTabsContentLazy],
67
+ }]
68
+ }] });
69
+
70
+ const listVariants = cva('rounded-lg p-[3px] group-data-horizontal/tabs:h-9 data-[variant=line]:rounded-none group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col', {
71
+ variants: {
72
+ variant: {
73
+ default: 'bg-muted',
74
+ line: 'gap-1 bg-transparent',
75
+ },
76
+ },
77
+ defaultVariants: {
78
+ variant: 'default',
79
+ },
80
+ });
81
+ class HlmTabsList {
82
+ variant = input('default', /* @ts-ignore */
83
+ ...(ngDevMode ? [{ debugName: "variant" }] : /* istanbul ignore next */ []));
84
+ constructor() {
85
+ classes(() => listVariants({ variant: this.variant() }));
86
+ }
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsList, deps: [], target: i0.ɵɵFactoryTarget.Directive });
88
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: HlmTabsList, isStandalone: true, selector: "[hlmTabsList],hlm-tabs-list", inputs: { variant: { classPropertyName: "variant", publicName: "variant", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "tabs-list" }, properties: { "attr.data-variant": "variant()" } }, hostDirectives: [{ directive: i1.BrnTabsList }], ngImport: i0 });
89
+ }
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsList, decorators: [{
91
+ type: Directive,
92
+ args: [{
93
+ selector: '[hlmTabsList],hlm-tabs-list',
94
+ hostDirectives: [BrnTabsList],
95
+ host: {
96
+ 'data-slot': 'tabs-list',
97
+ '[attr.data-variant]': 'variant()',
98
+ },
99
+ }]
100
+ }], ctorParameters: () => [], propDecorators: { variant: [{ type: i0.Input, args: [{ isSignal: true, alias: "variant", required: false }] }] } });
101
+
102
+ class HlmTabsPaginatedList extends BrnTabsPaginatedList {
103
+ constructor() {
104
+ super();
105
+ classes(() => 'relative flex flex-shrink-0 items-center gap-1 overflow-hidden');
106
+ }
107
+ items = contentChildren(BrnTabsTrigger, { ...(ngDevMode ? { debugName: "items" } : /* istanbul ignore next */ {}), descendants: false });
108
+ /** Explicitly annotating type to avoid non-portable inferred type */
109
+ itemsChanges = toObservable(this.items);
110
+ tabListContainer = viewChild.required('tabListContainer', /* @ts-ignore */
111
+ ...(ngDevMode ? [{ debugName: "tabListContainer" }] : /* istanbul ignore next */ []));
112
+ tabList = viewChild.required('tabList', /* @ts-ignore */
113
+ ...(ngDevMode ? [{ debugName: "tabList" }] : /* istanbul ignore next */ []));
114
+ tabListInner = viewChild.required('tabListInner', /* @ts-ignore */
115
+ ...(ngDevMode ? [{ debugName: "tabListInner" }] : /* istanbul ignore next */ []));
116
+ nextPaginator = viewChild.required('nextPaginator', /* @ts-ignore */
117
+ ...(ngDevMode ? [{ debugName: "nextPaginator" }] : /* istanbul ignore next */ []));
118
+ previousPaginator = viewChild.required('previousPaginator', /* @ts-ignore */
119
+ ...(ngDevMode ? [{ debugName: "previousPaginator" }] : /* istanbul ignore next */ []));
120
+ tabListClass = input('', { ...(ngDevMode ? { debugName: "tabListClass" } : /* istanbul ignore next */ {}), alias: 'tabListClass' });
121
+ _tabListClass = computed(() => hlm(listVariants(), this.tabListClass()), /* @ts-ignore */
122
+ ...(ngDevMode ? [{ debugName: "_tabListClass" }] : /* istanbul ignore next */ []));
123
+ paginationButtonClass = input('', /* @ts-ignore */
124
+ ...(ngDevMode ? [{ debugName: "paginationButtonClass" }] : /* istanbul ignore next */ []));
125
+ _paginationButtonClass = computed(() => hlm('relative z-[2] select-none disabled:cursor-default', buttonVariants({ variant: 'ghost', size: 'icon-sm' }), this.paginationButtonClass(), this.showPaginationControls() ? 'inline-flex' : 'hidden'), /* @ts-ignore */
126
+ ...(ngDevMode ? [{ debugName: "_paginationButtonClass" }] : /* istanbul ignore next */ []));
127
+ _itemSelected(event) {
128
+ event.preventDefault();
129
+ }
130
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsPaginatedList, deps: [], target: i0.ɵɵFactoryTarget.Component });
131
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "22.0.7", type: HlmTabsPaginatedList, isStandalone: true, selector: "hlm-paginated-tabs-list", inputs: { tabListClass: { classPropertyName: "tabListClass", publicName: "tabListClass", isSignal: true, isRequired: false, transformFunction: null }, paginationButtonClass: { classPropertyName: "paginationButtonClass", publicName: "paginationButtonClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "data-slot": "tabs-paginated-list" } }, providers: [provideIcons({ lucideChevronRight, lucideChevronLeft })], queries: [{ propertyName: "items", predicate: BrnTabsTrigger, isSignal: true }], viewQueries: [{ propertyName: "tabListContainer", first: true, predicate: ["tabListContainer"], descendants: true, isSignal: true }, { propertyName: "tabList", first: true, predicate: ["tabList"], descendants: true, isSignal: true }, { propertyName: "tabListInner", first: true, predicate: ["tabListInner"], descendants: true, isSignal: true }, { propertyName: "nextPaginator", first: true, predicate: ["nextPaginator"], descendants: true, isSignal: true }, { propertyName: "previousPaginator", first: true, predicate: ["previousPaginator"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: `
132
+ <button
133
+ #previousPaginator
134
+ data-pagination="previous"
135
+ type="button"
136
+ aria-hidden="true"
137
+ tabindex="-1"
138
+ [class]="_paginationButtonClass()"
139
+ [disabled]="disableScrollBefore || null"
140
+ (click)="_handlePaginatorClick('before')"
141
+ (mousedown)="_handlePaginatorPress('before', $event)"
142
+ (touchend)="_stopInterval()"
143
+ >
144
+ <ng-icon name="lucideChevronLeft" />
145
+ </button>
146
+
147
+ <div #tabListContainer class="z-[1] flex grow overflow-hidden" (keydown)="_handleKeydown($event)">
148
+ <div class="relative grow transition-transform" #tabList role="tablist" (cdkObserveContent)="_onContentChanges()">
149
+ <div #tabListInner [class]="_tabListClass()">
150
+ <ng-content />
151
+ </div>
152
+ </div>
153
+ </div>
154
+
155
+ <button
156
+ #nextPaginator
157
+ data-pagination="next"
158
+ type="button"
159
+ aria-hidden="true"
160
+ tabindex="-1"
161
+ [class]="_paginationButtonClass()"
162
+ [disabled]="disableScrollAfter || null"
163
+ (click)="_handlePaginatorClick('after')"
164
+ (mousedown)="_handlePaginatorPress('after', $event)"
165
+ (touchend)="_stopInterval()"
166
+ >
167
+ <ng-icon name="lucideChevronRight" />
168
+ </button>
169
+ `, isInline: true, dependencies: [{ kind: "directive", type: CdkObserveContent, selector: "[cdkObserveContent]", inputs: ["cdkObserveContentDisabled", "debounce"], outputs: ["cdkObserveContent"], exportAs: ["cdkObserveContent"] }, { kind: "component", type: NgIcon, selector: "ng-icon", inputs: ["name", "svg", "size", "strokeWidth", "color"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
170
+ }
171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsPaginatedList, decorators: [{
172
+ type: Component,
173
+ args: [{
174
+ selector: 'hlm-paginated-tabs-list',
175
+ imports: [CdkObserveContent, NgIcon],
176
+ providers: [provideIcons({ lucideChevronRight, lucideChevronLeft })],
177
+ changeDetection: ChangeDetectionStrategy.OnPush,
178
+ host: {
179
+ 'data-slot': 'tabs-paginated-list',
180
+ },
181
+ template: `
182
+ <button
183
+ #previousPaginator
184
+ data-pagination="previous"
185
+ type="button"
186
+ aria-hidden="true"
187
+ tabindex="-1"
188
+ [class]="_paginationButtonClass()"
189
+ [disabled]="disableScrollBefore || null"
190
+ (click)="_handlePaginatorClick('before')"
191
+ (mousedown)="_handlePaginatorPress('before', $event)"
192
+ (touchend)="_stopInterval()"
193
+ >
194
+ <ng-icon name="lucideChevronLeft" />
195
+ </button>
196
+
197
+ <div #tabListContainer class="z-[1] flex grow overflow-hidden" (keydown)="_handleKeydown($event)">
198
+ <div class="relative grow transition-transform" #tabList role="tablist" (cdkObserveContent)="_onContentChanges()">
199
+ <div #tabListInner [class]="_tabListClass()">
200
+ <ng-content />
201
+ </div>
202
+ </div>
203
+ </div>
204
+
205
+ <button
206
+ #nextPaginator
207
+ data-pagination="next"
208
+ type="button"
209
+ aria-hidden="true"
210
+ tabindex="-1"
211
+ [class]="_paginationButtonClass()"
212
+ [disabled]="disableScrollAfter || null"
213
+ (click)="_handlePaginatorClick('after')"
214
+ (mousedown)="_handlePaginatorPress('after', $event)"
215
+ (touchend)="_stopInterval()"
216
+ >
217
+ <ng-icon name="lucideChevronRight" />
218
+ </button>
219
+ `,
220
+ }]
221
+ }], ctorParameters: () => [], propDecorators: { items: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => BrnTabsTrigger), { ...{ descendants: false }, isSignal: true }] }], tabListContainer: [{ type: i0.ViewChild, args: ['tabListContainer', { isSignal: true }] }], tabList: [{ type: i0.ViewChild, args: ['tabList', { isSignal: true }] }], tabListInner: [{ type: i0.ViewChild, args: ['tabListInner', { isSignal: true }] }], nextPaginator: [{ type: i0.ViewChild, args: ['nextPaginator', { isSignal: true }] }], previousPaginator: [{ type: i0.ViewChild, args: ['previousPaginator', { isSignal: true }] }], tabListClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "tabListClass", required: false }] }], paginationButtonClass: [{ type: i0.Input, args: [{ isSignal: true, alias: "paginationButtonClass", required: false }] }] } });
222
+
223
+ class HlmTabsTrigger {
224
+ triggerFor = input.required({ ...(ngDevMode ? { debugName: "triggerFor" } : /* istanbul ignore next */ {}), alias: 'hlmTabsTrigger' });
225
+ constructor() {
226
+ classes(() => [
227
+ `gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_ng-icon:not([class*='text-'])]:text-[length:--spacing(4)] focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0`,
228
+ 'group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent',
229
+ 'data-active:bg-background dark:data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 data-active:text-foreground',
230
+ 'after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100',
231
+ ]);
232
+ }
233
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsTrigger, deps: [], target: i0.ɵɵFactoryTarget.Directive });
234
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: HlmTabsTrigger, isStandalone: true, selector: "[hlmTabsTrigger]", inputs: { triggerFor: { classPropertyName: "triggerFor", publicName: "hlmTabsTrigger", isSignal: true, isRequired: true, transformFunction: null } }, host: { attributes: { "data-slot": "tabs-trigger" } }, hostDirectives: [{ directive: i1.BrnTabsTrigger, inputs: ["brnTabsTrigger", "hlmTabsTrigger", "disabled", "disabled"] }], ngImport: i0 });
235
+ }
236
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsTrigger, decorators: [{
237
+ type: Directive,
238
+ args: [{
239
+ selector: '[hlmTabsTrigger]',
240
+ hostDirectives: [{ directive: BrnTabsTrigger, inputs: ['brnTabsTrigger: hlmTabsTrigger', 'disabled'] }],
241
+ host: {
242
+ 'data-slot': 'tabs-trigger',
243
+ },
244
+ }]
245
+ }], ctorParameters: () => [], propDecorators: { triggerFor: [{ type: i0.Input, args: [{ isSignal: true, alias: "hlmTabsTrigger", required: true }] }] } });
246
+
247
+ /*
248
+ * Public API Surface of tabs
249
+ */
250
+ const HlmTabsImports = [
251
+ HlmTabs,
252
+ HlmTabsList,
253
+ HlmTabsTrigger,
254
+ HlmTabsContent,
255
+ HlmTabsContentLazy,
256
+ HlmTabsPaginatedList,
257
+ ];
258
+ class HlmTabsModule {
259
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
260
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsModule, imports: [HlmTabs,
261
+ HlmTabsList,
262
+ HlmTabsTrigger,
263
+ HlmTabsContent,
264
+ HlmTabsContentLazy,
265
+ HlmTabsPaginatedList], exports: [HlmTabs,
266
+ HlmTabsList,
267
+ HlmTabsTrigger,
268
+ HlmTabsContent,
269
+ HlmTabsContentLazy,
270
+ HlmTabsPaginatedList] });
271
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsModule, imports: [HlmTabsPaginatedList] });
272
+ }
273
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTabsModule, decorators: [{
274
+ type: NgModule,
275
+ args: [{
276
+ imports: [...HlmTabsImports],
277
+ exports: [...HlmTabsImports],
278
+ }]
279
+ }] });
280
+
281
+ /**
282
+ * Generated bundle index. Do not edit.
283
+ */
284
+
285
+ export { HlmTabs, HlmTabsContent, HlmTabsContentLazy, HlmTabsImports, HlmTabsList, HlmTabsModule, HlmTabsPaginatedList, HlmTabsTrigger, listVariants };
286
+ //# sourceMappingURL=tabs.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.mjs","sources":["../../../projects/tabs/src/lib/hlm-tabs.ts","../../../projects/tabs/src/lib/hlm-tabs-content.ts","../../../projects/tabs/src/lib/hlm-tabs-content-lazy.ts","../../../projects/tabs/src/lib/hlm-tabs-list.ts","../../../projects/tabs/src/lib/hlm-tabs-paginated-list.ts","../../../projects/tabs/src/lib/hlm-tabs-trigger.ts","../../../projects/tabs/src/public-api.ts","../../../projects/tabs/src/tabs.ts"],"sourcesContent":["import { Directive, input } from '@angular/core';\nimport { BrnTabs } from '@spartan-ng/brain/tabs';\nimport { classes } from '@egose/shadcn-theme-ng/utils';\n\n@Directive({\n selector: '[hlmTabs],hlm-tabs',\n hostDirectives: [\n {\n directive: BrnTabs,\n inputs: ['orientation', 'activationMode', 'brnTabs: tab'],\n outputs: ['tabActivated'],\n },\n ],\n host: {\n 'data-slot': 'tabs',\n },\n})\nexport class HlmTabs {\n public readonly tab = input.required<string>();\n\n constructor() {\n classes(() => 'group/tabs flex gap-2 data-[orientation=horizontal]:flex-col');\n }\n}\n","import { Directive, input } from '@angular/core';\nimport { BrnTabsContent } from '@spartan-ng/brain/tabs';\nimport { classes } from '@egose/shadcn-theme-ng/utils';\n\n@Directive({\n selector: '[hlmTabsContent]',\n hostDirectives: [{ directive: BrnTabsContent, inputs: ['brnTabsContent: hlmTabsContent'] }],\n host: {\n 'data-slot': 'tabs-content',\n },\n})\nexport class HlmTabsContent {\n public readonly contentFor = input.required<string>({ alias: 'hlmTabsContent' });\n\n constructor() {\n classes(() => 'flex-1 text-sm outline-none');\n }\n}\n","import { Directive } from '@angular/core';\nimport { BrnTabsContentLazy } from '@spartan-ng/brain/tabs';\n\n@Directive({\n selector: 'ng-template[hlmTabsContentLazy]',\n hostDirectives: [BrnTabsContentLazy],\n})\nexport class HlmTabsContentLazy {}\n","import { Directive, input } from '@angular/core';\nimport { BrnTabsList } from '@spartan-ng/brain/tabs';\nimport { classes } from '@egose/shadcn-theme-ng/utils';\nimport { type VariantProps, cva } from 'class-variance-authority';\n\nexport const listVariants = cva(\n 'rounded-lg p-[3px] group-data-horizontal/tabs:h-9 data-[variant=line]:rounded-none group/tabs-list text-muted-foreground inline-flex w-fit items-center justify-center group-data-[orientation=vertical]/tabs:h-fit group-data-[orientation=vertical]/tabs:flex-col',\n {\n variants: {\n variant: {\n default: 'bg-muted',\n line: 'gap-1 bg-transparent',\n },\n },\n defaultVariants: {\n variant: 'default',\n },\n },\n);\ntype ListVariants = VariantProps<typeof listVariants>;\n\n@Directive({\n selector: '[hlmTabsList],hlm-tabs-list',\n hostDirectives: [BrnTabsList],\n host: {\n 'data-slot': 'tabs-list',\n '[attr.data-variant]': 'variant()',\n },\n})\nexport class HlmTabsList {\n public readonly variant = input<ListVariants['variant']>('default');\n\n constructor() {\n classes(() => listVariants({ variant: this.variant() }));\n }\n}\n","import { CdkObserveContent } from '@angular/cdk/observers';\nimport {\n ChangeDetectionStrategy,\n Component,\n computed,\n contentChildren,\n type ElementRef,\n input,\n viewChild,\n} from '@angular/core';\nimport { toObservable } from '@angular/core/rxjs-interop';\nimport { NgIcon, provideIcons } from '@ng-icons/core';\nimport { lucideChevronLeft, lucideChevronRight } from '@ng-icons/lucide';\nimport { type BrnPaginatedTabHeaderItem, BrnTabsPaginatedList, BrnTabsTrigger } from '@spartan-ng/brain/tabs';\nimport { buttonVariants } from '@egose/shadcn-theme-ng/button';\nimport { classes, hlm } from '@egose/shadcn-theme-ng/utils';\nimport type { ClassValue } from 'clsx';\nimport type { Observable } from 'rxjs';\nimport { listVariants } from './hlm-tabs-list';\n\n@Component({\n selector: 'hlm-paginated-tabs-list',\n imports: [CdkObserveContent, NgIcon],\n providers: [provideIcons({ lucideChevronRight, lucideChevronLeft })],\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n 'data-slot': 'tabs-paginated-list',\n },\n template: `\n <button\n #previousPaginator\n data-pagination=\"previous\"\n type=\"button\"\n aria-hidden=\"true\"\n tabindex=\"-1\"\n [class]=\"_paginationButtonClass()\"\n [disabled]=\"disableScrollBefore || null\"\n (click)=\"_handlePaginatorClick('before')\"\n (mousedown)=\"_handlePaginatorPress('before', $event)\"\n (touchend)=\"_stopInterval()\"\n >\n <ng-icon name=\"lucideChevronLeft\" />\n </button>\n\n <div #tabListContainer class=\"z-[1] flex grow overflow-hidden\" (keydown)=\"_handleKeydown($event)\">\n <div class=\"relative grow transition-transform\" #tabList role=\"tablist\" (cdkObserveContent)=\"_onContentChanges()\">\n <div #tabListInner [class]=\"_tabListClass()\">\n <ng-content />\n </div>\n </div>\n </div>\n\n <button\n #nextPaginator\n data-pagination=\"next\"\n type=\"button\"\n aria-hidden=\"true\"\n tabindex=\"-1\"\n [class]=\"_paginationButtonClass()\"\n [disabled]=\"disableScrollAfter || null\"\n (click)=\"_handlePaginatorClick('after')\"\n (mousedown)=\"_handlePaginatorPress('after', $event)\"\n (touchend)=\"_stopInterval()\"\n >\n <ng-icon name=\"lucideChevronRight\" />\n </button>\n `,\n})\nexport class HlmTabsPaginatedList extends BrnTabsPaginatedList {\n constructor() {\n super();\n classes(() => 'relative flex flex-shrink-0 items-center gap-1 overflow-hidden');\n }\n\n public readonly items = contentChildren(BrnTabsTrigger, { descendants: false });\n /** Explicitly annotating type to avoid non-portable inferred type */\n public readonly itemsChanges: Observable<ReadonlyArray<BrnPaginatedTabHeaderItem>> = toObservable(this.items);\n\n public readonly tabListContainer = viewChild.required<ElementRef<HTMLElement>>('tabListContainer');\n public readonly tabList = viewChild.required<ElementRef<HTMLElement>>('tabList');\n public readonly tabListInner = viewChild.required<ElementRef<HTMLElement>>('tabListInner');\n public readonly nextPaginator = viewChild.required<ElementRef<HTMLElement>>('nextPaginator');\n public readonly previousPaginator = viewChild.required<ElementRef<HTMLElement>>('previousPaginator');\n\n public readonly tabListClass = input<ClassValue>('', { alias: 'tabListClass' });\n protected readonly _tabListClass = computed(() => hlm(listVariants(), this.tabListClass()));\n\n public readonly paginationButtonClass = input<ClassValue>('');\n protected readonly _paginationButtonClass = computed(() =>\n hlm(\n 'relative z-[2] select-none disabled:cursor-default',\n buttonVariants({ variant: 'ghost', size: 'icon-sm' }),\n this.paginationButtonClass(),\n this.showPaginationControls() ? 'inline-flex' : 'hidden',\n ),\n );\n\n protected _itemSelected(event: KeyboardEvent) {\n event.preventDefault();\n }\n}\n","import { Directive, input } from '@angular/core';\nimport { BrnTabsTrigger } from '@spartan-ng/brain/tabs';\nimport { classes } from '@egose/shadcn-theme-ng/utils';\n\n@Directive({\n selector: '[hlmTabsTrigger]',\n hostDirectives: [{ directive: BrnTabsTrigger, inputs: ['brnTabsTrigger: hlmTabsTrigger', 'disabled'] }],\n host: {\n 'data-slot': 'tabs-trigger',\n },\n})\nexport class HlmTabsTrigger {\n public readonly triggerFor = input.required<string>({ alias: 'hlmTabsTrigger' });\n constructor() {\n classes(() => [\n `gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium group-data-[variant=default]/tabs-list:data-active:shadow-sm group-data-[variant=line]/tabs-list:data-active:shadow-none [&_ng-icon:not([class*='text-'])]:text-[length:--spacing(4)] focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:outline-ring text-foreground/60 hover:text-foreground dark:text-muted-foreground dark:hover:text-foreground relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center whitespace-nowrap transition-all group-data-[orientation=vertical]/tabs:w-full group-data-[orientation=vertical]/tabs:justify-start focus-visible:ring-[3px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 [&_ng-icon]:pointer-events-none [&_ng-icon]:shrink-0`,\n 'group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent',\n 'data-active:bg-background dark:data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 data-active:text-foreground',\n 'after:bg-foreground after:absolute after:opacity-0 after:transition-opacity group-data-[orientation=horizontal]/tabs:after:inset-x-0 group-data-[orientation=horizontal]/tabs:after:bottom-[-5px] group-data-[orientation=horizontal]/tabs:after:h-0.5 group-data-[orientation=vertical]/tabs:after:inset-y-0 group-data-[orientation=vertical]/tabs:after:-right-1 group-data-[orientation=vertical]/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100',\n ]);\n }\n}\n","/*\n * Public API Surface of tabs\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { HlmTabs } from './lib/hlm-tabs';\nimport { HlmTabsContent } from './lib/hlm-tabs-content';\nimport { HlmTabsContentLazy } from './lib/hlm-tabs-content-lazy';\nimport { HlmTabsList } from './lib/hlm-tabs-list';\nimport { HlmTabsPaginatedList } from './lib/hlm-tabs-paginated-list';\nimport { HlmTabsTrigger } from './lib/hlm-tabs-trigger';\n\nexport * from './lib/hlm-tabs';\nexport * from './lib/hlm-tabs-content';\nexport * from './lib/hlm-tabs-content-lazy';\nexport * from './lib/hlm-tabs-list';\nexport * from './lib/hlm-tabs-paginated-list';\nexport * from './lib/hlm-tabs-trigger';\n\nexport const HlmTabsImports = [\n HlmTabs,\n HlmTabsList,\n HlmTabsTrigger,\n HlmTabsContent,\n HlmTabsContentLazy,\n HlmTabsPaginatedList,\n] as const;\n\n@NgModule({\n imports: [...HlmTabsImports],\n exports: [...HlmTabsImports],\n})\nexport class HlmTabsModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "tabs",
3
+ "version": "0.0.1",
4
+ "peerDependencies": {
5
+ "@angular/common": "^20.2.0 || ^22.0.0",
6
+ "@angular/core": "^20.2.0 || ^22.0.0",
7
+ "@spartan-ng/brain": "^0.0.1-alpha.512"
8
+ },
9
+ "dependencies": {
10
+ "tslib": "^2.3.0"
11
+ },
12
+ "sideEffects": false,
13
+ "module": "fesm2022/tabs.mjs",
14
+ "typings": "types/tabs.d.ts",
15
+ "exports": {
16
+ "./package.json": {
17
+ "default": "./package.json"
18
+ },
19
+ ".": {
20
+ "types": "./types/tabs.d.ts",
21
+ "default": "./fesm2022/tabs.mjs"
22
+ }
23
+ },
24
+ "type": "module"
25
+ }
@@ -0,0 +1,71 @@
1
+ import * as i0 from '@angular/core';
2
+ import { ElementRef } from '@angular/core';
3
+ import * as i1 from '@spartan-ng/brain/tabs';
4
+ import { BrnTabsPaginatedList, BrnTabsTrigger, BrnPaginatedTabHeaderItem } from '@spartan-ng/brain/tabs';
5
+ import * as class_variance_authority_types from 'class-variance-authority/types';
6
+ import { ClassValue } from 'clsx';
7
+ import { Observable } from 'rxjs';
8
+
9
+ declare class HlmTabs {
10
+ readonly tab: i0.InputSignal<string>;
11
+ constructor();
12
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabs, never>;
13
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTabs, "[hlmTabs],hlm-tabs", never, { "tab": { "alias": "tab"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.BrnTabs; inputs: { "orientation": "orientation"; "activationMode": "activationMode"; "brnTabs": "tab"; }; outputs: { "tabActivated": "tabActivated"; }; }]>;
14
+ }
15
+
16
+ declare class HlmTabsContent {
17
+ readonly contentFor: i0.InputSignal<string>;
18
+ constructor();
19
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsContent, never>;
20
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTabsContent, "[hlmTabsContent]", never, { "contentFor": { "alias": "hlmTabsContent"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.BrnTabsContent; inputs: { "brnTabsContent": "hlmTabsContent"; }; outputs: {}; }]>;
21
+ }
22
+
23
+ declare class HlmTabsContentLazy {
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsContentLazy, never>;
25
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTabsContentLazy, "ng-template[hlmTabsContentLazy]", never, {}, {}, never, never, true, [{ directive: typeof i1.BrnTabsContentLazy; inputs: {}; outputs: {}; }]>;
26
+ }
27
+
28
+ declare const listVariants: (props?: ({
29
+ variant?: "default" | "line" | null | undefined;
30
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
31
+ declare class HlmTabsList {
32
+ readonly variant: i0.InputSignal<"default" | "line" | null | undefined>;
33
+ constructor();
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsList, never>;
35
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTabsList, "[hlmTabsList],hlm-tabs-list", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.BrnTabsList; inputs: {}; outputs: {}; }]>;
36
+ }
37
+
38
+ declare class HlmTabsPaginatedList extends BrnTabsPaginatedList {
39
+ constructor();
40
+ readonly items: i0.Signal<readonly BrnTabsTrigger[]>;
41
+ /** Explicitly annotating type to avoid non-portable inferred type */
42
+ readonly itemsChanges: Observable<ReadonlyArray<BrnPaginatedTabHeaderItem>>;
43
+ readonly tabListContainer: i0.Signal<ElementRef<HTMLElement>>;
44
+ readonly tabList: i0.Signal<ElementRef<HTMLElement>>;
45
+ readonly tabListInner: i0.Signal<ElementRef<HTMLElement>>;
46
+ readonly nextPaginator: i0.Signal<ElementRef<HTMLElement>>;
47
+ readonly previousPaginator: i0.Signal<ElementRef<HTMLElement>>;
48
+ readonly tabListClass: i0.InputSignal<ClassValue>;
49
+ protected readonly _tabListClass: i0.Signal<string>;
50
+ readonly paginationButtonClass: i0.InputSignal<ClassValue>;
51
+ protected readonly _paginationButtonClass: i0.Signal<string>;
52
+ protected _itemSelected(event: KeyboardEvent): void;
53
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsPaginatedList, never>;
54
+ static ɵcmp: i0.ɵɵComponentDeclaration<HlmTabsPaginatedList, "hlm-paginated-tabs-list", never, { "tabListClass": { "alias": "tabListClass"; "required": false; "isSignal": true; }; "paginationButtonClass": { "alias": "paginationButtonClass"; "required": false; "isSignal": true; }; }, {}, ["items"], ["*"], true, never>;
55
+ }
56
+
57
+ declare class HlmTabsTrigger {
58
+ readonly triggerFor: i0.InputSignal<string>;
59
+ constructor();
60
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsTrigger, never>;
61
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTabsTrigger, "[hlmTabsTrigger]", never, { "triggerFor": { "alias": "hlmTabsTrigger"; "required": true; "isSignal": true; }; }, {}, never, never, true, [{ directive: typeof i1.BrnTabsTrigger; inputs: { "brnTabsTrigger": "hlmTabsTrigger"; "disabled": "disabled"; }; outputs: {}; }]>;
62
+ }
63
+
64
+ declare const HlmTabsImports: readonly [typeof HlmTabs, typeof HlmTabsList, typeof HlmTabsTrigger, typeof HlmTabsContent, typeof HlmTabsContentLazy, typeof HlmTabsPaginatedList];
65
+ declare class HlmTabsModule {
66
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTabsModule, never>;
67
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HlmTabsModule, never, [typeof HlmTabs, typeof HlmTabsList, typeof HlmTabsTrigger, typeof HlmTabsContent, typeof HlmTabsContentLazy, typeof HlmTabsPaginatedList], [typeof HlmTabs, typeof HlmTabsList, typeof HlmTabsTrigger, typeof HlmTabsContent, typeof HlmTabsContentLazy, typeof HlmTabsPaginatedList]>;
68
+ static ɵinj: i0.ɵɵInjectorDeclaration<HlmTabsModule>;
69
+ }
70
+
71
+ export { HlmTabs, HlmTabsContent, HlmTabsContentLazy, HlmTabsImports, HlmTabsList, HlmTabsModule, HlmTabsPaginatedList, HlmTabsTrigger, listVariants };
@@ -0,0 +1,11 @@
1
+ # Textarea
2
+
3
+ This project was generated using [Angular CLI](https://github.com/angular/angular-cli).
4
+
5
+ ## Building
6
+
7
+ To build the library, run:
8
+
9
+ ```bash
10
+ ng build textarea
11
+ ```
@@ -0,0 +1,47 @@
1
+ import * as i0 from '@angular/core';
2
+ import { Directive, NgModule } from '@angular/core';
3
+ import * as i2 from '@spartan-ng/brain/field';
4
+ import { BrnFieldControlDescribedBy } from '@spartan-ng/brain/field';
5
+ import * as i1 from '@spartan-ng/brain/textarea';
6
+ import { BrnTextarea } from '@spartan-ng/brain/textarea';
7
+ import { classes } from '@egose/shadcn-theme-ng/utils';
8
+
9
+ class HlmTextarea {
10
+ constructor() {
11
+ classes(() => 'border-input dark:bg-input/30 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 rounded-md border bg-transparent px-2.5 py-2 text-base shadow-xs transition-[color,box-shadow] focus-visible:ring-3 data-[matches-spartan-invalid=true]:ring-3 md:text-sm placeholder:text-muted-foreground flex field-sizing-content min-h-16 w-full outline-none disabled:cursor-not-allowed disabled:opacity-50');
12
+ }
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTextarea, deps: [], target: i0.ɵɵFactoryTarget.Directive });
14
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: HlmTextarea, isStandalone: true, selector: "[hlmTextarea]", host: { attributes: { "data-slot": "textarea" } }, hostDirectives: [{ directive: i1.BrnTextarea, inputs: ["id", "id", "forceInvalid", "forceInvalid"] }, { directive: i2.BrnFieldControlDescribedBy }], ngImport: i0 });
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTextarea, decorators: [{
17
+ type: Directive,
18
+ args: [{
19
+ selector: '[hlmTextarea]',
20
+ hostDirectives: [{ directive: BrnTextarea, inputs: ['id', 'forceInvalid'] }, BrnFieldControlDescribedBy],
21
+ host: { 'data-slot': 'textarea' },
22
+ }]
23
+ }], ctorParameters: () => [] });
24
+
25
+ /*
26
+ * Public API Surface of textarea
27
+ */
28
+ const HlmTextareaImports = [HlmTextarea];
29
+ class HlmTextareaModule {
30
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTextareaModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
31
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "22.0.7", ngImport: i0, type: HlmTextareaModule, imports: [HlmTextarea], exports: [HlmTextarea] });
32
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTextareaModule });
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: HlmTextareaModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ imports: [...HlmTextareaImports],
38
+ exports: [...HlmTextareaImports],
39
+ }]
40
+ }] });
41
+
42
+ /**
43
+ * Generated bundle index. Do not edit.
44
+ */
45
+
46
+ export { HlmTextarea, HlmTextareaImports, HlmTextareaModule };
47
+ //# sourceMappingURL=textarea.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"textarea.mjs","sources":["../../../projects/textarea/src/lib/hlm-textarea.ts","../../../projects/textarea/src/public-api.ts","../../../projects/textarea/src/textarea.ts"],"sourcesContent":["import { Directive } from '@angular/core';\nimport { BrnFieldControlDescribedBy } from '@spartan-ng/brain/field';\nimport { BrnTextarea } from '@spartan-ng/brain/textarea';\nimport { classes } from '@egose/shadcn-theme-ng/utils';\n\n@Directive({\n selector: '[hlmTextarea]',\n hostDirectives: [{ directive: BrnTextarea, inputs: ['id', 'forceInvalid'] }, BrnFieldControlDescribedBy],\n host: { 'data-slot': 'textarea' },\n})\nexport class HlmTextarea {\n constructor() {\n classes(\n () =>\n 'border-input dark:bg-input/30 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 rounded-md border bg-transparent px-2.5 py-2 text-base shadow-xs transition-[color,box-shadow] focus-visible:ring-3 data-[matches-spartan-invalid=true]:ring-3 md:text-sm placeholder:text-muted-foreground flex field-sizing-content min-h-16 w-full outline-none disabled:cursor-not-allowed disabled:opacity-50',\n );\n }\n}\n","/*\n * Public API Surface of textarea\n */\n\nimport { NgModule } from '@angular/core';\n\nimport { HlmTextarea } from './lib/hlm-textarea';\n\nexport * from './lib/hlm-textarea';\n\nexport const HlmTextareaImports = [HlmTextarea] as const;\n\n@NgModule({\n imports: [...HlmTextareaImports],\n exports: [...HlmTextareaImports],\n})\nexport class HlmTextareaModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAUa,WAAW,CAAA;AACtB,IAAA,WAAA,GAAA;AACE,QAAA,OAAO,CACL,MACE,knBAAknB,CACrnB;IACH;uGANW,WAAW,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAX,WAAW,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,eAAA,EAAA,IAAA,EAAA,EAAA,UAAA,EAAA,EAAA,WAAA,EAAA,UAAA,EAAA,EAAA,EAAA,cAAA,EAAA,CAAA,EAAA,SAAA,EAAA,EAAA,CAAA,WAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,IAAA,EAAA,cAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,SAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAX,WAAW,EAAA,UAAA,EAAA,CAAA;kBALvB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,eAAe;AACzB,oBAAA,cAAc,EAAE,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,cAAc,CAAC,EAAE,EAAE,0BAA0B,CAAC;AACxG,oBAAA,IAAI,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE;AAClC,iBAAA;;;ACTD;;AAEG;AAQI,MAAM,kBAAkB,GAAG,CAAC,WAAW;MAMjC,iBAAiB,CAAA;uGAAjB,iBAAiB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAjB,iBAAiB,EAAA,OAAA,EAAA,CANK,WAAW,CAAA,EAAA,OAAA,EAAA,CAAX,WAAW,CAAA,EAAA,CAAA;wGAMjC,iBAAiB,EAAA,CAAA;;2FAAjB,iBAAiB,EAAA,UAAA,EAAA,CAAA;kBAJ7B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,OAAO,EAAE,CAAC,GAAG,kBAAkB,CAAC;AAChC,oBAAA,OAAO,EAAE,CAAC,GAAG,kBAAkB,CAAC;AACjC,iBAAA;;;ACfD;;AAEG;;;;"}
@@ -0,0 +1,25 @@
1
+ {
2
+ "name": "textarea",
3
+ "version": "0.0.1",
4
+ "peerDependencies": {
5
+ "@angular/common": "^22.0.0",
6
+ "@angular/core": "^22.0.0",
7
+ "@spartan-ng/brain": "^1.1.1"
8
+ },
9
+ "dependencies": {
10
+ "tslib": "^2.3.0"
11
+ },
12
+ "sideEffects": false,
13
+ "module": "fesm2022/textarea.mjs",
14
+ "typings": "types/textarea.d.ts",
15
+ "exports": {
16
+ "./package.json": {
17
+ "default": "./package.json"
18
+ },
19
+ ".": {
20
+ "types": "./types/textarea.d.ts",
21
+ "default": "./fesm2022/textarea.mjs"
22
+ }
23
+ },
24
+ "type": "module"
25
+ }
@@ -0,0 +1,18 @@
1
+ import * as i0 from '@angular/core';
2
+ import * as i1 from '@spartan-ng/brain/textarea';
3
+ import * as i2 from '@spartan-ng/brain/field';
4
+
5
+ declare class HlmTextarea {
6
+ constructor();
7
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTextarea, never>;
8
+ static ɵdir: i0.ɵɵDirectiveDeclaration<HlmTextarea, "[hlmTextarea]", never, {}, {}, never, never, true, [{ directive: typeof i1.BrnTextarea; inputs: { "id": "id"; "forceInvalid": "forceInvalid"; }; outputs: {}; }, { directive: typeof i2.BrnFieldControlDescribedBy; inputs: {}; outputs: {}; }]>;
9
+ }
10
+
11
+ declare const HlmTextareaImports: readonly [typeof HlmTextarea];
12
+ declare class HlmTextareaModule {
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<HlmTextareaModule, never>;
14
+ static ɵmod: i0.ɵɵNgModuleDeclaration<HlmTextareaModule, never, [typeof HlmTextarea], [typeof HlmTextarea]>;
15
+ static ɵinj: i0.ɵɵInjectorDeclaration<HlmTextareaModule>;
16
+ }
17
+
18
+ export { HlmTextarea, HlmTextareaImports, HlmTextareaModule };
@@ -0,0 +1,11 @@
1
+ # Toggle
2
+
3
+ This project was generated using [Angular CLI](https://github.com/angular/angular-cli).
4
+
5
+ ## Building
6
+
7
+ To build the library, run:
8
+
9
+ ```bash
10
+ ng build toggle
11
+ ```