@proyecto-viviana/ui 0.3.5 → 0.4.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 (438) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +80 -157
  3. package/dist/ActionButton.d.ts +2 -0
  4. package/dist/ActionButton.d.ts.map +1 -0
  5. package/dist/ActionButton.js +1 -0
  6. package/dist/ActionButton.jsx +1 -0
  7. package/dist/ActionMenu.d.ts +2 -0
  8. package/dist/ActionMenu.d.ts.map +1 -0
  9. package/dist/ActionMenu.js +1 -0
  10. package/dist/ActionMenu.jsx +1 -0
  11. package/dist/Breadcrumbs.d.ts +2 -0
  12. package/dist/Breadcrumbs.d.ts.map +1 -0
  13. package/dist/Breadcrumbs.js +1 -0
  14. package/dist/Breadcrumbs.jsx +1 -0
  15. package/dist/Button.d.ts +2 -0
  16. package/dist/Button.d.ts.map +1 -0
  17. package/dist/Button.js +1 -0
  18. package/dist/Button.jsx +1 -0
  19. package/dist/Calendar.d.ts +2 -0
  20. package/dist/Calendar.d.ts.map +1 -0
  21. package/dist/Calendar.js +1 -0
  22. package/dist/Calendar.jsx +1 -0
  23. package/dist/CalendarCard.d.ts +2 -0
  24. package/dist/CalendarCard.d.ts.map +1 -0
  25. package/dist/CalendarCard.js +97 -0
  26. package/dist/CalendarCard.js.map +1 -0
  27. package/dist/CalendarCard.jsx +51 -0
  28. package/dist/CalendarCard.jsx.map +1 -0
  29. package/dist/Card.d.ts +2 -0
  30. package/dist/Card.d.ts.map +1 -0
  31. package/dist/Card.js +1 -0
  32. package/dist/Card.jsx +1 -0
  33. package/dist/CardView.d.ts +2 -0
  34. package/dist/CardView.d.ts.map +1 -0
  35. package/dist/CardView.js +1 -0
  36. package/dist/CardView.jsx +1 -0
  37. package/dist/CenterBaseline.d.ts +2 -0
  38. package/dist/CenterBaseline.d.ts.map +1 -0
  39. package/dist/CenterBaseline.js +1 -0
  40. package/dist/CenterBaseline.jsx +1 -0
  41. package/dist/Chip.d.ts +2 -0
  42. package/dist/Chip.d.ts.map +1 -0
  43. package/dist/Chip.js +2 -0
  44. package/dist/Chip.jsx +2 -0
  45. package/dist/ColorArea.d.ts +2 -0
  46. package/dist/ColorArea.d.ts.map +1 -0
  47. package/dist/ColorArea.js +1 -0
  48. package/dist/ColorArea.jsx +1 -0
  49. package/dist/ColorField.d.ts +2 -0
  50. package/dist/ColorField.d.ts.map +1 -0
  51. package/dist/ColorField.js +1 -0
  52. package/dist/ColorField.jsx +1 -0
  53. package/dist/ColorSlider.d.ts +2 -0
  54. package/dist/ColorSlider.d.ts.map +1 -0
  55. package/dist/ColorSlider.js +1 -0
  56. package/dist/ColorSlider.jsx +1 -0
  57. package/dist/ColorSwatch.d.ts +2 -0
  58. package/dist/ColorSwatch.d.ts.map +1 -0
  59. package/dist/ColorSwatch.js +1 -0
  60. package/dist/ColorSwatch.jsx +1 -0
  61. package/dist/ColorSwatchPicker.d.ts +2 -0
  62. package/dist/ColorSwatchPicker.d.ts.map +1 -0
  63. package/dist/ColorSwatchPicker.js +1 -0
  64. package/dist/ColorSwatchPicker.jsx +1 -0
  65. package/dist/ColorWheel.d.ts +2 -0
  66. package/dist/ColorWheel.d.ts.map +1 -0
  67. package/dist/ColorWheel.js +1 -0
  68. package/dist/ColorWheel.jsx +1 -0
  69. package/dist/ContrastIcon.d.ts +3 -0
  70. package/dist/ContrastIcon.d.ts.map +1 -0
  71. package/dist/ContrastIcon.js +3 -0
  72. package/dist/ContrastIcon.jsx +3 -0
  73. package/dist/Conversation.d.ts +2 -0
  74. package/dist/Conversation.d.ts.map +1 -0
  75. package/dist/Conversation.js +177 -0
  76. package/dist/Conversation.js.map +1 -0
  77. package/dist/Conversation.jsx +107 -0
  78. package/dist/Conversation.jsx.map +1 -0
  79. package/dist/Disclosure.d.ts +2 -0
  80. package/dist/Disclosure.d.ts.map +1 -0
  81. package/dist/Disclosure.js +1 -0
  82. package/dist/Disclosure.jsx +1 -0
  83. package/dist/EventCard.d.ts +2 -0
  84. package/dist/EventCard.d.ts.map +1 -0
  85. package/dist/EventCard.js +173 -0
  86. package/dist/EventCard.js.map +1 -0
  87. package/dist/EventCard.jsx +96 -0
  88. package/dist/EventCard.jsx.map +1 -0
  89. package/dist/FileTrigger.d.ts +2 -0
  90. package/dist/FileTrigger.d.ts.map +1 -0
  91. package/dist/FileTrigger.js +1 -0
  92. package/dist/FileTrigger.jsx +1 -0
  93. package/dist/GitHubIcon.d.ts +2 -0
  94. package/dist/GitHubIcon.d.ts.map +1 -0
  95. package/dist/GitHubIcon.js +1 -0
  96. package/dist/GitHubIcon.jsx +1 -0
  97. package/dist/LightenIcon.d.ts +3 -0
  98. package/dist/LightenIcon.d.ts.map +1 -0
  99. package/dist/LightenIcon.js +3 -0
  100. package/dist/LightenIcon.jsx +3 -0
  101. package/dist/LinkButton.d.ts +2 -0
  102. package/dist/LinkButton.d.ts.map +1 -0
  103. package/dist/LinkButton.js +1 -0
  104. package/dist/LinkButton.jsx +1 -0
  105. package/dist/ListView.d.ts +2 -0
  106. package/dist/ListView.d.ts.map +1 -0
  107. package/dist/ListView.js +1 -0
  108. package/dist/ListView.jsx +1 -0
  109. package/dist/Logo.d.ts +2 -0
  110. package/dist/Logo.d.ts.map +1 -0
  111. package/dist/Logo.js +116 -0
  112. package/dist/Logo.js.map +1 -0
  113. package/dist/Logo.jsx +101 -0
  114. package/dist/Logo.jsx.map +1 -0
  115. package/dist/Menu.d.ts +2 -0
  116. package/dist/Menu.d.ts.map +1 -0
  117. package/dist/Menu.js +1 -0
  118. package/dist/Menu.jsx +1 -0
  119. package/dist/PageLayout.d.ts +2 -0
  120. package/dist/PageLayout.d.ts.map +1 -0
  121. package/dist/PageLayout.js +31 -0
  122. package/dist/PageLayout.js.map +1 -0
  123. package/dist/PageLayout.jsx +23 -0
  124. package/dist/PageLayout.jsx.map +1 -0
  125. package/dist/Picker.d.ts +2 -0
  126. package/dist/Picker.d.ts.map +1 -0
  127. package/dist/Picker.js +1 -0
  128. package/dist/Picker.jsx +1 -0
  129. package/dist/ProfileCard.d.ts +2 -0
  130. package/dist/ProfileCard.d.ts.map +1 -0
  131. package/dist/ProfileCard.js +78 -0
  132. package/dist/ProfileCard.js.map +1 -0
  133. package/dist/ProfileCard.jsx +53 -0
  134. package/dist/ProfileCard.jsx.map +1 -0
  135. package/dist/ProjectCard.d.ts +2 -0
  136. package/dist/ProjectCard.d.ts.map +1 -0
  137. package/dist/ProjectCard.js +164 -0
  138. package/dist/ProjectCard.js.map +1 -0
  139. package/dist/ProjectCard.jsx +133 -0
  140. package/dist/ProjectCard.jsx.map +1 -0
  141. package/dist/Provider.d.ts +2 -0
  142. package/dist/Provider.d.ts.map +1 -0
  143. package/dist/Provider.js +1 -0
  144. package/dist/Provider.jsx +1 -0
  145. package/dist/RangeCalendar.d.ts +2 -0
  146. package/dist/RangeCalendar.d.ts.map +1 -0
  147. package/dist/RangeCalendar.js +1 -0
  148. package/dist/RangeCalendar.jsx +1 -0
  149. package/dist/SearchField.d.ts +2 -0
  150. package/dist/SearchField.d.ts.map +1 -0
  151. package/dist/SearchField.js +1 -0
  152. package/dist/SearchField.jsx +1 -0
  153. package/dist/SegmentedControl.d.ts +2 -0
  154. package/dist/SegmentedControl.d.ts.map +1 -0
  155. package/dist/SegmentedControl.js +1 -0
  156. package/dist/SegmentedControl.jsx +1 -0
  157. package/dist/Switch.d.ts +2 -0
  158. package/dist/Switch.d.ts.map +1 -0
  159. package/dist/Switch.js +1 -0
  160. package/dist/Switch.jsx +1 -0
  161. package/dist/Tabs.d.ts +2 -0
  162. package/dist/Tabs.d.ts.map +1 -0
  163. package/dist/Tabs.js +1 -0
  164. package/dist/Tabs.jsx +1 -0
  165. package/dist/TextArea.d.ts +2 -0
  166. package/dist/TextArea.d.ts.map +1 -0
  167. package/dist/TextArea.js +1 -0
  168. package/dist/TextArea.jsx +1 -0
  169. package/dist/TextField.d.ts +2 -0
  170. package/dist/TextField.d.ts.map +1 -0
  171. package/dist/TextField.js +1 -0
  172. package/dist/TextField.jsx +1 -0
  173. package/dist/TimelineItem.d.ts +2 -0
  174. package/dist/TimelineItem.d.ts.map +1 -0
  175. package/dist/TimelineItem.js +137 -0
  176. package/dist/TimelineItem.js.map +1 -0
  177. package/dist/TimelineItem.jsx +70 -0
  178. package/dist/TimelineItem.jsx.map +1 -0
  179. package/dist/TreeView.d.ts +2 -0
  180. package/dist/TreeView.d.ts.map +1 -0
  181. package/dist/TreeView.js +1 -0
  182. package/dist/TreeView.jsx +1 -0
  183. package/dist/chip2.js +82 -0
  184. package/dist/chip2.js.map +1 -0
  185. package/dist/chip2.jsx +68 -0
  186. package/dist/chip2.jsx.map +1 -0
  187. package/dist/components.css +2 -1077
  188. package/dist/custom/calendar-card/index.d.ts.map +1 -1
  189. package/dist/custom/chip/index.d.ts +2 -2
  190. package/dist/custom/chip/index.d.ts.map +1 -1
  191. package/dist/custom/conversation/index.d.ts +2 -2
  192. package/dist/custom/conversation/index.d.ts.map +1 -1
  193. package/dist/custom/event-card/index.d.ts +1 -1
  194. package/dist/custom/event-card/index.d.ts.map +1 -1
  195. package/dist/custom/header/index.d.ts +2 -6
  196. package/dist/custom/header/index.d.ts.map +1 -1
  197. package/dist/custom/lateral-nav/index.d.ts +1 -1
  198. package/dist/custom/lateral-nav/index.d.ts.map +1 -1
  199. package/dist/custom/logo/index.d.ts +1 -18
  200. package/dist/custom/logo/index.d.ts.map +1 -1
  201. package/dist/custom/nav-header/index.d.ts +2 -1
  202. package/dist/custom/nav-header/index.d.ts.map +1 -1
  203. package/dist/custom/page-layout/index.d.ts +1 -7
  204. package/dist/custom/page-layout/index.d.ts.map +1 -1
  205. package/dist/custom/profile-card/index.d.ts +1 -1
  206. package/dist/custom/profile-card/index.d.ts.map +1 -1
  207. package/dist/custom/project-card/index.d.ts +2 -13
  208. package/dist/custom/project-card/index.d.ts.map +1 -1
  209. package/dist/custom/timeline-item/index.d.ts +2 -2
  210. package/dist/custom/timeline-item/index.d.ts.map +1 -1
  211. package/dist/font-faces.css +1 -0
  212. package/dist/index.d.ts +1 -104
  213. package/dist/index.d.ts.map +1 -1
  214. package/dist/index.js +1 -8222
  215. package/dist/index.jsx +1 -0
  216. package/dist/style/runtime.d.ts +2 -0
  217. package/dist/style/runtime.d.ts.map +1 -0
  218. package/dist/style/runtime.js +1 -0
  219. package/dist/style/runtime.jsx +1 -0
  220. package/dist/style.d.ts +2 -0
  221. package/dist/style.d.ts.map +1 -0
  222. package/dist/style.js +1 -0
  223. package/dist/style.jsx +1 -0
  224. package/dist/styles.css +9 -450
  225. package/dist/theme.css +2 -101
  226. package/dist/vite.d.ts +15 -0
  227. package/dist/vite.d.ts.map +1 -0
  228. package/dist/vite.js +74 -0
  229. package/dist/vite.js.map +1 -0
  230. package/dist/vite.jsx +74 -0
  231. package/dist/vite.jsx.map +1 -0
  232. package/dist/viviana-tokens.css +318 -0
  233. package/package.json +300 -44
  234. package/src/ActionButton.ts +1 -0
  235. package/src/ActionMenu.ts +1 -0
  236. package/src/Breadcrumbs.ts +1 -0
  237. package/src/Button.ts +1 -0
  238. package/src/Calendar.ts +1 -0
  239. package/src/CalendarCard.ts +1 -0
  240. package/src/Card.ts +1 -0
  241. package/src/CardView.ts +1 -0
  242. package/src/CenterBaseline.ts +1 -0
  243. package/src/Chip.ts +1 -0
  244. package/src/ColorArea.ts +1 -0
  245. package/src/ColorField.ts +1 -0
  246. package/src/ColorSlider.ts +1 -0
  247. package/src/ColorSwatch.ts +1 -0
  248. package/src/ColorSwatchPicker.ts +1 -0
  249. package/src/ColorWheel.ts +1 -0
  250. package/src/ContrastIcon.ts +2 -0
  251. package/src/Conversation.ts +1 -0
  252. package/src/Disclosure.ts +1 -0
  253. package/src/EventCard.ts +1 -0
  254. package/src/FileTrigger.ts +1 -0
  255. package/src/GitHubIcon.ts +1 -0
  256. package/src/LightenIcon.ts +2 -0
  257. package/src/LinkButton.ts +1 -0
  258. package/src/ListView.ts +1 -0
  259. package/src/Logo.ts +1 -0
  260. package/src/Menu.ts +1 -0
  261. package/src/PageLayout.ts +1 -0
  262. package/src/Picker.ts +1 -0
  263. package/src/ProfileCard.ts +1 -0
  264. package/src/ProjectCard.ts +1 -0
  265. package/src/Provider.ts +1 -0
  266. package/src/RangeCalendar.ts +1 -0
  267. package/src/SearchField.ts +1 -0
  268. package/src/SegmentedControl.ts +1 -0
  269. package/src/Switch.ts +1 -0
  270. package/src/Tabs.ts +1 -0
  271. package/src/TextArea.ts +1 -0
  272. package/src/TextField.ts +1 -0
  273. package/src/TimelineItem.ts +1 -0
  274. package/src/TreeView.ts +1 -0
  275. package/src/components.css +2 -1077
  276. package/src/custom/calendar-card/index.tsx +99 -50
  277. package/src/custom/chip/index.tsx +59 -27
  278. package/src/custom/conversation/index.tsx +149 -55
  279. package/src/custom/event-card/index.tsx +174 -74
  280. package/src/custom/header/index.tsx +64 -33
  281. package/src/custom/lateral-nav/index.tsx +84 -38
  282. package/src/custom/logo/index.tsx +34 -39
  283. package/src/custom/nav-header/index.tsx +81 -25
  284. package/src/custom/page-layout/index.tsx +23 -19
  285. package/src/custom/profile-card/index.tsx +85 -35
  286. package/src/custom/project-card/index.tsx +57 -40
  287. package/src/custom/timeline-item/index.tsx +83 -48
  288. package/src/font-faces.css +1 -0
  289. package/src/index.ts +8 -322
  290. package/src/style/runtime.ts +2 -0
  291. package/src/style.ts +5 -0
  292. package/src/styles.css +6 -450
  293. package/src/theme.css +2 -101
  294. package/src/vite.ts +152 -0
  295. package/src/viviana-tokens.css +318 -0
  296. package/dist/alert/index.d.ts +0 -12
  297. package/dist/alert/index.d.ts.map +0 -1
  298. package/dist/autocomplete/index.d.ts +0 -89
  299. package/dist/autocomplete/index.d.ts.map +0 -1
  300. package/dist/avatar/index.d.ts +0 -17
  301. package/dist/avatar/index.d.ts.map +0 -1
  302. package/dist/badge/index.d.ts +0 -12
  303. package/dist/badge/index.d.ts.map +0 -1
  304. package/dist/breadcrumbs/index.d.ts +0 -38
  305. package/dist/breadcrumbs/index.d.ts.map +0 -1
  306. package/dist/button/Button.d.ts +0 -19
  307. package/dist/button/Button.d.ts.map +0 -1
  308. package/dist/button/index.d.ts +0 -3
  309. package/dist/button/index.d.ts.map +0 -1
  310. package/dist/button/types.d.ts +0 -23
  311. package/dist/button/types.d.ts.map +0 -1
  312. package/dist/calendar/DateField.d.ts +0 -47
  313. package/dist/calendar/DateField.d.ts.map +0 -1
  314. package/dist/calendar/DatePicker.d.ts +0 -48
  315. package/dist/calendar/DatePicker.d.ts.map +0 -1
  316. package/dist/calendar/RangeCalendar.d.ts +0 -42
  317. package/dist/calendar/RangeCalendar.d.ts.map +0 -1
  318. package/dist/calendar/TimeField.d.ts +0 -44
  319. package/dist/calendar/TimeField.d.ts.map +0 -1
  320. package/dist/calendar/index.d.ts +0 -50
  321. package/dist/calendar/index.d.ts.map +0 -1
  322. package/dist/checkbox/index.d.ts +0 -43
  323. package/dist/checkbox/index.d.ts.map +0 -1
  324. package/dist/color/index.d.ts +0 -228
  325. package/dist/color/index.d.ts.map +0 -1
  326. package/dist/combobox/index.d.ts +0 -81
  327. package/dist/combobox/index.d.ts.map +0 -1
  328. package/dist/dialog/Dialog.d.ts +0 -67
  329. package/dist/dialog/Dialog.d.ts.map +0 -1
  330. package/dist/dialog/index.d.ts +0 -3
  331. package/dist/dialog/index.d.ts.map +0 -1
  332. package/dist/disclosure/index.d.ts +0 -84
  333. package/dist/disclosure/index.d.ts.map +0 -1
  334. package/dist/gridlist/index.d.ts +0 -92
  335. package/dist/gridlist/index.d.ts.map +0 -1
  336. package/dist/icon/icons/GitHubIcon.d.ts +0 -7
  337. package/dist/icon/icons/GitHubIcon.d.ts.map +0 -1
  338. package/dist/icon/index.d.ts +0 -28
  339. package/dist/icon/index.d.ts.map +0 -1
  340. package/dist/index.js.map +0 -7
  341. package/dist/index.ssr.js +0 -6631
  342. package/dist/index.ssr.js.map +0 -7
  343. package/dist/landmark/index.d.ts +0 -83
  344. package/dist/landmark/index.d.ts.map +0 -1
  345. package/dist/link/index.d.ts +0 -39
  346. package/dist/link/index.d.ts.map +0 -1
  347. package/dist/listbox/index.d.ts +0 -47
  348. package/dist/listbox/index.d.ts.map +0 -1
  349. package/dist/menu/index.d.ts +0 -74
  350. package/dist/menu/index.d.ts.map +0 -1
  351. package/dist/meter/index.d.ts +0 -49
  352. package/dist/meter/index.d.ts.map +0 -1
  353. package/dist/numberfield/index.d.ts +0 -50
  354. package/dist/numberfield/index.d.ts.map +0 -1
  355. package/dist/popover/index.d.ts +0 -85
  356. package/dist/popover/index.d.ts.map +0 -1
  357. package/dist/progress-bar/index.d.ts +0 -49
  358. package/dist/progress-bar/index.d.ts.map +0 -1
  359. package/dist/radio/index.d.ts +0 -46
  360. package/dist/radio/index.d.ts.map +0 -1
  361. package/dist/searchfield/index.d.ts +0 -44
  362. package/dist/searchfield/index.d.ts.map +0 -1
  363. package/dist/select/index.d.ts +0 -72
  364. package/dist/select/index.d.ts.map +0 -1
  365. package/dist/separator/index.d.ts +0 -42
  366. package/dist/separator/index.d.ts.map +0 -1
  367. package/dist/slider/index.d.ts +0 -53
  368. package/dist/slider/index.d.ts.map +0 -1
  369. package/dist/switch/ToggleSwitch.d.ts +0 -28
  370. package/dist/switch/ToggleSwitch.d.ts.map +0 -1
  371. package/dist/switch/index.d.ts +0 -26
  372. package/dist/switch/index.d.ts.map +0 -1
  373. package/dist/table/index.d.ts +0 -140
  374. package/dist/table/index.d.ts.map +0 -1
  375. package/dist/tabs/index.d.ts +0 -56
  376. package/dist/tabs/index.d.ts.map +0 -1
  377. package/dist/tag-group/index.d.ts +0 -80
  378. package/dist/tag-group/index.d.ts.map +0 -1
  379. package/dist/test-utils/index.d.ts +0 -44
  380. package/dist/test-utils/index.d.ts.map +0 -1
  381. package/dist/textfield/index.d.ts +0 -31
  382. package/dist/textfield/index.d.ts.map +0 -1
  383. package/dist/toast/index.d.ts +0 -101
  384. package/dist/toast/index.d.ts.map +0 -1
  385. package/dist/toolbar/index.d.ts +0 -42
  386. package/dist/toolbar/index.d.ts.map +0 -1
  387. package/dist/tooltip/index.d.ts +0 -78
  388. package/dist/tooltip/index.d.ts.map +0 -1
  389. package/dist/tree/index.d.ts +0 -99
  390. package/dist/tree/index.d.ts.map +0 -1
  391. package/src/alert/index.tsx +0 -48
  392. package/src/assets/favicon.png +0 -0
  393. package/src/assets/fire.gif +0 -0
  394. package/src/autocomplete/index.tsx +0 -313
  395. package/src/avatar/index.tsx +0 -75
  396. package/src/badge/index.tsx +0 -43
  397. package/src/breadcrumbs/index.tsx +0 -207
  398. package/src/button/Button.tsx +0 -74
  399. package/src/button/index.ts +0 -2
  400. package/src/button/types.ts +0 -24
  401. package/src/calendar/DateField.tsx +0 -200
  402. package/src/calendar/DatePicker.tsx +0 -298
  403. package/src/calendar/RangeCalendar.tsx +0 -236
  404. package/src/calendar/TimeField.tsx +0 -196
  405. package/src/calendar/index.tsx +0 -223
  406. package/src/checkbox/index.tsx +0 -257
  407. package/src/color/index.tsx +0 -687
  408. package/src/combobox/index.tsx +0 -383
  409. package/src/dialog/Dialog.tsx +0 -260
  410. package/src/dialog/index.tsx +0 -3
  411. package/src/disclosure/index.tsx +0 -307
  412. package/src/gridlist/index.tsx +0 -403
  413. package/src/icon/icons/GitHubIcon.tsx +0 -20
  414. package/src/icon/index.tsx +0 -48
  415. package/src/landmark/index.tsx +0 -231
  416. package/src/link/index.tsx +0 -130
  417. package/src/listbox/index.tsx +0 -231
  418. package/src/menu/index.tsx +0 -297
  419. package/src/meter/index.tsx +0 -163
  420. package/src/numberfield/index.tsx +0 -482
  421. package/src/popover/index.tsx +0 -260
  422. package/src/progress-bar/index.tsx +0 -169
  423. package/src/radio/index.tsx +0 -173
  424. package/src/searchfield/index.tsx +0 -453
  425. package/src/select/index.tsx +0 -349
  426. package/src/separator/index.tsx +0 -141
  427. package/src/slider/index.tsx +0 -382
  428. package/src/switch/ToggleSwitch.tsx +0 -112
  429. package/src/switch/index.tsx +0 -90
  430. package/src/table/index.tsx +0 -531
  431. package/src/tabs/index.tsx +0 -273
  432. package/src/tag-group/index.tsx +0 -240
  433. package/src/test-utils/index.ts +0 -40
  434. package/src/textfield/index.tsx +0 -211
  435. package/src/toast/index.tsx +0 -324
  436. package/src/toolbar/index.tsx +0 -108
  437. package/src/tooltip/index.tsx +0 -197
  438. package/src/tree/index.tsx +0 -494
