@web3auth/modal 7.0.0-beta.0 → 7.0.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.
@@ -1,5 +1,6 @@
1
1
  import type { OPENLOGIN_NETWORK_TYPE } from "@toruslabs/openlogin-utils";
2
2
  import { CustomChainConfig, IAdapter, IBaseProvider, WALLET_ADAPTER_TYPE } from "@web3auth/base";
3
+ import { UIConfig } from "@web3auth/ui";
3
4
  export declare function getPrivateKeyProvider(chainConfig: CustomChainConfig): Promise<IBaseProvider<string>>;
4
5
  export declare const getDefaultAdapterModule: (params: {
5
6
  name: WALLET_ADAPTER_TYPE;
@@ -7,4 +8,5 @@ export declare const getDefaultAdapterModule: (params: {
7
8
  customChainConfig: Partial<CustomChainConfig> & Pick<CustomChainConfig, "chainNamespace">;
8
9
  sessionTime?: number;
9
10
  web3AuthNetwork?: OPENLOGIN_NETWORK_TYPE;
11
+ uiConfig?: Omit<UIConfig, "adapterListener">;
10
12
  }) => Promise<IAdapter<unknown>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@web3auth/modal",
3
- "version": "7.0.0-beta.0",
3
+ "version": "7.0.0",
4
4
  "homepage": "https://github.com/Web3Auth/Web3Auth#readme",
5
5
  "license": "ISC",
6
6
  "main": "dist/modal.cjs.js",
@@ -19,18 +19,18 @@
19
19
  "pre-commit": "lint-staged --cwd ."
20
20
  },
21
21
  "dependencies": {
22
- "@web3auth/base": "^7.0.0-beta.0",
23
- "@web3auth/base-provider": "^7.0.0-beta.0",
24
- "@web3auth/ethereum-provider": "^7.0.0-beta.0",
25
- "@web3auth/metamask-adapter": "^7.0.0-beta.0",
26
- "@web3auth/no-modal": "^7.0.0-beta.0",
27
- "@web3auth/openlogin-adapter": "^7.0.0-beta.0",
28
- "@web3auth/phantom-adapter": "^7.0.0-beta.0",
29
- "@web3auth/solana-provider": "^7.0.0-beta.0",
30
- "@web3auth/torus-evm-adapter": "^7.0.0-beta.0",
31
- "@web3auth/torus-solana-adapter": "^7.0.0-beta.0",
32
- "@web3auth/ui": "^7.0.0-beta.0",
33
- "@web3auth/wallet-connect-v2-adapter": "^7.0.0-beta.0"
22
+ "@web3auth/base": "^7.0.0",
23
+ "@web3auth/base-provider": "^7.0.0",
24
+ "@web3auth/ethereum-provider": "^7.0.0",
25
+ "@web3auth/metamask-adapter": "^7.0.0",
26
+ "@web3auth/no-modal": "^7.0.0",
27
+ "@web3auth/openlogin-adapter": "^7.0.0",
28
+ "@web3auth/phantom-adapter": "^7.0.0",
29
+ "@web3auth/solana-provider": "^7.0.0",
30
+ "@web3auth/torus-evm-adapter": "^7.0.0",
31
+ "@web3auth/torus-solana-adapter": "^7.0.0",
32
+ "@web3auth/ui": "^7.0.0",
33
+ "@web3auth/wallet-connect-v2-adapter": "^7.0.0"
34
34
  },
35
35
  "devDependencies": {
36
36
  "@svgr/webpack": "^8.1.0",
@@ -71,5 +71,5 @@
71
71
  "node": ">=18.x",
72
72
  "npm": ">=9.x"
73
73
  },
74
- "gitHead": "3555b328ece2c5f3b97be93f6ff7ddecb322535a"
74
+ "gitHead": "b13ea4976979dcd6c63a1ecb3d96b5dc448fd535"
75
75
  }
package/src/default.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type { OPENLOGIN_NETWORK_TYPE, OpenLoginOptions } from "@toruslabs/openlogin-utils";
2
2
  import { CHAIN_NAMESPACES, CustomChainConfig, getChainConfig, IAdapter, IBaseProvider, WALLET_ADAPTER_TYPE, WALLET_ADAPTERS } from "@web3auth/base";
3
3
  import { CommonPrivateKeyProvider } from "@web3auth/base-provider";
4
+ import { UIConfig } from "@web3auth/ui";
4
5
 
