@comfyorg/design-system 1.0.1 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (446) hide show
  1. package/README.md +89 -9
  2. package/dist/badge/Badge.vue.d.ts +49 -0
  3. package/dist/badge/Badge.vue.js +2 -0
  4. package/dist/badge/CreditBadge.vue.d.ts +7 -0
  5. package/dist/badge/CreditBadge.vue.js +35 -0
  6. package/dist/badge/badge.variants.d.ts +12 -0
  7. package/dist/button/Button.vue.d.ts +31 -0
  8. package/dist/button/Button.vue.js +2 -0
  9. package/dist/button-group/ButtonGroup.vue.d.ts +18 -0
  10. package/dist/button-group/ButtonGroup.vue.js +37 -0
  11. package/dist/button-group/IconGroup.vue.d.ts +16 -0
  12. package/dist/button-group/IconGroup.vue.js +15 -0
  13. package/dist/card/Card.vue.d.ts +19 -0
  14. package/dist/card/Card.vue.js +2 -0
  15. package/dist/card/CardFooter.vue.d.ts +17 -0
  16. package/dist/card/CardFooter.vue.js +2 -0
  17. package/dist/card/CardHeader.vue.d.ts +17 -0
  18. package/dist/card/CardHeader.vue.js +2 -0
  19. package/dist/card/CoachmarkCard.vue.d.ts +24 -0
  20. package/dist/card/CoachmarkCard.vue.js +57 -0
  21. package/dist/card/card.variants.d.ts +11 -0
  22. package/dist/chart/Chart.vue.d.ts +12 -0
  23. package/dist/chart/Chart.vue.js +180 -0
  24. package/dist/chart/useChart.d.ts +4 -0
  25. package/dist/checkbox/Checkbox.vue.d.ts +25 -0
  26. package/dist/checkbox/Checkbox.vue.js +49 -0
  27. package/dist/chip/TagRemoveButton.vue.d.ts +18 -0
  28. package/dist/chip/TagRemoveButton.vue.js +2 -0
  29. package/dist/common/CanvasBanner.vue.d.ts +23 -0
  30. package/dist/common/CanvasBanner.vue.js +23 -0
  31. package/dist/common/ContentDivider.vue.d.ts +7 -0
  32. package/dist/common/ContentDivider.vue.js +22 -0
  33. package/dist/common/CustomFormValue.vue.d.ts +6 -0
  34. package/dist/common/CustomFormValue.vue.js +28 -0
  35. package/dist/common/DotSpinner.vue.d.ts +7 -0
  36. package/dist/common/DotSpinner.vue.js +34 -0
  37. package/dist/common/EditableText.vue.d.ts +16 -0
  38. package/dist/common/EditableText.vue.js +73 -0
  39. package/dist/common/LoadingOverlay.vue.d.ts +18 -0
  40. package/dist/common/LoadingOverlay.vue.js +41 -0
  41. package/dist/common/MarkdownText.vue.d.ts +6 -0
  42. package/dist/common/MarkdownText.vue.js +93 -0
  43. package/dist/common/MarqueeLine.vue.d.ts +13 -0
  44. package/dist/common/MarqueeLine.vue.js +12 -0
  45. package/dist/common/OverlayIcon.vue.d.ts +13 -0
  46. package/dist/common/OverlayIcon.vue.js +2 -0
  47. package/dist/common/SanitizedHtml.vue.d.ts +8 -0
  48. package/dist/common/SanitizedHtml.vue.js +60 -0
  49. package/dist/common/TextDivider.vue.d.ts +8 -0
  50. package/dist/common/TextDivider.vue.js +36 -0
  51. package/dist/common/TextTicker.vue.d.ts +17 -0
  52. package/dist/common/TextTicker.vue.js +53 -0
  53. package/dist/common/TextTickerMultiLine.vue.d.ts +6 -0
  54. package/dist/common/TextTickerMultiLine.vue.js +54 -0
  55. package/dist/common/VerticalDivider.vue.d.ts +3 -0
  56. package/dist/common/VerticalDivider.vue.js +15 -0
  57. package/dist/common/VideoCompareSlider.vue.d.ts +24 -0
  58. package/dist/common/VideoCompareSlider.vue.js +141 -0
  59. package/dist/common/ViewportWidgetShell.vue.d.ts +27 -0
  60. package/dist/common/ViewportWidgetShell.vue.js +58 -0
  61. package/dist/common/VirtualGrid.vue.d.ts +38 -0
  62. package/dist/common/VirtualGrid.vue.js +107 -0
  63. package/dist/common/textTickerUtils.d.ts +1 -0
  64. package/dist/components.css +44 -0
  65. package/dist/composables/useAttrsClass.d.ts +12 -0
  66. package/dist/composables/useAttrsClass.js +18 -0
  67. package/dist/composables/usePopoverSizing.d.ts +12 -0
  68. package/dist/composables/usePopoverSizing.js +18 -0
  69. package/dist/confirm/ConfirmBody.vue.d.ts +8 -0
  70. package/dist/confirm/ConfirmBody.vue.js +27 -0
  71. package/dist/confirm/ConfirmHeader.vue.d.ts +7 -0
  72. package/dist/confirm/ConfirmHeader.vue.js +27 -0
  73. package/dist/content-card/CardBottom.vue.d.ts +16 -0
  74. package/dist/content-card/CardBottom.vue.js +19 -0
  75. package/dist/content-card/CardContainer.vue.d.ts +26 -0
  76. package/dist/content-card/CardContainer.vue.js +61 -0
  77. package/dist/content-card/CardTop.vue.d.ts +36 -0
  78. package/dist/content-card/CardTop.vue.js +72 -0
  79. package/dist/dialog/Dialog.vue.d.ts +21 -0
  80. package/dist/dialog/Dialog.vue.js +25 -0
  81. package/dist/dialog/DialogClose.vue.d.ts +13 -0
  82. package/dist/dialog/DialogClose.vue.js +24 -0
  83. package/dist/dialog/DialogContent.vue.d.ts +36 -0
  84. package/dist/dialog/DialogContent.vue.js +73 -0
  85. package/dist/dialog/DialogDescription.vue.d.ts +18 -0
  86. package/dist/dialog/DialogDescription.vue.js +33 -0
  87. package/dist/dialog/DialogFooter.vue.d.ts +17 -0
  88. package/dist/dialog/DialogFooter.vue.js +24 -0
  89. package/dist/dialog/DialogHeader.vue.d.ts +17 -0
  90. package/dist/dialog/DialogHeader.vue.js +24 -0
  91. package/dist/dialog/DialogMaximize.vue.d.ts +10 -0
  92. package/dist/dialog/DialogMaximize.vue.js +27 -0
  93. package/dist/dialog/DialogOverlay.vue.d.ts +8 -0
  94. package/dist/dialog/DialogOverlay.vue.js +35 -0
  95. package/dist/dialog/DialogPanel.vue.d.ts +18 -0
  96. package/dist/dialog/DialogPanel.vue.js +55 -0
  97. package/dist/dialog/DialogPortal.vue.d.ts +14 -0
  98. package/dist/dialog/DialogPortal.vue.js +38 -0
  99. package/dist/dialog/DialogTitle.vue.d.ts +18 -0
  100. package/dist/dialog/DialogTitle.vue.js +2 -0
  101. package/dist/dialog/dialog.variants.d.ts +16 -0
  102. package/dist/dialog/dialog.variants.js +39 -0
  103. package/dist/dialog/types.d.ts +6 -0
  104. package/dist/dialog/types.js +0 -0
  105. package/dist/field/Field.vue.d.ts +19 -0
  106. package/dist/field/Field.vue.js +42 -0
  107. package/dist/field/FieldDescription.vue.d.ts +17 -0
  108. package/dist/field/FieldDescription.vue.js +24 -0
  109. package/dist/field/FieldError.vue.d.ts +21 -0
  110. package/dist/field/FieldError.vue.js +39 -0
  111. package/dist/field/FieldGroup.vue.d.ts +17 -0
  112. package/dist/field/FieldGroup.vue.js +24 -0
  113. package/dist/field/FieldLabel.vue.d.ts +17 -0
  114. package/dist/field/FieldLabel.vue.js +28 -0
  115. package/dist/field/ModelInfoField.vue.d.ts +18 -0
  116. package/dist/field/ModelInfoField.vue.js +18 -0
  117. package/dist/field/field.variants.d.ts +11 -0
  118. package/dist/hover-card/HoverCard.vue.d.ts +18 -0
  119. package/dist/hover-card/HoverCard.vue.js +26 -0
  120. package/dist/hover-card/HoverCardContent.vue.d.ts +18 -0
  121. package/dist/hover-card/HoverCardContent.vue.js +68 -0
  122. package/dist/hover-card/HoverCardTrigger.vue.d.ts +14 -0
  123. package/dist/hover-card/HoverCardTrigger.vue.js +23 -0
  124. package/dist/icon/ComfyLogo.vue.d.ts +9 -0
  125. package/dist/icon/ComfyLogo.vue.js +33 -0
  126. package/dist/icon/PuzzleIcon.vue.d.ts +8 -0
  127. package/dist/icon/PuzzleIcon.vue.js +40 -0
  128. package/dist/icon/TinyChevronIcon.vue.d.ts +6 -0
  129. package/dist/icon/TinyChevronIcon.vue.js +31 -0
  130. package/dist/icon/VerifiedIcon.vue.d.ts +8 -0
  131. package/dist/icon/VerifiedIcon.vue.js +32 -0
  132. package/dist/input/Input.vue.d.ts +21 -0
  133. package/dist/input/Input.vue.js +2 -0
  134. package/dist/input/PasswordInput.vue.d.ts +18 -0
  135. package/dist/input/PasswordInput.vue.js +68 -0
  136. package/dist/input-group/InputGroup.vue.d.ts +17 -0
  137. package/dist/input-group/InputGroup.vue.js +2 -0
  138. package/dist/input-group/InputGroupAddon.vue.d.ts +19 -0
  139. package/dist/input-group/InputGroupAddon.vue.js +2 -0
  140. package/dist/input-group/InputGroupButton.vue.d.ts +21 -0
  141. package/dist/input-group/InputGroupButton.vue.js +2 -0
  142. package/dist/input-group/InputGroupInput.vue.d.ts +15 -0
  143. package/dist/input-group/InputGroupInput.vue.js +2 -0
  144. package/dist/input-group/inputGroup.variants.d.ts +21 -0
  145. package/dist/input-group/inputGroup.variants.js +22 -0
  146. package/dist/knob/Knob.vue.d.ts +19 -0
  147. package/dist/knob/Knob.vue.js +124 -0
  148. package/dist/label/Label.vue.d.ts +18 -0
  149. package/dist/label/Label.vue.js +2 -0
  150. package/dist/media/AudioPreview.vue.d.ts +6 -0
  151. package/dist/media/AudioPreview.vue.js +28 -0
  152. package/dist/media/MediaTitle.vue.d.ts +6 -0
  153. package/dist/media/MediaTitle.vue.js +19 -0
  154. package/dist/media/VideoPlayOverlay.vue.d.ts +8 -0
  155. package/dist/media/VideoPlayOverlay.vue.js +28 -0
  156. package/dist/media/VideoPreview.vue.d.ts +7 -0
  157. package/dist/media/VideoPreview.vue.js +32 -0
  158. package/dist/media/ZoomPane.vue.d.ts +17 -0
  159. package/dist/media/ZoomPane.vue.js +62 -0
  160. package/dist/menu/ContextMenu.vue.d.ts +31 -0
  161. package/dist/menu/ContextMenu.vue.js +52 -0
  162. package/dist/menu/ContextMenuContent.vue.d.ts +32 -0
  163. package/dist/menu/ContextMenuContent.vue.js +2 -0
  164. package/dist/menu/Menu.vue.d.ts +41 -0
  165. package/dist/menu/Menu.vue.js +79 -0
  166. package/dist/menu/MenuAction.vue.d.ts +26 -0
  167. package/dist/menu/MenuAction.vue.js +2 -0
  168. package/dist/menu/MenuContent.vue.d.ts +35 -0
  169. package/dist/menu/MenuContent.vue.js +2 -0
  170. package/dist/menu/MenuItem.vue.d.ts +22 -0
  171. package/dist/menu/MenuItem.vue.js +35 -0
  172. package/dist/menu/MenuItemContent.vue.d.ts +8 -0
  173. package/dist/menu/MenuItemContent.vue.js +2 -0
  174. package/dist/menu/MenuItems.vue.d.ts +32 -0
  175. package/dist/menu/MenuItems.vue.js +2 -0
  176. package/dist/menu/MenuRadioGroup.vue.d.ts +26 -0
  177. package/dist/menu/MenuRadioGroup.vue.js +2 -0
  178. package/dist/menu/MenuRadioItem.vue.d.ts +22 -0
  179. package/dist/menu/MenuRadioItem.vue.js +2 -0
  180. package/dist/menu/MenuSeparator.vue.d.ts +8 -0
  181. package/dist/menu/MenuSeparator.vue.js +2 -0
  182. package/dist/menu/MenuSub.vue.d.ts +20 -0
  183. package/dist/menu/MenuSub.vue.js +2 -0
  184. package/dist/menu/MenuSubContent.vue.d.ts +36 -0
  185. package/dist/menu/MenuSubContent.vue.js +2 -0
  186. package/dist/menu/MenuSubTrigger.vue.d.ts +18 -0
  187. package/dist/menu/MenuSubTrigger.vue.js +2 -0
  188. package/dist/menu/MenuSubmenu.vue.d.ts +21 -0
  189. package/dist/menu/MenuSubmenu.vue.js +2 -0
  190. package/dist/menu/menuAnchor.d.ts +4 -0
  191. package/dist/menu/menuAnchor.js +15 -0
  192. package/dist/menu/menuStyles.d.ts +4 -0
  193. package/dist/menu/menuStyles.js +7 -0
  194. package/dist/menu/mouseDownUtil.d.ts +3 -0
  195. package/dist/menu/types.d.ts +69 -0
  196. package/dist/menu/types.js +0 -0
  197. package/dist/menu/usePointMenu.d.ts +19 -0
  198. package/dist/menu/usePointMenu.js +56 -0
  199. package/dist/message/Message.vue.d.ts +50 -0
  200. package/dist/message/Message.vue.js +75 -0
  201. package/dist/message/message.variants.d.ts +11 -0
  202. package/dist/message/message.variants.js +15 -0
  203. package/dist/multi-select/MultiSelect.vue.d.ts +170 -0
  204. package/dist/multi-select/MultiSelect.vue.js +137 -0
  205. package/dist/multi-select/MultiSelectContent.vue.d.ts +32 -0
  206. package/dist/multi-select/MultiSelectContent.vue.js +2 -0
  207. package/dist/multi-select/MultiSelectTrigger.vue.d.ts +24 -0
  208. package/dist/multi-select/MultiSelectTrigger.vue.js +2 -0
  209. package/dist/multi-select/types.d.ts +35 -0
  210. package/dist/multi-select/types.js +0 -0
  211. package/dist/navigation/NavTitle.vue.d.ts +12 -0
  212. package/dist/navigation/NavTitle.vue.js +42 -0
  213. package/dist/navigation/SidebarTopArea.vue.d.ts +15 -0
  214. package/dist/navigation/SidebarTopArea.vue.js +16 -0
  215. package/dist/number-field/NumberField.vue.d.ts +26 -0
  216. package/dist/number-field/NumberField.vue.js +75 -0
  217. package/dist/number-field/NumberFieldDecrement.vue.d.ts +18 -0
  218. package/dist/number-field/NumberFieldDecrement.vue.js +35 -0
  219. package/dist/number-field/NumberFieldIncrement.vue.d.ts +18 -0
  220. package/dist/number-field/NumberFieldIncrement.vue.js +35 -0
  221. package/dist/number-field/NumberFieldInput.vue.d.ts +7 -0
  222. package/dist/number-field/NumberFieldInput.vue.js +25 -0
  223. package/dist/number-field/PropertyNumberField.vue.d.ts +14 -0
  224. package/dist/number-field/PropertyNumberField.vue.js +56 -0
  225. package/dist/pagination/Pagination.vue.d.ts +22 -0
  226. package/dist/pagination/Pagination.vue.js +140 -0
  227. package/dist/popover/PopoverContent.vue.d.ts +33 -0
  228. package/dist/popover/PopoverContent.vue.js +91 -0
  229. package/dist/popover/usePopoverViewportDismiss.d.ts +2 -0
  230. package/dist/popover/usePopoverViewportDismiss.js +13 -0
  231. package/dist/radio-group/RadioGroup.vue.d.ts +22 -0
  232. package/dist/radio-group/RadioGroup.vue.js +45 -0
  233. package/dist/radio-group/RadioGroupItem.vue.d.ts +22 -0
  234. package/dist/radio-group/RadioGroupItem.vue.js +42 -0
  235. package/dist/search-input/AsyncSearchInput.vue.d.ts +27 -0
  236. package/dist/search-input/AsyncSearchInput.vue.js +104 -0
  237. package/dist/search-input/SearchAutocomplete.vue.d.ts +53 -0
  238. package/dist/search-input/SearchAutocomplete.vue.js +234 -0
  239. package/dist/search-input/SearchInput.vue.d.ts +46 -0
  240. package/dist/search-input/SearchInput.vue.js +127 -0
  241. package/dist/search-input/searchInput.variants.d.ts +45 -0
  242. package/dist/select/DropdownControl.vue.d.ts +16 -0
  243. package/dist/select/DropdownControl.vue.js +48 -0
  244. package/dist/select/Select.vue.d.ts +21 -0
  245. package/dist/select/Select.vue.js +2 -0
  246. package/dist/select/SelectContent.vue.d.ts +29 -0
  247. package/dist/select/SelectContent.vue.js +2 -0
  248. package/dist/select/SelectItem.vue.d.ts +18 -0
  249. package/dist/select/SelectItem.vue.js +2 -0
  250. package/dist/select/SelectScrollDownButton.vue.d.ts +18 -0
  251. package/dist/select/SelectScrollDownButton.vue.js +2 -0
  252. package/dist/select/SelectScrollUpButton.vue.d.ts +18 -0
  253. package/dist/select/SelectScrollUpButton.vue.js +2 -0
  254. package/dist/select/SelectTrigger.vue.d.ts +22 -0
  255. package/dist/select/SelectTrigger.vue.js +2 -0
  256. package/dist/select/SelectValue.vue.d.ts +14 -0
  257. package/dist/select/SelectValue.vue.js +2 -0
  258. package/dist/select/types.d.ts +4 -0
  259. package/dist/select/types.js +0 -0
  260. package/dist/select/useSelectSearch.d.ts +3 -0
  261. package/dist/select/useSelectSearch.js +15 -0
  262. package/dist/shared/Badge-D3uWa3yk.js +92 -0
  263. package/dist/shared/Button-CilmsOkY.js +141 -0
  264. package/dist/shared/Card-l7baUdn0.js +34 -0
  265. package/dist/shared/CardFooter-BM6EmVi7.js +21 -0
  266. package/dist/shared/CardHeader-B5To28Jp.js +21 -0
  267. package/dist/shared/ContextMenuContent-CNQHJQ81.js +64 -0
  268. package/dist/shared/DialogTitle-CfkkTGuU.js +43 -0
  269. package/dist/shared/Input-39RLwDr2.js +38 -0
  270. package/dist/shared/InputGroup-kjQKkhyB.js +25 -0
  271. package/dist/shared/InputGroupAddon-DLDRT0CQ.js +38 -0
  272. package/dist/shared/InputGroupButton-BoEp2apg.js +41 -0
  273. package/dist/shared/InputGroupInput-E2MlEVUU.js +32 -0
  274. package/dist/shared/Label-Cx_lFofI.js +36 -0
  275. package/dist/shared/MenuAction-BdghJ23k.js +124 -0
  276. package/dist/shared/MenuContent-ChqlM3xA.js +80 -0
  277. package/dist/shared/MenuItemContent--dPNoBmU.js +69 -0
  278. package/dist/shared/MenuItems-BJKetPV-.js +69 -0
  279. package/dist/shared/MenuRadioGroup-Bpjt9sHI.js +65 -0
  280. package/dist/shared/MenuRadioItem-h7hh_RGU.js +36 -0
  281. package/dist/shared/MenuSeparator-Dm6CkPqB.js +28 -0
  282. package/dist/shared/MenuSub-Dbnj2w-X.js +23 -0
  283. package/dist/shared/MenuSubContent-M-g3fllh.js +69 -0
  284. package/dist/shared/MenuSubTrigger-D6-3s2NL.js +35 -0
  285. package/dist/shared/MenuSubmenu-QHWMyfKF.js +43 -0
  286. package/dist/shared/MultiSelectContent-c1D5avjh.js +162 -0
  287. package/dist/shared/MultiSelectTrigger-lmuXqETa.js +52 -0
  288. package/dist/shared/OverlayIcon-DntJI-mm.js +45 -0
  289. package/dist/shared/SearchableSingleSelect-Dnti1kqJ.js +184 -0
  290. package/dist/shared/Select-CP3OZjtL.js +33 -0
  291. package/dist/shared/SelectContent-C8aNlcFf.js +91 -0
  292. package/dist/shared/SelectItem-tU4CIa5J.js +42 -0
  293. package/dist/shared/SelectScrollDownButton-Dvig5MVc.js +30 -0
  294. package/dist/shared/SelectScrollUpButton-lv-npT6v.js +30 -0
  295. package/dist/shared/SelectTrigger-CCDiZW91.js +47 -0
  296. package/dist/shared/SelectValue-DFZFSiQp.js +23 -0
  297. package/dist/shared/Switch-DsCzHpDU.js +63 -0
  298. package/dist/shared/TableHead-OxGist4m.js +24 -0
  299. package/dist/shared/TagRemoveButton-BiCdscIC.js +38 -0
  300. package/dist/shared/TextTooltip-ClHQl84h.js +29 -0
  301. package/dist/shared/Tooltip-DbXyHv20.js +34 -0
  302. package/dist/shared/TooltipContent-Bju-U7gc.js +91 -0
  303. package/dist/shared/TooltipTrigger-CVwISmWo.js +65 -0
  304. package/dist/shared/_plugin-vue_export-helper-BOaGB7Aw.js +8 -0
  305. package/dist/shared/searchInput.variants-NOge_52E.js +47 -0
  306. package/dist/shared/select.variants-BPn5Z7N1.js +40 -0
  307. package/dist/shared/src-CnJ6AzLP.js +12 -0
  308. package/dist/shared/tabKeys-BISOrxWu.js +4 -0
  309. package/dist/shared/tabs.variants-XUREdHry.js +23 -0
  310. package/dist/shared/tag.variants-CCqCn8Jc.js +34 -0
  311. package/dist/shared/tagsInputContext-QXu7RrG5.js +5 -0
  312. package/dist/shared/toggleGroup.variants-CvjZDHMw.js +39 -0
  313. package/dist/shared/tooltipContext-BL5JtM0i.js +4 -0
  314. package/dist/single-select/SearchableSingleSelect.vue.d.ts +39 -0
  315. package/dist/single-select/SearchableSingleSelect.vue.js +2 -0
  316. package/dist/single-select/SingleSelect.vue.d.ts +38 -0
  317. package/dist/single-select/SingleSelect.vue.js +187 -0
  318. package/dist/single-select/types.d.ts +25 -0
  319. package/dist/single-select/types.js +0 -0
  320. package/dist/skeleton/Skeleton.vue.d.ts +7 -0
  321. package/dist/skeleton/Skeleton.vue.js +24 -0
  322. package/dist/slider/Slider.vue.d.ts +16 -0
  323. package/dist/slider/Slider.vue.js +88 -0
  324. package/dist/spinner/Spinner.vue.d.ts +7 -0
  325. package/dist/spinner/Spinner.vue.js +41 -0
  326. package/dist/splitter/SplitterGroup.vue.d.ts +23 -0
  327. package/dist/splitter/SplitterGroup.vue.js +40 -0
  328. package/dist/splitter/SplitterPanel.vue.d.ts +26 -0
  329. package/dist/splitter/SplitterPanel.vue.js +45 -0
  330. package/dist/splitter/SplitterResizeHandle.vue.d.ts +22 -0
  331. package/dist/splitter/SplitterResizeHandle.vue.js +37 -0
  332. package/dist/switch/Switch.vue.d.ts +17 -0
  333. package/dist/switch/Switch.vue.js +2 -0
  334. package/dist/tab/Tab.vue.d.ts +24 -0
  335. package/dist/tab/Tab.vue.js +76 -0
  336. package/dist/tab/TabList.vue.d.ts +26 -0
  337. package/dist/tab/TabList.vue.js +31 -0
  338. package/dist/tab/TabPanel.vue.d.ts +23 -0
  339. package/dist/tab/TabPanel.vue.js +28 -0
  340. package/dist/tab/tab.variants.d.ts +9 -0
  341. package/dist/tab/tabKeys.d.ts +7 -0
  342. package/dist/table/Table.vue.d.ts +17 -0
  343. package/dist/table/Table.vue.js +23 -0
  344. package/dist/table/TableBody.vue.d.ts +17 -0
  345. package/dist/table/TableBody.vue.js +21 -0
  346. package/dist/table/TableCell.vue.d.ts +17 -0
  347. package/dist/table/TableCell.vue.js +21 -0
  348. package/dist/table/TableHead.vue.d.ts +17 -0
  349. package/dist/table/TableHead.vue.js +2 -0
  350. package/dist/table/TableHeader.vue.d.ts +17 -0
  351. package/dist/table/TableHeader.vue.js +21 -0
  352. package/dist/table/TableRow.vue.d.ts +17 -0
  353. package/dist/table/TableRow.vue.js +21 -0
  354. package/dist/table/TableSortHead.vue.d.ts +26 -0
  355. package/dist/table/TableSortHead.vue.js +47 -0
  356. package/dist/table/tableUtils.d.ts +3 -0
  357. package/dist/table/tableUtils.js +19 -0
  358. package/dist/tabs/Tabs.vue.d.ts +22 -0
  359. package/dist/tabs/Tabs.vue.js +43 -0
  360. package/dist/tabs/TabsContent.vue.d.ts +18 -0
  361. package/dist/tabs/TabsContent.vue.js +37 -0
  362. package/dist/tabs/TabsList.vue.d.ts +20 -0
  363. package/dist/tabs/TabsList.vue.js +38 -0
  364. package/dist/tabs/TabsTrigger.vue.d.ts +20 -0
  365. package/dist/tabs/TabsTrigger.vue.js +39 -0
  366. package/dist/tabs/tabs.variants.d.ts +21 -0
  367. package/dist/tags-input/TagsInput.vue.d.ts +32 -0
  368. package/dist/tags-input/TagsInput.vue.js +98 -0
  369. package/dist/tags-input/TagsInputInput.vue.d.ts +9 -0
  370. package/dist/tags-input/TagsInputInput.vue.js +56 -0
  371. package/dist/tags-input/TagsInputItem.vue.d.ts +18 -0
  372. package/dist/tags-input/TagsInputItem.vue.js +34 -0
  373. package/dist/tags-input/TagsInputItemDelete.vue.d.ts +18 -0
  374. package/dist/tags-input/TagsInputItemDelete.vue.js +35 -0
  375. package/dist/tags-input/TagsInputItemText.vue.d.ts +8 -0
  376. package/dist/tags-input/TagsInputItemText.vue.js +28 -0
  377. package/dist/tags-input/tagsInputContext.d.ts +4 -0
  378. package/dist/textarea/Textarea.vue.d.ts +17 -0
  379. package/dist/textarea/Textarea.vue.js +33 -0
  380. package/dist/toast/ToastClose.vue.d.ts +8 -0
  381. package/dist/toast/ToastClose.vue.js +42 -0
  382. package/dist/toast/ToastDescription.vue.d.ts +18 -0
  383. package/dist/toast/ToastDescription.vue.js +31 -0
  384. package/dist/toast/ToastDock.vue.d.ts +13 -0
  385. package/dist/toast/ToastDock.vue.js +29 -0
  386. package/dist/toast/ToastPanel.vue.d.ts +30 -0
  387. package/dist/toast/ToastPanel.vue.js +47 -0
  388. package/dist/toast/ToastRoot.vue.d.ts +100 -0
  389. package/dist/toast/ToastRoot.vue.js +55 -0
  390. package/dist/toast/ToastTitle.vue.d.ts +18 -0
  391. package/dist/toast/ToastTitle.vue.js +31 -0
  392. package/dist/toast/ToastViewport.vue.d.ts +9 -0
  393. package/dist/toast/ToastViewport.vue.js +33 -0
  394. package/dist/toggle-group/ToggleGroup.vue.d.ts +25 -0
  395. package/dist/toggle-group/ToggleGroup.vue.js +61 -0
  396. package/dist/toggle-group/ToggleGroupItem.vue.d.ts +21 -0
  397. package/dist/toggle-group/ToggleGroupItem.vue.js +45 -0
  398. package/dist/toggle-group/toggleGroup.variants.d.ts +24 -0
  399. package/dist/tooltip/TextTooltip.vue.d.ts +20 -0
  400. package/dist/tooltip/TextTooltip.vue.js +2 -0
  401. package/dist/tooltip/Tooltip.vue.d.ts +23 -0
  402. package/dist/tooltip/Tooltip.vue.js +2 -0
  403. package/dist/tooltip/TooltipContent.vue.d.ts +24 -0
  404. package/dist/tooltip/TooltipContent.vue.js +2 -0
  405. package/dist/tooltip/TooltipProvider.vue.d.ts +15 -0
  406. package/dist/tooltip/TooltipProvider.vue.js +39 -0
  407. package/dist/tooltip/TooltipTrigger.vue.d.ts +14 -0
  408. package/dist/tooltip/TooltipTrigger.vue.js +2 -0
  409. package/dist/tooltip/tooltipConfig.d.ts +5 -0
  410. package/dist/tooltip/tooltipConfig.js +8 -0
  411. package/dist/tooltip/tooltipContext.d.ts +2 -0
  412. package/dist/transition/TransitionCollapse.vue.d.ts +21 -0
  413. package/dist/transition/TransitionCollapse.vue.js +110 -0
  414. package/dist/tree/Tree.vue.d.ts +32 -0
  415. package/dist/tree/Tree.vue.js +55 -0
  416. package/dist/tree/TreeItem.vue.d.ts +29 -0
  417. package/dist/tree/TreeItem.vue.js +82 -0
  418. package/dist/tree/treeStyles.d.ts +4 -0
  419. package/dist/tree/treeStyles.js +7 -0
  420. package/dist-types/button.variants.d.ts +16 -0
  421. package/dist-types/select.variants.d.ts +24 -0
  422. package/dist-types/tag.variants.d.ts +21 -0
  423. package/dist-types/workspaceAvatar.d.ts +5 -0
  424. package/package.json +167 -7
  425. package/src/button.variants.ts +84 -0
  426. package/src/css/_deprecated-aliases.css +12 -0
  427. package/src/css/_legacy-palette.css +33 -0
  428. package/src/css/_legacy-ui.css +418 -0
  429. package/src/css/_markdown.css +227 -0
  430. package/src/css/_mask-editor.css +180 -0
  431. package/src/css/_palette.css +43 -0
  432. package/src/css/base.css +0 -6
  433. package/src/css/iconSizing.test.ts +80 -0
  434. package/src/css/iconifyDynamicPlugin.ts +15 -6
  435. package/src/css/icons.test.ts +17 -0
  436. package/src/css/lucideStrokePlugin.js +5 -6
  437. package/src/css/style.css +109 -1698
  438. package/src/icons/README.md +33 -26
  439. package/src/icons/astroid-filled.svg +3 -0
  440. package/src/icons/claude.svg +1 -1
  441. package/src/icons/comfy-cloud.svg +4 -0
  442. package/src/icons/comfy-logo.svg +2 -2
  443. package/src/select.variants.ts +53 -0
  444. package/src/tag.variants.ts +38 -0
  445. package/src/workspaceAvatar.ts +54 -0
  446. package/src/icons/credits.svg +0 -3
