@web3auth/modal 10.0.0-beta.2 → 10.0.0-beta.3

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 (83) hide show
  1. package/dist/lib.cjs/packages/modal/src/config.js +1 -3
  2. package/dist/lib.cjs/packages/modal/src/modalManager.js +44 -21
  3. package/dist/lib.cjs/packages/modal/src/react/context/Web3AuthInnerContext.js +8 -1
  4. package/dist/lib.cjs/packages/modal/src/ui/components/BottomSheet/BottomSheet.js +1 -1
  5. package/dist/lib.cjs/packages/modal/src/ui/components/Button/ButtonSocial/ButtonSocial.js +1 -1
  6. package/dist/lib.cjs/packages/modal/src/ui/components/Button/ButtonWallet/ButtonWallet.js +12 -4
  7. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWallet.js +2 -2
  8. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWalletChainFilter/ConnectWalletChainFilter.js +3 -3
  9. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWalletChainNamespaceSelect/ConnectWalletChainNamespaceSelect.js +3 -3
  10. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWalletHeader/ConnectWalletHeader.js +1 -1
  11. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWalletList/ConnectWalletList.js +13 -5
  12. package/dist/lib.cjs/packages/modal/src/ui/components/ConnectWallet/ConnectWalletQrCode/ConnectWalletQrCode.js +1 -1
  13. package/dist/lib.cjs/packages/modal/src/ui/components/Image/Image.js +5 -4
  14. package/dist/lib.cjs/packages/modal/src/ui/components/Loader/Loader.js +1 -1
  15. package/dist/lib.cjs/packages/modal/src/ui/components/Login/Login.js +45 -19
  16. package/dist/lib.cjs/packages/modal/src/ui/components/Login/LoginPasswordLess/LoginPasswordLess.js +10 -5
  17. package/dist/lib.cjs/packages/modal/src/ui/components/Modal/Modal.js +1 -1
  18. package/dist/lib.cjs/packages/modal/src/ui/components/PulseLoader/PulseLoader.js +3 -3
  19. package/dist/lib.cjs/packages/modal/src/ui/components/Root/Root.js +18 -32
  20. package/dist/lib.cjs/packages/modal/src/ui/components/SocialLoginList/SocialLoginList.js +15 -34
  21. package/dist/lib.cjs/packages/modal/src/ui/components/Widget/Widget.js +2 -1
  22. package/dist/lib.cjs/packages/modal/src/ui/config.js +2 -1
  23. package/dist/lib.cjs/packages/modal/src/ui/constants.js +4 -0
  24. package/dist/lib.cjs/packages/modal/src/ui/css/index.css.js +1 -1
  25. package/dist/lib.cjs/packages/modal/src/ui/handlers/AbstractHandler.js +3 -1
  26. package/dist/lib.cjs/packages/modal/src/ui/i18n/dutch.json.js +32 -31
  27. package/dist/lib.cjs/packages/modal/src/ui/i18n/english.json.js +32 -31
  28. package/dist/lib.cjs/packages/modal/src/ui/i18n/french.json.js +32 -31
  29. package/dist/lib.cjs/packages/modal/src/ui/i18n/german.json.js +32 -31
  30. package/dist/lib.cjs/packages/modal/src/ui/i18n/japanese.json.js +32 -31
  31. package/dist/lib.cjs/packages/modal/src/ui/i18n/korean.json.js +32 -31
  32. package/dist/lib.cjs/packages/modal/src/ui/i18n/mandarin.json.js +32 -31
  33. package/dist/lib.cjs/packages/modal/src/ui/i18n/portuguese.json.js +32 -31
  34. package/dist/lib.cjs/packages/modal/src/ui/i18n/spanish.json.js +32 -31
  35. package/dist/lib.cjs/packages/modal/src/ui/i18n/turkish.json.js +32 -31
  36. package/dist/lib.cjs/packages/modal/src/ui/loginModal.js +5 -3
  37. package/dist/lib.cjs/packages/modal/src/vue/Web3AuthProvider.js +15 -3
  38. package/dist/lib.cjs/types/interface.d.ts +3 -1
  39. package/dist/lib.cjs/types/modalManager.d.ts +4 -1
  40. package/dist/lib.cjs/types/ui/components/Login/Login.type.d.ts +2 -2
  41. package/dist/lib.cjs/types/ui/config.d.ts +1 -1
  42. package/dist/lib.cjs/types/ui/constants.d.ts +2 -0
  43. package/dist/lib.cjs/types/ui/handlers/AbstractHandler.d.ts +1 -1
  44. package/dist/lib.cjs/types/ui/interfaces.d.ts +5 -3
  45. package/dist/lib.esm/packages/modal/src/config.js +1 -3
  46. package/dist/lib.esm/packages/modal/src/modalManager.js +46 -22
  47. package/dist/lib.esm/packages/modal/src/react/context/Web3AuthInnerContext.js +8 -1
  48. package/dist/lib.esm/packages/modal/src/ui/components/BottomSheet/BottomSheet.js +1 -1
  49. package/dist/lib.esm/packages/modal/src/ui/components/Button/ButtonSocial/ButtonSocial.js +1 -1
  50. package/dist/lib.esm/packages/modal/src/ui/components/Button/ButtonWallet/ButtonWallet.js +14 -6
  51. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWallet.js +2 -2
  52. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWalletChainFilter/ConnectWalletChainFilter.js +3 -3
  53. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWalletChainNamespaceSelect/ConnectWalletChainNamespaceSelect.js +3 -3
  54. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWalletHeader/ConnectWalletHeader.js +1 -1
  55. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWalletList/ConnectWalletList.js +13 -5
  56. package/dist/lib.esm/packages/modal/src/ui/components/ConnectWallet/ConnectWalletQrCode/ConnectWalletQrCode.js +1 -1
  57. package/dist/lib.esm/packages/modal/src/ui/components/Image/Image.js +5 -4
  58. package/dist/lib.esm/packages/modal/src/ui/components/Loader/Loader.js +1 -1
  59. package/dist/lib.esm/packages/modal/src/ui/components/Login/Login.js +48 -19
  60. package/dist/lib.esm/packages/modal/src/ui/components/Login/LoginPasswordLess/LoginPasswordLess.js +11 -6
  61. package/dist/lib.esm/packages/modal/src/ui/components/Modal/Modal.js +1 -1
  62. package/dist/lib.esm/packages/modal/src/ui/components/PulseLoader/PulseLoader.js +3 -3
  63. package/dist/lib.esm/packages/modal/src/ui/components/Root/Root.js +18 -33
  64. package/dist/lib.esm/packages/modal/src/ui/components/SocialLoginList/SocialLoginList.js +16 -35
  65. package/dist/lib.esm/packages/modal/src/ui/components/Widget/Widget.js +3 -2
  66. package/dist/lib.esm/packages/modal/src/ui/config.js +2 -1
  67. package/dist/lib.esm/packages/modal/src/ui/constants.js +3 -1
  68. package/dist/lib.esm/packages/modal/src/ui/css/index.css.js +1 -1
  69. package/dist/lib.esm/packages/modal/src/ui/handlers/AbstractHandler.js +3 -1
  70. package/dist/lib.esm/packages/modal/src/ui/i18n/dutch.json.js +32 -31
  71. package/dist/lib.esm/packages/modal/src/ui/i18n/english.json.js +32 -31
  72. package/dist/lib.esm/packages/modal/src/ui/i18n/french.json.js +32 -31
  73. package/dist/lib.esm/packages/modal/src/ui/i18n/german.json.js +32 -31
  74. package/dist/lib.esm/packages/modal/src/ui/i18n/japanese.json.js +32 -31
  75. package/dist/lib.esm/packages/modal/src/ui/i18n/korean.json.js +32 -31
  76. package/dist/lib.esm/packages/modal/src/ui/i18n/mandarin.json.js +32 -31
  77. package/dist/lib.esm/packages/modal/src/ui/i18n/portuguese.json.js +32 -31
  78. package/dist/lib.esm/packages/modal/src/ui/i18n/spanish.json.js +32 -31
  79. package/dist/lib.esm/packages/modal/src/ui/i18n/turkish.json.js +32 -31
  80. package/dist/lib.esm/packages/modal/src/ui/loginModal.js +6 -4
  81. package/dist/lib.esm/packages/modal/src/vue/Web3AuthProvider.js +16 -3
  82. package/dist/modal.umd.min.js +1 -1
  83. package/package.json +11 -11
