@classic-homes/theme-mcp 0.1.1 → 0.1.3
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/dist/cli.js +749 -2
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +749 -2
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -12,7 +12,6 @@ import { ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
12
12
|
// src/data/component-catalog.json
|
|
13
13
|
var component_catalog_default = {
|
|
14
14
|
version: "0.1.0",
|
|
15
|
-
generated: "2026-01-14T23:23:18.723Z",
|
|
16
15
|
components: [
|
|
17
16
|
{
|
|
18
17
|
name: "Alert",
|
|
@@ -312,6 +311,54 @@ var component_catalog_default = {
|
|
|
312
311
|
"Toast"
|
|
313
312
|
]
|
|
314
313
|
},
|
|
314
|
+
{
|
|
315
|
+
name: "AreaChart",
|
|
316
|
+
description: "Line chart with gradient fill and stacking support",
|
|
317
|
+
category: "chart",
|
|
318
|
+
importPath: "@classic-homes/charts-svelte",
|
|
319
|
+
props: [],
|
|
320
|
+
variants: [],
|
|
321
|
+
slots: [],
|
|
322
|
+
events: [],
|
|
323
|
+
examples: [
|
|
324
|
+
{
|
|
325
|
+
title: "Basic Usage",
|
|
326
|
+
code: `<script>
|
|
327
|
+
import { AreaChart } from '@classic-homes/charts-svelte';
|
|
328
|
+
|
|
329
|
+
const data = {
|
|
330
|
+
categories: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
|
|
331
|
+
series: [
|
|
332
|
+
{ name: 'Email', data: [120, 132, 101, 134, 90, 230, 210] },
|
|
333
|
+
{ name: 'Ads', data: [220, 182, 191, 234, 290, 330, 310] },
|
|
334
|
+
{ name: 'Video', data: [150, 232, 201, 154, 190, 330, 410] },
|
|
335
|
+
],
|
|
336
|
+
};
|
|
337
|
+
</script>
|
|
338
|
+
|
|
339
|
+
<AreaChart title="Weekly Traffic" {data} stacked smooth gradient height={400} />`
|
|
340
|
+
},
|
|
341
|
+
{
|
|
342
|
+
title: "Stacked Area with Gradient",
|
|
343
|
+
code: '<AreaChart title="Traffic Sources" {data} stacked smooth gradient height={400} />'
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
title: "Simple Area Chart",
|
|
347
|
+
code: `<AreaChart
|
|
348
|
+
title="Single Series"
|
|
349
|
+
data={{
|
|
350
|
+
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May'],
|
|
351
|
+
series: [{ name: 'Revenue', data: [100, 150, 120, 180, 200] }],
|
|
352
|
+
}}
|
|
353
|
+
smooth
|
|
354
|
+
/>`
|
|
355
|
+
}
|
|
356
|
+
],
|
|
357
|
+
relatedComponents: [
|
|
358
|
+
"LineChart",
|
|
359
|
+
"BarChart"
|
|
360
|
+
]
|
|
361
|
+
},
|
|
315
362
|
{
|
|
316
363
|
name: "AuthLayout",
|
|
317
364
|
description: "Centered card layout for authentication pages",
|
|
@@ -723,6 +770,50 @@ var component_catalog_default = {
|
|
|
723
770
|
"Button"
|
|
724
771
|
]
|
|
725
772
|
},
|
|
773
|
+
{
|
|
774
|
+
name: "BarChart",
|
|
775
|
+
description: "Compare categories with vertical or horizontal bars",
|
|
776
|
+
category: "chart",
|
|
777
|
+
importPath: "@classic-homes/charts-svelte",
|
|
778
|
+
props: [],
|
|
779
|
+
variants: [],
|
|
780
|
+
slots: [],
|
|
781
|
+
events: [],
|
|
782
|
+
examples: [
|
|
783
|
+
{
|
|
784
|
+
title: "Basic Usage",
|
|
785
|
+
code: `<script>
|
|
786
|
+
import { BarChart } from '@classic-homes/charts-svelte';
|
|
787
|
+
|
|
788
|
+
const data = {
|
|
789
|
+
categories: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],
|
|
790
|
+
series: [
|
|
791
|
+
{ name: 'Sales', data: [320, 332, 301, 334, 390] },
|
|
792
|
+
{ name: 'Returns', data: [120, 132, 101, 134, 90] },
|
|
793
|
+
],
|
|
794
|
+
};
|
|
795
|
+
</script>
|
|
796
|
+
|
|
797
|
+
<BarChart title="Weekly Sales" {data} height={400} />`
|
|
798
|
+
},
|
|
799
|
+
{
|
|
800
|
+
title: "Horizontal Bar Chart",
|
|
801
|
+
code: '<BarChart title="Sales by Region" {data} orientation="horizontal" height={400} />'
|
|
802
|
+
},
|
|
803
|
+
{
|
|
804
|
+
title: "Stacked Bar Chart",
|
|
805
|
+
code: '<BarChart title="Revenue Breakdown" {data} stacked height={400} />'
|
|
806
|
+
},
|
|
807
|
+
{
|
|
808
|
+
title: "With Value Labels",
|
|
809
|
+
code: '<BarChart title="Monthly Performance" {data} showValues height={400} />'
|
|
810
|
+
}
|
|
811
|
+
],
|
|
812
|
+
relatedComponents: [
|
|
813
|
+
"LineChart",
|
|
814
|
+
"FunnelChart"
|
|
815
|
+
]
|
|
816
|
+
},
|
|
726
817
|
{
|
|
727
818
|
name: "Button",
|
|
728
819
|
description: "Clickable button component with multiple variants, sizes, and loading states",
|
|
@@ -893,6 +984,61 @@ var component_catalog_default = {
|
|
|
893
984
|
"Dialog"
|
|
894
985
|
]
|
|
895
986
|
},
|
|
987
|
+
{
|
|
988
|
+
name: "CandlestickChart",
|
|
989
|
+
description: "Financial OHLC data with volume bars",
|
|
990
|
+
category: "chart",
|
|
991
|
+
importPath: "@classic-homes/charts-svelte",
|
|
992
|
+
props: [],
|
|
993
|
+
variants: [],
|
|
994
|
+
slots: [],
|
|
995
|
+
events: [],
|
|
996
|
+
examples: [
|
|
997
|
+
{
|
|
998
|
+
title: "Basic Usage",
|
|
999
|
+
code: `<script>
|
|
1000
|
+
import { CandlestickChart } from '@classic-homes/charts-svelte';
|
|
1001
|
+
|
|
1002
|
+
const data = {
|
|
1003
|
+
dates: ['2024-01', '2024-02', '2024-03', '2024-04'],
|
|
1004
|
+
data: [
|
|
1005
|
+
{ open: 20, close: 34, low: 10, high: 38 },
|
|
1006
|
+
{ open: 40, close: 35, low: 30, high: 50 },
|
|
1007
|
+
{ open: 31, close: 38, low: 28, high: 48 },
|
|
1008
|
+
{ open: 38, close: 30, low: 25, high: 44 },
|
|
1009
|
+
],
|
|
1010
|
+
volume: [100, 120, 90, 140],
|
|
1011
|
+
};
|
|
1012
|
+
</script>
|
|
1013
|
+
|
|
1014
|
+
<CandlestickChart title="Stock Price" {data} showVolume height={400} />`
|
|
1015
|
+
},
|
|
1016
|
+
{
|
|
1017
|
+
title: "With Volume",
|
|
1018
|
+
code: '<CandlestickChart title="AAPL Stock" {data} showVolume height={500} />'
|
|
1019
|
+
},
|
|
1020
|
+
{
|
|
1021
|
+
title: "Without Volume",
|
|
1022
|
+
code: `<CandlestickChart
|
|
1023
|
+
title="Price History"
|
|
1024
|
+
data={{
|
|
1025
|
+
dates: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri'],
|
|
1026
|
+
data: [
|
|
1027
|
+
{ open: 100, close: 110, low: 95, high: 115 },
|
|
1028
|
+
{ open: 110, close: 105, low: 100, high: 120 },
|
|
1029
|
+
{ open: 105, close: 115, low: 102, high: 118 },
|
|
1030
|
+
{ open: 115, close: 108, low: 105, high: 120 },
|
|
1031
|
+
{ open: 108, close: 125, low: 105, high: 128 },
|
|
1032
|
+
],
|
|
1033
|
+
}}
|
|
1034
|
+
/>`
|
|
1035
|
+
}
|
|
1036
|
+
],
|
|
1037
|
+
relatedComponents: [
|
|
1038
|
+
"LineChart",
|
|
1039
|
+
"BarChart"
|
|
1040
|
+
]
|
|
1041
|
+
},
|
|
896
1042
|
{
|
|
897
1043
|
name: "Card",
|
|
898
1044
|
description: "Container component for grouping related content",
|
|
@@ -1750,6 +1896,48 @@ var component_catalog_default = {
|
|
|
1750
1896
|
"DropdownMenu"
|
|
1751
1897
|
]
|
|
1752
1898
|
},
|
|
1899
|
+
{
|
|
1900
|
+
name: "DonutChart",
|
|
1901
|
+
description: "Pie chart variant with center labels for key metrics",
|
|
1902
|
+
category: "chart",
|
|
1903
|
+
importPath: "@classic-homes/charts-svelte",
|
|
1904
|
+
props: [],
|
|
1905
|
+
variants: [],
|
|
1906
|
+
slots: [],
|
|
1907
|
+
events: [],
|
|
1908
|
+
examples: [
|
|
1909
|
+
{
|
|
1910
|
+
title: "Basic Usage",
|
|
1911
|
+
code: `<script>
|
|
1912
|
+
import { DonutChart } from '@classic-homes/charts-svelte';
|
|
1913
|
+
|
|
1914
|
+
const data = [
|
|
1915
|
+
{ name: 'Completed', value: 65 },
|
|
1916
|
+
{ name: 'In Progress', value: 25 },
|
|
1917
|
+
{ name: 'Pending', value: 10 },
|
|
1918
|
+
];
|
|
1919
|
+
</script>
|
|
1920
|
+
|
|
1921
|
+
<DonutChart title="Task Status" {data} centerLabel="Total" centerValue="100" height={400} />`
|
|
1922
|
+
},
|
|
1923
|
+
{
|
|
1924
|
+
title: "Dashboard KPI",
|
|
1925
|
+
code: '<DonutChart title="Budget Usage" {data} centerLabel="Spent" centerValue="$45,000" height={300} />'
|
|
1926
|
+
},
|
|
1927
|
+
{
|
|
1928
|
+
title: "With Labels",
|
|
1929
|
+
code: '<DonutChart title="Category Distribution" {data} showLabels centerLabel="Items" centerValue="156" />'
|
|
1930
|
+
},
|
|
1931
|
+
{
|
|
1932
|
+
title: "Custom Inner Radius",
|
|
1933
|
+
code: '<DonutChart title="Thin Donut" {data} innerRadius="70%" />'
|
|
1934
|
+
}
|
|
1935
|
+
],
|
|
1936
|
+
relatedComponents: [
|
|
1937
|
+
"PieChart",
|
|
1938
|
+
"GaugeChart"
|
|
1939
|
+
]
|
|
1940
|
+
},
|
|
1753
1941
|
{
|
|
1754
1942
|
name: "DropdownMenu",
|
|
1755
1943
|
description: "Contextual menu with items, groups, and keyboard navigation",
|
|
@@ -2726,6 +2914,96 @@ var component_catalog_default = {
|
|
|
2726
2914
|
"PageHeader"
|
|
2727
2915
|
]
|
|
2728
2916
|
},
|
|
2917
|
+
{
|
|
2918
|
+
name: "FunnelChart",
|
|
2919
|
+
description: "Visualize conversion rates and process flows",
|
|
2920
|
+
category: "chart",
|
|
2921
|
+
importPath: "@classic-homes/charts-svelte",
|
|
2922
|
+
props: [],
|
|
2923
|
+
variants: [],
|
|
2924
|
+
slots: [],
|
|
2925
|
+
events: [],
|
|
2926
|
+
examples: [
|
|
2927
|
+
{
|
|
2928
|
+
title: "Basic Usage",
|
|
2929
|
+
code: `<script>
|
|
2930
|
+
import { FunnelChart } from '@classic-homes/charts-svelte';
|
|
2931
|
+
|
|
2932
|
+
const data = [
|
|
2933
|
+
{ name: 'Visited', value: 100 },
|
|
2934
|
+
{ name: 'Inquired', value: 80 },
|
|
2935
|
+
{ name: 'Ordered', value: 60 },
|
|
2936
|
+
{ name: 'Paid', value: 40 },
|
|
2937
|
+
{ name: 'Completed', value: 20 },
|
|
2938
|
+
];
|
|
2939
|
+
</script>
|
|
2940
|
+
|
|
2941
|
+
<FunnelChart title="Conversion Funnel" {data} sort="descending" showLabels height={400} />`
|
|
2942
|
+
},
|
|
2943
|
+
{
|
|
2944
|
+
title: "Sales Pipeline",
|
|
2945
|
+
code: `<FunnelChart
|
|
2946
|
+
title="Sales Pipeline"
|
|
2947
|
+
data={[
|
|
2948
|
+
{ name: 'Leads', value: 500 },
|
|
2949
|
+
{ name: 'Qualified', value: 350 },
|
|
2950
|
+
{ name: 'Proposal', value: 200 },
|
|
2951
|
+
{ name: 'Negotiation', value: 100 },
|
|
2952
|
+
{ name: 'Closed', value: 50 },
|
|
2953
|
+
]}
|
|
2954
|
+
sort="descending"
|
|
2955
|
+
/>`
|
|
2956
|
+
},
|
|
2957
|
+
{
|
|
2958
|
+
title: "Ascending Funnel",
|
|
2959
|
+
code: '<FunnelChart title="Growth Funnel" {data} sort="ascending" />'
|
|
2960
|
+
}
|
|
2961
|
+
],
|
|
2962
|
+
relatedComponents: [
|
|
2963
|
+
"BarChart",
|
|
2964
|
+
"SankeyChart"
|
|
2965
|
+
]
|
|
2966
|
+
},
|
|
2967
|
+
{
|
|
2968
|
+
name: "GaugeChart",
|
|
2969
|
+
description: "Display single value metrics with progress indicator",
|
|
2970
|
+
category: "chart",
|
|
2971
|
+
importPath: "@classic-homes/charts-svelte",
|
|
2972
|
+
props: [],
|
|
2973
|
+
variants: [],
|
|
2974
|
+
slots: [],
|
|
2975
|
+
events: [],
|
|
2976
|
+
examples: [
|
|
2977
|
+
{
|
|
2978
|
+
title: "Basic Usage",
|
|
2979
|
+
code: `<script>
|
|
2980
|
+
import { GaugeChart } from '@classic-homes/charts-svelte';
|
|
2981
|
+
</script>
|
|
2982
|
+
|
|
2983
|
+
<GaugeChart title="Performance Score" value={72} min={0} max={100} showProgress height={400} />`
|
|
2984
|
+
},
|
|
2985
|
+
{
|
|
2986
|
+
title: "Performance Score",
|
|
2987
|
+
code: '<GaugeChart title="Performance Score" value={85} min={0} max={100} showProgress />'
|
|
2988
|
+
},
|
|
2989
|
+
{
|
|
2990
|
+
title: "With Custom Formatter",
|
|
2991
|
+
code: '<GaugeChart title="Completion Rate" value={72} formatValue={(v) => `${v}%`} showProgress />'
|
|
2992
|
+
},
|
|
2993
|
+
{
|
|
2994
|
+
title: "Temperature Gauge",
|
|
2995
|
+
code: '<GaugeChart\n title="CPU Temperature"\n value={65}\n min={0}\n max={100}\n formatValue={(v) => `${v}\xB0C`}\n showProgress\n/>'
|
|
2996
|
+
},
|
|
2997
|
+
{
|
|
2998
|
+
title: "Revenue KPI",
|
|
2999
|
+
code: '<GaugeChart\n title="Monthly Target"\n value={85000}\n min={0}\n max={100000}\n formatValue={(v) => `$${(v / 1000).toFixed(0)}K`}\n showProgress\n/>'
|
|
3000
|
+
}
|
|
3001
|
+
],
|
|
3002
|
+
relatedComponents: [
|
|
3003
|
+
"DonutChart",
|
|
3004
|
+
"RadarChart"
|
|
3005
|
+
]
|
|
3006
|
+
},
|
|
2729
3007
|
{
|
|
2730
3008
|
name: "Header",
|
|
2731
3009
|
description: "Flexible application header with navigation support",
|
|
@@ -2898,6 +3176,68 @@ var component_catalog_default = {
|
|
|
2898
3176
|
"PublicLayout"
|
|
2899
3177
|
]
|
|
2900
3178
|
},
|
|
3179
|
+
{
|
|
3180
|
+
name: "HeatmapChart",
|
|
3181
|
+
description: "Matrix data visualization with color intensity",
|
|
3182
|
+
category: "chart",
|
|
3183
|
+
importPath: "@classic-homes/charts-svelte",
|
|
3184
|
+
props: [],
|
|
3185
|
+
variants: [],
|
|
3186
|
+
slots: [],
|
|
3187
|
+
events: [],
|
|
3188
|
+
examples: [
|
|
3189
|
+
{
|
|
3190
|
+
title: "Basic Usage",
|
|
3191
|
+
code: `<script>
|
|
3192
|
+
import { HeatmapChart } from '@classic-homes/charts-svelte';
|
|
3193
|
+
|
|
3194
|
+
const xAxis = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'];
|
|
3195
|
+
const yAxis = ['12a', '6a', '12p', '6p'];
|
|
3196
|
+
|
|
3197
|
+
const data = {
|
|
3198
|
+
data: [
|
|
3199
|
+
[0, 0, 5],
|
|
3200
|
+
[0, 1, 1],
|
|
3201
|
+
[0, 2, 0],
|
|
3202
|
+
[0, 3, 2],
|
|
3203
|
+
[1, 0, 1],
|
|
3204
|
+
[1, 1, 0],
|
|
3205
|
+
[1, 2, 3],
|
|
3206
|
+
[1, 3, 4],
|
|
3207
|
+
// ... more data points
|
|
3208
|
+
],
|
|
3209
|
+
min: 0,
|
|
3210
|
+
max: 5,
|
|
3211
|
+
};
|
|
3212
|
+
</script>
|
|
3213
|
+
|
|
3214
|
+
<HeatmapChart title="Activity Heatmap" {data} {xAxis} {yAxis} showValues height={400} />`
|
|
3215
|
+
},
|
|
3216
|
+
{
|
|
3217
|
+
title: "GitHub-style Activity",
|
|
3218
|
+
code: `<HeatmapChart
|
|
3219
|
+
title="Commit Activity"
|
|
3220
|
+
{data}
|
|
3221
|
+
xAxis={['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']}
|
|
3222
|
+
yAxis={['12a', '4a', '8a', '12p', '4p', '8p']}
|
|
3223
|
+
/>`
|
|
3224
|
+
},
|
|
3225
|
+
{
|
|
3226
|
+
title: "Correlation Matrix",
|
|
3227
|
+
code: `<HeatmapChart
|
|
3228
|
+
title="Feature Correlation"
|
|
3229
|
+
{data}
|
|
3230
|
+
xAxis={['Price', 'Size', 'Age', 'Rooms']}
|
|
3231
|
+
yAxis={['Price', 'Size', 'Age', 'Rooms']}
|
|
3232
|
+
showValues
|
|
3233
|
+
/>`
|
|
3234
|
+
}
|
|
3235
|
+
],
|
|
3236
|
+
relatedComponents: [
|
|
3237
|
+
"ScatterChart",
|
|
3238
|
+
"TreemapChart"
|
|
3239
|
+
]
|
|
3240
|
+
},
|
|
2901
3241
|
{
|
|
2902
3242
|
name: "Icon",
|
|
2903
3243
|
description: "A unified icon component with 50+ commonly used icons",
|
|
@@ -3290,6 +3630,64 @@ var component_catalog_default = {
|
|
|
3290
3630
|
"FormField"
|
|
3291
3631
|
]
|
|
3292
3632
|
},
|
|
3633
|
+
{
|
|
3634
|
+
name: "LineChart",
|
|
3635
|
+
description: "Display trends over time with smooth curves and area fill options",
|
|
3636
|
+
category: "chart",
|
|
3637
|
+
importPath: "@classic-homes/charts-svelte",
|
|
3638
|
+
props: [],
|
|
3639
|
+
variants: [],
|
|
3640
|
+
slots: [],
|
|
3641
|
+
events: [],
|
|
3642
|
+
examples: [
|
|
3643
|
+
{
|
|
3644
|
+
title: "Basic Usage",
|
|
3645
|
+
code: `<script>
|
|
3646
|
+
import { LineChart } from '@classic-homes/charts-svelte';
|
|
3647
|
+
|
|
3648
|
+
const data = {
|
|
3649
|
+
categories: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],
|
|
3650
|
+
series: [
|
|
3651
|
+
{ name: '2024', data: [120, 132, 101, 134, 90, 230] },
|
|
3652
|
+
{ name: '2025', data: [220, 182, 191, 234, 290, 330] },
|
|
3653
|
+
],
|
|
3654
|
+
};
|
|
3655
|
+
</script>
|
|
3656
|
+
|
|
3657
|
+
<LineChart title="Monthly Revenue" {data} smooth height={400} />`
|
|
3658
|
+
},
|
|
3659
|
+
{
|
|
3660
|
+
title: "Smooth Line Chart",
|
|
3661
|
+
code: '<LineChart title="Monthly Sales" {data} smooth height={400} />'
|
|
3662
|
+
},
|
|
3663
|
+
{
|
|
3664
|
+
title: "With Data Points",
|
|
3665
|
+
code: '<LineChart title="Monthly Sales" {data} smooth showDataPoints height={400} />'
|
|
3666
|
+
},
|
|
3667
|
+
{
|
|
3668
|
+
title: "Stacked Lines",
|
|
3669
|
+
code: '<LineChart title="Stacked Revenue" {data} stacked smooth height={400} />'
|
|
3670
|
+
},
|
|
3671
|
+
{
|
|
3672
|
+
title: "With Area Fill",
|
|
3673
|
+
code: '<LineChart title="Revenue Trend" {data} areaFilled smooth height={400} />'
|
|
3674
|
+
},
|
|
3675
|
+
{
|
|
3676
|
+
title: "Handling Click Events",
|
|
3677
|
+
code: `<script>
|
|
3678
|
+
function handleClick(params) {
|
|
3679
|
+
console.log('Clicked:', params.seriesName, params.name, params.value);
|
|
3680
|
+
}
|
|
3681
|
+
</script>
|
|
3682
|
+
|
|
3683
|
+
<LineChart title="Interactive Chart" {data} onClick={handleClick} />`
|
|
3684
|
+
}
|
|
3685
|
+
],
|
|
3686
|
+
relatedComponents: [
|
|
3687
|
+
"AreaChart",
|
|
3688
|
+
"BarChart"
|
|
3689
|
+
]
|
|
3690
|
+
},
|
|
3293
3691
|
{
|
|
3294
3692
|
name: "LoadingLogo",
|
|
3295
3693
|
description: "Animated brand logo for loading states",
|
|
@@ -4020,6 +4418,55 @@ var component_catalog_default = {
|
|
|
4020
4418
|
"Separator"
|
|
4021
4419
|
]
|
|
4022
4420
|
},
|
|
4421
|
+
{
|
|
4422
|
+
name: "PieChart",
|
|
4423
|
+
description: "Show proportional data with interactive labels",
|
|
4424
|
+
category: "chart",
|
|
4425
|
+
importPath: "@classic-homes/charts-svelte",
|
|
4426
|
+
props: [],
|
|
4427
|
+
variants: [],
|
|
4428
|
+
slots: [],
|
|
4429
|
+
events: [],
|
|
4430
|
+
examples: [
|
|
4431
|
+
{
|
|
4432
|
+
title: "Basic Usage",
|
|
4433
|
+
code: `<script>
|
|
4434
|
+
import { PieChart } from '@classic-homes/charts-svelte';
|
|
4435
|
+
|
|
4436
|
+
const data = [
|
|
4437
|
+
{ name: 'Search Engine', value: 1048 },
|
|
4438
|
+
{ name: 'Direct', value: 735 },
|
|
4439
|
+
{ name: 'Email', value: 580 },
|
|
4440
|
+
{ name: 'Social Media', value: 484 },
|
|
4441
|
+
];
|
|
4442
|
+
</script>
|
|
4443
|
+
|
|
4444
|
+
<PieChart title="Traffic Sources" {data} showLabels height={400} />`
|
|
4445
|
+
},
|
|
4446
|
+
{
|
|
4447
|
+
title: "With Outside Labels",
|
|
4448
|
+
code: '<PieChart title="Market Share" {data} showLabels labelPosition="outside" height={400} />'
|
|
4449
|
+
},
|
|
4450
|
+
{
|
|
4451
|
+
title: "With Inside Labels",
|
|
4452
|
+
code: '<PieChart title="Market Share" {data} showLabels labelPosition="inside" height={400} />'
|
|
4453
|
+
},
|
|
4454
|
+
{
|
|
4455
|
+
title: "Handling Click Events",
|
|
4456
|
+
code: `<script>
|
|
4457
|
+
function handleClick(params) {
|
|
4458
|
+
console.log('Clicked slice:', params.name, params.value);
|
|
4459
|
+
}
|
|
4460
|
+
</script>
|
|
4461
|
+
|
|
4462
|
+
<PieChart title="Interactive Pie" {data} onClick={handleClick} />`
|
|
4463
|
+
}
|
|
4464
|
+
],
|
|
4465
|
+
relatedComponents: [
|
|
4466
|
+
"DonutChart",
|
|
4467
|
+
"FunnelChart"
|
|
4468
|
+
]
|
|
4469
|
+
},
|
|
4023
4470
|
{
|
|
4024
4471
|
name: "PublicLayout",
|
|
4025
4472
|
description: "Layout for public-facing marketing and content pages",
|
|
@@ -4163,6 +4610,65 @@ var component_catalog_default = {
|
|
|
4163
4610
|
"DashboardLayout"
|
|
4164
4611
|
]
|
|
4165
4612
|
},
|
|
4613
|
+
{
|
|
4614
|
+
name: "RadarChart",
|
|
4615
|
+
description: "Multi-dimensional comparison across categories",
|
|
4616
|
+
category: "chart",
|
|
4617
|
+
importPath: "@classic-homes/charts-svelte",
|
|
4618
|
+
props: [],
|
|
4619
|
+
variants: [],
|
|
4620
|
+
slots: [],
|
|
4621
|
+
events: [],
|
|
4622
|
+
examples: [
|
|
4623
|
+
{
|
|
4624
|
+
title: "Basic Usage",
|
|
4625
|
+
code: `<script>
|
|
4626
|
+
import { RadarChart } from '@classic-homes/charts-svelte';
|
|
4627
|
+
|
|
4628
|
+
const indicators = [
|
|
4629
|
+
{ name: 'Sales', max: 6500 },
|
|
4630
|
+
{ name: 'Administration', max: 16000 },
|
|
4631
|
+
{ name: 'IT', max: 30000 },
|
|
4632
|
+
{ name: 'Support', max: 38000 },
|
|
4633
|
+
{ name: 'Development', max: 52000 },
|
|
4634
|
+
];
|
|
4635
|
+
|
|
4636
|
+
const data = {
|
|
4637
|
+
series: [
|
|
4638
|
+
{ name: 'Budget', data: [4200, 3000, 20000, 35000, 50000] },
|
|
4639
|
+
{ name: 'Actual', data: [5000, 14000, 28000, 26000, 42000] },
|
|
4640
|
+
],
|
|
4641
|
+
};
|
|
4642
|
+
</script>
|
|
4643
|
+
|
|
4644
|
+
<RadarChart title="Budget vs Actual" {data} {indicators} shape="polygon" height={400} />`
|
|
4645
|
+
},
|
|
4646
|
+
{
|
|
4647
|
+
title: "Circle Shape",
|
|
4648
|
+
code: '<RadarChart title="Skill Assessment" {data} {indicators} shape="circle" />'
|
|
4649
|
+
},
|
|
4650
|
+
{
|
|
4651
|
+
title: "Single Series",
|
|
4652
|
+
code: `<RadarChart
|
|
4653
|
+
title="Performance Metrics"
|
|
4654
|
+
data={{
|
|
4655
|
+
series: [{ name: 'Score', data: [80, 90, 70, 85, 95] }],
|
|
4656
|
+
}}
|
|
4657
|
+
indicators={[
|
|
4658
|
+
{ name: 'Speed', max: 100 },
|
|
4659
|
+
{ name: 'Quality', max: 100 },
|
|
4660
|
+
{ name: 'Teamwork', max: 100 },
|
|
4661
|
+
{ name: 'Innovation', max: 100 },
|
|
4662
|
+
{ name: 'Communication', max: 100 },
|
|
4663
|
+
]}
|
|
4664
|
+
/>`
|
|
4665
|
+
}
|
|
4666
|
+
],
|
|
4667
|
+
relatedComponents: [
|
|
4668
|
+
"BarChart",
|
|
4669
|
+
"GaugeChart"
|
|
4670
|
+
]
|
|
4671
|
+
},
|
|
4166
4672
|
{
|
|
4167
4673
|
name: "RadioGroup",
|
|
4168
4674
|
description: "Radio button group for single selection from multiple options",
|
|
@@ -4347,6 +4853,149 @@ var component_catalog_default = {
|
|
|
4347
4853
|
"Switch"
|
|
4348
4854
|
]
|
|
4349
4855
|
},
|
|
4856
|
+
{
|
|
4857
|
+
name: "SankeyChart",
|
|
4858
|
+
description: "Flow relationships between entities",
|
|
4859
|
+
category: "chart",
|
|
4860
|
+
importPath: "@classic-homes/charts-svelte",
|
|
4861
|
+
props: [],
|
|
4862
|
+
variants: [],
|
|
4863
|
+
slots: [],
|
|
4864
|
+
events: [],
|
|
4865
|
+
examples: [
|
|
4866
|
+
{
|
|
4867
|
+
title: "Basic Usage",
|
|
4868
|
+
code: `<script>
|
|
4869
|
+
import { SankeyChart } from '@classic-homes/charts-svelte';
|
|
4870
|
+
|
|
4871
|
+
const data = {
|
|
4872
|
+
nodes: [{ name: 'Source A' }, { name: 'Source B' }, { name: 'Process' }, { name: 'Output' }],
|
|
4873
|
+
links: [
|
|
4874
|
+
{ source: 'Source A', target: 'Process', value: 50 },
|
|
4875
|
+
{ source: 'Source B', target: 'Process', value: 30 },
|
|
4876
|
+
{ source: 'Process', target: 'Output', value: 80 },
|
|
4877
|
+
],
|
|
4878
|
+
};
|
|
4879
|
+
</script>
|
|
4880
|
+
|
|
4881
|
+
<SankeyChart title="Energy Flow" {data} orient="horizontal" height={400} />`
|
|
4882
|
+
},
|
|
4883
|
+
{
|
|
4884
|
+
title: "Website User Flow",
|
|
4885
|
+
code: `<SankeyChart
|
|
4886
|
+
title="User Journey"
|
|
4887
|
+
data={{
|
|
4888
|
+
nodes: [
|
|
4889
|
+
{ name: 'Homepage' },
|
|
4890
|
+
{ name: 'Products' },
|
|
4891
|
+
{ name: 'Cart' },
|
|
4892
|
+
{ name: 'Checkout' },
|
|
4893
|
+
{ name: 'Purchase' },
|
|
4894
|
+
{ name: 'Exit' },
|
|
4895
|
+
],
|
|
4896
|
+
links: [
|
|
4897
|
+
{ source: 'Homepage', target: 'Products', value: 1000 },
|
|
4898
|
+
{ source: 'Homepage', target: 'Exit', value: 300 },
|
|
4899
|
+
{ source: 'Products', target: 'Cart', value: 500 },
|
|
4900
|
+
{ source: 'Products', target: 'Exit', value: 200 },
|
|
4901
|
+
{ source: 'Cart', target: 'Checkout', value: 400 },
|
|
4902
|
+
{ source: 'Cart', target: 'Exit', value: 100 },
|
|
4903
|
+
{ source: 'Checkout', target: 'Purchase', value: 350 },
|
|
4904
|
+
{ source: 'Checkout', target: 'Exit', value: 50 },
|
|
4905
|
+
],
|
|
4906
|
+
}}
|
|
4907
|
+
/>`
|
|
4908
|
+
},
|
|
4909
|
+
{
|
|
4910
|
+
title: "Budget Allocation",
|
|
4911
|
+
code: `<SankeyChart
|
|
4912
|
+
title="Budget Distribution"
|
|
4913
|
+
data={{
|
|
4914
|
+
nodes: [
|
|
4915
|
+
{ name: 'Revenue' },
|
|
4916
|
+
{ name: 'Operations' },
|
|
4917
|
+
{ name: 'Marketing' },
|
|
4918
|
+
{ name: 'R&D' },
|
|
4919
|
+
{ name: 'Profit' },
|
|
4920
|
+
],
|
|
4921
|
+
links: [
|
|
4922
|
+
{ source: 'Revenue', target: 'Operations', value: 40 },
|
|
4923
|
+
{ source: 'Revenue', target: 'Marketing', value: 25 },
|
|
4924
|
+
{ source: 'Revenue', target: 'R&D', value: 20 },
|
|
4925
|
+
{ source: 'Revenue', target: 'Profit', value: 15 },
|
|
4926
|
+
],
|
|
4927
|
+
}}
|
|
4928
|
+
/>`
|
|
4929
|
+
},
|
|
4930
|
+
{
|
|
4931
|
+
title: "Vertical Orientation",
|
|
4932
|
+
code: '<SankeyChart title="Process Flow" {data} orient="vertical" />'
|
|
4933
|
+
}
|
|
4934
|
+
],
|
|
4935
|
+
relatedComponents: [
|
|
4936
|
+
"FunnelChart",
|
|
4937
|
+
"TreemapChart"
|
|
4938
|
+
]
|
|
4939
|
+
},
|
|
4940
|
+
{
|
|
4941
|
+
name: "ScatterChart",
|
|
4942
|
+
description: "Visualize X/Y relationships with optional trend lines",
|
|
4943
|
+
category: "chart",
|
|
4944
|
+
importPath: "@classic-homes/charts-svelte",
|
|
4945
|
+
props: [],
|
|
4946
|
+
variants: [],
|
|
4947
|
+
slots: [],
|
|
4948
|
+
events: [],
|
|
4949
|
+
examples: [
|
|
4950
|
+
{
|
|
4951
|
+
title: "Basic Usage",
|
|
4952
|
+
code: `<script>
|
|
4953
|
+
import { ScatterChart } from '@classic-homes/charts-svelte';
|
|
4954
|
+
|
|
4955
|
+
const data = {
|
|
4956
|
+
series: [
|
|
4957
|
+
{
|
|
4958
|
+
name: 'Dataset A',
|
|
4959
|
+
data: [
|
|
4960
|
+
[10.0, 8.04],
|
|
4961
|
+
[8.07, 6.95],
|
|
4962
|
+
[13.0, 7.58],
|
|
4963
|
+
[9.05, 8.81],
|
|
4964
|
+
[11.0, 8.33],
|
|
4965
|
+
[14.0, 7.66],
|
|
4966
|
+
],
|
|
4967
|
+
},
|
|
4968
|
+
{
|
|
4969
|
+
name: 'Dataset B',
|
|
4970
|
+
data: [
|
|
4971
|
+
[8.0, 9.04],
|
|
4972
|
+
[6.07, 7.95],
|
|
4973
|
+
[11.0, 8.58],
|
|
4974
|
+
[7.05, 9.81],
|
|
4975
|
+
[9.0, 9.33],
|
|
4976
|
+
[12.0, 8.66],
|
|
4977
|
+
],
|
|
4978
|
+
},
|
|
4979
|
+
],
|
|
4980
|
+
};
|
|
4981
|
+
</script>
|
|
4982
|
+
|
|
4983
|
+
<ScatterChart title="Data Correlation" {data} showTrendLine height={400} />`
|
|
4984
|
+
},
|
|
4985
|
+
{
|
|
4986
|
+
title: "With Trend Line",
|
|
4987
|
+
code: '<ScatterChart title="Correlation Analysis" {data} showTrendLine height={400} />'
|
|
4988
|
+
},
|
|
4989
|
+
{
|
|
4990
|
+
title: "Dynamic Point Size",
|
|
4991
|
+
code: '<ScatterChart title="Sized Points" {data} symbolSize={(value) => Math.sqrt(value[1]) * 3} />'
|
|
4992
|
+
}
|
|
4993
|
+
],
|
|
4994
|
+
relatedComponents: [
|
|
4995
|
+
"LineChart",
|
|
4996
|
+
"HeatmapChart"
|
|
4997
|
+
]
|
|
4998
|
+
},
|
|
4350
4999
|
{
|
|
4351
5000
|
name: "Section",
|
|
4352
5001
|
description: "Content section container for page organization",
|
|
@@ -5990,6 +6639,94 @@ var component_catalog_default = {
|
|
|
5990
6639
|
"Dialog",
|
|
5991
6640
|
"DropdownMenu"
|
|
5992
6641
|
]
|
|
6642
|
+
},
|
|
6643
|
+
{
|
|
6644
|
+
name: "TreemapChart",
|
|
6645
|
+
description: "Hierarchical data as nested rectangles",
|
|
6646
|
+
category: "chart",
|
|
6647
|
+
importPath: "@classic-homes/charts-svelte",
|
|
6648
|
+
props: [],
|
|
6649
|
+
variants: [],
|
|
6650
|
+
slots: [],
|
|
6651
|
+
events: [],
|
|
6652
|
+
examples: [
|
|
6653
|
+
{
|
|
6654
|
+
title: "Basic Usage",
|
|
6655
|
+
code: `<script>
|
|
6656
|
+
import { TreemapChart } from '@classic-homes/charts-svelte';
|
|
6657
|
+
|
|
6658
|
+
const data = [
|
|
6659
|
+
{
|
|
6660
|
+
name: 'Frontend',
|
|
6661
|
+
children: [
|
|
6662
|
+
{ name: 'React', value: 40 },
|
|
6663
|
+
{ name: 'Vue', value: 30 },
|
|
6664
|
+
{ name: 'Svelte', value: 20 },
|
|
6665
|
+
],
|
|
6666
|
+
},
|
|
6667
|
+
{
|
|
6668
|
+
name: 'Backend',
|
|
6669
|
+
children: [
|
|
6670
|
+
{ name: 'Node.js', value: 35 },
|
|
6671
|
+
{ name: 'Python', value: 25 },
|
|
6672
|
+
],
|
|
6673
|
+
},
|
|
6674
|
+
];
|
|
6675
|
+
</script>
|
|
6676
|
+
|
|
6677
|
+
<TreemapChart title="Tech Stack" {data} height={400} />`
|
|
6678
|
+
},
|
|
6679
|
+
{
|
|
6680
|
+
title: "File System",
|
|
6681
|
+
code: `<TreemapChart
|
|
6682
|
+
title="Disk Usage"
|
|
6683
|
+
data={[
|
|
6684
|
+
{
|
|
6685
|
+
name: 'Documents',
|
|
6686
|
+
children: [
|
|
6687
|
+
{ name: 'PDFs', value: 500 },
|
|
6688
|
+
{ name: 'Images', value: 300 },
|
|
6689
|
+
{ name: 'Videos', value: 2000 },
|
|
6690
|
+
],
|
|
6691
|
+
},
|
|
6692
|
+
{
|
|
6693
|
+
name: 'Applications',
|
|
6694
|
+
children: [
|
|
6695
|
+
{ name: 'Development', value: 1500 },
|
|
6696
|
+
{ name: 'Productivity', value: 800 },
|
|
6697
|
+
],
|
|
6698
|
+
},
|
|
6699
|
+
]}
|
|
6700
|
+
/>`
|
|
6701
|
+
},
|
|
6702
|
+
{
|
|
6703
|
+
title: "Budget Breakdown",
|
|
6704
|
+
code: `<TreemapChart
|
|
6705
|
+
title="Department Budget"
|
|
6706
|
+
data={[
|
|
6707
|
+
{
|
|
6708
|
+
name: 'Engineering',
|
|
6709
|
+
children: [
|
|
6710
|
+
{ name: 'Salaries', value: 500000 },
|
|
6711
|
+
{ name: 'Equipment', value: 100000 },
|
|
6712
|
+
{ name: 'Training', value: 50000 },
|
|
6713
|
+
],
|
|
6714
|
+
},
|
|
6715
|
+
{
|
|
6716
|
+
name: 'Marketing',
|
|
6717
|
+
children: [
|
|
6718
|
+
{ name: 'Advertising', value: 200000 },
|
|
6719
|
+
{ name: 'Events', value: 75000 },
|
|
6720
|
+
],
|
|
6721
|
+
},
|
|
6722
|
+
]}
|
|
6723
|
+
/>`
|
|
6724
|
+
}
|
|
6725
|
+
],
|
|
6726
|
+
relatedComponents: [
|
|
6727
|
+
"PieChart",
|
|
6728
|
+
"SankeyChart"
|
|
6729
|
+
]
|
|
5993
6730
|
}
|
|
5994
6731
|
]
|
|
5995
6732
|
};
|
|
@@ -7031,7 +7768,17 @@ import { z } from "zod";
|
|
|
7031
7768
|
var catalog2 = component_catalog_default;
|
|
7032
7769
|
var SearchComponentsSchema = z.object({
|
|
7033
7770
|
query: z.string().describe("Search query (component name, description, or functionality)"),
|
|
7034
|
-
category: z.enum([
|
|
7771
|
+
category: z.enum([
|
|
7772
|
+
"core",
|
|
7773
|
+
"form",
|
|
7774
|
+
"layout",
|
|
7775
|
+
"feedback",
|
|
7776
|
+
"data",
|
|
7777
|
+
"overlay",
|
|
7778
|
+
"navigation",
|
|
7779
|
+
"branding",
|
|
7780
|
+
"chart"
|
|
7781
|
+
]).optional().describe("Filter by component category"),
|
|
7035
7782
|
limit: z.number().min(1).max(50).default(10).describe("Maximum number of results")
|
|
7036
7783
|
});
|
|
7037
7784
|
function registerSearchComponentsTool(server) {
|