@maltjoy/mcp-server 0.3.1 → 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.
Files changed (104) hide show
  1. package/README.md +30 -28
  2. package/dist/doc/VJoyAdminBanner/metadata.json +2 -0
  3. package/dist/doc/VJoyAvailability/metadata.json +2 -0
  4. package/dist/doc/VJoyAvatar/metadata.json +2 -0
  5. package/dist/doc/VJoyAvatarsList/metadata.json +2 -0
  6. package/dist/doc/VJoyBadge/metadata.json +2 -0
  7. package/dist/doc/VJoyBadgeLevel/metadata.json +2 -0
  8. package/dist/doc/VJoyBlockSkeleton/metadata.json +2 -0
  9. package/dist/doc/VJoyBottomSheet/metadata.json +2 -0
  10. package/dist/doc/VJoyBottomSheetTrigger/metadata.json +2 -0
  11. package/dist/doc/VJoyButton/metadata.json +2 -0
  12. package/dist/doc/VJoyButtonCard/JoyButtonCard.types.ts +15 -0
  13. package/dist/doc/VJoyButtonCard/metadata.json +78 -0
  14. package/dist/doc/VJoyCheckbox/JoyCheckbox.types.ts +26 -0
  15. package/dist/doc/VJoyCheckbox/metadata.json +29 -27
  16. package/dist/doc/VJoyCheckboxCard/JoyCheckboxCard.types.ts +8 -0
  17. package/dist/doc/VJoyCheckboxCard/metadata.json +221 -0
  18. package/dist/doc/VJoyCheckboxGroup/metadata.json +338 -0
  19. package/dist/doc/VJoyCollapse/metadata.json +2 -0
  20. package/dist/doc/VJoyCollapseItem/metadata.json +2 -0
  21. package/dist/doc/VJoyCompanyAvatar/metadata.json +2 -0
  22. package/dist/doc/VJoyDialog/metadata.json +2 -0
  23. package/dist/doc/VJoyDialogTrigger/metadata.json +2 -0
  24. package/dist/doc/VJoyDot/metadata.json +2 -0
  25. package/dist/doc/VJoyDrawer/metadata.json +2 -0
  26. package/dist/doc/VJoyDrawerTrigger/metadata.json +2 -0
  27. package/dist/doc/VJoyDropdown/metadata.json +76 -74
  28. package/dist/doc/VJoyDropdownList/metadata.json +2 -0
  29. package/dist/doc/VJoyDropzone/metadata.json +2 -0
  30. package/dist/doc/VJoyFilterBar/metadata.json +2 -0
  31. package/dist/doc/VJoyFilterBarButton/metadata.json +2 -0
  32. package/dist/doc/VJoyFloatingActionsBar/metadata.json +70 -0
  33. package/dist/doc/VJoyFormError/metadata.json +2 -0
  34. package/dist/doc/VJoyFormFieldSkeleton/metadata.json +2 -0
  35. package/dist/doc/VJoyFormGroup/metadata.json +2 -0
  36. package/dist/doc/VJoyFunnel/metadata.json +2 -0
  37. package/dist/doc/VJoyFunnelFooter/metadata.json +2 -0
  38. package/dist/doc/VJoyFunnelHeader/metadata.json +2 -0
  39. package/dist/doc/VJoyHighlight/metadata.json +2 -0
  40. package/dist/doc/VJoyIcon/metadata.json +2 -0
  41. package/dist/doc/VJoyIconButton/JoyIconButton.types.ts +6 -0
  42. package/dist/doc/VJoyIconButton/metadata.json +116 -0
  43. package/dist/doc/VJoyIndicator/metadata.json +2 -0
  44. package/dist/doc/VJoyIndicators/metadata.json +2 -0
  45. package/dist/doc/VJoyInput/JoyInput.types.ts +1 -1
  46. package/dist/doc/VJoyInput/metadata.json +18 -14
  47. package/dist/doc/VJoyInputDigit/metadata.json +2 -0
  48. package/dist/doc/VJoyInputNumber/metadata.json +286 -0
  49. package/dist/doc/VJoyInputPassword/metadata.json +36 -32
  50. package/dist/doc/VJoyLabel/metadata.json +6 -4
  51. package/dist/doc/VJoyLink/metadata.json +11 -9
  52. package/dist/doc/VJoyListItem/metadata.json +2 -0
  53. package/dist/doc/VJoyMenu/metadata.json +2 -0
  54. package/dist/doc/VJoyMenuItem/metadata.json +3 -1
  55. package/dist/doc/VJoyMultiCheckbox/metadata.json +193 -12
  56. package/dist/doc/VJoyPagination/metadata.json +2 -0
  57. package/dist/doc/VJoyPanel/metadata.json +2 -0
  58. package/dist/doc/VJoyPanelSection/metadata.json +2 -0
  59. package/dist/doc/VJoyPasswordRequirement/metadata.json +2 -0
  60. package/dist/doc/VJoyProductTour/metadata.json +2 -0
  61. package/dist/doc/VJoyProductTourTrigger/metadata.json +2 -0
  62. package/dist/doc/VJoyProgressBar/metadata.json +2 -5
  63. package/dist/doc/VJoyRadio/metadata.json +2 -0
  64. package/dist/doc/VJoyRadioGroup/metadata.json +4 -2
  65. package/dist/doc/VJoyRatingStars/metadata.json +2 -0
  66. package/dist/doc/VJoyScreenLoader/metadata.json +2 -0
  67. package/dist/doc/VJoySelect/metadata.json +34 -32
  68. package/dist/doc/VJoySelectableItem/metadata.json +2 -0
  69. package/dist/doc/VJoySelectableItemGroup/metadata.json +2 -0
  70. package/dist/doc/VJoySeparator/metadata.json +2 -0
  71. package/dist/doc/VJoySnackbar/metadata.json +2 -0
  72. package/dist/doc/VJoySpinner/metadata.json +2 -0
  73. package/dist/doc/VJoyStep/metadata.json +2 -0
  74. package/dist/doc/VJoyStepper/metadata.json +2 -0
  75. package/dist/doc/VJoyTab/metadata.json +2 -0
  76. package/dist/doc/VJoyTabs/metadata.json +2 -0
  77. package/dist/doc/VJoyTag/metadata.json +6 -4
  78. package/dist/doc/VJoyTagsInput/metadata.json +2 -0
  79. package/dist/doc/VJoyTagsList/metadata.json +19 -17
  80. package/dist/doc/VJoyTemplate/metadata.json +2 -0
  81. package/dist/doc/VJoyText/metadata.json +2 -0
  82. package/dist/doc/VJoyTextarea/metadata.json +25 -23
  83. package/dist/doc/VJoyTitleBrand/metadata.json +2 -0
  84. package/dist/doc/VJoyToggle/metadata.json +15 -13
  85. package/dist/doc/VJoyTooltip/metadata.json +2 -0
  86. package/dist/doc/VJoyUserCard/metadata.json +2 -0
  87. package/dist/doc/VJoyWalkthrough/metadata.json +2 -0
  88. package/dist/doc/VJoyWalkthroughTrigger/metadata.json +2 -0
  89. package/dist/doc/VJoyWrapper/metadata.json +20 -18
  90. package/dist/doc/css-classes.json +2 -0
  91. package/dist/doc/design-tokens.json +30 -30
  92. package/dist/doc/index.json +223 -17
  93. package/dist/parser.d.ts +12 -0
  94. package/dist/parser.d.ts.map +1 -1
  95. package/dist/parser.js +25 -0
  96. package/dist/parser.js.map +1 -1
  97. package/dist/tools/get-component-info.js +1 -1
  98. package/dist/tools/get-component-info.js.map +1 -1
  99. package/dist/tools/list-components.d.ts +2 -4
  100. package/dist/tools/list-components.d.ts.map +1 -1
  101. package/dist/tools/list-components.js +24 -7
  102. package/dist/tools/list-components.js.map +1 -1
  103. package/package.json +3 -2
  104. package/dist/doc/VJoyTemplateShape/metadata.json +0 -9
