@comfyorg/design-system 1.2.0 → 1.3.0-alpha.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.
- package/README.md +27 -3
- package/dist/accordion/PropertiesAccordionItem.vue.d.ts +34 -0
- package/dist/accordion/PropertiesAccordionItem.vue.js +62 -0
- package/dist/badge/Badge.vue.js +1 -2
- package/dist/badge/CreditBadge.vue.d.ts +0 -1
- package/dist/badge/CreditBadge.vue.js +10 -24
- package/dist/badge/badge.variants.d.ts +1 -1
- package/dist/button/Button.vue.js +1 -2
- package/dist/button-group/ButtonGroup.vue.js +2 -4
- package/dist/button-group/IconGroup.vue.js +2 -4
- package/dist/card/Card.vue.js +1 -2
- package/dist/card/CardFooter.vue.js +1 -2
- package/dist/card/CardHeader.vue.js +1 -2
- package/dist/card/CoachmarkCard.vue.js +2 -4
- package/dist/chart/Chart.vue.js +4 -7
- package/dist/chart/__tests__/chartTestUtils.d.ts +3 -0
- package/dist/checkbox/Checkbox.vue.js +2 -4
- package/dist/chip/Tag.vue.d.ts +61 -0
- package/dist/chip/Tag.vue.js +71 -0
- package/dist/chip/TagRemoveButton.vue.js +1 -2
- package/dist/color-picker/ColorPicker.vue.d.ts +23 -0
- package/dist/color-picker/ColorPicker.vue.js +139 -0
- package/dist/color-picker/ColorPickerPanel.vue.d.ts +27 -0
- package/dist/color-picker/ColorPickerPanel.vue.js +1 -0
- package/dist/color-picker/ColorPickerSaturationValue.vue.d.ts +17 -0
- package/dist/color-picker/ColorPickerSaturationValue.vue.js +1 -0
- package/dist/color-picker/ColorPickerSlider.vue.d.ts +17 -0
- package/dist/color-picker/ColorPickerSlider.vue.js +1 -0
- package/dist/color-picker/types.d.ts +22 -0
- package/dist/color-picker/types.js +0 -0
- package/dist/color-picker/useColorPicker.d.ts +33 -0
- package/dist/common/CanvasBanner.vue.js +3 -5
- package/dist/common/ContentDivider.vue.js +2 -4
- package/dist/common/CustomFormValue.vue.js +1 -3
- package/dist/common/DotSpinner.vue.js +3 -5
- package/dist/common/EditableText.vue.js +3 -5
- package/dist/common/HighlightedText.vue.d.ts +8 -0
- package/dist/common/HighlightedText.vue.js +49 -0
- package/dist/common/LoadingOverlay.vue.js +3 -5
- package/dist/common/MarkdownText.vue.js +2 -4
- package/dist/common/MarqueeLine.vue.js +2 -3
- package/dist/common/NoResultsPlaceholder.vue.d.ts +28 -0
- package/dist/common/NoResultsPlaceholder.vue.js +49 -0
- package/dist/common/NotificationPopup.vue.d.ts +28 -0
- package/dist/common/NotificationPopup.vue.js +63 -0
- package/dist/common/OverlayIcon.vue.js +1 -2
- package/dist/common/SanitizedHtml.vue.js +2 -4
- package/dist/common/TextDivider.vue.js +3 -5
- package/dist/common/TextTicker.vue.js +2 -4
- package/dist/common/TextTickerMultiLine.vue.js +3 -6
- package/dist/common/UserAvatar.vue.d.ts +9 -0
- package/dist/common/UserAvatar.vue.js +45 -0
- package/dist/common/VerticalDivider.vue.js +2 -3
- package/dist/common/VideoCompareSlider.vue.js +3 -5
- package/dist/common/ViewportWidgetShell.vue.js +3 -5
- package/dist/common/VirtualGrid.vue.js +1 -3
- package/dist/common/highlightQuery.d.ts +6 -0
- package/dist/composables/useAttrsClass.js +1 -2
- package/dist/composables/usePopoverSizing.js +1 -2
- package/dist/confirm/ConfirmBody.vue.js +3 -5
- package/dist/confirm/ConfirmFooter.vue.d.ts +18 -0
- package/dist/confirm/ConfirmFooter.vue.js +53 -0
- package/dist/confirm/ConfirmHeader.vue.js +2 -4
- package/dist/content-card/CardBottom.vue.js +2 -4
- package/dist/content-card/CardContainer.vue.js +3 -5
- package/dist/content-card/CardTop.vue.js +2 -4
- package/dist/dialog/Dialog.vue.js +1 -3
- package/dist/dialog/DialogClose.vue.js +1 -24
- package/dist/dialog/DialogContent.vue.js +1 -73
- package/dist/dialog/DialogDescription.vue.js +2 -4
- package/dist/dialog/DialogFooter.vue.js +2 -4
- package/dist/dialog/DialogHeader.vue.js +2 -4
- package/dist/dialog/DialogMaximize.vue.js +2 -4
- package/dist/dialog/DialogOverlay.vue.js +1 -35
- package/dist/dialog/DialogPanel.vue.js +7 -9
- package/dist/dialog/DialogPortal.vue.js +1 -38
- package/dist/dialog/DialogTitle.vue.js +1 -2
- package/dist/dialog/Dialogue.vue.d.ts +22 -0
- package/dist/dialog/Dialogue.vue.js +56 -0
- package/dist/dialog/dialog.variants.js +4 -5
- package/dist/field/Field.vue.js +4 -7
- package/dist/field/FieldDescription.vue.js +2 -4
- package/dist/field/FieldError.vue.js +3 -5
- package/dist/field/FieldGroup.vue.js +2 -4
- package/dist/field/FieldLabel.vue.js +3 -5
- package/dist/field/FieldSwitch.vue.d.ts +16 -0
- package/dist/field/FieldSwitch.vue.js +43 -0
- package/dist/field/LayoutField.vue.d.ts +18 -0
- package/dist/field/LayoutField.vue.js +1 -0
- package/dist/field/ModelInfoField.vue.js +2 -4
- package/dist/hover-card/HoverCard.vue.js +1 -3
- package/dist/hover-card/HoverCardContent.vue.js +2 -4
- package/dist/hover-card/HoverCardTrigger.vue.js +1 -3
- package/dist/icon/ComfyLogo.vue.js +2 -4
- package/dist/icon/PuzzleIcon.vue.js +2 -4
- package/dist/icon/TinyChevronIcon.vue.js +1 -3
- package/dist/icon/VerifiedIcon.vue.js +2 -4
- package/dist/input/Input.vue.js +1 -2
- package/dist/input/PasswordInput.vue.js +5 -7
- package/dist/input-group/InputGroup.vue.js +1 -2
- package/dist/input-group/InputGroupAddon.vue.js +1 -2
- package/dist/input-group/InputGroupButton.vue.js +1 -2
- package/dist/input-group/InputGroupInput.vue.js +1 -2
- package/dist/input-group/inputGroup.variants.js +1 -2
- package/dist/knob/Knob.vue.js +3 -5
- package/dist/label/Label.vue.js +1 -2
- package/dist/layout/BaseModalLayout.vue.d.ts +67 -0
- package/dist/layout/BaseModalLayout.vue.js +198 -0
- package/dist/media/AudioPreview.vue.js +2 -4
- package/dist/media/ImageLightbox.vue.d.ts +17 -0
- package/dist/media/ImageLightbox.vue.js +76 -0
- package/dist/media/MediaTitle.vue.js +2 -4
- package/dist/media/Video.vue.d.ts +28 -0
- package/dist/media/Video.vue.js +100 -0
- package/dist/media/VideoPlayOverlay.vue.js +3 -5
- package/dist/media/VideoPreview.vue.js +2 -4
- package/dist/media/ZoomPane.vue.js +1 -3
- package/dist/menu/ContextMenu.vue.js +3 -5
- package/dist/menu/ContextMenuContent.vue.js +1 -2
- package/dist/menu/Menu.vue.js +3 -5
- package/dist/menu/MenuAction.vue.js +1 -2
- package/dist/menu/MenuContent.vue.js +1 -2
- package/dist/menu/MenuItem.vue.js +2 -4
- package/dist/menu/MenuItemContent.vue.js +1 -2
- package/dist/menu/MenuItems.vue.js +1 -2
- package/dist/menu/MenuRadioGroup.vue.js +1 -2
- package/dist/menu/MenuRadioItem.vue.js +1 -2
- package/dist/menu/MenuSeparator.vue.js +1 -2
- package/dist/menu/MenuSub.vue.js +1 -2
- package/dist/menu/MenuSubContent.vue.js +1 -2
- package/dist/menu/MenuSubTrigger.vue.js +1 -2
- package/dist/menu/MenuSubmenu.vue.js +1 -2
- package/dist/menu/menuAnchor.js +1 -2
- package/dist/menu/menuStyles.js +1 -2
- package/dist/menu/usePointMenu.js +1 -2
- package/dist/message/Message.vue.js +4 -6
- package/dist/message/message.variants.js +1 -2
- package/dist/multi-select/MultiSelect.vue.js +3 -5
- package/dist/multi-select/MultiSelectContent.vue.js +1 -2
- package/dist/multi-select/MultiSelectTrigger.vue.js +1 -2
- package/dist/navigation/LeftSidePanel.vue.d.ts +12 -0
- package/dist/navigation/LeftSidePanel.vue.js +82 -0
- package/dist/navigation/NavIcon.vue.d.ts +7 -0
- package/dist/navigation/NavIcon.vue.js +1 -0
- package/dist/navigation/NavItem.vue.d.ts +21 -0
- package/dist/navigation/NavItem.vue.js +1 -0
- package/dist/navigation/NavTitle.vue.js +1 -42
- package/dist/navigation/SidebarTopArea.vue.js +2 -3
- package/dist/navigation/types.d.ts +13 -0
- package/dist/navigation/types.js +0 -0
- package/dist/number-field/NumberField.vue.js +2 -4
- package/dist/number-field/NumberFieldDecrement.vue.js +2 -4
- package/dist/number-field/NumberFieldIncrement.vue.js +2 -4
- package/dist/number-field/NumberFieldInput.vue.js +2 -4
- package/dist/number-field/PropertyNumberField.vue.js +3 -5
- package/dist/pagination/Pagination.vue.js +8 -10
- package/dist/popover/PopoverContent.vue.js +1 -91
- package/dist/popover/usePopoverViewportDismiss.js +1 -2
- package/dist/radio-group/RadioGroup.vue.js +2 -4
- package/dist/radio-group/RadioGroupItem.vue.js +2 -4
- package/dist/search-input/AsyncSearchInput.vue.js +3 -5
- package/dist/search-input/SearchAutocomplete.vue.js +4 -6
- package/dist/search-input/SearchInput.vue.js +4 -6
- package/dist/select/DropdownControl.vue.js +2 -4
- package/dist/select/Select.vue.js +1 -2
- package/dist/select/SelectContent.vue.js +1 -2
- package/dist/select/SelectItem.vue.d.ts +4 -0
- package/dist/select/SelectItem.vue.js +1 -2
- package/dist/select/SelectScrollDownButton.vue.js +1 -2
- package/dist/select/SelectScrollUpButton.vue.js +1 -2
- package/dist/select/SelectTrigger.vue.js +1 -2
- package/dist/select/SelectValue.vue.js +1 -2
- package/dist/select/useSelectSearch.js +1 -2
- package/dist/shared/{Badge-D3uWa3yk.js → Badge-DFHO3AFi.js} +4 -6
- package/dist/shared/{Button-CilmsOkY.js → Button-Dj_H5v3V.js} +5 -8
- package/dist/shared/{Card-l7baUdn0.js → Card-BrvqUM49.js} +3 -5
- package/dist/shared/{CardFooter-BM6EmVi7.js → CardFooter-BV_I0pM-.js} +2 -4
- package/dist/shared/{CardHeader-B5To28Jp.js → CardHeader-CMutruBx.js} +2 -4
- package/dist/shared/ColorPickerPanel-DQGHuvxk.js +239 -0
- package/dist/shared/ColorPickerSaturationValue-B5VDiMcl.js +64 -0
- package/dist/shared/ColorPickerSlider--mnQyzWD.js +305 -0
- package/dist/shared/{ContextMenuContent-CNQHJQ81.js → ContextMenuContent-RNyBBJOX.js} +2 -4
- package/dist/shared/DialogClose-CrtPRSNX.js +22 -0
- package/dist/shared/DialogContent-v2s55FXs.js +71 -0
- package/dist/shared/DialogOverlay-C9qv0zme.js +33 -0
- package/dist/shared/DialogPortal-DtCpLgtO.js +36 -0
- package/dist/shared/{DialogTitle-CfkkTGuU.js → DialogTitle-Chomvpgq.js} +2 -4
- package/dist/shared/{Input-39RLwDr2.js → Input-DOeNoniw.js} +2 -4
- package/dist/shared/{InputGroup-kjQKkhyB.js → InputGroup-BYt6BWpk.js} +2 -4
- package/dist/shared/{InputGroupAddon-DLDRT0CQ.js → InputGroupAddon-B1cn7czs.js} +3 -5
- package/dist/shared/{InputGroupButton-BoEp2apg.js → InputGroupButton-tw5AYOoR.js} +3 -5
- package/dist/shared/{InputGroupInput-E2MlEVUU.js → InputGroupInput-C_kkIxvY.js} +3 -5
- package/dist/shared/{Label-Cx_lFofI.js → Label-kwhWNR2P.js} +2 -4
- package/dist/shared/LayoutField-C8KCaVF0.js +34 -0
- package/dist/shared/{MenuAction-BdghJ23k.js → MenuAction-0z8BSoX9.js} +5 -8
- package/dist/shared/{MenuContent-ChqlM3xA.js → MenuContent--tKCqaIO.js} +2 -4
- package/dist/shared/{MenuItemContent--dPNoBmU.js → MenuItemContent-Be658c7e.js} +6 -8
- package/dist/shared/{MenuItems-BJKetPV-.js → MenuItems-BZTlERd6.js} +5 -7
- package/dist/shared/{MenuRadioGroup-Bpjt9sHI.js → MenuRadioGroup-B28YS1p1.js} +4 -6
- package/dist/shared/{MenuRadioItem-h7hh_RGU.js → MenuRadioItem-D8DFu-KU.js} +2 -4
- package/dist/shared/{MenuSeparator-Dm6CkPqB.js → MenuSeparator-DrAiObmE.js} +2 -4
- package/dist/shared/{MenuSub-Dbnj2w-X.js → MenuSub-DSizq_fV.js} +1 -3
- package/dist/shared/{MenuSubContent-M-g3fllh.js → MenuSubContent-ghzkX4hX.js} +2 -4
- package/dist/shared/{MenuSubTrigger-D6-3s2NL.js → MenuSubTrigger-BGRIm_Bf.js} +2 -4
- package/dist/shared/{MenuSubmenu-QHWMyfKF.js → MenuSubmenu-CjPf8DXl.js} +5 -7
- package/dist/shared/{MultiSelectContent-c1D5avjh.js → MultiSelectContent-9xyBQKz3.js} +5 -7
- package/dist/shared/{MultiSelectTrigger-lmuXqETa.js → MultiSelectTrigger-DNySkpH9.js} +4 -6
- package/dist/shared/NavIcon-FTJH75HH.js +12 -0
- package/dist/shared/NavItem-sQJ-77Zw.js +77 -0
- package/dist/shared/NavTitle-BM22yfCR.js +40 -0
- package/dist/shared/{OverlayIcon-DntJI-mm.js → OverlayIcon-C-din824.js} +3 -5
- package/dist/shared/PopoverContent-DNqL6t-O.js +89 -0
- package/dist/shared/{SearchableSingleSelect-Dnti1kqJ.js → SearchableSingleSelect-DQauLQWW.js} +4 -6
- package/dist/shared/{Select-CP3OZjtL.js → Select-DtVgv7Po.js} +1 -3
- package/dist/shared/{SelectContent-C8aNlcFf.js → SelectContent-Ba1mCDWM.js} +4 -6
- package/dist/shared/{SelectItem-tU4CIa5J.js → SelectItem-DaOr3TFS.js} +23 -10
- package/dist/shared/{SelectScrollDownButton-Dvig5MVc.js → SelectScrollDownButton-DYmxtida.js} +2 -4
- package/dist/shared/{SelectScrollUpButton-lv-npT6v.js → SelectScrollUpButton-DiyvSb9O.js} +2 -4
- package/dist/shared/{SelectTrigger-CCDiZW91.js → SelectTrigger-BBicbVsI.js} +2 -4
- package/dist/shared/{SelectValue-DFZFSiQp.js → SelectValue-BjaQc-WU.js} +1 -3
- package/dist/shared/{Switch-DsCzHpDU.js → Switch-qavkHWMz.js} +3 -5
- package/dist/shared/{TableHead-OxGist4m.js → TableHead-DpsXVMzk.js} +2 -4
- package/dist/shared/{TagRemoveButton-BiCdscIC.js → TagRemoveButton-D919R-To.js} +4 -6
- package/dist/shared/{TextTooltip-ClHQl84h.js → TextTooltip-BNlZI515.js} +4 -6
- package/dist/shared/{Tooltip-DbXyHv20.js → Tooltip-4rCebVao.js} +2 -4
- package/dist/shared/{TooltipContent-Bju-U7gc.js → TooltipContent-0GR7hBNu.js} +3 -5
- package/dist/shared/{TooltipTrigger-CVwISmWo.js → TooltipTrigger-64EIE5f2.js} +2 -4
- package/dist/shared/TransitionCollapse-VfBzyj5a.js +108 -0
- package/dist/shared/{_plugin-vue_export-helper-BOaGB7Aw.js → _plugin-vue_export-helper-DjkACiAr.js} +1 -2
- package/dist/shared/{searchInput.variants-NOge_52E.js → searchInput.variants-BdYHNjce.js} +1 -2
- package/dist/shared/{select.variants-BPn5Z7N1.js → select.variants-cRXaATWS.js} +1 -2
- package/dist/shared/{src-CnJ6AzLP.js → src-DTwuqov4.js} +1 -2
- package/dist/shared/{tabKeys-BISOrxWu.js → tabKeys-CP6c3wTY.js} +1 -2
- package/dist/shared/{tabs.variants-XUREdHry.js → tabs.variants-Cgk7bRhG.js} +1 -2
- package/dist/shared/{tag.variants-CCqCn8Jc.js → tag.variants-BEXRRbPc.js} +1 -2
- package/dist/shared/{tagsInputContext-QXu7RrG5.js → tagsInputContext-C-X1-iNf.js} +1 -2
- package/dist/shared/{toggleGroup.variants-CvjZDHMw.js → toggleGroup.variants-BuwGELw0.js} +1 -2
- package/dist/shared/{tooltipContext-BL5JtM0i.js → tooltipContext-arEyjGQC.js} +1 -2
- package/dist/single-select/SearchableSingleSelect.vue.js +1 -2
- package/dist/single-select/SingleSelect.vue.js +5 -7
- package/dist/skeleton/Skeleton.vue.js +2 -4
- package/dist/slider/GradientSlider.vue.d.ts +20 -0
- package/dist/slider/GradientSlider.vue.js +100 -0
- package/dist/slider/Slider.vue.js +2 -4
- package/dist/slider/gradients.d.ts +6 -0
- package/dist/spinner/Spinner.vue.js +2 -4
- package/dist/splitter/SplitterGroup.vue.js +2 -4
- package/dist/splitter/SplitterPanel.vue.js +2 -4
- package/dist/splitter/SplitterResizeHandle.vue.js +2 -4
- package/dist/switch/Switch.vue.js +1 -2
- package/dist/tab/Tab.vue.js +5 -8
- package/dist/tab/TabList.vue.js +3 -5
- package/dist/tab/TabPanel.vue.js +3 -5
- package/dist/table/Table.vue.js +3 -5
- package/dist/table/TableBody.vue.js +2 -4
- package/dist/table/TableCell.vue.js +2 -4
- package/dist/table/TableHead.vue.js +1 -2
- package/dist/table/TableHeader.vue.js +2 -4
- package/dist/table/TableRow.vue.js +2 -4
- package/dist/table/TableSortHead.vue.js +3 -5
- package/dist/table/tableUtils.js +1 -2
- package/dist/tabs/Tabs.vue.js +2 -4
- package/dist/tabs/TabsContent.vue.js +2 -4
- package/dist/tabs/TabsList.vue.js +3 -5
- package/dist/tabs/TabsTrigger.vue.js +3 -5
- package/dist/tags-input/TagsInput.vue.js +4 -6
- package/dist/tags-input/TagsInputInput.vue.js +3 -5
- package/dist/tags-input/TagsInputItem.vue.js +3 -5
- package/dist/tags-input/TagsInputItemDelete.vue.js +2 -4
- package/dist/tags-input/TagsInputItemText.vue.js +2 -4
- package/dist/textarea/Textarea.vue.js +2 -4
- package/dist/toast/ToastClose.vue.js +3 -5
- package/dist/toast/ToastDescription.vue.js +2 -4
- package/dist/toast/ToastDock.vue.js +2 -4
- package/dist/toast/ToastPanel.vue.js +3 -5
- package/dist/toast/ToastRoot.vue.js +3 -5
- package/dist/toast/ToastTitle.vue.js +2 -4
- package/dist/toast/ToastViewport.vue.js +2 -4
- package/dist/toggle-group/ToggleGroup.vue.js +3 -5
- package/dist/toggle-group/ToggleGroupItem.vue.js +3 -5
- package/dist/tooltip/TextTooltip.vue.js +1 -2
- package/dist/tooltip/Tooltip.vue.js +1 -2
- package/dist/tooltip/TooltipContent.vue.js +1 -2
- package/dist/tooltip/TooltipProvider.vue.js +1 -3
- package/dist/tooltip/TooltipTrigger.vue.js +1 -2
- package/dist/tooltip/tooltipConfig.js +1 -2
- package/dist/transition/TransitionCollapse.vue.js +1 -110
- package/dist/tree/Tree.vue.d.ts +1 -1
- package/dist/tree/Tree.vue.js +2 -4
- package/dist/tree/TreeItem.vue.js +4 -6
- package/dist/tree/treeStyles.js +1 -2
- package/package.json +40 -20
- package/src/css/_mask-editor.css +0 -1
- package/src/css/component-support.css +69 -0
- package/src/css/iconSizing.test.ts +1 -1
- package/src/css/published.css +3 -0
- package/src/css/style.css +2 -316
- package/src/css/theme.css +243 -0
- package/src/css/themes/void.css +102 -0
- package/src/icons/README.md +41 -84
package/README.md
CHANGED
|
@@ -21,6 +21,9 @@ Import the full theme from your app's entry stylesheet:
|
|
|
21
21
|
@import '@comfyorg/design-system/css/style.css';
|
|
22
22
|
```
|
|
23
23
|
|
|
24
|
+
Use this package import rather than a filesystem path into the package. Its
|
|
25
|
+
published export registers the compiled component sources for Tailwind.
|
|
26
|
+
|
|
24
27
|
This pulls in the fonts, the color palette, the Tailwind theme and utilities
|
|
25
28
|
layers, `tw-animate-css`, the PrimeUI plugin, and the Comfy and Lucide icon
|
|
26
29
|
plugins.
|
|
@@ -31,12 +34,32 @@ For the palette and fonts without the Tailwind layers or icon plugins:
|
|
|
31
34
|
@import '@comfyorg/design-system/css/base.css';
|
|
32
35
|
```
|
|
33
36
|
|
|
37
|
+
## Void theme
|
|
38
|
+
|
|
39
|
+
Void is the near-black look used by Comfy Desktop. An app with its own Tailwind
|
|
40
|
+
build and global styles imports it instead of `style.css`, which carries
|
|
41
|
+
ComfyUI's colors and app-wide rules:
|
|
42
|
+
|
|
43
|
+
```css
|
|
44
|
+
@import 'tailwindcss';
|
|
45
|
+
@import '@comfyorg/design-system/css/themes/void.css';
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
The theme gives the components their colors, registers the compiled component
|
|
49
|
+
sources for Tailwind, and adds Void's type, radius, shadow and motion tokens.
|
|
50
|
+
ComfyUI does not import it, so changing Void cannot change ComfyUI. It does not
|
|
51
|
+
declare fonts: the host provides `Inter` and `PP Formula`. Published consumers
|
|
52
|
+
still import `components.css`, as described under [Vue components](#vue-components).
|
|
53
|
+
|
|
34
54
|
## Exports
|
|
35
55
|
|
|
36
56
|
| Path | Contents |
|
|
37
57
|
| ------------------------------- | -------------------------------------------------------------------------------- |
|
|
38
58
|
| `./css/style.css` | Full theme — palette, fonts, Tailwind layers, icon plugins |
|
|
59
|
+
| `./css/theme.css` | Full theme without automatic component source registration |
|
|
39
60
|
| `./css/base.css` | Palette and fonts only |
|
|
61
|
+
| `./css/component-support.css` | Palette, icon plugins, animations, layers and utilities the components need |
|
|
62
|
+
| `./css/themes/void.css` | Void theme for apps other than ComfyUI, including component support |
|
|
40
63
|
| `./css/_palette.css` | Color variables |
|
|
41
64
|
| `./css/fonts.css` | Font faces |
|
|
42
65
|
| `./css/_deprecated-aliases.css` | Deprecated variable names kept for extensions; scheduled for removal |
|
|
@@ -58,15 +81,16 @@ utilities. Size them with `size-*`, not font-size classes.
|
|
|
58
81
|
Install the component peers alongside the package:
|
|
59
82
|
|
|
60
83
|
```sh
|
|
61
|
-
pnpm add vue reka-ui vue-component-type-helpers
|
|
84
|
+
pnpm add vue reka-ui vue-component-type-helpers @vueuse/core @vueuse/integrations
|
|
62
85
|
```
|
|
63
86
|
|
|
64
87
|
Published components are compiled ES modules with declarations for TypeScript's
|
|
65
88
|
`Bundler` module resolution; workspace imports use their Vue source. Reka is a
|
|
66
89
|
peer so host providers and packaged components share its injection contexts.
|
|
67
90
|
Its declarations require `vue-component-type-helpers`, which Reka currently
|
|
68
|
-
omits from its published dependencies.
|
|
69
|
-
consumers
|
|
91
|
+
omits from its published dependencies. VueUse provides the component composables
|
|
92
|
+
and search integration. These peers are optional for CSS-only consumers and are
|
|
93
|
+
not automatically installed. Install them explicitly when using Vue components.
|
|
70
94
|
|
|
71
95
|
With strict dependency checking, VueUse also requires the `web-bluetooth`
|
|
72
96
|
ambient types. Install `@types/web-bluetooth` and include `web-bluetooth` if your
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
disabled?: boolean;
|
|
3
|
+
label?: string;
|
|
4
|
+
enableEmptyState?: boolean;
|
|
5
|
+
tooltip?: string;
|
|
6
|
+
size?: 'default' | 'lg';
|
|
7
|
+
variant?: 'default' | 'card';
|
|
8
|
+
class?: string;
|
|
9
|
+
};
|
|
10
|
+
type __VLS_ModelProps = {
|
|
11
|
+
'collapse'?: boolean;
|
|
12
|
+
};
|
|
13
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
14
|
+
declare var __VLS_13: {}, __VLS_27: {}, __VLS_29: {};
|
|
15
|
+
type __VLS_Slots = {} & {
|
|
16
|
+
label?: (props: typeof __VLS_13) => any;
|
|
17
|
+
} & {
|
|
18
|
+
default?: (props: typeof __VLS_27) => any;
|
|
19
|
+
} & {
|
|
20
|
+
empty?: (props: typeof __VLS_29) => any;
|
|
21
|
+
};
|
|
22
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
23
|
+
"update:collapse": (value: boolean) => any;
|
|
24
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
25
|
+
"onUpdate:collapse"?: ((value: boolean) => any) | undefined;
|
|
26
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
27
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
28
|
+
declare const _default: typeof __VLS_export;
|
|
29
|
+
export default _default;
|
|
30
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
31
|
+
new (): {
|
|
32
|
+
$slots: S;
|
|
33
|
+
};
|
|
34
|
+
};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { t as Tooltip_default } from "../shared/Tooltip-4rCebVao.js";
|
|
2
|
+
import { t as TooltipContent_default } from "../shared/TooltipContent-0GR7hBNu.js";
|
|
3
|
+
import { t as TooltipTrigger_default } from "../shared/TooltipTrigger-64EIE5f2.js";
|
|
4
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
5
|
+
import { t as TransitionCollapse_default } from "../shared/TransitionCollapse-VfBzyj5a.js";
|
|
6
|
+
import { computed, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, defineComponent, mergeModels, normalizeClass, openBlock, renderSlot, toDisplayString, unref, useModel, withCtx } from "vue";
|
|
7
|
+
// src/components/accordion/PropertiesAccordionItem.vue?vue&type=script&setup=true&lang.ts
|
|
8
|
+
var _hoisted_1 = { class: "sticky top-0 z-10 flex items-center justify-between bg-inherit backdrop-blur-xl" };
|
|
9
|
+
var _hoisted_2 = ["tabindex"];
|
|
10
|
+
var _hoisted_3 = ["disabled"];
|
|
11
|
+
var _hoisted_4 = {
|
|
12
|
+
key: 0,
|
|
13
|
+
class: "pb-4"
|
|
14
|
+
};
|
|
15
|
+
// src/components/accordion/PropertiesAccordionItem.vue
|
|
16
|
+
var PropertiesAccordionItem_default = /* @__PURE__ */ defineComponent({
|
|
17
|
+
__name: "PropertiesAccordionItem",
|
|
18
|
+
props: /*@__PURE__*/ mergeModels({
|
|
19
|
+
disabled: { type: Boolean },
|
|
20
|
+
label: {},
|
|
21
|
+
enableEmptyState: { type: Boolean },
|
|
22
|
+
tooltip: {},
|
|
23
|
+
size: { default: "default" },
|
|
24
|
+
variant: { default: "default" },
|
|
25
|
+
class: {}
|
|
26
|
+
}, {
|
|
27
|
+
"collapse": {
|
|
28
|
+
type: Boolean,
|
|
29
|
+
default: false
|
|
30
|
+
},
|
|
31
|
+
"collapseModifiers": {}
|
|
32
|
+
}),
|
|
33
|
+
emits: ["update:collapse"],
|
|
34
|
+
setup(__props) {
|
|
35
|
+
const isCollapse = useModel(__props, "collapse");
|
|
36
|
+
const isExpanded = computed(() => !isCollapse.value && !__props.disabled);
|
|
37
|
+
return (_ctx, _cache) => {
|
|
38
|
+
return openBlock(), createElementBlock("div", { class: normalizeClass(unref(cn)("flex flex-col bg-background", __props.variant === "card" && "border-t bg-card", __props.class)) }, [createElementVNode("div", _hoisted_1, [createVNode(unref(Tooltip_default), { disabled: !__props.tooltip }, {
|
|
39
|
+
default: withCtx(() => [createVNode(unref(TooltipTrigger_default), { "as-child": "" }, {
|
|
40
|
+
default: withCtx(() => [createElementVNode("div", {
|
|
41
|
+
class: "w-full",
|
|
42
|
+
tabindex: __props.disabled && __props.tooltip ? 0 : void 0
|
|
43
|
+
}, [createElementVNode("button", {
|
|
44
|
+
type: "button",
|
|
45
|
+
class: normalizeClass(unref(cn)("group flex w-full items-center justify-between border-0 bg-transparent pr-3 pl-4 text-left ring-0 outline-0 disabled:text-muted-foreground", __props.size === "lg" ? "min-h-16" : "min-h-12", !__props.disabled && "cursor-pointer")),
|
|
46
|
+
disabled: __props.disabled,
|
|
47
|
+
onClick: _cache[0] || (_cache[0] = ($event) => isCollapse.value = !isCollapse.value)
|
|
48
|
+
}, [createElementVNode("span", { class: normalizeClass(unref(cn)("line-clamp-2 flex-1 font-semibold", __props.variant === "card" ? "text-xs uppercase select-none" : "text-sm")) }, [renderSlot(_ctx.$slots, "label", {}, () => [createTextVNode(toDisplayString(__props.label), 1)])], 2), createElementVNode("i", { class: normalizeClass(unref(cn)("icon-[lucide--chevron-up] text-muted-foreground transition-all group-hover:text-foreground group-focus:text-foreground group-has-[.subbutton:hover]:text-muted-foreground", isCollapse.value && "-rotate-180", __props.disabled && "opacity-0")) }, null, 2)], 10, _hoisted_3)], 8, _hoisted_2)]),
|
|
49
|
+
_: 3
|
|
50
|
+
}), createVNode(unref(TooltipContent_default), null, {
|
|
51
|
+
default: withCtx(() => [createTextVNode(toDisplayString(__props.tooltip), 1)]),
|
|
52
|
+
_: 1
|
|
53
|
+
})]),
|
|
54
|
+
_: 3
|
|
55
|
+
}, 8, ["disabled"])]), createVNode(unref(TransitionCollapse_default), null, {
|
|
56
|
+
default: withCtx(() => [isExpanded.value ? (openBlock(), createElementBlock("div", _hoisted_4, [renderSlot(_ctx.$slots, "default")])) : __props.enableEmptyState && __props.disabled ? renderSlot(_ctx.$slots, "empty", {}, void 0, void 0, 1) : createCommentVNode("", true)]),
|
|
57
|
+
_: 3
|
|
58
|
+
})], 2);
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
export { PropertiesAccordionItem_default as default };
|
package/dist/badge/Badge.vue.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Badge_default as default };
|
|
1
|
+
export { t as default } from "../shared/Badge-DFHO3AFi.js";
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
type __VLS_Props = {
|
|
2
2
|
text: string;
|
|
3
|
-
rest?: string;
|
|
4
3
|
};
|
|
5
4
|
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
5
|
declare const _default: typeof __VLS_export;
|
|
@@ -1,35 +1,21 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
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"
|
|
1
|
+
import { createElementBlock, createElementVNode, defineComponent, openBlock, toDisplayString } from "vue";
|
|
2
|
+
// src/components/badge/CreditBadge.vue?vue&type=script&setup=true&lang.ts
|
|
3
|
+
var _hoisted_1 = {
|
|
4
|
+
"data-testid": "credit-badge",
|
|
5
|
+
class: "flex h-5 shrink-0 items-center gap-1 rounded-md bg-input px-2 py-0.5 text-xs"
|
|
9
6
|
};
|
|
10
|
-
var
|
|
11
|
-
|
|
12
|
-
//#region src/components/badge/CreditBadge.vue
|
|
7
|
+
var _hoisted_2 = ["textContent"];
|
|
8
|
+
// src/components/badge/CreditBadge.vue
|
|
13
9
|
var CreditBadge_default = /* @__PURE__ */ defineComponent({
|
|
14
10
|
__name: "CreditBadge",
|
|
15
|
-
props: {
|
|
16
|
-
text: {},
|
|
17
|
-
rest: {}
|
|
18
|
-
},
|
|
11
|
+
props: { text: {} },
|
|
19
12
|
setup(__props) {
|
|
20
13
|
return (_ctx, _cache) => {
|
|
21
|
-
return openBlock(), createElementBlock(
|
|
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", {
|
|
14
|
+
return openBlock(), createElementBlock("span", _hoisted_1, [_cache[0] || (_cache[0] = createElementVNode("i", { class: "icon-[lucide--coins] aspect-square size-3.5 bg-credit" }, null, -1)), createElementVNode("span", {
|
|
25
15
|
class: "truncate",
|
|
26
16
|
textContent: toDisplayString(__props.text)
|
|
27
|
-
}, null, 8,
|
|
28
|
-
class: "pr-2",
|
|
29
|
-
textContent: toDisplayString(__props.rest)
|
|
30
|
-
}, null, 8, _hoisted_3)])) : createCommentVNode("", true)], 64);
|
|
17
|
+
}, null, 8, _hoisted_2)]);
|
|
31
18
|
};
|
|
32
19
|
}
|
|
33
20
|
});
|
|
34
|
-
//#endregion
|
|
35
21
|
export { CreditBadge_default as default };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { VariantProps } from 'cva';
|
|
2
2
|
export declare const badgeVariants: (props?: ({
|
|
3
3
|
variant?: "label" | "circle" | "tag" | "chip" | "badge" | "compact" | "outline" | "square" | "pill" | "dot" | undefined;
|
|
4
|
-
severity?: "
|
|
4
|
+
severity?: "warning" | "info" | "success" | "secondary" | "default" | "contrast" | "primary" | "muted" | "danger" | undefined;
|
|
5
5
|
} & ({
|
|
6
6
|
class?: import('cva').ClassValue;
|
|
7
7
|
className?: never;
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Button_default as default };
|
|
1
|
+
export { t as default } from "../shared/Button-Dj_H5v3V.js";
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import { t as cn } from "../shared/src-
|
|
1
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
2
2
|
import { createBlock, createPropsRestProxy, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
|
|
3
3
|
import { Primitive, useForwardProps } from "reka-ui";
|
|
4
|
-
|
|
5
|
-
//#region src/components/button-group/ButtonGroup.vue
|
|
4
|
+
// src/components/button-group/ButtonGroup.vue
|
|
6
5
|
var ButtonGroup_default = /* @__PURE__ */ defineComponent({
|
|
7
6
|
__name: "ButtonGroup",
|
|
8
7
|
props: {
|
|
@@ -33,5 +32,4 @@ var ButtonGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
33
32
|
};
|
|
34
33
|
}
|
|
35
34
|
});
|
|
36
|
-
//#endregion
|
|
37
35
|
export { ButtonGroup_default as default };
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { t as cn } from "../shared/src-
|
|
1
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
2
2
|
import { createElementBlock, defineComponent, normalizeClass, openBlock, renderSlot, unref } from "vue";
|
|
3
|
-
|
|
4
|
-
//#region src/components/button-group/IconGroup.vue
|
|
3
|
+
// src/components/button-group/IconGroup.vue
|
|
5
4
|
var IconGroup_default = /* @__PURE__ */ defineComponent({
|
|
6
5
|
__name: "IconGroup",
|
|
7
6
|
props: { backgroundClass: {} },
|
|
@@ -11,5 +10,4 @@ var IconGroup_default = /* @__PURE__ */ defineComponent({
|
|
|
11
10
|
};
|
|
12
11
|
}
|
|
13
12
|
});
|
|
14
|
-
//#endregion
|
|
15
13
|
export { IconGroup_default as default };
|
package/dist/card/Card.vue.js
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { Card_default as default };
|
|
1
|
+
export { t as default } from "../shared/Card-BrvqUM49.js";
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { CardFooter_default as default };
|
|
1
|
+
export { t as default } from "../shared/CardFooter-BV_I0pM-.js";
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { CardHeader_default as default };
|
|
1
|
+
export { t as default } from "../shared/CardHeader-CMutruBx.js";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { createCommentVNode, createElementBlock, createElementVNode, defineComponent, openBlock, renderSlot, toDisplayString } from "vue";
|
|
2
|
-
|
|
2
|
+
// src/components/card/CoachmarkCard.vue?vue&type=script&setup=true&lang.ts
|
|
3
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
4
|
var _hoisted_2 = {
|
|
5
5
|
key: 0,
|
|
@@ -15,8 +15,7 @@ var _hoisted_9 = {
|
|
|
15
15
|
key: 0,
|
|
16
16
|
class: "flex w-full items-center gap-3"
|
|
17
17
|
};
|
|
18
|
-
|
|
19
|
-
//#region src/components/card/CoachmarkCard.vue
|
|
18
|
+
// src/components/card/CoachmarkCard.vue
|
|
20
19
|
var CoachmarkCard_default = /* @__PURE__ */ defineComponent({
|
|
21
20
|
__name: "CoachmarkCard",
|
|
22
21
|
props: {
|
|
@@ -53,5 +52,4 @@ var CoachmarkCard_default = /* @__PURE__ */ defineComponent({
|
|
|
53
52
|
};
|
|
54
53
|
}
|
|
55
54
|
});
|
|
56
|
-
//#endregion
|
|
57
55
|
export { CoachmarkCard_default as default };
|
package/dist/chart/Chart.vue.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { t as cn } from "../shared/src-
|
|
1
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
2
2
|
import { createElementBlock, createElementVNode, defineComponent, normalizeClass, onBeforeUnmount, onMounted, openBlock, toRaw, toRef, unref, useTemplateRef, watch } from "vue";
|
|
3
3
|
import { BarController, BarElement, CategoryScale, Chart, Colors, Filler, Legend, LineController, LineElement, LinearScale, PointElement, Tooltip } from "chart.js";
|
|
4
|
-
|
|
4
|
+
// src/components/chart/useChart.ts
|
|
5
5
|
Chart.register(BarController, BarElement, CategoryScale, Colors, Filler, Legend, LinearScale, LineController, LineElement, PointElement, Tooltip);
|
|
6
6
|
function getCssVar(name) {
|
|
7
7
|
return getComputedStyle(document.documentElement).getPropertyValue(name).trim();
|
|
@@ -143,12 +143,10 @@ function useChart(canvasRef, type, data) {
|
|
|
143
143
|
chart = void 0;
|
|
144
144
|
});
|
|
145
145
|
}
|
|
146
|
-
|
|
147
|
-
//#region src/components/chart/Chart.vue?vue&type=script&setup=true&lang.ts
|
|
146
|
+
// src/components/chart/Chart.vue?vue&type=script&setup=true&lang.ts
|
|
148
147
|
var _hoisted_1 = { class: "relative" };
|
|
149
148
|
var _hoisted_2 = ["aria-label"];
|
|
150
|
-
|
|
151
|
-
//#region src/components/chart/Chart.vue
|
|
149
|
+
// src/components/chart/Chart.vue
|
|
152
150
|
var Chart_default = /* @__PURE__ */ defineComponent({
|
|
153
151
|
__name: "Chart",
|
|
154
152
|
props: {
|
|
@@ -176,5 +174,4 @@ var Chart_default = /* @__PURE__ */ defineComponent({
|
|
|
176
174
|
};
|
|
177
175
|
}
|
|
178
176
|
});
|
|
179
|
-
//#endregion
|
|
180
177
|
export { Chart_default as default };
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { t as cn } from "../shared/src-
|
|
1
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
2
2
|
import { createBlock, createElementVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, normalizeClass, normalizeProps, openBlock, renderSlot, unref, withCtx } from "vue";
|
|
3
3
|
import { CheckboxIndicator, CheckboxRoot, useForwardPropsEmits } from "reka-ui";
|
|
4
4
|
import { reactiveOmit } from "@vueuse/core";
|
|
5
|
-
|
|
6
|
-
//#region src/components/checkbox/Checkbox.vue
|
|
5
|
+
// src/components/checkbox/Checkbox.vue
|
|
7
6
|
var Checkbox_default = /* @__PURE__ */ defineComponent({
|
|
8
7
|
__name: "Checkbox",
|
|
9
8
|
props: {
|
|
@@ -45,5 +44,4 @@ var Checkbox_default = /* @__PURE__ */ defineComponent({
|
|
|
45
44
|
};
|
|
46
45
|
}
|
|
47
46
|
});
|
|
48
|
-
//#endregion
|
|
49
47
|
export { Checkbox_default as default };
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { HTMLAttributes } from 'vue';
|
|
2
|
+
import { TagVariants } from '@comfyorg/design-system/tag.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
|
+
label: string;
|
|
11
|
+
shape?: TagVariants["shape"];
|
|
12
|
+
state?: TagVariants["state"];
|
|
13
|
+
removeTooltip?: string;
|
|
14
|
+
interactive?: boolean;
|
|
15
|
+
class?: HTMLAttributes["class"];
|
|
16
|
+
} & {
|
|
17
|
+
removable: true;
|
|
18
|
+
removeLabel: string;
|
|
19
|
+
}) | ({
|
|
20
|
+
label: string;
|
|
21
|
+
shape?: TagVariants["shape"];
|
|
22
|
+
state?: TagVariants["state"];
|
|
23
|
+
removeTooltip?: string;
|
|
24
|
+
interactive?: boolean;
|
|
25
|
+
class?: HTMLAttributes["class"];
|
|
26
|
+
} & {
|
|
27
|
+
removable?: false;
|
|
28
|
+
removeLabel?: string;
|
|
29
|
+
}), {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
30
|
+
remove: (event: Event) => any;
|
|
31
|
+
}, string, import('vue').PublicProps, Readonly<({
|
|
32
|
+
label: string;
|
|
33
|
+
shape?: TagVariants["shape"];
|
|
34
|
+
state?: TagVariants["state"];
|
|
35
|
+
removeTooltip?: string;
|
|
36
|
+
interactive?: boolean;
|
|
37
|
+
class?: HTMLAttributes["class"];
|
|
38
|
+
} & {
|
|
39
|
+
removable: true;
|
|
40
|
+
removeLabel: string;
|
|
41
|
+
}) | ({
|
|
42
|
+
label: string;
|
|
43
|
+
shape?: TagVariants["shape"];
|
|
44
|
+
state?: TagVariants["state"];
|
|
45
|
+
removeTooltip?: string;
|
|
46
|
+
interactive?: boolean;
|
|
47
|
+
class?: HTMLAttributes["class"];
|
|
48
|
+
} & {
|
|
49
|
+
removable?: false;
|
|
50
|
+
removeLabel?: string;
|
|
51
|
+
})> & Readonly<{
|
|
52
|
+
onRemove?: ((event: Event) => any) | undefined;
|
|
53
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
54
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
55
|
+
declare const _default: typeof __VLS_export;
|
|
56
|
+
export default _default;
|
|
57
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
58
|
+
new (): {
|
|
59
|
+
$slots: S;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { t as cn } from "../shared/src-DTwuqov4.js";
|
|
2
|
+
import { t as TagRemoveButton_default } from "../shared/TagRemoveButton-D919R-To.js";
|
|
3
|
+
import { n as tagVariants } from "../shared/tag.variants-BEXRRbPc.js";
|
|
4
|
+
import { createBlock, createCommentVNode, createElementBlock, createElementVNode, defineComponent, normalizeClass, openBlock, renderSlot, toDisplayString, unref, withModifiers } from "vue";
|
|
5
|
+
// src/components/chip/Tag.vue?vue&type=script&setup=true&lang.ts
|
|
6
|
+
var _hoisted_1 = ["role", "tabindex"];
|
|
7
|
+
var _hoisted_2 = { class: "min-w-0 truncate" };
|
|
8
|
+
// src/components/chip/Tag.vue
|
|
9
|
+
var Tag_default = /* @__PURE__ */ defineComponent({
|
|
10
|
+
__name: "Tag",
|
|
11
|
+
props: {
|
|
12
|
+
label: {},
|
|
13
|
+
shape: { default: "square" },
|
|
14
|
+
state: { default: "default" },
|
|
15
|
+
removeTooltip: {},
|
|
16
|
+
interactive: {
|
|
17
|
+
type: Boolean,
|
|
18
|
+
default: false
|
|
19
|
+
},
|
|
20
|
+
class: { type: [
|
|
21
|
+
Boolean,
|
|
22
|
+
null,
|
|
23
|
+
String,
|
|
24
|
+
Object,
|
|
25
|
+
Array
|
|
26
|
+
] },
|
|
27
|
+
removable: { type: Boolean },
|
|
28
|
+
removeLabel: {}
|
|
29
|
+
},
|
|
30
|
+
emits: ["remove"],
|
|
31
|
+
setup(__props, { emit: __emit }) {
|
|
32
|
+
const emit = __emit;
|
|
33
|
+
function handleKeydown(event) {
|
|
34
|
+
if (event.target !== event.currentTarget) return;
|
|
35
|
+
if (!__props.interactive) return;
|
|
36
|
+
if (event.key === "Enter" || event.key === " ") event.preventDefault();
|
|
37
|
+
if (event.key === "Enter" && event.currentTarget instanceof HTMLElement) event.currentTarget.click();
|
|
38
|
+
}
|
|
39
|
+
function handleKeyup(event) {
|
|
40
|
+
if (event.target !== event.currentTarget) return;
|
|
41
|
+
if (!__props.interactive || event.key !== " ") return;
|
|
42
|
+
event.preventDefault();
|
|
43
|
+
if (event.currentTarget instanceof HTMLElement) event.currentTarget.click();
|
|
44
|
+
}
|
|
45
|
+
return (_ctx, _cache) => {
|
|
46
|
+
return openBlock(), createElementBlock("span", {
|
|
47
|
+
role: __props.interactive ? "button" : void 0,
|
|
48
|
+
tabindex: __props.interactive ? 0 : void 0,
|
|
49
|
+
class: normalizeClass(unref(cn)(unref(tagVariants)({
|
|
50
|
+
shape: __props.shape,
|
|
51
|
+
state: __props.state,
|
|
52
|
+
removable: __props.removable,
|
|
53
|
+
interactive: __props.interactive
|
|
54
|
+
}), __props.class)),
|
|
55
|
+
onKeydown: handleKeydown,
|
|
56
|
+
onKeyup: handleKeyup
|
|
57
|
+
}, [
|
|
58
|
+
renderSlot(_ctx.$slots, "icon"),
|
|
59
|
+
createElementVNode("span", _hoisted_2, toDisplayString(__props.label), 1),
|
|
60
|
+
renderSlot(_ctx.$slots, "default"),
|
|
61
|
+
__props.removable ? (openBlock(), createBlock(unref(TagRemoveButton_default), {
|
|
62
|
+
key: 0,
|
|
63
|
+
"aria-label": __props.removeLabel,
|
|
64
|
+
tooltip: __props.removeTooltip,
|
|
65
|
+
onClick: _cache[0] || (_cache[0] = withModifiers(($event) => emit("remove", $event), ["stop"]))
|
|
66
|
+
}, null, 8, ["aria-label", "tooltip"])) : createCommentVNode("", true)
|
|
67
|
+
], 42, _hoisted_1);
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
export { Tag_default as default };
|
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export { TagRemoveButton_default as default };
|
|
1
|
+
export { t as default } from "../shared/TagRemoveButton-D919R-To.js";
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { ColorPickerProps } from '@comfyorg/design-system/lib/color-picker/types';
|
|
2
|
+
type __VLS_Props = ColorPickerProps;
|
|
3
|
+
type __VLS_ModelProps = {
|
|
4
|
+
modelValue?: string;
|
|
5
|
+
};
|
|
6
|
+
type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
|
|
7
|
+
declare var __VLS_14: {};
|
|
8
|
+
type __VLS_Slots = {} & {
|
|
9
|
+
trigger?: (props: typeof __VLS_14) => any;
|
|
10
|
+
};
|
|
11
|
+
declare const __VLS_base: import('vue').DefineComponent<__VLS_PublicProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
|
12
|
+
"update:modelValue": (value: string) => any;
|
|
13
|
+
}, string, import('vue').PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
|
|
14
|
+
"onUpdate:modelValue"?: ((value: string) => any) | undefined;
|
|
15
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
|
|
16
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
17
|
+
declare const _default: typeof __VLS_export;
|
|
18
|
+
export default _default;
|
|
19
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
20
|
+
new (): {
|
|
21
|
+
$slots: S;
|
|
22
|
+
};
|
|
23
|
+
};
|