@@ -27,7 +27,7 @@ function ConnectWalletHeader(props) {
27
27
  xmlns: "http://www.w3.org/2000/svg",
28
28
  fill: "none",
29
29
  viewBox: "0 0 20 20",
30
- className: "w3a--text-app-gray-900 dark:w3a--text-app-white",
30
+ className: "w3a--text-app-gray-500 hover:w3a--text-app-gray-900 dark:w3a--text-app-gray-200 dark:hover:w3a--text-app-white",
31
31
  children: /*#__PURE__*/jsx("path", {
32
32
  fill: "currentColor",
33
33
  fillRule: "evenodd",
@@ -1,3 +1,4 @@
1
+ import { useState } from 'react';
1
2
  import { useTranslation } from 'react-i18next';
2
3
  import i18nInstance from '../../../localeImport.js';
3
4
  import { cn, getIcons } from '../../../utils.js';
@@ -25,7 +26,7 @@ function WalletsFound(props) {
25
26
  } = props;
26
27
  if (isLoading) {
27
28
  return /*#__PURE__*/jsx("div", {
28
- className: "w3a--flex w3a--flex-col w3a--gap-y-2 w3a--pr-1.5",
29
+ className: "w3a--flex w3a--flex-col w3a--gap-y-2",
29
30
  children: Array.from({
30
31
  length: 6
31
32
  }).map((_, index) => /*#__PURE__*/jsx("div", {
@@ -80,7 +81,7 @@ function MoreWalletsButton(props) {
80
81
  }
81
82
  return /*#__PURE__*/jsxs("button", {
82
83
  type: "button",
83
- className: cn("w3a--flex w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--bg-app-gray-50 w3a--p-3 hover:w3a--bg-app-gray-200 dark:w3a--bg-app-gray-800 dark:hover:w3a--bg-app-gray-600", {
84
+ className: cn("w3a--flex w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--bg-app-gray-50 w3a--p-3 hover:w3a--bg-app-gray-200 dark:w3a--bg-app-gray-800 dark:hover:w3a--bg-app-gray-600 active:w3a--scale-95 w3a--transition-all w3a--duration-150 w3a--mr-2.5", {
84
85
  "w3a--rounded-full": buttonRadius === "pill",
85
86
  "w3a--rounded-lg": buttonRadius === "rounded",
86
87
  "w3a--rounded-none": buttonRadius === "square"
@@ -113,9 +114,16 @@ function ConnectWalletList(props) {
113
114
  walletConnectUri,
114
115
  buttonRadius
115
116
  } = props;
117
+ const [showMoreWallets, setShowMoreWallets] = useState(true);
118
+ const onShowMoreWalletsClick = () => {
119
+ setShowMoreWallets(false);
120
+ handleMoreWallets();
121
+ };
116
122
  return /*#__PURE__*/jsxs(Fragment, {
117
123
  children: [/*#__PURE__*/jsx("ul", {
118
- className: cn("w3a--overflow-y-auto w3a--flex w3a--flex-col w3a--gap-y-2 w3a--h-[280px]"),
124
+ className: cn("w3a--overflow-y-auto w3a--flex w3a--flex-col w3a--gap-y-2 w3a--h-[280px] w3a--social-container w3a--pr-2.5", {
125
+ "w3a--h-[328px]": !showMoreWallets
126
+ }),
119
127
  children: externalButtons.length === 0 ? /*#__PURE__*/jsx(NoWalletsFound, {}) : /*#__PURE__*/jsx(WalletsFound, {
120
128
  externalButtons: externalButtons,
121
129
  isLoading: isLoading,
@@ -124,10 +132,10 @@ function ConnectWalletList(props) {
124
132
  walletConnectUri: walletConnectUri,
125
133
  buttonRadius: buttonRadius
126
134
  })
127
- }), totalExternalWalletsCount > 15 && !isLoading && initialWalletCount < totalExternalWalletsCount && /*#__PURE__*/jsx(MoreWalletsButton, {
135
+ }), showMoreWallets && totalExternalWalletsCount > 15 && !isLoading && initialWalletCount < totalExternalWalletsCount && /*#__PURE__*/jsx(MoreWalletsButton, {
128
136
  totalExternalWalletsCount: totalExternalWalletsCount,
129
137
  initialWalletCount: initialWalletCount,
130
- handleMoreWallets: handleMoreWallets,
138
+ handleMoreWallets: onShowMoreWalletsClick,
131
139
  isLoading: isLoading,
132
140
  isDark: isDark,
133
141
  buttonRadius: buttonRadius
@@ -75,7 +75,7 @@ function ConnectWalletQrCode(props) {
75
75
  }), "?"]
76
76
  }), /*#__PURE__*/jsx("button", {
77
77
  type: "button",
78
- className: "w3a--appearance-none w3a--rounded-full w3a--border w3a--border-app-gray-400 w3a--px-3 w3a--py-2 w3a--text-sm w3a--font-medium w3a--text-app-gray-400 hover:w3a--bg-app-white hover:w3a--shadow-2xl dark:w3a--border-app-gray-300 dark:w3a--text-app-gray-300 dark:hover:w3a--bg-app-gray-700",
78
+ className: "w3a--appearance-none w3a--rounded-full w3a--border w3a--border-app-gray-200 w3a--bg-transparent w3a--px-5 w3a--py-2 w3a--text-base w3a--font-normal w3a--text-app-gray-700 w3a--transition-all w3a--duration-150 hover:w3a--border-transparent hover:w3a--shadow-light active:w3a--scale-95 dark:w3a--border-app-gray-700 dark:w3a--text-app-gray-300 dark:hover:w3a--border-transparent dark:hover:w3a--shadow-dark",
79
79
  onClick: () => {
80
80
  setBodyState(_objectSpread(_objectSpread({}, bodyState), {}, {
81
81
  showWalletDetails: true,
@@ -1,5 +1,6 @@
1
1
  import { useContext, useMemo } from 'react';
2
2
  import { ThemedContext } from '../../context/ThemeContext.js';
3
+ import { cn } from '../../utils.js';
3
4
  import { jsx } from 'react/jsx-runtime';
4
5
 
5
6
  /**
@@ -34,7 +35,7 @@ function Image(props) {
34
35
  height: height,
35
36
  width: width,
36
37
  alt: hoverImageId,
37
- className: "w3a--object-contain"
38
+ className: cn("w3a--object-contain", `w3a--h-${height} w3a--w-${width}`)
38
39
  });
39
40
  }
40
41
  return /*#__PURE__*/jsx("img", {
@@ -43,7 +44,7 @@ function Image(props) {
43
44
  height: height,
44
45
  width: width,
45
46
  alt: hoverImageId,
46
- className: "w3a--rounded w3a--object-contain"
47
+ className: cn("w3a--rounded w3a--object-contain", `w3a--h-${height} w3a--w-${width}`)
47
48
  });
48
49
  }
49
50
  if (imageData) {
@@ -53,7 +54,7 @@ function Image(props) {
53
54
  height: height,
54
55
  width: width,
55
56
  alt: imageId,
56
- className: "w3a--object-contain",
57
+ className: cn("w3a--object-contain", `w3a--h-${height} w3a--w-${width}`),
57
58
  onError: ({
58
59
  currentTarget
59
60
  }) => {
@@ -71,7 +72,7 @@ function Image(props) {
71
72
  height: height,
72
73
  width: width,
73
74
  alt: imageId,
74
- className: "w3a--rounded w3a--object-contain",
75
+ className: cn("w3a--rounded w3a--object-contain", `w3a--h-${height} w3a--w-${width}`),
75
76
  onError: ({
76
77
  currentTarget
77
78
  }) => {
@@ -32,7 +32,7 @@ function ConnectingStatus(props) {
32
32
  children: [/*#__PURE__*/jsxs("div", {
33
33
  className: "w3a--flex w3a--items-center w3a--justify-center w3a--gap-x-6",
34
34
  children: [/*#__PURE__*/jsx("figure", {
35
- className: "w3a--loader-logo-size w3a--flex w3a--items-center w3a--justify-center w3a--overflow-hidden",
35
+ className: "w3a--flex w3a--size-10 w3a--items-center w3a--justify-center w3a--overflow-hidden",
36
36
  children: /*#__PURE__*/jsx("img", {
37
37
  src: appLogo,
38
38
  alt: "",
@@ -22,6 +22,7 @@ function Login(props) {
22
22
  const {
23
23
  web3authClientId,
24
24
  web3authNetwork,
25
+ authBuildEnv,
25
26
  appLogo,
26
27
  isModalVisible,
27
28
  handleSocialLoginHeight,
@@ -40,8 +41,7 @@ function Login(props) {
40
41
  showExternalWalletCount,
41
42
  showInstalledExternalWallets,
42
43
  logoAlignment = "center",
43
- buttonRadius = "pill",
44
- enableMainSocialLoginButton = false
44
+ buttonRadius = "pill"
45
45
  } = props;
46
46
  const [t] = useTranslation(undefined, {
47
47
  i18n: i18nInstance
@@ -77,16 +77,41 @@ function Login(props) {
77
77
  });
78
78
  const visibleRows = [];
79
79
  const otherRows = [];
80
+ const loginMethodsOrder = (socialLoginsConfig.loginMethodsOrder || []).reduce((acc, method, index) => {
81
+ acc[method] = index;
82
+ return acc;
83
+ }, {});
80
84
  const loginOptions = Object.keys(socialLoginsConfig.loginMethods).filter(method => {
81
85
  return !socialLoginsConfig.loginMethods[method].showOnModal === false && !restrictedLoginMethods.includes(method);
86
+ }).sort((a, b) => {
87
+ var _loginMethodsOrder$a, _loginMethodsOrder$b;
88
+ const maxOrder = (socialLoginsConfig.loginMethodsOrder || []).length;
89
+ const aOrder = (_loginMethodsOrder$a = loginMethodsOrder[a]) !== null && _loginMethodsOrder$a !== void 0 ? _loginMethodsOrder$a : maxOrder;
90
+ const bOrder = (_loginMethodsOrder$b = loginMethodsOrder[b]) !== null && _loginMethodsOrder$b !== void 0 ? _loginMethodsOrder$b : maxOrder;
91
+ const {
92
+ mainOption: aMainOption
93
+ } = socialLoginsConfig.loginMethods[a] || {};
94
+ const {
95
+ mainOption: bMainOption
96
+ } = socialLoginsConfig.loginMethods[b] || {};
97
+
98
+ // if both are main options, sort by order
99
+ if (aMainOption && bMainOption) {
100
+ return aOrder - bOrder;
101
+ }
102
+
103
+ // if one is main option, it should be first
104
+ if (aMainOption) return -1;
105
+ if (bMainOption) return 1;
106
+
107
+ // if none are main options, sort by order
108
+ return aOrder - bOrder;
82
109
  });
83
110
  loginOptions.forEach((method, index) => {
84
111
  var _socialLoginsConfig$u;
85
112
  const connectorConfig = socialLoginsConfig.loginMethods[method];
86
113
  const name = capitalizeFirstLetter(connectorConfig.name || method);
87
- // const orderIndex = socialLoginsConfig.loginMethodsOrder.indexOf(method) + 1;
88
114
  const order = index + 1;
89
- const isMainOption = order === 1 && enableMainSocialLoginButton;
90
115
  const isPrimaryBtn = (socialLoginsConfig === null || socialLoginsConfig === void 0 || (_socialLoginsConfig$u = socialLoginsConfig.uiConfig) === null || _socialLoginsConfig$u === void 0 ? void 0 : _socialLoginsConfig$u.primaryButton) === "socialLogin" && order === 1;
91
116
  const loginOptionLength = loginOptions.length;
92
117
  const moreThanFour = loginOptionLength >= 4;
@@ -106,8 +131,7 @@ function Login(props) {
106
131
  name,
107
132
  login_hint: ""
108
133
  },
109
- order,
110
- isMainOption
134
+ order
111
135
  });
112
136
  }
113
137
  otherRows.push({
@@ -124,14 +148,13 @@ function Login(props) {
124
148
  name,
125
149
  login_hint: ""
126
150
  },
127
- order,
128
- isMainOption
151
+ order
129
152
  });
130
153
  });
131
154
  setVisibleRow(visibleRows);
132
155
  setOtherRow(otherRows);
133
156
  setCanShowMore(maxOptions.length > 4); // Update the state based on the condition
134
- }, [socialLoginsConfig, isDark, enableMainSocialLoginButton, buttonRadius]);
157
+ }, [socialLoginsConfig, isDark, buttonRadius]);
135
158
  const handleCustomLogin = async (authConnection, loginHint) => {
136
159
  try {
137
160
  const handler = createPasswordlessHandler(authConnection, {
@@ -139,7 +162,8 @@ function Login(props) {
139
162
  web3authClientId,
140
163
  network: web3authNetwork,
141
164
  uiConfig: socialLoginsConfig.uiConfig,
142
- authConnection
165
+ authConnection,
166
+ authBuildEnv
143
167
  });
144
168
  let token = "";
145
169
  if (authConnection === AUTH_CONNECTION.SMS_PASSWORDLESS) {
@@ -340,22 +364,22 @@ function Login(props) {
340
364
  className: cn("w3a--flex w3a--w-full w3a--flex-col w3a--items-start w3a--justify-start w3a--gap-y-2"),
341
365
  children: [installedExternalWallets.length > 0 && installedExternalWallets.map(wallet => /*#__PURE__*/jsxs("button", {
342
366
  type: "button",
343
- className: cn("w3a--btn !w3a--justify-between w3a-external-wallet-btn", {
367
+ className: cn("w3a--btn !w3a--justify-between w3a--group w3a--relative w3a--overflow-hidden", {
344
368
  "w3a--rounded-full": buttonRadius === "pill",
345
369
  "w3a--rounded-lg": buttonRadius === "rounded",
346
370
  "w3a--rounded-none": buttonRadius === "square"
347
371
  }),
348
372
  onClick: () => handleInstalledWalletClick(wallet),
349
373
  children: [/*#__PURE__*/jsx("p", {
350
- className: "w3a--text-base w3a--font-normal w3a--text-app-gray-700 dark:w3a--text-app-white",
374
+ className: "w3a--max-w-[180px] w3a--truncate w3a--text-base w3a--font-normal w3a--text-app-gray-700 dark:w3a--text-app-white",
351
375
  children: wallet.displayName
352
376
  }), /*#__PURE__*/jsxs("div", {
353
- className: "w3a--flex w3a--items-center w3a--gap-x-2",
377
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 w3a--flex w3a--w-auto -w3a--translate-y-1/2 w3a--items-center w3a--gap-x-2 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-6 group-hover:w3a--opacity-0",
354
378
  children: [wallet.hasInjectedWallet && /*#__PURE__*/jsx("span", {
355
379
  className: "w3a--inline-flex w3a--items-center w3a--rounded-md w3a--bg-app-primary-100 w3a--px-2 w3a--py-1 w3a--text-xs w3a--font-medium w3a--text-app-primary-800 dark:w3a--border dark:w3a--border-app-primary-400 dark:w3a--bg-transparent dark:w3a--text-app-primary-400",
356
380
  children: t("modal.external.installed")
357
381
  }), /*#__PURE__*/jsx("figure", {
358
- className: wallet.icon ? "w3a--size-5" : "w3a--size-5 w3a--rounded-full w3a--bg-app-gray-300",
382
+ className: "w3a--size-5",
359
383
  children: /*#__PURE__*/jsx(Image, {
360
384
  imageData: wallet.icon,
361
385
  imageId: `login-${wallet.name}`,
@@ -367,25 +391,30 @@ function Login(props) {
367
391
  extension: wallet.imgExtension || "webp"
368
392
  })
369
393
  })]
394
+ }), /*#__PURE__*/jsx("img", {
395
+ id: "injected-wallet-arrow",
396
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-10 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
397
+ src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
398
+ alt: "arrow"
370
399
  })]
371
400
  }, wallet.name)), totalExternalWallets > 3 && /*#__PURE__*/jsxs("button", {
372
401
  type: "button",
373
- className: cn("w3a--btn !w3a--justify-between w3a-external-wallet-btn", {
402
+ className: cn("w3a--btn !w3a--justify-between w3a--group w3a--relative w3a--overflow-hidden", {
374
403
  "w3a--rounded-full": buttonRadius === "pill",
375
404
  "w3a--rounded-lg": buttonRadius === "rounded",
376
405
  "w3a--rounded-none": buttonRadius === "square"
377
406
  }),
378
407
  onClick: handleConnectWallet,
379
408
  children: [/*#__PURE__*/jsx("p", {
380
- className: "w3a--text-app-gray-900 dark:w3a--text-app-white",
409
+ className: "w3a--text-base w3a--font-normal w3a--text-app-gray-900 dark:w3a--text-app-white",
381
410
  children: t("modal.external.all-wallets")
382
411
  }), showExternalWalletCount && totalExternalWallets > 0 && /*#__PURE__*/jsx("div", {
383
412
  id: "external-wallet-count",
384
- className: "w3a--w-auto w3a--rounded-full w3a--bg-app-primary-100 w3a--px-2.5 w3a--py-0.5 w3a--text-xs w3a--font-medium w3a--text-app-primary-800 dark:w3a--border dark:w3a--border-app-primary-500 dark:w3a--bg-transparent dark:w3a--text-app-primary-500",
413
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 w3a--w-auto -w3a--translate-y-1/2 w3a--rounded-full w3a--bg-app-primary-100 w3a--px-2.5 w3a--py-0.5 w3a--text-xs w3a--font-medium w3a--text-app-primary-800 w3a--transition-all w3a--delay-300 w3a--duration-300 group-hover:w3a--translate-x-6 group-hover:w3a--opacity-0 group-hover:w3a--delay-0 dark:w3a--border dark:w3a--border-app-primary-500 dark:w3a--bg-transparent dark:w3a--text-app-primary-500",
385
414
  children: totalExternalWallets - 1
386
415
  }), /*#__PURE__*/jsx("img", {
387
416
  id: "external-wallet-arrow",
388
- className: "w3a--icon-animation",
417
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-10 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
389
418
  src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
390
419
  alt: "arrow"
391
420
  })]
@@ -460,7 +489,7 @@ function Login(props) {
460
489
  children: /*#__PURE__*/jsx("img", {
461
490
  src: headerLogo || getIcons(isDark ? "logo-dark" : "logo-light"),
462
491
  alt: "Logo",
463
- className: "w3a--object-contain"
492
+ className: "w3a--size-full w3a--object-contain"
464
493
  })
465
494
  }), /*#__PURE__*/jsx("p", {
466
495
  className: cn("w3a--text-lg w3a--font-semibold w3a--text-app-gray-900 dark:w3a--text-app-white", logoAlignment === "center" ? "w3a--text-center" : "w3a--text-left w3a--w-full w3a--ml-4"),
@@ -3,7 +3,7 @@ import { useTranslation } from 'react-i18next';
3
3
  import i18nInstance from '../../../localeImport.js';
4
4
  import { cn, getIcons } from '../../../utils.js';
5
5
  import PulseLoader from '../../PulseLoader/PulseLoader.js';
6
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
6
+ import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
7
7
 
8
8
  function LoginPasswordLess(props) {
9
9
  const {
@@ -55,9 +55,9 @@ function LoginPasswordLess(props) {
55
55
  }
56
56
  }, [isPasswordLessCtaClicked]);
57
57
  if (!isPasswordLessCtaClicked) {
58
- return /*#__PURE__*/jsx("button", {
58
+ return /*#__PURE__*/jsxs("button", {
59
59
  type: "button",
60
- className: cn("w3a--btn !w3a--justify-between", {
60
+ className: cn("w3a--btn !w3a--justify-between w3a--relative w3a--group w3a--overflow-hidden", {
61
61
  "w3a--rounded-full": buttonRadius === "pill",
62
62
  "w3a--rounded-lg": buttonRadius === "rounded",
63
63
  "w3a--rounded-none": buttonRadius === "square"
@@ -65,12 +65,17 @@ function LoginPasswordLess(props) {
65
65
  onClick: () => {
66
66
  setIsPasswordLessCtaClicked(true);
67
67
  },
68
- children: /*#__PURE__*/jsx("p", {
68
+ children: [/*#__PURE__*/jsx("p", {
69
69
  className: "w3a--text-app-gray-900 dark:w3a--text-app-white",
70
70
  children: t("modal.passwordless.title", {
71
71
  title
72
72
  })
73
- })
73
+ }), /*#__PURE__*/jsx("img", {
74
+ id: "passwordless-arrow",
75
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-6 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
76
+ src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
77
+ alt: "arrow"
78
+ })]
74
79
  });
75
80
  }
76
81
  return /*#__PURE__*/jsxs(Fragment, {
@@ -98,7 +103,7 @@ function LoginPasswordLess(props) {
98
103
  disabled: isPasswordLessLoading
99
104
  }), isPasswordLessLoading && /*#__PURE__*/jsx(PulseLoader, {}), inputValue && !isPasswordLessLoading && /*#__PURE__*/jsx("button", {
100
105
  type: "button",
101
- className: "w3a--icon-animation w3a--appearance-none",
106
+ className: "w3a--appearance-none",
102
107
  onClick: onFormSubmit,
103
108
  children: /*#__PURE__*/jsx("img", {
104
109
  src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
@@ -69,7 +69,7 @@ function Modal(props) {
69
69
  fill: "none",
70
70
  xmlns: "http://www.w3.org/2000/svg",
71
71
  onClick: onCloseHandler,
72
- className: "w3a--text-app-gray-500 dark:w3a--text-app-gray-200",
72
+ className: "w3a--text-app-gray-500 hover:w3a--text-app-gray-900 dark:w3a--text-app-gray-200 dark:hover:w3a--text-app-white",
73
73
  children: /*#__PURE__*/jsx("path", {
74
74
  fillRule: "evenodd",
75
75
  clipRule: "evenodd",
@@ -4,11 +4,11 @@ const PulseLoader = () => {
4
4
  return /*#__PURE__*/jsxs("div", {
5
5
  className: "w3a--flex w3a--items-center w3a--justify-center w3a--gap-x-2",
6
6
  children: [/*#__PURE__*/jsx("div", {
7
- className: "w3a--animate-circle w3a--bg-app-gray-500 dark:w3a--bg-app-gray-200"
7
+ className: "w3a--size-3 w3a--animate-pulse w3a--rounded-full w3a--bg-app-gray-500 dark:w3a--bg-app-gray-200"
8
8
  }), /*#__PURE__*/jsx("div", {
9
- className: "w3a--animate-circle w3a--bg-app-gray-400 dark:w3a--bg-app-gray-400"
9
+ className: "w3a--size-3 w3a--animate-pulse w3a--rounded-full w3a--bg-app-gray-400 dark:w3a--bg-app-gray-400"
10
10
  }), /*#__PURE__*/jsx("div", {
11
- className: "w3a--animate-circle w3a--bg-app-gray-200 dark:w3a--bg-app-gray-600"
11
+ className: "w3a--size-3 w3a--animate-pulse w3a--rounded-full w3a--bg-app-gray-200 dark:w3a--bg-app-gray-600"
12
12
  })]
13
13
  });
14
14
  };
@@ -45,7 +45,6 @@ function Root(props) {
45
45
  const {
46
46
  logoAlignment = "center",
47
47
  buttonRadiusType = "pill",
48
- enableMainSocialLoginButton = false,
49
48
  privacyPolicy = "",
50
49
  tncLink = "",
51
50
  displayInstalledExternalWallets = true,
@@ -110,7 +109,7 @@ function Root(props) {
110
109
  target: "_blank",
111
110
  children: /*#__PURE__*/jsxs("button", {
112
111
  type: "button",
113
- className: cn("w3a--link-arrow w3a--flex w3a--w-full w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--border w3a--border-app-gray-200 w3a--bg-app-gray-50 w3a--px-5 w3a--py-2.5 hover:w3a--translate-y-[0.5px] hover:w3a--border-app-gray-50 dark:w3a--border-app-gray-500 dark:w3a--bg-app-gray-800 dark:hover:w3a--border-app-gray-800", {
112
+ className: cn("w3a--group w3a--relative w3a--overflow-hidden w3a--h-11 w3a--flex w3a--w-full w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--border w3a--border-app-gray-200 w3a--bg-app-gray-50 w3a--px-5 w3a--py-2.5 hover:w3a--translate-y-[0.5px] hover:w3a--border-app-gray-50 dark:w3a--border-app-gray-500 dark:w3a--bg-app-gray-800 dark:hover:w3a--border-app-gray-800", {
114
113
  "w3a--rounded-full": buttonRadiusType === "pill",
115
114
  "w3a--rounded-lg": buttonRadiusType === "rounded",
116
115
  "w3a--rounded-none": buttonRadiusType === "square"
@@ -129,8 +128,8 @@ function Root(props) {
129
128
  os: getOsName(osKey)
130
129
  })
131
130
  }), /*#__PURE__*/jsx("img", {
132
- id: "device-link-arrow",
133
- className: "w3a--icon-animation w3a--ml-auto",
131
+ id: "install-links-arrow",
132
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-6 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
134
133
  src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
135
134
  alt: "arrow"
136
135
  })]
@@ -157,7 +156,7 @@ function Root(props) {
157
156
  target: "_blank",
158
157
  children: /*#__PURE__*/jsxs("button", {
159
158
  type: "button",
160
- className: cn("w3a--link-arrow w3a--flex w3a--w-full w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--border w3a--border-app-gray-200 w3a--bg-app-gray-50 w3a--px-5 w3a--py-2.5 hover:w3a--translate-y-[0.5px] hover:w3a--border-app-gray-50 dark:w3a--border-app-gray-500 dark:w3a--bg-app-gray-800 dark:hover:w3a--border-app-gray-800", {
159
+ className: cn("w3a--group w3a--relative w3a--overflow-hidden w3a--h-11 w3a--flex w3a--w-full w3a--items-center w3a--justify-start w3a--gap-x-2 w3a--border w3a--border-app-gray-200 w3a--bg-app-gray-50 w3a--px-5 w3a--py-2.5 hover:w3a--translate-y-[0.5px] hover:w3a--border-app-gray-50 dark:w3a--border-app-gray-500 dark:w3a--bg-app-gray-800 dark:hover:w3a--border-app-gray-800", {
161
160
  "w3a--rounded-full": buttonRadiusType === "pill",
162
161
  "w3a--rounded-lg": buttonRadiusType === "rounded",
163
162
  "w3a--rounded-none": buttonRadiusType === "square"
@@ -176,8 +175,8 @@ function Root(props) {
176
175
  browser: getBrowserName(deviceDetails.browser)
177
176
  })
178
177
  }), /*#__PURE__*/jsx("img", {
179
- id: "device-link-arrow",
180
- className: "w3a--icon-animation w3a--ml-auto",
178
+ id: "install-links-arrow",
179
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-6 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
181
180
  src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
182
181
  alt: "arrow"
183
182
  })]
@@ -188,28 +187,15 @@ function Root(props) {
188
187
  }, [(_bodyState$walletDeta4 = bodyState.walletDetails) === null || _bodyState$walletDeta4 === void 0 || (_bodyState$walletDeta4 = _bodyState$walletDeta4.walletRegistryItem) === null || _bodyState$walletDeta4 === void 0 ? void 0 : _bodyState$walletDeta4.app, deviceDetails.browser, deviceDetails.platform, isDark, mobileInstallLinks, buttonRadiusType, t]);
189
188
 
190
189
  // External Wallets
191
-
192
190
  const config = useMemo(() => modalState.externalWalletsConfig, [modalState.externalWalletsConfig]);
193
191
  const connectorVisibilityMap = useMemo(() => {
194
192
  const canShowMap = {};
195
193
  Object.keys(config).forEach(connector => {
196
- const connectorConfig = config[connector];
197
- if (!connectorConfig.showOnModal) {
198
- canShowMap[connector] = false;
199
- return;
200
- }
201
- if (deviceDetails.platform === "desktop" && connectorConfig.showOnDesktop) {
202
- canShowMap[connector] = true;
203
- return;
204
- }
205
- if ((deviceDetails.platform === "mobile" || deviceDetails.platform === "tablet") && connectorConfig.showOnMobile) {
206
- canShowMap[connector] = true;
207
- return;
208
- }
209
- canShowMap[connector] = false;
194
+ var _config$connector;
195
+ canShowMap[connector] = Boolean((_config$connector = config[connector]) === null || _config$connector === void 0 ? void 0 : _config$connector.showOnModal);
210
196
  });
211
197
  return canShowMap;
212
- }, [deviceDetails, config]);
198
+ }, [config]);
213
199
  const isWalletConnectConnectorIncluded = useMemo(
214
200
  // WC is always included when enabling wallet discovery
215
201
  () => Object.keys((walletRegistry === null || walletRegistry === void 0 ? void 0 : walletRegistry.default) || {}).length > 0 || Object.keys((walletRegistry === null || walletRegistry === void 0 ? void 0 : walletRegistry.others) || {}).length > 0, [walletRegistry]);
@@ -297,7 +283,6 @@ function Root(props) {
297
283
  };
298
284
  const containerMaxHeight = useMemo(() => {
299
285
  const isPrivacyPolicyOrTncLink = privacyPolicy || tncLink;
300
- const isEnableMainSocialLoginButton = enableMainSocialLoginButton;
301
286
 
302
287
  // Loader Screen
303
288
  if (modalState.status !== MODAL_STATUS.INITIALIZED) {
@@ -321,23 +306,20 @@ function Root(props) {
321
306
 
322
307
  // Only MetaMask
323
308
  if (topInstalledConnectorButtons.length === 1) {
324
- if (isPrivacyPolicyOrTncLink) {
325
- return isEnableMainSocialLoginButton ? "600px" : "560px";
326
- }
327
- return isEnableMainSocialLoginButton ? "570px" : "530px";
309
+ return isPrivacyPolicyOrTncLink ? "560px" : "530px";
328
310
  }
329
311
 
330
312
  // More than 1 connector
331
313
  if (topInstalledConnectorButtons.length > 1) {
332
314
  const maxHeight = 500 + (topInstalledConnectorButtons.length - 1) * 58;
333
315
  if (isPrivacyPolicyOrTncLink) {
334
- return `${maxHeight + (isEnableMainSocialLoginButton ? 120 : 60)}px`;
316
+ return `${maxHeight + 60}px`;
335
317
  }
336
- return `${maxHeight + (isEnableMainSocialLoginButton ? 66 : 16)}px`;
318
+ return `${maxHeight + 16}px`;
337
319
  }
338
320
  // Default
339
321
  return "539px";
340
- }, [privacyPolicy, tncLink, enableMainSocialLoginButton, modalState.status, modalState.currentPage, isWalletDetailsExpanded, isSocialLoginsExpanded, topInstalledConnectorButtons.length]);
322
+ }, [privacyPolicy, tncLink, modalState.status, modalState.currentPage, isWalletDetailsExpanded, isSocialLoginsExpanded, topInstalledConnectorButtons.length]);
341
323
  const contextValue = useMemo(() => ({
342
324
  bodyState,
343
325
  setBodyState,
@@ -367,6 +349,7 @@ function Root(props) {
367
349
  children: [modalState.currentPage === PAGES.LOGIN && showExternalWalletPage && modalState.status === MODAL_STATUS.INITIALIZED && /*#__PURE__*/jsx(Login, {
368
350
  web3authClientId: modalState.web3authClientId,
369
351
  web3authNetwork: modalState.web3authNetwork,
352
+ authBuildEnv: modalState.authBuildEnv,
370
353
  isModalVisible: modalState.modalVisibility,
371
354
  isDark: isDark,
372
355
  appLogo: appLogo,
@@ -384,7 +367,6 @@ function Root(props) {
384
367
  totalExternalWallets: totalExternalWallets,
385
368
  logoAlignment: logoAlignment,
386
369
  buttonRadius: buttonRadiusType,
387
- enableMainSocialLoginButton: enableMainSocialLoginButton,
388
370
  handleSocialLoginClick: handleSocialLoginClick,
389
371
  handleExternalWalletBtnClick: onExternalWalletBtnClick,
390
372
  handleSocialLoginHeight: handleSocialLoginHeight,
@@ -433,7 +415,10 @@ function Root(props) {
433
415
  onClose: () => setBodyState({
434
416
  showWalletDetails: false
435
417
  }),
436
- children: [/*#__PURE__*/jsx("div", {
418
+ children: [/*#__PURE__*/jsx("p", {
419
+ className: "w3a--mb-2 w3a--text-center w3a--text-base w3a--font-semibold w3a--text-app-gray-900 dark:w3a--text-app-white",
420
+ children: t("modal.getWallet")
421
+ }), /*#__PURE__*/jsx("div", {
437
422
  className: "w3a--my-4 w3a--flex w3a--justify-center",
438
423
  children: /*#__PURE__*/jsx(Image, {
439
424
  imageId: `login-${bodyState.walletDetails.name}`,
@@ -3,22 +3,22 @@ import { cn, getIcons } from '../../utils.js';
3
3
  import Button from '../Button/Button.js';
4
4
  import { BUTTON_TYPE } from '../Button/Button.type.js';
5
5
  import LoginHint from '../LoginHint/LoginHint.js';
6
- import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
6
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
7
7
 
8
8
  function getProviderIcon(method, isDark, extension) {
9
- const imageId = method === AUTH_CONNECTION.TWITTER ? `login-twitter-x${isDark ? "-light" : "-dark"}` : `login-${method}${isDark ? "-light" : "-dark"}`;
9
+ const imageId = method === AUTH_CONNECTION.TWITTER ? `login-X${isDark ? "-light" : "-dark"}` : `login-${method}${isDark ? "-light" : "-dark"}`;
10
10
  const hoverId = method === AUTH_CONNECTION.APPLE || method === AUTH_CONNECTION.GITHUB || method === AUTH_CONNECTION.TWITTER ? imageId : `login-${method}-active`;
11
11
  return /*#__PURE__*/jsxs(Fragment, {
12
12
  children: [/*#__PURE__*/jsx("img", {
13
13
  id: "active-login-img",
14
14
  src: `https://images.web3auth.io/${hoverId}${extension}`,
15
15
  alt: "active-login-img",
16
- className: "w3a--size-5 w3a--object-contain"
16
+ className: "w3a--hidden w3a--size-5 w3a--object-contain group-hover:w3a--block"
17
17
  }), /*#__PURE__*/jsx("img", {
18
18
  id: "login-img",
19
19
  src: `https://images.web3auth.io/${imageId}${extension}`,
20
20
  alt: "login-img",
21
- className: "w3a--size-5 w3a--object-contain"
21
+ className: "w3a--block w3a--size-5 w3a--object-contain group-hover:w3a--hidden"
22
22
  })]
23
23
  });
24
24
  }
@@ -44,31 +44,11 @@ function SocialLoginList(props) {
44
44
  }
45
45
  };
46
46
  if (visibleRow.length !== 0 && (otherRow === null || otherRow === void 0 ? void 0 : otherRow.length) === 0) {
47
- var _visibleRow$;
48
- const isMainOption = (_visibleRow$ = visibleRow[0]) === null || _visibleRow$ === void 0 ? void 0 : _visibleRow$.isMainOption;
49
- const rowsToShow = isMainOption ? visibleRow.filter(row => !row.isMainOption) : visibleRow;
50
- return /*#__PURE__*/jsxs("div", {
47
+ return /*#__PURE__*/jsx("div", {
51
48
  className: "w3a--flex w3a--w-full w3a--flex-col w3a--items-center w3a--justify-center w3a--gap-y-2",
52
- children: [isMainOption && /*#__PURE__*/jsx(Button, {
53
- type: BUTTON_TYPE.SOCIAL,
54
- props: {
55
- showText: false,
56
- method: visibleRow[0].method,
57
- isDark,
58
- isPrimaryBtn: false,
59
- btnStyle: "w3a--flex w3a--items-center !w3a--justify-center w3a--w-full w3a--h-full w3a-arrow w3a-img-login-group",
60
- children: /*#__PURE__*/jsx(Fragment, {
61
- children: getProviderIcon(visibleRow[0].method, isDark, ".svg")
62
- }),
63
- onClick: () => handleSocialLoginClick({
64
- connector: visibleRow[0].connector,
65
- loginParams: visibleRow[0].loginParams
66
- }),
67
- buttonRadius
68
- }
69
- }, visibleRow[0].method), /*#__PURE__*/jsxs("div", {
49
+ children: /*#__PURE__*/jsxs("div", {
70
50
  className: cn("w3a--grid w3a--w-full w3a--gap-x-2", getGridRowFromVisibleLogin()),
71
- children: [rowsToShow.filter((_, index) => rowsToShow.length === 4 ? index <= 3 : index < 3).map(row => /*#__PURE__*/jsx(LoginHint, {
51
+ children: [visibleRow.filter((_, index) => visibleRow.length === 4 ? index <= 3 : index < 3).map(row => /*#__PURE__*/jsx(LoginHint, {
72
52
  content: "Last Login",
73
53
  isDark: isDark,
74
54
  hideHint: true,
@@ -79,7 +59,7 @@ function SocialLoginList(props) {
79
59
  method: row.method,
80
60
  isDark,
81
61
  isPrimaryBtn: false,
82
- btnStyle: "w3a--flex w3a--items-center !w3a--justify-center w3a--w-full w3a--h-full w3a-arrow w3a-img-login-group",
62
+ btnStyle: "w3a--flex w3a--items-center !w3a--justify-center w3a--w-full w3a--h-11 w3a--group",
83
63
  children: /*#__PURE__*/jsx(Fragment, {
84
64
  children: getProviderIcon(row.method, isDark, ".svg")
85
65
  }),
@@ -90,11 +70,12 @@ function SocialLoginList(props) {
90
70
  buttonRadius
91
71
  }
92
72
  }, row.method)
93
- }, row.method)), canShowMore && rowsToShow.length > 4 && /*#__PURE__*/jsx(Button, {
73
+ }, row.method)), canShowMore && visibleRow.length > 4 && /*#__PURE__*/jsx(Button, {
94
74
  type: BUTTON_TYPE.SOCIAL,
95
75
  props: {
96
76
  showIcon: false,
97
77
  onClick: handleExpandSocialLogins,
78
+ btnStyle: "w3a--flex w3a--items-center !w3a--justify-center w3a--w-full w3a--h-11",
98
79
  children: /*#__PURE__*/jsx("img", {
99
80
  src: getIcons(isDark ? "dots-dark-horizontal" : "dots-light-horizontal"),
100
81
  alt: "Logo",
@@ -103,7 +84,7 @@ function SocialLoginList(props) {
103
84
  buttonRadius
104
85
  }
105
86
  })]
106
- })]
87
+ })
107
88
  });
108
89
  }
109
90
  return /*#__PURE__*/jsxs("div", {
@@ -118,9 +99,9 @@ function SocialLoginList(props) {
118
99
  className: "w3a--object-contain"
119
100
  })
120
101
  }), /*#__PURE__*/jsx("div", {
121
- className: "w3a--grid w3a--h-[300px] w3a--w-full w3a--auto-rows-min w3a--grid-cols-1 w3a--gap-y-2 w3a--overflow-y-auto w3a--px-1",
102
+ className: "w3a--social-container w3a--grid w3a--h-[300px] w3a--w-full w3a--auto-rows-min w3a--grid-cols-1 w3a--gap-y-2 w3a--overflow-y-auto w3a--pl-2 w3a--pr-3",
122
103
  children: otherRow.map(row => /*#__PURE__*/jsx("div", {
123
- className: "w3a--h-[50px] w3a--w-full",
104
+ className: "w3a--h-11 w3a--w-full",
124
105
  children: /*#__PURE__*/jsx(Button, {
125
106
  type: BUTTON_TYPE.SOCIAL,
126
107
  props: {
@@ -131,7 +112,7 @@ function SocialLoginList(props) {
131
112
  connector: row.connector,
132
113
  loginParams: row.loginParams
133
114
  }),
134
- btnStyle: "w3a--flex w3a--items-center !w3a--justify-start w3a--w-full w3a--h-full w3a-arrow w3a-img-login-group",
115
+ btnStyle: "w3a--group w3a--relative w3a--overflow-hidden w3a--flex w3a--items-center !w3a--justify-start w3a--w-full w3a--h-11",
135
116
  buttonRadius,
136
117
  children: /*#__PURE__*/jsxs(Fragment, {
137
118
  children: [getProviderIcon(row.method, isDark, ".svg"), /*#__PURE__*/jsx("p", {
@@ -139,8 +120,8 @@ function SocialLoginList(props) {
139
120
  children: row.name
140
121
  }), /*#__PURE__*/jsx("img", {
141
122
  id: "login-arrow",
142
- className: "w3a--icon-animation w3a--ml-auto",
143
- src: getIcons(props.isDark ? "chevron-right-dark" : "chevron-right-light"),
123
+ className: "w3a--absolute w3a--right-4 w3a--top-1/2 -w3a--translate-x-10 -w3a--translate-y-1/2 w3a--opacity-0 w3a--transition-all w3a--duration-300 group-hover:w3a--translate-x-0 group-hover:w3a--opacity-100",
124
+ src: getIcons(isDark ? "chevron-right-dark" : "chevron-right-light"),
144
125
  alt: "arrow"
145
126
  })]
146
127
  })