package/README.md CHANGED
@@ -1,7 +1,8 @@
1
1
  # @comfyorg/design-system
2
2
 
3
- Shared design tokens, theme, and icon set for Comfy Org frontends. Ships raw CSS
4
- and SVG so consumers compile them with their own Tailwind build.
3
+ Shared design tokens, theme, icon set, and Vue components for Comfy Org
4
+ frontends. Ships raw CSS and SVG so consumers compile them with their own
5
+ Tailwind build, plus compiled Vue components with declarations.
5
6
 
6
7
  ## Install
7
8
 
@@ -32,18 +33,97 @@ For the palette and fonts without the Tailwind layers or icon plugins:
32
33
 
33
34
  ## Exports
34
35
 
35
- | Path | Contents |
36
- | -------------------- | ---------------------------------------------------------- |
37
- | `./css/style.css` | Full theme — palette, fonts, Tailwind layers, icon plugins |
38
- | `./css/base.css` | Palette and fonts only |
39
- | `./css/_palette.css` | Color variables |
40
- | `./css/fonts.css` | Font faces |
41
- | `./icons/*.svg` | Comfy icon set source SVGs |
36
+ | Path | Contents |
37
+ | ------------------------------- | -------------------------------------------------------------------------------- |
38
+ | `./css/style.css` | Full theme — palette, fonts, Tailwind layers, icon plugins |
39
+ | `./css/base.css` | Palette and fonts only |
40
+ | `./css/_palette.css` | Color variables |
41
+ | `./css/fonts.css` | Font faces |
42
+ | `./css/_deprecated-aliases.css` | Deprecated variable names kept for extensions; scheduled for removal |
43
+ | `./css/_legacy-palette.css` | Pre-theme palette variables (`--fg-color`, `--comfy-menu-bg`, ...) |
44
+ | `./icons/*.svg` | Comfy icon set source SVGs |
45
+ | `./workspaceAvatar` | Deterministic workspace avatar styles by plan and name |
46
+ | `./button.variants` | Button class recipes |
47
+ | `./select.variants` | Select class recipes |
48
+ | `./tag.variants` | Tag class recipes |
49
+ | `./<folder>/<Component>` | Compiled Vue components, for example `./card/Card` |
50
+ | `./components.css` | Built scoped component styles and animations, for published consumers only |
51
+ | `./lib/<folder>/<module>` | Component support types, recipes and composables, for example `./lib/menu/types` |
42
52
 
