@raintonic/formaui 0.2.0

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 (240) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +145 -0
  3. package/fesm2022/raintonic-formaui-cdk-drag-drop.mjs +806 -0
  4. package/fesm2022/raintonic-formaui-cdk-drag-drop.mjs.map +1 -0
  5. package/fesm2022/raintonic-formaui-cdk-form-field.mjs +86 -0
  6. package/fesm2022/raintonic-formaui-cdk-form-field.mjs.map +1 -0
  7. package/fesm2022/raintonic-formaui-cdk-overlay.mjs +1757 -0
  8. package/fesm2022/raintonic-formaui-cdk-overlay.mjs.map +1 -0
  9. package/fesm2022/raintonic-formaui-cdk-virtual-scroll.mjs +287 -0
  10. package/fesm2022/raintonic-formaui-cdk-virtual-scroll.mjs.map +1 -0
  11. package/fesm2022/raintonic-formaui-components-accordion.mjs +217 -0
  12. package/fesm2022/raintonic-formaui-components-accordion.mjs.map +1 -0
  13. package/fesm2022/raintonic-formaui-components-alert.mjs +161 -0
  14. package/fesm2022/raintonic-formaui-components-alert.mjs.map +1 -0
  15. package/fesm2022/raintonic-formaui-components-autocomplete.mjs +726 -0
  16. package/fesm2022/raintonic-formaui-components-autocomplete.mjs.map +1 -0
  17. package/fesm2022/raintonic-formaui-components-avatar.mjs +92 -0
  18. package/fesm2022/raintonic-formaui-components-avatar.mjs.map +1 -0
  19. package/fesm2022/raintonic-formaui-components-badge.mjs +107 -0
  20. package/fesm2022/raintonic-formaui-components-badge.mjs.map +1 -0
  21. package/fesm2022/raintonic-formaui-components-big-menu.mjs +68 -0
  22. package/fesm2022/raintonic-formaui-components-big-menu.mjs.map +1 -0
  23. package/fesm2022/raintonic-formaui-components-breadcrumb.mjs +55 -0
  24. package/fesm2022/raintonic-formaui-components-breadcrumb.mjs.map +1 -0
  25. package/fesm2022/raintonic-formaui-components-button-group.mjs +103 -0
  26. package/fesm2022/raintonic-formaui-components-button-group.mjs.map +1 -0
  27. package/fesm2022/raintonic-formaui-components-button.mjs +241 -0
  28. package/fesm2022/raintonic-formaui-components-button.mjs.map +1 -0
  29. package/fesm2022/raintonic-formaui-components-card.mjs +270 -0
  30. package/fesm2022/raintonic-formaui-components-card.mjs.map +1 -0
  31. package/fesm2022/raintonic-formaui-components-checkbox.mjs +295 -0
  32. package/fesm2022/raintonic-formaui-components-checkbox.mjs.map +1 -0
  33. package/fesm2022/raintonic-formaui-components-data-table.mjs +631 -0
  34. package/fesm2022/raintonic-formaui-components-data-table.mjs.map +1 -0
  35. package/fesm2022/raintonic-formaui-components-date-picker.mjs +1331 -0
  36. package/fesm2022/raintonic-formaui-components-date-picker.mjs.map +1 -0
  37. package/fesm2022/raintonic-formaui-components-divider.mjs +41 -0
  38. package/fesm2022/raintonic-formaui-components-divider.mjs.map +1 -0
  39. package/fesm2022/raintonic-formaui-components-drawer.mjs +190 -0
  40. package/fesm2022/raintonic-formaui-components-drawer.mjs.map +1 -0
  41. package/fesm2022/raintonic-formaui-components-dynamic-form.mjs +266 -0
  42. package/fesm2022/raintonic-formaui-components-dynamic-form.mjs.map +1 -0
  43. package/fesm2022/raintonic-formaui-components-empty-state.mjs +33 -0
  44. package/fesm2022/raintonic-formaui-components-empty-state.mjs.map +1 -0
  45. package/fesm2022/raintonic-formaui-components-file-upload.mjs +246 -0
  46. package/fesm2022/raintonic-formaui-components-file-upload.mjs.map +1 -0
  47. package/fesm2022/raintonic-formaui-components-form-field.mjs +482 -0
  48. package/fesm2022/raintonic-formaui-components-form-field.mjs.map +1 -0
  49. package/fesm2022/raintonic-formaui-components-icon.mjs +117 -0
  50. package/fesm2022/raintonic-formaui-components-icon.mjs.map +1 -0
  51. package/fesm2022/raintonic-formaui-components-input.mjs +327 -0
  52. package/fesm2022/raintonic-formaui-components-input.mjs.map +1 -0
  53. package/fesm2022/raintonic-formaui-components-list.mjs +149 -0
  54. package/fesm2022/raintonic-formaui-components-list.mjs.map +1 -0
  55. package/fesm2022/raintonic-formaui-components-menu.mjs +896 -0
  56. package/fesm2022/raintonic-formaui-components-menu.mjs.map +1 -0
  57. package/fesm2022/raintonic-formaui-components-number-input.mjs +345 -0
  58. package/fesm2022/raintonic-formaui-components-number-input.mjs.map +1 -0
  59. package/fesm2022/raintonic-formaui-components-paginator.mjs +139 -0
  60. package/fesm2022/raintonic-formaui-components-paginator.mjs.map +1 -0
  61. package/fesm2022/raintonic-formaui-components-password-input.mjs +306 -0
  62. package/fesm2022/raintonic-formaui-components-password-input.mjs.map +1 -0
  63. package/fesm2022/raintonic-formaui-components-popover.mjs +451 -0
  64. package/fesm2022/raintonic-formaui-components-popover.mjs.map +1 -0
  65. package/fesm2022/raintonic-formaui-components-progressbar.mjs +148 -0
  66. package/fesm2022/raintonic-formaui-components-progressbar.mjs.map +1 -0
  67. package/fesm2022/raintonic-formaui-components-radio.mjs +260 -0
  68. package/fesm2022/raintonic-formaui-components-radio.mjs.map +1 -0
  69. package/fesm2022/raintonic-formaui-components-select.mjs +1011 -0
  70. package/fesm2022/raintonic-formaui-components-select.mjs.map +1 -0
  71. package/fesm2022/raintonic-formaui-components-side-panel.mjs +150 -0
  72. package/fesm2022/raintonic-formaui-components-side-panel.mjs.map +1 -0
  73. package/fesm2022/raintonic-formaui-components-sidebar.mjs +257 -0
  74. package/fesm2022/raintonic-formaui-components-sidebar.mjs.map +1 -0
  75. package/fesm2022/raintonic-formaui-components-skeleton.mjs +50 -0
  76. package/fesm2022/raintonic-formaui-components-skeleton.mjs.map +1 -0
  77. package/fesm2022/raintonic-formaui-components-slider.mjs +347 -0
  78. package/fesm2022/raintonic-formaui-components-slider.mjs.map +1 -0
  79. package/fesm2022/raintonic-formaui-components-spinner.mjs +63 -0
  80. package/fesm2022/raintonic-formaui-components-spinner.mjs.map +1 -0
  81. package/fesm2022/raintonic-formaui-components-stepper.mjs +317 -0
  82. package/fesm2022/raintonic-formaui-components-stepper.mjs.map +1 -0
  83. package/fesm2022/raintonic-formaui-components-tab.mjs +197 -0
  84. package/fesm2022/raintonic-formaui-components-tab.mjs.map +1 -0
  85. package/fesm2022/raintonic-formaui-components-tag.mjs +78 -0
  86. package/fesm2022/raintonic-formaui-components-tag.mjs.map +1 -0
  87. package/fesm2022/raintonic-formaui-components-time-picker.mjs +644 -0
  88. package/fesm2022/raintonic-formaui-components-time-picker.mjs.map +1 -0
  89. package/fesm2022/raintonic-formaui-components-toggle.mjs +171 -0
  90. package/fesm2022/raintonic-formaui-components-toggle.mjs.map +1 -0
  91. package/fesm2022/raintonic-formaui-components-toolbar.mjs +140 -0
  92. package/fesm2022/raintonic-formaui-components-toolbar.mjs.map +1 -0
  93. package/fesm2022/raintonic-formaui-components-tooltip.mjs +555 -0
  94. package/fesm2022/raintonic-formaui-components-tooltip.mjs.map +1 -0
  95. package/fesm2022/raintonic-formaui-components-tree-select.mjs +314 -0
  96. package/fesm2022/raintonic-formaui-components-tree-select.mjs.map +1 -0
  97. package/fesm2022/raintonic-formaui-components-tree-table.mjs +103 -0
  98. package/fesm2022/raintonic-formaui-components-tree-table.mjs.map +1 -0
  99. package/fesm2022/raintonic-formaui-components-tree.mjs +430 -0
  100. package/fesm2022/raintonic-formaui-components-tree.mjs.map +1 -0
  101. package/fesm2022/raintonic-formaui-core.mjs +62 -0
  102. package/fesm2022/raintonic-formaui-core.mjs.map +1 -0
  103. package/fesm2022/raintonic-formaui-services-dialog.mjs +798 -0
  104. package/fesm2022/raintonic-formaui-services-dialog.mjs.map +1 -0
  105. package/fesm2022/raintonic-formaui-services-notification.mjs +391 -0
  106. package/fesm2022/raintonic-formaui-services-notification.mjs.map +1 -0
  107. package/fesm2022/raintonic-formaui-services-theme.mjs +248 -0
  108. package/fesm2022/raintonic-formaui-services-theme.mjs.map +1 -0
  109. package/fesm2022/raintonic-formaui-test-utils.mjs +66 -0
  110. package/fesm2022/raintonic-formaui-test-utils.mjs.map +1 -0
  111. package/fesm2022/raintonic-formaui.mjs +15 -0
  112. package/fesm2022/raintonic-formaui.mjs.map +1 -0
  113. package/llms-full.txt +1627 -0
  114. package/llms.txt +60 -0
  115. package/package.json +251 -0
  116. package/styles/_fonts-entry.scss +3 -0
  117. package/styles/fonts/dm-mono-400-latin.woff2 +0 -0
  118. package/styles/fonts/inter-tight-latin-italic.woff2 +0 -0
  119. package/styles/fonts/inter-tight-latin.woff2 +0 -0
  120. package/styles/index.scss +127 -0
  121. package/styles/partials/_constants.scss +29 -0
  122. package/styles/partials/_fonts.scss +36 -0
  123. package/styles/partials/_grid.scss +171 -0
  124. package/styles/partials/_mixins.scss +145 -0
  125. package/styles/partials/_motion.scss +252 -0
  126. package/styles/partials/_theme.scss +275 -0
  127. package/styles/partials/_typography.scss +112 -0
  128. package/styles/partials/_utilities.scss +480 -0
  129. package/styles/partials/themes/_dark.scss +254 -0
  130. package/styles/partials/themes/_light.scss +254 -0
  131. package/types/raintonic-formaui-cdk-drag-drop.d.ts +196 -0
  132. package/types/raintonic-formaui-cdk-drag-drop.d.ts.map +1 -0
  133. package/types/raintonic-formaui-cdk-form-field.d.ts +62 -0
  134. package/types/raintonic-formaui-cdk-form-field.d.ts.map +1 -0
  135. package/types/raintonic-formaui-cdk-overlay.d.ts +843 -0
  136. package/types/raintonic-formaui-cdk-overlay.d.ts.map +1 -0
  137. package/types/raintonic-formaui-cdk-virtual-scroll.d.ts +112 -0
  138. package/types/raintonic-formaui-cdk-virtual-scroll.d.ts.map +1 -0
  139. package/types/raintonic-formaui-components-accordion.d.ts +124 -0
  140. package/types/raintonic-formaui-components-accordion.d.ts.map +1 -0
  141. package/types/raintonic-formaui-components-alert.d.ts +143 -0
  142. package/types/raintonic-formaui-components-alert.d.ts.map +1 -0
  143. package/types/raintonic-formaui-components-autocomplete.d.ts +193 -0
  144. package/types/raintonic-formaui-components-autocomplete.d.ts.map +1 -0
  145. package/types/raintonic-formaui-components-avatar.d.ts +52 -0
  146. package/types/raintonic-formaui-components-avatar.d.ts.map +1 -0
  147. package/types/raintonic-formaui-components-badge.d.ts +47 -0
  148. package/types/raintonic-formaui-components-badge.d.ts.map +1 -0
  149. package/types/raintonic-formaui-components-big-menu.d.ts +62 -0
  150. package/types/raintonic-formaui-components-big-menu.d.ts.map +1 -0
  151. package/types/raintonic-formaui-components-breadcrumb.d.ts +26 -0
  152. package/types/raintonic-formaui-components-breadcrumb.d.ts.map +1 -0
  153. package/types/raintonic-formaui-components-button-group.d.ts +61 -0
  154. package/types/raintonic-formaui-components-button-group.d.ts.map +1 -0
  155. package/types/raintonic-formaui-components-button.d.ts +116 -0
  156. package/types/raintonic-formaui-components-button.d.ts.map +1 -0
  157. package/types/raintonic-formaui-components-card.d.ts +191 -0
  158. package/types/raintonic-formaui-components-card.d.ts.map +1 -0
  159. package/types/raintonic-formaui-components-checkbox.d.ts +132 -0
  160. package/types/raintonic-formaui-components-checkbox.d.ts.map +1 -0
  161. package/types/raintonic-formaui-components-data-table.d.ts +368 -0
  162. package/types/raintonic-formaui-components-data-table.d.ts.map +1 -0
  163. package/types/raintonic-formaui-components-date-picker.d.ts +341 -0
  164. package/types/raintonic-formaui-components-date-picker.d.ts.map +1 -0
  165. package/types/raintonic-formaui-components-divider.d.ts +21 -0
  166. package/types/raintonic-formaui-components-divider.d.ts.map +1 -0
  167. package/types/raintonic-formaui-components-drawer.d.ts +48 -0
  168. package/types/raintonic-formaui-components-drawer.d.ts.map +1 -0
  169. package/types/raintonic-formaui-components-dynamic-form.d.ts +412 -0
  170. package/types/raintonic-formaui-components-dynamic-form.d.ts.map +1 -0
  171. package/types/raintonic-formaui-components-empty-state.d.ts +14 -0
  172. package/types/raintonic-formaui-components-empty-state.d.ts.map +1 -0
  173. package/types/raintonic-formaui-components-file-upload.d.ts +77 -0
  174. package/types/raintonic-formaui-components-file-upload.d.ts.map +1 -0
  175. package/types/raintonic-formaui-components-form-field.d.ts +271 -0
  176. package/types/raintonic-formaui-components-form-field.d.ts.map +1 -0
  177. package/types/raintonic-formaui-components-icon.d.ts +61 -0
  178. package/types/raintonic-formaui-components-icon.d.ts.map +1 -0
  179. package/types/raintonic-formaui-components-input.d.ts +149 -0
  180. package/types/raintonic-formaui-components-input.d.ts.map +1 -0
  181. package/types/raintonic-formaui-components-list.d.ts +48 -0
  182. package/types/raintonic-formaui-components-list.d.ts.map +1 -0
  183. package/types/raintonic-formaui-components-menu.d.ts +403 -0
  184. package/types/raintonic-formaui-components-menu.d.ts.map +1 -0
  185. package/types/raintonic-formaui-components-number-input.d.ts +127 -0
  186. package/types/raintonic-formaui-components-number-input.d.ts.map +1 -0
  187. package/types/raintonic-formaui-components-paginator.d.ts +37 -0
  188. package/types/raintonic-formaui-components-paginator.d.ts.map +1 -0
  189. package/types/raintonic-formaui-components-password-input.d.ts +111 -0
  190. package/types/raintonic-formaui-components-password-input.d.ts.map +1 -0
  191. package/types/raintonic-formaui-components-popover.d.ts +131 -0
  192. package/types/raintonic-formaui-components-popover.d.ts.map +1 -0
  193. package/types/raintonic-formaui-components-progressbar.d.ts +111 -0
  194. package/types/raintonic-formaui-components-progressbar.d.ts.map +1 -0
  195. package/types/raintonic-formaui-components-radio.d.ts +95 -0
  196. package/types/raintonic-formaui-components-radio.d.ts.map +1 -0
  197. package/types/raintonic-formaui-components-select.d.ts +307 -0
  198. package/types/raintonic-formaui-components-select.d.ts.map +1 -0
  199. package/types/raintonic-formaui-components-side-panel.d.ts +51 -0
  200. package/types/raintonic-formaui-components-side-panel.d.ts.map +1 -0
  201. package/types/raintonic-formaui-components-sidebar.d.ts +174 -0
  202. package/types/raintonic-formaui-components-sidebar.d.ts.map +1 -0
  203. package/types/raintonic-formaui-components-skeleton.d.ts +20 -0
  204. package/types/raintonic-formaui-components-skeleton.d.ts.map +1 -0
  205. package/types/raintonic-formaui-components-slider.d.ts +108 -0
  206. package/types/raintonic-formaui-components-slider.d.ts.map +1 -0
  207. package/types/raintonic-formaui-components-spinner.d.ts +42 -0
  208. package/types/raintonic-formaui-components-spinner.d.ts.map +1 -0
  209. package/types/raintonic-formaui-components-stepper.d.ts +126 -0
  210. package/types/raintonic-formaui-components-stepper.d.ts.map +1 -0
  211. package/types/raintonic-formaui-components-tab.d.ts +96 -0
  212. package/types/raintonic-formaui-components-tab.d.ts.map +1 -0
  213. package/types/raintonic-formaui-components-tag.d.ts +34 -0
  214. package/types/raintonic-formaui-components-tag.d.ts.map +1 -0
  215. package/types/raintonic-formaui-components-time-picker.d.ts +172 -0
  216. package/types/raintonic-formaui-components-time-picker.d.ts.map +1 -0
  217. package/types/raintonic-formaui-components-toggle.d.ts +70 -0
  218. package/types/raintonic-formaui-components-toggle.d.ts.map +1 -0
  219. package/types/raintonic-formaui-components-toolbar.d.ts +128 -0
  220. package/types/raintonic-formaui-components-toolbar.d.ts.map +1 -0
  221. package/types/raintonic-formaui-components-tooltip.d.ts +268 -0
  222. package/types/raintonic-formaui-components-tooltip.d.ts.map +1 -0
  223. package/types/raintonic-formaui-components-tree-select.d.ts +80 -0
  224. package/types/raintonic-formaui-components-tree-select.d.ts.map +1 -0
  225. package/types/raintonic-formaui-components-tree-table.d.ts +90 -0
  226. package/types/raintonic-formaui-components-tree-table.d.ts.map +1 -0
  227. package/types/raintonic-formaui-components-tree.d.ts +104 -0
  228. package/types/raintonic-formaui-components-tree.d.ts.map +1 -0
  229. package/types/raintonic-formaui-core.d.ts +115 -0
  230. package/types/raintonic-formaui-core.d.ts.map +1 -0
  231. package/types/raintonic-formaui-services-dialog.d.ts +451 -0
  232. package/types/raintonic-formaui-services-dialog.d.ts.map +1 -0
  233. package/types/raintonic-formaui-services-notification.d.ts +221 -0
  234. package/types/raintonic-formaui-services-notification.d.ts.map +1 -0
  235. package/types/raintonic-formaui-services-theme.d.ts +126 -0
  236. package/types/raintonic-formaui-services-theme.d.ts.map +1 -0
  237. package/types/raintonic-formaui-test-utils.d.ts +24 -0
  238. package/types/raintonic-formaui-test-utils.d.ts.map +1 -0
  239. package/types/raintonic-formaui.d.ts +4 -0
  240. package/types/raintonic-formaui.d.ts.map +1 -0