@@ -0,0 +1,286 @@
1
+ {
2
+ "name": "JoyInputNumber",
3
+ "displayName": "VJoyInputNumber",
4
+ "description": "Number input built on top of VJoyInput. Displays the unit label on the right of the input.",
5
+ "category": "Forms",
6
+ "props": [
7
+ {
8
+ "name": "invalid",
9
+ "type": "boolean | undefined",
10
+ "required": false,
11
+ "default": "false",
12
+ "description": "",
13
+ "possibleValues": [
14
+ "false",
15
+ "true"
16
+ ]
17
+ },
18
+ {
19
+ "name": "label",
20
+ "type": "string | undefined",
21
+ "required": false,
22
+ "description": "Display a label on top of the element. Handy if you only need to pass a string. If you need more, use the VJoyLabel.",
23
+ "possibleValues": [
24
+ "string"
25
+ ]
26
+ },
27
+ {
28
+ "name": "type",
29
+ "type": "string | undefined",
30
+ "required": false,
31
+ "default": "\"number\"",
32
+ "description": "",
33
+ "possibleValues": null
34
+ },
35
+ {
36
+ "name": "size",
37
+ "type": "TJoyInputSizes | undefined",
38
+ "required": false,
39
+ "description": "",
40
+ "possibleValues": [
41
+ "medium",
42
+ "large",
43
+ "small"
44
+ ]
45
+ },
46
+ {
47
+ "name": "required",
48
+ "type": "boolean | undefined",
49
+ "required": false,
50
+ "default": "false",
51
+ "description": "",
52
+ "possibleValues": [
53
+ "false",
54
+ "true"
55
+ ]
56
+ },
57
+ {
58
+ "name": "icon",
59
+ "type": "string",
60
+ "required": false,
61
+ "description": "Add a JoyIcon / joy-icon with given name on left-side.",
62
+ "possibleValues": "TJoyIconsNames (220 values)"
63
+ },
64
+ {
65
+ "name": "id",
66
+ "type": "string | undefined",
67
+ "required": false,
68
+ "description": "",
69
+ "possibleValues": [
70
+ "string"
71
+ ]
72
+ },
73
+ {
74
+ "name": "disabled",
75
+ "type": "boolean | undefined",
76
+ "required": false,
77
+ "default": "false",
78
+ "description": "",
79
+ "possibleValues": [
80
+ "false",
81
+ "true"
82
+ ]
83
+ },
84
+ {
85
+ "name": "name",
86
+ "type": "string | undefined",
87
+ "required": false,
88
+ "default": "\"joy-input-password\"",
89
+ "description": "",
90
+ "possibleValues": [
91
+ "string"
92
+ ]
93
+ },
94
+ {
95
+ "name": "labelSize",
96
+ "type": "TJoyLabelSizes | undefined",
97
+ "required": false,
98
+ "default": "\"medium\"",
99
+ "description": "Overrides the default label size. See JoyLabel stories",
100
+ "possibleValues": [
101
+ "medium",
102
+ "large",
103
+ "small"
104
+ ]
105
+ },
106
+ {
107
+ "name": "optionalLabel",
108
+ "type": "string | undefined",
109
+ "required": false,
110
+ "description": "If your component is not required, we can add a label to explicitely tell that it's not mandatory",
111
+ "possibleValues": [
112
+ "string"
113
+ ]
114
+ },
115
+ {
116
+ "name": "requiredMark",
117
+ "type": "boolean | undefined",
118
+ "required": false,
119
+ "default": "false",
120
+ "description": "Depending on context, we can add a \"*\" after the label to specify it's mandatory.",
121
+ "possibleValues": [
122
+ "false",
123
+ "true"
124
+ ]
125
+ },
126
+ {
127
+ "name": "modelValue",
128
+ "type": "string | number | null | undefined",
129
+ "required": false,
130
+ "description": "",
131
+ "possibleValues": [
132
+ "null",
133
+ "string",
134
+ "number"
135
+ ]
136
+ },
137
+ {
138
+ "name": "autofocus",
139
+ "type": "boolean | undefined",
140
+ "required": false,
141
+ "default": "false",
142
+ "description": "",
143
+ "possibleValues": [
144
+ "false",
145
+ "true"
146
+ ]
147
+ },
148
+ {
149
+ "name": "modelModifiers",
150
+ "type": "Partial<Record<\"number\" | \"trim\" | \"lazy\", boolean>> | undefined",
151
+ "required": false,
152
+ "default": "{ lazy: false }",
153
+ "description": "",
154
+ "possibleValues": [
155
+ "Partial<Record<\"number\" | \"trim\" | \"lazy\", boolean>>"
156
+ ]
157
+ },
158
+ {
159
+ "name": "unit",
160
+ "type": "string | undefined",
161
+ "required": false,
162
+ "default": "\"\\u20AC\"",
163
+ "description": "Adds a legend like symbol on the right of the component. Made for number based values",
164
+ "possibleValues": [
165
+ "string"
166
+ ]
167
+ },
168
+ {
169
+ "name": "readonly",
170
+ "type": "boolean | undefined",
171
+ "required": false,
172
+ "default": "false",
173
+ "description": "Activates the readonly mode for the input",
174
+ "possibleValues": [
175
+ "false",
176
+ "true"
177
+ ]
178
+ }
179
+ ],
180
+ "events": [
181
+ {
182
+ "name": "update:modelValue",
183
+ "description": "",
184
+ "signature": "(event: \"update:modelValue\", value: string): void"
185
+ }
186
+ ],
187
+ "slots": [],
188
+ "exposed": [
189
+ {
190
+ "name": "invalid",
191
+ "type": "boolean",
192
+ "isMethod": false
193
+ },
194
+ {
195
+ "name": "type",
196
+ "type": "string",
197
+ "isMethod": false
198
+ },
199
+ {
200
+ "name": "required",
201
+ "type": "boolean",
202
+ "isMethod": false
203
+ },
204
+ {
205
+ "name": "disabled",
206
+ "type": "boolean",
207
+ "isMethod": false
208
+ },
209
+ {
210
+ "name": "name",
211
+ "type": "string",
212
+ "isMethod": false
213
+ },
214
+ {
215
+ "name": "labelSize",
216
+ "type": "TJoyLabelSizes",
217
+ "isMethod": false
218
+ },
219
+ {
220
+ "name": "requiredMark",
221
+ "type": "boolean",
222
+ "isMethod": false
223
+ },
224
+ {
225
+ "name": "autofocus",
226
+ "type": "boolean",
227
+ "isMethod": false
228
+ },
229
+ {
230
+ "name": "modelModifiers",
231
+ "type": "Partial<Record<\"number\" | \"trim\" | \"lazy\", boolean>>",
232
+ "isMethod": false
233
+ },
234
+ {
235
+ "name": "unit",
236
+ "type": "string",
237
+ "isMethod": false
238
+ },
239
+ {
240
+ "name": "readonly",
241
+ "type": "boolean",
242
+ "isMethod": false
243
+ },
244
+ {
245
+ "name": "label",
246
+ "type": "string | undefined",
247
+ "isMethod": false
248
+ },
249
+ {
250
+ "name": "size",
251
+ "type": "TJoyInputSizes | undefined",
252
+ "isMethod": false
253
+ },
254
+ {
255
+ "name": "icon",
256
+ "type": "string",
257
+ "isMethod": false
258
+ },
259
+ {
260
+ "name": "id",
261
+ "type": "string | undefined",
262
+ "isMethod": false
263
+ },
264
+ {
265
+ "name": "optionalLabel",
266
+ "type": "string | undefined",
267
+ "isMethod": false
268
+ },
269
+ {
270
+ "name": "modelValue",
271
+ "type": "string | number | null | undefined",
272
+ "isMethod": false
273
+ },
274
+ {
275
+ "name": "onUpdate:modelValue",
276
+ "type": "((value: string) => any) | undefined",
277
+ "isMethod": true
278
+ },
279
+ {
280
+ "name": "focus",
281
+ "type": "() => void",
282
+ "isMethod": true
283
+ }
284
+ ],
285
+ "hasVModel": true
286
+ }
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyInputPassword",
3
3
  "displayName": "VJoyInputPassword",
