@reown/appkit 1.6.5 → 1.6.6-8edd53b.0

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.
Files changed (51) hide show
  1. package/dist/esm/exports/basic.js +14 -0
  2. package/dist/esm/exports/basic.js.map +1 -0
  3. package/dist/esm/exports/constants.js +1 -1
  4. package/dist/esm/exports/constants.js.map +1 -1
  5. package/dist/esm/package.json +7 -7
  6. package/dist/esm/src/client/appkit-basic.js +23 -0
  7. package/dist/esm/src/client/appkit-basic.js.map +1 -0
  8. package/dist/esm/src/client/appkit.js +308 -0
  9. package/dist/esm/src/client/appkit.js.map +1 -0
  10. package/dist/esm/src/client/core.js +1273 -0
  11. package/dist/esm/src/client/core.js.map +1 -0
  12. package/dist/esm/src/client.js +2 -1
  13. package/dist/esm/src/client.js.map +1 -1
  14. package/dist/esm/src/utils/SIWETypesUtil.js +2 -0
  15. package/dist/esm/src/utils/SIWETypesUtil.js.map +1 -0
  16. package/dist/esm/tests/appkit.test.js +1459 -0
  17. package/dist/esm/tests/appkit.test.js.map +1 -0
  18. package/dist/esm/tests/connectors/WalletConnectConnector.test.js +63 -0
  19. package/dist/esm/tests/connectors/WalletConnectConnector.test.js.map +1 -0
  20. package/dist/esm/tests/mocks/Adapter.js +30 -0
  21. package/dist/esm/tests/mocks/Adapter.js.map +1 -0
  22. package/dist/esm/tests/mocks/AppKit.js +24 -0
  23. package/dist/esm/tests/mocks/AppKit.js.map +1 -0
  24. package/dist/esm/tests/mocks/Options.js +33 -0
  25. package/dist/esm/tests/mocks/Options.js.map +1 -0
  26. package/dist/esm/tests/mocks/UniversalProvider.js +137 -0
  27. package/dist/esm/tests/mocks/UniversalProvider.js.map +1 -0
  28. package/dist/esm/tests/siwe.test.js +258 -0
  29. package/dist/esm/tests/siwe.test.js.map +1 -0
  30. package/dist/esm/tests/universal-adapter.test.js +152 -0
  31. package/dist/esm/tests/universal-adapter.test.js.map +1 -0
  32. package/dist/esm/tests/utils/HelpersUtil.test.js +217 -0
  33. package/dist/esm/tests/utils/HelpersUtil.test.js.map +1 -0
  34. package/dist/esm/tsconfig.build.tsbuildinfo +1 -1
  35. package/dist/esm/tsconfig.tsbuildinfo +1 -0
  36. package/dist/types/exports/basic.d.ts +10 -0
  37. package/dist/types/exports/constants.d.ts +1 -1
  38. package/dist/types/src/client/appkit-basic.d.ts +22 -0
  39. package/dist/types/src/client/appkit.d.ts +21 -0
  40. package/dist/types/src/client/core.d.ts +193 -0
  41. package/dist/types/src/utils/SIWETypesUtil.d.ts +127 -0
  42. package/dist/types/tests/appkit.test.d.ts +1 -0
  43. package/dist/types/tests/connectors/WalletConnectConnector.test.d.ts +1 -0
  44. package/dist/types/tests/mocks/Adapter.d.ts +3 -0
  45. package/dist/types/tests/mocks/AppKit.d.ts +3 -0
  46. package/dist/types/tests/mocks/Options.d.ts +6 -0
  47. package/dist/types/tests/mocks/UniversalProvider.d.ts +3 -0
  48. package/dist/types/tests/siwe.test.d.ts +1 -0
  49. package/dist/types/tests/universal-adapter.test.d.ts +1 -0
  50. package/dist/types/tests/utils/HelpersUtil.test.d.ts +1 -0
  51. package/package.json +15 -15