@@ -0,0 +1,307 @@
1
+ import * as i0 from '@angular/core';
2
+ import { OnDestroy, AfterViewInit, InputSignal, OutputEmitterRef, WritableSignal, InjectionToken, DoCheck, AfterContentInit, Signal, ElementRef } from '@angular/core';
3
+ import { Subject } from 'rxjs';
4
+ import { ControlValueAccessor, NgControl } from '@angular/forms';
5
+ import { FuiFormFieldControl, ErrorStateMatcher } from '@raintonic/formaui/core';
6
+
7
+ /**
8
+ * # FuiOption Component
9
+ *
10
+ * Individual option component for use within fui-select.
11
+ * Works like Angular Material's mat-option with full accessibility support.
12
+ *
13
+ * ## Features
14
+ * - Disabled state support
15
+ * - Selection state management
16
+ * - Full accessibility support (ARIA attributes)
17
+ * - Keyboard navigation support
18
+ * - Custom content projection
19
+ * - Smooth hover animations
20
+ *
21
+ * ## Usage
22
+ *
23
+ * ### Basic Option
24
+ * ```html
25
+ * <fui-select placeholder="Select a status">
26
+ * <fui-option value="active">Active</fui-option>
27
+ * <fui-option value="inactive">Inactive</fui-option>
28
+ * <fui-option value="pending" [disabled]="true">Pending (Disabled)</fui-option>
29
+ * </fui-select>
30
+ * ```
31
+ *
32
+ * ### Option with Custom Content
33
+ * ```html
34
+ * <fui-select placeholder="Select a country">
35
+ * <fui-option value="us">
36
+ * <fui-icon name="flag-us"></fui-icon>
37
+ * United States
38
+ * </fui-option>
39
+ * <fui-option value="ca">
40
+ * <fui-icon name="flag-ca"></fui-icon>
41
+ * Canada
42
+ * </fui-option>
43
+ * </fui-select>
44
+ * ```
45
+ */
46
+ declare class FuiOptionComponent implements OnDestroy, AfterViewInit {
47
+ static nextId: number;
48
+ /**
49
+ * The value of the option
50
+ */
51
+ readonly value: InputSignal<unknown>;
52
+ /**
53
+ * Whether the option is disabled
54
+ * @default false
55
+ */
56
+ readonly disabled: InputSignal<boolean>;
57
+ /**
58
+ * Event emitted when the option is selected
59
+ */
60
+ readonly selectionChange: OutputEmitterRef<{
61
+ source: FuiOptionComponent;
62
+ value: unknown;
63
+ }>;
64
+ readonly _selected: WritableSignal<boolean>;
65
+ readonly _active: WritableSignal<boolean>;
66
+ readonly stateChanges: Subject<void>;
67
+ private readonly _element;
68
+ private readonly _parentSelect;
69
+ readonly id: string;
70
+ readonly _showCheckmark: WritableSignal<boolean>;
71
+ ngAfterViewInit(): void;
72
+ ngOnDestroy(): void;
73
+ get viewValue(): string;
74
+ _handleClick(event: Event): void;
75
+ _handleMouseEnter(): void;
76
+ _handleMouseLeave(): void;
77
+ /**
78
+ * Selects the option
79
+ */
80
+ select(): void;
81
+ /**
82
+ * Deselects the option
83
+ */
84
+ deselect(): void;
85
+ /**
86
+ * Sets the option as active (keyboard navigation)
87
+ */
88
+ setActive(): void;
89
+ /**
90
+ * Sets the option as inactive
91
+ */
92
+ setInactive(): void;
93
+ /**
94
+ * Sets focus onto this option
95
+ */
96
+ focus(): void;
97
+ /**
98
+ * Gets the label to be used when displaying the option
99
+ */
100
+ getLabel(): string;
101
+ /**
102
+ * Gets the host element
103
+ */
104
+ _getHostElement(): HTMLElement;
105
+ /** Update checkmark visibility based on selection and multiple mode */
106
+ private _updateCheckmarkVisibility;
107
+ /** Emits the selection change event */
108
+ private _emitSelectionChangeEvent;
109
+ static ɵfac: i0.ɵɵFactoryDeclaration<FuiOptionComponent, never>;
110
+ static ɵcmp: i0.ɵɵComponentDeclaration<FuiOptionComponent, "fui-option", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; }, never, ["*"], true, never>;
111
+ }
112
+
113
+ /**
114
+ * Interface representing the parent select contract that options need.
115
+ * Used to break the circular dependency between select and option components.
116
+ */
117
+ interface FuiSelectParent {
118
+ multiple(): boolean;
119
+ _onOptionSelected(option: any): void;
120
+ }
121
+ /**
122
+ * Injection token used to provide the parent select to options.
123
+ */
124
+ declare const FUI_SELECT: InjectionToken<FuiSelectParent>;
125
+
126
+ /**
127
+ * Available select sizes
128
+ */
129
+ type FuiSelectSize = 'sm' | 'md' | 'lg';
130
+ /**
131
+ * Available select variants following Carbon Design System patterns
132
+ */
133
+ type FuiSelectVariant = 'outlined' | 'filled';
134
+ /**
135
+ * Selection change event object emitted when the select's selection changes
136
+ */
137
+ interface FuiSelectChange {
138
+ source: FuiSelectComponent;
139
+ value: unknown;
140
+ }
141
+ /**
142
+ * # fui-select Component
143
+ *
144
+ * A select component designed to work seamlessly with fui-form-field.
145
+ * Similar to Angular Material's mat-select integration with mat-form-field.
146
+ * Provides full Reactive Forms support with validation and error handling.
147
+ *
148
+ * ## Features
149
+ * - Works inside fui-form-field like mat-select
150
+ * - Full Reactive Forms integration (ControlValueAccessor)
151
+ * - Multiple selection support
152
+ * - Options via projected content (fui-option)
153
+ * - Disabled and readonly states
154
+ * - Full accessibility support
155
+ * - Full keyboard navigation (Arrow keys, Enter, Space, Escape, Home, End)
156
+ * - Type-ahead search functionality
157
+ *
158
+ * ## Usage
159
+ *
160
+ * ### Basic Select with Form Field
161
+ * ```html
162
+ * <fui-form-field>
163
+ * <label>Country</label>
164
+ * <fui-select placeholder="Select a country">
165
+ * <fui-option value="us">United States</fui-option>
166
+ * <fui-option value="ca">Canada</fui-option>
167
+ * <fui-option value="mx">Mexico</fui-option>
168
+ * </fui-select>
169
+ * </fui-form-field>
170
+ * ```
171
+ *
172
+ * ### With Reactive Forms and Validation
173
+ * ```html
174
+ * <form [formGroup]="form">
175
+ * <fui-form-field>
176
+ * <label>Country</label>
177
+ * <fui-select formControlName="country" placeholder="Select a country">
178
+ * <fui-option value="us">United States</fui-option>
179
+ * <fui-option value="ca">Canada</fui-option>
180
+ * </fui-select>
181
+ * <fui-error *ngIf="form.get('country')?.hasError('required')">
182
+ * Country is required
183
+ * </fui-error>
184
+ * </fui-form-field>
185
+ * </form>
186
+ * ```
187
+ *
188
+ * ### Multiple Selection
189
+ * ```html
190
+ * <fui-form-field>
191
+ * <label>Skills</label>
192
+ * <fui-select formControlName="skills" [multiple]="true">
193
+ * <fui-option value="js">JavaScript</fui-option>
194
+ * <fui-option value="ts">TypeScript</fui-option>
195
+ * <fui-option value="py">Python</fui-option>
196
+ * </fui-select>
197
+ * </fui-form-field>
198
+ * ```
199
+ */
200
+ declare class FuiSelectComponent implements ControlValueAccessor, FuiFormFieldControl, DoCheck, OnDestroy, AfterContentInit {
201
+ static nextId: number;
202
+ readonly controlType = "fui-select";
203
+ readonly placeholderInput: InputSignal<string>;
204
+ readonly disabledInput: InputSignal<boolean>;
205
+ readonly readonly: InputSignal<boolean>;
206
+ readonly multiple: InputSignal<boolean>;
207
+ readonly errorStateMatcher: InputSignal<ErrorStateMatcher | null>;
208
+ /**
209
+ * Whether to compare option values using object identity or deep equality
210
+ */
211
+ readonly compareWith: InputSignal<(o1: unknown, o2: unknown) => boolean>;
212
+ readonly valueChange: OutputEmitterRef<unknown>;
213
+ readonly selectionChange: OutputEmitterRef<FuiSelectChange>;
214
+ readonly openedChange: OutputEmitterRef<boolean>;
215
+ private readonly _value;
216
+ private readonly _focused;
217
+ private readonly _disabled;
218
+ readonly _readOnly: WritableSignal<boolean>;
219
+ readonly stateChanges: Subject<void>;
220
+ private _uid;
221
+ _ariaDescribedby: string | null;
222
+ private readonly _errorState;
223
+ readonly errorState: WritableSignal<boolean>;
224
+ private _parentForm;
225
+ private _parentFormGroup;
226
+ private _defaultErrorStateMatcher;
227
+ private readonly _ngControlRef;
228
+ get ngControl(): NgControl | null;
229
+ readonly placeholder: Signal<string>;
230
+ private readonly _required;
231
+ readonly required: WritableSignal<boolean>;
232
+ readonly value: WritableSignal<unknown>;
233
+ readonly focused: WritableSignal<boolean>;
234
+ private readonly _ngControlDisabled;
235
+ readonly disabled: Signal<boolean>;
236
+ readonly empty: Signal<boolean>;
237
+ readonly id: string;
238
+ trigger?: ElementRef<HTMLDivElement>;
239
+ panel?: ElementRef<HTMLDivElement>;
240
+ readonly options: Signal<readonly FuiOptionComponent[]>;
241
+ readonly panelOpen: WritableSignal<boolean>;
242
+ private readonly _activeOptionIndex;
243
+ readonly activeOptionIndex: Signal<number>;
244
+ readonly _liveAnnouncement: WritableSignal<string>;
245
+ private _overlayRef;
246
+ private _overlaySubscriptions;
247
+ private readonly _overlayService;
248
+ private readonly _elementRef;
249
+ private readonly _document;
250
+ private readonly _ngZone;
251
+ private _outsideClickSub?;
252
+ private _typeaheadBuffer;
253
+ private _typeaheadTimeout;
254
+ private readonly TYPE_AHEAD_DEBOUNCE;
255
+ private _onChange;
256
+ private _onTouched;
257
+ readonly displayValue: Signal<string>;
258
+ constructor();
259
+ ngDoCheck(): void;
260
+ ngOnDestroy(): void;
261
+ ngAfterContentInit(): void;
262
+ writeValue(value: unknown): void;
263
+ registerOnChange(fn: (value: unknown) => void): void;
264
+ registerOnTouched(fn: () => void): void;
265
+ setDisabledState(isDisabled: boolean): void;
266
+ onContainerClick(_event: MouseEvent): void;
267
+ setDescribedByIds(ids: string[]): void;
268
+ setReadOnly(readOnly: boolean): void;
269
+ private _syncOptionsSelection;
270
+ _onFocus(): void;
271
+ _onBlur(event?: FocusEvent): void;
272
+ focus(): void;
273
+ blur(): void;
274
+ toggle(): void;
275
+ open(): void;
276
+ close(restoreFocus?: boolean): void;
277
+ _onOptionSelected(option: FuiOptionComponent): void;
278
+ _getDisplayValue(): string;
279
+ _handleKeydown(event: KeyboardEvent): void;
280
+ private _handleClosedKeydown;
281
+ private _handleOpenKeydown;
282
+ private _setNextActiveOption;
283
+ private _setActiveOptionIndex;
284
+ private _setInitialActiveOption;
285
+ private _scrollToActiveOption;
286
+ private _handleTypeahead;
287
+ private _selectFirstOption;
288
+ private _selectLastOption;
289
+ private _getEnabledOptions;
290
+ private _listenForOutsideClicks;
291
+ private _createOverlay;
292
+ private _disposeOverlay;
293
+ _getActiveDescendant(): string | null;
294
+ /**
295
+ * Announces a message to screen readers via the aria-live region.
296
+ * Clears the message after a brief delay to allow repeated announcements.
297
+ */
298
+ private _announce;
299
+ get selected(): Signal<unknown>;
300
+ isArray(value: unknown): value is unknown[];
301
+ static ɵfac: i0.ɵɵFactoryDeclaration<FuiSelectComponent, never>;
302
+ static ɵcmp: i0.ɵɵComponentDeclaration<FuiSelectComponent, "fui-select", never, { "placeholderInput": { "alias": "placeholder"; "required": false; "isSignal": true; }; "disabledInput": { "alias": "disabled"; "required": false; "isSignal": true; }; "readonly": { "alias": "readonly"; "required": false; "isSignal": true; }; "multiple": { "alias": "multiple"; "required": false; "isSignal": true; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; "isSignal": true; }; "compareWith": { "alias": "compareWith"; "required": false; "isSignal": true; }; }, { "valueChange": "valueChange"; "selectionChange": "selectionChange"; "openedChange": "openedChange"; }, ["options"], ["*"], true, never>;
303
+ }
304
+
305
+ export { FUI_SELECT, FuiOptionComponent, FuiSelectComponent };
306
+ export type { FuiSelectChange, FuiSelectParent, FuiSelectSize, FuiSelectVariant };
307
+ //# sourceMappingURL=raintonic-formaui-components-select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raintonic-formaui-components-select.d.ts","sources":["../../../lib/components/select/option.component.ts","../../../lib/components/select/select-tokens.ts","../../../lib/components/select/select.component.ts"],"mappings":";;;;;;AAoBA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCG;AACH,cA+Ba,kBAAmB,YAAW,SAAS,EAAE,aAAa;;AAGjE;;AAEG;AACH,oBAAgB,WAAW;AAE3B;;;AAGG;AACH,uBAAmB,WAAW;AAE9B;;AAEG;AACH,8BAA0B,gBAAgB;gBAAW,kBAAkB;;AAAkB;AAGzF,wBAAoB,cAAc;AAClC,sBAAkB,cAAc;2BACX,OAAA;AAGrB;AAGA;;6BAMuB,cAAA;AAEvB;AAKA;;AAUA,wBAAoB,KAAK;AAgBzB;AAOA;AAIA;;AAEG;AACH;AAQA;;AAEG;AACH;AAQA;;AAEG;AACH;AAOA;;AAEG;AACH;AAOA;;AAEG;AACH;AAOA;;AAEG;AACH;AAIA;;AAEG;AACH,uBAAmB,WAAW;;AAK9B;;AAMA;yCAvJW,kBAAkB;2CAAlB,kBAAkB;AA0J9B;;AClPD;;;AAGG;UACc,eAAe;;AAE9B;AACD;AAED;;AAEG;AACH,cAAa,UAAU,EAAA,cAAA,CAAA,eAAA;;AC2BvB;;AAEG;AACG,KAAM,aAAa;AAEzB;;AAEG;KACS,gBAAgB;AAE5B;;AAEG;UACc,eAAe;YACtB,kBAAkB;;AAE3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DG;AACH,cAgCa,kBACX,YAAW,oBAAoB,EAAE,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB;;;AAO1F,+BAA2B,WAAW;AACtC,4BAAwB,WAAW;AACnC,uBAAmB,WAAW;AAC9B,uBAAmB,WAAW;gCACF,WAAW,CAAC,iBAAiB;AAEzD;;AAEG;AACH,0BAAsB,WAAW;AAKjC,0BAAsB,gBAAgB;AACtC,8BAA0B,gBAAgB,CAAC,eAAe;AAC1D,2BAAuB,gBAAgB;AAGvC;AACA;AACA;AACA,wBAAoB,cAAc;2BAGb,OAAA;;AAErB;AAGA;yBACmB,cAAA;;;;AAMnB;AACA,qBAAiB,SAAS;0BAKN,MAAA;AACpB;uBACiB,cAAA;oBAEH,cAAA;sBAEE,cAAA;AAEhB;uBACiB,MAAA;oBAEH,MAAA;;AAQ2B,cAAU,UAAU,CAAC,cAAc;AACrC,YAAQ,UAAU,CAAC,cAAc;sBAGxD,MAAA,UAAA,kBAAA;wBAGE,cAAA;AAGlB;gCAC0B,MAAA;AAG1B,gCAA4B,cAAc;;;AAO1C;AACA;AACA;AACA;;;;AAMA;;;AAWA,2BAAuB,MAAM;;AAqF7B;AAgBA;AASA;AAMA;;AAUA;AAIA;AAMA,6BAAyB,UAAU;AAMnC;AAIA;AAKA;AA6BA;AAKA,oBAAgB,UAAU;AAkB1B;AAIA;AAKA;AAUA;AAsBA;AAoBA,8BAA0B,kBAAkB;AAkD5C;AAKA,0BAAsB,aAAa;AAanC;AA6BA;AAgDA;AAkBA;AAwBA;AAuBA;AAyBA;AA2BA;AAQA;AAQA;AAKA;AAgCA;AAsDA;;AAkBA;;;AAGG;AACH;AASA,oBAAgB,MAAM;;yCAvwBX,kBAAkB;2CAAlB,kBAAkB;AA+wB9B;;;;","names":[]}
@@ -0,0 +1,51 @@
1
+ import * as _angular_core from '@angular/core';
2
+
3
+ /**
4
+ * @component FuiSidePanelComponent
5
+ * @selector fui-side-panel
6
+ * @description A slide-in side panel overlay with optional backdrop, focus trapping, and keyboard dismiss.
7
+ * Renders from the right edge of the viewport with configurable width and top offset.
8
+ *
9
+ * @input open - Whether the side panel is visible. Default false.
10
+ * @input title - Title text displayed in the panel header.
11
+ * @input width - CSS width of the panel. Default '500px'.
12
+ * @input hasBackdrop - Whether to show a backdrop behind the panel. Default true.
13
+ * @input topOffset - CSS top offset (e.g. to clear a fixed toolbar). Default '0px'.
14
+ * @input ariaLabel - ARIA label for the panel when no visible title is present.
15
+ * @input ariaLabelledBy - ID of an element that labels the panel.
16
+ * @output closed - Emits when the panel requests closing (close button, Escape, or backdrop click).
17
+ *
18
+ * @cssvar --_side-panel-top-offset - Internal CSS variable set from the topOffset input.
19
+ *
20
+ * @example
21
+ * <fui-side-panel [open]="isPanelOpen" title="Details" (closed)="isPanelOpen = false">
22
+ * <p>Panel content here.</p>
23
+ * </fui-side-panel>
24
+ */
25
+ declare class FuiSidePanelComponent {
26
+ private readonly _document;
27
+ readonly open: _angular_core.InputSignal<boolean>;
28
+ readonly title: _angular_core.InputSignal<string>;
29
+ readonly width: _angular_core.InputSignal<string>;
30
+ readonly hasBackdrop: _angular_core.InputSignal<boolean>;
31
+ readonly topOffset: _angular_core.InputSignal<string>;
32
+ /** ARIA label for the side panel, used when no visible title is present */
33
+ readonly ariaLabel: _angular_core.InputSignal<string | null>;
34
+ /** ID of an element that labels the side panel */
35
+ readonly ariaLabelledBy: _angular_core.InputSignal<string | null>;
36
+ readonly closed: _angular_core.OutputEmitterRef<void>;
37
+ private _panelElement?;
38
+ private _previouslyFocusedElement;
39
+ constructor();
40
+ onKeydown(event: KeyboardEvent): void;
41
+ close(): void;
42
+ private _saveFocusAndTrap;
43
+ private _restoreFocus;
44
+ private _focusFirstTabbable;
45
+ private _getFocusableElements;
46
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiSidePanelComponent, never>;
47
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiSidePanelComponent, "fui-side-panel", never, { "open": { "alias": "open"; "required": false; "isSignal": true; }; "title": { "alias": "title"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "hasBackdrop": { "alias": "hasBackdrop"; "required": false; "isSignal": true; }; "topOffset": { "alias": "topOffset"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "ariaLabelledBy": { "alias": "ariaLabelledBy"; "required": false; "isSignal": true; }; }, { "closed": "closed"; }, never, ["*", "[sidePanelFooter]"], true, never>;
48
+ }
49
+
50
+ export { FuiSidePanelComponent };
51
+ //# sourceMappingURL=raintonic-formaui-components-side-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raintonic-formaui-components-side-panel.d.ts","sources":["../../../lib/components/side-panel/side-panel.component.ts"],"mappings":";;AAeA;;;;;;;;;;;;;;;;;;;;;AAqBG;AACH,cAea,qBAAqB;AAChC;mBAEa,aAAA,CAAA,WAAA;oBACC,aAAA,CAAA,WAAA;oBACA,aAAA,CAAA,WAAA;0BACM,aAAA,CAAA,WAAA;wBACF,aAAA,CAAA,WAAA;;wBAGA,aAAA,CAAA,WAAA;;6BAGK,aAAA,CAAA,WAAA;qBAER,aAAA,CAAA,gBAAA;;;;AAoBf,qBAAiB,aAAa;AAmC9B;AAIA;AAQA;AAOA;AASA;oDAlGW,qBAAqB;sDAArB,qBAAqB;AAkHjC;;;;","names":[]}
@@ -0,0 +1,174 @@
1
+ import * as i0 from '@angular/core';
2
+ import { InputSignal, OutputEmitterRef, WritableSignal, Signal } from '@angular/core';
3
+
4
+ /**
5
+ * Sidebar mode type
6
+ */
7
+ type FuiSidebarMode = 'side' | 'over' | 'push';
8
+ /**
9
+ * Sidebar position type
10
+ */
11
+ type FuiSidebarPosition = 'start' | 'end';
12
+ /**
13
+ * Sidebar navigation item interface
14
+ */
15
+ interface FuiSidebarNavItem {
16
+ id: string;
17
+ label: string;
18
+ icon?: string;
19
+ route?: string;
20
+ active?: boolean;
21
+ disabled?: boolean;
22
+ children?: FuiSidebarNavItem[];
23
+ expanded?: boolean;
24
+ }
25
+ /**
26
+ * # FuiSidebar Component
27
+ *
28
+ * A flexible sidebar component following Carbon Design System principles.
29
+ * Provides navigation with Angular Material-like APIs and responsive behavior.
30
+ *
31
+ * ## Features
32
+ * - Multiple modes: side, over, push
33
+ * - Collapsible with toggle functionality
34
+ * - Hierarchical navigation support
35
+ * - Responsive behavior
36
+ * - Theme integration
37
+ * - Accessibility support
38
+ * - Custom content projection
39
+ *
40
+ * ## Usage
41
+ *
42
+ * ### Basic Sidebar
43
+ * ```html
44
+ * <fui-sidebar
45
+ * [opened]="sidebarOpen"
46
+ * [mode]="'side'"
47
+ * [navItems]="navigationItems"
48
+ * (openedChange)="onSidebarToggle($event)"
49
+ * (navItemClick)="onNavItemClick($event)">
50
+ *
51
+ * <div header>
52
+ * <h3>Navigation</h3>
53
+ * </div>
54
+ *
55
+ * <div footer>
56
+ * <p>Version 1.0.0</p>
57
+ * </div>
58
+ * </fui-sidebar>
59
+ * ```
60
+ *
61
+ * ### Responsive Sidebar
62
+ * ```html
63
+ * <fui-sidebar
64
+ * [opened]="sidebarOpen"
65
+ * [mode]="isDesktop ? 'side' : 'over'"
66
+ * [backdrop]="!isDesktop"
67
+ * [navItems]="navigationItems">
68
+ * </fui-sidebar>
69
+ * ```
70
+ *
71
+ * @example
72
+ * ```typescript
73
+ * import { FuiSidebarComponent, FuiSidebarNavItem } from '@raintonic/formaui/components/sidebar';
74
+ *
75
+ * @Component({
76
+ * standalone: true,
77
+ * imports: [FuiSidebarComponent],
78
+ * template: `
79
+ * <fui-sidebar
80
+ * [opened]="sidebarOpen"
81
+ * [mode]="sidebarMode"
82
+ * [navItems]="navItems"
83
+ * (openedChange)="onSidebarToggle($event)"
84
+ * (navItemClick)="onNavItemClick($event)">
85
+ *
86
+ * <div header class="sidebar-header">
87
+ * <h3>Holiday ERP</h3>
88
+ * </div>
89
+ * </fui-sidebar>
90
+ * `
91
+ * })
92
+ * export class AppLayoutComponent {
93
+ * sidebarOpen = true;
94
+ * sidebarMode: FuiSidebarMode = 'side';
95
+ *
96
+ * navItems: FuiSidebarNavItem[] = [
97
+ * { id: 'dashboard', label: 'Dashboard', icon: 'house', route: '/dashboard' },
98
+ * {
99
+ * id: 'sales',
100
+ * label: 'Sales',
101
+ * icon: 'shopping-cart',
102
+ * children: [
103
+ * { id: 'orders', label: 'Orders', route: '/sales/orders' },
104
+ * { id: 'invoices', label: 'Invoices', route: '/sales/invoices' },
105
+ * ]
106
+ * },
107
+ * { id: 'products', label: 'Products', icon: 'package', route: '/products' },
108
+ * ];
109
+ *
110
+ * onSidebarToggle(opened: boolean): void {
111
+ * this.sidebarOpen = opened;
112
+ * }
113
+ *
114
+ * onNavItemClick(item: FuiSidebarNavItem): void {
115
+ * console.log('Navigation item clicked:', item.id);
116
+ * }
117
+ * }
118
+ * ```
119
+ */
120
+ declare class FuiSidebarComponent {
121
+ readonly opened: InputSignal<boolean>;
122
+ readonly mode: InputSignal<FuiSidebarMode>;
123
+ readonly position: InputSignal<FuiSidebarPosition>;
124
+ readonly backdrop: InputSignal<boolean>;
125
+ readonly width: InputSignal<string>;
126
+ readonly navItems: InputSignal<FuiSidebarNavItem[]>;
127
+ readonly collapsible: InputSignal<boolean>;
128
+ readonly openedChange: OutputEmitterRef<boolean>;
129
+ readonly navItemClick: OutputEmitterRef<FuiSidebarNavItem>;
130
+ readonly backdropClick: OutputEmitterRef<void>;
131
+ readonly expandedItems: WritableSignal<Set<string>>;
132
+ readonly sidebarClasses: Signal<string>;
133
+ readonly backdropClasses: Signal<string>;
134
+ readonly sidebarStyles: Signal<Record<string, string>>;
135
+ /**
136
+ * Toggle sidebar open/closed state
137
+ */
138
+ toggle(): void;
139
+ /**
140
+ * Open the sidebar
141
+ */
142
+ open(): void;
143
+ /**
144
+ * Close the sidebar
145
+ */
146
+ close(): void;
147
+ /**
148
+ * Handle navigation item click
149
+ */
150
+ onNavItemClick(item: FuiSidebarNavItem): void;
151
+ /**
152
+ * Toggle expansion state of a navigation item
153
+ */
154
+ toggleItemExpansion(itemId: string): void;
155
+ /**
156
+ * Check if item is expanded
157
+ */
158
+ isItemExpanded(itemId: string): boolean;
159
+ /**
160
+ * Handle backdrop click
161
+ */
162
+ onBackdropClick(): void;
163
+ /**
164
+ * Get navigation item classes
165
+ */
166
+ getNavItemClasses(item: FuiSidebarNavItem, level?: number): string;
167
+ onEsc(): void;
168
+ static ɵfac: i0.ɵɵFactoryDeclaration<FuiSidebarComponent, never>;
169
+ static ɵcmp: i0.ɵɵComponentDeclaration<FuiSidebarComponent, "fui-sidebar", never, { "opened": { "alias": "opened"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "backdrop": { "alias": "backdrop"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "navItems": { "alias": "navItems"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; }, { "openedChange": "openedChange"; "navItemClick": "navItemClick"; "backdropClick": "backdropClick"; }, never, ["[header]", "*", "[footer]"], true, never>;
170
+ }
171
+
172
+ export { FuiSidebarComponent };
173
+ export type { FuiSidebarMode, FuiSidebarNavItem, FuiSidebarPosition };
174
+ //# sourceMappingURL=raintonic-formaui-components-sidebar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raintonic-formaui-components-sidebar.d.ts","sources":["../../../lib/components/sidebar/sidebar.component.ts"],"mappings":";;;AAiBA;;AAEG;AACG,KAAM,cAAc;AAE1B;;AAEG;KACS,kBAAkB;AAE9B;;AAEG;UACc,iBAAiB;;;;;;;AAOhC,eAAW,iBAAiB;;AAE7B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA8FG;AACH,cAkBa,mBAAmB;AAE9B,qBAAiB,WAAW;AAC5B,mBAAe,WAAW,CAAC,cAAc;AACzC,uBAAmB,WAAW,CAAC,kBAAkB;AACjD,uBAAmB,WAAW;AAC9B,oBAAgB,WAAW;uBACR,WAAW,CAAC,iBAAiB;AAChD,0BAAsB,WAAW;AAGjC,2BAAuB,gBAAgB;AACvC,2BAAuB,gBAAgB,CAAC,iBAAiB;AACzD,4BAAwB,gBAAgB;4BAGhB,cAAc,CAAC,GAAG;AAG1C,6BAAyB,MAAM;AAa/B,8BAA0B,MAAM;AAUhC,4BAAwB,MAAM,CAAC,MAAM;AAMrC;;AAEG;AACH;AAKA;;AAEG;AACH;AAMA;;AAEG;AACH;AAMA;;AAEG;AACH,yBAAqB,iBAAiB;AAkBtC;;AAEG;AACH;AAaA;;AAEG;AACH;AAIA;;AAEG;AACH;AAKA;;AAEG;4BACqB,iBAAiB;AA2BzC;yCA5JW,mBAAmB;2CAAnB,mBAAmB;AAiK/B;;;;","names":[]}
@@ -0,0 +1,20 @@
1
+ import * as _angular_core from '@angular/core';
2
+
3
+ type FuiSkeletonVariant = 'text' | 'circle' | 'rect';
4
+
5
+ declare class FuiSkeletonComponent {
6
+ readonly variant: _angular_core.InputSignal<FuiSkeletonVariant>;
7
+ readonly width: _angular_core.InputSignal<string | null>;
8
+ readonly height: _angular_core.InputSignal<string | null>;
9
+ readonly lines: _angular_core.InputSignal<number>;
10
+ readonly animated: _angular_core.InputSignal<boolean>;
11
+ readonly borderRadius: _angular_core.InputSignal<string | null>;
12
+ readonly computedStyles: _angular_core.Signal<Record<string, string>>;
13
+ readonly linesArray: _angular_core.Signal<number[]>;
14
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<FuiSkeletonComponent, never>;
15
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<FuiSkeletonComponent, "fui-skeleton", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "lines": { "alias": "lines"; "required": false; "isSignal": true; }; "animated": { "alias": "animated"; "required": false; "isSignal": true; }; "borderRadius": { "alias": "borderRadius"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
16
+ }
17
+
18
+ export { FuiSkeletonComponent };
19
+ export type { FuiSkeletonVariant };
20
+ //# sourceMappingURL=raintonic-formaui-components-skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"raintonic-formaui-components-skeleton.d.ts","sources":["../../../lib/components/skeleton/skeleton.types.ts","../../../lib/components/skeleton/skeleton.component.ts"],"mappings":";;AAAM,KAAM,kBAAkB;;ACG9B,cAkBa,oBAAoB;sBACf,aAAA,CAAA,WAAA,CAAA,kBAAA;oBACF,aAAA,CAAA,WAAA;qBACC,aAAA,CAAA,WAAA;oBACD,aAAA,CAAA,WAAA;uBACG,aAAA,CAAA,WAAA;2BACI,aAAA,CAAA,WAAA;6BAEE,aAAA,CAAA,MAAA,CAAA,MAAA;yBAmBJ,aAAA,CAAA,MAAA;oDA3BR,oBAAoB;sDAApB,oBAAoB;AA4BhC;;;;","names":[]}