5
6
  export async function getPrivateKeyProvider(chainConfig: CustomChainConfig): Promise<IBaseProvider<string>> {
6
7
  if (chainConfig.chainNamespace === CHAIN_NAMESPACES.SOLANA) {
@@ -24,8 +25,9 @@ export const getDefaultAdapterModule = async (params: {
24
25
  customChainConfig: Partial<CustomChainConfig> & Pick<CustomChainConfig, "chainNamespace">;
25
26
  sessionTime?: number;
26
27
  web3AuthNetwork?: OPENLOGIN_NETWORK_TYPE;
28
+ uiConfig?: Omit<UIConfig, "adapterListener">;
27
29
  }): Promise<IAdapter<unknown>> => {
28
- const { name, customChainConfig, clientId, sessionTime, web3AuthNetwork } = params;
30
+ const { name, customChainConfig, clientId, sessionTime, web3AuthNetwork, uiConfig } = params;
29
31
  if (!Object.values(CHAIN_NAMESPACES).includes(customChainConfig.chainNamespace))
30
32
  throw new Error(`Invalid chainNamespace: ${customChainConfig.chainNamespace}`);
31
33
  const finalChainConfig = {
@@ -73,7 +75,7 @@ export const getDefaultAdapterModule = async (params: {
73
75
  ...defaultOptions,
74
76
  clientId,
75
77
  chainConfig: { ...finalChainConfig },
76
- adapterSettings: { ...(defaultOptions.adapterSettings as OpenLoginOptions), clientId, network: web3AuthNetwork },
78
+ adapterSettings: { ...(defaultOptions.adapterSettings as OpenLoginOptions), clientId, network: web3AuthNetwork, whiteLabel: uiConfig },
77
79
  sessionTime,
78
80
  web3AuthNetwork,
79
81
  privateKeyProvider,
@@ -15,7 +15,7 @@ import {
15
15
  import { CommonJRPCProvider } from "@web3auth/base-provider";
16
16
  import { Web3AuthNoModal, Web3AuthNoModalOptions } from "@web3auth/no-modal";
17
17
  import type { OpenloginAdapter } from "@web3auth/openlogin-adapter";
18
- import { getAdapterSocialLogins, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from "@web3auth/ui";
18
+ import { getAdapterSocialLogins, getUserLanguage, LOGIN_MODAL_EVENTS, LoginModal, OPENLOGIN_PROVIDERS, UIConfig } from "@web3auth/ui";
19
19
 
20
20
  import {
21
21
  defaultEvmDappModalConfig,
@@ -26,7 +26,6 @@ import {
26
26
  } from "./config";
27
27
  import { getDefaultAdapterModule, getPrivateKeyProvider } from "./default";
28
28
  import { AdaptersModalConfig, IWeb3AuthModal, ModalConfig } from "./interface";
29
- import { getUserLanguage } from "./utils";
30
29
 
31
30
  export interface Web3AuthOptions extends Web3AuthNoModalOptions {
32
31
  /**
@@ -77,19 +76,12 @@ export class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {
77
76
  throw new Error(`Invalid chainNamespace provided: ${providedChainConfig.chainNamespace}`);
78
77
  }
79
78
 
80
- // get userLanguage
81
- const defaultLanguage = getUserLanguage(this.options.uiConfig?.defaultLanguage);
79
+ if (!this.options.uiConfig.defaultLanguage) this.options.uiConfig.defaultLanguage = getUserLanguage(this.options.uiConfig.defaultLanguage);
80
+ if (!this.options.uiConfig.mode) this.options.uiConfig.mode = "auto";
82
81
 
83
82
  this.loginModal = new LoginModal({
84
- theme: this.options.uiConfig?.theme,
85
- appName: this.options.uiConfig?.appName || "blockchain",
86
- appLogo: this.options.uiConfig?.appLogo || "",
83
+ ...this.options.uiConfig,
87
84
  adapterListener: this,
88
- displayErrorsOnModal: this.options.uiConfig?.displayErrorsOnModal,
89
- defaultLanguage,
90
- modalZIndex: this.options.uiConfig?.modalZIndex || "99998",
91
- loginGridCol: this.options.uiConfig?.loginGridCol || 3,
92
- primaryButton: this.options.uiConfig?.primaryButton || "socialLogin",
93
85
  });
94
86
  this.subscribeToLoginModalEvents();
95
87
  }
@@ -131,6 +123,7 @@ export class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {
131
123
  clientId: this.options.clientId,
132
124
  sessionTime: this.options.sessionTime,
133
125
  web3AuthNetwork: this.options.web3AuthNetwork,
126
+ uiConfig: this.options.uiConfig,
134
127
  });
135
128
 
136
129
  this.walletAdapters[adapterName] = ad;
@@ -159,7 +152,7 @@ export class Web3Auth extends Web3AuthNoModal implements IWeb3AuthModal {
159
152
  const openloginAdapter = this.walletAdapters[adapterName] as OpenloginAdapter;
160
153
  if (!openloginAdapter.privateKeyProvider) {
161
154
  const currentPrivateKeyProvider = await getPrivateKeyProvider(openloginAdapter.chainConfigProxy as CustomChainConfig);
162
- openloginAdapter.setAdapterSettings({ privateKeyProvider: currentPrivateKeyProvider });
155
+ openloginAdapter.setAdapterSettings({ privateKeyProvider: currentPrivateKeyProvider, whiteLabel: this.options.uiConfig });
163
156
  }
164
157
  }
165
158
 
@@ -1,12 +0,0 @@
1
- export declare const languageMap: {
2
- en: string;
3
- de: string;
4
- ja: string;
5
- ko: string;
6
- zh: string;
7
- es: string;
8
- fr: string;
9
- pt: string;
10
- nl: string;
11
- };
12
- export declare const getUserLanguage: (defaultLanguage: string | undefined) => string;
package/src/utils.ts DELETED
@@ -1,25 +0,0 @@
1
- interface NavigatorLanguage {
2
- userLanguage?: string;
3
- }
4
-
5
- export const languageMap = {
6
- en: "english",
7
- de: "german",
8
- ja: "japanese",
9
- ko: "korean",
10
- zh: "mandarin",
11
- es: "spanish",
12
- fr: "french",
13
- pt: "portuguese",
14
- nl: "dutch",
15
- };
16
-
17
- export const getUserLanguage = (defaultLanguage: string | undefined) => {
18
- let userLanguage = defaultLanguage;
19
- if (!userLanguage) {
20
- const browserLanguage =
21
- typeof window !== "undefined" ? (window.navigator as NavigatorLanguage).userLanguage || window.navigator.language || "en-US" : "en-US";
22
- userLanguage = browserLanguage.split("-")[0];
23
- }
24
- return Object.prototype.hasOwnProperty.call(languageMap, userLanguage) ? userLanguage : "en";
25
- };