@@ -0,0 +1,14 @@
1
+ import { CoreHelperUtil } from '@reown/appkit-core';
2
+ import { AppKit } from '../src/client/appkit-basic.js';
3
+ import { PACKAGE_VERSION } from './constants.js';
4
+ // -- Utils & Other -----------------------------------------------------
5
+ export * from '../src/utils/index.js';
6
+ export { CoreHelperUtil, AccountController } from '@reown/appkit-core';
7
+ export function createAppKit(options) {
8
+ return new AppKit({
9
+ ...options,
10
+ sdkVersion: CoreHelperUtil.generateSdkVersion(options.adapters ?? [], 'html', PACKAGE_VERSION)
11
+ });
12
+ }
13
+ export { AppKit };
14
+ //# sourceMappingURL=basic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"basic.js","sourceRoot":"","sources":["../../../exports/basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,+BAA+B,CAAA;AAEtD,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAEhD,yEAAyE;AACzE,cAAc,uBAAuB,CAAA;AAGrC,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAItE,MAAM,UAAU,YAAY,CAAC,OAAqB;IAChD,OAAO,IAAI,MAAM,CAAC;QAChB,GAAG,OAAO;QACV,UAAU,EAAE,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,MAAM,EAAE,eAAe,CAAC;KAC/F,CAAC,CAAA;AACJ,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,CAAA"}
@@ -1,2 +1,2 @@
1
- export const PACKAGE_VERSION = '1.6.5';
1
+ export const PACKAGE_VERSION = '1.6.6-8edd53b.0';
2
2
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../exports/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,OAAO,CAAA"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../exports/constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAA"}
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@reown/appkit",
3
- "version": "1.6.5",
3
+ "version": "1.6.6-8edd53b.0",
4
4
  "type": "module",
5
5
  "main": "./dist/esm/exports/index.js",
6
6
  "types": "./dist/types/exports/index.d.ts",
@@ -106,24 +106,24 @@
106
106
  "@reown/appkit-core": "workspace:*",
107
107
  "@reown/appkit-polyfills": "workspace:*",
108
108
  "@reown/appkit-scaffold-ui": "workspace:*",
109
- "@reown/appkit-siwe": "workspace:*",
110
109
  "@reown/appkit-ui": "workspace:*",
111
110
  "@reown/appkit-utils": "workspace:*",
112
111
  "@reown/appkit-wallet": "workspace:*",
113
- "@walletconnect/types": "2.17.5",
114
- "@walletconnect/universal-provider": "2.17.5",
115
- "@walletconnect/utils": "2.17.5",
112
+ "@walletconnect/types": "2.18.0",
113
+ "@walletconnect/universal-provider": "2.18.0",
114
+ "@walletconnect/utils": "2.18.0",
116
115
  "bs58": "6.0.0",
117
116
  "valtio": "1.11.2",
118
117
  "viem": "2.x"
119
118
  },
