Skip to content

Commit 724a4cb

Browse files
committed
[MNY-331] SDK: Alphabetically sort chains in SwapWidget UI
1 parent 1169752 commit 724a4cb

File tree

2 files changed

+24
-2
lines changed

2 files changed

+24
-2
lines changed

.changeset/ninety-trains-tell.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
Alphabetically sort the chains in SwapWidget UI

packages/thirdweb/src/react/web/ui/Bridge/swap-widget/use-bridge-chains.ts

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,25 @@ import type { ThirdwebClient } from "../../../../../client/client.js";
55
export function useBridgeChains(client: ThirdwebClient) {
66
return useQuery({
77
queryKey: ["bridge-chains"],
8-
queryFn: () => {
9-
return chains({ client });
8+
queryFn: async () => {
9+
const data = await chains({ client });
10+
const dataCopy = [...data];
11+
// sort by name, but if name starts with number, put it at the end
12+
13+
return dataCopy.sort((a, b) => {
14+
const aStartsWithNumber = a.name[0]?.match(/^\d/);
15+
const bStartsWithNumber = b.name[0]?.match(/^\d/);
16+
17+
if (aStartsWithNumber && !bStartsWithNumber) {
18+
return 1;
19+
}
20+
21+
if (!aStartsWithNumber && bStartsWithNumber) {
22+
return -1;
23+
}
24+
25+
return a.name.localeCompare(b.name);
26+
});
1027
},
1128
refetchOnMount: false,
1229
refetchOnWindowFocus: false,

0 commit comments

Comments
 (0)