@vadem/ui 0.0.0-stage → 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 (289) hide show
  1. package/LICENSE-lucide.txt +43 -0
  2. package/README.md +19 -2
  3. package/fesm2022/vadem-ui-accordion.mjs +139 -0
  4. package/fesm2022/vadem-ui-accordion.mjs.map +1 -0
  5. package/fesm2022/vadem-ui-active-filters.mjs +355 -0
  6. package/fesm2022/vadem-ui-active-filters.mjs.map +1 -0
  7. package/fesm2022/vadem-ui-alert-dialog.mjs +433 -0
  8. package/fesm2022/vadem-ui-alert-dialog.mjs.map +1 -0
  9. package/fesm2022/vadem-ui-alert.mjs +266 -0
  10. package/fesm2022/vadem-ui-alert.mjs.map +1 -0
  11. package/fesm2022/vadem-ui-autocomplete.mjs +715 -0
  12. package/fesm2022/vadem-ui-autocomplete.mjs.map +1 -0
  13. package/fesm2022/vadem-ui-avatar.mjs +219 -0
  14. package/fesm2022/vadem-ui-avatar.mjs.map +1 -0
  15. package/fesm2022/vadem-ui-badge.mjs +86 -0
  16. package/fesm2022/vadem-ui-badge.mjs.map +1 -0
  17. package/fesm2022/vadem-ui-breadcrumbs.mjs +61 -0
  18. package/fesm2022/vadem-ui-breadcrumbs.mjs.map +1 -0
  19. package/fesm2022/vadem-ui-button.mjs +220 -0
  20. package/fesm2022/vadem-ui-button.mjs.map +1 -0
  21. package/fesm2022/vadem-ui-calendar.mjs +1314 -0
  22. package/fesm2022/vadem-ui-calendar.mjs.map +1 -0
  23. package/fesm2022/vadem-ui-card.mjs +271 -0
  24. package/fesm2022/vadem-ui-card.mjs.map +1 -0
  25. package/fesm2022/vadem-ui-character-count.mjs +269 -0
  26. package/fesm2022/vadem-ui-character-count.mjs.map +1 -0
  27. package/fesm2022/vadem-ui-chart.mjs +1984 -0
  28. package/fesm2022/vadem-ui-chart.mjs.map +1 -0
  29. package/fesm2022/vadem-ui-checkbox.mjs +67 -0
  30. package/fesm2022/vadem-ui-checkbox.mjs.map +1 -0
  31. package/fesm2022/vadem-ui-color-picker.mjs +815 -0
  32. package/fesm2022/vadem-ui-color-picker.mjs.map +1 -0
  33. package/fesm2022/vadem-ui-command.mjs +735 -0
  34. package/fesm2022/vadem-ui-command.mjs.map +1 -0
  35. package/fesm2022/vadem-ui-copy-button.mjs +375 -0
  36. package/fesm2022/vadem-ui-copy-button.mjs.map +1 -0
  37. package/fesm2022/vadem-ui-date-range-picker.mjs +1011 -0
  38. package/fesm2022/vadem-ui-date-range-picker.mjs.map +1 -0
  39. package/fesm2022/vadem-ui-description-list.mjs +59 -0
  40. package/fesm2022/vadem-ui-description-list.mjs.map +1 -0
  41. package/fesm2022/vadem-ui-dialog.mjs +587 -0
  42. package/fesm2022/vadem-ui-dialog.mjs.map +1 -0
  43. package/fesm2022/vadem-ui-dropzone.mjs +176 -0
  44. package/fesm2022/vadem-ui-dropzone.mjs.map +1 -0
  45. package/fesm2022/vadem-ui-editable-text.mjs +641 -0
  46. package/fesm2022/vadem-ui-editable-text.mjs.map +1 -0
  47. package/fesm2022/vadem-ui-empty-state.mjs +175 -0
  48. package/fesm2022/vadem-ui-empty-state.mjs.map +1 -0
  49. package/fesm2022/vadem-ui-expandable-text.mjs +244 -0
  50. package/fesm2022/vadem-ui-expandable-text.mjs.map +1 -0
  51. package/fesm2022/vadem-ui-field.mjs +583 -0
  52. package/fesm2022/vadem-ui-field.mjs.map +1 -0
  53. package/fesm2022/vadem-ui-file-preview.mjs +532 -0
  54. package/fesm2022/vadem-ui-file-preview.mjs.map +1 -0
  55. package/fesm2022/vadem-ui-file-size.mjs +83 -0
  56. package/fesm2022/vadem-ui-file-size.mjs.map +1 -0
  57. package/fesm2022/vadem-ui-form-error-summary.mjs +201 -0
  58. package/fesm2022/vadem-ui-form-error-summary.mjs.map +1 -0
  59. package/fesm2022/vadem-ui-icon.mjs +303 -0
  60. package/fesm2022/vadem-ui-icon.mjs.map +1 -0
  61. package/fesm2022/vadem-ui-input.mjs +120 -0
  62. package/fesm2022/vadem-ui-input.mjs.map +1 -0
  63. package/fesm2022/vadem-ui-kbd.mjs +286 -0
  64. package/fesm2022/vadem-ui-kbd.mjs.map +1 -0
  65. package/fesm2022/vadem-ui-keyboard.mjs +105 -0
  66. package/fesm2022/vadem-ui-keyboard.mjs.map +1 -0
  67. package/fesm2022/vadem-ui-locale.mjs +443 -0
  68. package/fesm2022/vadem-ui-locale.mjs.map +1 -0
  69. package/fesm2022/vadem-ui-menu.mjs +637 -0
  70. package/fesm2022/vadem-ui-menu.mjs.map +1 -0
  71. package/fesm2022/vadem-ui-navigation-list.mjs +130 -0
  72. package/fesm2022/vadem-ui-navigation-list.mjs.map +1 -0
  73. package/fesm2022/vadem-ui-number-input.mjs +264 -0
  74. package/fesm2022/vadem-ui-number-input.mjs.map +1 -0
  75. package/fesm2022/vadem-ui-otp-input.mjs +86 -0
  76. package/fesm2022/vadem-ui-otp-input.mjs.map +1 -0
  77. package/fesm2022/vadem-ui-pagination.mjs +353 -0
  78. package/fesm2022/vadem-ui-pagination.mjs.map +1 -0
  79. package/fesm2022/vadem-ui-password-input.mjs +213 -0
  80. package/fesm2022/vadem-ui-password-input.mjs.map +1 -0
  81. package/fesm2022/vadem-ui-popover.mjs +178 -0
  82. package/fesm2022/vadem-ui-popover.mjs.map +1 -0
  83. package/fesm2022/vadem-ui-progress.mjs +331 -0
  84. package/fesm2022/vadem-ui-progress.mjs.map +1 -0
  85. package/fesm2022/vadem-ui-radio.mjs +39 -0
  86. package/fesm2022/vadem-ui-radio.mjs.map +1 -0
  87. package/fesm2022/vadem-ui-range-slider.mjs +561 -0
  88. package/fesm2022/vadem-ui-range-slider.mjs.map +1 -0
  89. package/fesm2022/vadem-ui-rating.mjs +404 -0
  90. package/fesm2022/vadem-ui-rating.mjs.map +1 -0
  91. package/fesm2022/vadem-ui-relative-time.mjs +217 -0
  92. package/fesm2022/vadem-ui-relative-time.mjs.map +1 -0
  93. package/fesm2022/vadem-ui-reorder-list.mjs +601 -0
  94. package/fesm2022/vadem-ui-reorder-list.mjs.map +1 -0
  95. package/fesm2022/vadem-ui-scroll-area.mjs +65 -0
  96. package/fesm2022/vadem-ui-scroll-area.mjs.map +1 -0
  97. package/fesm2022/vadem-ui-search-input.mjs +307 -0
  98. package/fesm2022/vadem-ui-search-input.mjs.map +1 -0
  99. package/fesm2022/vadem-ui-segmented.mjs +297 -0
  100. package/fesm2022/vadem-ui-segmented.mjs.map +1 -0
  101. package/fesm2022/vadem-ui-select.mjs +1462 -0
  102. package/fesm2022/vadem-ui-select.mjs.map +1 -0
  103. package/fesm2022/vadem-ui-sidebar.mjs +493 -0
  104. package/fesm2022/vadem-ui-sidebar.mjs.map +1 -0
  105. package/fesm2022/vadem-ui-skeleton.mjs +106 -0
  106. package/fesm2022/vadem-ui-skeleton.mjs.map +1 -0
  107. package/fesm2022/vadem-ui-slider.mjs +60 -0
  108. package/fesm2022/vadem-ui-slider.mjs.map +1 -0
  109. package/fesm2022/vadem-ui-splitter.mjs +438 -0
  110. package/fesm2022/vadem-ui-splitter.mjs.map +1 -0
  111. package/fesm2022/vadem-ui-stat.mjs +369 -0
  112. package/fesm2022/vadem-ui-stat.mjs.map +1 -0
  113. package/fesm2022/vadem-ui-stepper.mjs +483 -0
  114. package/fesm2022/vadem-ui-stepper.mjs.map +1 -0
  115. package/fesm2022/vadem-ui-switch.mjs +45 -0
  116. package/fesm2022/vadem-ui-switch.mjs.map +1 -0
  117. package/fesm2022/vadem-ui-table.mjs +593 -0
  118. package/fesm2022/vadem-ui-table.mjs.map +1 -0
  119. package/fesm2022/vadem-ui-tabs.mjs +405 -0
  120. package/fesm2022/vadem-ui-tabs.mjs.map +1 -0
  121. package/fesm2022/vadem-ui-tag-input.mjs +685 -0
  122. package/fesm2022/vadem-ui-tag-input.mjs.map +1 -0
  123. package/fesm2022/vadem-ui-text-highlight.mjs +126 -0
  124. package/fesm2022/vadem-ui-text-highlight.mjs.map +1 -0
  125. package/fesm2022/vadem-ui-time-input.mjs +430 -0
  126. package/fesm2022/vadem-ui-time-input.mjs.map +1 -0
  127. package/fesm2022/vadem-ui-timeline.mjs +313 -0
  128. package/fesm2022/vadem-ui-timeline.mjs.map +1 -0
  129. package/fesm2022/vadem-ui-toast.mjs +397 -0
  130. package/fesm2022/vadem-ui-toast.mjs.map +1 -0
  131. package/fesm2022/vadem-ui-toolbar.mjs +396 -0
  132. package/fesm2022/vadem-ui-toolbar.mjs.map +1 -0
  133. package/fesm2022/vadem-ui-tooltip.mjs +218 -0
  134. package/fesm2022/vadem-ui-tooltip.mjs.map +1 -0
  135. package/fesm2022/vadem-ui-tree.mjs +551 -0
  136. package/fesm2022/vadem-ui-tree.mjs.map +1 -0
  137. package/fesm2022/vadem-ui-upload-list.mjs +408 -0
  138. package/fesm2022/vadem-ui-upload-list.mjs.map +1 -0
  139. package/fesm2022/vadem-ui.mjs +4 -0
  140. package/fesm2022/vadem-ui.mjs.map +1 -0
  141. package/fonts/jetbrains-mono/OFL.txt +93 -0
  142. package/fonts/jetbrains-mono/jetbrains-mono-cyrillic.woff2 +0 -0
  143. package/fonts/jetbrains-mono/jetbrains-mono-latin.woff2 +0 -0
  144. package/fonts/manrope/OFL.txt +93 -0
  145. package/fonts/manrope/manrope-cyrillic.woff2 +0 -0
  146. package/fonts/manrope/manrope-latin.woff2 +0 -0
  147. package/package.json +306 -3
  148. package/styles/base.css +160 -0
  149. package/styles/components/accordion.css +130 -0
  150. package/styles/components/active-filters.css +42 -0
  151. package/styles/components/alert-dialog.css +34 -0
  152. package/styles/components/alert.css +159 -0
  153. package/styles/components/autocomplete.css +97 -0
  154. package/styles/components/avatar.css +90 -0
  155. package/styles/components/badge.css +91 -0
  156. package/styles/components/breadcrumbs.css +94 -0
  157. package/styles/components/button.css +174 -0
  158. package/styles/components/calendar.css +186 -0
  159. package/styles/components/card.css +206 -0
  160. package/styles/components/character-count.css +41 -0
  161. package/styles/components/chart.css +308 -0
  162. package/styles/components/checkbox.css +115 -0
  163. package/styles/components/color-picker.css +158 -0
  164. package/styles/components/command.css +175 -0
  165. package/styles/components/copy-button.css +58 -0
  166. package/styles/components/date-range-picker.css +153 -0
  167. package/styles/components/description-list.css +69 -0
  168. package/styles/components/dialog.css +334 -0
  169. package/styles/components/dropzone.css +89 -0
  170. package/styles/components/editable-text.css +58 -0
  171. package/styles/components/empty-state.css +72 -0
  172. package/styles/components/expandable-text.css +24 -0
  173. package/styles/components/field.css +148 -0
  174. package/styles/components/file-preview.css +65 -0
  175. package/styles/components/form-error-summary.css +71 -0
  176. package/styles/components/icon.css +38 -0
  177. package/styles/components/index.css +80 -0
  178. package/styles/components/input.css +171 -0
  179. package/styles/components/kbd.css +42 -0
  180. package/styles/components/menu.css +168 -0
  181. package/styles/components/multi-select.css +156 -0
  182. package/styles/components/navigation-list.css +147 -0
  183. package/styles/components/number-input.css +33 -0
  184. package/styles/components/otp-input.css +26 -0
  185. package/styles/components/pagination.css +127 -0
  186. package/styles/components/password-input.css +20 -0
  187. package/styles/components/popover.css +93 -0
  188. package/styles/components/progress-ring.css +112 -0
  189. package/styles/components/progress.css +162 -0
  190. package/styles/components/radio.css +117 -0
  191. package/styles/components/range-slider.css +158 -0
  192. package/styles/components/rating.css +100 -0
  193. package/styles/components/reorder-list.css +143 -0
  194. package/styles/components/scroll-area.css +39 -0
  195. package/styles/components/search-input.css +25 -0
  196. package/styles/components/segmented.css +136 -0
  197. package/styles/components/select.css +257 -0
  198. package/styles/components/sidebar.css +105 -0
  199. package/styles/components/skeleton.css +83 -0
  200. package/styles/components/slider.css +132 -0
  201. package/styles/components/splitter.css +83 -0
  202. package/styles/components/stat.css +62 -0
  203. package/styles/components/stepper.css +236 -0
  204. package/styles/components/switch.css +107 -0
  205. package/styles/components/table.css +195 -0
  206. package/styles/components/tabs.css +198 -0
  207. package/styles/components/tag-input.css +138 -0
  208. package/styles/components/text-highlight.css +22 -0
  209. package/styles/components/time-input.css +96 -0
  210. package/styles/components/timeline.css +182 -0
  211. package/styles/components/toast.css +146 -0
  212. package/styles/components/toolbar.css +72 -0
  213. package/styles/components/tooltip.css +93 -0
  214. package/styles/components/tree.css +88 -0
  215. package/styles/components/upload-list.css +113 -0
  216. package/styles/fonts.css +67 -0
  217. package/styles/index.css +14 -0
  218. package/styles/reset.css +57 -0
  219. package/styles/tokens/primitives.css +364 -0
  220. package/styles/tokens/semantic.css +233 -0
  221. package/types/vadem-ui-accordion.d.ts +43 -0
  222. package/types/vadem-ui-active-filters.d.ts +73 -0
  223. package/types/vadem-ui-alert-dialog.d.ts +87 -0
  224. package/types/vadem-ui-alert.d.ts +64 -0
  225. package/types/vadem-ui-autocomplete.d.ts +156 -0
  226. package/types/vadem-ui-avatar.d.ts +59 -0
  227. package/types/vadem-ui-badge.d.ts +25 -0
  228. package/types/vadem-ui-breadcrumbs.d.ts +22 -0
  229. package/types/vadem-ui-button.d.ts +52 -0
  230. package/types/vadem-ui-calendar.d.ts +327 -0
  231. package/types/vadem-ui-card.d.ts +58 -0
  232. package/types/vadem-ui-character-count.d.ts +71 -0
  233. package/types/vadem-ui-chart.d.ts +452 -0
  234. package/types/vadem-ui-checkbox.d.ts +20 -0
  235. package/types/vadem-ui-color-picker.d.ts +171 -0
  236. package/types/vadem-ui-command.d.ts +145 -0
  237. package/types/vadem-ui-copy-button.d.ts +90 -0
  238. package/types/vadem-ui-date-range-picker.d.ts +216 -0
  239. package/types/vadem-ui-description-list.d.ts +15 -0
  240. package/types/vadem-ui-dialog.d.ts +174 -0
  241. package/types/vadem-ui-dropzone.d.ts +73 -0
  242. package/types/vadem-ui-editable-text.d.ts +141 -0
  243. package/types/vadem-ui-empty-state.d.ts +34 -0
  244. package/types/vadem-ui-expandable-text.d.ts +52 -0
  245. package/types/vadem-ui-field.d.ts +180 -0
  246. package/types/vadem-ui-file-preview.d.ts +108 -0
  247. package/types/vadem-ui-file-size.d.ts +18 -0
  248. package/types/vadem-ui-form-error-summary.d.ts +46 -0
  249. package/types/vadem-ui-icon.d.ts +152 -0
  250. package/types/vadem-ui-input.d.ts +31 -0
  251. package/types/vadem-ui-kbd.d.ts +66 -0
  252. package/types/vadem-ui-keyboard.d.ts +61 -0
  253. package/types/vadem-ui-locale.d.ts +241 -0
  254. package/types/vadem-ui-menu.d.ts +132 -0
  255. package/types/vadem-ui-navigation-list.d.ts +28 -0
  256. package/types/vadem-ui-number-input.d.ts +39 -0
  257. package/types/vadem-ui-otp-input.d.ts +15 -0
  258. package/types/vadem-ui-pagination.d.ts +96 -0
  259. package/types/vadem-ui-password-input.d.ts +36 -0
  260. package/types/vadem-ui-popover.d.ts +48 -0
  261. package/types/vadem-ui-progress.d.ts +95 -0
  262. package/types/vadem-ui-radio.d.ts +11 -0
  263. package/types/vadem-ui-range-slider.d.ts +136 -0
  264. package/types/vadem-ui-rating.d.ts +95 -0
  265. package/types/vadem-ui-relative-time.d.ts +58 -0
  266. package/types/vadem-ui-reorder-list.d.ts +120 -0
  267. package/types/vadem-ui-scroll-area.d.ts +13 -0
  268. package/types/vadem-ui-search-input.d.ts +58 -0
  269. package/types/vadem-ui-segmented.d.ts +76 -0
  270. package/types/vadem-ui-select.d.ts +303 -0
  271. package/types/vadem-ui-sidebar.d.ts +70 -0
  272. package/types/vadem-ui-skeleton.d.ts +28 -0
  273. package/types/vadem-ui-slider.d.ts +17 -0
  274. package/types/vadem-ui-splitter.d.ts +99 -0
  275. package/types/vadem-ui-stat.d.ts +101 -0
  276. package/types/vadem-ui-stepper.d.ts +108 -0
  277. package/types/vadem-ui-switch.d.ts +10 -0
  278. package/types/vadem-ui-table.d.ts +172 -0
  279. package/types/vadem-ui-tabs.d.ts +101 -0
  280. package/types/vadem-ui-tag-input.d.ts +170 -0
  281. package/types/vadem-ui-text-highlight.d.ts +27 -0
  282. package/types/vadem-ui-time-input.d.ts +47 -0
  283. package/types/vadem-ui-timeline.d.ts +54 -0
  284. package/types/vadem-ui-toast.d.ts +104 -0
  285. package/types/vadem-ui-toolbar.d.ts +80 -0
  286. package/types/vadem-ui-tooltip.d.ts +71 -0
  287. package/types/vadem-ui-tree.d.ts +123 -0
  288. package/types/vadem-ui-upload-list.d.ts +70 -0
  289. package/types/vadem-ui.d.ts +1 -0