120
119
  "devDependencies": {
120
+ "@reown/appkit-siwe": "workspace:*",
121
121
  "@types/react": "18.3.1",
122
122
  "@types/react-dom": "18.3.1",
123
123
  "@vitest/coverage-v8": "2.1.3",
124
124
  "@vue/runtime-core": "3.4.3",
125
- "@walletconnect/types": "2.13.3",
126
- "@walletconnect/universal-provider": "2.17.5",
125
+ "@walletconnect/types": "2.18.0",
126
+ "@walletconnect/universal-provider": "2.18.0",
127
127
  "react": "18.3.1",
128
128
  "react-dom": "18.3.1",
129
129
  "vitest": "2.1.3",
@@ -0,0 +1,23 @@
1
+ import {} from '@reown/appkit-common';
2
+ import { AccountController, CoreHelperUtil, OptionsController } from '@reown/appkit-core';
3
+ import { AppKitCore } from './core.js';
4
+ // -- Export Controllers -------------------------------------------------------
5
+ export { AccountController };
6
+ // -- Helpers -------------------------------------------------------------------
7
+ let isInitialized = false;
8
+ // -- Client --------------------------------------------------------------------
9
+ export class AppKit extends AppKitCore {
10
+ // -- Overrides --------------------------------------------------------------
11
+ async injectModalUi() {
12
+ if (!isInitialized && CoreHelperUtil.isClient()) {
13
+ await import('@reown/appkit-scaffold-ui/basic');
14
+ await import('@reown/appkit-scaffold-ui/w3m-modal');
15
+ const modal = document.createElement('w3m-modal');
16
+ if (!OptionsController.state.disableAppend && !OptionsController.state.enableEmbedded) {
17
+ document.body.insertAdjacentElement('beforeend', modal);
18
+ }
19
+ isInitialized = true;
20
+ }
21
+ }
22
+ }
23
+ //# sourceMappingURL=appkit-basic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appkit-basic.js","sourceRoot":"","sources":["../../../../src/client/appkit-basic.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,MAAM,sBAAsB,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAGzF,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAA;AAQtC,gFAAgF;AAChF,OAAO,EAAE,iBAAiB,EAAE,CAAA;AAmB5B,iFAAiF;AACjF,IAAI,aAAa,GAAG,KAAK,CAAA;AAEzB,iFAAiF;AACjF,MAAM,OAAO,MAAO,SAAQ,UAAU;IASpC,8EAA8E;IAC3D,KAAK,CAAC,aAAa;QACpC,IAAI,CAAC,aAAa,IAAI,cAAc,CAAC,QAAQ,EAAE,EAAE,CAAC;YAChD,MAAM,MAAM,CAAC,iCAAiC,CAAC,CAAA;YAC/C,MAAM,MAAM,CAAC,qCAAqC,CAAC,CAAA;YACnD,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,CAAA;YACjD,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,aAAa,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC;gBACtF,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAA;YACzD,CAAC;YACD,aAAa,GAAG,IAAI,CAAA;QACtB,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,308 @@
1
+ /* eslint-disable max-depth */
2
+ import { ConstantsUtil, getW3mThemeVariables } from '@reown/appkit-common';
3
+ import { ConstantsUtil as CoreConstantsUtil } from '@reown/appkit-core';
4
+ import { AccountController, AlertController, ChainController, CoreHelperUtil, OptionsController, StorageUtil, ThemeController } from '@reown/appkit-core';
5
+ import { ErrorUtil, HelpersUtil, ConstantsUtil as UtilConstantsUtil } from '@reown/appkit-utils';
6
+ import { W3mFrameHelpers, W3mFrameProvider, W3mFrameRpcConstants } from '@reown/appkit-wallet';
7
+ import { W3mFrameProviderSingleton } from '../auth-provider/W3MFrameProviderSingleton.js';
8
+ import { ProviderUtil } from '../store/ProviderUtil.js';
9
+ import { AppKitCore } from './core.js';
10
+ // -- Export Controllers -------------------------------------------------------
11
+ export { AccountController };
12
+ // -- Helpers -------------------------------------------------------------------
13
+ let isInitialized = false;
14
+ // -- Client --------------------------------------------------------------------
15
+ export class AppKit extends AppKitCore {
16
+ // -- Private ------------------------------------------------------------------
17
+ setupAuthConnectorListeners(provider) {
18
+ provider.onRpcRequest((request) => {
19
+ if (W3mFrameHelpers.checkIfRequestExists(request)) {
20
+ if (!W3mFrameHelpers.checkIfRequestIsSafe(request)) {
21
+ this.handleUnsafeRPCRequest();
22
+ }
23
+ }
24
+ else {
25
+ this.open();
26
+ // eslint-disable-next-line no-console
27
+ console.error(W3mFrameRpcConstants.RPC_METHOD_NOT_ALLOWED_MESSAGE, {
28
+ method: request.method
29
+ });
30
+ setTimeout(() => {
31
+ this.showErrorMessage(W3mFrameRpcConstants.RPC_METHOD_NOT_ALLOWED_UI_MESSAGE);
32
+ }, 300);
33
+ provider.rejectRpcRequests();
34
+ }
35
+ });
36
+ provider.onRpcError(() => {
37
+ const isModalOpen = this.isOpen();
38
+ if (isModalOpen) {
39
+ if (this.isTransactionStackEmpty()) {
40
+ this.close();
41
+ }
42
+ else {
43
+ this.popTransactionStack(true);
44
+ }
45
+ }
46
+ });
47
+ provider.onRpcSuccess((_, request) => {
48
+ const isSafeRequest = W3mFrameHelpers.checkIfRequestIsSafe(request);
49
+ if (isSafeRequest) {
50
+ return;
51
+ }
52
+ if (this.isTransactionStackEmpty()) {
53
+ this.close();
54
+ if (AccountController.state.address && ChainController.state.activeCaipNetwork?.id) {
55
+ this.updateNativeBalance();
56
+ }
57
+ }
58
+ else {
59
+ this.popTransactionStack();
60
+ if (AccountController.state.address && ChainController.state.activeCaipNetwork?.id) {
61
+ this.updateNativeBalance();
62
+ }
63
+ }
64
+ });
65
+ provider.onNotConnected(() => {
66
+ const namespace = ChainController.state.activeChain;
67
+ const connectorId = StorageUtil.getConnectedConnectorId(namespace);
68
+ const isConnectedWithAuth = connectorId === ConstantsUtil.CONNECTOR_ID.AUTH;
69
+ if (isConnectedWithAuth) {
70
+ this.setCaipAddress(undefined, namespace);
71
+ this.setLoading(false);
72
+ }
73
+ });
74
+ provider.onConnect(async (user) => {
75
+ const namespace = ChainController.state.activeChain;
76
+ // To keep backwards compatibility, eip155 chainIds are numbers and not actual caipChainIds
77
+ const caipAddress = namespace === ConstantsUtil.CHAIN.EVM
78
+ ? `eip155:${user.chainId}:${user.address}`
79
+ : `${user.chainId}:${user.address}`;
80
+ this.setSmartAccountDeployed(Boolean(user.smartAccountDeployed), namespace);
81
+ if (!HelpersUtil.isLowerCaseMatch(user.address, AccountController.state.address)) {
82
+ this.syncIdentity({
83
+ address: user.address,
84
+ chainId: user.chainId,
85
+ chainNamespace: namespace
86
+ });
87
+ }
88
+ this.setCaipAddress(caipAddress, namespace);
89
+ this.setUser({ ...(AccountController.state.user || {}), email: user.email });
90
+ const preferredAccountType = (user.preferredAccountType ||
91
+ OptionsController.state.defaultAccountTypes[namespace]);
92
+ this.setPreferredAccountType(preferredAccountType, namespace);
93
+ const userAccounts = user.accounts?.map(account => CoreHelperUtil.createAccount(namespace, account.address, account.type || OptionsController.state.defaultAccountTypes[namespace]));
94
+ this.setAllAccounts(userAccounts || [
95
+ CoreHelperUtil.createAccount(namespace, user.address, preferredAccountType)
96
+ ], namespace);
97
+ await provider.getSmartAccountEnabledNetworks();
98
+ this.setLoading(false);
99
+ });
100
+ provider.onSocialConnected(({ userName }) => {
101
+ this.setUser({ ...(AccountController.state.user || {}), username: userName });
102
+ });
103
+ provider.onGetSmartAccountEnabledNetworks(networks => {
104
+ this.setSmartAccountEnabledNetworks(networks, ChainController.state.activeChain);
105
+ });
106
+ provider.onSetPreferredAccount(({ address, type }) => {
107
+ if (!address) {
108
+ return;
109
+ }
110
+ this.setPreferredAccountType(type, ChainController.state.activeChain);
111
+ });
112
+ }
113
+ async syncAuthConnector(provider) {
114
+ this.setLoading(true);
115
+ const isLoginEmailUsed = provider.getLoginEmailUsed();
116
+ this.setLoading(isLoginEmailUsed);
117
+ if (isLoginEmailUsed) {
118
+ this.setStatus('connecting', ChainController.state.activeChain);
119
+ }
120
+ const email = provider.getEmail();
121
+ const username = provider.getUsername();
122
+ this.setUser({ ...(AccountController.state?.user || {}), username, email });
123
+ this.setupAuthConnectorListeners(provider);
124
+ const { isConnected } = await provider.isConnected();
125
+ const theme = ThemeController.getSnapshot();
126
+ const options = OptionsController.getSnapshot();
127
+ provider.syncDappData({
128
+ metadata: options.metadata,
129
+ sdkVersion: options.sdkVersion,
130
+ projectId: options.projectId,
131
+ sdkType: options.sdkType
132
+ });
133
+ provider.syncTheme({
134
+ themeMode: theme.themeMode,
135
+ themeVariables: theme.themeVariables,
136
+ w3mThemeVariables: getW3mThemeVariables(theme.themeVariables, theme.themeMode)
137
+ });
138
+ const namespace = StorageUtil.getActiveNamespace();
139
+ if (namespace) {
140
+ if (isConnected && this.connectionControllerClient?.connectExternal) {
141
+ await this.connectionControllerClient?.connectExternal({
142
+ id: ConstantsUtil.CONNECTOR_ID.AUTH,
143
+ info: { name: ConstantsUtil.CONNECTOR_ID.AUTH },
144
+ type: UtilConstantsUtil.CONNECTOR_TYPE_AUTH,
145
+ provider,
146
+ chainId: ChainController.state.activeCaipNetwork?.id,
147
+ chain: namespace
148
+ });
149
+ this.setStatus('connected', namespace);
150
+ }
151
+ else if (StorageUtil.getConnectedConnectorId(namespace) === ConstantsUtil.CONNECTOR_ID.AUTH) {
152
+ this.setStatus('disconnected', namespace);
153
+ StorageUtil.removeConnectedNamespace(namespace);
154
+ }
155
+ }
156
+ this.setLoading(false);
157
+ }
158
+ createAuthProvider() {
159
+ const isEmailEnabled = this.options?.features?.email === undefined
160
+ ? CoreConstantsUtil.DEFAULT_FEATURES.email
161
+ : this.options?.features?.email;
162
+ const isSocialsEnabled = this.options?.features?.socials
163
+ ? this.options?.features?.socials?.length > 0
164
+ : CoreConstantsUtil.DEFAULT_FEATURES.socials;
165
+ const isAuthEnabled = isEmailEnabled || isSocialsEnabled;
166
+ if (!this.authProvider && this.options?.projectId && isAuthEnabled) {
167
+ this.authProvider = W3mFrameProviderSingleton.getInstance({
168
+ projectId: this.options.projectId,
169
+ enableLogger: this.options.enableAuthLogger,
170
+ chainId: this.getCaipNetwork()?.caipNetworkId,
171
+ onTimeout: () => {
172
+ AlertController.open(ErrorUtil.ALERT_ERRORS.SOCIALS_TIMEOUT, 'error');
173
+ }
174
+ });
175
+ this.subscribeState(val => {
176
+ if (!val.open) {
177
+ this.authProvider?.rejectRpcRequests();
178
+ }
179
+ });
180
+ this.syncAuthConnector(this.authProvider);
181
+ }
182
+ }
183
+ createAuthProviderForAdapter(chainNamespace) {
184
+ // Override as we need to set authProvider for each adapter
185
+ this.createAuthProvider();
186
+ if (this.authProvider) {
187
+ this.chainAdapters?.[chainNamespace]?.setAuthProvider?.(this.authProvider);
188
+ }
189
+ }
190
+ // -- Overrides ------
191
+ async syncNamespaceConnection(namespace) {
192
+ const isEmailUsed = this.authProvider?.getLoginEmailUsed();
193
+ if (isEmailUsed) {
194
+ return;
195
+ }
196
+ await super.syncNamespaceConnection(namespace);
197
+ }
198
+ async switchCaipNetwork(caipNetwork) {
199
+ if (!caipNetwork) {
200
+ return;
201
+ }
202
+ if (AccountController.state.address) {
203
+ if (caipNetwork.chainNamespace === ChainController.state.activeChain) {
204
+ const adapter = this.getAdapter(ChainController.state.activeChain);
205
+ const provider = ProviderUtil.getProvider(ChainController.state.activeChain);
206
+ const providerType = ProviderUtil.state.providerIds[ChainController.state.activeChain];
207
+ await adapter?.switchNetwork({ caipNetwork, provider, providerType });
208
+ this.setCaipNetwork(caipNetwork);
209
+ await this.syncAccount({
210
+ address: AccountController.state.address,
211
+ chainId: caipNetwork.id,
212
+ chainNamespace: caipNetwork.chainNamespace
213
+ });
214
+ }
215
+ else {
216
+ const providerType = ProviderUtil.state.providerIds[ChainController.state.activeChain];
217
+ this.setCaipNetwork(caipNetwork);
218
+ if (providerType === UtilConstantsUtil.CONNECTOR_TYPE_AUTH) {
219
+ try {
220
+ ChainController.state.activeChain = caipNetwork.chainNamespace;
221
+ await this.connectionControllerClient?.connectExternal?.({
222
+ id: ConstantsUtil.CONNECTOR_ID.AUTH,
223
+ provider: this.authProvider,
224
+ chain: caipNetwork.chainNamespace,
225
+ chainId: caipNetwork.id,
226
+ type: UtilConstantsUtil.CONNECTOR_TYPE_AUTH,
227
+ caipNetwork
228
+ });
229
+ this.setCaipNetwork(caipNetwork);
230
+ }
231
+ catch (error) {
232
+ const adapter = this.getAdapter(caipNetwork.chainNamespace);
233
+ await adapter?.switchNetwork({
234
+ caipNetwork,
235
+ provider: this.authProvider,
236
+ providerType
237
+ });
238
+ }
239
+ }
240
+ else if (providerType === 'WALLET_CONNECT') {
241
+ this.syncWalletConnectAccount();
242
+ }
243
+ else {
244
+ const address = this.getAddressByChainNamespace(caipNetwork.chainNamespace);
245
+ if (address) {
246
+ this.syncAccount({
247
+ address,
248
+ chainId: caipNetwork.id,
249
+ chainNamespace: caipNetwork.chainNamespace
250
+ });
251
+ }
252
+ }
253
+ }
254
+ }
255
+ else {
256
+ this.setCaipNetwork(caipNetwork);
257
+ }
258
+ }
259
+ async initChainAdapter(namespace) {
260
+ await super.initChainAdapter(namespace);
261
+ this.createAuthProviderForAdapter(namespace);
262
+ }
263
+ async injectModalUi() {
264
+ if (!isInitialized && CoreHelperUtil.isClient()) {
265
+ const features = { ...CoreConstantsUtil.DEFAULT_FEATURES, ...this.options.features };
266
+ // Selectively import views based on feature flags
267
+ const featureImportPromises = [];
268
+ if (features) {
269
+ const usingEmbeddedWallet = features.email || (features.socials && features.socials.length);
270
+ if (usingEmbeddedWallet) {
271
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/embedded-wallet'));
272
+ }
273
+ if (features.email) {
274
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/email'));
275
+ }
276
+ if (features.socials) {
277
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/socials'));
278
+ }
279
+ if (features.swaps) {
280
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/swaps'));
281
+ }
282
+ if (features.send) {
283
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/send'));
284
+ }
285
+ if (features.receive) {
286
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/receive'));
287
+ }
288
+ if (features.onramp) {
289
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/onramp'));
290
+ }
291
+ if (features.history) {
292
+ featureImportPromises.push(import('@reown/appkit-scaffold-ui/transactions'));
293
+ }
294
+ }
295
+ await Promise.all([
296
+ ...featureImportPromises,
297
+ import('@reown/appkit-scaffold-ui'),
298
+ import('@reown/appkit-scaffold-ui/w3m-modal')
299
+ ]);
300
+ const modal = document.createElement('w3m-modal');
301
+ if (!OptionsController.state.disableAppend && !OptionsController.state.enableEmbedded) {
302
+ document.body.insertAdjacentElement('beforeend', modal);
303
+ }
304
+ isInitialized = true;
305
+ }
306
+ }
307
+ }
308
+ //# sourceMappingURL=appkit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appkit.js","sourceRoot":"","sources":["../../../../src/client/appkit.ts"],"names":[],"mappings":"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"}