@talken/talkenkit 2.4.26 → 2.4.29
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/dist/abcWallet-TLGPQAMU.js +161 -0
- package/dist/chunk-MI7TNBED.js +5458 -0
- package/dist/hooks/useEstimateFee.d.ts +21 -0
- package/dist/hooks/useProfile.d.ts +1 -1
- package/dist/index.css +9 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +113 -220
- package/dist/services/AbcAuthService.d.ts +0 -3
- package/dist/wallets/walletConnectors/abcWallet/abcBitcoinProvider.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcConnector.js +2 -2
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaProvider.js +3 -3
- package/dist/wallets/walletConnectors/abcWallet/abcSolanaWalletAdapter.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcTronProvider.d.ts +1 -1
- package/dist/wallets/walletConnectors/abcWallet/abcWallet.js +3 -3
- package/dist/wallets/walletConnectors/abcWallet/api/TalkenApiClient.js +1 -1
- package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.d.ts +1 -0
- package/dist/wallets/walletConnectors/abcWallet/api/WalletscanApi.js +3 -1
- package/dist/wallets/walletConnectors/abcWallet/api/index.js +4 -4
- package/dist/wallets/walletConnectors/abcWallet/index.js +8 -8
- package/dist/wallets/walletConnectors/berasigWallet/berasigWallet.js +2 -2
- package/dist/wallets/walletConnectors/bifrostWallet/bifrostWallet.js +2 -2
- package/dist/wallets/walletConnectors/binanceWallet/binanceWallet.js +2 -2
- package/dist/wallets/walletConnectors/bitgetWallet/bitgetWallet.js +2 -2
- package/dist/wallets/walletConnectors/bybitWallet/bybitWallet.js +2 -2
- package/dist/wallets/walletConnectors/chunk-3LF7FVL6.js +595 -0
- package/dist/wallets/walletConnectors/chunk-5RDUTGDR.js +54 -0
- package/dist/wallets/walletConnectors/chunk-6HBDJDNH.js +300 -0
- package/dist/wallets/walletConnectors/chunk-BHEVY4QY.js +827 -0
- package/dist/wallets/walletConnectors/chunk-FBJ5H6PM.js +300 -0
- package/dist/wallets/walletConnectors/chunk-IN3HEGZM.js +446 -0
- package/dist/wallets/walletConnectors/chunk-J3YPHDHM.js +827 -0
- package/dist/wallets/walletConnectors/chunk-NULM3THX.js +241 -0
- package/dist/wallets/walletConnectors/chunk-UPYPPBXD.js +1485 -0
- package/dist/wallets/walletConnectors/chunk-VMCIDCO5.js +54 -0
- package/dist/wallets/walletConnectors/clvWallet/clvWallet.js +2 -2
- package/dist/wallets/walletConnectors/coin98Wallet/coin98Wallet.js +2 -2
- package/dist/wallets/walletConnectors/coreWallet/coreWallet.js +2 -2
- package/dist/wallets/walletConnectors/foxWallet/foxWallet.js +2 -2
- package/dist/wallets/walletConnectors/frontierWallet/frontierWallet.js +2 -2
- package/dist/wallets/walletConnectors/gateWallet/gateWallet.js +2 -2
- package/dist/wallets/walletConnectors/index.js +75 -75
- package/dist/wallets/walletConnectors/iopayWallet/iopayWallet.js +2 -2
- package/dist/wallets/walletConnectors/kaiaWallet/kaiaWallet.js +2 -2
- package/dist/wallets/walletConnectors/kaikasWallet/kaikasWallet.js +2 -2
- package/dist/wallets/walletConnectors/metaMaskWallet/metaMaskWallet.js +2 -2
- package/dist/wallets/walletConnectors/okxWallet/okxWallet.js +2 -2
- package/dist/wallets/walletConnectors/rainbowWallet/rainbowWallet.js +2 -2
- package/dist/wallets/walletConnectors/roninWallet/roninWallet.js +2 -2
- package/dist/wallets/walletConnectors/safepalWallet/safepalWallet.js +2 -2
- package/dist/wallets/walletConnectors/subWallet/subWallet.js +2 -2
- package/dist/wallets/walletConnectors/tokenPocketWallet/tokenPocketWallet.js +2 -2
- package/dist/wallets/walletConnectors/trustWallet/trustWallet.js +2 -2
- package/dist/wallets/walletConnectors/zealWallet/zealWallet.js +2 -2
- package/dist/wallets/walletConnectors/zerionWallet/zerionWallet.js +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* useEstimateFee — Unified fee estimation hook for all chains
|
|
3
|
+
*
|
|
4
|
+
* Provides a single interface to estimate transaction fees
|
|
5
|
+
* across EVM, Bitcoin, Solana, and Tron chains via talken-api.
|
|
6
|
+
*/
|
|
7
|
+
export interface EstimateFeeParams {
|
|
8
|
+
chain: 'evm' | 'bitcoin' | 'solana' | 'tron';
|
|
9
|
+
network: string;
|
|
10
|
+
fromAddress: string;
|
|
11
|
+
toAddress: string;
|
|
12
|
+
amount: string;
|
|
13
|
+
tokenAddress?: string;
|
|
14
|
+
data?: string;
|
|
15
|
+
}
|
|
16
|
+
export interface EstimateFeeResult {
|
|
17
|
+
fee: string;
|
|
18
|
+
}
|
|
19
|
+
export declare function useEstimateFee(): {
|
|
20
|
+
estimateFee: (params: EstimateFeeParams) => Promise<EstimateFeeResult>;
|
|
21
|
+
};
|
|
@@ -18,6 +18,6 @@ export declare const createNativeBalanceQueryKey: (address?: Address, chainId?:
|
|
|
18
18
|
export declare function useProfile({ address, includeBalance }: UseProfileParameters): {
|
|
19
19
|
ensName: string | null | undefined;
|
|
20
20
|
ensAvatar: import("viem").GetEnsAvatarReturnType | undefined;
|
|
21
|
-
balance: ProfileBalance | undefined;
|
|
21
|
+
balance: ProfileBalance | null | undefined;
|
|
22
22
|
};
|
|
23
23
|
export {};
|
package/dist/index.css
CHANGED
|
@@ -3710,7 +3710,7 @@
|
|
|
3710
3710
|
display: none;
|
|
3711
3711
|
}
|
|
3712
3712
|
|
|
3713
|
-
/* vanilla-extract-css-ns:src/components/ConnectOptions/AbcWaasAuth/AbcWaasAuthSections.css.ts.vanilla.css?source=#
|
|
3713
|
+
/* vanilla-extract-css-ns:src/components/ConnectOptions/AbcWaasAuth/AbcWaasAuthSections.css.ts.vanilla.css?source=#H4sIAAAAAAAAE61VW27bMBD89yn2MwZKg3LiPJi/tEfoBWhxbW1NkQJJxXaL3r0Q9TCluI6RBAZkiORyd2dnRgt0T8FnHP7MABT5SsujgI3Gw/MM4j9T5DAPZI2A3Oq6NM3OVlYCMl4dnmd/Z4v2kuz8JVLT1jAKWHoBOZqArlleW6fQCciqA3irScGrdDeMuR3LrbbOsy0adFK/xIPzUwxzUlHt+/wAlVSKzLZdSB937f5a5ruts7VR7dXiTarSKqlfhmMxWXDSeGob7xLH08AXSw8oPaa9i43Na8/2FAoyEYg05m1GmTdQfG9e5sk9yxjaQCcgS2Ey1mDzbuugyeBp4dScaEuupEMT4visCczTbxSQ3bdQXOr/Jx7CfIjbyJL0UQCZAh2FBGfmaFsEAY+j6S+FqLTMsbBaoYttvJfsB5Wj3oUiL9caVRtdO29j54FJre0eVQSgkjmFowC+WI2C2R7XOwpM1sFuSOtv8N8tUdhXdJcOxGnGMvqttT0wX0hl9wJ4/GWcNyx7j0tAxmPEr78q4CGwJs1FOg7jGBFxQmVYcc5bNjIyzNYBuE9guR1BWVmayu8KGg3y6uRUkmF7UqEQsOyWrhX9r9oH2hxZbk1AE9KttMtuxmeVdvsZlty18jrpYtlZSFzaY0vstdXqgljG0gVo9MiKLjZLsq3OG2L0zrF47uPJHtSupv7KocbGjX3hyOwE8C+BfSjgYeo7ZygzsdneXM978ofs/Y1PT5iYckRqnfLjSzh4ZjIPrVcIY8PNwLx5RCtWs7GuFOBzqfEmW/DVfMK+x+ePfgoehMwDveJVqfniaTUO/oRKHqcq6Wc9UsmK86u/KNHx4jwS7v0DZ/agTXwIAAA= */
|
|
3714
3714
|
[data-rk] .er9ts10 {
|
|
3715
3715
|
display: flex;
|
|
3716
3716
|
flex-direction: column;
|
|
@@ -3748,6 +3748,14 @@
|
|
|
3748
3748
|
cursor: not-allowed;
|
|
3749
3749
|
opacity: 0.5;
|
|
3750
3750
|
}
|
|
3751
|
+
[data-rk] .er9ts12:-webkit-autofill,
|
|
3752
|
+
[data-rk] .er9ts12:-webkit-autofill:hover,
|
|
3753
|
+
[data-rk] .er9ts12:-webkit-autofill:focus {
|
|
3754
|
+
-webkit-box-shadow: 0 0 0 1000px var(--rk-colors-modalBackground) inset;
|
|
3755
|
+
-webkit-text-fill-color: var(--rk-colors-modalText);
|
|
3756
|
+
-webkit-transition: background-color 5000s ease-in-out 0s;
|
|
3757
|
+
transition: background-color 5000s ease-in-out 0s;
|
|
3758
|
+
}
|
|
3751
3759
|
[data-rk] .er9ts13 {
|
|
3752
3760
|
cursor: pointer;
|
|
3753
3761
|
border: none;
|
package/dist/index.d.ts
CHANGED
|
@@ -60,7 +60,8 @@ export { useSolanaWallet } from './hooks/useSolanaWallet';
|
|
|
60
60
|
export type { SolanaTransferParams, UseSolanaWalletReturn, } from './hooks/useSolanaWallet';
|
|
61
61
|
export { useTronWallet } from './hooks/useTronWallet';
|
|
62
62
|
export type { UseTronWalletReturn } from './hooks/useTronWallet';
|
|
63
|
-
export {
|
|
63
|
+
export { useEstimateFee } from './hooks/useEstimateFee';
|
|
64
|
+
export type { EstimateFeeParams, EstimateFeeResult, } from './hooks/useEstimateFee';
|
|
64
65
|
export { createLogger, configureLogger, getLoggerConfig, Logger, } from './utils/logger';
|
|
65
66
|
export { getTalkenApiClient, setTalkenApiClient, } from './wallets/walletConnectors/abcWallet/api/TalkenApiSingleton';
|
|
66
67
|
export { TalkenApiClient, createTalkenApiClient, WalletscanApi, GasApi, ConfigApi, TokenApi, SolanaApi, } from './wallets/walletConnectors/abcWallet/api';
|
package/dist/index.js
CHANGED
|
@@ -53,7 +53,7 @@ import {
|
|
|
53
53
|
networkToChainId,
|
|
54
54
|
resolveTalkenApiUrl,
|
|
55
55
|
setTalkenApiClient
|
|
56
|
-
} from "./chunk-
|
|
56
|
+
} from "./chunk-MI7TNBED.js";
|
|
57
57
|
import {
|
|
58
58
|
STORAGE_PREFIX,
|
|
59
59
|
getCredentialManager
|
|
@@ -158,7 +158,7 @@ function useBitcoinWallet() {
|
|
|
158
158
|
wallet: bitcoinWallet,
|
|
159
159
|
emptyState: emptyWalletState,
|
|
160
160
|
requestInterceptor,
|
|
161
|
-
importProvider: async () => (await import("./abcWallet-
|
|
161
|
+
importProvider: async () => (await import("./abcWallet-TLGPQAMU.js")).AbcBitcoinProvider,
|
|
162
162
|
mapState: (nextWallet, provider) => ({
|
|
163
163
|
address: nextWallet.address,
|
|
164
164
|
publicKey: nextWallet.publicKey,
|
|
@@ -1329,7 +1329,7 @@ function useSolanaWallet() {
|
|
|
1329
1329
|
wallet: solanaWallet,
|
|
1330
1330
|
emptyState: emptyWalletState,
|
|
1331
1331
|
requestInterceptor,
|
|
1332
|
-
importProvider: async () => (await import("./abcWallet-
|
|
1332
|
+
importProvider: async () => (await import("./abcWallet-TLGPQAMU.js")).AbcSolanaProvider,
|
|
1333
1333
|
mapState: (nextWallet, provider) => ({
|
|
1334
1334
|
address: nextWallet.address,
|
|
1335
1335
|
publicKey: nextWallet.publicKey,
|
|
@@ -2002,7 +2002,7 @@ function useProfile({ address, includeBalance }) {
|
|
|
2002
2002
|
queryKey: createNativeBalanceQueryKey(address, chainId),
|
|
2003
2003
|
queryFn: async () => {
|
|
2004
2004
|
if (!address || !chainId)
|
|
2005
|
-
return
|
|
2005
|
+
return null;
|
|
2006
2006
|
const walletscanApi = createWalletscanApi();
|
|
2007
2007
|
const nativeToken = await walletscanApi.getNativeTokenWithTimeout(
|
|
2008
2008
|
{
|
|
@@ -2013,7 +2013,7 @@ function useProfile({ address, includeBalance }) {
|
|
|
2013
2013
|
3e3
|
|
2014
2014
|
);
|
|
2015
2015
|
if (!nativeToken)
|
|
2016
|
-
return
|
|
2016
|
+
return null;
|
|
2017
2017
|
const decimals = nativeToken.decimals ?? 18;
|
|
2018
2018
|
const rawBalance = nativeToken.balance ?? 0;
|
|
2019
2019
|
const value = BigInt(String(rawBalance));
|
|
@@ -2312,7 +2312,7 @@ function cssStringFromTheme(theme, options = {}) {
|
|
|
2312
2312
|
}
|
|
2313
2313
|
|
|
2314
2314
|
// src/providers/SignConfirmationProvider/SignConfirmationProvider.tsx
|
|
2315
|
-
import {
|
|
2315
|
+
import { WalletContext } from "@solana/wallet-adapter-react";
|
|
2316
2316
|
import React35, {
|
|
2317
2317
|
createContext as createContext8,
|
|
2318
2318
|
useContext as useContext7,
|
|
@@ -5585,7 +5585,7 @@ function NonEvmTransferConfirmationModal({
|
|
|
5585
5585
|
/* @__PURE__ */ React34.createElement("span", { className: feeLabel }, "Estimated Gas Fee"),
|
|
5586
5586
|
/* @__PURE__ */ React34.createElement("span", { className: feeLabel }, request.estimatedFee, " ", request.feeSymbol || "")
|
|
5587
5587
|
),
|
|
5588
|
-
/* @__PURE__ */ React34.createElement("div", { className: actions }, /* @__PURE__ */ React34.createElement("button", { type: "button", onClick: onClose, className: cancelButton }, "Cancel"), /* @__PURE__ */ React34.createElement("button", { type: "button", onClick: onConfirm, className: confirmButton }, "
|
|
5588
|
+
/* @__PURE__ */ React34.createElement("div", { className: actions }, /* @__PURE__ */ React34.createElement("button", { type: "button", onClick: onClose, className: cancelButton }, "Cancel"), /* @__PURE__ */ React34.createElement("button", { type: "button", onClick: onConfirm, className: confirmButton }, "Send")),
|
|
5589
5589
|
/* @__PURE__ */ React34.createElement(Toast, { message: toastMessage, isVisible: toastVisible2 })
|
|
5590
5590
|
)
|
|
5591
5591
|
);
|
|
@@ -6710,7 +6710,12 @@ function SignConfirmationProvider({
|
|
|
6710
6710
|
);
|
|
6711
6711
|
const [nonEvmRejecter, setNonEvmRejecter] = useState18(null);
|
|
6712
6712
|
const { connector, isConnected } = useAccount9();
|
|
6713
|
-
const
|
|
6713
|
+
const walletContextValue = useContext7(WalletContext);
|
|
6714
|
+
const hasSolanaProvider = !Object.getOwnPropertyDescriptor(
|
|
6715
|
+
walletContextValue,
|
|
6716
|
+
"wallets"
|
|
6717
|
+
)?.get;
|
|
6718
|
+
const solanaWallets = hasSolanaProvider ? walletContextValue.wallets : [];
|
|
6714
6719
|
const { resolveTransaction } = useTransactionResolver();
|
|
6715
6720
|
const rainbowKitChainsById = useRainbowKitChainsById();
|
|
6716
6721
|
const resetState = useCallback13(() => {
|
|
@@ -7757,7 +7762,7 @@ var AbcSolanaWalletAdapter = class extends BaseMessageSignerWalletAdapter {
|
|
|
7757
7762
|
var abcSolanaWalletAdapter_default = AbcSolanaWalletAdapter;
|
|
7758
7763
|
|
|
7759
7764
|
// src/solana/AbcSolanaAutoConnector.tsx
|
|
7760
|
-
import { useWallet as
|
|
7765
|
+
import { useWallet as useWallet3 } from "@solana/wallet-adapter-react";
|
|
7761
7766
|
import { useEffect as useEffect17, useRef as useRef9 } from "react";
|
|
7762
7767
|
|
|
7763
7768
|
// src/solana/recentSolanaWalletIds.ts
|
|
@@ -7782,7 +7787,7 @@ function setRecentSolanaWallet(walletName2) {
|
|
|
7782
7787
|
|
|
7783
7788
|
// src/solana/AbcSolanaAutoConnector.tsx
|
|
7784
7789
|
function AbcSolanaAutoConnector() {
|
|
7785
|
-
const { wallets, select, connected, wallet } =
|
|
7790
|
+
const { wallets, select, connected, wallet } = useWallet3();
|
|
7786
7791
|
const isConnectingRef = useRef9(false);
|
|
7787
7792
|
const hasAttemptedRef = useRef9(false);
|
|
7788
7793
|
useEffect17(() => {
|
|
@@ -8033,7 +8038,7 @@ function setRainbowKitVersion({ version }) {
|
|
|
8033
8038
|
}
|
|
8034
8039
|
function useFingerprint() {
|
|
8035
8040
|
const fingerprint = useCallback14(() => {
|
|
8036
|
-
setRainbowKitVersion({ version: "2.4.
|
|
8041
|
+
setRainbowKitVersion({ version: "2.4.29" });
|
|
8037
8042
|
}, []);
|
|
8038
8043
|
useEffect19(() => {
|
|
8039
8044
|
fingerprint();
|
|
@@ -10036,7 +10041,7 @@ import { useAccount as useAccount16, useDisconnect as useDisconnect3 } from "wag
|
|
|
10036
10041
|
|
|
10037
10042
|
// src/components/ConnectOptions/ConnectOptions.tsx
|
|
10038
10043
|
import {
|
|
10039
|
-
WalletContext
|
|
10044
|
+
WalletContext as WalletContext2
|
|
10040
10045
|
} from "@solana/wallet-adapter-react";
|
|
10041
10046
|
import React93, { useCallback as useCallback22, useContext as useContext24, useMemo as useMemo18, useState as useState35 } from "react";
|
|
10042
10047
|
|
|
@@ -10368,7 +10373,7 @@ function AbcWaasAuthSections(props) {
|
|
|
10368
10373
|
setAbcWaasConfirmPassword
|
|
10369
10374
|
} = props;
|
|
10370
10375
|
const [email, setEmail] = useState24("");
|
|
10371
|
-
const isTelegramMiniApp = typeof window !== "undefined" && !!window.Telegram?.WebApp && window.Telegram.WebApp.platform !== "unknown";
|
|
10376
|
+
const isTelegramMiniApp = typeof window !== "undefined" && (!!window.Telegram?.WebApp && window.Telegram.WebApp.platform !== "unknown" || window.location.hash.includes("tgWebAppData"));
|
|
10372
10377
|
const isGoogleEnabled = !isTelegramMiniApp && typeof process !== "undefined" && process.env && process.env.NEXT_PUBLIC_GOOGLE_OAUTH_ENABLED === "true" && !!process.env.NEXT_PUBLIC_FIREBASE_API_KEY;
|
|
10373
10378
|
const isAppleEnabled = !isTelegramMiniApp && typeof process !== "undefined" && process.env && process.env.NEXT_PUBLIC_APPLE_OAUTH_ENABLED === "true" && !!process.env.NEXT_PUBLIC_APPLE_OAUTH_CLIENT_ID;
|
|
10374
10379
|
const isKakaoEnabled = !isTelegramMiniApp && typeof process !== "undefined" && process.env && process.env.NEXT_PUBLIC_KAKAO_OAUTH_ENABLED === "true" && !!process.env.NEXT_PUBLIC_KAKAO_JS_KEY;
|
|
@@ -10462,38 +10467,18 @@ function AbcWaasAuthSections(props) {
|
|
|
10462
10467
|
style: { flexGrow: 1 }
|
|
10463
10468
|
}
|
|
10464
10469
|
)
|
|
10465
|
-
)), abcWaasStep === "PASSWORD" /* Password */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Enter your password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, abcWaasEmail))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordSubmit }, /* @__PURE__ */ React76.createElement(
|
|
10466
|
-
|
|
10470
|
+
)), abcWaasStep === "PASSWORD" /* Password */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Enter your password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, abcWaasEmail))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordSubmit }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement("div", { className: emailFormContainer }, /* @__PURE__ */ React76.createElement(
|
|
10471
|
+
"input",
|
|
10467
10472
|
{
|
|
10468
|
-
|
|
10469
|
-
|
|
10470
|
-
|
|
10471
|
-
|
|
10472
|
-
|
|
10473
|
-
|
|
10474
|
-
|
|
10475
|
-
}
|
|
10476
|
-
|
|
10477
|
-
"input",
|
|
10478
|
-
{
|
|
10479
|
-
type: "password",
|
|
10480
|
-
placeholder: "Enter password",
|
|
10481
|
-
value: abcWaasPassword,
|
|
10482
|
-
onChange: (e) => setAbcWaasPassword(e.target.value),
|
|
10483
|
-
disabled: isAbcWaasLoading,
|
|
10484
|
-
required: true,
|
|
10485
|
-
style: {
|
|
10486
|
-
width: "100%",
|
|
10487
|
-
border: "none",
|
|
10488
|
-
outline: "none",
|
|
10489
|
-
background: "transparent",
|
|
10490
|
-
fontSize: "16px",
|
|
10491
|
-
color: "#111827",
|
|
10492
|
-
fontFamily: "inherit"
|
|
10493
|
-
}
|
|
10494
|
-
}
|
|
10495
|
-
)
|
|
10496
|
-
), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10473
|
+
type: "password",
|
|
10474
|
+
placeholder: "Enter password",
|
|
10475
|
+
value: abcWaasPassword,
|
|
10476
|
+
onChange: (e) => setAbcWaasPassword(e.target.value),
|
|
10477
|
+
disabled: isAbcWaasLoading,
|
|
10478
|
+
required: true,
|
|
10479
|
+
className: emailInputStyle
|
|
10480
|
+
}
|
|
10481
|
+
))), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10497
10482
|
Box,
|
|
10498
10483
|
{
|
|
10499
10484
|
as: "button",
|
|
@@ -10566,7 +10551,7 @@ function AbcWaasAuthSections(props) {
|
|
|
10566
10551
|
color: themeVars.colors.modalText,
|
|
10567
10552
|
fontFamily: "inherit",
|
|
10568
10553
|
textAlign: "center",
|
|
10569
|
-
letterSpacing: "0.
|
|
10554
|
+
letterSpacing: "0.15em"
|
|
10570
10555
|
}
|
|
10571
10556
|
}
|
|
10572
10557
|
)
|
|
@@ -10613,39 +10598,19 @@ function AbcWaasAuthSections(props) {
|
|
|
10613
10598
|
}
|
|
10614
10599
|
},
|
|
10615
10600
|
"Verify"
|
|
10616
|
-
))), abcWaasError && /* @__PURE__ */ React76.createElement(Box, { marginTop: "8" }, /* @__PURE__ */ React76.createElement(Text, { color: "error", size: "14", weight: "medium" }, abcWaasError))), abcWaasStep === "PASSWORD_SETUP" /* PasswordSetup */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Create a password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, "Must be at least 6 characters"))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordSetupSubmit }, /* @__PURE__ */ React76.createElement(
|
|
10617
|
-
|
|
10601
|
+
))), abcWaasError && /* @__PURE__ */ React76.createElement(Box, { marginTop: "8" }, /* @__PURE__ */ React76.createElement(Text, { color: "error", size: "14", weight: "medium" }, abcWaasError))), abcWaasStep === "PASSWORD_SETUP" /* PasswordSetup */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Create a password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, "Must be at least 6 characters"))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordSetupSubmit }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement("div", { className: emailFormContainer }, /* @__PURE__ */ React76.createElement(
|
|
10602
|
+
"input",
|
|
10618
10603
|
{
|
|
10619
|
-
|
|
10620
|
-
|
|
10621
|
-
|
|
10622
|
-
|
|
10623
|
-
|
|
10624
|
-
|
|
10625
|
-
|
|
10626
|
-
|
|
10627
|
-
|
|
10628
|
-
|
|
10629
|
-
{
|
|
10630
|
-
type: "password",
|
|
10631
|
-
placeholder: "Enter password",
|
|
10632
|
-
value: abcWaasNewPassword,
|
|
10633
|
-
onChange: (e) => setAbcWaasNewPassword(e.target.value),
|
|
10634
|
-
disabled: isAbcWaasLoading,
|
|
10635
|
-
required: true,
|
|
10636
|
-
minLength: 6,
|
|
10637
|
-
style: {
|
|
10638
|
-
width: "100%",
|
|
10639
|
-
border: "none",
|
|
10640
|
-
outline: "none",
|
|
10641
|
-
background: "transparent",
|
|
10642
|
-
fontSize: "16px",
|
|
10643
|
-
color: themeVars.colors.modalText,
|
|
10644
|
-
fontFamily: "inherit"
|
|
10645
|
-
}
|
|
10646
|
-
}
|
|
10647
|
-
)
|
|
10648
|
-
), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10604
|
+
type: "password",
|
|
10605
|
+
placeholder: "Enter password",
|
|
10606
|
+
value: abcWaasNewPassword,
|
|
10607
|
+
onChange: (e) => setAbcWaasNewPassword(e.target.value),
|
|
10608
|
+
disabled: isAbcWaasLoading,
|
|
10609
|
+
required: true,
|
|
10610
|
+
minLength: 6,
|
|
10611
|
+
className: emailInputStyle
|
|
10612
|
+
}
|
|
10613
|
+
))), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10649
10614
|
Box,
|
|
10650
10615
|
{
|
|
10651
10616
|
as: "button",
|
|
@@ -10688,38 +10653,18 @@ function AbcWaasAuthSections(props) {
|
|
|
10688
10653
|
}
|
|
10689
10654
|
},
|
|
10690
10655
|
"Continue"
|
|
10691
|
-
))), abcWaasError && /* @__PURE__ */ React76.createElement(Box, { marginTop: "8" }, /* @__PURE__ */ React76.createElement(Text, { color: "error", size: "14", weight: "medium" }, abcWaasError))), abcWaasStep === "PASSWORD_CONFIRM" /* PasswordConfirm */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Confirm your password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, "Re-enter your password to confirm"))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordConfirmSubmit }, /* @__PURE__ */ React76.createElement(
|
|
10692
|
-
|
|
10656
|
+
))), abcWaasError && /* @__PURE__ */ React76.createElement(Box, { marginTop: "8" }, /* @__PURE__ */ React76.createElement(Text, { color: "error", size: "14", weight: "medium" }, abcWaasError))), abcWaasStep === "PASSWORD_CONFIRM" /* PasswordConfirm */ && /* @__PURE__ */ React76.createElement(Box, { marginX: "6", marginBottom: "16" }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalText", size: "16", weight: "semibold" }, "Confirm your password"), /* @__PURE__ */ React76.createElement(Box, { marginTop: "4" }, /* @__PURE__ */ React76.createElement(Text, { color: "modalTextSecondary", size: "14", weight: "medium" }, "Re-enter your password to confirm"))), /* @__PURE__ */ React76.createElement("form", { onSubmit: handlePasswordConfirmSubmit }, /* @__PURE__ */ React76.createElement(Box, { marginBottom: "12" }, /* @__PURE__ */ React76.createElement("div", { className: emailFormContainer }, /* @__PURE__ */ React76.createElement(
|
|
10657
|
+
"input",
|
|
10693
10658
|
{
|
|
10694
|
-
|
|
10695
|
-
|
|
10696
|
-
|
|
10697
|
-
|
|
10698
|
-
|
|
10699
|
-
|
|
10700
|
-
|
|
10701
|
-
}
|
|
10702
|
-
|
|
10703
|
-
"input",
|
|
10704
|
-
{
|
|
10705
|
-
type: "password",
|
|
10706
|
-
placeholder: "Confirm password",
|
|
10707
|
-
value: abcWaasConfirmPassword,
|
|
10708
|
-
onChange: (e) => setAbcWaasConfirmPassword(e.target.value),
|
|
10709
|
-
disabled: isAbcWaasLoading,
|
|
10710
|
-
required: true,
|
|
10711
|
-
style: {
|
|
10712
|
-
width: "100%",
|
|
10713
|
-
border: "none",
|
|
10714
|
-
outline: "none",
|
|
10715
|
-
background: "transparent",
|
|
10716
|
-
fontSize: "16px",
|
|
10717
|
-
color: themeVars.colors.modalText,
|
|
10718
|
-
fontFamily: "inherit"
|
|
10719
|
-
}
|
|
10720
|
-
}
|
|
10721
|
-
)
|
|
10722
|
-
), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10659
|
+
type: "password",
|
|
10660
|
+
placeholder: "Confirm password",
|
|
10661
|
+
value: abcWaasConfirmPassword,
|
|
10662
|
+
onChange: (e) => setAbcWaasConfirmPassword(e.target.value),
|
|
10663
|
+
disabled: isAbcWaasLoading,
|
|
10664
|
+
required: true,
|
|
10665
|
+
className: emailInputStyle
|
|
10666
|
+
}
|
|
10667
|
+
))), /* @__PURE__ */ React76.createElement(Box, { display: "flex", gap: "12" }, /* @__PURE__ */ React76.createElement(
|
|
10723
10668
|
Box,
|
|
10724
10669
|
{
|
|
10725
10670
|
as: "button",
|
|
@@ -15328,7 +15273,7 @@ function ConnectOptions({ onClose }) {
|
|
|
15328
15273
|
const { connector } = useContext24(WalletButtonContext);
|
|
15329
15274
|
const multiChainContext = useContext24(MultiChainContext);
|
|
15330
15275
|
const walletContext = useContext24(
|
|
15331
|
-
|
|
15276
|
+
WalletContext2
|
|
15332
15277
|
);
|
|
15333
15278
|
const { solanaWallets, select, connecting } = useMemo18(() => {
|
|
15334
15279
|
if (!multiChainContext) {
|
|
@@ -15460,7 +15405,7 @@ function ConnectOptions({ onClose }) {
|
|
|
15460
15405
|
}
|
|
15461
15406
|
|
|
15462
15407
|
// src/components/ConnectOptions/MultiChainConnectOptions.tsx
|
|
15463
|
-
import { useWallet as
|
|
15408
|
+
import { useWallet as useWallet5 } from "@solana/wallet-adapter-react";
|
|
15464
15409
|
import React96, { useContext as useContext25, useCallback as useCallback24, useState as useState37 } from "react";
|
|
15465
15410
|
|
|
15466
15411
|
// src/components/ChainSelector/ChainSelector.tsx
|
|
@@ -15526,7 +15471,7 @@ function ChainSelector({
|
|
|
15526
15471
|
}
|
|
15527
15472
|
|
|
15528
15473
|
// src/components/SolanaWalletList/SolanaWalletList.tsx
|
|
15529
|
-
import { useWallet as
|
|
15474
|
+
import { useWallet as useWallet4 } from "@solana/wallet-adapter-react";
|
|
15530
15475
|
import React95, { useCallback as useCallback23, useState as useState36 } from "react";
|
|
15531
15476
|
|
|
15532
15477
|
// src/components/SolanaWalletList/SolanaWalletList.css.ts
|
|
@@ -15543,7 +15488,7 @@ function SolanaWalletList2({
|
|
|
15543
15488
|
onConnect,
|
|
15544
15489
|
onError
|
|
15545
15490
|
}) {
|
|
15546
|
-
const { wallets, select, connect, connecting } =
|
|
15491
|
+
const { wallets, select, connect, connecting } = useWallet4();
|
|
15547
15492
|
const [connectingWallet, setConnectingWallet] = useState36(null);
|
|
15548
15493
|
const handleWalletClick = useCallback23(
|
|
15549
15494
|
async (walletName2) => {
|
|
@@ -15646,7 +15591,7 @@ function MultiChainConnectOptions({
|
|
|
15646
15591
|
return /* @__PURE__ */ React96.createElement(UnifiedWalletList, { onClose });
|
|
15647
15592
|
}
|
|
15648
15593
|
function UnifiedWalletList({ onClose }) {
|
|
15649
|
-
const { wallets: solanaWallets, select, connecting } =
|
|
15594
|
+
const { wallets: solanaWallets, select, connecting } = useWallet5();
|
|
15650
15595
|
const _multiChainContext = useContext25(MultiChainContext);
|
|
15651
15596
|
const [connectingWallet, setConnectingWallet] = useState37(null);
|
|
15652
15597
|
const handleSolanaWalletClick = useCallback24(
|
|
@@ -17483,7 +17428,7 @@ function useWalletCapabilities() {
|
|
|
17483
17428
|
} finally {
|
|
17484
17429
|
setIsLoading(false);
|
|
17485
17430
|
}
|
|
17486
|
-
}, [connector?.id, connector?.name, isConnected, walletClient]);
|
|
17431
|
+
}, [address, connector?.id, connector?.name, isConnected, walletClient]);
|
|
17487
17432
|
useEffect35(() => {
|
|
17488
17433
|
void refresh();
|
|
17489
17434
|
}, [refresh]);
|
|
@@ -18001,7 +17946,7 @@ function useTronWallet() {
|
|
|
18001
17946
|
wallet: tronWallet,
|
|
18002
17947
|
emptyState: emptyWalletState,
|
|
18003
17948
|
requestInterceptor,
|
|
18004
|
-
importProvider: async () => (await import("./abcWallet-
|
|
17949
|
+
importProvider: async () => (await import("./abcWallet-TLGPQAMU.js")).AbcTronProvider,
|
|
18005
17950
|
mapState: (nextWallet, provider) => ({
|
|
18006
17951
|
address: nextWallet.address,
|
|
18007
17952
|
publicKey: nextWallet.publicKey,
|
|
@@ -18052,107 +17997,59 @@ function useTronWallet() {
|
|
|
18052
17997
|
};
|
|
18053
17998
|
}
|
|
18054
17999
|
|
|
18055
|
-
// src/
|
|
18056
|
-
import
|
|
18057
|
-
|
|
18058
|
-
var
|
|
18059
|
-
|
|
18060
|
-
|
|
18061
|
-
|
|
18062
|
-
|
|
18063
|
-
|
|
18064
|
-
|
|
18065
|
-
|
|
18066
|
-
|
|
18067
|
-
|
|
18068
|
-
|
|
18069
|
-
|
|
18070
|
-
|
|
18071
|
-
|
|
18072
|
-
|
|
18073
|
-
|
|
18074
|
-
|
|
18075
|
-
|
|
18076
|
-
|
|
18077
|
-
|
|
18078
|
-
|
|
18079
|
-
|
|
18080
|
-
|
|
18081
|
-
|
|
18082
|
-
|
|
18083
|
-
|
|
18084
|
-
|
|
18085
|
-
|
|
18086
|
-
|
|
18087
|
-
|
|
18088
|
-
|
|
18089
|
-
|
|
18090
|
-
|
|
18091
|
-
|
|
18092
|
-
|
|
18093
|
-
|
|
18094
|
-
|
|
18095
|
-
|
|
18096
|
-
|
|
18097
|
-
|
|
18098
|
-
|
|
18099
|
-
|
|
18100
|
-
|
|
18101
|
-
|
|
18102
|
-
|
|
18103
|
-
|
|
18104
|
-
|
|
18105
|
-
|
|
18106
|
-
const secretKey = sharedSecret.toString(16).padStart(64, "0");
|
|
18107
|
-
secureChannelCache = { response: data, mykey, secretKey };
|
|
18108
|
-
cacheTimestamp = Date.now();
|
|
18109
|
-
return secureChannelCache;
|
|
18110
|
-
} catch (error2) {
|
|
18111
|
-
console.error("Secure channel creation failed:", error2);
|
|
18112
|
-
throw error2;
|
|
18113
|
-
}
|
|
18114
|
-
}
|
|
18115
|
-
async function encryptPlain(plain) {
|
|
18116
|
-
const secureChannel = await getSecureChannel();
|
|
18117
|
-
const secretKey = secureChannel.secretKey;
|
|
18118
|
-
const key = secretKey.substring(0, 32);
|
|
18119
|
-
const iv = secretKey.substring(32);
|
|
18120
|
-
const encrypted = CryptoJS.AES.encrypt(plain, CryptoJS.enc.Hex.parse(key), {
|
|
18121
|
-
iv: CryptoJS.enc.Hex.parse(iv),
|
|
18122
|
-
padding: CryptoJS.pad.Pkcs7,
|
|
18123
|
-
mode: CryptoJS.mode.CBC
|
|
18124
|
-
});
|
|
18125
|
-
return {
|
|
18126
|
-
encryptPlain: encrypted.toString(),
|
|
18127
|
-
secureChannel: secureChannel.response.channelid
|
|
18128
|
-
};
|
|
18129
|
-
}
|
|
18130
|
-
function decrypt(encrypted) {
|
|
18131
|
-
if (!secureChannelCache) {
|
|
18132
|
-
console.error("No secure channel information found");
|
|
18133
|
-
return "";
|
|
18134
|
-
}
|
|
18135
|
-
const secretKey = secureChannelCache.secretKey;
|
|
18136
|
-
const key = secretKey.substring(0, 32);
|
|
18137
|
-
const iv = secretKey.substring(32);
|
|
18138
|
-
const decrypted = CryptoJS.AES.decrypt(
|
|
18139
|
-
encrypted,
|
|
18140
|
-
CryptoJS.enc.Hex.parse(key),
|
|
18141
|
-
{
|
|
18142
|
-
iv: CryptoJS.enc.Hex.parse(iv),
|
|
18143
|
-
padding: CryptoJS.pad.Pkcs7,
|
|
18144
|
-
mode: CryptoJS.mode.CBC
|
|
18145
|
-
}
|
|
18000
|
+
// src/hooks/useEstimateFee.ts
|
|
18001
|
+
import { useCallback as useCallback30 } from "react";
|
|
18002
|
+
var INPUT_PER_BYTE = 141;
|
|
18003
|
+
var BUFFER = 500;
|
|
18004
|
+
function useEstimateFee() {
|
|
18005
|
+
const estimateFee = useCallback30(
|
|
18006
|
+
async (params) => {
|
|
18007
|
+
switch (params.chain) {
|
|
18008
|
+
case "evm": {
|
|
18009
|
+
const api = getTalkenApiClient();
|
|
18010
|
+
if (!api)
|
|
18011
|
+
throw new Error("TalkenApiClient not initialized");
|
|
18012
|
+
const [gasEstimate, gasPriceResponse] = await Promise.all([
|
|
18013
|
+
api.evm.estimateGas({
|
|
18014
|
+
network: params.network,
|
|
18015
|
+
from: params.fromAddress || "",
|
|
18016
|
+
to: params.toAddress,
|
|
18017
|
+
value: params.amount,
|
|
18018
|
+
data: params.data
|
|
18019
|
+
}),
|
|
18020
|
+
api.evm.getGasPrice(params.network)
|
|
18021
|
+
]);
|
|
18022
|
+
const gasLimit = BigInt(gasEstimate.result || "21000");
|
|
18023
|
+
const gasPrice = BigInt(gasPriceResponse.result || "0");
|
|
18024
|
+
const fee = (gasLimit * gasPrice).toString();
|
|
18025
|
+
return { fee };
|
|
18026
|
+
}
|
|
18027
|
+
case "bitcoin": {
|
|
18028
|
+
const api = getTalkenApiClient();
|
|
18029
|
+
if (!api)
|
|
18030
|
+
throw new Error("TalkenApiClient not initialized");
|
|
18031
|
+
const result = await api.bitcoin.getFeeRate(
|
|
18032
|
+
params.network
|
|
18033
|
+
);
|
|
18034
|
+
const feeRate = Number(result.feeRate) || 1;
|
|
18035
|
+
const fee = Math.floor(feeRate * 2 * INPUT_PER_BYTE + BUFFER);
|
|
18036
|
+
return { fee: String(fee) };
|
|
18037
|
+
}
|
|
18038
|
+
case "solana": {
|
|
18039
|
+
return { fee: "5000" };
|
|
18040
|
+
}
|
|
18041
|
+
case "tron": {
|
|
18042
|
+
const isTrc20 = !!params.tokenAddress;
|
|
18043
|
+
const fee = isTrc20 ? "13000000" : "1000000";
|
|
18044
|
+
return { fee };
|
|
18045
|
+
}
|
|
18046
|
+
default:
|
|
18047
|
+
throw new Error(`Unsupported chain: ${params.chain}`);
|
|
18048
|
+
}
|
|
18049
|
+
},
|
|
18050
|
+
[]
|
|
18146
18051
|
);
|
|
18147
|
-
return
|
|
18148
|
-
}
|
|
18149
|
-
async function getSecureChannelId() {
|
|
18150
|
-
const secureChannel = await getSecureChannel();
|
|
18151
|
-
return secureChannel.response.channelid;
|
|
18152
|
-
}
|
|
18153
|
-
function clearSecureChannel() {
|
|
18154
|
-
secureChannelCache = null;
|
|
18155
|
-
cacheTimestamp = null;
|
|
18052
|
+
return { estimateFee };
|
|
18156
18053
|
}
|
|
18157
18054
|
|
|
18158
18055
|
// src/utils/embeddedTxAdapter.ts
|
|
@@ -18258,7 +18155,6 @@ export {
|
|
|
18258
18155
|
WalletscanApi,
|
|
18259
18156
|
__private__,
|
|
18260
18157
|
chainIdToNetwork,
|
|
18261
|
-
clearSecureChannel,
|
|
18262
18158
|
configureLogger,
|
|
18263
18159
|
connectorsForWallets,
|
|
18264
18160
|
createAbcSolanaAdapter,
|
|
@@ -18268,11 +18164,9 @@ export {
|
|
|
18268
18164
|
cssObjectFromTheme,
|
|
18269
18165
|
cssStringFromTheme,
|
|
18270
18166
|
darkTheme,
|
|
18271
|
-
decrypt,
|
|
18272
18167
|
decryptWithPin,
|
|
18273
18168
|
emailCheck,
|
|
18274
18169
|
embeddedTxToWagmi,
|
|
18275
|
-
encryptPlain,
|
|
18276
18170
|
encryptWithPin,
|
|
18277
18171
|
getBitcoinNetwork,
|
|
18278
18172
|
getDefaultConfig,
|
|
@@ -18283,8 +18177,6 @@ export {
|
|
|
18283
18177
|
getLoggerConfig,
|
|
18284
18178
|
getNetworkByChainId,
|
|
18285
18179
|
getNetworkByParam,
|
|
18286
|
-
getSecureChannel,
|
|
18287
|
-
getSecureChannelId,
|
|
18288
18180
|
getSolanaConfig,
|
|
18289
18181
|
getSolanaNetwork,
|
|
18290
18182
|
getSupportedChainIds,
|
|
@@ -18313,6 +18205,7 @@ export {
|
|
|
18313
18205
|
useChainModal,
|
|
18314
18206
|
useConnectModal,
|
|
18315
18207
|
useDeviceType,
|
|
18208
|
+
useEstimateFee,
|
|
18316
18209
|
useMultiChain,
|
|
18317
18210
|
useNonEvmConfirmation,
|
|
18318
18211
|
usePin,
|
|
@@ -7,7 +7,6 @@ import type { AbcApiResponse, AbcSnsLoginResponse } from '../wallets/walletConne
|
|
|
7
7
|
export interface RegisterUserParams {
|
|
8
8
|
username: string;
|
|
9
9
|
password: string;
|
|
10
|
-
secureChannel: string;
|
|
11
10
|
emailCode: string;
|
|
12
11
|
name: string;
|
|
13
12
|
refererUid?: string;
|
|
@@ -23,13 +22,11 @@ export interface RegisterSnsUserParams {
|
|
|
23
22
|
export interface ResetPasswordParams {
|
|
24
23
|
username: string;
|
|
25
24
|
password: string;
|
|
26
|
-
secureChannel: string;
|
|
27
25
|
emailCode: string;
|
|
28
26
|
}
|
|
29
27
|
export interface LoginParams {
|
|
30
28
|
username: string;
|
|
31
29
|
password: string;
|
|
32
|
-
secureChannel: string;
|
|
33
30
|
isIframe?: boolean;
|
|
34
31
|
}
|
|
35
32
|
/**
|