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