@iyulab/components 0.3.0 → 1.0.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 (475) hide show
  1. package/CHANGELOG.md +67 -0
  2. package/README.md +42 -236
  3. package/dist/_virtual/_@oxc-project_runtime@0.122.0/helpers/decorate.js +9 -0
  4. package/dist/_virtual/_@oxc-project_runtime@0.122.0/helpers/decorateMetadata.js +6 -0
  5. package/dist/_virtual/_glob-assets_raw/bell-fill.svg.d37c41d9.js +4 -0
  6. package/dist/_virtual/_glob-assets_raw/check-circle-fill.svg.51c33a2a.js +4 -0
  7. package/dist/_virtual/_glob-assets_raw/check-lg.svg.371c5e78.js +4 -0
  8. package/dist/_virtual/_glob-assets_raw/chevron-down.svg.0ccd06ea.js +4 -0
  9. package/dist/_virtual/_glob-assets_raw/chevron-left.svg.b4601050.js +4 -0
  10. package/dist/_virtual/_glob-assets_raw/chevron-right.svg.0711bb67.js +4 -0
  11. package/dist/_virtual/_glob-assets_raw/chevron-up.svg.ed917211.js +4 -0
  12. package/dist/_virtual/_glob-assets_raw/dark.css.e8ac080d.js +4 -0
  13. package/dist/_virtual/_glob-assets_raw/dash-lg.svg.b40b8b3a.js +4 -0
  14. package/dist/_virtual/_glob-assets_raw/exclamation-circle-fill.svg.dc8c523e.js +4 -0
  15. package/dist/_virtual/_glob-assets_raw/exclamation-triangle-fill.svg.7949d2c7.js +4 -0
  16. package/dist/_virtual/_glob-assets_raw/eye-slash.svg.240afafa.js +4 -0
  17. package/dist/_virtual/_glob-assets_raw/eye.svg.2e5e9c4c.js +4 -0
  18. package/dist/_virtual/_glob-assets_raw/info-circle-fill.svg.6580071d.js +4 -0
  19. package/dist/_virtual/_glob-assets_raw/light.css.637cb2f8.js +4 -0
  20. package/dist/_virtual/_glob-assets_raw/plus-lg.svg.294e9073.js +4 -0
  21. package/dist/_virtual/_glob-assets_raw/search.svg.0ba2012d.js +4 -0
  22. package/dist/_virtual/_glob-assets_raw/star-fill.svg.f24b5a2d.js +4 -0
  23. package/dist/_virtual/_glob-assets_raw/star.svg.4af61468.js +4 -0
  24. package/dist/_virtual/_glob-assets_raw/three-dots-vertical.svg.9fee78c5.js +4 -0
  25. package/dist/_virtual/_glob-assets_raw/three-dots.svg.6a7a5b23.js +4 -0
  26. package/dist/_virtual/_glob-assets_raw/x-lg.svg.f34b882c.js +4 -0
  27. package/dist/components/UDataElement.d.ts +44 -0
  28. package/dist/components/UDataElement.js +101 -0
  29. package/dist/components/UDataElement.styles.js +95 -0
  30. package/dist/components/UElement.d.ts +54 -0
  31. package/dist/components/UElement.js +83 -0
  32. package/dist/components/UElement.styles.js +67 -0
  33. package/dist/components/UFloatingElement.d.ts +125 -0
  34. package/dist/components/UFloatingElement.js +238 -0
  35. package/dist/components/UFloatingElement.styles.d.ts +9 -0
  36. package/dist/components/UFloatingElement.styles.js +46 -0
  37. package/dist/components/UFormControlElement.d.ts +57 -0
  38. package/dist/components/UFormControlElement.js +68 -0
  39. package/dist/components/UFormControlElement.styles.js +14 -0
  40. package/dist/components/UOverlayElement.d.ts +66 -0
  41. package/dist/components/UOverlayElement.js +123 -0
  42. package/dist/components/UOverlayElement.styles.d.ts +1 -0
  43. package/dist/components/UOverlayElement.styles.js +35 -0
  44. package/dist/components/alert/UAlert.d.ts +58 -3
  45. package/dist/components/alert/UAlert.js +115 -4
  46. package/dist/components/alert/UAlert.styles.js +73 -48
  47. package/dist/components/avatar/UAvatar.d.ts +27 -0
  48. package/dist/components/avatar/UAvatar.js +42 -0
  49. package/dist/components/avatar/UAvatar.styles.d.ts +1 -0
  50. package/dist/components/avatar/UAvatar.styles.js +45 -0
  51. package/dist/components/badge/UBadge.d.ts +28 -0
  52. package/dist/components/badge/UBadge.js +40 -0
  53. package/dist/components/badge/UBadge.styles.d.ts +1 -0
  54. package/dist/components/badge/UBadge.styles.js +113 -0
  55. package/dist/components/breadcrumb/UBreadcrumb.d.ts +24 -0
  56. package/dist/components/breadcrumb/UBreadcrumb.js +65 -0
  57. package/dist/components/breadcrumb/UBreadcrumb.styles.d.ts +1 -0
  58. package/dist/components/breadcrumb/UBreadcrumb.styles.js +37 -0
  59. package/dist/components/breadcrumb-item/UBreadcrumbItem.d.ts +30 -0
  60. package/dist/components/breadcrumb-item/UBreadcrumbItem.js +52 -0
  61. package/dist/components/breadcrumb-item/UBreadcrumbItem.styles.d.ts +1 -0
  62. package/dist/components/breadcrumb-item/UBreadcrumbItem.styles.js +41 -0
  63. package/dist/components/button/UButton.d.ts +46 -3
  64. package/dist/components/button/UButton.js +104 -4
  65. package/dist/components/button/UButton.styles.js +121 -48
  66. package/dist/components/button-group/UButtonGroup.d.ts +28 -0
  67. package/dist/components/button-group/UButtonGroup.js +93 -0
  68. package/dist/components/button-group/UButtonGroup.styles.d.ts +1 -0
  69. package/dist/components/button-group/UButtonGroup.styles.js +34 -0
  70. package/dist/components/card/UCard.d.ts +30 -3
  71. package/dist/components/card/UCard.js +61 -4
  72. package/dist/components/card/UCard.styles.js +13 -12
  73. package/dist/components/carousel/UCarousel.d.ts +65 -3
  74. package/dist/components/carousel/UCarousel.js +219 -2
  75. package/dist/components/carousel/UCarousel.styles.js +32 -33
  76. package/dist/components/checkbox/UCheckbox.d.ts +39 -0
  77. package/dist/components/checkbox/UCheckbox.js +88 -0
  78. package/dist/components/checkbox/UCheckbox.styles.d.ts +1 -0
  79. package/dist/components/checkbox/UCheckbox.styles.js +211 -0
  80. package/dist/components/chip/UChip.d.ts +43 -0
  81. package/dist/components/chip/UChip.js +103 -0
  82. package/dist/components/chip/UChip.styles.d.ts +1 -0
  83. package/dist/components/chip/UChip.styles.js +31 -0
  84. package/dist/components/dialog/UDialog.d.ts +29 -2
  85. package/dist/components/dialog/UDialog.js +66 -4
  86. package/dist/components/dialog/UDialog.styles.js +90 -39
  87. package/dist/components/divider/UDivider.d.ts +27 -2
  88. package/dist/components/divider/UDivider.js +45 -4
  89. package/dist/components/divider/UDivider.styles.js +80 -10
  90. package/dist/components/drawer/UDrawer.d.ts +25 -3
  91. package/dist/components/drawer/UDrawer.js +54 -4
  92. package/dist/components/drawer/UDrawer.styles.js +67 -60
  93. package/dist/components/field/UField.d.ts +31 -0
  94. package/dist/components/field/UField.js +64 -0
  95. package/dist/components/field/UField.styles.d.ts +1 -0
  96. package/dist/components/field/UField.styles.js +47 -0
  97. package/dist/components/form/UForm.d.ts +38 -2
  98. package/dist/components/form/UForm.js +105 -4
  99. package/dist/components/form/UForm.styles.js +5 -5
  100. package/dist/components/icon/UIcon.d.ts +23 -4
  101. package/dist/components/icon/UIcon.js +55 -4
  102. package/dist/components/icon/UIcon.styles.js +5 -5
  103. package/dist/components/icon-button/UIconButton.d.ts +48 -0
  104. package/dist/components/icon-button/UIconButton.js +88 -0
  105. package/dist/components/icon-button/UIconButton.styles.d.ts +1 -0
  106. package/dist/components/icon-button/UIconButton.styles.js +24 -0
  107. package/dist/components/input/UInput.d.ts +95 -3
  108. package/dist/components/input/UInput.js +258 -2
  109. package/dist/components/input/UInput.styles.js +120 -86
  110. package/dist/components/menu/UMenu.d.ts +41 -3
  111. package/dist/components/menu/UMenu.js +178 -4
  112. package/dist/components/menu/UMenu.styles.js +16 -30
  113. package/dist/components/menu-item/UMenuItem.d.ts +48 -2
  114. package/dist/components/menu-item/UMenuItem.js +159 -2
  115. package/dist/components/menu-item/UMenuItem.styles.js +120 -34
  116. package/dist/components/option/UOption.d.ts +42 -0
  117. package/dist/components/option/UOption.js +64 -0
  118. package/dist/components/option/UOption.styles.d.ts +1 -0
  119. package/dist/components/option/UOption.styles.js +132 -0
  120. package/dist/components/panel/UPanel.d.ts +22 -0
  121. package/dist/components/panel/UPanel.js +36 -0
  122. package/dist/components/panel/UPanel.styles.d.ts +1 -0
  123. package/dist/components/panel/UPanel.styles.js +14 -0
  124. package/dist/components/popover/UPopover.d.ts +69 -0
  125. package/dist/components/popover/UPopover.js +235 -0
  126. package/dist/components/popover/UPopover.styles.d.ts +1 -0
  127. package/dist/components/popover/UPopover.styles.js +9 -0
  128. package/dist/components/progress-bar/UProgressBar.d.ts +46 -2
  129. package/dist/components/progress-bar/UProgressBar.js +94 -2
  130. package/dist/components/progress-bar/UProgressBar.styles.js +110 -36
  131. package/dist/components/progress-ring/UProgressRing.d.ts +46 -3
  132. package/dist/components/progress-ring/UProgressRing.js +152 -2
  133. package/dist/components/progress-ring/UProgressRing.styles.js +88 -25
  134. package/dist/components/radio/URadio.d.ts +41 -0
  135. package/dist/components/radio/URadio.js +151 -0
  136. package/dist/components/radio/URadio.styles.d.ts +1 -0
  137. package/dist/components/radio/URadio.styles.js +111 -0
  138. package/dist/components/rating/URating.d.ts +48 -0
  139. package/dist/components/rating/URating.js +196 -0
  140. package/dist/components/rating/URating.styles.d.ts +1 -0
  141. package/dist/components/rating/URating.styles.js +55 -0
  142. package/dist/components/select/USelect.d.ts +70 -0
  143. package/dist/components/select/USelect.js +315 -0
  144. package/dist/components/select/USelect.styles.d.ts +1 -0
  145. package/dist/components/select/USelect.styles.js +200 -0
  146. package/dist/components/skeleton/USkeleton.d.ts +27 -3
  147. package/dist/components/skeleton/USkeleton.js +37 -4
  148. package/dist/components/skeleton/USkeleton.styles.js +15 -18
  149. package/dist/components/slider/USlider.d.ts +88 -0
  150. package/dist/components/slider/USlider.js +286 -0
  151. package/dist/components/slider/USlider.styles.d.ts +1 -0
  152. package/dist/components/slider/USlider.styles.js +125 -0
  153. package/dist/components/spinner/USpinner.d.ts +23 -2
  154. package/dist/components/spinner/USpinner.js +37 -3
  155. package/dist/components/spinner/USpinner.styles.js +34 -13
  156. package/dist/components/split-panel/USplitPanel.d.ts +49 -2
  157. package/dist/components/split-panel/USplitPanel.js +239 -3
  158. package/dist/components/split-panel/USplitPanel.styles.js +47 -15
  159. package/dist/components/switch/USwitch.d.ts +43 -0
  160. package/dist/components/switch/USwitch.js +80 -0
  161. package/dist/components/switch/USwitch.styles.d.ts +1 -0
  162. package/dist/components/switch/USwitch.styles.js +191 -0
  163. package/dist/components/tab/UTab.d.ts +31 -0
  164. package/dist/components/tab/UTab.js +68 -0
  165. package/dist/components/tab/UTab.styles.d.ts +1 -0
  166. package/dist/components/tab/UTab.styles.js +46 -0
  167. package/dist/components/tab-panel/UTabPanel.d.ts +45 -0
  168. package/dist/components/tab-panel/UTabPanel.js +150 -0
  169. package/dist/components/tab-panel/UTabPanel.styles.d.ts +1 -0
  170. package/dist/components/tab-panel/UTabPanel.styles.js +201 -0
  171. package/dist/components/tag/UTag.d.ts +26 -3
  172. package/dist/components/tag/UTag.js +41 -4
  173. package/dist/components/tag/UTag.styles.js +206 -60
  174. package/dist/components/textarea/UTextarea.d.ts +65 -0
  175. package/dist/components/textarea/UTextarea.js +145 -0
  176. package/dist/components/textarea/UTextarea.styles.d.ts +1 -0
  177. package/dist/components/textarea/UTextarea.styles.js +157 -0
  178. package/dist/components/tooltip/UTooltip.d.ts +28 -2
  179. package/dist/components/tooltip/UTooltip.js +104 -4
  180. package/dist/components/tooltip/UTooltip.styles.js +10 -12
  181. package/dist/components/tree/UTree.d.ts +62 -2
  182. package/dist/components/tree/UTree.js +308 -3
  183. package/dist/components/tree/UTree.styles.js +13 -19
  184. package/dist/components/tree-item/UTreeItem.d.ts +61 -2
  185. package/dist/components/tree-item/UTreeItem.js +191 -2
  186. package/dist/components/tree-item/UTreeItem.styles.js +96 -37
  187. package/dist/events/CheckEvent.d.ts +7 -0
  188. package/dist/events/CollapseEvent.d.ts +7 -0
  189. package/dist/events/ExpandEvent.d.ts +7 -0
  190. package/dist/events/HideEvent.d.ts +7 -0
  191. package/dist/events/NavigateEvent.d.ts +7 -0
  192. package/dist/events/PickEvent.d.ts +18 -0
  193. package/dist/events/RemoveEvent.d.ts +7 -0
  194. package/dist/events/ShiftEvent.d.ts +16 -0
  195. package/dist/events/ShowEvent.d.ts +7 -0
  196. package/dist/index.d.ts +41 -8
  197. package/dist/index.js +56 -46
  198. package/dist/react/UAlert.d.ts +13 -0
  199. package/dist/{react-components → react}/UAlert.js +5 -2
  200. package/dist/react/UAvatar.d.ts +9 -0
  201. package/dist/react/UAvatar.js +10 -0
  202. package/dist/react/UBadge.d.ts +9 -0
  203. package/dist/react/UBadge.js +10 -0
  204. package/dist/react/UBreadcrumb.d.ts +9 -0
  205. package/dist/react/UBreadcrumb.js +10 -0
  206. package/dist/react/UBreadcrumbItem.d.ts +11 -0
  207. package/dist/react/UBreadcrumbItem.js +12 -0
  208. package/dist/{react-components → react}/UButton.d.ts +3 -2
  209. package/dist/{react-components → react}/UButton.js +2 -2
  210. package/dist/react/UButtonGroup.d.ts +9 -0
  211. package/dist/react/UButtonGroup.js +10 -0
  212. package/dist/{react-components → react}/UCard.d.ts +3 -2
  213. package/dist/{react-components → react}/UCard.js +2 -2
  214. package/dist/{react-components → react}/UCarousel.d.ts +3 -2
  215. package/dist/{react-components → react}/UCarousel.js +2 -2
  216. package/dist/react/UCheckbox.d.ts +9 -0
  217. package/dist/react/UCheckbox.js +10 -0
  218. package/dist/react/UChip.d.ts +13 -0
  219. package/dist/react/UChip.js +13 -0
  220. package/dist/{react-components → react}/UDialog.d.ts +3 -2
  221. package/dist/{react-components → react}/UDialog.js +2 -2
  222. package/dist/{react-components → react}/UDivider.d.ts +3 -2
  223. package/dist/{react-components → react}/UDivider.js +2 -2
  224. package/dist/{react-components → react}/UDrawer.d.ts +3 -2
  225. package/dist/{react-components → react}/UDrawer.js +2 -2
  226. package/dist/react/UField.d.ts +9 -0
  227. package/dist/react/UField.js +10 -0
  228. package/dist/react/UForm.d.ts +10 -0
  229. package/dist/{react-components → react}/UForm.js +4 -2
  230. package/dist/{react-components → react}/UIcon.d.ts +3 -2
  231. package/dist/{react-components → react}/UIcon.js +2 -2
  232. package/dist/react/UIconButton.d.ts +9 -0
  233. package/dist/react/UIconButton.js +10 -0
  234. package/dist/react/UInput.d.ts +11 -0
  235. package/dist/{react-components → react}/UInput.js +5 -2
  236. package/dist/react/UMenu.d.ts +10 -0
  237. package/dist/{react-components → react}/UMenu.js +4 -2
  238. package/dist/react/UMenuItem.d.ts +11 -0
  239. package/dist/{react-components → react}/UMenuItem.js +4 -2
  240. package/dist/react/UOption.d.ts +9 -0
  241. package/dist/react/UOption.js +10 -0
  242. package/dist/react/UPanel.d.ts +9 -0
  243. package/dist/react/UPanel.js +10 -0
  244. package/dist/react/UPopover.d.ts +11 -0
  245. package/dist/react/UPopover.js +13 -0
  246. package/dist/react/UProgressBar.d.ts +9 -0
  247. package/dist/{react-components → react}/UProgressBar.js +2 -2
  248. package/dist/react/UProgressRing.d.ts +9 -0
  249. package/dist/{react-components → react}/UProgressRing.js +2 -2
  250. package/dist/react/URadio.d.ts +10 -0
  251. package/dist/react/URadio.js +12 -0
  252. package/dist/react/URating.d.ts +10 -0
  253. package/dist/react/URating.js +12 -0
  254. package/dist/react/USelect.d.ts +10 -0
  255. package/dist/react/USelect.js +12 -0
  256. package/dist/{react-components → react}/USkeleton.d.ts +3 -2
  257. package/dist/{react-components → react}/USkeleton.js +2 -2
  258. package/dist/react/USlider.d.ts +10 -0
  259. package/dist/react/USlider.js +12 -0
  260. package/dist/{react-components → react}/USpinner.d.ts +3 -2
  261. package/dist/{react-components → react}/USpinner.js +2 -2
  262. package/dist/react/USplitPanel.d.ts +13 -0
  263. package/dist/{react-components → react}/USplitPanel.js +6 -2
  264. package/dist/react/USwitch.d.ts +10 -0
  265. package/dist/react/USwitch.js +12 -0
  266. package/dist/react/UTab.d.ts +11 -0
  267. package/dist/react/UTab.js +12 -0
  268. package/dist/react/UTabPanel.d.ts +9 -0
  269. package/dist/react/UTabPanel.js +10 -0
  270. package/dist/{react-components → react}/UTag.d.ts +3 -2
  271. package/dist/{react-components → react}/UTag.js +2 -2
  272. package/dist/react/UTextarea.d.ts +11 -0
  273. package/dist/react/UTextarea.js +13 -0
  274. package/dist/react/UTooltip.d.ts +11 -0
  275. package/dist/{react-components → react}/UTooltip.js +5 -2
  276. package/dist/react/UTree.d.ts +10 -0
  277. package/dist/{react-components → react}/UTree.js +4 -2
  278. package/dist/react/UTreeItem.d.ts +17 -0
  279. package/dist/{react-components → react}/UTreeItem.js +7 -2
  280. package/dist/{react-components → react}/index.d.ts +40 -27
  281. package/dist/{react-components → react}/index.js +40 -20
  282. package/dist/{assets/styles → styles}/dark.css +68 -3
  283. package/dist/{assets/styles → styles}/light.css +68 -3
  284. package/dist/utilities/BrowserStorage.d.ts +2 -1
  285. package/dist/utilities/BrowserStorage.js +69 -86
  286. package/dist/utilities/Dialog.d.ts +83 -0
  287. package/dist/utilities/Dialog.js +141 -0
  288. package/dist/utilities/OverlayManager.d.ts +37 -0
  289. package/dist/utilities/OverlayManager.js +68 -0
  290. package/dist/utilities/Theme.js +134 -141
  291. package/dist/utilities/Toast.d.ts +45 -0
  292. package/dist/utilities/Toast.js +114 -0
  293. package/dist/utilities/converters.d.ts +44 -1
  294. package/dist/utilities/converters.js +112 -14
  295. package/dist/utilities/elements.d.ts +23 -0
  296. package/dist/utilities/elements.js +67 -16
  297. package/dist/utilities/icons.d.ts +67 -0
  298. package/dist/utilities/icons.js +200 -0
  299. package/dist/utilities/sanitizers.d.ts +35 -0
  300. package/dist/utilities/sanitizers.js +75 -0
  301. package/package.json +24 -21
  302. package/plugins/vite-plugin-glob-resolve.d.ts +12 -0
  303. package/plugins/vite-plugin-glob-resolve.js +66 -0
  304. package/plugins/vite-plugin-react-wrapper.d.ts +12 -0
  305. package/plugins/vite-plugin-react-wrapper.js +206 -0
  306. package/skills/iyulab-components/SKILL.md +138 -0
  307. package/skills/iyulab-components/references/components/alert.md +74 -0
  308. package/skills/iyulab-components/references/components/avatar.md +41 -0
  309. package/skills/iyulab-components/references/components/badge.md +38 -0
  310. package/skills/iyulab-components/references/components/breadcrumb.md +75 -0
  311. package/skills/iyulab-components/references/components/button-group.md +38 -0
  312. package/skills/iyulab-components/references/components/button.md +56 -0
  313. package/skills/iyulab-components/references/components/card.md +53 -0
  314. package/skills/iyulab-components/references/components/carousel.md +63 -0
  315. package/skills/iyulab-components/references/components/checkbox.md +70 -0
  316. package/skills/iyulab-components/references/components/chip.md +64 -0
  317. package/skills/iyulab-components/references/components/dialog.md +71 -0
  318. package/skills/iyulab-components/references/components/divider.md +56 -0
  319. package/skills/iyulab-components/references/components/drawer.md +63 -0
  320. package/skills/iyulab-components/references/components/field.md +42 -0
  321. package/skills/iyulab-components/references/components/form.md +68 -0
  322. package/skills/iyulab-components/references/components/icon-button.md +56 -0
  323. package/skills/iyulab-components/references/components/icon.md +49 -0
  324. package/skills/iyulab-components/references/components/input.md +95 -0
  325. package/skills/iyulab-components/references/components/menu.md +106 -0
  326. package/skills/iyulab-components/references/components/option.md +70 -0
  327. package/skills/iyulab-components/references/components/panel.md +38 -0
  328. package/skills/iyulab-components/references/components/popover.md +62 -0
  329. package/skills/iyulab-components/references/components/progress-bar.md +61 -0
  330. package/skills/iyulab-components/references/components/progress-ring.md +58 -0
  331. package/skills/iyulab-components/references/components/radio.md +67 -0
  332. package/skills/iyulab-components/references/components/rating.md +74 -0
  333. package/skills/iyulab-components/references/components/select.md +86 -0
  334. package/skills/iyulab-components/references/components/skeleton.md +46 -0
  335. package/skills/iyulab-components/references/components/slider.md +89 -0
  336. package/skills/iyulab-components/references/components/spinner.md +47 -0
  337. package/skills/iyulab-components/references/components/split-panel.md +65 -0
  338. package/skills/iyulab-components/references/components/switch.md +81 -0
  339. package/skills/iyulab-components/references/components/tab-panel.md +93 -0
  340. package/skills/iyulab-components/references/components/tag.md +55 -0
  341. package/skills/iyulab-components/references/components/textarea.md +67 -0
  342. package/skills/iyulab-components/references/components/tooltip.md +58 -0
  343. package/skills/iyulab-components/references/components/tree.md +128 -0
  344. package/skills/iyulab-components/references/extensions/data.md +60 -0
  345. package/skills/iyulab-components/references/extensions/element.md +57 -0
  346. package/skills/iyulab-components/references/extensions/floating.md +60 -0
  347. package/skills/iyulab-components/references/extensions/form-control.md +79 -0
  348. package/skills/iyulab-components/references/extensions/overlay.md +76 -0
  349. package/skills/iyulab-components/references/usage.md +216 -0
  350. package/skills/iyulab-components/references/utilities/browser-storage.md +54 -0
  351. package/skills/iyulab-components/references/utilities/converters.md +42 -0
  352. package/skills/iyulab-components/references/utilities/dialog.md +75 -0
  353. package/skills/iyulab-components/references/utilities/elements.md +55 -0
  354. package/skills/iyulab-components/references/utilities/icons.md +53 -0
  355. package/skills/iyulab-components/references/utilities/overlay-manager.md +34 -0
  356. package/skills/iyulab-components/references/utilities/sanitizers.md +32 -0
  357. package/skills/iyulab-components/references/utilities/theme.md +45 -0
  358. package/skills/iyulab-components/references/utilities/toast.md +58 -0
  359. package/dist/assets/icons/arrow-down.svg.js +0 -3
  360. package/dist/assets/icons/arrow-repeat.svg.js +0 -3
  361. package/dist/assets/icons/arrow-up.svg.js +0 -3
  362. package/dist/assets/icons/ban.svg.js +0 -3
  363. package/dist/assets/icons/bell-fill.svg.js +0 -3
  364. package/dist/assets/icons/box-arrow-up-right.svg.js +0 -3
  365. package/dist/assets/icons/check-circle-fill.svg.js +0 -3
  366. package/dist/assets/icons/check-lg.svg.js +0 -3
  367. package/dist/assets/icons/chevron-down.svg.js +0 -3
  368. package/dist/assets/icons/chevron-left.svg.js +0 -3
  369. package/dist/assets/icons/chevron-right.svg.js +0 -3
  370. package/dist/assets/icons/chevron-up.svg.js +0 -3
  371. package/dist/assets/icons/copy.svg.js +0 -3
  372. package/dist/assets/icons/dash-lg.svg.js +0 -3
  373. package/dist/assets/icons/exclamation-circle-fill.svg.js +0 -3
  374. package/dist/assets/icons/exclamation-triangle-fill.svg.js +0 -3
  375. package/dist/assets/icons/eye-slash.svg.js +0 -3
  376. package/dist/assets/icons/eye.svg.js +0 -3
  377. package/dist/assets/icons/file-earmark.svg.js +0 -3
  378. package/dist/assets/icons/flag.svg.js +0 -3
  379. package/dist/assets/icons/globe.svg.js +0 -3
  380. package/dist/assets/icons/hand-thumbs-down-fill.svg.js +0 -3
  381. package/dist/assets/icons/hand-thumbs-down.svg.js +0 -3
  382. package/dist/assets/icons/hand-thumbs-up-fill.svg.js +0 -3
  383. package/dist/assets/icons/hand-thumbs-up.svg.js +0 -3
  384. package/dist/assets/icons/info-circle-fill.svg.js +0 -3
  385. package/dist/assets/icons/lightbulb-fill.svg.js +0 -3
  386. package/dist/assets/icons/lightbulb-off.svg.js +0 -3
  387. package/dist/assets/icons/lightbulb.svg.js +0 -3
  388. package/dist/assets/icons/mic-fill.svg.js +0 -3
  389. package/dist/assets/icons/mic-mute-fill.svg.js +0 -3
  390. package/dist/assets/icons/paperclip.svg.js +0 -3
  391. package/dist/assets/icons/pencil-square.svg.js +0 -3
  392. package/dist/assets/icons/plus-lg.svg.js +0 -3
  393. package/dist/assets/icons/search.svg.js +0 -3
  394. package/dist/assets/icons/share.svg.js +0 -3
  395. package/dist/assets/icons/stop-circle.svg.js +0 -3
  396. package/dist/assets/icons/tools.svg.js +0 -3
  397. package/dist/assets/icons/x-lg.svg.js +0 -3
  398. package/dist/assets/styles/dark.css.js +0 -3
  399. package/dist/assets/styles/light.css.js +0 -3
  400. package/dist/components/BaseElement.d.ts +0 -33
  401. package/dist/components/BaseElement.js +0 -59
  402. package/dist/components/BaseElement.styles.js +0 -28
  403. package/dist/components/FloatingElement.d.ts +0 -104
  404. package/dist/components/FloatingElement.js +0 -195
  405. package/dist/components/FloatingElement.styles.js +0 -23
  406. package/dist/components/ModalElement.d.ts +0 -70
  407. package/dist/components/ModalElement.js +0 -144
  408. package/dist/components/ModalElement.styles.js +0 -29
  409. package/dist/components/alert/UAlert.component.d.ts +0 -40
  410. package/dist/components/alert/UAlert.component.js +0 -146
  411. package/dist/components/button/UButton.component.d.ts +0 -23
  412. package/dist/components/button/UButton.component.js +0 -72
  413. package/dist/components/card/UCard.component.d.ts +0 -21
  414. package/dist/components/card/UCard.component.js +0 -66
  415. package/dist/components/carousel/UCarousel.component.d.ts +0 -67
  416. package/dist/components/carousel/UCarousel.component.js +0 -243
  417. package/dist/components/dialog/UDialog.component.d.ts +0 -17
  418. package/dist/components/dialog/UDialog.component.js +0 -70
  419. package/dist/components/divider/UDivider.component.d.ts +0 -10
  420. package/dist/components/divider/UDivider.component.js +0 -30
  421. package/dist/components/drawer/UDrawer.component.d.ts +0 -18
  422. package/dist/components/drawer/UDrawer.component.js +0 -64
  423. package/dist/components/form/UForm.component.d.ts +0 -24
  424. package/dist/components/form/UForm.component.js +0 -76
  425. package/dist/components/icon/UIcon.component.d.ts +0 -29
  426. package/dist/components/icon/UIcon.component.js +0 -57
  427. package/dist/components/input/UInput.component.d.ts +0 -92
  428. package/dist/components/input/UInput.component.js +0 -267
  429. package/dist/components/menu/UMenu.component.d.ts +0 -67
  430. package/dist/components/menu/UMenu.component.js +0 -338
  431. package/dist/components/menu-item/UMenuItem.component.d.ts +0 -25
  432. package/dist/components/menu-item/UMenuItem.component.js +0 -111
  433. package/dist/components/progress-bar/UProgressBar.component.d.ts +0 -27
  434. package/dist/components/progress-bar/UProgressBar.component.js +0 -99
  435. package/dist/components/progress-ring/UProgressRing.component.d.ts +0 -33
  436. package/dist/components/progress-ring/UProgressRing.component.js +0 -114
  437. package/dist/components/skeleton/USkeleton.component.d.ts +0 -22
  438. package/dist/components/skeleton/USkeleton.component.js +0 -58
  439. package/dist/components/spinner/USpinner.component.d.ts +0 -9
  440. package/dist/components/spinner/USpinner.component.js +0 -22
  441. package/dist/components/split-panel/USplitPanel.component.d.ts +0 -44
  442. package/dist/components/split-panel/USplitPanel.component.js +0 -185
  443. package/dist/components/tag/UTag.component.d.ts +0 -23
  444. package/dist/components/tag/UTag.component.js +0 -72
  445. package/dist/components/tooltip/UTooltip.component.d.ts +0 -27
  446. package/dist/components/tooltip/UTooltip.component.js +0 -88
  447. package/dist/components/tree/UTree.component.d.ts +0 -37
  448. package/dist/components/tree/UTree.component.js +0 -120
  449. package/dist/components/tree-item/UTreeItem.component.d.ts +0 -41
  450. package/dist/components/tree-item/UTreeItem.component.js +0 -161
  451. package/dist/events/UChangeEvent.d.ts +0 -6
  452. package/dist/events/UHideEvent.d.ts +0 -6
  453. package/dist/events/UInputEvent.d.ts +0 -6
  454. package/dist/events/UResizeEvent.d.ts +0 -6
  455. package/dist/events/USelectEvent.d.ts +0 -6
  456. package/dist/events/UShowEvent.d.ts +0 -6
  457. package/dist/react-components/UAlert.d.ts +0 -8
  458. package/dist/react-components/UForm.d.ts +0 -8
  459. package/dist/react-components/UInput.d.ts +0 -8
  460. package/dist/react-components/UMenu.d.ts +0 -8
  461. package/dist/react-components/UMenuItem.d.ts +0 -8
  462. package/dist/react-components/UProgressBar.d.ts +0 -8
  463. package/dist/react-components/UProgressRing.d.ts +0 -8
  464. package/dist/react-components/USplitPanel.d.ts +0 -8
  465. package/dist/react-components/UTooltip.d.ts +0 -8
  466. package/dist/react-components/UTree.d.ts +0 -8
  467. package/dist/react-components/UTreeItem.d.ts +0 -8
  468. package/dist/utilities/IconRegistry.d.ts +0 -40
  469. package/dist/utilities/IconRegistry.js +0 -119
  470. package/dist/utilities/Notifier.d.ts +0 -31
  471. package/dist/utilities/Notifier.js +0 -79
  472. package/dist/utilities/decorators.d.ts +0 -28
  473. /package/dist/components/{BaseElement.styles.d.ts → UDataElement.styles.d.ts} +0 -0
  474. /package/dist/components/{FloatingElement.styles.d.ts → UElement.styles.d.ts} +0 -0
  475. /package/dist/components/{ModalElement.styles.d.ts → UFormControlElement.styles.d.ts} +0 -0
