@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
@@ -1,114 +0,0 @@
1
- import { html } from 'lit';
2
- import { state, property } from 'lit/decorators.js';
3
- import { BaseElement } from '../BaseElement.js';
4
- import { styles } from './UProgressRing.styles.js';
5
-
6
- var __defProp = Object.defineProperty;
7
- var __decorateClass = (decorators, target, key, kind) => {
8
- var result = void 0 ;
9
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
10
- if (decorator = decorators[i])
11
- result = (decorator(target, key, result) ) || result;
12
- if (result) __defProp(target, key, result);
13
- return result;
14
- };
15
- const PATH_LENGTH = 100;
16
- class UProgressRing extends BaseElement {
17
- constructor() {
18
- super(...arguments);
19
- this.dasharray = PATH_LENGTH.toString();
20
- this.progress = 0;
21
- this.variant = "smooth";
22
- this.minValue = 0;
23
- this.maxValue = 100;
24
- this.value = 0;
25
- }
26
- static {
27
- this.styles = [super.styles, styles];
28
- }
29
- static {
30
- this.dependencies = {};
31
- }
32
- willUpdate(changedProperties) {
33
- super.willUpdate(changedProperties);
34
- if (changedProperties.has("variant")) {
35
- this.updateDashArray();
36
- }
37
- if (changedProperties.has("minValue") || changedProperties.has("maxValue") || changedProperties.has("value")) {
38
- this.updateProgressState();
39
- }
40
- }
41
- render() {
42
- return html`
43
- <svg class="progress-ring" part="base">
44
- <defs>
45
- <mask id="progress-mask">
46
- <circle
47
- pathLength="${PATH_LENGTH}"
48
- stroke="white"
49
- stroke-dasharray="${PATH_LENGTH}"
50
- stroke-dashoffset="${PATH_LENGTH * (1 - this.progress)}"
51
- stroke-linecap=${this.variant === "smooth" ? "round" : "butt"}
52
- ></circle>
53
- </mask>
54
- </defs>
55
-
56
- <circle
57
- class="track"
58
- pathLength="${PATH_LENGTH}"
59
- stroke-dasharray="${this.dasharray}"
60
- ></circle>
61
- <circle
62
- class="indicator"
63
- pathLength="${PATH_LENGTH}"
64
- stroke-dasharray="${this.dasharray}"
65
- mask="url(#progress-mask)"
66
- ></circle>
67
- </svg>
68
- <div class="label" part="label">
69
- ${Math.round(this.progress * 100)} %
70
- </div>
71
- `;
72
- }
73
- /**
74
- * 진행 상태를 0과 1 사이의 값으로 반환합니다.
75
- */
76
- updateProgressState() {
77
- const range = this.maxValue - this.minValue;
78
- const clampedValue = Math.max(this.minValue, Math.min(this.maxValue, this.value));
79
- this.progress = range === 0 ? 0 : (clampedValue - this.minValue) / range;
80
- }
81
- /**
82
- * variant에 따라 dasharray 값을 반환합니다.
83
- * [dash-length] [gap-length] or [dash-length] 형식
84
- */
85
- updateDashArray() {
86
- if (this.variant === "ticks") {
87
- this.dasharray = "1 1";
88
- } else if (this.variant === "blocks") {
89
- this.dasharray = "8 2";
90
- } else {
91
- this.dasharray = PATH_LENGTH.toString();
92
- }
93
- }
94
- }
95
- __decorateClass([
96
- state()
97
- ], UProgressRing.prototype, "dasharray");
98
- __decorateClass([
99
- state()
100
- ], UProgressRing.prototype, "progress");
101
- __decorateClass([
102
- property({ type: String, reflect: true })
103
- ], UProgressRing.prototype, "variant");
104
- __decorateClass([
105
- property({ type: Number })
106
- ], UProgressRing.prototype, "minValue");
107
- __decorateClass([
108
- property({ type: Number })
109
- ], UProgressRing.prototype, "maxValue");
110
- __decorateClass([
111
- property({ type: Number })
112
- ], UProgressRing.prototype, "value");
113
-
114
- export { UProgressRing };
@@ -1,22 +0,0 @@
1
- import { PropertyValues } from 'lit';
2
- import { BaseElement } from '../BaseElement.js';
3
- export type SkeletonShape = 'default' | 'circle' | 'rounded';
4
- export type SkeletonEffect = 'pulse' | 'shimmer' | 'none';
5
- /**
6
- * 콘텐츠가 로딩 중임을 나타내는 Skeleton 컴포넌트입니다.
7
- * 다양한 모양과 애니메이션 효과를 지원합니다.
8
- */
9
- export declare class USkeleton extends BaseElement {
10
- static styles: import('lit').CSSResultGroup[];
11
- static dependencies: Record<string, typeof BaseElement>;
12
- /** 모양 (default, circle, rounded) */
13
- shape: SkeletonShape;
14
- /** 애니메이션 효과 (pulse, shimmer, none) */
15
- effect: SkeletonEffect;
16
- /** 스켈레톤의 너비 (CSS 값) */
17
- width?: string;
18
- /** 스켈레톤의 높이 (CSS 값) */
19
- height?: string;
20
- protected updated(changedProperties: PropertyValues): void;
21
- render(): import('lit-html').TemplateResult<1>;
22
- }
@@ -1,58 +0,0 @@
1
- import { html } from 'lit';
2
- import { property } from 'lit/decorators.js';
3
- import { BaseElement } from '../BaseElement.js';
4
- import { styles } from './USkeleton.styles.js';
5
-
6
- var __defProp = Object.defineProperty;
7
- var __decorateClass = (decorators, target, key, kind) => {
8
- var result = void 0 ;
9
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
10
- if (decorator = decorators[i])
11
- result = (decorator(target, key, result) ) || result;
12
- if (result) __defProp(target, key, result);
13
- return result;
14
- };
15
- class USkeleton extends BaseElement {
16
- constructor() {
17
- super(...arguments);
18
- this.shape = "default";
19
- this.effect = "pulse";
20
- }
21
- static {
22
- this.styles = [super.styles, styles];
23
- }
24
- static {
25
- this.dependencies = {};
26
- }
27
- updated(changedProperties) {
28
- super.updated(changedProperties);
29
- if (changedProperties.has("width") && this.width) {
30
- this.style.setProperty("--skeleton-width", this.width);
31
- }
32
- if (changedProperties.has("height") && this.height) {
33
- this.style.setProperty("--skeleton-height", this.height);
34
- }
35
- }
36
- render() {
37
- return html`
38
- <div class="skeleton" part="base"
39
- shape=${this.shape}
40
- effect=${this.effect}
41
- ></div>
42
- `;
43
- }
44
- }
45
- __decorateClass([
46
- property({ type: String, reflect: true })
47
- ], USkeleton.prototype, "shape");
48
- __decorateClass([
49
- property({ type: String, reflect: true })
50
- ], USkeleton.prototype, "effect");
51
- __decorateClass([
52
- property({ type: String })
53
- ], USkeleton.prototype, "width");
54
- __decorateClass([
55
- property({ type: String })
56
- ], USkeleton.prototype, "height");
57
-
58
- export { USkeleton };
@@ -1,9 +0,0 @@
1
- import { BaseElement } from '../BaseElement.js';
2
- /**
3
- * Spinner 컴포넌트는 로딩 상태를 시각적으로 표시하는 회전하는 원형 스피너를 제공합니다.
4
- */
5
- export declare class USpinner extends BaseElement {
6
- static styles: import('lit').CSSResultGroup[];
7
- static dependencies: Record<string, typeof BaseElement>;
8
- render(): import('lit-html').TemplateResult<1>;
9
- }
@@ -1,22 +0,0 @@
1
- import { html } from 'lit';
2
- import { BaseElement } from '../BaseElement.js';
3
- import { styles } from './USpinner.styles.js';
4
-
5
- class USpinner extends BaseElement {
6
- static {
7
- this.styles = [super.styles, styles];
8
- }
9
- static {
10
- this.dependencies = {};
11
- }
12
- render() {
13
- return html`
14
- <svg class="spinner" part="base">
15
- <circle class="track"></circle>
16
- <circle class="indicator"></circle>
17
- </svg>
18
- `;
19
- }
20
- }
21
-
22
- export { USpinner };
@@ -1,44 +0,0 @@
1
- import { PropertyValues } from 'lit';
2
- import { BaseElement } from '../BaseElement.js';
3
- /**
4
- * SplitPanel 컴포넌트는 화면을 여러 개의 패널로 분할하여 표시합니다.
5
- */
6
- export declare class USplitPanel extends BaseElement {
7
- static styles: import('lit').CSSResultGroup[];
8
- static dependencies: Record<string, typeof BaseElement>;
9
- /** 현재 상태를 저장하는 패널 요소들 */
10
- private panels;
11
- private sizes;
12
- /** 드래그 시작 시 저장되는 정보 */
13
- private draggingIndex;
14
- private dragStartSizes;
15
- private dragStartPosition;
16
- private containerSize;
17
- slotEls?: HTMLElement[];
18
- /** 스플리터 개수 (렌더링용) */
19
- splitterCount: number;
20
- /** 분할 방향을 설정합니다. 'horizontal'은 좌우 분할, 'vertical'은 상하 분할입니다. */
21
- orientation: 'horizontal' | 'vertical';
22
- /** 초기 패널 크기 비율을 설정합니다. (예: [30, 70]은 첫 번째 패널이 30%, 두 번째 패널이 70%를 차지) */
23
- initRatio: number[];
24
- /** 각 패널의 최소 크기를 설정합니다. (픽셀 단위) */
25
- minSizes: number[];
26
- /** 각 패널의 최대 크기를 설정합니다. (픽셀 단위) */
27
- maxSizes: number[];
28
- disconnectedCallback(): void;
29
- protected willUpdate(changedProperties: PropertyValues): void;
30
- render(): import('lit-html').TemplateResult<1>;
31
- /** 슬롯 변경시 패널 초기화 */
32
- private handleSlotChange;
33
- /** 패널 및 크기 초기화 */
34
- private initialize;
35
- /** 패널에 새로운 스타일 적용 */
36
- private updatePanelStyles;
37
- private handleSplitterMouseDown;
38
- private handleDocumentMouseMove;
39
- private handleDocumentMouseUp;
40
- /** 전역 이벤트 리스너 제거 */
41
- private removeEventListeners;
42
- /** 거터 크기 가져오기 */
43
- private getGutterSize;
44
- }
@@ -1,185 +0,0 @@
1
- import { html } from 'lit';
2
- import { queryAssignedElements, state, property } from 'lit/decorators.js';
3
- import { arrayAttrConverter } from '../../utilities/converters.js';
4
- import { BaseElement } from '../BaseElement.js';
5
- import { styles } from './USplitPanel.styles.js';
6
-
7
- var __defProp = Object.defineProperty;
8
- var __decorateClass = (decorators, target, key, kind) => {
9
- var result = void 0 ;
10
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
11
- if (decorator = decorators[i])
12
- result = (decorator(target, key, result) ) || result;
13
- if (result) __defProp(target, key, result);
14
- return result;
15
- };
16
- class USplitPanel extends BaseElement {
17
- constructor() {
18
- super(...arguments);
19
- /** 현재 상태를 저장하는 패널 요소들 */
20
- this.panels = [];
21
- this.sizes = [];
22
- /** 드래그 시작 시 저장되는 정보 */
23
- this.draggingIndex = -1;
24
- this.dragStartSizes = [];
25
- this.dragStartPosition = 0;
26
- this.containerSize = 0;
27
- this.splitterCount = 0;
28
- this.orientation = "horizontal";
29
- this.initRatio = [];
30
- this.minSizes = [];
31
- this.maxSizes = [];
32
- /** 슬롯 변경시 패널 초기화 */
33
- this.handleSlotChange = () => {
34
- const panels = this.slotEls || [];
35
- if (panels.every((p, i) => p === this.panels[i])) {
36
- return;
37
- }
38
- this.initialize();
39
- };
40
- /** 패널 및 크기 초기화 */
41
- this.initialize = () => {
42
- this.panels = this.slotEls || [];
43
- if (this.panels.length === 0) {
44
- this.splitterCount = 0;
45
- return;
46
- }
47
- this.splitterCount = Math.max(0, this.panels.length - 1);
48
- if (this.initRatio.length === this.panels.length) {
49
- const total = this.initRatio.reduce((sum, r) => sum + r, 0);
50
- this.sizes = this.initRatio.map((r) => r / total * 100);
51
- } else {
52
- const equalSize = 100 / this.panels.length;
53
- this.sizes = this.panels.map(() => equalSize);
54
- }
55
- this.updatePanelStyles();
56
- this.requestUpdate();
57
- };
58
- this.handleSplitterMouseDown = (e, index) => {
59
- if (e.button !== 0) return;
60
- e.preventDefault();
61
- this.draggingIndex = index;
62
- this.dragStartPosition = this.orientation === "horizontal" ? e.clientX : e.clientY;
63
- this.dragStartSizes = [...this.sizes];
64
- const rect = this.getBoundingClientRect();
65
- this.containerSize = this.orientation === "horizontal" ? rect.width : rect.height;
66
- this.containerSize -= this.getGutterSize() * this.splitterCount;
67
- const splitters = this.shadowRoot?.querySelectorAll(".splitter");
68
- splitters?.[index]?.classList.add("active");
69
- document.addEventListener("mousemove", this.handleDocumentMouseMove);
70
- document.addEventListener("mouseup", this.handleDocumentMouseUp);
71
- document.body.style.userSelect = "none";
72
- document.body.style.cursor = this.orientation === "horizontal" ? "col-resize" : "row-resize";
73
- };
74
- this.handleDocumentMouseMove = (e) => {
75
- if (this.draggingIndex === -1) return;
76
- e.preventDefault();
77
- const currentPosition = this.orientation === "horizontal" ? e.clientX : e.clientY;
78
- const delta = currentPosition - this.dragStartPosition;
79
- const deltaPercent = delta / this.containerSize * 100;
80
- const aIndex = this.draggingIndex;
81
- const bIndex = this.draggingIndex + 1;
82
- let newASize = this.dragStartSizes[aIndex] + deltaPercent;
83
- let newBSize = this.dragStartSizes[bIndex] - deltaPercent;
84
- const minAPercent = (this.minSizes[aIndex] ?? 0) / this.containerSize * 100;
85
- const minBPercent = (this.minSizes[bIndex] ?? 0) / this.containerSize * 100;
86
- const maxAPercent = this.maxSizes[aIndex] ? this.maxSizes[aIndex] / this.containerSize * 100 : 100;
87
- const maxBPercent = this.maxSizes[bIndex] ? this.maxSizes[bIndex] / this.containerSize * 100 : 100;
88
- if (newASize < minAPercent) {
89
- newASize = minAPercent;
90
- newBSize = this.dragStartSizes[aIndex] + this.dragStartSizes[bIndex] - newASize;
91
- }
92
- if (newBSize < minBPercent) {
93
- newBSize = minBPercent;
94
- newASize = this.dragStartSizes[aIndex] + this.dragStartSizes[bIndex] - newBSize;
95
- }
96
- if (newASize > maxAPercent) {
97
- newASize = maxAPercent;
98
- newBSize = this.dragStartSizes[aIndex] + this.dragStartSizes[bIndex] - newASize;
99
- }
100
- if (newBSize > maxBPercent) {
101
- newBSize = maxBPercent;
102
- newASize = this.dragStartSizes[aIndex] + this.dragStartSizes[bIndex] - newBSize;
103
- }
104
- this.sizes[aIndex] = newASize;
105
- this.sizes[bIndex] = newBSize;
106
- this.updatePanelStyles();
107
- };
108
- this.handleDocumentMouseUp = () => {
109
- if (this.draggingIndex === -1) return;
110
- const splitters = this.shadowRoot?.querySelectorAll(".splitter");
111
- splitters?.[this.draggingIndex]?.classList.remove("active");
112
- this.draggingIndex = -1;
113
- this.removeEventListeners();
114
- document.body.style.userSelect = "";
115
- document.body.style.cursor = "";
116
- };
117
- }
118
- static {
119
- this.styles = [super.styles, styles];
120
- }
121
- static {
122
- this.dependencies = {};
123
- }
124
- disconnectedCallback() {
125
- this.removeEventListeners();
126
- super.disconnectedCallback();
127
- }
128
- willUpdate(changedProperties) {
129
- super.willUpdate(changedProperties);
130
- if (changedProperties.has("orientation")) {
131
- this.initialize();
132
- }
133
- }
134
- render() {
135
- return html`
136
- ${Array.from({ length: this.splitterCount }, (_, i) => html`
137
- <div class="splitter" style="order: ${i * 2 + 1}"
138
- orientation=${this.orientation}
139
- @mousedown=${(e) => this.handleSplitterMouseDown(e, i)}>
140
- </div>
141
- `)}
142
- <slot @slotchange=${this.handleSlotChange}></slot>
143
- `;
144
- }
145
- /** 패널에 새로운 스타일 적용 */
146
- updatePanelStyles() {
147
- const dimension = this.orientation === "horizontal" ? "width" : "height";
148
- const gutterSize = this.getGutterSize();
149
- this.panels.forEach((panel, index) => {
150
- const size = this.sizes[index];
151
- panel.style[dimension] = `calc(${size}% - ${gutterSize * (this.splitterCount / this.panels.length)}px)`;
152
- panel.style.order = String(index * 2);
153
- });
154
- }
155
- /** 전역 이벤트 리스너 제거 */
156
- removeEventListeners() {
157
- document.removeEventListener("mousemove", this.handleDocumentMouseMove);
158
- document.removeEventListener("mouseup", this.handleDocumentMouseUp);
159
- }
160
- /** 거터 크기 가져오기 */
161
- getGutterSize() {
162
- const sizeStr = getComputedStyle(this).getPropertyValue("--splitter-size").trim();
163
- return parseFloat(sizeStr) || 4;
164
- }
165
- }
166
- __decorateClass([
167
- queryAssignedElements({ flatten: true })
168
- ], USplitPanel.prototype, "slotEls");
169
- __decorateClass([
170
- state()
171
- ], USplitPanel.prototype, "splitterCount");
172
- __decorateClass([
173
- property({ type: String, reflect: true })
174
- ], USplitPanel.prototype, "orientation");
175
- __decorateClass([
176
- property({ type: Array, attribute: "init-ratio", converter: arrayAttrConverter(parseFloat) })
177
- ], USplitPanel.prototype, "initRatio");
178
- __decorateClass([
179
- property({ type: Array, attribute: "min-sizes", converter: arrayAttrConverter(parseFloat) })
180
- ], USplitPanel.prototype, "minSizes");
181
- __decorateClass([
182
- property({ type: Array, attribute: "max-sizes", converter: arrayAttrConverter(parseFloat) })
183
- ], USplitPanel.prototype, "maxSizes");
184
-
185
- export { USplitPanel };
@@ -1,23 +0,0 @@
1
- import { BaseElement } from '../BaseElement.js';
2
- export type TagVariant = "default" | "info" | "success" | "warning" | "danger";
3
- /**
4
- * Tag 컴포넌트는 레이블, 카테고리, 상태 등을 표시하는데 사용됩니다.
5
- * @slot - 태그 내부에 표시할 콘텐츠를 삽입합니다.
6
- * @slot prefix - 태그의 접두사로 표시할 콘텐츠를 삽입합니다.
7
- * @slot suffix - 태그의 접미사로 표시할 콘텐츠를 삽입합니다.
8
- */
9
- export declare class UTag extends BaseElement {
10
- static styles: import('lit').CSSResultGroup[];
11
- static dependencies: Record<string, typeof BaseElement>;
12
- /** 태그의 스타일 변형을 설정합니다. */
13
- variant: TagVariant;
14
- /** 태그를 둥글게 표시합니다. */
15
- rounded: boolean;
16
- /** 태그를 제거 가능하게 설정합니다. */
17
- removable: boolean;
18
- connectedCallback(): void;
19
- disconnectedCallback(): void;
20
- render(): import('lit-html').TemplateResult<1>;
21
- private handleRemoveButtonClick;
22
- private handleTransitionEnd;
23
- }
@@ -1,72 +0,0 @@
1
- import { html } from 'lit';
2
- import { property } from 'lit/decorators.js';
3
- import { BaseElement } from '../BaseElement.js';
4
- import { styles } from './UTag.styles.js';
5
-
6
- var __defProp = Object.defineProperty;
7
- var __decorateClass = (decorators, target, key, kind) => {
8
- var result = void 0 ;
9
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
10
- if (decorator = decorators[i])
11
- result = (decorator(target, key, result) ) || result;
12
- if (result) __defProp(target, key, result);
13
- return result;
14
- };
15
- class UTag extends BaseElement {
16
- constructor() {
17
- super(...arguments);
18
- this.variant = "default";
19
- this.rounded = false;
20
- this.removable = false;
21
- this.handleRemoveButtonClick = (e) => {
22
- e.stopPropagation();
23
- this.emit("u-remove");
24
- requestAnimationFrame(() => {
25
- this.style.transform = "scale(0.8)";
26
- this.style.opacity = "0";
27
- });
28
- };
29
- this.handleTransitionEnd = (e) => {
30
- if (e.propertyName === "opacity" && this.style.opacity === "0") {
31
- this.remove();
32
- }
33
- };
34
- }
35
- static {
36
- this.styles = [super.styles, styles];
37
- }
38
- static {
39
- this.dependencies = {};
40
- }
41
- connectedCallback() {
42
- super.connectedCallback();
43
- this.addEventListener("transitionend", this.handleTransitionEnd);
44
- }
45
- disconnectedCallback() {
46
- this.removeEventListener("transitionend", this.handleTransitionEnd);
47
- super.disconnectedCallback();
48
- }
49
- render() {
50
- return html`
51
- <slot name="prefix"></slot>
52
- <slot></slot>
53
- <slot name="suffix"></slot>
54
- <button class="remove-btn" part="remove-btn"
55
- ?hidden=${!this.removable}
56
- @click=${this.handleRemoveButtonClick}>
57
- &times;
58
- </button>
59
- `;
60
- }
61
- }
62
- __decorateClass([
63
- property({ type: String, reflect: true })
64
- ], UTag.prototype, "variant");
65
- __decorateClass([
66
- property({ type: Boolean, reflect: true })
67
- ], UTag.prototype, "rounded");
68
- __decorateClass([
69
- property({ type: Boolean, reflect: true })
70
- ], UTag.prototype, "removable");
71
-
72
- export { UTag };
@@ -1,27 +0,0 @@
1
- import { PropertyValues } from 'lit';
2
- import { BaseElement } from '../BaseElement.js';
3
- import { FloatingElement } from '../FloatingElement.js';
4
- /**
5
- * Tooltip 컴포넌트는 대상 엘리먼트에 툴팁을 표시하는 기능을 제공합니다.
6
- */
7
- export declare class UTooltip extends FloatingElement {
8
- static styles: import('lit').CSSResultGroup[];
9
- static dependencies: Record<string, typeof BaseElement>;
10
- /**
11
- * 툴팁 내부로 마우스를 이동해도 툴팁이 유지되는지 여부입니다.
12
- * true일 경우 툴팁 위에 마우스를 올려놓을 수 있습니다.
13
- *
14
- * @default false
15
- */
16
- interactive: boolean;
17
- protected updated(changedProperties: PropertyValues): void;
18
- render(): import('lit-html').TemplateResult<1>;
19
- /** this 바인딩 이벤트 핸들러 */
20
- private _show;
21
- /** this 바인딩 이벤트 핸들러 */
22
- private _hide;
23
- /** 바인딩 이벤트 핸들러 */
24
- private bind;
25
- /** 바인딩 해제 이벤트 핸들러 */
26
- private unbind;
27
- }
@@ -1,88 +0,0 @@
1
- import { html } from 'lit';
2
- import { property } from 'lit/decorators.js';
3
- import { FloatingElement } from '../FloatingElement.js';
4
- import { styles } from './UTooltip.styles.js';
5
-
6
- var __defProp = Object.defineProperty;
7
- var __decorateClass = (decorators, target, key, kind) => {
8
- var result = void 0 ;
9
- for (var i = decorators.length - 1, decorator; i >= 0; i--)
10
- if (decorator = decorators[i])
11
- result = (decorator(target, key, result) ) || result;
12
- if (result) __defProp(target, key, result);
13
- return result;
14
- };
15
- class UTooltip extends FloatingElement {
16
- constructor() {
17
- super(...arguments);
18
- this.interactive = false;
19
- /** this 바인딩 이벤트 핸들러 */
20
- this._show = (event) => {
21
- const target = event.currentTarget;
22
- if (!target) return;
23
- this.show(target);
24
- };
25
- /** this 바인딩 이벤트 핸들러 */
26
- this._hide = (event) => {
27
- if (this.interactive) {
28
- const target = this.target;
29
- const related = event.relatedTarget;
30
- if (!target || !related) return;
31
- if (this.contains(related) || target.contains(related)) return;
32
- }
33
- this.hide();
34
- };
35
- }
36
- static {
37
- this.styles = [super.styles, styles];
38
- }
39
- static {
40
- this.dependencies = {};
41
- }
42
- updated(changedProperties) {
43
- super.updated(changedProperties);
44
- if (changedProperties.has("anchors")) {
45
- const oldAnchors = changedProperties.get("anchors");
46
- const newAnchors = this.anchors;
47
- if (oldAnchors) this.unbind(oldAnchors);
48
- if (newAnchors) this.bind(newAnchors);
49
- }
50
- if (changedProperties.has("distance")) {
51
- if (this.distance > 0) {
52
- this.style.setProperty("--interactive-area", `${this.distance}px`);
53
- } else {
54
- this.style.removeProperty("--interactive-area");
55
- }
56
- }
57
- }
58
- render() {
59
- return html`<slot></slot>`;
60
- }
61
- /** 바인딩 이벤트 핸들러 */
62
- bind(anchors) {
63
- for (const anchor of anchors) {
64
- anchor.addEventListener("pointerenter", this._show);
65
- anchor.addEventListener("pointerleave", this._hide);
66
- anchor.addEventListener("focusin", this._show);
67
- anchor.addEventListener("focusout", this._hide);
68
- }
69
- this.addEventListener("pointerleave", this._hide);
70
- this.addEventListener("focusout", this._hide);
71
- }
72
- /** 바인딩 해제 이벤트 핸들러 */
73
- unbind(anchors) {
74
- for (const anchor of anchors) {
75
- anchor.removeEventListener("pointerenter", this._show);
76
- anchor.removeEventListener("pointerleave", this._hide);
77
- anchor.removeEventListener("focusin", this._show);
78
- anchor.removeEventListener("focusout", this._hide);
79
- }
80
- this.addEventListener("pointerleave", this._hide);
81
- this.addEventListener("focusout", this._hide);
82
- }
83
- }
84
- __decorateClass([
85
- property({ type: Boolean, reflect: true })
86
- ], UTooltip.prototype, "interactive");
87
-
88
- export { UTooltip };