@maltjoy/mcp-server 0.3.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -2
- package/dist/doc/VJoyAdminBanner/metadata.json +2 -1
- package/dist/doc/VJoyAvailability/metadata.json +2 -1
- package/dist/doc/VJoyAvatar/metadata.json +2 -1
- package/dist/doc/VJoyAvatarsList/metadata.json +2 -1
- package/dist/doc/VJoyBadge/metadata.json +2 -1
- package/dist/doc/VJoyBadgeLevel/metadata.json +2 -1
- package/dist/doc/VJoyBlockSkeleton/metadata.json +2 -1
- package/dist/doc/VJoyBottomSheet/metadata.json +2 -1
- package/dist/doc/VJoyBottomSheetTrigger/metadata.json +1 -0
- package/dist/doc/VJoyButton/metadata.json +2 -1
- package/dist/doc/VJoyButtonCard/JoyButtonCard.types.ts +15 -0
- package/dist/doc/VJoyButtonCard/metadata.json +78 -0
- package/dist/doc/VJoyCheckbox/JoyCheckbox.types.ts +26 -0
- package/dist/doc/VJoyCheckbox/metadata.json +29 -28
- package/dist/doc/VJoyCheckboxCard/JoyCheckboxCard.types.ts +8 -0
- package/dist/doc/VJoyCheckboxCard/metadata.json +221 -0
- package/dist/doc/VJoyCheckboxGroup/metadata.json +338 -0
- package/dist/doc/VJoyCollapse/metadata.json +2 -1
- package/dist/doc/VJoyCollapseItem/metadata.json +2 -1
- package/dist/doc/VJoyCompanyAvatar/metadata.json +1 -0
- package/dist/doc/VJoyDialog/metadata.json +2 -1
- package/dist/doc/VJoyDialogTrigger/metadata.json +1 -0
- package/dist/doc/VJoyDot/metadata.json +2 -1
- package/dist/doc/VJoyDrawer/metadata.json +2 -1
- package/dist/doc/VJoyDrawerTrigger/metadata.json +1 -0
- package/dist/doc/VJoyDropdown/metadata.json +76 -75
- package/dist/doc/VJoyDropdownList/metadata.json +2 -1
- package/dist/doc/VJoyDropzone/metadata.json +2 -1
- package/dist/doc/VJoyFilterBar/metadata.json +2 -1
- package/dist/doc/VJoyFilterBarButton/metadata.json +1 -0
- package/dist/doc/VJoyFloatingActionsBar/metadata.json +70 -0
- package/dist/doc/VJoyFormError/metadata.json +2 -1
- package/dist/doc/VJoyFormFieldSkeleton/metadata.json +2 -1
- package/dist/doc/VJoyFormGroup/metadata.json +2 -1
- package/dist/doc/VJoyFunnel/metadata.json +2 -1
- package/dist/doc/VJoyFunnelFooter/metadata.json +1 -0
- package/dist/doc/VJoyFunnelHeader/metadata.json +1 -0
- package/dist/doc/VJoyHighlight/metadata.json +2 -1
- package/dist/doc/VJoyIcon/metadata.json +2 -1
- package/dist/doc/VJoyIconButton/JoyIconButton.types.ts +6 -0
- package/dist/doc/VJoyIconButton/metadata.json +116 -0
- package/dist/doc/VJoyIndicator/metadata.json +1 -0
- package/dist/doc/VJoyIndicators/metadata.json +2 -1
- package/dist/doc/VJoyInput/metadata.json +12 -11
- package/dist/doc/VJoyInputDigit/metadata.json +2 -1
- package/dist/doc/VJoyInputNumber/metadata.json +286 -0
- package/dist/doc/VJoyInputPassword/metadata.json +33 -32
- package/dist/doc/VJoyLabel/metadata.json +6 -5
- package/dist/doc/VJoyLink/metadata.json +11 -10
- package/dist/doc/VJoyListItem/metadata.json +2 -1
- package/dist/doc/VJoyMenu/metadata.json +2 -1
- package/dist/doc/VJoyMenuItem/metadata.json +2 -1
- package/dist/doc/VJoyMultiCheckbox/metadata.json +193 -13
- package/dist/doc/VJoyPagination/metadata.json +2 -1
- package/dist/doc/VJoyPanel/metadata.json +2 -1
- package/dist/doc/VJoyPanelSection/metadata.json +1 -0
- package/dist/doc/VJoyPasswordRequirement/metadata.json +2 -1
- package/dist/doc/VJoyProductTour/metadata.json +2 -1
- package/dist/doc/VJoyProductTourTrigger/metadata.json +1 -0
- package/dist/doc/VJoyProgressBar/metadata.json +2 -6
- package/dist/doc/VJoyRadio/metadata.json +1 -0
- package/dist/doc/VJoyRadioGroup/metadata.json +4 -3
- package/dist/doc/VJoyRatingStars/metadata.json +2 -1
- package/dist/doc/VJoyScreenLoader/metadata.json +2 -1
- package/dist/doc/VJoySelect/metadata.json +34 -33
- package/dist/doc/VJoySelectableItem/metadata.json +1 -0
- package/dist/doc/VJoySelectableItemGroup/metadata.json +2 -1
- package/dist/doc/VJoySeparator/metadata.json +2 -1
- package/dist/doc/VJoySnackbar/metadata.json +2 -1
- package/dist/doc/VJoySpinner/metadata.json +2 -1
- package/dist/doc/VJoyStep/metadata.json +1 -0
- package/dist/doc/VJoyStepper/metadata.json +2 -1
- package/dist/doc/VJoyTab/metadata.json +1 -0
- package/dist/doc/VJoyTabs/metadata.json +2 -1
- package/dist/doc/VJoyTag/metadata.json +6 -5
- package/dist/doc/VJoyTagsInput/metadata.json +2 -1
- package/dist/doc/VJoyTagsList/metadata.json +19 -18
- package/dist/doc/VJoyTemplate/metadata.json +2 -1
- package/dist/doc/VJoyText/metadata.json +2 -1
- package/dist/doc/VJoyTextarea/metadata.json +25 -24
- package/dist/doc/VJoyTitleBrand/metadata.json +2 -1
- package/dist/doc/VJoyToggle/metadata.json +15 -14
- package/dist/doc/VJoyTooltip/metadata.json +2 -1
- package/dist/doc/VJoyUserCard/metadata.json +2 -1
- package/dist/doc/VJoyWalkthrough/metadata.json +2 -1
- package/dist/doc/VJoyWalkthroughTrigger/metadata.json +1 -0
- package/dist/doc/VJoyWrapper/metadata.json +20 -19
- package/dist/doc/css-classes.json +2 -0
- package/dist/doc/design-tokens.json +30 -30
- package/dist/doc/index.json +206 -78
- package/dist/parser.d.ts +3 -0
- package/dist/parser.d.ts.map +1 -1
- package/dist/parser.js +3 -0
- package/dist/parser.js.map +1 -1
- package/dist/tools/get-component-info.js +1 -1
- package/dist/tools/get-component-info.js.map +1 -1
- package/dist/tools/list-components.d.ts +1 -4
- package/dist/tools/list-components.d.ts.map +1 -1
- package/dist/tools/list-components.js +22 -5
- package/dist/tools/list-components.js.map +1 -1
- package/package.json +3 -2
- package/dist/doc/VJoyTemplateShape/metadata.json +0 -10
package/dist/doc/index.json
CHANGED
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
{
|
|
2
|
-
"generated": "2026-
|
|
3
|
-
"version": "0.
|
|
2
|
+
"generated": "2026-04-16T12:48:46.193Z",
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"statistics": {
|
|
5
|
-
"totalComponents":
|
|
6
|
-
"totalProps":
|
|
7
|
-
"totalEvents":
|
|
8
|
-
"totalSlots":
|
|
9
|
-
"componentsWithVModel":
|
|
5
|
+
"totalComponents": 83,
|
|
6
|
+
"totalProps": 484,
|
|
7
|
+
"totalEvents": 67,
|
|
8
|
+
"totalSlots": 148,
|
|
9
|
+
"componentsWithVModel": 23,
|
|
10
10
|
"componentsWithErrors": 0,
|
|
11
11
|
"componentsWithPartialErrors": 1
|
|
12
12
|
},
|
|
13
13
|
"components": [
|
|
14
14
|
{
|
|
15
15
|
"name": "VJoyAdminBanner",
|
|
16
|
-
"description": "The AdminBanner component displays a visual indicator when users are viewing the application in admin mode
|
|
16
|
+
"description": "The AdminBanner component displays a visual indicator when users are viewing the application in admin mode.\nIt features a distinctive banner with an eye icon and customizable label, typically positioned at the top of the interface to clearly communicate the current viewing context to administrators.",
|
|
17
|
+
"category": "Admin",
|
|
17
18
|
"path": "VJoyAdminBanner/metadata.json",
|
|
18
19
|
"propsCount": 1,
|
|
19
20
|
"eventsCount": 0,
|
|
@@ -22,7 +23,8 @@
|
|
|
22
23
|
},
|
|
23
24
|
{
|
|
24
25
|
"name": "VJoyAvailability",
|
|
25
|
-
"description": "A status indicator component for displaying user availability information
|
|
26
|
+
"description": "A status indicator component for displaying user availability information.\nFeatures colored dots and optional labels to communicate different availability states such as available, not available, available soon, or partially available.\nCan be displayed as a simple dot indicator or with descriptive text labels that handle long content gracefully.",
|
|
27
|
+
"category": "View",
|
|
26
28
|
"path": "VJoyAvailability/metadata.json",
|
|
27
29
|
"propsCount": 3,
|
|
28
30
|
"eventsCount": 0,
|
|
@@ -31,7 +33,8 @@
|
|
|
31
33
|
},
|
|
32
34
|
{
|
|
33
35
|
"name": "VJoyAvatar",
|
|
34
|
-
"description": "A versatile avatar component for displaying user profile pictures, initials, or placeholders depending on given properties
|
|
36
|
+
"description": "A versatile avatar component for displaying user profile pictures, initials, or placeholders depending on given properties.\nSupports multiple sizes, fallback to initials when no photo is provided, anonymous states with icons, numeric indicators for \"more users\" displays, and special variants like strategy profiles and company avatars.\nCan be styled as clickable links and includes empty states for various use cases.",
|
|
37
|
+
"category": "View",
|
|
35
38
|
"path": "VJoyAvatar/metadata.json",
|
|
36
39
|
"propsCount": 10,
|
|
37
40
|
"eventsCount": 1,
|
|
@@ -40,7 +43,8 @@
|
|
|
40
43
|
},
|
|
41
44
|
{
|
|
42
45
|
"name": "VJoyAvatarsList",
|
|
43
|
-
"description": "A container component for displaying multiple avatars in a styled group layout
|
|
46
|
+
"description": "A container component for displaying multiple avatars in a styled group layout.\nProvides consistent spacing and alignment for avatar collections, with an optional compressed mode for more compact displays.\nDesigned to work seamlessly with VJoyAvatar components.",
|
|
47
|
+
"category": "View",
|
|
44
48
|
"path": "VJoyAvatarsList/metadata.json",
|
|
45
49
|
"propsCount": 1,
|
|
46
50
|
"eventsCount": 0,
|
|
@@ -49,7 +53,8 @@
|
|
|
49
53
|
},
|
|
50
54
|
{
|
|
51
55
|
"name": "VJoyBadge",
|
|
52
|
-
"description": "A versatile badge component for labeling, categorizing, and highlighting content with colored indicators
|
|
56
|
+
"description": "A versatile badge component for labeling, categorizing, and highlighting content with colored indicators.\nSupports various color variants for different semantic meanings, optional bulletpoint dots for visual emphasis,\nand can display either text labels or numeric values. Perfect for status indicators, tags, and notification counters.",
|
|
57
|
+
"category": "View",
|
|
53
58
|
"path": "VJoyBadge/metadata.json",
|
|
54
59
|
"propsCount": 3,
|
|
55
60
|
"eventsCount": 0,
|
|
@@ -58,7 +63,8 @@
|
|
|
58
63
|
},
|
|
59
64
|
{
|
|
60
65
|
"name": "VJoyBadgeLevel",
|
|
61
|
-
"description": "A specialized badge component for displaying user achievement levels and status indicators
|
|
66
|
+
"description": "A specialized badge component for displaying user achievement levels and status indicators.\nFeatures custom SVG icons for different categories including SuperMalter levels (with crown icons),\nHigh Potential badges (with diamond icons), verified status, and special designations like Malt Linker.\nCan display icons only or with accompanying text labels for different user recognition levels.",
|
|
67
|
+
"category": "View",
|
|
62
68
|
"path": "VJoyBadgeLevel/metadata.json",
|
|
63
69
|
"propsCount": 3,
|
|
64
70
|
"eventsCount": 0,
|
|
@@ -67,7 +73,8 @@
|
|
|
67
73
|
},
|
|
68
74
|
{
|
|
69
75
|
"name": "VJoyBlockSkeleton",
|
|
70
|
-
"description": "A highly configurable skeleton loading component for creating placeholder blocks during content loading
|
|
76
|
+
"description": "A highly configurable skeleton loading component for creating placeholder blocks during content loading.\nFeatures customizable dimensions, circle variant for avatars, and smooth shimmer animations to improve perceived performance.\nMore flexible than VJoyFormFieldSkeleton and integrates seamlessly with VJoyWrapper for responsive layouts.",
|
|
77
|
+
"category": "Skeletons",
|
|
71
78
|
"path": "VJoyBlockSkeleton/metadata.json",
|
|
72
79
|
"propsCount": 3,
|
|
73
80
|
"eventsCount": 0,
|
|
@@ -76,7 +83,8 @@
|
|
|
76
83
|
},
|
|
77
84
|
{
|
|
78
85
|
"name": "VJoyBottomSheet",
|
|
79
|
-
"description": "",
|
|
86
|
+
"description": "A mobile-optimized bottom sheet component that slides up from the bottom of the screen.\nFeatures drag-to-dismiss functionality, customizable content slots, and teleportation support.\n\n**IMPORTANT** : for documentation purpose, you can't hide the bottom sheets here.\n\nBy default, the component is teleported to the body root. You can override this by passing a teleport value.\n\nHow to use:\n\n```html\n<template>\n <VJoyBottomSheet ref=\"bottomSheet\">\n <template #bottom-sheet-content>\n The content\n </template>\n </VJoyBottomSheet>\n</template>\n\n<script lang=\"ts\" setup>\nimport {ref} from 'vue';\nimport {VJoyBottomSheet} from '@maltjoy/core-vue';\n\n// declare the VJoyBottomSheet ref using the component type definition\nconst bottomSheet = ref<InstanceType<typeof VJoyBottomSheet> | null>(null);\n\n// use this function when you need to (onMounted, when clicking on any trigger...)\nfunction openBottomSheet() {\n bottomSheet.value?.show();\n}\n\n</script>\n```\n\n> You can use the `VJoyBottomSheetTrigger` subcomponent if it's easier for you.",
|
|
87
|
+
"category": "Overlays",
|
|
80
88
|
"path": "VJoyBottomSheet/metadata.json",
|
|
81
89
|
"propsCount": 5,
|
|
82
90
|
"eventsCount": 1,
|
|
@@ -86,6 +94,7 @@
|
|
|
86
94
|
{
|
|
87
95
|
"name": "VJoyBottomSheetTrigger",
|
|
88
96
|
"description": "",
|
|
97
|
+
"category": "Overlays",
|
|
89
98
|
"path": "VJoyBottomSheetTrigger/metadata.json",
|
|
90
99
|
"propsCount": 1,
|
|
91
100
|
"eventsCount": 1,
|
|
@@ -94,25 +103,58 @@
|
|
|
94
103
|
},
|
|
95
104
|
{
|
|
96
105
|
"name": "VJoyButton",
|
|
97
|
-
"description": "A button component supporting multiple variants, sizes, and states
|
|
106
|
+
"description": "A button component supporting multiple variants, sizes, and states.\nFeatures icon support, loading states and can function as either a button or link element.\nIncludes ripple effects and comprehensive styling options for different use cases from primary actions to subtle ghost buttons.\n\n**Tips:** set a \"href\" attribute to make the button a link.",
|
|
107
|
+
"category": "Buttons",
|
|
98
108
|
"path": "VJoyButton/metadata.json",
|
|
99
109
|
"propsCount": 9,
|
|
100
110
|
"eventsCount": 0,
|
|
101
111
|
"slotsCount": 1,
|
|
102
112
|
"hasError": false
|
|
103
113
|
},
|
|
114
|
+
{
|
|
115
|
+
"name": "VJoyButtonCard",
|
|
116
|
+
"description": "This component is a CTA or a link used to render complex interactive buttons.\n\nIf your goal is to only use a short string, use `VJoyButton` instead.\n\nPlease note that you have to deal with the content and its style by yourself.",
|
|
117
|
+
"category": "Buttons",
|
|
118
|
+
"path": "VJoyButtonCard/metadata.json",
|
|
119
|
+
"propsCount": 4,
|
|
120
|
+
"eventsCount": 0,
|
|
121
|
+
"slotsCount": 1,
|
|
122
|
+
"hasError": false
|
|
123
|
+
},
|
|
104
124
|
{
|
|
105
125
|
"name": "VJoyCheckbox",
|
|
106
|
-
"description": "A form checkbox component with support for standard, indeterminate, and disabled states
|
|
126
|
+
"description": "A form checkbox component with support for standard, indeterminate, and disabled states.\nFeatures accessible labeling, focus indicators, form integration with validation feedback, and additional content slots.\nSupports both single selections scenarios with proper event handling and state management.",
|
|
127
|
+
"category": "Forms",
|
|
107
128
|
"path": "VJoyCheckbox/metadata.json",
|
|
108
129
|
"propsCount": 10,
|
|
109
130
|
"eventsCount": 3,
|
|
110
131
|
"slotsCount": 2,
|
|
111
132
|
"hasError": false
|
|
112
133
|
},
|
|
134
|
+
{
|
|
135
|
+
"name": "VJoyCheckboxCard",
|
|
136
|
+
"description": "",
|
|
137
|
+
"category": "Forms",
|
|
138
|
+
"path": "VJoyCheckboxCard/metadata.json",
|
|
139
|
+
"propsCount": 11,
|
|
140
|
+
"eventsCount": 3,
|
|
141
|
+
"slotsCount": 2,
|
|
142
|
+
"hasError": false
|
|
143
|
+
},
|
|
144
|
+
{
|
|
145
|
+
"name": "VJoyCheckboxGroup",
|
|
146
|
+
"description": "A multi-selection checkbox group component for handling arrays of selected values.\nSimplifies multi-selection scenarios by managing checkbox states and array manipulation automatically.\nFeatures integrated labeling, fieldset structure for accessibility, and customizable checkbox content through slots.\nPerfect for filtering interfaces and bulk selection operations.",
|
|
147
|
+
"category": "Forms",
|
|
148
|
+
"path": "VJoyCheckboxGroup/metadata.json",
|
|
149
|
+
"propsCount": 9,
|
|
150
|
+
"eventsCount": 1,
|
|
151
|
+
"slotsCount": 2,
|
|
152
|
+
"hasError": false
|
|
153
|
+
},
|
|
113
154
|
{
|
|
114
155
|
"name": "VJoyCollapse",
|
|
115
|
-
"description": "A container component for creating accordion and collapsible content sections
|
|
156
|
+
"description": "A container component for creating accordion and collapsible content sections.\nManages multiple VJoyCollapseItem components with support for accordion mode (single open item)\nor standard collapse behavior (multiple open items). Features v-model integration for\nprogrammatic control and various visual modes for different design requirements.",
|
|
157
|
+
"category": "Buttons",
|
|
116
158
|
"path": "VJoyCollapse/metadata.json",
|
|
117
159
|
"propsCount": 3,
|
|
118
160
|
"eventsCount": 1,
|
|
@@ -121,7 +163,8 @@
|
|
|
121
163
|
},
|
|
122
164
|
{
|
|
123
165
|
"name": "VJoyCollapseItem",
|
|
124
|
-
"description": "An individual collapsible content item that can expand and collapse to show/hide content
|
|
166
|
+
"description": "An individual collapsible content item that can expand and collapse to show/hide content.\nFeatures header and subheader support, optional summary icons, preview content when collapsed, and custom header actions.\nCan be used within VJoyCollapse for grouped accordion behavior.",
|
|
167
|
+
"category": "Buttons",
|
|
125
168
|
"path": "VJoyCollapseItem/metadata.json",
|
|
126
169
|
"propsCount": 6,
|
|
127
170
|
"eventsCount": 2,
|
|
@@ -131,6 +174,7 @@
|
|
|
131
174
|
{
|
|
132
175
|
"name": "VJoyCompanyAvatar",
|
|
133
176
|
"description": "DEPRECATED. Use VJoyAvatar component instead.",
|
|
177
|
+
"category": "View",
|
|
134
178
|
"path": "VJoyCompanyAvatar/metadata.json",
|
|
135
179
|
"propsCount": 5,
|
|
136
180
|
"eventsCount": 0,
|
|
@@ -139,7 +183,8 @@
|
|
|
139
183
|
},
|
|
140
184
|
{
|
|
141
185
|
"name": "VJoyDialog",
|
|
142
|
-
"description": "VJoyDialog component exposes two methods: `show` and `hide`. **Both are asynchronous
|
|
186
|
+
"description": "VJoyDialog component exposes two methods: `show` and `hide`. **Both are asynchronous**.\n\nYou can use the `VJoyDialogTrigger` component as well if it's easier.\n\n\n```html\n<template>\n <VJoyDialog ref=\"dialog\">...</VJoyDialog>\n</template>\n\n<script lang=\"ts\" setup>\nimport {ref} from 'vue';\nimport {VJoyDialog} from '@maltjoy/core-vue';\n\nconst dialog = ref<InstanceType<typeof VJoyDialog>>();\n\nasync function showDialog() {\n await dialog.value?.show();\n}\n\n// execute the publicly exposed hide function.\nasync function hideDialog() {\n // you can pass an object as parameter: {fireHideEvent: false} if you don't want to emit dialog:hide event.\n await dialog.value?.hide();\n}\n</script>\n```\n\n\n> FYI, the \"teleport\" property is applied on these docs only for preview quality purpose.\n> By default, dialogs are rendered at the end of body tag.",
|
|
187
|
+
"category": "Overlays",
|
|
143
188
|
"path": "VJoyDialog/metadata.json",
|
|
144
189
|
"propsCount": 16,
|
|
145
190
|
"eventsCount": 6,
|
|
@@ -149,6 +194,7 @@
|
|
|
149
194
|
{
|
|
150
195
|
"name": "VJoyDialogTrigger",
|
|
151
196
|
"description": "",
|
|
197
|
+
"category": "Overlays",
|
|
152
198
|
"path": "VJoyDialogTrigger/metadata.json",
|
|
153
199
|
"propsCount": 1,
|
|
154
200
|
"eventsCount": 1,
|
|
@@ -157,7 +203,8 @@
|
|
|
157
203
|
},
|
|
158
204
|
{
|
|
159
205
|
"name": "VJoyDot",
|
|
160
|
-
"description": "A simple colored dot indicator component for status display and notifications
|
|
206
|
+
"description": "A simple colored dot indicator component for status display and notifications.\nCan display as a plain colored dot or include numeric values for notification counters.\nFeatures automatic formatting for large numbers (99+) and supports multiple color variants\nfor different semantic meanings and visual emphasis.",
|
|
207
|
+
"category": "View",
|
|
161
208
|
"path": "VJoyDot/metadata.json",
|
|
162
209
|
"propsCount": 2,
|
|
163
210
|
"eventsCount": 0,
|
|
@@ -166,7 +213,8 @@
|
|
|
166
213
|
},
|
|
167
214
|
{
|
|
168
215
|
"name": "VJoyDrawer",
|
|
169
|
-
"description": "VJoyDrawer component exposes two methods: `show` and `hide`. **Both are asynchronous
|
|
216
|
+
"description": "VJoyDrawer component exposes two methods: `show` and `hide`. **Both are asynchronous**.\n\nYou can use the `VJoyDrawerTrigger` component as well if it's easier.\n\n\n```html\n<template>\n <VJoyDrawer ref=\"dialog\">...</VJoyDrawer>\n</template>\n\n<script lang=\"ts\" setup>\nimport {ref} from 'vue';\nimport {VJoyDrawer} from '@maltjoy/core-vue';\n\nconst drawer = ref<InstanceType<typeof VJoyDrawer> | null>(null);\n\nasync function showDrawer() {\n await drawer.value?.show();\n}\n\n// execute the publicly exposed hide function.\nasync function hideDrawer() {\n // you can pass an object as parameter: {fireHideEvent: false} if you don't want to emit drawer:hide event.\n await drawer.value?.hide();\n}\n</script>\n```\n\nIf you need confirmation from the user or wait for an API call to close the drawer you can use the `on-before-hide` function property.\nThis function can be either synchronous or asynchronous and should return a boolean.\nReturning `true` closes the drawer and returning `false` cancels the closing.",
|
|
217
|
+
"category": "Overlays",
|
|
170
218
|
"path": "VJoyDrawer/metadata.json",
|
|
171
219
|
"propsCount": 12,
|
|
172
220
|
"eventsCount": 6,
|
|
@@ -176,6 +224,7 @@
|
|
|
176
224
|
{
|
|
177
225
|
"name": "VJoyDrawerTrigger",
|
|
178
226
|
"description": "",
|
|
227
|
+
"category": "Overlays",
|
|
179
228
|
"path": "VJoyDrawerTrigger/metadata.json",
|
|
180
229
|
"propsCount": 1,
|
|
181
230
|
"eventsCount": 1,
|
|
@@ -184,7 +233,8 @@
|
|
|
184
233
|
},
|
|
185
234
|
{
|
|
186
235
|
"name": "VJoyDropdown",
|
|
187
|
-
"description": "A flexible dropdown component for creating contextual menus and option lists
|
|
236
|
+
"description": "A flexible dropdown component for creating contextual menus and option lists.\nFeatures customizable trigger buttons, positioning options (left/right/up/down), and support for\nboth predefined option lists and completely custom content. Includes proper accessibility support\nand click-outside behavior for seamless user interaction.\n\n**ACCESSIBILITY FOCUS:**\n\nWhen using this component, to properly apply useful informations for screen readers, you will need to set an **aria-label** to your dropdown trigger if it has no default text.",
|
|
237
|
+
"category": "Forms",
|
|
188
238
|
"path": "VJoyDropdown/metadata.json",
|
|
189
239
|
"propsCount": 13,
|
|
190
240
|
"eventsCount": 4,
|
|
@@ -193,7 +243,8 @@
|
|
|
193
243
|
},
|
|
194
244
|
{
|
|
195
245
|
"name": "VJoyDropdownList",
|
|
196
|
-
"description": "The core list component used within dropdown interfaces for displaying selectable options
|
|
246
|
+
"description": "The core list component used within dropdown interfaces for displaying selectable options.\nFeatures customizable sizing, header/footer slots, keyboard navigation, and accessibility compliance.\nSupports both predefined option arrays and custom content through slots. Can be used standalone\nor as part of the VJoyDropdown component for complete dropdown functionality.",
|
|
247
|
+
"category": "Forms",
|
|
197
248
|
"path": "VJoyDropdownList/metadata.json",
|
|
198
249
|
"propsCount": 9,
|
|
199
250
|
"eventsCount": 3,
|
|
@@ -202,7 +253,8 @@
|
|
|
202
253
|
},
|
|
203
254
|
{
|
|
204
255
|
"name": "VJoyDropzone",
|
|
205
|
-
"description": "A file upload component with drag-and-drop functionality for handling file selection and management
|
|
256
|
+
"description": "A file upload component with drag-and-drop functionality for handling file selection and management.\nSupports single or multiple file uploads, file validation and customizable file displays.\nFeatures visual feedback for drag states, error handling, and flexible content slots for file information and actions.\n\nThe dropzone required as `v-model` an array containing objects with at least the \"name\" property.",
|
|
257
|
+
"category": "Forms",
|
|
206
258
|
"path": "VJoyDropzone/metadata.json",
|
|
207
259
|
"propsCount": 11,
|
|
208
260
|
"eventsCount": 0,
|
|
@@ -211,7 +263,8 @@
|
|
|
211
263
|
},
|
|
212
264
|
{
|
|
213
265
|
"name": "VJoyFilterBar",
|
|
214
|
-
"description": "A container component for creating grouped filter interfaces with connected filter buttons
|
|
266
|
+
"description": "A container component for creating grouped filter interfaces with connected filter buttons.\nAutomatically applies appropriate border radius styling to create seamless filter groups\nthat work perfectly with VJoyFilterBarButton components. Includes accessibility support\nand integrates well with dropdowns for complex filtering scenarios.",
|
|
267
|
+
"category": "Forms",
|
|
215
268
|
"path": "VJoyFilterBar/metadata.json",
|
|
216
269
|
"propsCount": 1,
|
|
217
270
|
"eventsCount": 0,
|
|
@@ -221,15 +274,27 @@
|
|
|
221
274
|
{
|
|
222
275
|
"name": "VJoyFilterBarButton",
|
|
223
276
|
"description": "",
|
|
277
|
+
"category": "Forms",
|
|
224
278
|
"path": "VJoyFilterBarButton/metadata.json",
|
|
225
279
|
"propsCount": 3,
|
|
226
280
|
"eventsCount": 1,
|
|
227
281
|
"slotsCount": 1,
|
|
228
282
|
"hasError": false
|
|
229
283
|
},
|
|
284
|
+
{
|
|
285
|
+
"name": "VJoyFloatingActionsBar",
|
|
286
|
+
"description": "A persistent action container displayed at the bottom of the viewport.\nUseful to surface bulk actions when items are selected, or to keep\nprimary actions visible while users scroll through long pages.",
|
|
287
|
+
"category": "Overlays",
|
|
288
|
+
"path": "VJoyFloatingActionsBar/metadata.json",
|
|
289
|
+
"propsCount": 3,
|
|
290
|
+
"eventsCount": 0,
|
|
291
|
+
"slotsCount": 2,
|
|
292
|
+
"hasError": false
|
|
293
|
+
},
|
|
230
294
|
{
|
|
231
295
|
"name": "VJoyFormError",
|
|
232
|
-
"description": "A form error display component for showing error messages
|
|
296
|
+
"description": "A form error display component for showing error messages.\nFeatures a warning icon, support for single error messages or multiple error lists, and visibility control for conditional error display.\nIncludes proper accessibility attributes with alert role for screen reader announcement of form errors.",
|
|
297
|
+
"category": "Forms",
|
|
233
298
|
"path": "VJoyFormError/metadata.json",
|
|
234
299
|
"propsCount": 4,
|
|
235
300
|
"eventsCount": 0,
|
|
@@ -238,7 +303,8 @@
|
|
|
238
303
|
},
|
|
239
304
|
{
|
|
240
305
|
"name": "VJoyFormFieldSkeleton",
|
|
241
|
-
"description": "A specialized skeleton loading component designed specifically for form field placeholders
|
|
306
|
+
"description": "A specialized skeleton loading component designed specifically for form field placeholders.\nFeatures form-appropriate sizing, flexible layout support with VJoyWrapper integration,\nand consistent styling that matches form field dimensions. Perfect for creating skeleton\nforms and improving perceived loading performance in form-heavy interfaces.\n\nSkeleton is 100% width by default. If you want to have a better control on this, use the \"width\" property.",
|
|
307
|
+
"category": "Skeletons",
|
|
242
308
|
"path": "VJoyFormFieldSkeleton/metadata.json",
|
|
243
309
|
"propsCount": 3,
|
|
244
310
|
"eventsCount": 0,
|
|
@@ -247,7 +313,8 @@
|
|
|
247
313
|
},
|
|
248
314
|
{
|
|
249
315
|
"name": "VJoyFormGroup",
|
|
250
|
-
"description": "A form group component to group form elements together
|
|
316
|
+
"description": "A form group component to group form elements together.\n\nIt is used to group a label, any form component, and form errors together.\n\nIt is also used to handle the gap between the form elements, and **it resets the existing margins** within form elements!",
|
|
317
|
+
"category": "Functional",
|
|
251
318
|
"path": "VJoyFormGroup/metadata.json",
|
|
252
319
|
"propsCount": 0,
|
|
253
320
|
"eventsCount": 0,
|
|
@@ -256,7 +323,8 @@
|
|
|
256
323
|
},
|
|
257
324
|
{
|
|
258
325
|
"name": "VJoyFunnel",
|
|
259
|
-
"description": "A full-page layout component designed for multi-step workflows and guided user flows
|
|
326
|
+
"description": "A full-page layout component designed for multi-step workflows and guided user flows.\nFeatures decorative background shapes, header and footer areas, and seamless integration\nwith stepper components. Optimized for mobile experiences and onboarding funnels\nwith different visual profiles and customizable content areas.",
|
|
327
|
+
"category": "Layout",
|
|
260
328
|
"path": "VJoyFunnel/metadata.json",
|
|
261
329
|
"propsCount": 3,
|
|
262
330
|
"eventsCount": 0,
|
|
@@ -266,6 +334,7 @@
|
|
|
266
334
|
{
|
|
267
335
|
"name": "VJoyFunnelFooter",
|
|
268
336
|
"description": "",
|
|
337
|
+
"category": "Layout",
|
|
269
338
|
"path": "VJoyFunnelFooter/metadata.json",
|
|
270
339
|
"propsCount": 0,
|
|
271
340
|
"eventsCount": 0,
|
|
@@ -275,6 +344,7 @@
|
|
|
275
344
|
{
|
|
276
345
|
"name": "VJoyFunnelHeader",
|
|
277
346
|
"description": "",
|
|
347
|
+
"category": "Layout",
|
|
278
348
|
"path": "VJoyFunnelHeader/metadata.json",
|
|
279
349
|
"propsCount": 0,
|
|
280
350
|
"eventsCount": 0,
|
|
@@ -283,7 +353,8 @@
|
|
|
283
353
|
},
|
|
284
354
|
{
|
|
285
355
|
"name": "VJoyHighlight",
|
|
286
|
-
"description": "A content highlighting component for displaying important information with visual emphasis
|
|
356
|
+
"description": "A content highlighting component for displaying important information with visual emphasis.\nFeatures different severity levels (success, info, warning, error, neutral), optional accent borders, customizable icons, and title support.\nIncludes an experimental AI variant for AI-related content with special styling and decorative elements.",
|
|
357
|
+
"category": "View",
|
|
287
358
|
"path": "VJoyHighlight/metadata.json",
|
|
288
359
|
"propsCount": 5,
|
|
289
360
|
"eventsCount": 0,
|
|
@@ -292,16 +363,28 @@
|
|
|
292
363
|
},
|
|
293
364
|
{
|
|
294
365
|
"name": "VJoyIcon",
|
|
295
|
-
"description": "An icon component supporting the complete Joy icon library with customizable sizing and theming
|
|
366
|
+
"description": "An icon component supporting the complete Joy icon library with customizable sizing and theming.\nFeatures accessibility support with aria labels, multiple color variants and different size options.\nProvides consistent icon rendering across the design system with proper semantic markup and keyboard navigation capabilities.",
|
|
367
|
+
"category": "Icons",
|
|
296
368
|
"path": "VJoyIcon/metadata.json",
|
|
297
369
|
"propsCount": 7,
|
|
298
370
|
"eventsCount": 0,
|
|
299
371
|
"slotsCount": 0,
|
|
300
372
|
"hasError": false
|
|
301
373
|
},
|
|
374
|
+
{
|
|
375
|
+
"name": "VJoyIconButton",
|
|
376
|
+
"description": "A dedicated icon-button component built on top of `VJoyButton`.\nUse this component instead of the deprecated `circle` prop from `VJoyButton`.",
|
|
377
|
+
"category": "Buttons",
|
|
378
|
+
"path": "VJoyIconButton/metadata.json",
|
|
379
|
+
"propsCount": 6,
|
|
380
|
+
"eventsCount": 0,
|
|
381
|
+
"slotsCount": 1,
|
|
382
|
+
"hasError": false
|
|
383
|
+
},
|
|
302
384
|
{
|
|
303
385
|
"name": "VJoyIndicator",
|
|
304
386
|
"description": "",
|
|
387
|
+
"category": "Buttons",
|
|
305
388
|
"path": "VJoyIndicator/metadata.json",
|
|
306
389
|
"propsCount": 4,
|
|
307
390
|
"eventsCount": 0,
|
|
@@ -310,7 +393,8 @@
|
|
|
310
393
|
},
|
|
311
394
|
{
|
|
312
395
|
"name": "VJoyIndicators",
|
|
313
|
-
"description": "A navigation component for creating page or content indicators, commonly used in carousels and dialogs
|
|
396
|
+
"description": "A navigation component for creating page or content indicators, commonly used in carousels and dialogs.\nManages a collection of VJoyIndicator components with selection state and v-model support.\nFeatures visual variants and automatic indicator management for seamless navigation experiences with proper accessibility and keyboard interaction support.",
|
|
397
|
+
"category": "Buttons",
|
|
314
398
|
"path": "VJoyIndicators/metadata.json",
|
|
315
399
|
"propsCount": 2,
|
|
316
400
|
"eventsCount": 1,
|
|
@@ -319,7 +403,8 @@
|
|
|
319
403
|
},
|
|
320
404
|
{
|
|
321
405
|
"name": "VJoyInput",
|
|
322
|
-
"description": "A comprehensive form input component with extensive customization and validation features
|
|
406
|
+
"description": "A comprehensive form input component with extensive customization and validation features.\nSupports multiple input types, icon support, clearable functionality, unit displays, and comprehensive validation states.\nFeatures auto-focus capabilities, accessibility compliance, and seamless integration with form validation systems.",
|
|
407
|
+
"category": "Forms",
|
|
323
408
|
"path": "VJoyInput/metadata.json",
|
|
324
409
|
"propsCount": 19,
|
|
325
410
|
"eventsCount": 1,
|
|
@@ -328,16 +413,28 @@
|
|
|
328
413
|
},
|
|
329
414
|
{
|
|
330
415
|
"name": "VJoyInputDigit",
|
|
331
|
-
"description": "One-time code input with auto-navigation between slots
|
|
416
|
+
"description": "One-time code input with auto-navigation between slots.\nSupports numeric filtering with disabled/invalid states.",
|
|
417
|
+
"category": "Forms",
|
|
332
418
|
"path": "VJoyInputDigit/metadata.json",
|
|
333
419
|
"propsCount": 6,
|
|
334
420
|
"eventsCount": 4,
|
|
335
421
|
"slotsCount": 0,
|
|
336
422
|
"hasError": false
|
|
337
423
|
},
|
|
424
|
+
{
|
|
425
|
+
"name": "VJoyInputNumber",
|
|
426
|
+
"description": "Number input built on top of VJoyInput. Displays the unit label on the right of the input.",
|
|
427
|
+
"category": "Forms",
|
|
428
|
+
"path": "VJoyInputNumber/metadata.json",
|
|
429
|
+
"propsCount": 17,
|
|
430
|
+
"eventsCount": 1,
|
|
431
|
+
"slotsCount": 0,
|
|
432
|
+
"hasError": false
|
|
433
|
+
},
|
|
338
434
|
{
|
|
339
435
|
"name": "VJoyInputPassword",
|
|
340
436
|
"description": "Password input built on top of VJoyInput with built-in visibility toggle.",
|
|
437
|
+
"category": "Forms",
|
|
341
438
|
"path": "VJoyInputPassword/metadata.json",
|
|
342
439
|
"propsCount": 15,
|
|
343
440
|
"eventsCount": 1,
|
|
@@ -346,7 +443,8 @@
|
|
|
346
443
|
},
|
|
347
444
|
{
|
|
348
445
|
"name": "VJoyLabel",
|
|
349
|
-
"description": "A flexible form label component with enhanced functionality for complex form layouts
|
|
446
|
+
"description": "A flexible form label component with enhanced functionality for complex form layouts.\nFeatures size variants, required/optional indicators, tooltip support, and legend text capabilities.\nSupports both label and legend tag rendering for different form contexts with integrated\naccessibility features and consistent styling across the design system.\n\nAll native attributes are not declared as Vue component properties. But the actual label tag inherits from every attribute you pass.",
|
|
447
|
+
"category": "Forms",
|
|
350
448
|
"path": "VJoyLabel/metadata.json",
|
|
351
449
|
"propsCount": 5,
|
|
352
450
|
"eventsCount": 0,
|
|
@@ -355,7 +453,8 @@
|
|
|
355
453
|
},
|
|
356
454
|
{
|
|
357
455
|
"name": "VJoyLink",
|
|
358
|
-
"description": "Simple link component that should adapt its style depending on the context
|
|
456
|
+
"description": "Simple link component that should adapt its style depending on the context.\nCould be a button if **href** prop is undefined (add a **type** prop if needed).",
|
|
457
|
+
"category": "Buttons",
|
|
359
458
|
"path": "VJoyLink/metadata.json",
|
|
360
459
|
"propsCount": 5,
|
|
361
460
|
"eventsCount": 0,
|
|
@@ -364,7 +463,8 @@
|
|
|
364
463
|
},
|
|
365
464
|
{
|
|
366
465
|
"name": "VJoyListItem",
|
|
367
|
-
"description": "A structured list item component for creating consistent, interactive list entries
|
|
466
|
+
"description": "A structured list item component for creating consistent, interactive list entries.\nFeatures left and right content areas, optional icon support, hover states, and click handling.\nPerfect for data lists, navigation items, and content cards where consistent spacing\nand interactive feedback are essential for user experience.",
|
|
467
|
+
"category": "View",
|
|
368
468
|
"path": "VJoyListItem/metadata.json",
|
|
369
469
|
"propsCount": 1,
|
|
370
470
|
"eventsCount": 1,
|
|
@@ -373,7 +473,8 @@
|
|
|
373
473
|
},
|
|
374
474
|
{
|
|
375
475
|
"name": "VJoyMenu",
|
|
376
|
-
"description": "A navigation menu component for creating accessible menu lists with keyboard navigation support
|
|
476
|
+
"description": "A navigation menu component for creating accessible menu lists with keyboard navigation support.\nWorks with VJoyMenuItem components to build complex navigation structures with icons, status indicators,\nand various link types. Features proper ARIA attributes, selection states, and integration with\nrouting systems for seamless navigation experiences.\n\nitems property is deprecated. Please use VJoyMenuItem with default slot.\n\nDocs generation is broken for the VJoyMenuItem component.\nHere you have the props interface as workaround.\n\n```ts\n\ninterface IJoyMenuItem {\n label: string;\n icon?: TJoyIconsNames;\n current?: boolean;\n disabled?: boolean;\n status?: TJoyIconsNames;\n statusColor?: TJoyIconsColors;\n type?: Component | 'a' | 'button';\n linkProps?: ComponentProps<T>;\n}\n```",
|
|
477
|
+
"category": "Navigation",
|
|
377
478
|
"path": "VJoyMenu/metadata.json",
|
|
378
479
|
"propsCount": 3,
|
|
379
480
|
"eventsCount": 1,
|
|
@@ -383,6 +484,7 @@
|
|
|
383
484
|
{
|
|
384
485
|
"name": "VJoyMenuItem",
|
|
385
486
|
"description": "",
|
|
487
|
+
"category": "Navigation",
|
|
386
488
|
"path": "VJoyMenuItem/metadata.json",
|
|
387
489
|
"propsCount": 9,
|
|
388
490
|
"eventsCount": 0,
|
|
@@ -391,16 +493,18 @@
|
|
|
391
493
|
},
|
|
392
494
|
{
|
|
393
495
|
"name": "VJoyMultiCheckbox",
|
|
394
|
-
"description": "A multi-selection checkbox group component for handling arrays of selected values
|
|
496
|
+
"description": "A multi-selection checkbox group component for handling arrays of selected values.\nSimplifies multi-selection scenarios by managing checkbox states and array manipulation automatically.\nFeatures integrated labeling, fieldset structure for accessibility, and customizable checkbox content through slots.\nPerfect for filtering interfaces and bulk selection operations.",
|
|
497
|
+
"category": "Forms",
|
|
395
498
|
"path": "VJoyMultiCheckbox/metadata.json",
|
|
396
|
-
"propsCount":
|
|
499
|
+
"propsCount": 9,
|
|
397
500
|
"eventsCount": 1,
|
|
398
|
-
"slotsCount":
|
|
501
|
+
"slotsCount": 2,
|
|
399
502
|
"hasError": false
|
|
400
503
|
},
|
|
401
504
|
{
|
|
402
505
|
"name": "VJoyPagination",
|
|
403
|
-
"description": "A complete pagination component for navigating through large datasets with proper accessibility support
|
|
506
|
+
"description": "A complete pagination component for navigating through large datasets with proper accessibility support.\nFeatures automatic page number calculation, gap handling for large page counts, customizable navigation arrows,\nand router integration support through slots. Includes proper ARIA attributes and keyboard navigation\nfor an accessible pagination experience across different content types.",
|
|
507
|
+
"category": "Navigation",
|
|
404
508
|
"path": "VJoyPagination/metadata.json",
|
|
405
509
|
"propsCount": 5,
|
|
406
510
|
"eventsCount": 1,
|
|
@@ -409,7 +513,8 @@
|
|
|
409
513
|
},
|
|
410
514
|
{
|
|
411
515
|
"name": "VJoyPanel",
|
|
412
|
-
"description": "A structured content container component providing consistent layout patterns for cards and sections
|
|
516
|
+
"description": "A structured content container component providing consistent layout patterns for cards and sections.\nFeatures header with title/subtitle/actions, main body content, footer actions, and loading overlay support.\nIncludes flexible sizing, padding options, AI variant styling, and seamless integration with\nVJoyPanelSection for complex nested layouts and modular content organization.",
|
|
517
|
+
"category": "Layout",
|
|
413
518
|
"path": "VJoyPanel/metadata.json",
|
|
414
519
|
"propsCount": 7,
|
|
415
520
|
"eventsCount": 0,
|
|
@@ -419,6 +524,7 @@
|
|
|
419
524
|
{
|
|
420
525
|
"name": "VJoyPanelSection",
|
|
421
526
|
"description": "",
|
|
527
|
+
"category": "Layout",
|
|
422
528
|
"path": "VJoyPanelSection/metadata.json",
|
|
423
529
|
"propsCount": 0,
|
|
424
530
|
"eventsCount": 0,
|
|
@@ -427,7 +533,8 @@
|
|
|
427
533
|
},
|
|
428
534
|
{
|
|
429
535
|
"name": "VJoyPasswordRequirement",
|
|
430
|
-
"description": "A component to display a password requirement status
|
|
536
|
+
"description": "A component to display a password requirement status.\nThis is meant to be displayed under a VJoyInput of type password.",
|
|
537
|
+
"category": "Forms",
|
|
431
538
|
"path": "VJoyPasswordRequirement/metadata.json",
|
|
432
539
|
"propsCount": 2,
|
|
433
540
|
"eventsCount": 0,
|
|
@@ -436,7 +543,8 @@
|
|
|
436
543
|
},
|
|
437
544
|
{
|
|
438
545
|
"name": "VJoyProductTour",
|
|
439
|
-
"description": "An advanced guided tour component for creating interactive product demonstrations with element highlighting
|
|
546
|
+
"description": "An advanced guided tour component for creating interactive product demonstrations with element highlighting.\nFeatures intelligent positioning around target elements, multi-step tour progression, customizable banners and actions,\nand spotlight effects for drawing user attention. Includes SSR compatibility and proper z-index management\nthrough Teleport for seamless user onboarding and feature discovery experiences.",
|
|
547
|
+
"category": "Overlays",
|
|
440
548
|
"path": "VJoyProductTour/metadata.json",
|
|
441
549
|
"propsCount": 10,
|
|
442
550
|
"eventsCount": 1,
|
|
@@ -446,6 +554,7 @@
|
|
|
446
554
|
{
|
|
447
555
|
"name": "VJoyProductTourTrigger",
|
|
448
556
|
"description": "",
|
|
557
|
+
"category": "Overlays",
|
|
449
558
|
"path": "VJoyProductTourTrigger/metadata.json",
|
|
450
559
|
"propsCount": 1,
|
|
451
560
|
"eventsCount": 1,
|
|
@@ -454,7 +563,8 @@
|
|
|
454
563
|
},
|
|
455
564
|
{
|
|
456
565
|
"name": "VJoyProgressBar",
|
|
457
|
-
"description": "A visual progress indicator component for displaying completion status with percentage or step-based progress
|
|
566
|
+
"description": "A visual progress indicator component for displaying completion status with percentage or step-based progress.\nFeatures multiple color variants for different semantic meanings (success, warning, error), optional label display,\nand dual mode support (percentage-based or step-based calculations). Perfect for indicating task completion,\nloading states, and multi-step process progress with clear visual feedback.",
|
|
567
|
+
"category": "View",
|
|
458
568
|
"path": "VJoyProgressBar/metadata.json",
|
|
459
569
|
"propsCount": 5,
|
|
460
570
|
"eventsCount": 0,
|
|
@@ -464,6 +574,7 @@
|
|
|
464
574
|
{
|
|
465
575
|
"name": "VJoyRadio",
|
|
466
576
|
"description": "",
|
|
577
|
+
"category": "Forms",
|
|
467
578
|
"path": "VJoyRadio/metadata.json",
|
|
468
579
|
"propsCount": 8,
|
|
469
580
|
"eventsCount": 1,
|
|
@@ -472,7 +583,8 @@
|
|
|
472
583
|
},
|
|
473
584
|
{
|
|
474
585
|
"name": "VJoyRadioGroup",
|
|
475
|
-
"description": "A container component for organizing radio button groups with proper fieldset structure and accessibility
|
|
586
|
+
"description": "A container component for organizing radio button groups with proper fieldset structure and accessibility.\nFeatures horizontal and vertical layout options, legend support for group labeling, and seamless integration\nwith VJoyRadio components. Provides proper ARIA attributes and form association for accessible\nsingle-choice selection interfaces with consistent spacing and visual organization.\n\nUse the same v-model for each `VJoyRadio` (modelValue). Create a ref for it.",
|
|
587
|
+
"category": "Forms",
|
|
476
588
|
"path": "VJoyRadioGroup/metadata.json",
|
|
477
589
|
"propsCount": 4,
|
|
478
590
|
"eventsCount": 0,
|
|
@@ -481,7 +593,8 @@
|
|
|
481
593
|
},
|
|
482
594
|
{
|
|
483
595
|
"name": "VJoyRatingStars",
|
|
484
|
-
"description": "A visual rating display component using star icons to represent rating values from 0 to 5
|
|
596
|
+
"description": "A visual rating display component using star icons to represent rating values from 0 to 5.\nFeatures support for fractional ratings with half-star display, multiple size variants,\nreview count display, and customizable content slots. Includes proper accessibility\nattributes with configurable ARIA labels for screen reader compatibility.\n\n**Accessibility focus**: you can give an aria-label to the component to actually describe the rating.\nBy default it is set to \"Rating: X out of 5\" but is obviously not translated.",
|
|
597
|
+
"category": "View",
|
|
485
598
|
"path": "VJoyRatingStars/metadata.json",
|
|
486
599
|
"propsCount": 3,
|
|
487
600
|
"eventsCount": 0,
|
|
@@ -490,7 +603,8 @@
|
|
|
490
603
|
},
|
|
491
604
|
{
|
|
492
605
|
"name": "VJoyScreenLoader",
|
|
493
|
-
"description": "A full-screen loading overlay component for indicating page or section loading states
|
|
606
|
+
"description": "A full-screen loading overlay component for indicating page or section loading states.\nFeatures light and dark color modes, overlay positioning for absolute coverage, customizable spinner slots,\nand content areas for loading messages. Perfect for blocking user interactions during data loading\nwith professional loading animations and flexible content presentation.",
|
|
607
|
+
"category": "Loader",
|
|
494
608
|
"path": "VJoyScreenLoader/metadata.json",
|
|
495
609
|
"propsCount": 2,
|
|
496
610
|
"eventsCount": 0,
|
|
@@ -499,7 +613,8 @@
|
|
|
499
613
|
},
|
|
500
614
|
{
|
|
501
615
|
"name": "VJoySelect",
|
|
502
|
-
"description": "A styled select dropdown component with integrated labeling
|
|
616
|
+
"description": "A styled select dropdown component with integrated labeling.\nFeatures multiple size variants, disabled and invalid states, and flexible option rendering.\nSupports both inline label props and external VJoyLabel component usage.",
|
|
617
|
+
"category": "Forms",
|
|
503
618
|
"path": "VJoySelect/metadata.json",
|
|
504
619
|
"propsCount": 12,
|
|
505
620
|
"eventsCount": 1,
|
|
@@ -509,6 +624,7 @@
|
|
|
509
624
|
{
|
|
510
625
|
"name": "VJoySelectableItem",
|
|
511
626
|
"description": "",
|
|
627
|
+
"category": "Forms",
|
|
512
628
|
"path": "VJoySelectableItem/metadata.json",
|
|
513
629
|
"propsCount": 11,
|
|
514
630
|
"eventsCount": 1,
|
|
@@ -517,7 +633,8 @@
|
|
|
517
633
|
},
|
|
518
634
|
{
|
|
519
635
|
"name": "VJoySelectableItemGroup",
|
|
520
|
-
"description": "Basic full implementation example
|
|
636
|
+
"description": "Basic full implementation example :\n\n```html\n\n <template>\n <VJoySelectableItemGroup :options=\"options\" v-model:value=\"selectableModel\" />\n <template>\n\n<script setup lang=\"ts\">\n import {ref} from 'vue';\n import {TJoySelectableItemOption} from '@maltjoy/core-vue';\n\nconst options = ref<TJoySelectableItemOption[]>([\n {value: 'first-selectable-value', label: 'Option 1'},\n {value: 'second-selectable-value', label: 'Option 2'},\n {value: 'third-selectable-value', label: 'Option 3', {attrs: {...}}},\n]); // Use any type you prefer here, depending on what the backend is sending to you\n\n\nconst selectableModel = ref(['second-selectable-value']);\n\n</script>\n```\n\n> When passing the `options` property, you can include both `value` and `label` properties to each option.\n> But if it's simpler to use other key names, you can use `valueKey` and `labelKey` properties from `VJoySelectableItemGroup` to define the keys you prefer.\n>\n> You will have to deal with the typings by yourself, by creating a mix of interfaces or using satifies with type `TJoySelectableItemOption` depending on your cases.\n>\n> Example: `satisfies (TJoySelectableItemOption & Record<string, unknown>)[]`",
|
|
637
|
+
"category": "Forms",
|
|
521
638
|
"path": "VJoySelectableItemGroup/metadata.json",
|
|
522
639
|
"propsCount": 14,
|
|
523
640
|
"eventsCount": 1,
|
|
@@ -526,7 +643,8 @@
|
|
|
526
643
|
},
|
|
527
644
|
{
|
|
528
645
|
"name": "VJoySeparator",
|
|
529
|
-
"description": "A visual content separator component with text labeling capabilities for organizing interface sections
|
|
646
|
+
"description": "A visual content separator component with text labeling capabilities for organizing interface sections.\nFeatures customizable text content, multiple size options, and styled horizontal lines for improved\nvisual hierarchy. Enhanced version of the HTML hr element with better styling control and\nintegrated text display for clearer content separation and section identification.",
|
|
647
|
+
"category": "View",
|
|
530
648
|
"path": "VJoySeparator/metadata.json",
|
|
531
649
|
"propsCount": 2,
|
|
532
650
|
"eventsCount": 0,
|
|
@@ -535,7 +653,8 @@
|
|
|
535
653
|
},
|
|
536
654
|
{
|
|
537
655
|
"name": "VJoySnackbar",
|
|
538
|
-
"description": "This component should not be directly used. To display it, please use the pushVJoySnackbar service
|
|
656
|
+
"description": "This component should not be directly used. To display it, please use the pushVJoySnackbar service :\n\n```typescript\nimport {pushVJoySnackbar} from '@maltjoy/core-vue';\n\nfunction yourFunction() {\n pushVJoySnackbar({\n props: {\n // at least message is mandatory\n message: 'Your message'\n }\n });\n}\n```\n\nIf you need to listen to events fired by the component, you can actually grab the event bus :\n\n```typescript\nimport {pushVJoySnackbar} from '@maltjoy/core-vue';\n\nfunction yourFunction() {\n const {snackbarEventBus} = pushVJoySnackbar({\n props: {\n // at least message is mandatory\n message: 'Your message'\n }\n });\n\n snackbarEventBus.on('snackbar:hide', () => {\n // do what you want, and don't forget to unregister the listener on component destroy\n });\n}\n```\n\nOn the other hand, if you need to access the component instance, you can grab it as well\n\n```typescript\nimport {pushVJoySnackbar} from '@maltjoy/core-vue';\n\nfunction yourFunction() {\n const {snackbarApp} = pushVJoySnackbar({\n props: {\n // at least message is mandatory\n message: 'Your message'\n }\n });\n\n}\n```",
|
|
657
|
+
"category": "Overlays",
|
|
539
658
|
"path": "VJoySnackbar/metadata.json",
|
|
540
659
|
"propsCount": 9,
|
|
541
660
|
"eventsCount": 0,
|
|
@@ -544,7 +663,8 @@
|
|
|
544
663
|
},
|
|
545
664
|
{
|
|
546
665
|
"name": "VJoySpinner",
|
|
547
|
-
"description": "A simple animated loading spinner component for indicating processing or loading states
|
|
666
|
+
"description": "A simple animated loading spinner component for indicating processing or loading states.\nFeatures customizable color variants to match different contexts and design requirements.\nLightweight and performant with CSS-based animations, perfect for buttons, forms,\nand content areas that need visual loading feedback.",
|
|
667
|
+
"category": "Loader",
|
|
548
668
|
"path": "VJoySpinner/metadata.json",
|
|
549
669
|
"propsCount": 1,
|
|
550
670
|
"eventsCount": 0,
|
|
@@ -554,6 +674,7 @@
|
|
|
554
674
|
{
|
|
555
675
|
"name": "VJoyStep",
|
|
556
676
|
"description": "",
|
|
677
|
+
"category": "View",
|
|
557
678
|
"path": "VJoyStep/metadata.json",
|
|
558
679
|
"propsCount": 6,
|
|
559
680
|
"eventsCount": 1,
|
|
@@ -562,7 +683,8 @@
|
|
|
562
683
|
},
|
|
563
684
|
{
|
|
564
685
|
"name": "VJoyStepper",
|
|
565
|
-
"description": "A progress stepper component for visualizing multi-step processes and user workflows
|
|
686
|
+
"description": "A progress stepper component for visualizing multi-step processes and user workflows.\nManages a collection of VJoyStep components with support for main steps and sub-steps for granular progress tracking.\nFeatures automatic step state management (completed, current, upcoming), visual progress indicators,\nand flexible step sizing. Perfect for onboarding flows, form wizards, and guided processes.\n\nSee **VJoyStep** stories for properties related to `VJoyStepper` children",
|
|
687
|
+
"category": "View",
|
|
566
688
|
"path": "VJoyStepper/metadata.json",
|
|
567
689
|
"propsCount": 2,
|
|
568
690
|
"eventsCount": 0,
|
|
@@ -572,6 +694,7 @@
|
|
|
572
694
|
{
|
|
573
695
|
"name": "VJoyTab",
|
|
574
696
|
"description": "",
|
|
697
|
+
"category": "Navigation",
|
|
575
698
|
"path": "VJoyTab/metadata.json",
|
|
576
699
|
"propsCount": 4,
|
|
577
700
|
"eventsCount": 0,
|
|
@@ -580,7 +703,8 @@
|
|
|
580
703
|
},
|
|
581
704
|
{
|
|
582
705
|
"name": "VJoyTabs",
|
|
583
|
-
"description": "A tabbed navigation component for organizing content into switchable panels with proper accessibility support
|
|
706
|
+
"description": "A tabbed navigation component for organizing content into switchable panels with proper accessibility support.\nFeatures scrollable tab headers for overflow management, notification badges, custom header content slots,\nand both local navigation and external link support. Includes automatic tab selection management\nand event handling for seamless content organization and user experience.",
|
|
707
|
+
"category": "Navigation",
|
|
584
708
|
"path": "VJoyTabs/metadata.json",
|
|
585
709
|
"propsCount": 1,
|
|
586
710
|
"eventsCount": 1,
|
|
@@ -589,7 +713,8 @@
|
|
|
589
713
|
},
|
|
590
714
|
{
|
|
591
715
|
"name": "VJoyTag",
|
|
592
|
-
"description": "A versatile tag component for labeling, categorizing, and interactive content organization
|
|
716
|
+
"description": "A versatile tag component for labeling, categorizing, and interactive content organization.\nFeatures multiple variants and sizes, removable functionality, drag visual indicators,\nselectable states, link styling, and AI-specific variants. Supports click handlers,\nremoval events, and flexible content through slots for complex tag implementations.",
|
|
717
|
+
"category": "View",
|
|
593
718
|
"path": "VJoyTag/metadata.json",
|
|
594
719
|
"propsCount": 12,
|
|
595
720
|
"eventsCount": 3,
|
|
@@ -598,7 +723,8 @@
|
|
|
598
723
|
},
|
|
599
724
|
{
|
|
600
725
|
"name": "VJoyTagsInput",
|
|
601
|
-
"description": "A specialized form input component for managing collections of tags with dynamic add/remove functionality
|
|
726
|
+
"description": "A specialized form input component for managing collections of tags with dynamic add/remove functionality.\nFeatures email validation, duplication detection, multi-line responsive layout, and comprehensive error handling.\nIntegrates seamlessly with VJoyTag components for consistent tag display and provides flexible labeling\noptions for complex form scenarios with collections management.\n\n> **To render the component with default model, pass it an array of values.**\n> **Storybook code snippet is broken at the moment.**",
|
|
727
|
+
"category": "Forms",
|
|
602
728
|
"path": "VJoyTagsInput/metadata.json",
|
|
603
729
|
"propsCount": 9,
|
|
604
730
|
"eventsCount": 2,
|
|
@@ -607,7 +733,8 @@
|
|
|
607
733
|
},
|
|
608
734
|
{
|
|
609
735
|
"name": "VJoyTagsList",
|
|
610
|
-
"description": "**VJoyTagsList** is a simple wrapper for **VJoyTag** allowing you to create a list with pre-defined style
|
|
736
|
+
"description": "**VJoyTagsList** is a simple wrapper for **VJoyTag** allowing you to create a list with pre-defined style.\nIf it is more flexible for you to directly use **VJoyTag** don't hesitate to get rid of this parent component!\nInstead you can wrap your **VJoyTag** list in a **VJoyWrapper** for instance",
|
|
737
|
+
"category": "View",
|
|
611
738
|
"path": "VJoyTagsList/metadata.json",
|
|
612
739
|
"propsCount": 6,
|
|
613
740
|
"eventsCount": 2,
|
|
@@ -616,25 +743,18 @@
|
|
|
616
743
|
},
|
|
617
744
|
{
|
|
618
745
|
"name": "VJoyTemplate",
|
|
619
|
-
"description": "A comprehensive page layout template component providing structured slots for complete page organization
|
|
746
|
+
"description": "A comprehensive page layout template component providing structured slots for complete page organization.\nFeatures header area with title/subtitle/actions, main content with optional sidebar, back navigation support,\nloading overlay integration, and decorative background shapes. Perfect for creating consistent page layouts\nwith flexible content positioning and professional presentation across the application.",
|
|
747
|
+
"category": "Layout",
|
|
620
748
|
"path": "VJoyTemplate/metadata.json",
|
|
621
749
|
"propsCount": 5,
|
|
622
750
|
"eventsCount": 0,
|
|
623
751
|
"slotsCount": 7,
|
|
624
752
|
"hasError": false
|
|
625
753
|
},
|
|
626
|
-
{
|
|
627
|
-
"name": "VJoyTemplateShape",
|
|
628
|
-
"description": "",
|
|
629
|
-
"path": "VJoyTemplateShape/metadata.json",
|
|
630
|
-
"propsCount": 0,
|
|
631
|
-
"eventsCount": 0,
|
|
632
|
-
"slotsCount": 0,
|
|
633
|
-
"hasError": false
|
|
634
|
-
},
|
|
635
754
|
{
|
|
636
755
|
"name": "VJoyText",
|
|
637
|
-
"description": "This component is directly dependant from `@maltjoy/css` package, a CSS class utils package built on top of `@maltjoy/themes` that contains our design tokens
|
|
756
|
+
"description": "This component is directly dependant from `@maltjoy/css` package, a CSS class utils package built on top of `@maltjoy/themes` that contains our design tokens.\n\n**Reminder**: values ending with 50 have same size but are bold.\n\nSee \"Fonts\" section here https://doc.malt.tech/joy-storybook/?path=/docs/css-framework--docs#advanced-fonts\n\n**Warning** If you use long text within a VJoyWrapper, you'll have to set a max-width to prevent the text from breaking the layout.",
|
|
757
|
+
"category": "View",
|
|
638
758
|
"path": "VJoyText/metadata.json",
|
|
639
759
|
"propsCount": 2,
|
|
640
760
|
"eventsCount": 0,
|
|
@@ -643,7 +763,8 @@
|
|
|
643
763
|
},
|
|
644
764
|
{
|
|
645
765
|
"name": "VJoyTextarea",
|
|
646
|
-
"description": "A comprehensive multi-line text input component with advanced features for form interfaces
|
|
766
|
+
"description": "A comprehensive multi-line text input component with advanced features for form interfaces.\nFeatures autogrow functionality, character count validation, min/max length constraints,\nintegrated labeling, and form validation support. Includes visual feedback for length limits,\ndisabled states, and seamless integration with VJoyLabel for flexible form layouts.",
|
|
767
|
+
"category": "Forms",
|
|
647
768
|
"path": "VJoyTextarea/metadata.json",
|
|
648
769
|
"propsCount": 16,
|
|
649
770
|
"eventsCount": 1,
|
|
@@ -652,7 +773,8 @@
|
|
|
652
773
|
},
|
|
653
774
|
{
|
|
654
775
|
"name": "VJoyTitleBrand",
|
|
655
|
-
"description": "A branded title component for creating visually striking headings with highlighted text segments
|
|
776
|
+
"description": "A branded title component for creating visually striking headings with highlighted text segments.\nFeatures flexible HTML tag rendering (h1-h6, p) and automatic styling for span elements with\nrotated background highlights. Perfect for page headers, dialog titles, and marketing content\nwhere brand emphasis is important for visual hierarchy and user attention.\n\nThis component can be used in `VJoyTemplate` or `VJoyDialog`.",
|
|
777
|
+
"category": "View",
|
|
656
778
|
"path": "VJoyTitleBrand/metadata.json",
|
|
657
779
|
"propsCount": 1,
|
|
658
780
|
"eventsCount": 0,
|
|
@@ -661,7 +783,8 @@
|
|
|
661
783
|
},
|
|
662
784
|
{
|
|
663
785
|
"name": "VJoyToggle",
|
|
664
|
-
"description": "A form toggle switch component for binary on/off state management with visual feedback
|
|
786
|
+
"description": "A form toggle switch component for binary on/off state management with visual feedback.\nFeatures multiple variants including default (with smile icon) and admin (with eye icon), integrated labeling, disabled states, and proper accessibility attributes.\nProvides smooth animations and clear visual indicators for user interactions in forms and settings interfaces.",
|
|
787
|
+
"category": "Forms",
|
|
665
788
|
"path": "VJoyToggle/metadata.json",
|
|
666
789
|
"propsCount": 10,
|
|
667
790
|
"eventsCount": 1,
|
|
@@ -670,7 +793,8 @@
|
|
|
670
793
|
},
|
|
671
794
|
{
|
|
672
795
|
"name": "VJoyTooltip",
|
|
673
|
-
"description": "A floating tooltip overlay component for providing contextual information and help text
|
|
796
|
+
"description": "A floating tooltip overlay component for providing contextual information and help text.\nFeatures intelligent positioning with automatic placement adjustments, support for both hover and click triggers,\nand flexible content through text props or HTML slots. Uses Teleport for proper z-index management\nand includes proper accessibility attributes with ARIA support for screen readers.",
|
|
797
|
+
"category": "Overlays",
|
|
674
798
|
"path": "VJoyTooltip/metadata.json",
|
|
675
799
|
"propsCount": 8,
|
|
676
800
|
"eventsCount": 0,
|
|
@@ -679,7 +803,8 @@
|
|
|
679
803
|
},
|
|
680
804
|
{
|
|
681
805
|
"name": "VJoyUserCard",
|
|
682
|
-
"description": "A comprehensive user profile card component for displaying user information in a structured layout
|
|
806
|
+
"description": "A comprehensive user profile card component for displaying user information in a structured layout.\nFeatures integrated avatar display, name/subtitle presentation, rating stars support, and optional\nlink functionality for navigation. Includes multiple customization slots for avatar, title, subtitle,\nand rating components, with full attribute inheritance for link behavior and accessibility.",
|
|
807
|
+
"category": "View",
|
|
683
808
|
"path": "VJoyUserCard/metadata.json",
|
|
684
809
|
"propsCount": 5,
|
|
685
810
|
"eventsCount": 0,
|
|
@@ -688,7 +813,8 @@
|
|
|
688
813
|
},
|
|
689
814
|
{
|
|
690
815
|
"name": "VJoyWalkthrough",
|
|
691
|
-
"description": "A comprehensive guided tour component for creating interactive onboarding experiences and feature walkthroughs
|
|
816
|
+
"description": "A comprehensive guided tour component for creating interactive onboarding experiences and feature walkthroughs.\nFeatures collapsible modal interface with trigger button, progress tracking with visual indicators, mobile-responsive\ndesign, and flexible content slots for illustrations, descriptions, and custom actions. Uses Teleport for proper\nz-index management and includes accessibility support for guided user experiences.\n\n> ⚠ The use of **disableTeleport** property is only for documentation purpose. You won't need it in production.",
|
|
817
|
+
"category": "Overlays",
|
|
692
818
|
"path": "VJoyWalkthrough/metadata.json",
|
|
693
819
|
"propsCount": 7,
|
|
694
820
|
"eventsCount": 3,
|
|
@@ -698,6 +824,7 @@
|
|
|
698
824
|
{
|
|
699
825
|
"name": "VJoyWalkthroughTrigger",
|
|
700
826
|
"description": "",
|
|
827
|
+
"category": "Overlays",
|
|
701
828
|
"path": "VJoyWalkthroughTrigger/metadata.json",
|
|
702
829
|
"propsCount": 4,
|
|
703
830
|
"eventsCount": 0,
|
|
@@ -706,7 +833,8 @@
|
|
|
706
833
|
},
|
|
707
834
|
{
|
|
708
835
|
"name": "VJoyWrapper",
|
|
709
|
-
"description": "A flexible CSS flexbox utility wrapper component for creating responsive layouts with consistent spacing
|
|
836
|
+
"description": "A flexible CSS flexbox utility wrapper component for creating responsive layouts with consistent spacing.\nFeatures comprehensive flexbox controls including justify-content, align-items, flex-direction, and wrap properties.\nIncludes automatic gap management, item stretching capabilities, and margin controls. Perfect for form layouts,\nbutton groups, and any content that needs structured, responsive arrangement with minimal CSS.",
|
|
837
|
+
"category": "Layout",
|
|
710
838
|
"path": "VJoyWrapper/metadata.json",
|
|
711
839
|
"propsCount": 8,
|
|
712
840
|
"eventsCount": 0,
|