@@ -1,236 +0,0 @@
1
- /**
2
- * RangeCalendar component for proyecto-viviana-ui
3
- *
4
- * Styled range calendar component built on top of solidaria-components.
5
- * A range calendar displays a grid of days and allows users to select a date range.
6
- */
7
-
8
- import { type JSX, splitProps } from 'solid-js';
9
- import {
10
- RangeCalendar as HeadlessRangeCalendar,
11
- RangeCalendarHeading,
12
- RangeCalendarButton,
13
- RangeCalendarGrid,
14
- RangeCalendarCell,
15
- type CalendarDate,
16
- type DateValue,
17
- type RangeValue,
18
- } from '@proyecto-viviana/solidaria-components';
19
- import type { RangeCalendarStateProps } from '@proyecto-viviana/solid-stately';
20
-
21
- // ============================================
22
- // TYPES
23
- // ============================================
24
-
25
- export type RangeCalendarSize = 'sm' | 'md' | 'lg';
26
-
27
- export interface RangeCalendarProps<T extends DateValue = DateValue>
28
- extends Omit<RangeCalendarStateProps<T>, 'locale'> {
29
- /** The size of the calendar. @default 'md' */
30
- size?: RangeCalendarSize;
31
- /** Additional CSS class name. */
32
- class?: string;
33
- /** The locale to use for formatting. */
34
- locale?: string;
35
- /** Custom aria label. */
36
- 'aria-label'?: string;
37
- }
38
-
39
- // ============================================
40
- // STYLES
41
- // ============================================
42
-
43
- const sizeStyles = {
44
- sm: {
45
- container: 'w-64',
46
- header: 'text-sm',
47
- cell: 'w-8 h-8 text-xs',
48
- button: 'w-6 h-6',
49
- },
50
- md: {
51
- container: 'w-80',
52
- header: 'text-base',
53
- cell: 'w-10 h-10 text-sm',
54
- button: 'w-8 h-8',
55
- },
56
- lg: {
57
- container: 'w-96',
58
- header: 'text-lg',
59
- cell: 'w-12 h-12 text-base',
60
- button: 'w-10 h-10',
61
- },
62
- };
63
-
64
- // ============================================
65
- // RANGE CALENDAR COMPONENT
66
- // ============================================
67
-
68
- /**
69
- * A range calendar displays a grid of days and allows users to select a date range.
70
- *
71
- * @example
72
- * ```tsx
73
- * // Basic usage
74
- * <RangeCalendar
75
- * aria-label="Trip dates"
76
- * onChange={(range) => console.log(range)}
77
- * />
78
- *
79
- * // Controlled
80
- * const [range, setRange] = createSignal<RangeValue<CalendarDate> | null>(null);
81
- * <RangeCalendar
82
- * value={range()}
83
- * onChange={setRange}
84
- * />
85
- * ```
86
- */
87
- export function RangeCalendar<T extends DateValue = CalendarDate>(
88
- props: RangeCalendarProps<T>
89
- ): JSX.Element {
90
- const [local, rest] = splitProps(props, [
91
- 'size',
92
- 'class',
93
- 'aria-label',
94
- ]);
95
-
96
- const size = () => local.size ?? 'md';
97
- const sizeConfig = () => sizeStyles[size()];
98
-
99
- return (
100
- <HeadlessRangeCalendar
101
- {...rest}
102
- aria-label={local['aria-label']}
103
- class={`
104
- ${sizeConfig().container}
105
- bg-bg-500 rounded-lg border border-primary-700 p-4
106
- ${local.class ?? ''}
107
- `}
108
- >
109
- {/* Header with navigation */}
110
- <header class="flex items-center justify-between mb-4">
111
- <RangeCalendarButton
112
- slot="previous"
113
- class={`
114
- ${sizeConfig().button}
115
- flex items-center justify-center
116
- rounded-md text-primary-200
117
- hover:bg-bg-400 transition-colors
118
- disabled:opacity-50 disabled:cursor-not-allowed
119
- focus:outline-none focus:ring-2 focus:ring-accent/50
120
- `}
121
- >
122
- <svg
123
- viewBox="0 0 24 24"
124
- fill="none"
125
- stroke="currentColor"
126
- stroke-width="2"
127
- stroke-linecap="round"
128
- stroke-linejoin="round"
129
- class="w-4 h-4"
130
- >
131
- <polyline points="15 18 9 12 15 6" />
132
- </svg>
133
- </RangeCalendarButton>
134
-
135
- <RangeCalendarHeading
136
- class={`
137
- font-semibold text-primary-100
138
- ${sizeConfig().header}
139
- `}
140
- />
141
-
142
- <RangeCalendarButton
143
- slot="next"
144
- class={`
145
- ${sizeConfig().button}
146
- flex items-center justify-center
147
- rounded-md text-primary-200
148
- hover:bg-bg-400 transition-colors
149
- disabled:opacity-50 disabled:cursor-not-allowed
150
- focus:outline-none focus:ring-2 focus:ring-accent/50
151
- `}
152
- >
153
- <svg
154
- viewBox="0 0 24 24"
155
- fill="none"
156
- stroke="currentColor"
157
- stroke-width="2"
158
- stroke-linecap="round"
159
- stroke-linejoin="round"
160
- class="w-4 h-4"
161
- >
162
- <polyline points="9 18 15 12 9 6" />
163
- </svg>
164
- </RangeCalendarButton>
165
- </header>
166
-
167
- {/* Calendar grid */}
168
- <RangeCalendarGrid
169
- class="w-full border-collapse"
170
- >
171
- {(date) => (
172
- <RangeCalendarCell
173
- date={date}
174
- class={({
175
- isSelected,
176
- isSelectionStart,
177
- isSelectionEnd,
178
- isFocused,
179
- isDisabled,
180
- isOutsideMonth,
181
- isToday,
182
- isPressed,
183
- }) => {
184
- const base = `
185
- ${sizeConfig().cell}
186
- flex items-center justify-center
187
- cursor-pointer
188
- transition-colors duration-150
189
- focus:outline-none
190
- `;
191
-
192
- let stateClass = '';
193
- let roundedClass = 'rounded-md';
194
-
195
- if (isDisabled) {
196
- stateClass = 'text-primary-600 cursor-not-allowed';
197
- } else if (isSelectionStart && isSelectionEnd) {
198
- // Single day selection
199
- stateClass = 'bg-accent text-white font-medium';
200
- roundedClass = 'rounded-md';
201
- } else if (isSelectionStart) {
202
- stateClass = 'bg-accent text-white font-medium';
203
- roundedClass = 'rounded-l-md rounded-r-none';
204
- } else if (isSelectionEnd) {
205
- stateClass = 'bg-accent text-white font-medium';
206
- roundedClass = 'rounded-r-md rounded-l-none';
207
- } else if (isSelected) {
208
- stateClass = 'bg-accent/20 text-primary-100';
209
- roundedClass = 'rounded-none';
210
- } else if (isOutsideMonth) {
211
- stateClass = 'text-primary-600';
212
- } else if (isToday) {
213
- stateClass = 'ring-1 ring-accent text-primary-100';
214
- } else {
215
- stateClass = 'text-primary-200 hover:bg-bg-400';
216
- }
217
-
218
- const focusClass = isFocused && !isSelected
219
- ? 'ring-2 ring-accent/50'
220
- : '';
221
-
222
- const pressedClass = isPressed && !isDisabled
223
- ? 'scale-95'
224
- : '';
225
-
226
- return `${base} ${stateClass} ${roundedClass} ${focusClass} ${pressedClass}`.trim();
227
- }}
228
- />
229
- )}
230
- </RangeCalendarGrid>
231
- </HeadlessRangeCalendar>
232
- );
233
- }
234
-
235
- // Re-export types
236
- export type { RangeValue };
@@ -1,196 +0,0 @@
1
- /**
2
- * TimeField component for proyecto-viviana-ui
3
- *
4
- * Styled time field component with segment-based editing.
5
- */
6
-
7
- import { type JSX, splitProps } from 'solid-js';
8
- import {
9
- TimeField as HeadlessTimeField,
10
- TimeInput,
11
- TimeSegment,
12
- type TimeFieldProps as HeadlessTimeFieldProps,
13
- type TimeValue,
14
- } from '@proyecto-viviana/solidaria-components';
15
-
16
- // ============================================
17
- // TYPES
18
- // ============================================
19
-
20
- export type TimeFieldSize = 'sm' | 'md' | 'lg';
21
-
22
- export interface TimeFieldProps<T extends TimeValue = TimeValue>
23
- extends Omit<HeadlessTimeFieldProps<T>, 'class' | 'style' | 'children'> {
24
- /** The size of the field. @default 'md' */
25
- size?: TimeFieldSize;
26
- /** Additional CSS class name. */
27
- class?: string;
28
- /** Label for the field. */
29
- label?: string;
30
- /** Description text. */
31
- description?: string;
32
- /** Error message. */
33
- errorMessage?: string;
34
- }
35
-
36
- // ============================================
37
- // STYLES
38
- // ============================================
39
-
40
- const sizeStyles = {
41
- sm: {
42
- container: 'text-sm',
43
- input: 'px-2 py-1 gap-0.5',
44
- segment: 'px-0.5',
45
- label: 'text-xs',
46
- },
47
- md: {
48
- container: 'text-base',
49
- input: 'px-3 py-2 gap-1',
50
- segment: 'px-1',
51
- label: 'text-sm',
52
- },
53
- lg: {
54
- container: 'text-lg',
55
- input: 'px-4 py-3 gap-1.5',
56
- segment: 'px-1.5',
57
- label: 'text-base',
58
- },
59
- };
60
-
61
- // ============================================
62
- // TIME FIELD COMPONENT
63
- // ============================================
64
-
65
- /**
66
- * A time field allows users to enter and edit time values using a keyboard.
67
- *
68
- * @example
69
- * ```tsx
70
- * // Basic usage
71
- * <TimeField label="Start time" />
72
- *
73
- * // With 24-hour format
74
- * <TimeField
75
- * label="Meeting time"
76
- * hourCycle={24}
77
- * />
78
- *
79
- * // With seconds
80
- * <TimeField
81
- * label="Precise time"
82
- * granularity="second"
83
- * />
84
- * ```
85
- */
86
- export function TimeField<T extends TimeValue = TimeValue>(
87
- props: TimeFieldProps<T>
88
- ): JSX.Element {
89
- const [local, rest] = splitProps(props, [
90
- 'size',
91
- 'class',
92
- 'label',
93
- 'description',
94
- 'errorMessage',
95
- 'isInvalid',
96
- ]);
97
-
98
- const size = () => local.size ?? 'md';
99
- const sizeConfig = () => sizeStyles[size()];
100
- const isInvalid = () => local.isInvalid || !!local.errorMessage;
101
-
102
- return (
103
- <HeadlessTimeField
104
- {...rest}
105
- isInvalid={isInvalid()}
106
- class={`
107
- flex flex-col gap-1
108
- ${sizeConfig().container}
109
- ${local.class ?? ''}
110
- `}
111
- >
112
- {/* Label */}
113
- {local.label && (
114
- <label class={`font-medium text-primary-200 ${sizeConfig().label}`}>
115
- {local.label}
116
- {rest.isRequired && <span class="text-red-500 ml-0.5">*</span>}
117
- </label>
118
- )}
119
-
120
- {/* Input container */}
121
- <TimeInput
122
- class={({ isFocused, isDisabled }) => {
123
- const base = `
124
- inline-flex items-center
125
- ${sizeConfig().input}
126
- bg-bg-400 rounded-md border
127
- transition-colors duration-150
128
- `;
129
-
130
- let borderClass = 'border-primary-600';
131
- if (isInvalid()) {
132
- borderClass = 'border-red-500';
133
- } else if (isFocused) {
134
- borderClass = 'border-accent';
135
- }
136
-
137
- const disabledClass = isDisabled
138
- ? 'opacity-50 cursor-not-allowed'
139
- : '';
140
-
141
- const focusClass = isFocused
142
- ? 'ring-2 ring-accent/30'
143
- : '';
144
-
145
- return `${base} ${borderClass} ${disabledClass} ${focusClass}`.trim();
146
- }}
147
- >
148
- {(segment) => (
149
- <TimeSegment
150
- segment={segment}
151
- class={({ isFocused, isPlaceholder, isEditable }) => {
152
- const base = `
153
- ${sizeConfig().segment}
154
- rounded
155
- outline-none
156
- tabular-nums
157
- `;
158
-
159
- let stateClass = '';
160
- if (segment.type === 'literal') {
161
- stateClass = 'text-primary-400';
162
- } else if (isPlaceholder) {
163
- stateClass = 'text-primary-500 italic';
164
- } else {
165
- stateClass = 'text-primary-100';
166
- }
167
-
168
- const focusClass = isFocused && isEditable
169
- ? 'bg-accent text-white'
170
- : '';
171
-
172
- return `${base} ${stateClass} ${focusClass}`.trim();
173
- }}
174
- />
175
- )}
176
- </TimeInput>
177
-
178
- {/* Description */}
179
- {local.description && !isInvalid() && (
180
- <p class={`text-primary-400 ${sizeConfig().label}`}>
181
- {local.description}
182
- </p>
183
- )}
184
-
185
- {/* Error message */}
186
- {isInvalid() && local.errorMessage && (
187
- <p class={`text-red-500 ${sizeConfig().label}`}>
188
- {local.errorMessage}
189
- </p>
190
- )}
191
- </HeadlessTimeField>
192
- );
193
- }
194
-
195
- // Re-export types
196
- export type { TimeValue };
@@ -1,223 +0,0 @@
1
- /**
2
- * Calendar component for proyecto-viviana-ui
3
- *
4
- * Styled calendar component built on top of solidaria-components.
5
- * A calendar displays a grid of days and allows users to select dates.
6
- */
7
-
8
- import { type JSX, splitProps } from 'solid-js';
9
- import {
10
- Calendar as HeadlessCalendar,
11
- CalendarHeading,
12
- CalendarButton,
13
- CalendarGrid,
14
- CalendarCell,
15
- type CalendarDate,
16
- type DateValue,
17
- } from '@proyecto-viviana/solidaria-components';
18
- import type { CalendarStateProps } from '@proyecto-viviana/solid-stately';
19
-
20
- // ============================================
21
- // TYPES
22
- // ============================================
23
-
24
- export type CalendarSize = 'sm' | 'md' | 'lg';
25
-
26
- export interface CalendarProps<T extends DateValue = DateValue>
27
- extends Omit<CalendarStateProps<T>, 'locale'> {
28
- /** The size of the calendar. @default 'md' */
29
- size?: CalendarSize;
30
- /** Additional CSS class name. */
31
- class?: string;
32
- /** Whether to show week numbers. */
33
- showWeekNumbers?: boolean;
34
- /** The locale to use for formatting. */
35
- locale?: string;
36
- /** Custom aria label. */
37
- 'aria-label'?: string;
38
- }
39
-
40
- // ============================================
41
- // STYLES
42
- // ============================================
43
-
44
- const sizeStyles = {
45
- sm: {
46
- container: 'w-64',
47
- header: 'text-sm',
48
- cell: 'w-8 h-8 text-xs',
49
- button: 'w-6 h-6',
50
- },
51
- md: {
52
- container: 'w-80',
53
- header: 'text-base',
54
- cell: 'w-10 h-10 text-sm',
55
- button: 'w-8 h-8',
56
- },
57
- lg: {
58
- container: 'w-96',
59
- header: 'text-lg',
60
- cell: 'w-12 h-12 text-base',
61
- button: 'w-10 h-10',
62
- },
63
- };
64
-
65
- // ============================================
66
- // CALENDAR COMPONENT
67
- // ============================================
68
-
69
- /**
70
- * A calendar displays a grid of days and allows users to select a date.
71
- *
72
- * @example
73
- * ```tsx
74
- * // Basic usage
75
- * <Calendar
76
- * aria-label="Event date"
77
- * onChange={(date) => console.log(date)}
78
- * />
79
- *
80
- * // Controlled
81
- * const [date, setDate] = createSignal<CalendarDate | null>(null);
82
- * <Calendar
83
- * value={date()}
84
- * onChange={setDate}
85
- * />
86
- *
87
- * // With min/max dates
88
- * <Calendar
89
- * minValue={today(getLocalTimeZone())}
90
- * maxValue={today(getLocalTimeZone()).add({ months: 3 })}
91
- * />
92
- * ```
93
- */
94
- export function Calendar<T extends DateValue = CalendarDate>(
95
- props: CalendarProps<T>
96
- ): JSX.Element {
97
- const [local, rest] = splitProps(props, [
98
- 'size',
99
- 'class',
100
- 'showWeekNumbers',
101
- 'aria-label',
102
- ]);
103
-
104
- const size = () => local.size ?? 'md';
105
- const sizeConfig = () => sizeStyles[size()];
106
-
107
- return (
108
- <HeadlessCalendar
109
- {...rest}
110
- aria-label={local['aria-label']}
111
- class={`
112
- ${sizeConfig().container}
113
- bg-bg-500 rounded-lg border border-primary-700 p-4
114
- ${local.class ?? ''}
115
- `}
116
- >
117
- {/* Header with navigation */}
118
- <header class="flex items-center justify-between mb-4">
119
- <CalendarButton
120
- slot="previous"
121
- class={`
122
- ${sizeConfig().button}
123
- flex items-center justify-center
124
- rounded-md text-primary-200
125
- hover:bg-bg-400 transition-colors
126
- disabled:opacity-50 disabled:cursor-not-allowed
127
- focus:outline-none focus:ring-2 focus:ring-accent/50
128
- `}
129
- >
130
- <svg
131
- viewBox="0 0 24 24"
132
- fill="none"
133
- stroke="currentColor"
134
- stroke-width="2"
135
- stroke-linecap="round"
136
- stroke-linejoin="round"
137
- class="w-4 h-4"
138
- >
139
- <polyline points="15 18 9 12 15 6" />
140
- </svg>
141
- </CalendarButton>
142
-
143
- <CalendarHeading
144
- class={`
145
- font-semibold text-primary-100
146
- ${sizeConfig().header}
147
- `}
148
- />
149
-
150
- <CalendarButton
151
- slot="next"
152
- class={`
153
- ${sizeConfig().button}
154
- flex items-center justify-center
155
- rounded-md text-primary-200
156
- hover:bg-bg-400 transition-colors
157
- disabled:opacity-50 disabled:cursor-not-allowed
158
- focus:outline-none focus:ring-2 focus:ring-accent/50
159
- `}
160
- >
161
- <svg
162
- viewBox="0 0 24 24"
163
- fill="none"
164
- stroke="currentColor"
165
- stroke-width="2"
166
- stroke-linecap="round"
167
- stroke-linejoin="round"
168
- class="w-4 h-4"
169
- >
170
- <polyline points="9 18 15 12 9 6" />
171
- </svg>
172
- </CalendarButton>
173
- </header>
174
-
175
- {/* Calendar grid */}
176
- <CalendarGrid
177
- class="w-full border-collapse"
178
- >
179
- {(date) => (
180
- <CalendarCell
181
- date={date}
182
- class={({ isSelected, isFocused, isDisabled, isOutsideMonth, isToday, isPressed }) => {
183
- const base = `
184
- ${sizeConfig().cell}
185
- flex items-center justify-center
186
- rounded-md cursor-pointer
187
- transition-colors duration-150
188
- focus:outline-none
189
- `;
190
-
191
- let stateClass = '';
192
-
193
- if (isDisabled) {
194
- stateClass = 'text-primary-600 cursor-not-allowed';
195
- } else if (isSelected) {
196
- stateClass = 'bg-accent text-white font-medium';
197
- } else if (isOutsideMonth) {
198
- stateClass = 'text-primary-600';
199
- } else if (isToday) {
200
- stateClass = 'ring-1 ring-accent text-primary-100';
201
- } else {
202
- stateClass = 'text-primary-200 hover:bg-bg-400';
203
- }
204
-
205
- const focusClass = isFocused && !isSelected
206
- ? 'ring-2 ring-accent/50'
207
- : '';
208
-
209
- const pressedClass = isPressed && !isDisabled
210
- ? 'scale-95'
211
- : '';
212
-
213
- return `${base} ${stateClass} ${focusClass} ${pressedClass}`.trim();
214
- }}
215
- />
216
- )}
217
- </CalendarGrid>
218
- </HeadlessCalendar>
219
- );
220
- }
221
-
222
- // Re-export types
223
- export type { CalendarDate, DateValue };