@@ -0,0 +1,108 @@
1
+ import * as i0 from "@angular/core";
2
+ type VdStepperOrientation = 'horizontal' | 'vertical';
3
+ /** Ordered process navigation. The consumer owns stage content and validation. */
4
+ export declare class VdStepper {
5
+ readonly value: import("@angular/core").ModelSignal<string | undefined>;
6
+ readonly label: import("@angular/core").InputSignal<string | undefined>;
7
+ readonly orientation: import("@angular/core").InputSignal<VdStepperOrientation>;
8
+ readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
9
+ readonly completedLabel: import("@angular/core").InputSignal<string | undefined>;
10
+ readonly errorLabel: import("@angular/core").InputSignal<string | undefined>;
11
+ /** Text inputs resolved against the active VD_LOCALE. */
12
+ protected readonly t: import("@angular/core").Signal<Pick<{
13
+ label: string;
14
+ completedLabel: string;
15
+ errorLabel: string;
16
+ }, "label" | "completedLabel" | "errorLabel">>;
17
+ private readonly steps;
18
+ readonly current: import("@angular/core").Signal<string>;
19
+ number(step: VdStep): number;
20
+ select(step: VdStep): void;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdStepper, never>;
22
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdStepper, "nav[vdStepper]", ["vdStepper"], {
23
+ "value": {
24
+ "alias": "value";
25
+ "required": false;
26
+ "isSignal": true;
27
+ };
28
+ "label": {
29
+ "alias": "label";
30
+ "required": false;
31
+ "isSignal": true;
32
+ };
33
+ "orientation": {
34
+ "alias": "orientation";
35
+ "required": false;
36
+ "isSignal": true;
37
+ };
38
+ "disabled": {
39
+ "alias": "disabled";
40
+ "required": false;
41
+ "isSignal": true;
42
+ };
43
+ "completedLabel": {
44
+ "alias": "completedLabel";
45
+ "required": false;
46
+ "isSignal": true;
47
+ };
48
+ "errorLabel": {
49
+ "alias": "errorLabel";
50
+ "required": false;
51
+ "isSignal": true;
52
+ };
53
+ }, {
54
+ "value": "valueChange";
55
+ }, ["steps"], never, true, never>;
56
+ }
57
+ /** Native button with a numbered/status indicator and compositional text parts. */
58
+ export declare class VdStep {
59
+ readonly value: import("@angular/core").InputSignal<string>;
60
+ readonly completed: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
61
+ readonly invalid: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
62
+ readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
63
+ protected readonly stepper: VdStepper;
64
+ protected readonly title: import("@angular/core").Signal<VdStepTitle | undefined>;
65
+ private readonly description;
66
+ protected readonly statusId: string;
67
+ protected readonly number: import("@angular/core").Signal<number>;
68
+ protected readonly current: import("@angular/core").Signal<boolean>;
69
+ protected readonly isDisabled: import("@angular/core").Signal<boolean>;
70
+ protected readonly state: import("@angular/core").Signal<"error" | "complete" | "current" | "upcoming">;
71
+ protected readonly status: import("@angular/core").Signal<string | undefined>;
72
+ protected readonly describedBy: import("@angular/core").Signal<string | null>;
73
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdStep, never>;
74
+ static ɵcmp: i0.ɵɵComponentDeclaration<VdStep, "button[vdStep]", never, {
75
+ "value": {
76
+ "alias": "value";
77
+ "required": true;
78
+ "isSignal": true;
79
+ };
80
+ "completed": {
81
+ "alias": "completed";
82
+ "required": false;
83
+ "isSignal": true;
84
+ };
85
+ "invalid": {
86
+ "alias": "invalid";
87
+ "required": false;
88
+ "isSignal": true;
89
+ };
90
+ "disabled": {
91
+ "alias": "disabled";
92
+ "required": false;
93
+ "isSignal": true;
94
+ };
95
+ }, {}, ["title", "description"], ["*"], true, never>;
96
+ }
97
+ export declare class VdStepTitle {
98
+ readonly id: string;
99
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdStepTitle, never>;
100
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdStepTitle, "[vdStepTitle]", never, {}, {}, never, never, true, never>;
101
+ }
102
+ export declare class VdStepDescription {
103
+ readonly id: string;
104
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdStepDescription, never>;
105
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdStepDescription, "[vdStepDescription]", never, {}, {}, never, never, true, never>;
106
+ }
107
+ export declare const VD_STEPPER: readonly [typeof VdStepper, typeof VdStep, typeof VdStepTitle, typeof VdStepDescription];
108
+ export type { VdStepperOrientation };
@@ -0,0 +1,10 @@
1
+ import { VdFieldControlBase } from "@vadem/ui/field";
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * A native `<input type="checkbox">` exposed as `role="switch"` (on/off, takes effect
5
+ * immediately). Forms and keyboard stay native. Spec: specs/switch.md
6
+ */
7
+ export declare class VdSwitch extends VdFieldControlBase {
8
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdSwitch, never>;
9
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdSwitch, "input[type=checkbox][vdSwitch]", never, {}, {}, never, never, true, never>;
10
+ }
@@ -0,0 +1,172 @@
1
+ import * as i0 from "@angular/core";
2
+ type VdSortDirection = 'ascending' | 'descending';
3
+ /** Current sort of a table: which column and which way. `null` = source order. */
4
+ interface VdSort {
5
+ key: string;
6
+ direction: VdSortDirection;
7
+ }
8
+ /** Next state when a column header is activated: a new column starts ascending, the same one flips. */
9
+ export declare function vdNextSort(current: VdSort | null, key: string): VdSort;
10
+ interface VdSortOptions<T> {
11
+ /** Value to compare for a column; defaults to `row[key]`. */
12
+ accessor?: (row: T, key: string) => unknown;
13
+ /** Locale for text comparison (e.g. 'uk'); defaults to the runtime locale. */
14
+ locale?: string;
15
+ }
16
+ /**
17
+ * Returns a sorted copy (stable). Numbers and dates compare by value, text with `Intl.Collator`
18
+ * (case- and accent-aware, numeric: "file 2" < "file 10"). Empty values (null, undefined, '')
19
+ * always go last, in both directions.
20
+ */
21
+ export declare function vdSortRows<T>(rows: readonly T[], sort: VdSort | null, options?: VdSortOptions<T>): T[];
22
+ type VdTableSize = 'sm' | 'md';
23
+ /**
24
+ * Styles a native `<table>` and owns its sort state. Rows are rendered (and sorted, e.g. with
25
+ * `vdSortRows`) by the consumer. Spec: specs/table.md
26
+ */
27
+ export declare class VdTable {
28
+ readonly size: import("@angular/core").InputSignal<VdTableSize>;
29
+ /** Header stays visible while a `vdTableScroll` container scrolls vertically. */
30
+ readonly stickyHeader: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
31
+ /** Current sort (two-way). `null` = source order. */
32
+ readonly sort: import("@angular/core").ModelSignal<VdSort | null>;
33
+ toggleSort(key: string): void;
34
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTable, never>;
35
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTable, "table[vdTable]", ["vdTable"], {
36
+ "size": {
37
+ "alias": "size";
38
+ "required": false;
39
+ "isSignal": true;
40
+ };
41
+ "stickyHeader": {
42
+ "alias": "stickyHeader";
43
+ "required": false;
44
+ "isSignal": true;
45
+ };
46
+ "sort": {
47
+ "alias": "sort";
48
+ "required": false;
49
+ "isSignal": true;
50
+ };
51
+ }, {
52
+ "sort": "sortChange";
53
+ }, never, never, true, never>;
54
+ }
55
+ /**
56
+ * Sortable column header (APG sortable table): a button inside the `th`, `aria-sort` on the
57
+ * sorted column only.
58
+ */
59
+ export declare class VdSortHeader {
60
+ /** Sort key for this column. */
61
+ readonly vdSortHeader: import("@angular/core").InputSignal<string>;
62
+ protected readonly table: VdTable;
63
+ protected readonly direction: import("@angular/core").Signal<import("@vadem/ui/table").VdSortDirection | null>;
64
+ protected readonly icon: import("@angular/core").Signal<"arrow-up" | "arrow-down" | "arrow-up-down">;
65
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdSortHeader, never>;
66
+ static ɵcmp: i0.ɵɵComponentDeclaration<VdSortHeader, "th[vdSortHeader]", never, {
67
+ "vdSortHeader": {
68
+ "alias": "vdSortHeader";
69
+ "required": true;
70
+ "isSignal": true;
71
+ };
72
+ }, {}, never, ["*"], true, never>;
73
+ }
74
+ /** A body row; `selected` only styles it - the row's checkbox carries the state for AT. */
75
+ export declare class VdRow {
76
+ readonly selected: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
77
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdRow, never>;
78
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdRow, "tr[vdRow]", never, {
79
+ "selected": {
80
+ "alias": "selected";
81
+ "required": false;
82
+ "isSignal": true;
83
+ };
84
+ }, {}, never, never, true, never>;
85
+ }
86
+ /** Full-width cell for the empty / no-results state: `<td vdTableEmpty colspan="5">`. */
87
+ export declare class VdTableEmpty {
88
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTableEmpty, never>;
89
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTableEmpty, "td[vdTableEmpty]", never, {}, {}, never, never, true, never>;
90
+ }
91
+ /**
92
+ * Scroll container for wide or tall tables. Focusable so keyboard users can scroll it;
93
+ * give it a name (`aria-label` or `aria-labelledby` the caption).
94
+ */
95
+ export declare class VdTableScroll {
96
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTableScroll, never>;
97
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTableScroll, "[vdTableScroll]", never, {}, {}, never, never, true, never>;
98
+ }
99
+ export declare const VD_TABLE: readonly [typeof VdTable, typeof VdSortHeader, typeof VdRow, typeof VdTableEmpty, typeof VdTableScroll];
100
+ type VdTableRowId = string | number;
101
+ interface VdTableColumnDefinition {
102
+ key: string;
103
+ required?: boolean;
104
+ }
105
+ /** Return a new selection while preserving IDs outside the current page. */
106
+ declare function vdSelectTableRows(selected: ReadonlySet<VdTableRowId>, ids: readonly VdTableRowId[], checked: boolean): Set<VdTableRowId>;
107
+ /** Required columns and at least one column remain visible even with invalid external state. */
108
+ declare function vdVisibleTableColumns(columns: readonly VdTableColumnDefinition[], hidden: ReadonlySet<string>): readonly VdTableColumnDefinition[];
109
+ /** Opt-in state for a consumer-rendered native Table. */
110
+ export declare class VdDataTable {
111
+ readonly rowIds: import("@angular/core").InputSignal<readonly VdTableRowId[]>;
112
+ readonly columns: import("@angular/core").InputSignal<readonly VdTableColumnDefinition[]>;
113
+ readonly columnOffset: import("@angular/core").InputSignal<number>;
114
+ readonly selected: import("@angular/core").ModelSignal<ReadonlySet<VdTableRowId>>;
115
+ readonly hiddenColumns: import("@angular/core").ModelSignal<ReadonlySet<string>>;
116
+ readonly visibleColumns: import("@angular/core").Signal<readonly VdTableColumnDefinition[]>;
117
+ readonly columnCount: import("@angular/core").Signal<number>;
118
+ readonly allSelected: import("@angular/core").Signal<boolean>;
119
+ readonly someSelected: import("@angular/core").Signal<boolean>;
120
+ setSelected(id: VdTableRowId, checked: boolean): void;
121
+ selectAll(checked: boolean): void;
122
+ clearSelection(): void;
123
+ isColumnVisible(key: string): boolean;
124
+ canHideColumn(key: string): boolean;
125
+ setColumnVisible(key: string, visible: boolean): void;
126
+ resetColumns(): void;
127
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdDataTable, never>;
128
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdDataTable, "[vdDataTable]", ["vdDataTable"], {
129
+ "rowIds": {
130
+ "alias": "rowIds";
131
+ "required": false;
132
+ "isSignal": true;
133
+ };
134
+ "columns": {
135
+ "alias": "columns";
136
+ "required": false;
137
+ "isSignal": true;
138
+ };
139
+ "columnOffset": {
140
+ "alias": "columnOffset";
141
+ "required": false;
142
+ "isSignal": true;
143
+ };
144
+ "selected": {
145
+ "alias": "selected";
146
+ "required": false;
147
+ "isSignal": true;
148
+ };
149
+ "hiddenColumns": {
150
+ "alias": "hiddenColumns";
151
+ "required": false;
152
+ "isSignal": true;
153
+ };
154
+ }, {
155
+ "selected": "selectedChange";
156
+ "hiddenColumns": "hiddenColumnsChange";
157
+ }, never, never, true, never>;
158
+ }
159
+ export declare class VdTableColumn {
160
+ readonly vdTableColumn: import("@angular/core").InputSignal<string>;
161
+ protected readonly table: VdDataTable;
162
+ protected readonly index: import("@angular/core").Signal<number | null>;
163
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTableColumn, never>;
164
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTableColumn, "th[vdTableColumn], td[vdTableColumn]", never, {
165
+ "vdTableColumn": {
166
+ "alias": "vdTableColumn";
167
+ "required": true;
168
+ "isSignal": true;
169
+ };
170
+ }, {}, never, never, true, never>;
171
+ }
172
+ export type { VdSort, VdSortDirection, VdSortOptions, VdTableColumnDefinition, VdTableRowId, VdTableSize };
@@ -0,0 +1,101 @@
1
+ import * as i0 from "@angular/core";
2
+ import { OnInit } from "@angular/core";
3
+ import { VdDirection, VdOrientation, VdOrientation as VdOrientation$1, VdRovingOptions, vdIsActivationKey, vdRovingTarget } from "@vadem/ui/keyboard";
4
+ type VdTabsVariant = 'line' | 'pill';
5
+ type VdTabsActivation = 'automatic' | 'manual';
6
+ /**
7
+ * Tabs container: owns the selected value and keyboard behavior. Compose with
8
+ * `vdTabList`, `vdTab` and `vdTabPanel`. Spec: specs/tabs.md
9
+ */
10
+ export declare class VdTabs {
11
+ /** Selected tab value. Defaults to the first enabled tab. */
12
+ readonly value: import("@angular/core").ModelSignal<string | undefined>;
13
+ readonly variant: import("@angular/core").InputSignal<VdTabsVariant>;
14
+ readonly orientation: import("@angular/core").InputSignal<VdOrientation$1>;
15
+ /** `automatic`: arrows select. `manual`: arrows move focus, Enter/Space select. */
16
+ readonly activation: import("@angular/core").InputSignal<VdTabsActivation>;
17
+ private readonly tabs;
18
+ private readonly panels;
19
+ /** Tabs in DOM order (registration order can differ for dynamic lists). */
20
+ private readonly ordered;
21
+ readonly selected: import("@angular/core").Signal<string | undefined>;
22
+ tabId(value: string): string | null;
23
+ panelId(value: string): string | null;
24
+ select(value: string): void;
25
+ /** Returns the unregister function. */
26
+ registerTab(tab: VdTab): () => void;
27
+ registerPanel(panel: VdTabPanel): () => void;
28
+ handleKeydown(tab: VdTab, event: KeyboardEvent): void;
29
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTabs, never>;
30
+ static ɵcmp: i0.ɵɵComponentDeclaration<VdTabs, "vd-tabs", never, {
31
+ "value": {
32
+ "alias": "value";
33
+ "required": false;
34
+ "isSignal": true;
35
+ };
36
+ "variant": {
37
+ "alias": "variant";
38
+ "required": false;
39
+ "isSignal": true;
40
+ };
41
+ "orientation": {
42
+ "alias": "orientation";
43
+ "required": false;
44
+ "isSignal": true;
45
+ };
46
+ "activation": {
47
+ "alias": "activation";
48
+ "required": false;
49
+ "isSignal": true;
50
+ };
51
+ }, {
52
+ "value": "valueChange";
53
+ }, never, ["*"], true, never>;
54
+ }
55
+ /** Container for the tabs. Needs an accessible name (`aria-label` or `aria-labelledby`). */
56
+ export declare class VdTabList {
57
+ protected readonly tabs: VdTabs;
58
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTabList, never>;
59
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTabList, "[vdTabList]", never, {}, {}, never, never, true, never>;
60
+ }
61
+ export declare class VdTab implements OnInit {
62
+ readonly value: import("@angular/core").InputSignal<string>;
63
+ readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
64
+ protected readonly tabs: VdTabs;
65
+ readonly el: HTMLElement;
66
+ readonly id: string;
67
+ protected readonly selected: import("@angular/core").Signal<boolean>;
68
+ private readonly destroyRef;
69
+ ngOnInit(): void;
70
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTab, never>;
71
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTab, "button[vdTab]", never, {
72
+ "value": {
73
+ "alias": "value";
74
+ "required": true;
75
+ "isSignal": true;
76
+ };
77
+ "disabled": {
78
+ "alias": "disabled";
79
+ "required": false;
80
+ "isSignal": true;
81
+ };
82
+ }, {}, never, never, true, never>;
83
+ }
84
+ export declare class VdTabPanel implements OnInit {
85
+ readonly value: import("@angular/core").InputSignal<string>;
86
+ protected readonly tabs: VdTabs;
87
+ readonly id: string;
88
+ protected readonly selected: import("@angular/core").Signal<boolean>;
89
+ private readonly destroyRef;
90
+ ngOnInit(): void;
91
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTabPanel, never>;
92
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTabPanel, "[vdTabPanel]", never, {
93
+ "value": {
94
+ "alias": "value";
95
+ "required": true;
96
+ "isSignal": true;
97
+ };
98
+ }, {}, never, never, true, never>;
99
+ }
100
+ export declare const VD_TABS: readonly [typeof VdTabs, typeof VdTabList, typeof VdTab, typeof VdTabPanel];
101
+ export { type VdDirection, type VdOrientation, type VdRovingOptions, type VdTabsActivation, type VdTabsVariant, vdIsActivationKey, vdRovingTarget };
@@ -0,0 +1,170 @@
1
+ import * as i0 from "@angular/core";
2
+ import { OnInit, Signal } from "@angular/core";
3
+ import { FormValueControl } from "@angular/forms/signals";
4
+ /** Canonical display/editing identity without discarding accents or internal whitespace. */
5
+ declare function vdTagKey(tag: string): string;
6
+ declare function vdNormalizeTags(value: readonly string[] | null | undefined): string[];
7
+ declare function vdAddTag(value: readonly string[], draft: string): {
8
+ kind: 'empty';
9
+ tag: string;
10
+ } | {
11
+ kind: 'duplicate';
12
+ tag: string;
13
+ } | {
14
+ kind: 'added';
15
+ tag: string;
16
+ value: string[];
17
+ };
18
+ type VdTagInputSize = 'sm' | 'md' | 'lg';
19
+ /** User-defined tags with explicit editing actions. Spec: specs/tag-input.md. */
20
+ export declare class VdTagInput implements FormValueControl<string[]>, OnInit {
21
+ readonly value: import("@angular/core").ModelSignal<string[]>;
22
+ readonly size: import("@angular/core").InputSignal<VdTagInputSize>;
23
+ readonly disabled: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
24
+ readonly readonly: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
25
+ readonly invalid: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
26
+ readonly touched: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
27
+ readonly required: import("@angular/core").InputSignalWithTransform<boolean, unknown>;
28
+ readonly placeholder: import("@angular/core").InputSignal<string>;
29
+ readonly ariaLabel: import("@angular/core").InputSignal<string | undefined>;
30
+ readonly ariaLabelledby: import("@angular/core").InputSignal<string | undefined>;
31
+ readonly addLabel: import("@angular/core").InputSignal<string | undefined>;
32
+ readonly tagsLabel: import("@angular/core").InputSignal<string | undefined>;
33
+ readonly removeLabel: import("@angular/core").InputSignal<((tag: string) => string) | undefined>;
34
+ readonly addedMessage: import("@angular/core").InputSignal<((tag: string) => string) | undefined>;
35
+ readonly removedMessage: import("@angular/core").InputSignal<((tag: string) => string) | undefined>;
36
+ readonly duplicateMessage: import("@angular/core").InputSignal<((tag: string) => string) | undefined>;
37
+ /** Text inputs resolved against the active VD_LOCALE. */
38
+ protected readonly t: Signal<Pick<{
39
+ addLabel: string;
40
+ tagsLabel: string;
41
+ removeLabel: (tag: string) => string;
42
+ addedMessage: (tag: string) => string;
43
+ removedMessage: (tag: string) => string;
44
+ duplicateMessage: (tag: string) => string;
45
+ }, "addLabel" | "tagsLabel" | "removeLabel" | "addedMessage" | "removedMessage" | "duplicateMessage">>;
46
+ readonly touch: import("@angular/core").OutputEmitterRef<void>;
47
+ readonly controlId: string;
48
+ protected readonly feedbackId: string;
49
+ protected readonly tagKey: typeof vdTagKey;
50
+ protected readonly tags: Signal<string[]>;
51
+ protected readonly draft: import("@angular/core").WritableSignal<string>;
52
+ protected readonly feedback: import("@angular/core").WritableSignal<string>;
53
+ protected composing: boolean;
54
+ private readonly pendingFeedback;
55
+ private readonly inputRef;
56
+ private readonly removeButtons;
57
+ private readonly hostEl;
58
+ private readonly field;
59
+ private readonly injector;
60
+ private readonly destroyRef;
61
+ private readonly formBound;
62
+ private readonly ngSource;
63
+ private readonly ngState;
64
+ protected readonly isDisabled: Signal<boolean>;
65
+ protected readonly locked: Signal<boolean>;
66
+ protected readonly showInvalid: Signal<boolean>;
67
+ protected readonly isRequired: Signal<boolean>;
68
+ protected readonly descriptionIds: Signal<string | null>;
69
+ private lastValue;
70
+ constructor();
71
+ ngOnInit(): void;
72
+ focus(options?: FocusOptions): void;
73
+ reset(): void;
74
+ protected onInput(event: Event): void;
75
+ protected add(): void;
76
+ protected remove(tag: string): void;
77
+ protected returnToInput(event: Event): void;
78
+ protected onKeydown(event: KeyboardEvent): void;
79
+ protected onFocusOut(event: FocusEvent): void;
80
+ protected onFieldPointerDown(event: PointerEvent): void;
81
+ private commit;
82
+ private announce;
83
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTagInput, never>;
84
+ static ɵcmp: i0.ɵɵComponentDeclaration<VdTagInput, "vd-tag-input", never, {
85
+ "value": {
86
+ "alias": "value";
87
+ "required": false;
88
+ "isSignal": true;
89
+ };
90
+ "size": {
91
+ "alias": "size";
92
+ "required": false;
93
+ "isSignal": true;
94
+ };
95
+ "disabled": {
96
+ "alias": "disabled";
97
+ "required": false;
98
+ "isSignal": true;
99
+ };
100
+ "readonly": {
101
+ "alias": "readonly";
102
+ "required": false;
103
+ "isSignal": true;
104
+ };
105
+ "invalid": {
106
+ "alias": "invalid";
107
+ "required": false;
108
+ "isSignal": true;
109
+ };
110
+ "touched": {
111
+ "alias": "touched";
112
+ "required": false;
113
+ "isSignal": true;
114
+ };
115
+ "required": {
116
+ "alias": "required";
117
+ "required": false;
118
+ "isSignal": true;
119
+ };
120
+ "placeholder": {
121
+ "alias": "placeholder";
122
+ "required": false;
123
+ "isSignal": true;
124
+ };
125
+ "ariaLabel": {
126
+ "alias": "aria-label";
127
+ "required": false;
128
+ "isSignal": true;
129
+ };
130
+ "ariaLabelledby": {
131
+ "alias": "aria-labelledby";
132
+ "required": false;
133
+ "isSignal": true;
134
+ };
135
+ "addLabel": {
136
+ "alias": "addLabel";
137
+ "required": false;
138
+ "isSignal": true;
139
+ };
140
+ "tagsLabel": {
141
+ "alias": "tagsLabel";
142
+ "required": false;
143
+ "isSignal": true;
144
+ };
145
+ "removeLabel": {
146
+ "alias": "removeLabel";
147
+ "required": false;
148
+ "isSignal": true;
149
+ };
150
+ "addedMessage": {
151
+ "alias": "addedMessage";
152
+ "required": false;
153
+ "isSignal": true;
154
+ };
155
+ "removedMessage": {
156
+ "alias": "removedMessage";
157
+ "required": false;
158
+ "isSignal": true;
159
+ };
160
+ "duplicateMessage": {
161
+ "alias": "duplicateMessage";
162
+ "required": false;
163
+ "isSignal": true;
164
+ };
165
+ }, {
166
+ "value": "valueChange";
167
+ "touch": "touch";
168
+ }, never, never, true, never>;
169
+ }
170
+ export type { VdTagInputSize };
@@ -0,0 +1,27 @@
1
+ import * as i0 from "@angular/core";
2
+ interface VdTextHighlightPart {
3
+ readonly text: string;
4
+ readonly matched: boolean;
5
+ }
6
+ /** Unicode simple case folding keeps match indices tied to the original source. */
7
+ declare function vdTextHighlightParts(text: string, query: string): readonly VdTextHighlightPart[];
8
+ /** Preserves plain text while marking every literal, case-insensitive query match. */
9
+ export declare class VdTextHighlight {
10
+ readonly text: import("@angular/core").InputSignal<string>;
11
+ readonly query: import("@angular/core").InputSignal<string>;
12
+ protected readonly parts: import("@angular/core").Signal<readonly VdTextHighlightPart[]>;
13
+ protected readonly matched: import("@angular/core").Signal<boolean>;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTextHighlight, never>;
15
+ static ɵcmp: i0.ɵɵComponentDeclaration<VdTextHighlight, "vd-text-highlight", never, {
16
+ "text": {
17
+ "alias": "text";
18
+ "required": true;
19
+ "isSignal": true;
20
+ };
21
+ "query": {
22
+ "alias": "query";
23
+ "required": false;
24
+ "isSignal": true;
25
+ };
26
+ }, {}, never, never, true, never>;
27
+ }
@@ -0,0 +1,47 @@
1
+ import { VdInput } from "@vadem/ui/input";
2
+ import * as i0 from "@angular/core";
3
+ /** Native editor and accessors with a themed, minute-resolution selection popover. */
4
+ export declare class VdTimeInput extends VdInput {
5
+ readonly pickerLabel: import("@angular/core").InputSignal<string | undefined>;
6
+ readonly hoursLabel: import("@angular/core").InputSignal<string | undefined>;
7
+ readonly minutesLabel: import("@angular/core").InputSignal<string | undefined>;
8
+ readonly emptyLabel: import("@angular/core").InputSignal<string | undefined>;
9
+ /** Text inputs resolved against the active VD_LOCALE. */
10
+ protected readonly t: import("@angular/core").Signal<Pick<{
11
+ pickerLabel: string;
12
+ hoursLabel: string;
13
+ minutesLabel: string;
14
+ emptyLabel: string;
15
+ }, "pickerLabel" | "hoursLabel" | "minutesLabel" | "emptyLabel">>;
16
+ protected readonly open: import("@angular/core").WritableSignal<boolean>;
17
+ protected readonly panelId: import("@angular/core").WritableSignal<string | null>;
18
+ private readonly element;
19
+ private readonly container;
20
+ private picker?;
21
+ constructor();
22
+ protected showPicker(event: Event): void;
23
+ protected onKeydown(event: KeyboardEvent): void;
24
+ static ɵfac: i0.ɵɵFactoryDeclaration<VdTimeInput, never>;
25
+ static ɵdir: i0.ɵɵDirectiveDeclaration<VdTimeInput, "input[type=time][vdTimeInput]", never, {
26
+ "pickerLabel": {
27
+ "alias": "pickerLabel";
28
+ "required": false;
29
+ "isSignal": true;
30
+ };
31
+ "hoursLabel": {
32
+ "alias": "hoursLabel";
33
+ "required": false;
34
+ "isSignal": true;
35
+ };
36
+ "minutesLabel": {
37
+ "alias": "minutesLabel";
38
+ "required": false;
39
+ "isSignal": true;
40
+ };
41
+ "emptyLabel": {
42
+ "alias": "emptyLabel";
43
+ "required": false;
44
+ "isSignal": true;
45
+ };
46
+ }, {}, never, never, true, never>;
47
+ }