@@ -5,11 +5,11 @@ description: "A list of applications that support MCP integrations"
55
66{ /* prettier-ignore-start */ }
77
8- export const CAPABILITIES = [" Resources" , " Prompts" , " Tools" , " Discovery" , " Sampling" , " Roots" , " Elicitation" , " Instructions" , " Tasks" ];
8+ export const FEATURES = [" Resources" , " Prompts" , " Tools" , " Discovery" , " Sampling" , " Roots" , " Elicitation" , " Instructions" , " Tasks" ];
99
1010export const filterStore = {
1111 state: {
12- selectedCapabilities : [],
12+ selectedFeatures : [],
1313 searchText: " " ,
1414 visibleCount: 0 ,
1515 totalCount: 0
@@ -36,11 +36,11 @@ export const useFilterStore = () => {
3636};
3737
3838export const useFilter = ({ name , supports }) => {
39- const { selectedCapabilities , searchText } = useFilterStore ();
39+ const { selectedFeatures , searchText } = useFilterStore ();
4040
4141 const isVisible = (
4242 name .toLowerCase ().includes (searchText .toLowerCase ()) &&
43- selectedCapabilities .every (cap => supports ?.includes (cap ))
43+ selectedFeatures .every (feature => supports ?.includes (feature ))
4444 );
4545
4646 useEffect (() => {
@@ -60,24 +60,24 @@ export const useFilter = ({ name, supports }) => {
6060
6161
6262export const ClientFilter = () => {
63- const { selectedCapabilities , searchText, visibleCount, totalCount } = useFilterStore ();
63+ const { selectedFeatures , searchText, visibleCount, totalCount } = useFilterStore ();
6464
6565 useEffect (() => {
66- filterStore .setState ({ selectedCapabilities : [], searchText: " " });
66+ filterStore .setState ({ selectedFeatures : [], searchText: " " });
6767 }, []);
6868
69- const toggleCapability = (cap ) => {
70- const newCaps = selectedCapabilities .includes (cap )
71- ? selectedCapabilities .filter (c => c !== cap )
72- : [... selectedCapabilities , cap ];
73- filterStore .setState ({ selectedCapabilities: newCaps });
69+ const toggleFeature = (feature ) => {
70+ const newFeatures = selectedFeatures .includes (feature )
71+ ? selectedFeatures .filter (f => f !== feature )
72+ : [... selectedFeatures , feature ];
73+ filterStore .setState ({ selectedFeatures: newFeatures });
7474 };
7575
7676 const clearFilters = () => {
77- filterStore .setState ({ selectedCapabilities : [], searchText: " " });
77+ filterStore .setState ({ selectedFeatures : [], searchText: " " });
7878 };
7979
80- const hasFilters = selectedCapabilities .length > 0 || searchText .length > 0 ;
80+ const hasFilters = selectedFeatures .length > 0 || searchText .length > 0 ;
8181
8282 return (
8383 <div className = " p-4 border border-gray-200 dark:border-gray-700 rounded-lg bg-gray-50 dark:bg-gray-800/50" >
@@ -105,25 +105,25 @@ export const ClientFilter = () => {
105105 </div >
106106 <div className = " mt-4" >
107107 <div className = " text-sm font-medium text-gray-700 dark:text-gray-300 mb-2" >
108- Filter by capabilities :
108+ Filter by features :
109109 </div >
110110 <div className = " flex flex-wrap gap-2" >
111- { CAPABILITIES .map (cap => (
111+ { FEATURES .map (feature => (
112112 <button
113- key = { cap }
114- onClick = { () => toggleCapability ( cap )}
113+ key = { feature }
114+ onClick = { () => toggleFeature ( feature )}
115115 className = { ` flex items-center gap-1.5 px-2 py-1 rounded text-sm transition-colors cursor-pointer ${
116- selectedCapabilities .includes (cap )
116+ selectedFeatures .includes (feature )
117117 ? ' bg-primary/10 text-primary dark:bg-gray-700 dark:text-gray-100'
118118 : ' text-gray-600 dark:text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-800'
119119 } ` }
120120 >
121121 <Icon
122- icon = { selectedCapabilities .includes (cap ) ? " square-check" : " square" }
123- iconType = { selectedCapabilities .includes (cap ) ? " solid" : " regular" }
122+ icon = { selectedFeatures .includes (feature ) ? " square-check" : " square" }
123+ iconType = { selectedFeatures .includes (feature ) ? " solid" : " regular" }
124124 size = { 16 }
125125 />
126- { cap }
126+ { feature }
127127 </button >
128128 ))}
129129 </div >
0 commit comments