@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/parser.d.ts
CHANGED
|
@@ -10,6 +10,7 @@ export declare function getComponentCount(): number;
|
|
|
10
10
|
export interface ComponentSummary {
|
|
11
11
|
name: string;
|
|
12
12
|
description: string;
|
|
13
|
+
category: string;
|
|
13
14
|
}
|
|
14
15
|
/**
|
|
15
16
|
* Parse the Joy components documentation JSON file
|
|
@@ -21,6 +22,8 @@ export declare function parseComponentSummaries(): ComponentSummary[];
|
|
|
21
22
|
*/
|
|
22
23
|
export interface ComponentInfo {
|
|
23
24
|
name: string;
|
|
25
|
+
description: string;
|
|
26
|
+
category: string;
|
|
24
27
|
props: PropInfo[];
|
|
25
28
|
events: EventInfo[];
|
|
26
29
|
slots: SlotInfo[];
|
package/dist/parser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAmB9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,EAAE,CAmB9C;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,IAAI,gBAAgB,EAAE,CAmB5D;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,cAAc,EAAE,iBAAiB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,QAAQ;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,aAAa,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAsC9E"}
|
package/dist/parser.js
CHANGED
|
@@ -44,6 +44,7 @@ export function parseComponentSummaries() {
|
|
|
44
44
|
return data.components.map((comp) => ({
|
|
45
45
|
name: comp.name,
|
|
46
46
|
description: comp.description || '',
|
|
47
|
+
category: comp.category || 'Uncategorized',
|
|
47
48
|
}));
|
|
48
49
|
}
|
|
49
50
|
return [];
|
|
@@ -65,6 +66,8 @@ export function parseComponentInfo(componentName) {
|
|
|
65
66
|
// Map JSON structure to ComponentInfo interface
|
|
66
67
|
return {
|
|
67
68
|
name: data.displayName || componentName,
|
|
69
|
+
description: data.description || '',
|
|
70
|
+
category: data.category || 'Uncategorized',
|
|
68
71
|
props: data.props.map((prop) => ({
|
|
69
72
|
name: prop.name,
|
|
70
73
|
type: prop.type,
|
package/dist/parser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAErC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAClD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;AAEtC;;;GAGG;AACH,MAAM,UAAU,mBAAmB;IACjC,IAAI,CAAC;QACH,iFAAiF;QACjF,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAEpD,MAAM,OAAO,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACjD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEjC,oDAAoD;QACpD,IAAI,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAS,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACxG,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,mBAAmB,EAAE,CAAC,MAAM,CAAC;AACtC,CAAC;
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import { parseComponentInfo } from '../parser.js';
|
|
|
4
4
|
*/
|
|
5
5
|
export const getComponentInfoTool = {
|
|
6
6
|
name: 'joy_get_component_info',
|
|
7
|
-
description: 'Retrieves detailed information about a specific Joy Vue3 component including props, events, slots, and exposed members. Provide the exact component name (e.g., VJoyButton).',
|
|
7
|
+
description: 'Retrieves detailed information about a specific Joy Vue3 component including description, category, props, events, slots, and exposed members. Provide the exact component name (e.g., VJoyButton).',
|
|
8
8
|
inputSchema: {
|
|
9
9
|
type: 'object',
|
|
10
10
|
properties: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-component-info.js","sourceRoot":"","sources":["../../src/tools/get-component-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAiB,MAAM,cAAc,CAAC;AAEjE;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"get-component-info.js","sourceRoot":"","sources":["../../src/tools/get-component-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAiB,MAAM,cAAc,CAAC;AAEjE;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG;IAClC,IAAI,EAAE,wBAAwB;IAC9B,WAAW,EAAE,qMAAqM;IAClN,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,aAAa,EAAE;gBACb,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,gEAAgE;aAC9E;SACF;QACD,QAAQ,EAAE,CAAC,eAAe,CAAC;KAC5B;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,aAAqB;IAChE,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;QACxD,OAAO;YACL,KAAK,EAAE,mFAAmF;SAC3F,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAExD,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO;YACL,KAAK,EAAE,cAAc,aAAa,6EAA6E;SAChH,CAAC;IACJ,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -14,8 +14,5 @@ export declare const listComponentsTool: {
|
|
|
14
14
|
/**
|
|
15
15
|
* Handler for the list components tool
|
|
16
16
|
*/
|
|
17
|
-
export declare function handleListComponents(): Promise<
|
|
18
|
-
components: ComponentSummary[];
|
|
19
|
-
count: number;
|
|
20
|
-
}>;
|
|
17
|
+
export declare function handleListComponents(): Promise<Record<string, Array<Pick<ComponentSummary, 'name' | 'description'>>>>;
|
|
21
18
|
//# sourceMappingURL=list-components.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-components.d.ts","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;CAQ9B,CAAC;AAEF;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC
|
|
1
|
+
{"version":3,"file":"list-components.d.ts","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;CAQ9B,CAAC;AAEF;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,gBAAgB,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CA0B3H"}
|
|
@@ -4,7 +4,7 @@ import { parseComponentSummaries } from '../parser.js';
|
|
|
4
4
|
*/
|
|
5
5
|
export const listComponentsTool = {
|
|
6
6
|
name: 'joy_list_components',
|
|
7
|
-
description: 'Lists all available Joy Vue3 components from the @maltjoy/core-vue library
|
|
7
|
+
description: 'Lists all available Joy Vue3 components from the @maltjoy/core-vue library as a flat object keyed by category name. Each entry contains components with their name and description.',
|
|
8
8
|
inputSchema: {
|
|
9
9
|
type: 'object',
|
|
10
10
|
properties: {},
|
|
@@ -16,9 +16,26 @@ export const listComponentsTool = {
|
|
|
16
16
|
*/
|
|
17
17
|
export async function handleListComponents() {
|
|
18
18
|
const components = parseComponentSummaries();
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
19
|
+
const categoriesByName = new Map();
|
|
20
|
+
for (const component of components) {
|
|
21
|
+
const categoryName = component.category || 'Uncategorized';
|
|
22
|
+
const bucket = categoriesByName.get(categoryName);
|
|
23
|
+
const componentSummary = {
|
|
24
|
+
name: component.name,
|
|
25
|
+
description: component.description
|
|
26
|
+
};
|
|
27
|
+
if (bucket) {
|
|
28
|
+
bucket.push(componentSummary);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
categoriesByName.set(categoryName, [componentSummary]);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return Object.fromEntries(Array.from(categoriesByName.entries())
|
|
35
|
+
.sort(([left], [right]) => left.localeCompare(right))
|
|
36
|
+
.map(([name, categoryComponents]) => [
|
|
37
|
+
name,
|
|
38
|
+
categoryComponents.sort((left, right) => left.name.localeCompare(right.name))
|
|
39
|
+
]));
|
|
23
40
|
}
|
|
24
41
|
//# sourceMappingURL=list-components.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-components.js","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAyB,MAAM,cAAc,CAAC;AAE9E;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"list-components.js","sourceRoot":"","sources":["../../src/tools/list-components.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,uBAAuB,EAAyB,MAAM,cAAc,CAAC;AAE9E;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,qBAAqB;IAC3B,WAAW,EAAE,qLAAqL;IAClM,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE,EAAE;QACd,QAAQ,EAAE,EAAE;KACb;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,UAAU,GAAG,uBAAuB,EAAE,CAAC;IAC7C,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAiE,CAAC;IAElG,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,MAAM,YAAY,GAAG,SAAS,CAAC,QAAQ,IAAI,eAAe,CAAC;QAC3D,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAClD,MAAM,gBAAgB,GAAG;YACvB,IAAI,EAAE,SAAS,CAAC,IAAI;YACpB,WAAW,EAAE,SAAS,CAAC,WAAW;SACnC,CAAC;QACF,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAChC,CAAC;aAAM,CAAC;YACN,gBAAgB,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,WAAW,CACvB,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC;SACrC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;SACpD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,kBAAkB,CAAC,EAAE,EAAE,CAAC;QACnC,IAAI;QACJ,kBAAkB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;KAC9E,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@maltjoy/mcp-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "MCP server for Joy Design System - exposes Vue3 components information",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"build": "tsc && npm run generate:components-docs:json",
|
|
15
15
|
"dev": "tsc --watch",
|
|
16
16
|
"start": "node dist/index.js",
|
|
17
|
-
"generate:components-docs:json": "
|
|
17
|
+
"generate:components-docs:json": "tsx src/json-metadata-generator.mjs",
|
|
18
18
|
"inspector": "pnpx @modelcontextprotocol/inspector node ./dist/index.js"
|
|
19
19
|
},
|
|
20
20
|
"keywords": [
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
},
|
|
32
32
|
"devDependencies": {
|
|
33
33
|
"@types/node": "20.14.2",
|
|
34
|
+
"tsx": "^4.21.0",
|
|
34
35
|
"typescript": "5.3.3",
|
|
35
36
|
"vue-component-meta": "3.1.5"
|
|
36
37
|
}
|