4
+ "description": "Password input built on top of VJoyInput with built-in visibility toggle.",
5
+ "category": "Forms",
4
6
  "props": [
5
7
  {
6
8
  "name": "invalid",
@@ -73,32 +75,12 @@
73
75
  },
74
76
  {
75
77
  "name": "name",
76
- "type": "string",
78
+ "type": "string | undefined",
77
79
  "required": false,
78
80
  "default": "\"joy-input-password\"",
79
81
  "description": "",
80
- "possibleValues": null
81
- },
82
- {
83
- "name": "modelValue",
84
- "type": "string | number | null | undefined",
85
- "required": false,
86
- "description": "",
87
82
  "possibleValues": [
88
- "null",
89
- "string",
90
- "number"
91
- ]
92
- },
93
- {
94
- "name": "autofocus",
95
- "type": "boolean | undefined",
96
- "required": false,
97
- "default": "false",
98
- "description": "",
99
- "possibleValues": [
100
- "false",
101
- "true"
83
+ "string"
102
84
  ]
103
85
  },
104
86
  {
@@ -133,6 +115,28 @@
133
115
  "true"
134
116
  ]
135
117
  },
118
+ {
119
+ "name": "modelValue",
120
+ "type": "string | number | null | undefined",
121
+ "required": false,
122
+ "description": "",
123
+ "possibleValues": [
124
+ "null",
125
+ "string",
126
+ "number"
127
+ ]
128
+ },
129
+ {
130
+ "name": "autofocus",
131
+ "type": "boolean | undefined",
132
+ "required": false,
133
+ "default": "false",
134
+ "description": "",
135
+ "possibleValues": [
136
+ "false",
137
+ "true"
138
+ ]
139
+ },
136
140
  {
137
141
  "name": "modelModifiers",
138
142
  "type": "Partial<Record<\"number\" | \"trim\" | \"lazy\", boolean>> | undefined",
@@ -187,11 +191,6 @@
187
191
  "type": "string",
188
192
  "isMethod": false
189
193
  },
