@mysten/dapp-kit 0.16.6 → 0.16.7
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/CHANGELOG.md +12 -0
- package/dist/cjs/components/ui/Button.css.d.ts +9 -9
- package/dist/cjs/components/ui/Heading.css.d.ts +6 -6
- package/dist/cjs/components/ui/Text.css.d.ts +6 -6
- package/dist/cjs/hooks/useSuiClientInfiniteQuery.d.ts +1 -1
- package/dist/cjs/hooks/useSuiClientInfiniteQuery.js.map +2 -2
- package/dist/cjs/index.js.map +2 -2
- package/dist/cjs/themes/themeContract.d.ts +37 -37
- package/dist/esm/components/ui/Button.css.d.ts +9 -9
- package/dist/esm/components/ui/Heading.css.d.ts +6 -6
- package/dist/esm/components/ui/Text.css.d.ts +6 -6
- package/dist/esm/hooks/useSuiClientInfiniteQuery.d.ts +1 -1
- package/dist/esm/hooks/useSuiClientInfiniteQuery.js.map +2 -2
- package/dist/esm/index.js.map +2 -2
- package/dist/esm/themes/themeContract.d.ts +37 -37
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +20 -20
- package/src/hooks/useSuiClientInfiniteQuery.ts +1 -7
|
@@ -82,59 +82,59 @@ export type DynamicTheme = {
|
|
|
82
82
|
export type Theme = ThemeVars | DynamicTheme[];
|
|
83
83
|
export declare const themeVars: {
|
|
84
84
|
blurs: {
|
|
85
|
-
modalOverlay: `var(--${string})` | `var(--${string}, ${string})
|
|
85
|
+
modalOverlay: `var(--${string})` | `var(--${string}, ${string})`;
|
|
86
86
|
};
|
|
87
87
|
backgroundColors: {
|
|
88
|
-
primaryButton: `var(--${string})` | `var(--${string}, ${string})
|
|
89
|
-
primaryButtonHover: `var(--${string})` | `var(--${string}, ${string})
|
|
90
|
-
outlineButtonHover: `var(--${string})` | `var(--${string}, ${string})
|
|
91
|
-
walletItemHover: `var(--${string})` | `var(--${string}, ${string})
|
|
92
|
-
walletItemSelected: `var(--${string})` | `var(--${string}, ${string})
|
|
93
|
-
modalOverlay: `var(--${string})` | `var(--${string}, ${string})
|
|
94
|
-
modalPrimary: `var(--${string})` | `var(--${string}, ${string})
|
|
95
|
-
modalSecondary: `var(--${string})` | `var(--${string}, ${string})
|
|
96
|
-
iconButton: `var(--${string})` | `var(--${string}, ${string})
|
|
97
|
-
iconButtonHover: `var(--${string})` | `var(--${string}, ${string})
|
|
98
|
-
dropdownMenu: `var(--${string})` | `var(--${string}, ${string})
|
|
99
|
-
dropdownMenuSeparator: `var(--${string})` | `var(--${string}, ${string})
|
|
88
|
+
primaryButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
89
|
+
primaryButtonHover: `var(--${string})` | `var(--${string}, ${string})`;
|
|
90
|
+
outlineButtonHover: `var(--${string})` | `var(--${string}, ${string})`;
|
|
91
|
+
walletItemHover: `var(--${string})` | `var(--${string}, ${string})`;
|
|
92
|
+
walletItemSelected: `var(--${string})` | `var(--${string}, ${string})`;
|
|
93
|
+
modalOverlay: `var(--${string})` | `var(--${string}, ${string})`;
|
|
94
|
+
modalPrimary: `var(--${string})` | `var(--${string}, ${string})`;
|
|
95
|
+
modalSecondary: `var(--${string})` | `var(--${string}, ${string})`;
|
|
96
|
+
iconButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
97
|
+
iconButtonHover: `var(--${string})` | `var(--${string}, ${string})`;
|
|
98
|
+
dropdownMenu: `var(--${string})` | `var(--${string}, ${string})`;
|
|
99
|
+
dropdownMenuSeparator: `var(--${string})` | `var(--${string}, ${string})`;
|
|
100
100
|
};
|
|
101
101
|
borderColors: {
|
|
102
|
-
outlineButton: `var(--${string})` | `var(--${string}, ${string})
|
|
102
|
+
outlineButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
103
103
|
};
|
|
104
104
|
colors: {
|
|
105
|
-
primaryButton: `var(--${string})` | `var(--${string}, ${string})
|
|
106
|
-
outlineButton: `var(--${string})` | `var(--${string}, ${string})
|
|
107
|
-
body: `var(--${string})` | `var(--${string}, ${string})
|
|
108
|
-
bodyMuted: `var(--${string})` | `var(--${string}, ${string})
|
|
109
|
-
bodyDanger: `var(--${string})` | `var(--${string}, ${string})
|
|
110
|
-
iconButton: `var(--${string})` | `var(--${string}, ${string})
|
|
105
|
+
primaryButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
106
|
+
outlineButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
107
|
+
body: `var(--${string})` | `var(--${string}, ${string})`;
|
|
108
|
+
bodyMuted: `var(--${string})` | `var(--${string}, ${string})`;
|
|
109
|
+
bodyDanger: `var(--${string})` | `var(--${string}, ${string})`;
|
|
110
|
+
iconButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
111
111
|
};
|
|
112
112
|
radii: {
|
|
113
|
-
small: `var(--${string})` | `var(--${string}, ${string})
|
|
114
|
-
medium: `var(--${string})` | `var(--${string}, ${string})
|
|
115
|
-
large: `var(--${string})` | `var(--${string}, ${string})
|
|
116
|
-
xlarge: `var(--${string})` | `var(--${string}, ${string})
|
|
113
|
+
small: `var(--${string})` | `var(--${string}, ${string})`;
|
|
114
|
+
medium: `var(--${string})` | `var(--${string}, ${string})`;
|
|
115
|
+
large: `var(--${string})` | `var(--${string}, ${string})`;
|
|
116
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})`;
|
|
117
117
|
};
|
|
118
118
|
shadows: {
|
|
119
|
-
primaryButton: `var(--${string})` | `var(--${string}, ${string})
|
|
120
|
-
walletItemSelected: `var(--${string})` | `var(--${string}, ${string})
|
|
119
|
+
primaryButton: `var(--${string})` | `var(--${string}, ${string})`;
|
|
120
|
+
walletItemSelected: `var(--${string})` | `var(--${string}, ${string})`;
|
|
121
121
|
};
|
|
122
122
|
fontWeights: {
|
|
123
|
-
normal: `var(--${string})` | `var(--${string}, ${string})
|
|
124
|
-
medium: `var(--${string})` | `var(--${string}, ${string})
|
|
125
|
-
bold: `var(--${string})` | `var(--${string}, ${string})
|
|
123
|
+
normal: `var(--${string})` | `var(--${string}, ${string})`;
|
|
124
|
+
medium: `var(--${string})` | `var(--${string}, ${string})`;
|
|
125
|
+
bold: `var(--${string})` | `var(--${string}, ${string})`;
|
|
126
126
|
};
|
|
127
127
|
fontSizes: {
|
|
128
|
-
small: `var(--${string})` | `var(--${string}, ${string})
|
|
129
|
-
medium: `var(--${string})` | `var(--${string}, ${string})
|
|
130
|
-
large: `var(--${string})` | `var(--${string}, ${string})
|
|
131
|
-
xlarge: `var(--${string})` | `var(--${string}, ${string})
|
|
128
|
+
small: `var(--${string})` | `var(--${string}, ${string})`;
|
|
129
|
+
medium: `var(--${string})` | `var(--${string}, ${string})`;
|
|
130
|
+
large: `var(--${string})` | `var(--${string}, ${string})`;
|
|
131
|
+
xlarge: `var(--${string})` | `var(--${string}, ${string})`;
|
|
132
132
|
};
|
|
133
133
|
typography: {
|
|
134
|
-
fontFamily: `var(--${string})` | `var(--${string}, ${string})
|
|
135
|
-
fontStyle: `var(--${string})` | `var(--${string}, ${string})
|
|
136
|
-
lineHeight: `var(--${string})` | `var(--${string}, ${string})
|
|
137
|
-
letterSpacing: `var(--${string})` | `var(--${string}, ${string})
|
|
134
|
+
fontFamily: `var(--${string})` | `var(--${string}, ${string})`;
|
|
135
|
+
fontStyle: `var(--${string})` | `var(--${string}, ${string})`;
|
|
136
|
+
lineHeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
137
|
+
letterSpacing: `var(--${string})` | `var(--${string}, ${string})`;
|
|
138
138
|
};
|
|
139
139
|
};
|
|
140
140
|
export {};
|
|
@@ -2,30 +2,30 @@ import type { RecipeVariants } from '@vanilla-extract/recipes';
|
|
|
2
2
|
export declare const buttonVariants: import("@vanilla-extract/recipes").RuntimeFn<{
|
|
3
3
|
variant: {
|
|
4
4
|
primary: {
|
|
5
|
-
backgroundColor: `var(--${string})` | `var(--${string}, ${string})
|
|
6
|
-
color: `var(--${string})` | `var(--${string}, ${string})
|
|
7
|
-
boxShadow: `var(--${string})` | `var(--${string}, ${string})
|
|
5
|
+
backgroundColor: `var(--${string})` | `var(--${string}, ${string})`;
|
|
6
|
+
color: `var(--${string})` | `var(--${string}, ${string})`;
|
|
7
|
+
boxShadow: `var(--${string})` | `var(--${string}, ${string})`;
|
|
8
8
|
':hover': {
|
|
9
|
-
backgroundColor: `var(--${string})` | `var(--${string}, ${string})
|
|
9
|
+
backgroundColor: `var(--${string})` | `var(--${string}, ${string})`;
|
|
10
10
|
};
|
|
11
11
|
};
|
|
12
12
|
outline: {
|
|
13
13
|
borderWidth: number;
|
|
14
14
|
borderStyle: "solid";
|
|
15
|
-
borderColor: `var(--${string})` | `var(--${string}, ${string})
|
|
16
|
-
color: `var(--${string})` | `var(--${string}, ${string})
|
|
15
|
+
borderColor: `var(--${string})` | `var(--${string}, ${string})`;
|
|
16
|
+
color: `var(--${string})` | `var(--${string}, ${string})`;
|
|
17
17
|
':hover': {
|
|
18
|
-
backgroundColor: `var(--${string})` | `var(--${string}, ${string})
|
|
18
|
+
backgroundColor: `var(--${string})` | `var(--${string}, ${string})`;
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
};
|
|
22
22
|
size: {
|
|
23
23
|
md: {
|
|
24
|
-
borderRadius: `var(--${string})` | `var(--${string}, ${string})
|
|
24
|
+
borderRadius: `var(--${string})` | `var(--${string}, ${string})`;
|
|
25
25
|
padding: "8px 16px";
|
|
26
26
|
};
|
|
27
27
|
lg: {
|
|
28
|
-
borderRadius: `var(--${string})` | `var(--${string}, ${string})
|
|
28
|
+
borderRadius: `var(--${string})` | `var(--${string}, ${string})`;
|
|
29
29
|
padding: "16px 24px ";
|
|
30
30
|
};
|
|
31
31
|
};
|
|
@@ -2,24 +2,24 @@ import type { RecipeVariants } from '@vanilla-extract/recipes';
|
|
|
2
2
|
export declare const headingVariants: import("@vanilla-extract/recipes").RuntimeFn<{
|
|
3
3
|
size: {
|
|
4
4
|
sm: {
|
|
5
|
-
fontSize: `var(--${string})` | `var(--${string}, ${string})
|
|
5
|
+
fontSize: `var(--${string})` | `var(--${string}, ${string})`;
|
|
6
6
|
};
|
|
7
7
|
md: {
|
|
8
|
-
fontSize: `var(--${string})` | `var(--${string}, ${string})
|
|
8
|
+
fontSize: `var(--${string})` | `var(--${string}, ${string})`;
|
|
9
9
|
};
|
|
10
10
|
lg: {
|
|
11
|
-
fontSize: `var(--${string})` | `var(--${string}, ${string})
|
|
11
|
+
fontSize: `var(--${string})` | `var(--${string}, ${string})`;
|
|
12
12
|
};
|
|
13
13
|
xl: {
|
|
14
|
-
fontSize: `var(--${string})` | `var(--${string}, ${string})
|
|
14
|
+
fontSize: `var(--${string})` | `var(--${string}, ${string})`;
|
|
15
15
|
};
|
|
16
16
|
};
|
|
17
17
|
weight: {
|
|
18
18
|
normal: {
|
|
19
|
-
fontWeight: `var(--${string})` | `var(--${string}, ${string})
|
|
19
|
+
fontWeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
20
20
|
};
|
|
21
21
|
bold: {
|
|
22
|
-
fontWeight: `var(--${string})` | `var(--${string}, ${string})
|
|
22
|
+
fontWeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
23
23
|
};
|
|
24
24
|
};
|
|
25
25
|
truncate: {
|
|
@@ -2,26 +2,26 @@ import type { RecipeVariants } from '@vanilla-extract/recipes';
|
|
|
2
2
|
export declare const textVariants: import("@vanilla-extract/recipes").RuntimeFn<{
|
|
3
3
|
size: {
|
|
4
4
|
sm: {
|
|
5
|
-
fontSize: `var(--${string})` | `var(--${string}, ${string})
|
|
5
|
+
fontSize: `var(--${string})` | `var(--${string}, ${string})`;
|
|
6
6
|
};
|
|
7
7
|
};
|
|
8
8
|
weight: {
|
|
9
9
|
normal: {
|
|
10
|
-
fontWeight: `var(--${string})` | `var(--${string}, ${string})
|
|
10
|
+
fontWeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
11
11
|
};
|
|
12
12
|
medium: {
|
|
13
|
-
fontWeight: `var(--${string})` | `var(--${string}, ${string})
|
|
13
|
+
fontWeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
14
14
|
};
|
|
15
15
|
bold: {
|
|
16
|
-
fontWeight: `var(--${string})` | `var(--${string}, ${string})
|
|
16
|
+
fontWeight: `var(--${string})` | `var(--${string}, ${string})`;
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
19
|
color: {
|
|
20
20
|
muted: {
|
|
21
|
-
color: `var(--${string})` | `var(--${string}, ${string})
|
|
21
|
+
color: `var(--${string})` | `var(--${string}, ${string})`;
|
|
22
22
|
};
|
|
23
23
|
danger: {
|
|
24
|
-
color: `var(--${string})` | `var(--${string}, ${string})
|
|
24
|
+
color: `var(--${string})` | `var(--${string}, ${string})`;
|
|
25
25
|
};
|
|
26
26
|
};
|
|
27
27
|
mono: {
|
|
@@ -20,6 +20,6 @@ export type SuiRpcPaginatedMethods = {
|
|
|
20
20
|
cursor: Cursor;
|
|
21
21
|
} : never;
|
|
22
22
|
};
|
|
23
|
-
export type UseSuiClientInfiniteQueryOptions<T extends keyof SuiRpcPaginatedMethods, TData> = PartialBy<Omit<UseInfiniteQueryOptions<SuiRpcPaginatedMethods[T]['result'], Error, TData,
|
|
23
|
+
export type UseSuiClientInfiniteQueryOptions<T extends keyof SuiRpcPaginatedMethods, TData> = PartialBy<Omit<UseInfiniteQueryOptions<SuiRpcPaginatedMethods[T]['result'], Error, TData, unknown[]>, 'queryFn' | 'initialPageParam' | 'getNextPageParam'>, 'queryKey'>;
|
|
24
24
|
export declare function useSuiClientInfiniteQuery<T extends keyof SuiRpcPaginatedMethods, TData = InfiniteData<SuiRpcPaginatedMethods[T]['result']>>(method: T, params: SuiRpcPaginatedMethods[T]['params'], { queryKey, enabled, ...options }?: UseSuiClientInfiniteQueryOptions<T, TData>): UseInfiniteQueryResult<TData, Error>;
|
|
25
25
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../src/hooks/useSuiClientInfiniteQuery.ts", "../../../src/hooks/useSuiClient.ts", "../../../src/components/SuiClientProvider.tsx"],
|
|
4
|
-
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport type {\n\tInfiniteData,\n\tUseInfiniteQueryOptions,\n\tUseInfiniteQueryResult,\n} from '@tanstack/react-query';\nimport { useInfiniteQuery } from '@tanstack/react-query';\n\nimport type { PartialBy } from '../types/utilityTypes.js';\nimport { useSuiClientContext } from './useSuiClient.js';\n\ninterface PaginatedResult {\n\tdata?: unknown;\n\tnextCursor?: unknown;\n\thasNextPage: boolean;\n}\n\nexport type SuiRpcPaginatedMethodName = {\n\t[K in keyof SuiClient]: SuiClient[K] extends (input: any) => Promise<PaginatedResult> ? K : never;\n}[keyof SuiClient];\n\nexport type SuiRpcPaginatedMethods = {\n\t[K in SuiRpcPaginatedMethodName]: SuiClient[K] extends (\n\t\tinput: infer Params,\n\t) => Promise<\n\t\tinfer Result extends { hasNextPage?: boolean | null; nextCursor?: infer Cursor | null }\n\t>\n\t\t? {\n\t\t\t\tname: K;\n\t\t\t\tresult: Result;\n\t\t\t\tparams: Params;\n\t\t\t\tcursor: Cursor;\n\t\t\t}\n\t\t: never;\n};\n\nexport type UseSuiClientInfiniteQueryOptions<\n\tT extends keyof SuiRpcPaginatedMethods,\n\tTData,\n> = PartialBy<\n\tOmit<\n\t\tUseInfiniteQueryOptions
|
|
5
|
-
"mappings": ";AASA,SAAS,wBAAwB;;;ACLjC,SAAS,kBAAkB;;;ACD3B,SAAS,gBAAgB,aAAa,iBAAiB;AAEvD,SAAS,eAAe,SAAS,gBAAgB;AAyFzC;AAxED,IAAM,mBAAmB,cAA+C,IAAI;AAkBnF,IAAM,mBAAmB;AAAA,EACxB,UAAU,EAAE,KAAK,eAAe,UAAU,EAAE;AAC7C;;;ADlCO,SAAS,sBAAsB;AACrC,QAAM,YAAY,WAAW,gBAAgB;AAE7C,MAAI,CAAC,WAAW;AACf,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AACR;;;
|
|
4
|
+
"sourcesContent": ["// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport type {\n\tInfiniteData,\n\tUseInfiniteQueryOptions,\n\tUseInfiniteQueryResult,\n} from '@tanstack/react-query';\nimport { useInfiniteQuery } from '@tanstack/react-query';\n\nimport type { PartialBy } from '../types/utilityTypes.js';\nimport { useSuiClientContext } from './useSuiClient.js';\n\ninterface PaginatedResult {\n\tdata?: unknown;\n\tnextCursor?: unknown;\n\thasNextPage: boolean;\n}\n\nexport type SuiRpcPaginatedMethodName = {\n\t[K in keyof SuiClient]: SuiClient[K] extends (input: any) => Promise<PaginatedResult> ? K : never;\n}[keyof SuiClient];\n\nexport type SuiRpcPaginatedMethods = {\n\t[K in SuiRpcPaginatedMethodName]: SuiClient[K] extends (\n\t\tinput: infer Params,\n\t) => Promise<\n\t\tinfer Result extends { hasNextPage?: boolean | null; nextCursor?: infer Cursor | null }\n\t>\n\t\t? {\n\t\t\t\tname: K;\n\t\t\t\tresult: Result;\n\t\t\t\tparams: Params;\n\t\t\t\tcursor: Cursor;\n\t\t\t}\n\t\t: never;\n};\n\nexport type UseSuiClientInfiniteQueryOptions<\n\tT extends keyof SuiRpcPaginatedMethods,\n\tTData,\n> = PartialBy<\n\tOmit<\n\t\tUseInfiniteQueryOptions<SuiRpcPaginatedMethods[T]['result'], Error, TData, unknown[]>,\n\t\t'queryFn' | 'initialPageParam' | 'getNextPageParam'\n\t>,\n\t'queryKey'\n>;\n\nexport function useSuiClientInfiniteQuery<\n\tT extends keyof SuiRpcPaginatedMethods,\n\tTData = InfiniteData<SuiRpcPaginatedMethods[T]['result']>,\n>(\n\tmethod: T,\n\tparams: SuiRpcPaginatedMethods[T]['params'],\n\t{\n\t\tqueryKey = [],\n\t\tenabled = !!params,\n\t\t...options\n\t}: UseSuiClientInfiniteQueryOptions<T, TData> = {},\n): UseInfiniteQueryResult<TData, Error> {\n\tconst suiContext = useSuiClientContext();\n\n\treturn useInfiniteQuery({\n\t\t...options,\n\t\tinitialPageParam: null,\n\t\tqueryKey: [suiContext.network, method, params, ...queryKey],\n\t\tenabled,\n\t\tqueryFn: ({ pageParam }) =>\n\t\t\tsuiContext.client[method]({\n\t\t\t\t...(params ?? {}),\n\t\t\t\tcursor: pageParam,\n\t\t\t} as never),\n\t\tgetNextPageParam: (lastPage) => (lastPage.hasNextPage ? (lastPage.nextCursor ?? null) : null),\n\t});\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport type { SuiClient } from '@mysten/sui/client';\nimport { useContext } from 'react';\n\nimport { SuiClientContext } from '../components/SuiClientProvider.js';\n\nexport function useSuiClientContext() {\n\tconst suiClient = useContext(SuiClientContext);\n\n\tif (!suiClient) {\n\t\tthrow new Error(\n\t\t\t'Could not find SuiClientContext. Ensure that you have set up the SuiClientProvider',\n\t\t);\n\t}\n\n\treturn suiClient;\n}\n\nexport function useSuiClient(): SuiClient {\n\treturn useSuiClientContext().client;\n}\n", "// Copyright (c) Mysten Labs, Inc.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { getFullnodeUrl, isSuiClient, SuiClient } from '@mysten/sui/client';\nimport type { SuiClientOptions } from '@mysten/sui/client';\nimport { createContext, useMemo, useState } from 'react';\n\nimport type { NetworkConfig } from '../hooks/networkConfig.js';\n\ntype NetworkConfigs<T extends NetworkConfig | SuiClient = NetworkConfig | SuiClient> = Record<\n\tstring,\n\tT\n>;\n\nexport interface SuiClientProviderContext {\n\tclient: SuiClient;\n\tnetworks: NetworkConfigs;\n\tnetwork: string;\n\tconfig: NetworkConfig | null;\n\tselectNetwork: (network: string) => void;\n}\n\nexport const SuiClientContext = createContext<SuiClientProviderContext | null>(null);\n\nexport type SuiClientProviderProps<T extends NetworkConfigs> = {\n\tcreateClient?: (name: keyof T, config: T[keyof T]) => SuiClient;\n\tchildren: React.ReactNode;\n\tnetworks?: T;\n\tonNetworkChange?: (network: keyof T & string) => void;\n} & (\n\t| {\n\t\t\tdefaultNetwork?: keyof T & string;\n\t\t\tnetwork?: never;\n\t }\n\t| {\n\t\t\tdefaultNetwork?: never;\n\t\t\tnetwork?: keyof T & string;\n\t }\n);\n\nconst DEFAULT_NETWORKS = {\n\tlocalnet: { url: getFullnodeUrl('localnet') },\n};\n\nconst DEFAULT_CREATE_CLIENT = function createClient(\n\t_name: string,\n\tconfig: NetworkConfig | SuiClient,\n) {\n\tif (isSuiClient(config)) {\n\t\treturn config;\n\t}\n\n\treturn new SuiClient(config);\n};\n\nexport function SuiClientProvider<T extends NetworkConfigs>(props: SuiClientProviderProps<T>) {\n\tconst { onNetworkChange, network, children } = props;\n\tconst networks = (props.networks ?? DEFAULT_NETWORKS) as T;\n\tconst createClient =\n\t\t(props.createClient as typeof DEFAULT_CREATE_CLIENT) ?? DEFAULT_CREATE_CLIENT;\n\n\tconst [selectedNetwork, setSelectedNetwork] = useState<keyof T & string>(\n\t\tprops.network ?? props.defaultNetwork ?? (Object.keys(networks)[0] as keyof T & string),\n\t);\n\n\tconst currentNetwork = props.network ?? selectedNetwork;\n\n\tconst client = useMemo(() => {\n\t\treturn createClient(currentNetwork, networks[currentNetwork]);\n\t}, [createClient, currentNetwork, networks]);\n\n\tconst ctx = useMemo((): SuiClientProviderContext => {\n\t\treturn {\n\t\t\tclient,\n\t\t\tnetworks,\n\t\t\tnetwork: currentNetwork,\n\t\t\tconfig:\n\t\t\t\tnetworks[currentNetwork] instanceof SuiClient\n\t\t\t\t\t? null\n\t\t\t\t\t: (networks[currentNetwork] as SuiClientOptions),\n\t\t\tselectNetwork: (newNetwork) => {\n\t\t\t\tif (currentNetwork === newNetwork) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (!network && newNetwork !== selectedNetwork) {\n\t\t\t\t\tsetSelectedNetwork(newNetwork);\n\t\t\t\t}\n\n\t\t\t\tonNetworkChange?.(newNetwork);\n\t\t\t},\n\t\t};\n\t}, [client, networks, selectedNetwork, currentNetwork, network, onNetworkChange]);\n\n\treturn <SuiClientContext.Provider value={ctx}>{children}</SuiClientContext.Provider>;\n}\n"],
|
|
5
|
+
"mappings": ";AASA,SAAS,wBAAwB;;;ACLjC,SAAS,kBAAkB;;;ACD3B,SAAS,gBAAgB,aAAa,iBAAiB;AAEvD,SAAS,eAAe,SAAS,gBAAgB;AAyFzC;AAxED,IAAM,mBAAmB,cAA+C,IAAI;AAkBnF,IAAM,mBAAmB;AAAA,EACxB,UAAU,EAAE,KAAK,eAAe,UAAU,EAAE;AAC7C;;;ADlCO,SAAS,sBAAsB;AACrC,QAAM,YAAY,WAAW,gBAAgB;AAE7C,MAAI,CAAC,WAAW;AACf,UAAM,IAAI;AAAA,MACT;AAAA,IACD;AAAA,EACD;AAEA,SAAO;AACR;;;ADgCO,SAAS,0BAIf,QACA,QACA;AAAA,EACC,WAAW,CAAC;AAAA,EACZ,UAAU,CAAC,CAAC;AAAA,EACZ,GAAG;AACJ,IAAgD,CAAC,GACV;AACvC,QAAM,aAAa,oBAAoB;AAEvC,SAAO,iBAAiB;AAAA,IACvB,GAAG;AAAA,IACH,kBAAkB;AAAA,IAClB,UAAU,CAAC,WAAW,SAAS,QAAQ,QAAQ,GAAG,QAAQ;AAAA,IAC1D;AAAA,IACA,SAAS,CAAC,EAAE,UAAU,MACrB,WAAW,OAAO,MAAM,EAAE;AAAA,MACzB,GAAI,UAAU,CAAC;AAAA,MACf,QAAQ;AAAA,IACT,CAAU;AAAA,IACX,kBAAkB,CAAC,aAAc,SAAS,cAAe,SAAS,cAAc,OAAQ;AAAA,EACzF,CAAC;AACF;",
|
|
6
6
|
"names": []
|
|
7
7
|
}
|