@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
package/llms.txt ADDED
@@ -0,0 +1,60 @@
1
+ # FormaUI
2
+
3
+ > Angular 21 component library with 44+ standalone UI components, CDK layer, services, and theming system.
4
+
5
+ ## Install
6
+
7
+ npm install formaui
8
+
9
+ ## Components
10
+
11
+ - accordion: Groups multiple `fui-expansion-panel` components. In single mode (default), only one panel can be expanded at a time. In `import { FuiAccordionComponent } from 'formaui/components/accordion'`
12
+ - alert: A flexible alert component for displaying informational messages, warnings, errors, and success notifications. Can be us `import { FuiAlertComponent } from 'formaui/components/alert'`
13
+ - autocomplete: An autocomplete component designed to work seamlessly with fui-form-field. Similar to Angular Material's mat-autocomplet `import { FuiAutocompleteComponent } from 'formaui/components/autocomplete'`
14
+ - avatar: No description available. `import { FuiAvatarComponent } from 'formaui/components/avatar'`
15
+ - badge: No description available. `import { FuiBadgeComponent } from 'formaui/components/badge'`
16
+ - big-menu: No description available. `import { FuiBigMenuComponent } from 'formaui/components/big-menu'`
17
+ - breadcrumb: No description available. `import { FuiBreadcrumbComponent } from 'formaui/components/breadcrumb'`
18
+ - button: A versatile button directive for triggering user actions. Supports multiple visual variants, sizes, loading states, and `import { FuiButtonDirective } from 'formaui/components/button'`
19
+ - button-group: A container component that groups multiple buttons together, creating a unified visual element with connected borders. F `import { FuiButtonGroupComponent } from 'formaui/components/button-group'`
20
+ - card: A flexible container component following Carbon Design System patterns. Provides a structured layout with optional heade `import { FuiCardComponent } from 'formaui/components/card'`
21
+ - checkbox: A checkbox component with full Angular Reactive Forms support. Compatible with Angular Material's mat-checkbox interface `import { FuiCheckboxComponent } from 'formaui/components/checkbox'`
22
+ - data-table: No description available. `import { FuiAdvancedDataTableComponent } from 'formaui/components/data-table'`
23
+ - date-picker: No description available. `import { FuiDatePickerComponent } from 'formaui/components/date-picker'`
24
+ - divider: No description available. `import { FuiDividerComponent } from 'formaui/components/divider'`
25
+ - drawer: No description available. `import { FuiDrawerComponent } from 'formaui/components/drawer'`
26
+ - dynamic-form: A component that automatically renders forms based on a JSON configuration. It takes a FormGroup and a configuration obj `import { FuiDynamicFormRendererComponent } from 'formaui/components/dynamic-form'`
27
+ - empty-state: No description available. `import { FuiEmptyStateComponent } from 'formaui/components/empty-state'`
28
+ - file-upload: A file upload component with drag-and-drop support, file previews, and validation. `import { FuiFileUploadComponent } from 'formaui/components/file-upload'`
29
+ - form-field: A wrapper component that provides consistent layout, labeling, validation, and accessibility for form controls. Works wi `import { FuiFormFieldComponent } from 'formaui/components/form-field'`
30
+ - icon: A wrapper component for Phosphor Icons with consistent sizing and styling. Provides easy access to the complete Phosphor `import { FuiIconComponent } from 'formaui/components/icon'`
31
+ - input: An input directive that integrates seamlessly with fui-form-field and Angular Forms. Follows Angular Material patterns w `import { FuiInputDirective } from 'formaui/components/input'`
32
+ - list: No description available. `import { FuiListComponent } from 'formaui/components/list'`
33
+ - menu: A dropdown menu component that provides a list of options or actions. Designed to work with external triggers using the `import { FuiMenuComponent } from 'formaui/components/menu'`
34
+ - number-input: A numeric input component with increment/decrement buttons, full Angular Reactive Forms support, and FormField integrati `import { FuiNumberInputComponent } from 'formaui/components/number-input'`
35
+ - paginator: A pagination component that handles navigation through pages with: - Previous/Next navigation buttons (disabled at bound `import { FuiPaginatorComponent } from 'formaui/components/paginator'`
36
+ - password-input: A password input component with visibility toggle and optional strength meter. Integrates with fui-form-field and Angula `import { FuiPasswordInputComponent } from 'formaui/components/password-input'`
37
+ - popover: Internal popover container component rendered inside the overlay. Provides a styled panel with optional arrow indicator. `import { FuiPopoverComponent } from 'formaui/components/popover'`
38
+ - progressbar: A progress bar component compatible with Angular Material's mat-progress-bar interface. `import { FuiProgressbarComponent } from 'formaui/components/progressbar'`
39
+ - radio: No description available. `import { FuiRadioButtonComponent } from 'formaui/components/radio'`
40
+ - select: A dropdown select component for single or multiple selection. Designed to work inside `fui-form-field` with full Reactiv `import { FuiSelectComponent } from 'formaui/components/select'`
41
+ - side-panel: No description available. `import { FuiSidePanelComponent } from 'formaui/components/side-panel'`
42
+ - sidebar: A flexible sidebar component following Carbon Design System principles. Provides navigation with Angular Material-like A `import { FuiSidebarComponent } from 'formaui/components/sidebar'`
43
+ - skeleton: No description available. `import { FuiSkeletonComponent } from 'formaui/components/skeleton'`
44
+ - slider: A slider (range input) component with single and dual-thumb (range) support. Integrates with Angular Reactive Forms via `import { FuiSliderComponent } from 'formaui/components/slider'`
45
+ - spinner: No description available. `import { FuiSpinnerComponent } from 'formaui/components/spinner'`
46
+ - stepper: A stepper component that guides users through a sequence of steps. Supports horizontal and vertical orientations, linear `import { FuiStepperComponent } from 'formaui/components/stepper'`
47
+ - tab: No description available. `import { FuiTabComponent } from 'formaui/components/tab'`
48
+ - tag: No description available. `import { FuiTagComponent } from 'formaui/components/tag'`
49
+ - time-picker: No description available. `import { FuiTimePickerComponent } from 'formaui/components/time-picker'`
50
+ - toggle: No description available. `import { FuiToggleComponent } from 'formaui/components/toggle'`
51
+ - toolbar: A top navigation toolbar following Carbon Design System principles. Provides space for logo, navigation menu items, and `import { FuiToolbarComponent } from 'formaui/components/toolbar'`
52
+ - tooltip: No description available. `import { FuiTooltipComponent } from 'formaui/components/tooltip'`
53
+ - tree: No description available. `import { FuiTreeNodeComponent } from 'formaui/components/tree'`
54
+ - tree-select: No description available. `import { FuiTreeSelectComponent } from 'formaui/components/tree-select'`
55
+ - tree-table: No description available. `import { FuiTreeTableComponent } from 'formaui/components/tree-table'`
56
+
57
+ ## Design Tokens
58
+
59
+ CSS custom properties prefixed with `--fui-*`. Themes: light (default), dark.
60
+ Key token groups: primary, secondary, danger, success, warning, info, pink, orange, tomato, white, black, text, border, surface, bg, state, field, icon, background, error, card.
package/package.json ADDED
@@ -0,0 +1,251 @@
1
+ {
2
+ "name": "@raintonic/formaui",
3
+ "version": "0.2.0",
4
+ "description": "A modern Angular UI component library with theming support",
5
+ "license": "MIT",
6
+ "keywords": [
7
+ "angular",
8
+ "ui",
9
+ "components",
10
+ "library",
11
+ "formaui",
12
+ "design-system"
13
+ ],
14
+ "peerDependencies": {
15
+ "@angular/common": "^21.0.0",
16
+ "@angular/core": "^21.0.0",
17
+ "@angular/forms": "^21.0.0"
18
+ },
19
+ "sideEffects": false,
20
+ "module": "fesm2022/raintonic-formaui.mjs",
21
+ "typings": "types/raintonic-formaui.d.ts",
22
+ "exports": {
23
+ "./package.json": {
24
+ "default": "./package.json"
25
+ },
26
+ ".": {
27
+ "types": "./types/raintonic-formaui.d.ts",
28
+ "default": "./fesm2022/raintonic-formaui.mjs"
29
+ },
30
+ "./cdk/drag-drop": {
31
+ "types": "./types/raintonic-formaui-cdk-drag-drop.d.ts",
32
+ "default": "./fesm2022/raintonic-formaui-cdk-drag-drop.mjs"
33
+ },
34
+ "./cdk/form-field": {
35
+ "types": "./types/raintonic-formaui-cdk-form-field.d.ts",
36
+ "default": "./fesm2022/raintonic-formaui-cdk-form-field.mjs"
37
+ },
38
+ "./cdk/overlay": {
39
+ "types": "./types/raintonic-formaui-cdk-overlay.d.ts",
40
+ "default": "./fesm2022/raintonic-formaui-cdk-overlay.mjs"
41
+ },
42
+ "./cdk/virtual-scroll": {
43
+ "types": "./types/raintonic-formaui-cdk-virtual-scroll.d.ts",
44
+ "default": "./fesm2022/raintonic-formaui-cdk-virtual-scroll.mjs"
45
+ },
46
+ "./components/accordion": {
47
+ "types": "./types/raintonic-formaui-components-accordion.d.ts",
48
+ "default": "./fesm2022/raintonic-formaui-components-accordion.mjs"
49
+ },
50
+ "./components/alert": {
51
+ "types": "./types/raintonic-formaui-components-alert.d.ts",
52
+ "default": "./fesm2022/raintonic-formaui-components-alert.mjs"
53
+ },
54
+ "./components/autocomplete": {
55
+ "types": "./types/raintonic-formaui-components-autocomplete.d.ts",
56
+ "default": "./fesm2022/raintonic-formaui-components-autocomplete.mjs"
57
+ },
58
+ "./components/avatar": {
59
+ "types": "./types/raintonic-formaui-components-avatar.d.ts",
60
+ "default": "./fesm2022/raintonic-formaui-components-avatar.mjs"
61
+ },
62
+ "./components/badge": {
63
+ "types": "./types/raintonic-formaui-components-badge.d.ts",
64
+ "default": "./fesm2022/raintonic-formaui-components-badge.mjs"
65
+ },
66
+ "./components/big-menu": {
67
+ "types": "./types/raintonic-formaui-components-big-menu.d.ts",
68
+ "default": "./fesm2022/raintonic-formaui-components-big-menu.mjs"
69
+ },
70
+ "./components/breadcrumb": {
71
+ "types": "./types/raintonic-formaui-components-breadcrumb.d.ts",
72
+ "default": "./fesm2022/raintonic-formaui-components-breadcrumb.mjs"
73
+ },
74
+ "./components/button": {
75
+ "types": "./types/raintonic-formaui-components-button.d.ts",
76
+ "default": "./fesm2022/raintonic-formaui-components-button.mjs"
77
+ },
78
+ "./components/button-group": {
79
+ "types": "./types/raintonic-formaui-components-button-group.d.ts",
80
+ "default": "./fesm2022/raintonic-formaui-components-button-group.mjs"
81
+ },
82
+ "./components/card": {
83
+ "types": "./types/raintonic-formaui-components-card.d.ts",
84
+ "default": "./fesm2022/raintonic-formaui-components-card.mjs"
85
+ },
86
+ "./components/checkbox": {
87
+ "types": "./types/raintonic-formaui-components-checkbox.d.ts",
88
+ "default": "./fesm2022/raintonic-formaui-components-checkbox.mjs"
89
+ },
90
+ "./components/data-table": {
91
+ "types": "./types/raintonic-formaui-components-data-table.d.ts",
92
+ "default": "./fesm2022/raintonic-formaui-components-data-table.mjs"
93
+ },
94
+ "./components/date-picker": {
95
+ "types": "./types/raintonic-formaui-components-date-picker.d.ts",
96
+ "default": "./fesm2022/raintonic-formaui-components-date-picker.mjs"
97
+ },
98
+ "./components/divider": {
99
+ "types": "./types/raintonic-formaui-components-divider.d.ts",
100
+ "default": "./fesm2022/raintonic-formaui-components-divider.mjs"
101
+ },
102
+ "./components/drawer": {
103
+ "types": "./types/raintonic-formaui-components-drawer.d.ts",
104
+ "default": "./fesm2022/raintonic-formaui-components-drawer.mjs"
105
+ },
106
+ "./components/dynamic-form": {
107
+ "types": "./types/raintonic-formaui-components-dynamic-form.d.ts",
108
+ "default": "./fesm2022/raintonic-formaui-components-dynamic-form.mjs"
109
+ },
110
+ "./components/empty-state": {
111
+ "types": "./types/raintonic-formaui-components-empty-state.d.ts",
112
+ "default": "./fesm2022/raintonic-formaui-components-empty-state.mjs"
113
+ },
114
+ "./components/file-upload": {
115
+ "types": "./types/raintonic-formaui-components-file-upload.d.ts",
116
+ "default": "./fesm2022/raintonic-formaui-components-file-upload.mjs"
117
+ },
118
+ "./components/form-field": {
119
+ "types": "./types/raintonic-formaui-components-form-field.d.ts",
120
+ "default": "./fesm2022/raintonic-formaui-components-form-field.mjs"
121
+ },
122
+ "./components/icon": {
123
+ "types": "./types/raintonic-formaui-components-icon.d.ts",
124
+ "default": "./fesm2022/raintonic-formaui-components-icon.mjs"
125
+ },
126
+ "./components/input": {
127
+ "types": "./types/raintonic-formaui-components-input.d.ts",
128
+ "default": "./fesm2022/raintonic-formaui-components-input.mjs"
129
+ },
130
+ "./components/list": {
131
+ "types": "./types/raintonic-formaui-components-list.d.ts",
132
+ "default": "./fesm2022/raintonic-formaui-components-list.mjs"
133
+ },
134
+ "./components/menu": {
135
+ "types": "./types/raintonic-formaui-components-menu.d.ts",
136
+ "default": "./fesm2022/raintonic-formaui-components-menu.mjs"
137
+ },
138
+ "./components/number-input": {
139
+ "types": "./types/raintonic-formaui-components-number-input.d.ts",
140
+ "default": "./fesm2022/raintonic-formaui-components-number-input.mjs"
141
+ },
142
+ "./components/paginator": {
143
+ "types": "./types/raintonic-formaui-components-paginator.d.ts",
144
+ "default": "./fesm2022/raintonic-formaui-components-paginator.mjs"
145
+ },
146
+ "./components/password-input": {
147
+ "types": "./types/raintonic-formaui-components-password-input.d.ts",
148
+ "default": "./fesm2022/raintonic-formaui-components-password-input.mjs"
149
+ },
150
+ "./components/popover": {
151
+ "types": "./types/raintonic-formaui-components-popover.d.ts",
152
+ "default": "./fesm2022/raintonic-formaui-components-popover.mjs"
153
+ },
154
+ "./components/progressbar": {
155
+ "types": "./types/raintonic-formaui-components-progressbar.d.ts",
156
+ "default": "./fesm2022/raintonic-formaui-components-progressbar.mjs"
157
+ },
158
+ "./components/radio": {
159
+ "types": "./types/raintonic-formaui-components-radio.d.ts",
160
+ "default": "./fesm2022/raintonic-formaui-components-radio.mjs"
161
+ },
162
+ "./components/select": {
163
+ "types": "./types/raintonic-formaui-components-select.d.ts",
164
+ "default": "./fesm2022/raintonic-formaui-components-select.mjs"
165
+ },
166
+ "./components/side-panel": {
167
+ "types": "./types/raintonic-formaui-components-side-panel.d.ts",
168
+ "default": "./fesm2022/raintonic-formaui-components-side-panel.mjs"
169
+ },
170
+ "./components/sidebar": {
171
+ "types": "./types/raintonic-formaui-components-sidebar.d.ts",
172
+ "default": "./fesm2022/raintonic-formaui-components-sidebar.mjs"
173
+ },
174
+ "./components/skeleton": {
175
+ "types": "./types/raintonic-formaui-components-skeleton.d.ts",
176
+ "default": "./fesm2022/raintonic-formaui-components-skeleton.mjs"
177
+ },
178
+ "./components/slider": {
179
+ "types": "./types/raintonic-formaui-components-slider.d.ts",
180
+ "default": "./fesm2022/raintonic-formaui-components-slider.mjs"
181
+ },
182
+ "./components/spinner": {
183
+ "types": "./types/raintonic-formaui-components-spinner.d.ts",
184
+ "default": "./fesm2022/raintonic-formaui-components-spinner.mjs"
185
+ },
186
+ "./components/stepper": {
187
+ "types": "./types/raintonic-formaui-components-stepper.d.ts",
188
+ "default": "./fesm2022/raintonic-formaui-components-stepper.mjs"
189
+ },
190
+ "./components/tab": {
191
+ "types": "./types/raintonic-formaui-components-tab.d.ts",
192
+ "default": "./fesm2022/raintonic-formaui-components-tab.mjs"
193
+ },
194
+ "./components/tag": {
195
+ "types": "./types/raintonic-formaui-components-tag.d.ts",
196
+ "default": "./fesm2022/raintonic-formaui-components-tag.mjs"
197
+ },
198
+ "./components/time-picker": {
199
+ "types": "./types/raintonic-formaui-components-time-picker.d.ts",
200
+ "default": "./fesm2022/raintonic-formaui-components-time-picker.mjs"
201
+ },
202
+ "./components/toggle": {
203
+ "types": "./types/raintonic-formaui-components-toggle.d.ts",
204
+ "default": "./fesm2022/raintonic-formaui-components-toggle.mjs"
205
+ },
206
+ "./components/toolbar": {
207
+ "types": "./types/raintonic-formaui-components-toolbar.d.ts",
208
+ "default": "./fesm2022/raintonic-formaui-components-toolbar.mjs"
209
+ },
210
+ "./components/tooltip": {
211
+ "types": "./types/raintonic-formaui-components-tooltip.d.ts",
212
+ "default": "./fesm2022/raintonic-formaui-components-tooltip.mjs"
213
+ },
214
+ "./components/tree": {
215
+ "types": "./types/raintonic-formaui-components-tree.d.ts",
216
+ "default": "./fesm2022/raintonic-formaui-components-tree.mjs"
217
+ },
218
+ "./components/tree-select": {
219
+ "types": "./types/raintonic-formaui-components-tree-select.d.ts",
220
+ "default": "./fesm2022/raintonic-formaui-components-tree-select.mjs"
221
+ },
222
+ "./components/tree-table": {
223
+ "types": "./types/raintonic-formaui-components-tree-table.d.ts",
224
+ "default": "./fesm2022/raintonic-formaui-components-tree-table.mjs"
225
+ },
226
+ "./core": {
227
+ "types": "./types/raintonic-formaui-core.d.ts",
228
+ "default": "./fesm2022/raintonic-formaui-core.mjs"
229
+ },
230
+ "./services/dialog": {
231
+ "types": "./types/raintonic-formaui-services-dialog.d.ts",
232
+ "default": "./fesm2022/raintonic-formaui-services-dialog.mjs"
233
+ },
234
+ "./services/notification": {
235
+ "types": "./types/raintonic-formaui-services-notification.d.ts",
236
+ "default": "./fesm2022/raintonic-formaui-services-notification.mjs"
237
+ },
238
+ "./services/theme": {
239
+ "types": "./types/raintonic-formaui-services-theme.d.ts",
240
+ "default": "./fesm2022/raintonic-formaui-services-theme.mjs"
241
+ },
242
+ "./test-utils": {
243
+ "types": "./types/raintonic-formaui-test-utils.d.ts",
244
+ "default": "./fesm2022/raintonic-formaui-test-utils.mjs"
245
+ }
246
+ },
247
+ "type": "module",
248
+ "dependencies": {
249
+ "tslib": "^2.3.0"
250
+ }
251
+ }
@@ -0,0 +1,3 @@
1
+ // Opt-in font entry point.
2
+ // Import this file in your app's styles.scss to include self-hosted @font-face declarations.
3
+ @use './partials/fonts';
@@ -0,0 +1,127 @@
1
+ // FormaUI - Main Styles Entry Point
2
+ // Import order is important for proper cascade
3
+
4
+ // 1. Constants and configuration
5
+ @forward './partials/constants';
6
+
7
+ // 2. Mixins and functions
8
+ @forward './partials/mixins';
9
+
10
+ // 3. Theme system (includes CSS variables)
11
+ @forward './partials/theme';
12
+
13
+ // 4. Typography system
14
+ @forward './partials/typography';
15
+
16
+ // 5. Motion system
17
+ @forward './partials/motion';
18
+
19
+ // 6. Grid system
20
+ @forward './partials/grid';
21
+
22
+ // 7. Utility classes
23
+ @forward './partials/utilities';
24
+
25
+ // 8. Component global styles
26
+ @use '../components/button/button.directive';
27
+ @use '../cdk/overlay/overlay';
28
+ @use '../services/dialog/dialog';
29
+
30
+ // Use the modules for this file's styles
31
+ @use './partials/mixins' as *;
32
+ @use './partials/constants' as *;
33
+
34
+ // Fonts are now opt-in. Import directly in your app's styles.scss:
35
+ // @use "@formaui/styles/fonts-entry";
36
+ // @use "./partials/fonts";
37
+
38
+ // Base reset and normalization
39
+ *,
40
+ *::before,
41
+ *::after {
42
+ box-sizing: border-box;
43
+ }
44
+
45
+ * {
46
+ margin: 0;
47
+ padding: 0;
48
+ outline: none;
49
+ }
50
+
51
+ html {
52
+ font-family: var(--fui-font-family-sans);
53
+ line-height: 1.5;
54
+ -webkit-text-size-adjust: 100%;
55
+ -moz-tab-size: 4;
56
+ tab-size: 4;
57
+ }
58
+
59
+ body {
60
+ margin: 0;
61
+ font-family: inherit;
62
+ line-height: inherit;
63
+ color: var(--fui-text-primary);
64
+ background-color: var(--fui-surface-00);
65
+
66
+ // Dialog overlay support
67
+ &.fui-dialog-open {
68
+ overflow: hidden;
69
+ }
70
+ }
71
+
72
+ // Focus management
73
+ button:focus-visible,
74
+ [role='button']:focus-visible,
75
+ a:focus-visible,
76
+ input:focus-visible,
77
+ select:focus-visible,
78
+ textarea:focus-visible {
79
+ @include fui-focus-ring();
80
+ }
81
+
82
+ // Remove default button styles
83
+ button {
84
+ @include fui-button-reset();
85
+ }
86
+
87
+ // Link styles
88
+ a {
89
+ color: var(--fui-primary);
90
+ text-decoration: none;
91
+
92
+ &:hover {
93
+ color: var(--fui-primary-hover);
94
+ text-decoration: underline;
95
+ }
96
+
97
+ &:focus-visible {
98
+ @include fui-focus-ring();
99
+ }
100
+ }
101
+
102
+ // Form elements base styles
103
+ input,
104
+ textarea,
105
+ select {
106
+ font-family: inherit;
107
+ font-size: inherit;
108
+ line-height: inherit;
109
+ margin: 0;
110
+ }
111
+
112
+ // Accessibility improvements
113
+ .fui-sr-only {
114
+ @include fui-visually-hidden();
115
+ }
116
+
117
+ // Reduced motion support
118
+ @media (prefers-reduced-motion: reduce) {
119
+ *,
120
+ *::before,
121
+ *::after {
122
+ animation-duration: 0.01ms !important;
123
+ animation-iteration-count: 1 !important;
124
+ transition-duration: 0.01ms !important;
125
+ scroll-behavior: auto !important;
126
+ }
127
+ }
@@ -0,0 +1,29 @@
1
+ // Design tokens and constants
2
+ // Based on Carbon Design System principles
3
+
4
+ // Spacing scale (rem units)
5
+ $fui-spacing-01: 0.125rem; // 2px
6
+ $fui-spacing-02: 0.25rem; // 4px
7
+ $fui-spacing-03: 0.5rem; // 8px
8
+ $fui-spacing-04: 0.75rem; // 12px
9
+ $fui-spacing-05: 1rem; // 16px
10
+ $fui-spacing-06: 1.5rem; // 24px
11
+ $fui-spacing-07: 2rem; // 32px
12
+ $fui-spacing-08: 2.5rem; // 40px
13
+ $fui-spacing-09: 3rem; // 48px
14
+ $fui-spacing-10: 4rem; // 64px
15
+ $fui-spacing-11: 5rem; // 80px
16
+ $fui-spacing-12: 6rem; // 96px
17
+
18
+ // Layout constants
19
+ $fui-grid-columns: 12;
20
+ $fui-grid-gutter: $fui-spacing-05;
21
+ $fui-container-max-width: 1200px;
22
+
23
+ // Breakpoints
24
+ $fui-breakpoint-xs: 0;
25
+ $fui-breakpoint-sm: 576px;
26
+ $fui-breakpoint-md: 768px;
27
+ $fui-breakpoint-lg: 992px;
28
+ $fui-breakpoint-xl: 1200px;
29
+ $fui-breakpoint-xxl: 1400px;
@@ -0,0 +1,36 @@
1
+ // Self-hosted fonts — eliminates render-blocking Google Fonts dependency
2
+
3
+ // Inter Tight — variable weight (100-900), latin subset
4
+ @font-face {
5
+ font-family: 'Inter Tight';
6
+ font-style: normal;
7
+ font-weight: 100 900;
8
+ font-display: swap;
9
+ src: url('../fonts/inter-tight-latin.woff2') format('woff2');
10
+ unicode-range:
11
+ U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
12
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
13
+ }
14
+
15
+ @font-face {
16
+ font-family: 'Inter Tight';
17
+ font-style: italic;
18
+ font-weight: 100 900;
19
+ font-display: swap;
20
+ src: url('../fonts/inter-tight-latin-italic.woff2') format('woff2');
21
+ unicode-range:
22
+ U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
23
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
24
+ }
25
+
26
+ // DM Mono — regular (400) only, latin subset
27
+ @font-face {
28
+ font-family: 'DM Mono';
29
+ font-style: normal;
30
+ font-weight: 400;
31
+ font-display: swap;
32
+ src: url('../fonts/dm-mono-400-latin.woff2') format('woff2');
33
+ unicode-range:
34
+ U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191,
35
+ U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
36
+ }