43
53
  Icons are exposed to Tailwind as `icon-[comfy--*]` and `icon-mask-[comfy--*]`
44
54
  utilities. Size them with `size-*`, not font-size classes.
45
55
 
56
+ ## Vue components
57
+
58
+ Install the component peers alongside the package:
59
+
60
+ ```sh
61
+ pnpm add vue reka-ui vue-component-type-helpers
62
+ ```
63
+
64
+ Published components are compiled ES modules with declarations for TypeScript's
65
+ `Bundler` module resolution; workspace imports use their Vue source. Reka is a
66
+ peer so host providers and packaged components share its injection contexts.
67
+ Its declarations require `vue-component-type-helpers`, which Reka currently
68
+ omits from its published dependencies. These peers are optional for CSS-only
69
+ consumers.
70
+
71
+ With strict dependency checking, VueUse also requires the `web-bluetooth`
72
+ ambient types. Install `@types/web-bluetooth` and include `web-bluetooth` if your
73
+ TypeScript configuration restricts `compilerOptions.types`.
74
+
75
+ Workspace and published component imports both use the theme imported above,
76
+ which scans the component classes for Tailwind utilities.
77
+
78
+ Published consumers must also import the component stylesheet for scoped styles
79
+ and animations:
80
+
81
+ ```ts
82
+ import '@comfyorg/design-system/components.css'
83
+ ```
84
+
85
+ Import supporting types and recipes through the `./lib/` entries listed in the
86
+ [exports table](#exports); other `lib/` paths are not exported.
87
+
88
+ Components that retain `pi-*` icon classes require the host to load
89
+ `primeicons/primeicons.css` separately.
90
+
91
+ ```vue
92
+ <script setup lang="ts">
93
+ import Card from '@comfyorg/design-system/card/Card'
94
+ import CardHeader from '@comfyorg/design-system/card/CardHeader'
95
+ import CardFooter from '@comfyorg/design-system/card/CardFooter'
96
+ </script>
97
+
98
+ <template>
99
+ <Card surface="secondary">
100
+ <CardHeader>Workspace</CardHeader>
101
+ <p>Shared workspace content</p>
102
+ <CardFooter>Actions</CardFooter>
103
+ </Card>
104
+ </template>
105
+ ```
106
+
46
107
  ## Releasing
47
108
 
48
109
  Run the **Version Bump Design System** workflow to open a version PR, then merge
49
110
  it with the `Release` label. Publishing to npm happens automatically on merge.
111
+
112
+ ### SemVer policy
113
+
114
+ This package follows SemVer for everything it exports: the CSS entry points
115
+ (`style.css`, `base.css`, and every `./css/*` path in the [exports
116
+ table](#exports)), the icon SVGs, the component paths, the `./lib/` entries, and
117
+ component props, events, and slots are the public surface. Removing or
118
+ repurposing tokens, `@font-face` declarations, a component or `./lib/` entry, a
119
+ component prop, or an entire file from that surface is a **major** bump — even when no in-repo consumer breaks, because
120
+ published consumers pin this package by version.
121
+
122
+ Precedent (updated 2026-09-28): #14790 ("move the brand layer into the
123
+ package") took brand tokens out of `_palette.css` and stopped `base.css`
124
+ loading Inter. The review raised whether that should be a major release. npm
125
+ subsequently published `1.1.0` from `main` without the brand-layer move, while
126
+ #14790's merge remains outside `main`. The verdict is unchanged: the move **is
127
+ breaking** — the PR's own body says so — and now breaks the public surface of
128
+ the shipped `1.1.0`. When the brand-layer move reaches `main`, its first npm
129
+ release must therefore be **`2.0.0`**, not another `1.x` release.
@@ -0,0 +1,49 @@
1
+ import { HTMLAttributes } from 'vue';
2
+ import { BadgeVariants } from './badge.variants';
3
+ declare var __VLS_1: {}, __VLS_3: {};
4
+ type __VLS_Slots = {} & {
5
+ icon?: (props: typeof __VLS_1) => any;
6
+ } & {
7
+ default?: (props: typeof __VLS_3) => any;
8
+ };
9
+ declare const __VLS_base: import('vue').DefineComponent<({
10
+ variant?: BadgeVariants["variant"];
11
+ severity?: BadgeVariants["severity"];
12
+ class?: HTMLAttributes["class"];
13
+ } & {
14
+ removable: true;
15
+ removeLabel: string;
16
+ }) | ({
17
+ variant?: BadgeVariants["variant"];
18
+ severity?: BadgeVariants["severity"];
19
+ class?: HTMLAttributes["class"];
20
+ } & {
21
+ removable?: false;
22
+ removeLabel?: string;
23
+ }), {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
24
+ remove: (event: MouseEvent) => any;
25
+ }, string, import('vue').PublicProps, Readonly<({
26
+ variant?: BadgeVariants["variant"];
27
+ severity?: BadgeVariants["severity"];
28
+ class?: HTMLAttributes["class"];
29
+ } & {
30
+ removable: true;
31
+ removeLabel: string;
32
+ }) | ({
33
+ variant?: BadgeVariants["variant"];
34
+ severity?: BadgeVariants["severity"];
35
+ class?: HTMLAttributes["class"];
36
+ } & {
37
+ removable?: false;
38
+ removeLabel?: string;
39
+ })> & Readonly<{
40
+ onRemove?: ((event: MouseEvent) => any) | undefined;
41
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
42
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
43
+ declare const _default: typeof __VLS_export;
44
+ export default _default;
45
+ type __VLS_WithSlots<T, S> = T & {
46
+ new (): {
47
+ $slots: S;
48
+ };
49
+ };
@@ -0,0 +1,2 @@
1
+ import { t as Badge_default } from "../shared/Badge-D3uWa3yk.js";
2
+ export { Badge_default as default };
@@ -0,0 +1,7 @@
1
+ type __VLS_Props = {
2
+ text: string;
3
+ rest?: string;
4
+ };
5
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
6
+ declare const _default: typeof __VLS_export;
7
+ export default _default;
@@ -0,0 +1,35 @@
1
+ import { t as cn } from "../shared/src-CnJ6AzLP.js";
2
+ import { Fragment, createCommentVNode, createElementBlock, createElementVNode, defineComponent, normalizeClass, openBlock, toDisplayString, unref } from "vue";
3
+ //#region src/components/badge/CreditBadge.vue?vue&type=script&setup=true&lang.ts
4
+ var _hoisted_1 = ["textContent"];
5
+ var _hoisted_2 = {
6
+ key: 0,
7
+ "data-testid": "credit-badge-rest",
8
+ class: "-ml-1 flex h-5 max-w-max min-w-0 grow basis-0 items-center truncate rounded-r-full bg-input text-xs"
9
+ };
10
+ var _hoisted_3 = ["textContent"];
11
+ //#endregion
12
+ //#region src/components/badge/CreditBadge.vue
13
+ var CreditBadge_default = /* @__PURE__ */ defineComponent({
14
+ __name: "CreditBadge",
15
+ props: {
16
+ text: {},
17
+ rest: {}
18
+ },
19
+ setup(__props) {
20
+ return (_ctx, _cache) => {
21
+ return openBlock(), createElementBlock(Fragment, null, [createElementVNode("span", {
22
+ "data-testid": "credit-badge-required",
23
+ class: normalizeClass(unref(cn)("flex h-5 shrink-0 items-center bg-input p-1 text-xs", __props.rest ? "rounded-l-full pr-1" : "rounded-full"))
24
+ }, [_cache[0] || (_cache[0] = createElementVNode("i", { class: "icon-[lucide--coins] aspect-square h-full w-auto bg-credit" }, null, -1)), createElementVNode("span", {
25
+ class: "truncate",
26
+ textContent: toDisplayString(__props.text)
27
+ }, null, 8, _hoisted_1)], 2), __props.rest ? (openBlock(), createElementBlock("span", _hoisted_2, [createElementVNode("span", {
28
+ class: "pr-2",
29
+ textContent: toDisplayString(__props.rest)
30
+ }, null, 8, _hoisted_3)])) : createCommentVNode("", true)], 64);
31
+ };
32
+ }
33
+ });
34
+ //#endregion
35
+ export { CreditBadge_default as default };
@@ -0,0 +1,12 @@
1
+ import { VariantProps } from 'cva';
2
+ export declare const badgeVariants: (props?: ({
3
+ variant?: "label" | "circle" | "tag" | "chip" | "badge" | "compact" | "outline" | "square" | "pill" | "dot" | undefined;
4
+ severity?: "contrast" | "warning" | "info" | "success" | "secondary" | "default" | "primary" | "muted" | "danger" | undefined;
5
+ } & ({
6
+ class?: import('cva').ClassValue;
7
+ className?: never;
8
+ } | {
9
+ class?: never;
10
+ className?: import('cva').ClassValue;
11
+ })) | undefined) => string;
12
+ export type BadgeVariants = VariantProps<typeof badgeVariants>;
@@ -0,0 +1,31 @@
1
+ import { PrimitiveProps, TooltipContentProps } from 'reka-ui';
2
+ import { HTMLAttributes } from 'vue';
3
+ import { ButtonVariants } from '@comfyorg/design-system/button.variants';
4
+ interface Props extends PrimitiveProps {
5
+ class?: HTMLAttributes['class'];
6
+ disabled?: boolean;
7
+ icon?: string;
8
+ indicator?: boolean;
9
+ loading?: boolean;
10
+ size?: ButtonVariants['size'];
11
+ tooltip?: string;
12
+ tooltipSide?: TooltipContentProps['side'];
13
+ variant?: ButtonVariants['variant'];
14
+ }
15
+ declare var __VLS_9: {}, __VLS_17: {}, __VLS_19: {};
16
+ type __VLS_Slots = {} & {
17
+ tooltip?: (props: typeof __VLS_9) => any;
18
+ } & {
19
+ default?: (props: typeof __VLS_17) => any;
20
+ } & {
21
+ default?: (props: typeof __VLS_19) => any;
22
+ };
23
+ declare const __VLS_base: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
24
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
25
+ declare const _default: typeof __VLS_export;
26
+ export default _default;
27
+ type __VLS_WithSlots<T, S> = T & {
28
+ new (): {
29
+ $slots: S;
30
+ };
31
+ };
@@ -0,0 +1,2 @@
1
+ import { t as Button_default } from "../shared/Button-CilmsOkY.js";
2
+ export { Button_default as default };
@@ -0,0 +1,18 @@
1
+ import { PrimitiveProps } from 'reka-ui';
2
+ import { HTMLAttributes } from 'vue';
3
+ interface Props extends PrimitiveProps {
4
+ class?: HTMLAttributes['class'];
5
+ }
6
+ declare var __VLS_8: {};
7
+ type __VLS_Slots = {} & {
8
+ default?: (props: typeof __VLS_8) => any;
9
+ };
10
+ declare const __VLS_base: import('vue').DefineComponent<Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
11
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
12
+ declare const _default: typeof __VLS_export;
13
+ export default _default;
14
+ type __VLS_WithSlots<T, S> = T & {
15
+ new (): {
16
+ $slots: S;
17
+ };
18
+ };
@@ -0,0 +1,37 @@
1
+ import { t as cn } from "../shared/src-CnJ6AzLP.js";
2
+ import { createBlock, createPropsRestProxy, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
3
+ import { Primitive, useForwardProps } from "reka-ui";
4
+ //#endregion
5
+ //#region src/components/button-group/ButtonGroup.vue
6
+ var ButtonGroup_default = /* @__PURE__ */ defineComponent({
7
+ __name: "ButtonGroup",
8
+ props: {
9
+ class: {
10
+ type: [
11
+ Boolean,
12
+ null,
13
+ String,
14
+ Object,
15
+ Array
16
+ ],
17
+ default: ""
18
+ },
19
+ asChild: { type: Boolean },
20
+ as: { default: "div" }
21
+ },
22
+ setup(__props) {
23
+ const restProps = createPropsRestProxy(__props, ["as", "class"]);
24
+ const forwardedProps = useForwardProps(restProps);
25
+ return (_ctx, _cache) => {
26
+ return openBlock(), createBlock(unref(Primitive), mergeProps(unref(forwardedProps), {
27
+ as: __props.as,
28
+ class: unref(cn)("inline-flex items-stretch overflow-hidden rounded-md", __props.class)
29
+ }), {
30
+ default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
31
+ _: 3
32
+ }, 16, ["as", "class"]);
33
+ };
34
+ }
35
+ });
36
+ //#endregion
37
+ export { ButtonGroup_default as default };
@@ -0,0 +1,16 @@
1
+ type __VLS_Props = {
2
+ backgroundClass?: string;
3
+ };
4
+ declare var __VLS_1: {};
5
+ type __VLS_Slots = {} & {
6
+ default?: (props: typeof __VLS_1) => any;
7
+ };
8
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
9
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
10
+ declare const _default: typeof __VLS_export;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,15 @@
1
+ import { t as cn } from "../shared/src-CnJ6AzLP.js";
2
+ import { createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref } from "vue";
3
+ //#endregion
4
+ //#region src/components/button-group/IconGroup.vue
5
+ var IconGroup_default = /* @__PURE__ */ defineComponent({
6
+ __name: "IconGroup",
7
+ props: { backgroundClass: {} },
8
+ setup(__props) {
9
+ return (_ctx, _cache) => {
10
+ return openBlock(), createElementBlock("div", { class: normalizeClass(unref(cn)("flex shrink-0 cursor-pointer items-center justify-center rounded-lg border-none bg-secondary p-0 shadow-sm outline-hidden transition-all duration-200", __props.backgroundClass)) }, [renderSlot(_ctx.$slots, "default")], 2);
11
+ };
12
+ }
13
+ });
14
+ //#endregion
15
+ export { IconGroup_default as default };
@@ -0,0 +1,19 @@
1
+ import { HTMLAttributes } from 'vue';
2
+ import { CardVariants } from './card.variants';
3
+ type __VLS_Props = {
4
+ class?: HTMLAttributes['class'];
5
+ surface?: CardVariants['surface'];
6
+ };
7
+ declare var __VLS_1: {};
8
+ type __VLS_Slots = {} & {
9
+ default?: (props: typeof __VLS_1) => any;
10
+ };
11
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
12
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
15
+ type __VLS_WithSlots<T, S> = T & {
16
+ new (): {
17
+ $slots: S;
18
+ };
19
+ };
@@ -0,0 +1,2 @@
1
+ import { t as Card_default } from "../shared/Card-l7baUdn0.js";
2
+ export { Card_default as default };
@@ -0,0 +1,17 @@
1
+ import { HTMLAttributes } from 'vue';
2
+ type __VLS_Props = {
3
+ class?: HTMLAttributes['class'];
4
+ };
5
+ declare var __VLS_1: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_1) => any;
8
+ };
9
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
10
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
+ declare const _default: typeof __VLS_export;
12
+ export default _default;
13
+ type __VLS_WithSlots<T, S> = T & {
14
+ new (): {
15
+ $slots: S;
16
+ };
17
+ };
@@ -0,0 +1,2 @@
1
+ import { t as CardFooter_default } from "../shared/CardFooter-BM6EmVi7.js";
2
+ export { CardFooter_default as default };
@@ -0,0 +1,17 @@
1
+ import { HTMLAttributes } from 'vue';
2
+ type __VLS_Props = {
3
+ class?: HTMLAttributes['class'];
4
+ };
5
+ declare var __VLS_1: {};
6
+ type __VLS_Slots = {} & {
7
+ default?: (props: typeof __VLS_1) => any;
8
+ };
9
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
10
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
11
+ declare const _default: typeof __VLS_export;
12
+ export default _default;
13
+ type __VLS_WithSlots<T, S> = T & {
14
+ new (): {
15
+ $slots: S;
16
+ };
17
+ };
@@ -0,0 +1,2 @@
1
+ import { t as CardHeader_default } from "../shared/CardHeader-B5To28Jp.js";
2
+ export { CardHeader_default as default };
@@ -0,0 +1,24 @@
1
+ type __VLS_Props = {
2
+ title: string;
3
+ titleId?: string;
4
+ message: string;
5
+ subtitle?: string;
6
+ subtitleId?: string;
7
+ image?: string;
8
+ messageId?: string;
9
+ };
10
+ declare var __VLS_1: {}, __VLS_3: {};
11
+ type __VLS_Slots = {} & {
12
+ image?: (props: typeof __VLS_1) => any;
13
+ } & {
14
+ actions?: (props: typeof __VLS_3) => any;
15
+ };
16
+ declare const __VLS_base: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
17
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
18
+ declare const _default: typeof __VLS_export;
19
+ export default _default;
20
+ type __VLS_WithSlots<T, S> = T & {
21
+ new (): {
22
+ $slots: S;
23
+ };
24
+ };
@@ -0,0 +1,57 @@
1
+ import { createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, renderSlot, toDisplayString } from "vue";
2
+ //#region src/components/card/CoachmarkCard.vue?vue&type=script&setup=true&lang.ts
3
+ var _hoisted_1 = { class: "flex w-full flex-col items-start justify-center gap-3 rounded-2xl bg-secondary p-4 drop-shadow-md" };
4
+ var _hoisted_2 = {
5
+ key: 0,
6
+ class: "flex h-[146px] flex-col items-start justify-center gap-4 self-stretch overflow-hidden rounded-xl bg-background"
7
+ };
8
+ var _hoisted_3 = ["src"];
9
+ var _hoisted_4 = { class: "flex flex-col items-end justify-end gap-6 self-stretch" };
10
+ var _hoisted_5 = { class: "flex flex-col items-start gap-2 self-stretch text-foreground" };
11
+ var _hoisted_6 = ["id"];
12
+ var _hoisted_7 = ["id"];
13
+ var _hoisted_8 = ["id"];
14
+ var _hoisted_9 = {
15
+ key: 0,
16
+ class: "flex w-full items-center gap-3"
17
+ };
18
+ //#endregion
19
+ //#region src/components/card/CoachmarkCard.vue
20
+ var CoachmarkCard_default = /* @__PURE__ */ defineComponent({
21
+ __name: "CoachmarkCard",
22
+ props: {
23
+ title: {},
24
+ titleId: {},
25
+ message: {},
26
+ subtitle: {},
27
+ subtitleId: {},
28
+ image: {},
29
+ messageId: {}
30
+ },
31
+ setup(__props) {
32
+ return (_ctx, _cache) => {
33
+ return openBlock(), createElementBlock("div", _hoisted_1, [__props.image || _ctx.$slots.image ? (openBlock(), createElementBlock("div", _hoisted_2, [renderSlot(_ctx.$slots, "image", {}, () => [__props.image ? (openBlock(), createElementBlock("img", {
34
+ key: 0,
35
+ src: __props.image,
36
+ alt: "",
37
+ class: "size-full object-cover"
38
+ }, null, 8, _hoisted_3)) : createCommentVNode("", true)])])) : createCommentVNode("", true), createElementVNode("div", _hoisted_4, [createElementVNode("div", _hoisted_5, [
39
+ __props.subtitle ? (openBlock(), createElementBlock("p", {
40
+ key: 0,
41
+ id: __props.subtitleId,
42
+ class: "m-0 text-xs/normal"
43
+ }, toDisplayString(__props.subtitle), 9, _hoisted_6)) : createCommentVNode("", true),
44
+ createElementVNode("h3", {
45
+ id: __props.titleId,
46
+ class: "m-0 text-base/normal font-semibold"
47
+ }, toDisplayString(__props.title), 9, _hoisted_7),
48
+ createElementVNode("p", {
49
+ id: __props.messageId,
50
+ class: "m-0 text-sm/normal text-muted-foreground"
51
+ }, toDisplayString(__props.message), 9, _hoisted_8)
52
+ ]), _ctx.$slots.actions ? (openBlock(), createElementBlock("div", _hoisted_9, [renderSlot(_ctx.$slots, "actions")])) : createCommentVNode("", true)])]);
53
+ };
54
+ }
55
+ });
56
+ //#endregion
57
+ export { CoachmarkCard_default as default };
@@ -0,0 +1,11 @@
1
+ import { VariantProps } from 'cva';
2
+ export declare const cardVariants: (props?: ({
3
+ surface?: "secondary" | "background" | undefined;
4
+ } & ({
5
+ class?: import('cva').ClassValue;
6
+ className?: never;
7
+ } | {
8
+ class?: never;
9
+ className?: import('cva').ClassValue;
10
+ })) | undefined) => string;
11
+ export type CardVariants = VariantProps<typeof cardVariants>;
@@ -0,0 +1,12 @@
1
+ import { ChartData } from 'chart.js';
2
+ import { HTMLAttributes } from 'vue';
3
+ import { SupportedChartType } from './useChart';
4
+ type __VLS_Props = {
5
+ data: ChartData;
6
+ label: string;
7
+ type: SupportedChartType;
8
+ class?: HTMLAttributes['class'];
9
+ };
10
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
11
+ declare const _default: typeof __VLS_export;
12
+ export default _default;