@@ -0,0 +1,86 @@
1
+ # u-select
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/select/USelect.js';
5
+ import '@iyulab/components/dist/components/option/UOption.js';
6
+ ```
7
+
8
+ **Tag:** `u-select`
9
+
10
+ Dropdown select with single or multiple selection, search, and clear support. Form-associated.
11
+
12
+ ```html
13
+ <u-select name="country" placeholder="Select country">
14
+ <u-option value="us">United States</u-option>
15
+ <u-option value="kr">South Korea</u-option>
16
+ <u-option value="jp">Japan</u-option>
17
+ </u-select>
18
+
19
+ <!-- Multiple + searchable -->
20
+ <u-select name="tags" multiple searchable clearable max-count="3">
21
+ <u-option value="js">JavaScript</u-option>
22
+ <u-option value="ts">TypeScript</u-option>
23
+ <u-option value="py">Python</u-option>
24
+ </u-select>
25
+ ```
26
+
27
+ ---
28
+
29
+ ## Slots
30
+
31
+ | Name | Description |
32
+ |------|-------------|
33
+ | *(default)* | `u-option` elements |
34
+
35
+ ## Properties
36
+
37
+ | Property | Type | Default | Reflect | Description |
38
+ |----------|------|---------|---------|-------------|
39
+ | `value` | `string \| string[]` | — | — | Selected value(s) |
40
+ | `variant` | `'outlined'\|'filled'\|'underlined'\|'borderless'` | `'outlined'` | ✓ | Visual style |
41
+ | `multiple` | `boolean` | `false` | ✓ | Allow multiple selections |
42
+ | `searchable` | `boolean` | `false` | ✓ | Filter options by text |
43
+ | `clearable` | `boolean` | `false` | ✓ | Show clear button |
44
+ | `loading` | `boolean` | `false` | ✓ | Loading state |
45
+ | `placeholder` | `string` | — | — | Placeholder text |
46
+ | `minCount` | `number` | — | — | Minimum required selections |
47
+ | `maxCount` | `number` | — | — | Maximum allowed selections |
48
+ | `disabled` | `boolean` | `false` | ✓ | Disable |
49
+ | `readonly` | `boolean` | `false` | ✓ | Read-only |
50
+ | `required` | `boolean` | `false` | ✓ | Required |
51
+ | `invalid` | `boolean` | `false` | ✓ | Validation failed |
52
+ | `name` | `string` | — | — | Form field name |
53
+ | `label` | `string` | — | — | Field label |
54
+ | `description` | `string` | — | — | Helper text |
55
+ | `validationMessage` | `string` | — | — | Custom validation message |
56
+
57
+ ## Events
58
+
59
+ | Event | Description |
60
+ |-------|-------------|
61
+ | `change` | Fires when selection changes |
62
+
63
+ ## Methods
64
+
65
+ | Method | Description |
66
+ |--------|-------------|
67
+ | `validate()` | Validate; sets `invalid` |
68
+ | `reset()` | Reset value |
69
+
70
+ ## CSS Parts
71
+
72
+ | Part | Description |
73
+ |------|-------------|
74
+ | `field` | Outer field wrapper |
75
+ | `container` | Trigger area |
76
+ | `popover` | Dropdown list container |
77
+ | `search-input` | Search input inside dropdown |
78
+
79
+ ## CSS Custom Properties
80
+
81
+ | Property | Description |
82
+ |----------|-------------|
83
+ | `--select-popover-min-width` | Dropdown min-width |
84
+ | `--select-popover-max-width` | Dropdown max-width |
85
+ | `--select-popover-min-height` | Dropdown min-height |
86
+ | `--select-popover-max-height` | Dropdown max-height |
@@ -0,0 +1,46 @@
1
+ # u-skeleton
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/skeleton/USkeleton.js';
5
+ ```
6
+
7
+ **Tag:** `u-skeleton`
8
+
9
+ Placeholder shape displayed while content is loading.
10
+
11
+ ```html
12
+ <!-- Text line -->
13
+ <u-skeleton width="200px" height="1rem"></u-skeleton>
14
+
15
+ <!-- Circle avatar placeholder -->
16
+ <u-skeleton shape="circle" width="48px" height="48px"></u-skeleton>
17
+
18
+ <!-- Card placeholder -->
19
+ <u-skeleton shape="rounded" width="100%" height="120px" effect="shimmer"></u-skeleton>
20
+ ```
21
+
22
+ ---
23
+
24
+ ## Slots
25
+
26
+ | Name | Description |
27
+ |------|-------------|
28
+ | *(default)* | Content (hidden while skeleton is visible) |
29
+
30
+ ## Properties
31
+
32
+ | Property | Type | Default | Reflect | Description |
33
+ |----------|------|---------|---------|-------------|
34
+ | `shape` | `'rectangle'\|'circle'\|'rounded'` | `'rectangle'` | ✓ | Shape of the placeholder |
35
+ | `effect` | `'none'\|'pulse'\|'shimmer'` | `'shimmer'` | ✓ | Animation style |
36
+ | `width` | `string` | — | — | CSS width value |
37
+ | `height` | `string` | — | — | CSS height value |
38
+
39
+ ## CSS Custom Properties
40
+
41
+ | Property | Description |
42
+ |----------|-------------|
43
+ | `--skeleton-width` | Override width |
44
+ | `--skeleton-height` | Override height |
45
+ | `--skeleton-color` | Base placeholder color |
46
+ | `--skeleton-shimmer-color` | Shimmer highlight color |
@@ -0,0 +1,89 @@
1
+ # u-slider
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/slider/USlider.js';
5
+ ```
6
+
7
+ **Tag:** `u-slider`
8
+
9
+ Range slider. Single-thumb or dual-thumb (range) mode. Supports marks, value display, and tooltip on drag. Form-associated.
10
+
11
+ ```html
12
+ <u-slider name="volume" value="50"></u-slider>
13
+
14
+ <!-- Range mode -->
15
+ <u-slider name="priceRange" range value="[20,80]"></u-slider>
16
+
17
+ <!-- With marks and tooltip -->
18
+ <u-slider name="steps" min="0" max="100" step="25" show-tooltip>
19
+ </u-slider>
20
+ ```
21
+
22
+ ---
23
+
24
+ ## Slots
25
+
26
+ | Name | Description |
27
+ |------|-------------|
28
+ | `thumb` | Custom thumb handle (single or start thumb in range mode) |
29
+ | `thumb-end` | Custom end thumb handle (range mode only) |
30
+
31
+ ## Properties
32
+
33
+ | Property | Type | Default | Description |
34
+ |----------|------|---------|-------------|
35
+ | `value` | `number \| number[]` | — | Current value (array for range mode) |
36
+ | `min` | `number` | `0` | Minimum value |
37
+ | `max` | `number` | `100` | Maximum value |
38
+ | `step` | `number` | `1` | Step size |
39
+ | `range` | `boolean` | `false` | Enable dual-thumb range mode |
40
+ | `showValue` | `boolean` | `false` | Display current value next to slider |
41
+ | `showTooltip` | `boolean` | `false` | Show value tooltip while dragging |
42
+ | `formatter` | `(v: number) => string` | — | Custom value formatter |
43
+ | `marks` | `SliderMark[]` | — | Tick marks (`{ value, label? }`) |
44
+ | `offset` | `number` | — | Start value offset (single mode) |
45
+ | `disabled` | `boolean` | `false` | Disable |
46
+ | `readonly` | `boolean` | `false` | Read-only |
47
+ | `required` | `boolean` | `false` | Required |
48
+ | `invalid` | `boolean` | `false` | Validation failed |
49
+ | `name` | `string` | — | Form field name |
50
+
51
+ ## Events
52
+
53
+ | Event | Description |
54
+ |-------|-------------|
55
+ | `change` | Fires when value changes |
56
+
57
+ ## Methods
58
+
59
+ | Method | Description |
60
+ |--------|-------------|
61
+ | `validate()` | Validate; sets `invalid` |
62
+ | `reset()` | Reset value |
63
+
64
+ ## CSS Parts
65
+
66
+ | Part | Description |
67
+ |------|-------------|
68
+ | `field` | Outer wrapper |
69
+ | `container` | Track and thumbs container |
70
+ | `track` | Slider track |
71
+ | `fill` | Filled portion of track |
72
+ | `thumb` | Start/single thumb |
73
+ | `thumb-end` | End thumb (range mode) |
74
+ | `thumb-tooltip` | Drag tooltip |
75
+ | `mark` | Tick mark dot |
76
+ | `mark-label` | Tick mark label |
77
+
78
+ ## CSS Custom Properties
79
+
80
+ | Property | Description |
81
+ |----------|-------------|
82
+ | `--slider-fill-color` | Track fill color |
83
+ | `--slider-track-height` | Track height |
84
+ | `--slider-track-color` | Track background color |
85
+ | `--slider-thumb-size` | Thumb diameter |
86
+ | `--slider-thumb-color` | Thumb fill color |
87
+ | `--slider-thumb-border-color` | Thumb border color |
88
+ | `--slider-mark-size` | Mark dot size |
89
+ | `--slider-mark-color` | Mark dot color |
@@ -0,0 +1,47 @@
1
+ # u-spinner
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/spinner/USpinner.js';
5
+ ```
6
+
7
+ **Tag:** `u-spinner`
8
+
9
+ Animated circular spinner for loading states. Optional label below the spinner via default slot.
10
+
11
+ ```html
12
+ <u-spinner></u-spinner>
13
+
14
+ <u-spinner color="blue">Loading...</u-spinner>
15
+
16
+ <u-spinner color="green"></u-spinner>
17
+ ```
18
+
19
+ ---
20
+
21
+ ## Slots
22
+
23
+ | Name | Description |
24
+ |------|-------------|
25
+ | *(default)* | Label text shown below the spinner |
26
+
27
+ ## Properties
28
+
29
+ | Property | Type | Default | Reflect | Description |
30
+ |----------|------|---------|---------|-------------|
31
+ | `color` | `'neutral'\|'blue'\|'green'\|'yellow'\|'red'\|'orange'\|'teal'\|'cyan'\|'purple'\|'pink'` | — | ✓ | Spinner color preset |
32
+
33
+ ## CSS Parts
34
+
35
+ | Part | Description |
36
+ |------|-------------|
37
+ | `svg` | Spinner SVG element |
38
+ | `label` | Label wrapper |
39
+
40
+ ## CSS Custom Properties
41
+
42
+ | Property | Description |
43
+ |----------|-------------|
44
+ | `--spinner-track-width` | Track stroke width |
45
+ | `--spinner-track-color` | Track (background arc) color |
46
+ | `--spinner-indicator-color` | Animated arc color |
47
+ | `--spinner-indicator-speed` | Rotation animation duration |
@@ -0,0 +1,65 @@
1
+ # u-split-panel
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/split-panel/USplitPanel.js';
5
+ ```
6
+
7
+ **Tag:** `u-split-panel`
8
+
9
+ Resizable two-panel layout. Drag the splitter to adjust panel sizes.
10
+
11
+ ```html
12
+ <u-split-panel style="height: 400px;">
13
+ <div>Left panel content</div>
14
+ <div>Right panel content</div>
15
+ </u-split-panel>
16
+
17
+ <!-- Vertical split -->
18
+ <u-split-panel orientation="vertical" default-ratio="[30,70]">
19
+ <div>Top panel</div>
20
+ <div>Bottom panel</div>
21
+ </u-split-panel>
22
+
23
+ <!-- Custom splitter handle -->
24
+ <u-split-panel>
25
+ <div>Panel A</div>
26
+ <div>Panel B</div>
27
+ <div slot="splitter" style="background:blue; width:4px;"></div>
28
+ </u-split-panel>
29
+ ```
30
+
31
+ ---
32
+
33
+ ## Slots
34
+
35
+ | Name | Description |
36
+ |------|-------------|
37
+ | *(default)* | Exactly two panel elements |
38
+ | `splitter` | Custom splitter/handle UI |
39
+
40
+ ## Properties
41
+
42
+ | Property | Type | Default | Reflect | Description |
43
+ |----------|------|---------|---------|-------------|
44
+ | `orientation` | `'horizontal'\|'vertical'` | `'horizontal'` | ✓ | Split direction |
45
+ | `defaultRatio` | `number[]` | `[]` | ✓ | Initial size ratios (e.g. `[30, 70]`) |
46
+ | `ratio` | `number[]` | `[]` | ✓ | Current size ratios |
47
+ | `disabled` | `boolean` | `false` | ✓ | Prevent resizing |
48
+ | `lazy` | `boolean` | `false` | ✓ | Show preview while dragging, commit on release |
49
+
50
+ ## Events
51
+
52
+ | Event | Description |
53
+ |-------|-------------|
54
+ | `shift-start` | Drag starts |
55
+ | `shift` | Dragging in progress |
56
+ | `shift-end` | Drag ends |
57
+
58
+ ## CSS Custom Properties
59
+
60
+ | Property | Description |
61
+ |----------|-------------|
62
+ | `--splitter-size` | Splitter handle thickness |
63
+ | `--splitter-color` | Splitter default color |
64
+ | `--splitter-color-hover` | Splitter color on hover |
65
+ | `--splitter-color-active` | Splitter color while dragging |
@@ -0,0 +1,81 @@
1
+ # u-switch
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/switch/USwitch.js';
5
+ ```
6
+
7
+ **Tag:** `u-switch`
8
+
9
+ Toggle switch (on/off). Supports custom track and thumb content via slots. Form-associated.
10
+
11
+ ```html
12
+ <u-switch name="notifications" checked>Enable notifications</u-switch>
13
+
14
+ <!-- Custom track labels -->
15
+ <u-switch name="mode">
16
+ <span slot="track-checked">ON</span>
17
+ <span slot="track-unchecked">OFF</span>
18
+ Dark mode
19
+ </u-switch>
20
+ ```
21
+
22
+ ---
23
+
24
+ ## Slots
25
+
26
+ | Name | Description |
27
+ |------|-------------|
28
+ | *(default)* | Label text |
29
+ | `track-checked` | Content inside the track when checked |
30
+ | `track-unchecked` | Content inside the track when unchecked |
31
+ | `thumb-checked` | Thumb content when checked |
32
+ | `thumb-unchecked` | Thumb content when unchecked |
33
+
34
+ ## Properties
35
+
36
+ | Property | Type | Default | Reflect | Description |
37
+ |----------|------|---------|---------|-------------|
38
+ | `checked` | `boolean` | `false` | ✓ | On/off state |
39
+ | `disabled` | `boolean` | `false` | ✓ | Disable |
40
+ | `readonly` | `boolean` | `false` | ✓ | Read-only |
41
+ | `required` | `boolean` | `false` | ✓ | Required |
42
+ | `invalid` | `boolean` | `false` | ✓ | Validation failed |
43
+ | `name` | `string` | — | — | Form field name |
44
+ | `value` | `string` | — | — | Submitted value |
45
+
46
+ ## Events
47
+
48
+ | Event | Description |
49
+ |-------|-------------|
50
+ | `change` | Fires when checked state changes |
51
+
52
+ ## Methods
53
+
54
+ | Method | Description |
55
+ |--------|-------------|
56
+ | `validate()` | Validate; sets `invalid` |
57
+ | `reset()` | Reset state |
58
+
59
+ ## CSS Parts
60
+
61
+ | Part | Description |
62
+ |------|-------------|
63
+ | `wrapper` | Outer layout wrapper |
64
+ | `track` | Track element |
65
+ | `thumb` | Thumb element |
66
+ | `label` | Label text wrapper |
67
+
68
+ ## CSS Custom Properties
69
+
70
+ | Property | Description |
71
+ |----------|-------------|
72
+ | `--switch-track-width` | Track width |
73
+ | `--switch-track-height` | Track height |
74
+ | `--switch-track-color` | Track color (unchecked) |
75
+ | `--switch-track-color-checked` | Track color (checked) |
76
+ | `--switch-thumb-size` | Thumb diameter |
77
+ | `--switch-thumb-offset` | Thumb padding from track edge |
78
+ | `--switch-thumb-color` | Thumb color (unchecked) |
79
+ | `--switch-thumb-color-checked` | Thumb color (checked) |
80
+ | `--switch-radius` | Track border radius |
81
+ | `--switch-duration` | Transition animation duration |
@@ -0,0 +1,93 @@
1
+ # u-tab-panel / u-tab
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/tab-panel/UTabPanel.js';
5
+ import '@iyulab/components/dist/components/tab/UTab.js';
6
+ import '@iyulab/components/dist/components/panel/UPanel.js';
7
+ ```
8
+
9
+ **Tags:** `u-tab-panel`, `u-tab`
10
+
11
+ Tab-based content switcher. Pair each `u-tab` with a `u-panel` of the same `value`.
12
+
13
+ ```html
14
+ <u-tab-panel value="home">
15
+ <u-tab value="home">Home</u-tab>
16
+ <u-tab value="profile">Profile</u-tab>
17
+ <u-tab value="settings">Settings</u-tab>
18
+
19
+ <u-panel value="home">Home content</u-panel>
20
+ <u-panel value="profile">Profile content</u-panel>
21
+ <u-panel value="settings">Settings content</u-panel>
22
+ </u-tab-panel>
23
+
24
+ <!-- Card variant, right placement, editable -->
25
+ <u-tab-panel variant="card" placement="left" editable draggable>
26
+ <u-tab value="a" removable>Tab A</u-tab>
27
+ <u-panel value="a">Panel A</u-panel>
28
+ </u-tab-panel>
29
+ ```
30
+
31
+ ---
32
+
33
+ ## u-tab-panel
34
+
35
+ ### Slots
36
+
37
+ | Name | Description |
38
+ |------|-------------|
39
+ | *(default)* | `u-tab` and `u-panel` elements |
40
+ | `toolbar` | Toolbar area at the end of the tab bar |
41
+
42
+ ### Properties
43
+
44
+ | Property | Type | Default | Reflect | Description |
45
+ |----------|------|---------|---------|-------------|
46
+ | `value` | `string` | `''` | ✓ | Currently active tab value |
47
+ | `variant` | `'line'\|'card'\|'pill'\|'plain'` | `'line'` | ✓ | Tab bar style |
48
+ | `placement` | `'top'\|'bottom'\|'left'\|'right'` | `'top'` | ✓ | Tab bar position |
49
+ | `editable` | `boolean` | `false` | ✓ | Allow adding/removing tabs |
50
+ | `draggable` | `boolean` | `false` | ✓ | Allow reordering tabs by drag |
51
+ | `disabled` | `boolean` | `false` | ✓ | Disable all tabs |
52
+
53
+ ### CSS Parts
54
+
55
+ | Part | Description |
56
+ |------|-------------|
57
+ | `header` | Tab bar row |
58
+ | `nav` | Tab navigation container |
59
+ | `toolbar` | Toolbar slot area |
60
+ | `content` | Panel content area |
61
+
62
+ ---
63
+
64
+ ## u-tab
65
+
66
+ ### Slots
67
+
68
+ | Name | Description |
69
+ |------|-------------|
70
+ | `prefix` | Leading content |
71
+ | *(default)* | Tab label |
72
+ | `suffix` | Trailing content |
73
+
74
+ ### Properties
75
+
76
+ | Property | Type | Default | Reflect | Description |
77
+ |----------|------|---------|---------|-------------|
78
+ | `value` | `string` | `''` | ✓ | Matches a `u-panel` with the same `value` |
79
+ | `disabled` | `boolean` | `false` | ✓ | Disable the tab |
80
+ | `removable` | `boolean` | `false` | ✓ | Show close/remove button |
81
+ | `draggable` | `boolean` | `false` | ✓ | Allow dragging to reorder |
82
+
83
+ ### Events
84
+
85
+ | Event | Cancelable | Description |
86
+ |-------|------------|-------------|
87
+ | `remove` | ✓ | Fires when the remove button is clicked |
88
+
89
+ ### CSS Parts
90
+
91
+ | Part | Description |
92
+ |------|-------------|
93
+ | `remove-btn` | Remove button |
@@ -0,0 +1,55 @@
1
+ # u-tag
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/tag/UTag.js';
5
+ ```
6
+
7
+ **Tag:** `u-tag`
8
+
9
+ Non-interactive label tag for categories, status, or metadata display.
10
+
11
+ ```html
12
+ <u-tag>Default</u-tag>
13
+ <u-tag color="blue" variant="outlined">TypeScript</u-tag>
14
+ <u-tag color="green" rounded>Active</u-tag>
15
+
16
+ <!-- With icon prefix -->
17
+ <u-tag color="red">
18
+ <u-icon slot="prefix" lib="tabler" name="alert-circle"></u-icon>
19
+ Error
20
+ </u-tag>
21
+ ```
22
+
23
+ For interactive chips (selectable/removable), use [`u-chip`](./chip.md) instead.
24
+
25
+ ---
26
+
27
+ ## Slots
28
+
29
+ | Name | Description |
30
+ |------|-------------|
31
+ | `prefix` | Leading content |
32
+ | *(default)* | Tag label |
33
+ | `suffix` | Trailing content |
34
+
35
+ ## Properties
36
+
37
+ | Property | Type | Default | Reflect | Description |
38
+ |----------|------|---------|---------|-------------|
39
+ | `variant` | `'solid'\|'surface'\|'filled'\|'outlined'` | `'filled'` | ✓ | Visual style |
40
+ | `color` | `'neutral'\|'blue'\|'green'\|'yellow'\|'red'\|'orange'\|'teal'\|'cyan'\|'purple'\|'pink'` | `'neutral'` | ✓ | Color |
41
+ | `rounded` | `boolean` | `false` | ✓ | Pill shape |
42
+
43
+ ## CSS Parts
44
+
45
+ | Part | Description |
46
+ |------|-------------|
47
+ | `content` | Inner content wrapper |
48
+
49
+ ## CSS Custom Properties
50
+
51
+ | Property | Description |
52
+ |----------|-------------|
53
+ | `--tag-color` | Text color |
54
+ | `--tag-bg-color` | Background color |
55
+ | `--tag-border-color` | Border color |
@@ -0,0 +1,67 @@
1
+ # u-textarea
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/textarea/UTextarea.js';
5
+ ```
6
+
7
+ **Tag:** `u-textarea`
8
+
9
+ Multi-line text input with auto-resize and optional character counter. Form-associated.
10
+
11
+ ```html
12
+ <u-textarea name="bio" placeholder="Tell us about yourself" auto-resize></u-textarea>
13
+
14
+ <!-- With counter and max length -->
15
+ <u-textarea name="comment" maxlength="500" counter min-rows="3" max-rows="8">
16
+ </u-textarea>
17
+ ```
18
+
19
+ ---
20
+
21
+ ## Properties
22
+
23
+ | Property | Type | Default | Reflect | Description |
24
+ |----------|------|---------|---------|-------------|
25
+ | `value` | `string` | — | — | Current text value |
26
+ | `variant` | `'outlined'\|'filled'\|'underlined'\|'borderless'` | `'outlined'` | ✓ | Visual style |
27
+ | `resize` | `'none'\|'vertical'\|'horizontal'\|'both'\|'auto'` | `'auto'` | ✓ | Resize behavior |
28
+ | `minRows` | `number` | — | — | Minimum visible rows |
29
+ | `maxRows` | `number` | — | — | Maximum rows (auto-resize cap) |
30
+ | `counter` | `boolean` | `false` | ✓ | Show character counter |
31
+ | `minlength` | `number` | — | — | Minimum character count |
32
+ | `maxlength` | `number` | — | — | Maximum character count |
33
+ | `placeholder` | `string` | — | — | Placeholder text |
34
+ | `autofocus` | `boolean` | `false` | — | Auto-focus on render |
35
+ | `autocomplete` | `AutoFill` | — | — | Browser autocomplete |
36
+ | `spellcheck` | `boolean` | `false` | — | Spellcheck |
37
+ | `disabled` | `boolean` | `false` | ✓ | Disable |
38
+ | `readonly` | `boolean` | `false` | ✓ | Read-only |
39
+ | `required` | `boolean` | `false` | ✓ | Required |
40
+ | `invalid` | `boolean` | `false` | ✓ | Validation failed |
41
+ | `name` | `string` | — | — | Form field name |
42
+ | `label` | `string` | — | — | Field label |
43
+ | `description` | `string` | — | — | Helper text |
44
+ | `validationMessage` | `string` | — | — | Custom validation message |
45
+
46
+ ## Events
47
+
48
+ | Event | Description |
49
+ |-------|-------------|
50
+ | `input` | Fires on every keystroke |
51
+ | `change` | Fires when value is committed |
52
+
53
+ ## Methods
54
+
55
+ | Method | Description |
56
+ |--------|-------------|
57
+ | `validate()` | Validate; sets `invalid` |
58
+ | `reset()` | Reset value |
59
+
60
+ ## CSS Parts
61
+
62
+ | Part | Description |
63
+ |------|-------------|
64
+ | `field` | Outer wrapper |
65
+ | `container` | Textarea area wrapper |
66
+ | `textarea` | Native `<textarea>` element |
67
+ | `counter` | Character counter display |
@@ -0,0 +1,58 @@
1
+ # u-tooltip
2
+
3
+ ```ts
4
+ import '@iyulab/components/dist/components/tooltip/UTooltip.js';
5
+ ```
6
+
7
+ **Tag:** `u-tooltip`
8
+
9
+ Hover/focus tooltip anchored to a `for` target. Opens and closes automatically.
10
+
11
+ ```html
12
+ <u-button id="save-btn">Save</u-button>
13
+ <u-tooltip for="#save-btn" placement="top">
14
+ Save your changes (Ctrl+S)
15
+ </u-tooltip>
16
+
17
+ <!-- Interactive tooltip (stays open when hovered) -->
18
+ <u-tooltip for="#info" interactive placement="bottom" offset="8">
19
+ <a href="/docs">Learn more</a>
20
+ </u-tooltip>
21
+
22
+ <!-- Tracking cursor position -->
23
+ <u-tooltip for="#chart" tracking>
24
+ Data point detail
25
+ </u-tooltip>
26
+ ```
27
+
28
+ ---
29
+
30
+ ## Slots
31
+
32
+ | Name | Description |
33
+ |------|-------------|
34
+ | *(default)* | Tooltip content |
35
+
36
+ ## Properties
37
+
38
+ Inherits all `UFloatingElement` properties (see [floating.md](../extensions/floating.md)), plus:
39
+
40
+ | Property | Type | Default | Reflect | Description |
41
+ |----------|------|---------|---------|-------------|
42
+ | `for` | `string` | — | ✓ | CSS selector of the target element |
43
+ | `open` | `boolean` | `false` | ✓ | Visibility state |
44
+ | `placement` | `Placement` | — | — | Preferred placement |
45
+ | `offset` | `OffsetOptions` | `0` | — | Gap from target |
46
+ | `shift` | `boolean` | `false` | — | Auto-shift to stay in viewport |
47
+ | `arrow` | `boolean` | `false` | — | Show pointing arrow |
48
+ | `showDelay` | `number` | `0` | — | Open delay in ms |
49
+ | `hideDelay` | `number` | `0` | — | Close delay in ms |
50
+ | `interactive` | `boolean` | `false` | ✓ | Keep open when mouse is over tooltip |
51
+ | `tracking` | `boolean` | `false` | ✓ | Follow mouse cursor position |
52
+
53
+ ## Events
54
+
55
+ | Event | Cancelable | Description |
56
+ |-------|------------|-------------|
57
+ | `show` | ✓ | Before tooltip opens |
58
+ | `hide` | ✓ | Before tooltip closes |