@czi-sds/mcp 0.2.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/data/component-props/Accordion.json +14 -15
- package/data/component-props/Alert.json +2 -44
- package/data/component-props/Autocomplete.json +14 -32
- package/data/component-props/Banner.json +11 -12
- package/data/component-props/Button.json +17 -82
- package/data/component-props/ButtonDropdown.json +26 -0
- package/data/component-props/ButtonIcon.json +4 -60
- package/data/component-props/ButtonToggle.json +2 -66
- package/data/component-props/Callout.json +11 -65
- package/data/component-props/CellBasic.json +28 -56
- package/data/component-props/CellComponent.json +4 -32
- package/data/component-props/CellHeader.json +13 -49
- package/data/component-props/ComplexFilter.json +24 -4
- package/data/component-props/ContentCard.json +66 -2
- package/data/component-props/Dialog.json +26 -0
- package/data/component-props/Dropdown.json +29 -67
- package/data/component-props/DropdownMenu.json +16 -56
- package/data/component-props/HeatmapChart.json +6 -87
- package/data/component-props/Icon.json +3 -8
- package/data/component-props/InputCheckbox.json +5 -53
- package/data/component-props/InputDropdown.json +11 -33
- package/data/component-props/InputRadio.json +5 -53
- package/data/component-props/InputSearch.json +6 -70
- package/data/component-props/InputSlider.json +21 -35
- package/data/component-props/InputText.json +7 -63
- package/data/component-props/InputToggle.json +5 -54
- package/data/component-props/Link.json +18 -0
- package/data/component-props/LoadingIndicator.json +1 -2
- package/data/component-props/MenuItem.json +11 -41
- package/data/component-props/MenuSelect.json +4 -67
- package/data/component-props/NavigationFooter.json +0 -8
- package/data/component-props/NavigationHeader.json +14 -65
- package/data/component-props/NavigationJumpTo.json +0 -40
- package/data/component-props/Notification.json +14 -58
- package/data/component-props/Pagination.json +8 -33
- package/data/component-props/Panel.json +4 -54
- package/data/component-props/SegmentedControl.json +0 -55
- package/data/component-props/TableRow.json +10 -38
- package/data/component-props/Tabs.json +18 -0
- package/data/component-props/Tag.json +10 -56
- package/data/component-props/TagFilter.json +0 -47
- package/data/component-props/Tooltip.json +12 -61
- package/data/component-props/TooltipCondensed.json +18 -0
- package/data/component-props/TooltipTable.json +0 -4
- package/data/zeroheight-cache.json +5195 -0
- package/data/zeroheight-exports/Accordion.md +717 -0
- package/data/zeroheight-exports/Banner.md +599 -0
- package/data/zeroheight-exports/Borders.md +117 -0
- package/data/zeroheight-exports/Buttons.md +2305 -0
- package/data/zeroheight-exports/Callout.md +778 -0
- package/data/zeroheight-exports/Colors.md +632 -0
- package/data/zeroheight-exports/Content-Card.md +161 -0
- package/data/zeroheight-exports/Contributing-to-SDS.md +98 -0
- package/data/zeroheight-exports/Control-Inputs.md +2121 -0
- package/data/zeroheight-exports/Corners.md +111 -0
- package/data/zeroheight-exports/Cover-page.md +3 -0
- package/data/zeroheight-exports/Dialog.md +1191 -0
- package/data/zeroheight-exports/Downloads.md +120 -0
- package/data/zeroheight-exports/Drop-Shadows.md +79 -0
- package/data/zeroheight-exports/Dropdown-Input.md +1180 -0
- package/data/zeroheight-exports/Dropdown-Menu.md +3883 -0
- package/data/zeroheight-exports/Element-Status-Tracker.md +267 -0
- package/data/zeroheight-exports/Field-Inputs.md +984 -0
- package/data/zeroheight-exports/Filters.md +888 -0
- package/data/zeroheight-exports/Getting-Started.md +1159 -0
- package/data/zeroheight-exports/Hero.md +262 -0
- package/data/zeroheight-exports/Icons.md +431 -0
- package/data/zeroheight-exports/Intent.md +46 -0
- package/data/zeroheight-exports/Introduction-to-Bases.md +35 -0
- package/data/zeroheight-exports/Introduction-to-Cells.md +35 -0
- package/data/zeroheight-exports/Introduction-to-DNA.md +35 -0
- package/data/zeroheight-exports/Introduction-to-Genes.md +35 -0
- package/data/zeroheight-exports/Introduction.md +115 -0
- package/data/zeroheight-exports/Link.md +386 -0
- package/data/zeroheight-exports/Lists.md +632 -0
- package/data/zeroheight-exports/Loading-Indicator.md +37 -0
- package/data/zeroheight-exports/Navigation.md +874 -0
- package/data/zeroheight-exports/Notification.md +888 -0
- package/data/zeroheight-exports/Panel.md +978 -0
- package/data/zeroheight-exports/README.md +124 -0
- package/data/zeroheight-exports/Responsive-Design.md +278 -0
- package/data/zeroheight-exports/Search-Input.md +53 -0
- package/data/zeroheight-exports/Search.md +592 -0
- package/data/zeroheight-exports/Segmented-Control.md +584 -0
- package/data/zeroheight-exports/Spacing.md +297 -0
- package/data/zeroheight-exports/Table.md +4944 -0
- package/data/zeroheight-exports/Tabs.md +801 -0
- package/data/zeroheight-exports/Tags.md +1055 -0
- package/data/zeroheight-exports/Text-Link.md +184 -0
- package/data/zeroheight-exports/Theming.md +332 -0
- package/data/zeroheight-exports/Tooltips.md +1580 -0
- package/data/zeroheight-exports/Typography.md +768 -0
- package/dist/stdio.js +193 -93
- package/package.json +4 -4
- package/data/component-props/Chip.json +0 -73
- package/data/component-props/List.json +0 -43
- package/data/component-props/Menu.json +0 -48
- package/data/component-props/Table.json +0 -26
- package/data/component-props-storybook/Accordion-storybook.json +0 -45
- package/data/component-props-storybook/Alert-storybook.json +0 -30
- package/data/component-props-storybook/Autocomplete-storybook.json +0 -67
- package/data/component-props-storybook/Banner-storybook.json +0 -78
- package/data/component-props-storybook/Button-storybook.json +0 -115
- package/data/component-props-storybook/ButtonDropdown-storybook.json +0 -73
- package/data/component-props-storybook/ButtonIcon-storybook.json +0 -60
- package/data/component-props-storybook/ButtonToggle-storybook.json +0 -68
- package/data/component-props-storybook/Callout-storybook.json +0 -90
- package/data/component-props-storybook/CellBasic-storybook.json +0 -138
- package/data/component-props-storybook/CellComponent-storybook.json +0 -48
- package/data/component-props-storybook/CellHeader-storybook.json +0 -71
- package/data/component-props-storybook/Chip-storybook.json +0 -26
- package/data/component-props-storybook/ComplexFilter-storybook.json +0 -60
- package/data/component-props-storybook/ContentCard-storybook.json +0 -175
- package/data/component-props-storybook/Dialog-storybook.json +0 -56
- package/data/component-props-storybook/Dropdown-storybook.json +0 -93
- package/data/component-props-storybook/DropdownMenu-storybook.json +0 -73
- package/data/component-props-storybook/HeatmapChart-storybook.json +0 -55
- package/data/component-props-storybook/Icon-storybook.json +0 -75
- package/data/component-props-storybook/InputCheckbox-storybook.json +0 -57
- package/data/component-props-storybook/InputDropdown-storybook.json +0 -80
- package/data/component-props-storybook/InputRadio-storybook.json +0 -56
- package/data/component-props-storybook/InputSearch-storybook.json +0 -55
- package/data/component-props-storybook/InputSlider-storybook.json +0 -55
- package/data/component-props-storybook/InputText-storybook.json +0 -59
- package/data/component-props-storybook/InputToggle-storybook.json +0 -42
- package/data/component-props-storybook/Link-storybook.json +0 -50
- package/data/component-props-storybook/List-storybook.json +0 -26
- package/data/component-props-storybook/LoadingIndicator-storybook.json +0 -34
- package/data/component-props-storybook/Menu-storybook.json +0 -26
- package/data/component-props-storybook/MenuItem-storybook.json +0 -74
- package/data/component-props-storybook/MenuSelect-storybook.json +0 -38
- package/data/component-props-storybook/NavigationFooter-storybook.json +0 -67
- package/data/component-props-storybook/NavigationHeader-storybook.json +0 -115
- package/data/component-props-storybook/NavigationJumpTo-storybook.json +0 -41
- package/data/component-props-storybook/Notification-storybook.json +0 -89
- package/data/component-props-storybook/Pagination-storybook.json +0 -50
- package/data/component-props-storybook/Panel-storybook.json +0 -52
- package/data/component-props-storybook/SegmentedControl-storybook.json +0 -30
- package/data/component-props-storybook/Table-storybook.json +0 -26
- package/data/component-props-storybook/TableHeader-storybook.json +0 -26
- package/data/component-props-storybook/TableRow-storybook.json +0 -62
- package/data/component-props-storybook/Tabs-storybook.json +0 -45
- package/data/component-props-storybook/Tag-storybook.json +0 -78
- package/data/component-props-storybook/TagFilter-storybook.json +0 -30
- package/data/component-props-storybook/Tooltip-storybook.json +0 -85
- package/data/component-props-storybook/TooltipCondensed-storybook.json +0 -38
- package/data/component-props-storybook/TooltipTable-storybook.json +0 -47
package/dist/stdio.js
CHANGED
|
@@ -81,48 +81,6 @@ async function fetchComponentProps(component) {
|
|
|
81
81
|
);
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
|
-
async function fetchComponentPropsStorybook(component) {
|
|
85
|
-
try {
|
|
86
|
-
const propsPaths = [
|
|
87
|
-
path.join(
|
|
88
|
-
dirname,
|
|
89
|
-
`../../data/component-props-storybook/${component}-storybook.json`
|
|
90
|
-
),
|
|
91
|
-
// From src/lib in dev
|
|
92
|
-
path.join(
|
|
93
|
-
dirname,
|
|
94
|
-
`../data/component-props-storybook/${component}-storybook.json`
|
|
95
|
-
),
|
|
96
|
-
// From dist in prod
|
|
97
|
-
path.join(
|
|
98
|
-
process.cwd(),
|
|
99
|
-
`data/component-props-storybook/${component}-storybook.json`
|
|
100
|
-
)
|
|
101
|
-
// From current working directory
|
|
102
|
-
];
|
|
103
|
-
let propsPath = "";
|
|
104
|
-
for (const p of propsPaths) {
|
|
105
|
-
if (fs.existsSync(p)) {
|
|
106
|
-
propsPath = p;
|
|
107
|
-
break;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
if (!propsPath) {
|
|
111
|
-
return {
|
|
112
|
-
[component]: {
|
|
113
|
-
message: "Props information not available for this component. Run 'yarn generate:component-props' to generate props data.",
|
|
114
|
-
props: {}
|
|
115
|
-
}
|
|
116
|
-
};
|
|
117
|
-
}
|
|
118
|
-
const fileContent = fs.readFileSync(propsPath, "utf-8");
|
|
119
|
-
return JSON.parse(fileContent);
|
|
120
|
-
} catch (error) {
|
|
121
|
-
throw new Error(
|
|
122
|
-
`Failed to load props for ${component}: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
123
|
-
);
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
84
|
async function fetchTailwindTokens() {
|
|
127
85
|
try {
|
|
128
86
|
const possiblePaths = [
|
|
@@ -234,56 +192,6 @@ var listComponentsTool = {
|
|
|
234
192
|
});
|
|
235
193
|
}
|
|
236
194
|
};
|
|
237
|
-
var getComponentPropsStorybookTool = {
|
|
238
|
-
name: "get_component_props_storybook",
|
|
239
|
-
description: "Get detailed properties of a specific SDS component using Storybook analysis. Unlike the regular get-component-props tool, which uses TypeScript analysis, this tool retrieves the properties, attributes, design related props for a component (like sdsStyle, sdsType, sdsSize, etc.), and configuration options available for a given SDS component from Storybook.",
|
|
240
|
-
async ctx() {
|
|
241
|
-
try {
|
|
242
|
-
const componentList = await getAllComponentNames();
|
|
243
|
-
return {
|
|
244
|
-
componentList: [
|
|
245
|
-
...componentList.components,
|
|
246
|
-
...componentList["data-viz"]
|
|
247
|
-
]
|
|
248
|
-
};
|
|
249
|
-
} catch (error) {
|
|
250
|
-
throw new Error(
|
|
251
|
-
`Failed to initialize component props tool: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
252
|
-
);
|
|
253
|
-
}
|
|
254
|
-
},
|
|
255
|
-
exec(server2, { ctx, name, description }) {
|
|
256
|
-
server2.tool(
|
|
257
|
-
name,
|
|
258
|
-
description,
|
|
259
|
-
{
|
|
260
|
-
component: z.enum(ctx.componentList).describe("The name of the SDS component to get properties for")
|
|
261
|
-
},
|
|
262
|
-
async ({ component }) => {
|
|
263
|
-
try {
|
|
264
|
-
const json = await fetchComponentPropsStorybook(component);
|
|
265
|
-
return {
|
|
266
|
-
content: [
|
|
267
|
-
{
|
|
268
|
-
type: "text",
|
|
269
|
-
text: JSON.stringify(json)
|
|
270
|
-
}
|
|
271
|
-
]
|
|
272
|
-
};
|
|
273
|
-
} catch (error) {
|
|
274
|
-
return {
|
|
275
|
-
content: [
|
|
276
|
-
{
|
|
277
|
-
type: "text",
|
|
278
|
-
text: `Failed to get component props for ${component}: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
279
|
-
}
|
|
280
|
-
]
|
|
281
|
-
};
|
|
282
|
-
}
|
|
283
|
-
}
|
|
284
|
-
);
|
|
285
|
-
}
|
|
286
|
-
};
|
|
287
195
|
|
|
288
196
|
// src/lib/tailwind-guidance.ts
|
|
289
197
|
var TAILWIND_TOKEN_GUIDANCE = {
|
|
@@ -632,11 +540,203 @@ var getTailwindTokensTool = {
|
|
|
632
540
|
);
|
|
633
541
|
}
|
|
634
542
|
};
|
|
543
|
+
var filename2 = fileURLToPath(import.meta.url);
|
|
544
|
+
var dirname2 = path.dirname(filename2);
|
|
545
|
+
function mapComponentToFile(componentName, exportedFiles) {
|
|
546
|
+
const componentToFileMap = {
|
|
547
|
+
// Button components
|
|
548
|
+
Button: "Buttons",
|
|
549
|
+
ButtonDropdown: "Buttons",
|
|
550
|
+
ButtonIcon: "Buttons",
|
|
551
|
+
ButtonToggle: "Buttons",
|
|
552
|
+
// Table components
|
|
553
|
+
TableHeader: "Table",
|
|
554
|
+
TableRow: "Table",
|
|
555
|
+
// Input components
|
|
556
|
+
InputCheckbox: "Control-Inputs",
|
|
557
|
+
InputRadio: "Control-Inputs",
|
|
558
|
+
InputToggle: "Control-Inputs",
|
|
559
|
+
InputText: "Field-Inputs",
|
|
560
|
+
InputDropdown: "Dropdown-Input",
|
|
561
|
+
InputSearch: "Search-Input",
|
|
562
|
+
InputSlider: "Control-Inputs",
|
|
563
|
+
// Dropdown components
|
|
564
|
+
Dropdown: "Dropdown-Menu",
|
|
565
|
+
DropdownMenu: "Dropdown-Menu",
|
|
566
|
+
// Content components
|
|
567
|
+
ContentCard: "Content-Card",
|
|
568
|
+
LoadingIndicator: "Loading-Indicator",
|
|
569
|
+
// Navigation components
|
|
570
|
+
NavigationFooter: "Navigation",
|
|
571
|
+
NavigationHeader: "Navigation",
|
|
572
|
+
NavigationJumpTo: "Navigation",
|
|
573
|
+
// Control components
|
|
574
|
+
SegmentedControl: "Segmented-Control",
|
|
575
|
+
// List and menu components
|
|
576
|
+
List: "Lists",
|
|
577
|
+
Menu: "Dropdown-Menu",
|
|
578
|
+
MenuItem: "Dropdown-Menu",
|
|
579
|
+
MenuSelect: "Dropdown-Menu",
|
|
580
|
+
// Tag components
|
|
581
|
+
Tag: "Tags",
|
|
582
|
+
TagFilter: "Tags",
|
|
583
|
+
// Tooltip components
|
|
584
|
+
Tooltip: "Tooltips",
|
|
585
|
+
TooltipCondensed: "Tooltips",
|
|
586
|
+
TooltipTable: "Tooltips",
|
|
587
|
+
// Table Cell components
|
|
588
|
+
CellBasic: "Table",
|
|
589
|
+
CellComponent: "Table",
|
|
590
|
+
CellHeader: "Table",
|
|
591
|
+
// Filter components
|
|
592
|
+
ComplexFilter: "Filters",
|
|
593
|
+
// Other components
|
|
594
|
+
Icon: "Icons",
|
|
595
|
+
Chip: "Tags",
|
|
596
|
+
// Chips are often similar to tags
|
|
597
|
+
Pagination: "Navigation"
|
|
598
|
+
// Pagination is often part of navigation
|
|
599
|
+
};
|
|
600
|
+
const mappedFile = componentToFileMap[componentName];
|
|
601
|
+
if (mappedFile && exportedFiles.includes(mappedFile)) {
|
|
602
|
+
return `${mappedFile}.md`;
|
|
603
|
+
}
|
|
604
|
+
if (exportedFiles.includes(componentName)) {
|
|
605
|
+
return `${componentName}.md`;
|
|
606
|
+
}
|
|
607
|
+
return null;
|
|
608
|
+
}
|
|
609
|
+
function getExportedFiles() {
|
|
610
|
+
try {
|
|
611
|
+
const possiblePaths = [
|
|
612
|
+
path.join(dirname2, "../../data/zeroheight-exports"),
|
|
613
|
+
// From src/lib in dev
|
|
614
|
+
path.join(dirname2, "../data/zeroheight-exports"),
|
|
615
|
+
// From dist in prod
|
|
616
|
+
path.join(process.cwd(), "data/zeroheight-exports")
|
|
617
|
+
// From current working directory
|
|
618
|
+
];
|
|
619
|
+
let exportDir = "";
|
|
620
|
+
for (const p of possiblePaths) {
|
|
621
|
+
if (fs.existsSync(p)) {
|
|
622
|
+
exportDir = p;
|
|
623
|
+
break;
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
if (!exportDir) {
|
|
627
|
+
console.warn(
|
|
628
|
+
"Export directory not found in any expected location. Please run Zeroheight export first."
|
|
629
|
+
);
|
|
630
|
+
return [];
|
|
631
|
+
}
|
|
632
|
+
const files = fs.readdirSync(exportDir).filter((file) => file.endsWith(".md") && file !== "README.md").map((file) => file.replace(".md", ""));
|
|
633
|
+
return files;
|
|
634
|
+
} catch (error) {
|
|
635
|
+
console.warn("Could not read exported files:", error);
|
|
636
|
+
return [];
|
|
637
|
+
}
|
|
638
|
+
}
|
|
639
|
+
function getComponentsWithDocs(allComponents, exportedFiles) {
|
|
640
|
+
return allComponents.filter((component) => {
|
|
641
|
+
const mappedFile = mapComponentToFile(component, exportedFiles);
|
|
642
|
+
return mappedFile !== null;
|
|
643
|
+
});
|
|
644
|
+
}
|
|
645
|
+
var getComponentDocsTool = {
|
|
646
|
+
name: "get_component_docs",
|
|
647
|
+
description: "Get design system documentation for a specific component. Retrieves the corresponding Zeroheight documentation file for the given component name. Supports all SDS components and maps them to their appropriate documentation files.",
|
|
648
|
+
async ctx() {
|
|
649
|
+
try {
|
|
650
|
+
const componentList = await getAllComponentNames();
|
|
651
|
+
const allComponents = [
|
|
652
|
+
...componentList.components,
|
|
653
|
+
...componentList["data-viz"]
|
|
654
|
+
];
|
|
655
|
+
const exportedFiles = getExportedFiles();
|
|
656
|
+
const componentsWithDocs = getComponentsWithDocs(
|
|
657
|
+
allComponents,
|
|
658
|
+
exportedFiles
|
|
659
|
+
);
|
|
660
|
+
return {
|
|
661
|
+
componentsWithDocs,
|
|
662
|
+
exportedFiles
|
|
663
|
+
};
|
|
664
|
+
} catch (error) {
|
|
665
|
+
throw new Error(
|
|
666
|
+
`Failed to initialize get component docs tool: ${error instanceof Error ? error.message : "Unknown error"}`
|
|
667
|
+
);
|
|
668
|
+
}
|
|
669
|
+
},
|
|
670
|
+
exec(server2, { ctx, name, description }) {
|
|
671
|
+
server2.tool(
|
|
672
|
+
name,
|
|
673
|
+
description,
|
|
674
|
+
{
|
|
675
|
+
component: z.enum(ctx.componentsWithDocs).describe("The name of the SDS component to get documentation for")
|
|
676
|
+
},
|
|
677
|
+
async ({ component }) => {
|
|
678
|
+
try {
|
|
679
|
+
const mappedFile = mapComponentToFile(component, ctx.exportedFiles);
|
|
680
|
+
if (!mappedFile) {
|
|
681
|
+
return {
|
|
682
|
+
content: [
|
|
683
|
+
{
|
|
684
|
+
type: "text",
|
|
685
|
+
text: `No documentation found for component '${component}'. This component may not have design system documentation available.`
|
|
686
|
+
}
|
|
687
|
+
]
|
|
688
|
+
};
|
|
689
|
+
}
|
|
690
|
+
const possiblePaths = [
|
|
691
|
+
path.join(dirname2, "../../data/zeroheight-exports", mappedFile),
|
|
692
|
+
// From src/lib in dev
|
|
693
|
+
path.join(dirname2, "../data/zeroheight-exports", mappedFile),
|
|
694
|
+
// From dist in prod
|
|
695
|
+
path.join(process.cwd(), "data/zeroheight-exports", mappedFile)
|
|
696
|
+
// From current working directory
|
|
697
|
+
];
|
|
698
|
+
let filePath = "";
|
|
699
|
+
for (const p of possiblePaths) {
|
|
700
|
+
if (fs.existsSync(p)) {
|
|
701
|
+
filePath = p;
|
|
702
|
+
break;
|
|
703
|
+
}
|
|
704
|
+
}
|
|
705
|
+
if (!filePath) {
|
|
706
|
+
throw new Error(`Documentation file ${mappedFile} not found`);
|
|
707
|
+
}
|
|
708
|
+
const documentation = fs.readFileSync(filePath, "utf8");
|
|
709
|
+
return {
|
|
710
|
+
content: [
|
|
711
|
+
{
|
|
712
|
+
type: "text",
|
|
713
|
+
text: `# Documentation for ${component}
|
|
714
|
+
|
|
715
|
+
Source: ${mappedFile}
|
|
716
|
+
|
|
717
|
+
${documentation}`
|
|
718
|
+
}
|
|
719
|
+
]
|
|
720
|
+
};
|
|
721
|
+
} catch (error) {
|
|
722
|
+
return {
|
|
723
|
+
content: [
|
|
724
|
+
{
|
|
725
|
+
type: "text",
|
|
726
|
+
text: `Error reading documentation file for '${component}': ${error instanceof Error ? error.message : "Unknown error"}`
|
|
727
|
+
}
|
|
728
|
+
]
|
|
729
|
+
};
|
|
730
|
+
}
|
|
731
|
+
}
|
|
732
|
+
);
|
|
733
|
+
}
|
|
734
|
+
};
|
|
635
735
|
|
|
636
736
|
// src/tools/index.ts
|
|
637
737
|
var tools = [
|
|
638
738
|
getComponentPropsTool,
|
|
639
|
-
|
|
739
|
+
getComponentDocsTool,
|
|
640
740
|
listComponentsTool,
|
|
641
741
|
getTailwindTokensTool
|
|
642
742
|
];
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@czi-sds/mcp",
|
|
3
3
|
"description": "The official MCP server for SDS",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.4.0",
|
|
5
5
|
"main": "dist/stdio.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist",
|
|
@@ -22,8 +22,8 @@
|
|
|
22
22
|
"generate:tailwind-tokens": "mkdir -p data && cp ../components/src/common/styles-dictionary/json/tailwind.json data/tailwind.json && echo '✓ Copied tailwind.json to data folder'",
|
|
23
23
|
"generate:components-list": "tsx scripts/generate-component-list.ts",
|
|
24
24
|
"generate:component-props": "tsx scripts/generate-component-props.ts",
|
|
25
|
-
"generate:
|
|
26
|
-
"generate:all": "yarn generate:tailwind-tokens && yarn generate:components-list && yarn generate:component-props && yarn generate:
|
|
25
|
+
"generate:zeroheight-export": "tsx scripts/export-zeroheight-pages.ts",
|
|
26
|
+
"generate:all": "yarn generate:tailwind-tokens && yarn generate:components-list && yarn generate:component-props && yarn generate:zeroheight-export",
|
|
27
27
|
"prebuild": "yarn generate:all",
|
|
28
28
|
"build": "yarn prebuild && tsup && chmod 755 dist/stdio.js",
|
|
29
29
|
"dev": "tsup --watch",
|
|
@@ -62,5 +62,5 @@
|
|
|
62
62
|
"tsx": "^4.20.3",
|
|
63
63
|
"typescript": "^5.9.2"
|
|
64
64
|
},
|
|
65
|
-
"gitHead": "
|
|
65
|
+
"gitHead": "1545afb7ac457bc1dab40856fe5d5b7e22186318"
|
|
66
66
|
}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Chip": {
|
|
3
|
-
"props": {
|
|
4
|
-
"size": {
|
|
5
|
-
"type": "\"small\" | \"medium\"",
|
|
6
|
-
"isRequired": false,
|
|
7
|
-
"description": "The size of the component.",
|
|
8
|
-
"defaultValue": "medium"
|
|
9
|
-
},
|
|
10
|
-
"status": {
|
|
11
|
-
"type": "\"success\" | \"error\" | \"warning\" | \"info\" | \"pending\" | \"beta\"",
|
|
12
|
-
"isRequired": false
|
|
13
|
-
},
|
|
14
|
-
"isRounded": {
|
|
15
|
-
"type": "\"false\" | \"true\"",
|
|
16
|
-
"isRequired": false
|
|
17
|
-
},
|
|
18
|
-
"children": {
|
|
19
|
-
"type": "null",
|
|
20
|
-
"isRequired": false,
|
|
21
|
-
"description": "This prop isn't supported.\nUse the `component` prop if you need to change the children structure."
|
|
22
|
-
},
|
|
23
|
-
"color": {
|
|
24
|
-
"type": "\"success\" | \"error\" | \"warning\" | \"info\" | \"default\" | \"primary\" | \"secondary\"",
|
|
25
|
-
"isRequired": false,
|
|
26
|
-
"description": "The color of the component.\nIt supports both default and custom theme colors, which can be added as shown in the\n[palette customization guide](https://mui.com/material-ui/customization/palette/#custom-colors).",
|
|
27
|
-
"defaultValue": "default"
|
|
28
|
-
},
|
|
29
|
-
"disabled": {
|
|
30
|
-
"type": "\"false\" | \"true\"",
|
|
31
|
-
"isRequired": false,
|
|
32
|
-
"description": "If `true`, the component is disabled.",
|
|
33
|
-
"defaultValue": false
|
|
34
|
-
},
|
|
35
|
-
"icon": {
|
|
36
|
-
"type": "ReactElement",
|
|
37
|
-
"isRequired": false,
|
|
38
|
-
"description": "Icon element."
|
|
39
|
-
},
|
|
40
|
-
"label": {
|
|
41
|
-
"type": "ReactNode",
|
|
42
|
-
"isRequired": false,
|
|
43
|
-
"description": "The content of the component."
|
|
44
|
-
},
|
|
45
|
-
"variant": {
|
|
46
|
-
"type": "\"filled\" | \"outlined\"",
|
|
47
|
-
"isRequired": false,
|
|
48
|
-
"description": "The variant to use.",
|
|
49
|
-
"defaultValue": "filled"
|
|
50
|
-
},
|
|
51
|
-
"className": {
|
|
52
|
-
"type": "string",
|
|
53
|
-
"isRequired": false
|
|
54
|
-
},
|
|
55
|
-
"style": {
|
|
56
|
-
"type": "CSSProperties",
|
|
57
|
-
"isRequired": false
|
|
58
|
-
},
|
|
59
|
-
"id": {
|
|
60
|
-
"type": "string",
|
|
61
|
-
"isRequired": false
|
|
62
|
-
},
|
|
63
|
-
"onChange": {
|
|
64
|
-
"type": "FormEventHandler<HTMLDivElement>",
|
|
65
|
-
"isRequired": false
|
|
66
|
-
},
|
|
67
|
-
"onClick": {
|
|
68
|
-
"type": "function",
|
|
69
|
-
"isRequired": false
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"List": {
|
|
3
|
-
"props": {
|
|
4
|
-
"component": {
|
|
5
|
-
"type": "\"symbol\" | \"object\" | \"style\" | \"ul\" | \"a\" | \"abbr\" | \"address\" | \"area\" | \"article\" | \"aside\" | \"audio\" | \"b\" | \"base\" | \"bdi\" | \"bdo\" | \"big\" | \"blockquote\" | \"body\" | \"br\" | \"button\" | \"canvas\" | \"caption\" | \"center\" | \"cite\" | \"code\" | \"col\" | \"colgroup\" | \"data\" | \"datalist\" | \"dd\" | \"del\" | \"details\" | \"dfn\" | \"dialog\" | \"div\" | \"dl\" | \"dt\" | \"em\" | \"embed\" | \"fieldset\" | \"figcaption\" | \"figure\" | \"footer\" | \"form\" | \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\" | \"head\" | \"header\" | \"hgroup\" | \"hr\" | \"html\" | \"i\" | \"iframe\" | \"img\" | \"input\" | \"ins\" | \"kbd\" | \"keygen\" | \"label\" | \"legend\" | \"li\" | \"link\" | \"main\" | \"map\" | \"mark\" | \"menu\" | \"menuitem\" | \"meta\" | \"meter\" | \"nav\" | \"noindex\" | \"noscript\" | \"ol\" | \"optgroup\" | \"option\" | \"output\" | \"p\" | \"param\" | \"picture\" | \"pre\" | \"progress\" | \"q\" | \"rp\" | \"rt\" | \"ruby\" | \"s\" | \"samp\" | \"search\" | \"slot\" | \"script\" | \"section\" | \"select\" | \"small\" | \"source\" | \"span\" | \"strong\" | \"sub\" | \"summary\" | \"sup\" | \"table\" | \"template\" | \"tbody\" | \"td\" | \"textarea\" | \"tfoot\" | \"th\" | \"thead\" | \"time\" | \"title\" | \"tr\" | \"track\" | \"u\" | \"var\" | \"video\" | \"wbr\" | \"webview\" | \"svg\" | \"animate\" | \"animateMotion\" | \"animateTransform\" | \"circle\" | \"clipPath\" | \"defs\" | \"desc\" | \"ellipse\" | \"feBlend\" | \"feColorMatrix\" | \"feComponentTransfer\" | \"feComposite\" | \"feConvolveMatrix\" | \"feDiffuseLighting\" | \"feDisplacementMap\" | \"feDistantLight\" | \"feDropShadow\" | \"feFlood\" | \"feFuncA\" | \"feFuncB\" | \"feFuncG\" | \"feFuncR\" | \"feGaussianBlur\" | \"feImage\" | \"feMerge\" | \"feMergeNode\" | \"feMorphology\" | \"feOffset\" | \"fePointLight\" | \"feSpecularLighting\" | \"feSpotLight\" | \"feTile\" | \"feTurbulence\" | \"filter\" | \"foreignObject\" | \"g\" | \"image\" | \"line\" | \"linearGradient\" | \"marker\" | \"mask\" | \"metadata\" | \"mpath\" | \"path\" | \"pattern\" | \"polygon\" | \"polyline\" | \"radialGradient\" | \"rect\" | \"set\" | \"stop\" | \"switch\" | \"text\" | \"textPath\" | \"tspan\" | \"use\" | \"view\" | \"ComponentClass",
|
|
6
|
-
"isRequired": false
|
|
7
|
-
},
|
|
8
|
-
"marginBottom": {
|
|
9
|
-
"type": "\"s\" | \"xxxs\" | \"xxs\" | \"xs\" | \"m\" | \"l\"",
|
|
10
|
-
"isRequired": false
|
|
11
|
-
},
|
|
12
|
-
"ordered": {
|
|
13
|
-
"type": "\"false\" | \"true\"",
|
|
14
|
-
"isRequired": false
|
|
15
|
-
},
|
|
16
|
-
"children": {
|
|
17
|
-
"type": "ReactNode",
|
|
18
|
-
"isRequired": false,
|
|
19
|
-
"description": "The content of the component."
|
|
20
|
-
},
|
|
21
|
-
"className": {
|
|
22
|
-
"type": "string",
|
|
23
|
-
"isRequired": false
|
|
24
|
-
},
|
|
25
|
-
"style": {
|
|
26
|
-
"type": "CSSProperties",
|
|
27
|
-
"isRequired": false
|
|
28
|
-
},
|
|
29
|
-
"id": {
|
|
30
|
-
"type": "string",
|
|
31
|
-
"isRequired": false
|
|
32
|
-
},
|
|
33
|
-
"onChange": {
|
|
34
|
-
"type": "FormEventHandler<HTMLUListElement>",
|
|
35
|
-
"isRequired": false
|
|
36
|
-
},
|
|
37
|
-
"onClick": {
|
|
38
|
-
"type": "function",
|
|
39
|
-
"isRequired": false
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Menu": {
|
|
3
|
-
"props": {
|
|
4
|
-
"children": {
|
|
5
|
-
"type": "ReactNode",
|
|
6
|
-
"isRequired": false,
|
|
7
|
-
"description": "Menu contents, normally `MenuItem`s."
|
|
8
|
-
},
|
|
9
|
-
"onClose": {
|
|
10
|
-
"type": "\"backdropClick\" | \"escapeKeyDown\"",
|
|
11
|
-
"isRequired": false,
|
|
12
|
-
"description": "Callback fired when the component requests to be closed.\n@param event The event source of the callback.\n@param reason Can be: `\"escapeKeyDown\"`, `\"backdropClick\"`, `\"tabKeyDown\"`."
|
|
13
|
-
},
|
|
14
|
-
"open": {
|
|
15
|
-
"type": "\"false\" | \"true\"",
|
|
16
|
-
"isRequired": true,
|
|
17
|
-
"description": "If `true`, the component is shown."
|
|
18
|
-
},
|
|
19
|
-
"variant": {
|
|
20
|
-
"type": "\"menu\" | \"selectedMenu\"",
|
|
21
|
-
"isRequired": false,
|
|
22
|
-
"description": "The variant to use. Use `menu` to prevent selected items from impacting the initial focus.",
|
|
23
|
-
"defaultValue": "selectedMenu"
|
|
24
|
-
},
|
|
25
|
-
"className": {
|
|
26
|
-
"type": "string",
|
|
27
|
-
"isRequired": false,
|
|
28
|
-
"description": "@ignore"
|
|
29
|
-
},
|
|
30
|
-
"style": {
|
|
31
|
-
"type": "CSSProperties",
|
|
32
|
-
"isRequired": false
|
|
33
|
-
},
|
|
34
|
-
"id": {
|
|
35
|
-
"type": "string",
|
|
36
|
-
"isRequired": false
|
|
37
|
-
},
|
|
38
|
-
"onChange": {
|
|
39
|
-
"type": "FormEventHandler<HTMLDivElement>",
|
|
40
|
-
"isRequired": false
|
|
41
|
-
},
|
|
42
|
-
"onClick": {
|
|
43
|
-
"type": "function",
|
|
44
|
-
"isRequired": false
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Table": {
|
|
3
|
-
"props": {
|
|
4
|
-
"className": {
|
|
5
|
-
"type": "string",
|
|
6
|
-
"isRequired": false
|
|
7
|
-
},
|
|
8
|
-
"id": {
|
|
9
|
-
"type": "string",
|
|
10
|
-
"isRequired": false
|
|
11
|
-
},
|
|
12
|
-
"style": {
|
|
13
|
-
"type": "CSSProperties",
|
|
14
|
-
"isRequired": false
|
|
15
|
-
},
|
|
16
|
-
"onChange": {
|
|
17
|
-
"type": "FormEventHandler<HTMLTableElement>",
|
|
18
|
-
"isRequired": false
|
|
19
|
-
},
|
|
20
|
-
"onClick": {
|
|
21
|
-
"type": "function",
|
|
22
|
-
"isRequired": false
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Accordion": {
|
|
3
|
-
"props": {
|
|
4
|
-
"defaultExpanded": {
|
|
5
|
-
"type": "boolean",
|
|
6
|
-
"isRequired": false
|
|
7
|
-
},
|
|
8
|
-
"id": {
|
|
9
|
-
"type": "string",
|
|
10
|
-
"isRequired": true
|
|
11
|
-
},
|
|
12
|
-
"subtitle": {
|
|
13
|
-
"type": "string",
|
|
14
|
-
"isRequired": false
|
|
15
|
-
},
|
|
16
|
-
"togglePosition": {
|
|
17
|
-
"type": "\"right\" | \"left\"",
|
|
18
|
-
"isRequired": false,
|
|
19
|
-
"options": [
|
|
20
|
-
"right",
|
|
21
|
-
"left"
|
|
22
|
-
]
|
|
23
|
-
},
|
|
24
|
-
"useDivider": {
|
|
25
|
-
"type": "boolean",
|
|
26
|
-
"isRequired": false
|
|
27
|
-
},
|
|
28
|
-
"className": {
|
|
29
|
-
"type": "string",
|
|
30
|
-
"isRequired": false,
|
|
31
|
-
"description": "Standard React className prop"
|
|
32
|
-
},
|
|
33
|
-
"style": {
|
|
34
|
-
"type": "CSSProperties",
|
|
35
|
-
"isRequired": false,
|
|
36
|
-
"description": "Standard React style prop"
|
|
37
|
-
},
|
|
38
|
-
"children": {
|
|
39
|
-
"type": "ReactNode",
|
|
40
|
-
"isRequired": false,
|
|
41
|
-
"description": "Standard React children prop"
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Alert": {
|
|
3
|
-
"props": {
|
|
4
|
-
"text": {
|
|
5
|
-
"type": "string",
|
|
6
|
-
"isRequired": true
|
|
7
|
-
},
|
|
8
|
-
"className": {
|
|
9
|
-
"type": "string",
|
|
10
|
-
"isRequired": false,
|
|
11
|
-
"description": "Standard React className prop"
|
|
12
|
-
},
|
|
13
|
-
"style": {
|
|
14
|
-
"type": "CSSProperties",
|
|
15
|
-
"isRequired": false,
|
|
16
|
-
"description": "Standard React style prop"
|
|
17
|
-
},
|
|
18
|
-
"children": {
|
|
19
|
-
"type": "ReactNode",
|
|
20
|
-
"isRequired": false,
|
|
21
|
-
"description": "Standard React children prop"
|
|
22
|
-
},
|
|
23
|
-
"id": {
|
|
24
|
-
"type": "string",
|
|
25
|
-
"isRequired": false,
|
|
26
|
-
"description": "Standard React id prop"
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"Autocomplete": {
|
|
3
|
-
"props": {
|
|
4
|
-
"groupBy": {
|
|
5
|
-
"type": "string",
|
|
6
|
-
"isRequired": false
|
|
7
|
-
},
|
|
8
|
-
"intent": {
|
|
9
|
-
"type": "\"default\" | \"negative\" | \"notice\" | \"positive\"",
|
|
10
|
-
"isRequired": false,
|
|
11
|
-
"options": [
|
|
12
|
-
"default",
|
|
13
|
-
"negative",
|
|
14
|
-
"notice",
|
|
15
|
-
"positive"
|
|
16
|
-
]
|
|
17
|
-
},
|
|
18
|
-
"keepSearchOnSelect": {
|
|
19
|
-
"type": "boolean",
|
|
20
|
-
"isRequired": false
|
|
21
|
-
},
|
|
22
|
-
"label": {
|
|
23
|
-
"type": "string",
|
|
24
|
-
"isRequired": false
|
|
25
|
-
},
|
|
26
|
-
"multiple": {
|
|
27
|
-
"type": "boolean",
|
|
28
|
-
"isRequired": false
|
|
29
|
-
},
|
|
30
|
-
"onChange": {
|
|
31
|
-
"type": "string",
|
|
32
|
-
"isRequired": false
|
|
33
|
-
},
|
|
34
|
-
"options": {
|
|
35
|
-
"type": "\"0\" | \"1\" | \"2\" | \"3\" | \"4\"",
|
|
36
|
-
"isRequired": false,
|
|
37
|
-
"options": [
|
|
38
|
-
"0",
|
|
39
|
-
"1",
|
|
40
|
-
"2",
|
|
41
|
-
"3",
|
|
42
|
-
"4"
|
|
43
|
-
]
|
|
44
|
-
},
|
|
45
|
-
"className": {
|
|
46
|
-
"type": "string",
|
|
47
|
-
"isRequired": false,
|
|
48
|
-
"description": "Standard React className prop"
|
|
49
|
-
},
|
|
50
|
-
"style": {
|
|
51
|
-
"type": "CSSProperties",
|
|
52
|
-
"isRequired": false,
|
|
53
|
-
"description": "Standard React style prop"
|
|
54
|
-
},
|
|
55
|
-
"children": {
|
|
56
|
-
"type": "ReactNode",
|
|
57
|
-
"isRequired": false,
|
|
58
|
-
"description": "Standard React children prop"
|
|
59
|
-
},
|
|
60
|
-
"id": {
|
|
61
|
-
"type": "string",
|
|
62
|
-
"isRequired": false,
|
|
63
|
-
"description": "Standard React id prop"
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|