190
- {
191
- "name": "autofocus",
192
- "type": "boolean",
193
- "isMethod": false
194
- },
195
194
  {
196
195
  "name": "labelSize",
197
196
  "type": "TJoyLabelSizes",
@@ -202,6 +201,11 @@
202
201
  "type": "boolean",
203
202
  "isMethod": false
204
203
  },
204
+ {
205
+ "name": "autofocus",
206
+ "type": "boolean",
207
+ "isMethod": false
208
+ },
205
209
  {
206
210
  "name": "modelModifiers",
207
211
  "type": "Partial<Record<\"number\" | \"trim\" | \"lazy\", boolean>>",
@@ -227,6 +231,11 @@
227
231
  "type": "string | undefined",
228
232
  "isMethod": false
229
233
  },
234
+ {
235
+ "name": "optionalLabel",
236
+ "type": "string | undefined",
237
+ "isMethod": false
238
+ },
230
239
  {
231
240
  "name": "modelValue",
232
241
  "type": "string | number | null | undefined",
@@ -237,11 +246,6 @@
237
246
  "type": "((value: string) => any) | undefined",
238
247
  "isMethod": true
239
248
  },
240
- {
241
- "name": "optionalLabel",
242
- "type": "string | undefined",
243
- "isMethod": false
244
- },
245
249
  {
246
250
  "name": "unit",
247
251
  "type": "string | undefined",
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyLabel",
3
3
  "displayName": "VJoyLabel",
4
+ "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.",
5
+ "category": "Forms",
4
6
  "props": [
5
7
  {
6
8
  "name": "size",
@@ -37,7 +39,7 @@
37
39
  ]
38
40
  },
39
41
  {
40
- "name": "text",
42
+ "name": "optionalLabel",
41
43
  "type": "string | undefined",
42
44
  "required": false,
43
45
  "description": "",
@@ -46,7 +48,7 @@
46
48
  ]
47
49
  },
48
50
  {
49
- "name": "optionalLabel",
51
+ "name": "text",
50
52
  "type": "string | undefined",
51
53
  "required": false,
52
54
  "description": "",
@@ -87,12 +89,12 @@
87
89
  "isMethod": false
88
90
  },
89
91
  {
90
- "name": "text",
92
+ "name": "optionalLabel",
91
93
  "type": "string | undefined",
92
94
  "isMethod": false
93
95
  },
94
96
  {
95
- "name": "optionalLabel",
97
+ "name": "text",
96
98
  "type": "string | undefined",
97
99
  "isMethod": false
98
100
  }
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyLink",
3
3
  "displayName": "VJoyLink",
4
+ "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).",
5
+ "category": "Buttons",
4
6
  "props": [
5
7
  {
6
8
  "name": "color",
@@ -28,21 +30,21 @@
28
30
  "possibleValues": "TJoyIconsNames (220 values)"
29
31
  },
30
32
  {
31
- "name": "text",
32
- "type": "string | null | undefined",
33
+ "name": "href",
34
+ "type": "string | undefined",
33
35
  "required": false,
34
36
  "description": "",
35
37
  "possibleValues": [
36
- "null",
37
38
  "string"
38
39
  ]
39
40
  },
40
41
  {
41
- "name": "href",
42
- "type": "string | undefined",
42
+ "name": "text",
43
+ "type": "string | null | undefined",
43
44
  "required": false,
44
45
  "description": "",
45
46
  "possibleValues": [
47
+ "null",
46
48
  "string"
47
49
  ]
48
50
  }
@@ -71,13 +73,13 @@
71
73
  "isMethod": false
72
74
  },
73
75
  {
74
- "name": "text",
75
- "type": "string | null | undefined",
76
+ "name": "href",
77
+ "type": "string | undefined",
76
78
  "isMethod": false
77
79
  },
78
80
  {
79
- "name": "href",
80
- "type": "string | undefined",
81
+ "name": "text",
82
+ "type": "string | null | undefined",
81
83
  "isMethod": false
82
84
  }
83
85
  ],
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyListItem",
3
3
  "displayName": "VJoyListItem",
4
+ "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.",
5
+ "category": "View",
4
6
  "props": [
5
7
  {
6
8
  "name": "icon",
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyMenu",
3
3
  "displayName": "VJoyMenu",
4
+ "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```",
5
+ "category": "Navigation",
4
6
  "props": [
5
7
  {
6
8
  "name": "items",
@@ -1,6 +1,8 @@
1
1
  {
2
2
  "name": "JoyMenuItem",
3
3
  "displayName": "VJoyMenuItem",
4
+ "description": "",
5
+ "category": "Navigation",
4
6
  "props": [
5
7
  {
6
8
  "name": "label",
@@ -75,7 +77,7 @@
75
77
  },
76
78
  {
77
79
  "name": "type",
78
- "type": "\"button\" | Component | \"a\" | undefined",
80
+ "type": "\"button\" | \"a\" | Component | undefined",
79
81
  "required": false,
80
82
  "default": "\"a\" as any",
81
83
  "description": "",