@getpara/react-sdk-lite 2.0.0-alpha.39 → 2.0.0-alpha.40

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 (102) hide show
  1. package/dist/css/modal.css +14 -1
  2. package/dist/modal/ParaModal.js +29 -6
  3. package/dist/modal/components/Account/Account.d.ts +1 -5
  4. package/dist/modal/components/Account/Account.js +53 -71
  5. package/dist/modal/components/Account/AccountHeader.d.ts +3 -0
  6. package/dist/modal/components/Account/AccountHeader.js +63 -0
  7. package/dist/modal/components/Account/AccountProfile.d.ts +4 -1
  8. package/dist/modal/components/Account/AccountProfile.js +108 -21
  9. package/dist/modal/components/AddFunds/AddFunds.js +11 -6
  10. package/dist/modal/components/AddFunds/AddFundsAsset.js +5 -32
  11. package/dist/modal/components/AddFunds/AddFundsDone.js +1 -1
  12. package/dist/modal/components/AddFunds/AddFundsProvider.js +1 -1
  13. package/dist/modal/components/AddFunds/AddFundsReceive.js +8 -53
  14. package/dist/modal/components/AuthMainStep/AuthMainStep.js +3 -5
  15. package/dist/modal/components/AuthMainStep/AuthMainStepContent.js +4 -3
  16. package/dist/modal/components/AwaitingPasswordStep/AwaitingPasswordStep.js +4 -1
  17. package/dist/modal/components/BiometricCreationStep/BiometricCreationStep.js +7 -5
  18. package/dist/modal/components/BiometricLoginStep/BiometricLoginStep.js +4 -4
  19. package/dist/modal/components/Body/AnimatedHeightWrapper.d.ts +1 -0
  20. package/dist/modal/components/Body/AnimatedHeightWrapper.js +2 -2
  21. package/dist/modal/components/Body/Body.d.ts +3 -1
  22. package/dist/modal/components/Body/Body.js +40 -47
  23. package/dist/modal/components/ChainSwitch/ChainSwitch.js +13 -21
  24. package/dist/modal/components/Controls/{Selects.d.ts → ChainSelect.d.ts} +0 -1
  25. package/dist/modal/components/Controls/ChainSelect.js +88 -0
  26. package/dist/modal/components/Controls/Controls.js +10 -20
  27. package/dist/modal/components/ExternalWalletStep/ExternalWalletStep.js +17 -12
  28. package/dist/modal/components/ExternalWalletVerificationStep/ExternalWalletVerificationStep.js +1 -1
  29. package/dist/modal/components/Footer/Footer.js +26 -57
  30. package/dist/modal/components/Header/Header.js +46 -8
  31. package/dist/modal/components/Header/hooks/useStepTitle.d.ts +4 -0
  32. package/dist/modal/components/Header/hooks/useStepTitle.js +48 -15
  33. package/dist/modal/components/IFrameStep/IFrameStep.js +22 -10
  34. package/dist/modal/components/LoginDoneStep/LoginDoneStep.js +16 -10
  35. package/dist/modal/components/ModalContent/ModalContent.d.ts +4 -3
  36. package/dist/modal/components/ModalContent/ModalContent.js +5 -1
  37. package/dist/modal/components/OAuth/FarcasterOAuthStep.js +1 -1
  38. package/dist/modal/components/OAuth/OAuth.js +1 -1
  39. package/dist/modal/components/RecoverySecretStep/RecoverySecretStep.js +2 -2
  40. package/dist/modal/components/Setup2FAStep/Setup2FAStep.js +3 -3
  41. package/dist/modal/components/TwoFactorDoneStep/TwoFactorDoneStep.js +1 -1
  42. package/dist/modal/components/VerificationCodeStep/VerificationCodeStep.js +1 -1
  43. package/dist/modal/components/Waiting/Waiting.js +1 -1
  44. package/dist/modal/components/WalletCard/WalletCard.d.ts +6 -3
  45. package/dist/modal/components/WalletCard/WalletCard.js +41 -15
  46. package/dist/modal/components/WalletSelect/WalletSelect.d.ts +11 -0
  47. package/dist/modal/components/WalletSelect/WalletSelect.js +153 -0
  48. package/dist/modal/components/common.d.ts +9 -4
  49. package/dist/modal/components/common.js +57 -13
  50. package/dist/modal/constants/constants.d.ts +7 -12
  51. package/dist/modal/constants/constants.js +7 -1
  52. package/dist/modal/constants/oAuthLogos.d.ts +2 -6
  53. package/dist/modal/constants/oAuthLogos.js +42 -40
  54. package/dist/modal/hooks/useGoBack.js +9 -0
  55. package/dist/modal/types/commonTypes.d.ts +8 -0
  56. package/dist/modal/utils/getWalletDisplayName.js +3 -6
  57. package/dist/modal/utils/icons.d.ts +5 -0
  58. package/dist/modal/utils/icons.js +17 -0
  59. package/dist/provider/ParaProvider.js +24 -129
  60. package/dist/provider/ParaProviderMin.d.ts +4 -0
  61. package/dist/provider/ParaProviderMin.js +140 -0
  62. package/dist/provider/components/CosmosWalletWrapper.d.ts +1 -1
  63. package/dist/provider/components/EvmWalletWrapper.d.ts +1 -1
  64. package/dist/provider/components/ExternalWalletWrapper.js +3 -36
  65. package/dist/provider/components/SolanaWalletWrapper.d.ts +1 -1
  66. package/dist/provider/hooks/mutations/useCreateWallet.d.ts +3 -3
  67. package/dist/provider/hooks/mutations/useCreateWallet.js +1 -1
  68. package/dist/provider/hooks/mutations/useCreateWalletPerType.d.ts +3 -3
  69. package/dist/provider/hooks/mutations/useCreateWalletPerType.js +1 -1
  70. package/dist/provider/hooks/mutations/useIssueJwt.d.ts +3 -3
  71. package/dist/provider/hooks/mutations/useIssueJwt.js +1 -1
  72. package/dist/provider/hooks/mutations/useResendVerificationCode.d.ts +6 -6
  73. package/dist/provider/hooks/mutations/useResendVerificationCode.js +1 -1
  74. package/dist/provider/hooks/mutations/useVerifyExternalWallet.d.ts +6 -0
  75. package/dist/provider/hooks/mutations/useVerifyFarcaster.d.ts +3 -3
  76. package/dist/provider/hooks/mutations/useVerifyFarcaster.js +1 -1
  77. package/dist/provider/hooks/mutations/useVerifyNewAccount.d.ts +6 -0
  78. package/dist/provider/hooks/mutations/useWaitForLogin.d.ts +3 -3
  79. package/dist/provider/hooks/mutations/useWaitForLogin.js +1 -1
  80. package/dist/provider/hooks/mutations/useWaitForSignup.d.ts +3 -3
  81. package/dist/provider/hooks/mutations/useWaitForSignup.js +1 -1
  82. package/dist/provider/hooks/mutations/useWaitForWalletCreation.d.ts +3 -3
  83. package/dist/provider/hooks/mutations/useWaitForWalletCreation.js +1 -1
  84. package/dist/provider/index.d.ts +1 -0
  85. package/dist/provider/index.js +3 -1
  86. package/dist/provider/providers/AuthProvider.js +23 -13
  87. package/dist/provider/providers/CosmosExternalWalletProvider.d.ts +1 -1
  88. package/dist/provider/providers/CosmosExternalWalletProvider.js +3 -0
  89. package/dist/provider/providers/EvmExternalWalletProvider.d.ts +1 -1
  90. package/dist/provider/providers/EvmExternalWalletProvider.js +3 -0
  91. package/dist/provider/providers/ExternalWalletProvider.js +1 -1
  92. package/dist/provider/providers/SolanaExternalWalletProvider.d.ts +1 -1
  93. package/dist/provider/providers/SolanaExternalWalletProvider.js +3 -0
  94. package/dist/provider/stores/slices/modal.js +16 -12
  95. package/dist/provider/utils/constants.d.ts +5 -0
  96. package/dist/provider/utils/constants.js +64 -1
  97. package/dist/public/PPMori-Regular.woff2 +0 -0
  98. package/dist/public/PPMori-SemiBold.woff2 +0 -0
  99. package/package.json +8 -8
  100. package/dist/modal/components/Controls/Selects.js +0 -173
  101. package/dist/provider/utils/externalWalletDefaults.d.ts +0 -6
  102. package/dist/provider/utils/externalWalletDefaults.js +0 -33
@@ -1,23 +1,18 @@
1
- import { Network, OnRampAsset, OnRampMethod, OnRampProvider } from '@getpara/core-sdk';
1
+ import { Network, OnRampAsset, OnRampMethod, OnRampProvider, TWalletType } from '@getpara/core-sdk';
2
2
  import { IconType } from '@getpara/react-components';
3
3
  import { Transition, Variants } from 'framer-motion';
4
+ import { DisplayMetadata } from '../types/commonTypes.js';
4
5
  export declare const PARA_CONNECT = "https://connect.getpara.com/";
5
6
  export declare const PARA_TERMS_AND_CONDITIONS = "https://getpara.com/terms";
6
- export interface OnRampProviderConfig {
7
- name: string;
7
+ export type OnRampProviderConfig = DisplayMetadata & {
8
8
  feeLower: number;
9
9
  feeUpper?: number;
10
10
  methods: OnRampMethod[];
11
- icon: IconType;
12
11
  backgroundColors: string[];
13
- }
12
+ };
14
13
  export declare const ON_RAMP_PROVIDERS: Record<OnRampProvider, OnRampProviderConfig>;
15
- type Networks = Record<Network, {
16
- name: string;
17
- icon: IconType;
18
- isCircular?: boolean;
19
- isDark?: boolean;
20
- }>;
14
+ type Networks = Record<Network, DisplayMetadata>;
15
+ export declare const WALLET_TYPES_METADATA: Record<TWalletType, DisplayMetadata>;
21
16
  export declare const NETWORKS: Networks;
22
17
  export declare const ON_RAMP_ASSETS: Record<OnRampAsset, {
23
18
  name: string;
@@ -30,7 +25,7 @@ export declare function getNetworkName(str: Network | string): string;
30
25
  export declare function getNetworkIcon(str: Network | string): IconType;
31
26
  export declare function getAssetCode(str: OnRampAsset | string): string;
32
27
  export declare function getAssetName(str: OnRampAsset | string): string;
33
- export declare function getAssetIcon(str: OnRampAsset | string): "key" | "phone" | "farcaster" | "telegram" | "discord" | "x" | "search" | "wallet" | "cosmos" | "solana" | "para" | "walletConnect" | "close" | "copy" | "safe" | "alertCircle" | "alertTriangle" | "alignVerticalCenter" | "angelListBrand" | "angelList" | "appleBrand" | "apple" | "arbitrumBrand" | "arrowCircleBrokenDownLeft" | "arrowCircleDownFilled" | "arrowNarrow" | "arrow" | "asterisk" | "backpack" | "backupKit" | "bank" | "baseBrand" | "beraBrand" | "brush" | "celoBrand" | "checkCircleFilled" | "checkCircle" | "checkSquare" | "check" | "chevronDown" | "chevronRight" | "chevronSelectorVertical" | "chevronUp" | "clock" | "clubhouseBrand" | "clubhouse" | "code" | "coinbase" | "copy07" | "cosmosCircle" | "cosmostation" | "creditCard02" | "creditCard" | "cube03" | "cubeOutline" | "cube" | "currencyDollar" | "decentBrand" | "decent" | "dell" | "discordBrand" | "dot" | "dots" | "downloadCloud" | "download" | "dribbbleBrand" | "dribbble" | "earth" | "edit02" | "emptyCircle" | "ethCircle" | "ethereum" | "eyeOff" | "eye" | "facebookBrand" | "facebook" | "farcasterBrand" | "figmaBrand" | "figma" | "file" | "folder" | "githubBrand" | "github" | "globe" | "glow" | "googleBrand" | "google" | "gridDots" | "haha" | "helpCircle" | "heroAlertCircle" | "heroCheckmarkCapsule" | "heroCheckmark" | "heroEmail" | "heroExternalConnection" | "heroLock" | "heroPasskey" | "heroPhone" | "heroPlusCircleCapsule" | "heroPlusCircle" | "heroWallet" | "home" | "hp" | "image" | "infoCircle" | "instagramBrand" | "instagram" | "keplr" | "laptop" | "leap" | "lenovo" | "lg" | "lightning01" | "lightning" | "linkExternal" | "linkedinBrand" | "linkedin" | "lockKeyholeCircle" | "logOut" | "mail" | "menu" | "metamask" | "monitor" | "moonpayBrand" | "moreLoginOptions" | "motorola" | "nobleBrand" | "okx" | "optimismBrand" | "paraBlackBg" | "paraBrand" | "paraIconBrand" | "paraIconQr" | "paraIcon" | "paraLogo" | "paraRingsDark" | "paraRings" | "passcode" | "phantom" | "pintrestBrand" | "pintrest" | "plusCircle" | "plus" | "polygonBrand" | "polygon" | "puzzlePiece" | "qrCode02" | "qrCode" | "rabby" | "rainbow" | "rampNetworkBrand" | "rampNetwork" | "redditBrand" | "reddit" | "refresh" | "samsung" | "send" | "settings" | "share" | "shield" | "signalBrand" | "signal" | "sliders" | "snapchatBrand" | "snapchat" | "solanaCircle" | "solflare" | "spacingHeight" | "star04Filled" | "star05" | "stars01Filled" | "stars02" | "stars" | "stopSquare" | "stripeBrand" | "telegramBrand" | "tetherBrand" | "tikTokBrand" | "tikTok" | "trash" | "tumblrBrand" | "tumblr" | "twitterBrand" | "twitter" | "usdcBrand" | "userCircle" | "userPlus" | "user" | "valora" | "youtubeBrand" | "youtube" | "zerion" | "AD" | "AE" | "AF" | "AG" | "AI" | "AL" | "AM" | "AO" | "AR" | "AS" | "AT" | "AU" | "AW" | "AX" | "AZ" | "BA" | "BB" | "BD" | "BE" | "BF" | "BG" | "BH" | "BI" | "BJ" | "BL" | "BM" | "BN" | "BO" | "BQ" | "BQ2" | "BQ3" | "BR" | "BS" | "BT" | "BW" | "BY" | "BZ" | "CA" | "CC" | "CD" | "CD2" | "CF" | "CH" | "CK" | "CL" | "CM" | "CN" | "CO" | "CR" | "CU" | "CW" | "CX" | "CY" | "CZ" | "DE" | "DJ" | "DK" | "DM" | "DO" | "DS" | "DZ" | "EC" | "EE" | "EG" | "EH" | "ER" | "ES" | "ET" | "FI" | "FJ" | "FK" | "FM" | "FO" | "FR" | "GA" | "GB2" | "GB" | "GD" | "GE" | "GG" | "GH" | "GI" | "GL" | "GM" | "GN" | "GQ" | "GR" | "GT" | "GU" | "GW" | "GY" | "HK" | "HN" | "HR" | "HT" | "HU" | "ID" | "IE" | "IL" | "IM" | "IN" | "IO" | "IQ" | "IR" | "IS" | "IT" | "JE" | "JM" | "JO" | "JP" | "KE" | "KG" | "KH" | "KI" | "KM" | "KN" | "KP" | "KR" | "KW" | "KY" | "KZ" | "LA" | "LB" | "LC" | "LI" | "LK" | "LR" | "LS" | "LT" | "LU" | "LV" | "LY" | "MA" | "MC" | "MD" | "ME" | "MG" | "MH" | "MK" | "ML" | "MM" | "MN" | "MO" | "MP" | "MQ" | "MR" | "MS" | "MT" | "MU" | "MV" | "MW" | "MX" | "MY" | "MZ" | "NA" | "NE" | "NF" | "NG" | "NI" | "NL" | "NO" | "NP" | "NR" | "NU" | "NZ" | "OM" | "PA" | "PE" | "PF" | "PG" | "PH" | "PK" | "PL" | "PN" | "PR" | "PS" | "PT" | "PW" | "PY" | "QA" | "RO" | "RS" | "RU" | "RW" | "SA" | "SB" | "SC" | "SE" | "SG" | "SI" | "SK" | "SL" | "SM" | "SN" | "SO" | "SR" | "SS" | "ST" | "SV" | "SX" | "SY" | "SZ" | "TC" | "TD" | "TG" | "TH" | "TJ" | "TK" | "TL" | "TM" | "TN" | "TO" | "TR" | "TT" | "TV" | "TW" | "TZ" | "UA" | "UG" | "US" | "UY" | "UZ" | "VC" | "VE" | "VG" | "VI" | "VN" | "VU" | "WS" | "YE" | "ZA" | "ZM" | "ZW";
28
+ export declare function getAssetIcon(str: OnRampAsset | string): "key" | "phone" | "farcaster" | "telegram" | "discord" | "x" | "search" | "wallet" | "cosmos" | "solana" | "para" | "walletConnect" | "close" | "copy" | "safe" | "alertCircle" | "alertTriangle" | "alignVerticalCenter" | "angelListBrand" | "angelList" | "appleBrand" | "apple" | "arbitrumBrand" | "arrowCircleBrokenDownLeft" | "arrowCircleDownFilled" | "arrowCircleDown" | "arrowNarrow" | "arrow" | "asterisk" | "backpack" | "backupKit" | "bank" | "baseBrand" | "beraBrand" | "brush" | "celoBrand" | "checkCircleFilled" | "checkCircle" | "checkSquare" | "check" | "chevronDown" | "chevronRight" | "chevronSelectorVertical" | "chevronUp" | "clock" | "clubhouseBrand" | "clubhouse" | "code" | "coinbase" | "copy07" | "cosmosCircle" | "cosmostation" | "creditCard02" | "creditCard" | "cube03" | "cubeOutline" | "cube" | "currencyDollar" | "decentBrand" | "decent" | "dell" | "discordBrand" | "dot" | "dotsSquare" | "dots" | "downloadCloud" | "download" | "dribbbleBrand" | "dribbble" | "earth" | "edit02" | "emptyCircle" | "ethCircle" | "ethereum" | "eyeOff" | "eye" | "facebookBrand" | "facebook" | "farcasterBrand" | "figmaBrand" | "figma" | "file" | "folder" | "githubBrand" | "github" | "globe" | "glow" | "googleBrand" | "google" | "gridDots" | "haha" | "helpCircle" | "heroAlertCircle" | "heroCheckmarkCapsule" | "heroCheckmark" | "heroEmail" | "heroExternalConnection" | "heroLock" | "heroPasskey" | "heroPhone" | "heroPlusCircleCapsule" | "heroPlusCircle" | "heroWallet" | "home" | "hp" | "image" | "infoCircle" | "instagramBrand" | "instagram" | "keplr" | "laptop" | "leap" | "lenovo" | "lg" | "lightning01" | "lightning" | "linkExternal" | "linkedinBrand" | "linkedin" | "lockKeyholeCircle" | "logOut" | "mail" | "menu" | "metamask" | "monitor" | "moonpayBrand" | "moreLoginOptions" | "motorola" | "nobleBrand" | "okx" | "optimismBrand" | "paraArrow" | "paraBlackBg" | "paraBrand" | "paraIconBrand" | "paraIconQr" | "paraIcon" | "paraLogo" | "paraRingsDark" | "paraRings" | "passcode" | "phantom" | "pintrestBrand" | "pintrest" | "plusCircle" | "plus" | "polygonBrand" | "polygon" | "puzzlePiece" | "qrCode02" | "qrCode" | "rabby" | "rainbow" | "rampNetworkBrand" | "rampNetwork" | "redditBrand" | "reddit" | "refresh" | "samsung" | "send" | "settings" | "share" | "shield" | "signalBrand" | "signal" | "sliders" | "snapchatBrand" | "snapchat" | "solanaCircle" | "solflare" | "spacingHeight" | "star04Filled" | "star05" | "stars01Filled" | "stars02" | "stars" | "stopSquare" | "stripeBrand" | "telegramBrand" | "tetherBrand" | "tikTokBrand" | "tikTok" | "trash" | "tumblrBrand" | "tumblr" | "twitterBrand" | "twitter" | "usdcBrand" | "user01" | "userCircle" | "userPlus" | "user" | "valora" | "wallet02" | "youtubeBrand" | "youtube" | "zerion" | "AD" | "AE" | "AF" | "AG" | "AI" | "AL" | "AM" | "AO" | "AR" | "AS" | "AT" | "AU" | "AW" | "AX" | "AZ" | "BA" | "BB" | "BD" | "BE" | "BF" | "BG" | "BH" | "BI" | "BJ" | "BL" | "BM" | "BN" | "BO" | "BQ" | "BQ2" | "BQ3" | "BR" | "BS" | "BT" | "BW" | "BY" | "BZ" | "CA" | "CC" | "CD" | "CD2" | "CF" | "CH" | "CK" | "CL" | "CM" | "CN" | "CO" | "CR" | "CU" | "CW" | "CX" | "CY" | "CZ" | "DE" | "DJ" | "DK" | "DM" | "DO" | "DS" | "DZ" | "EC" | "EE" | "EG" | "EH" | "ER" | "ES" | "ET" | "FI" | "FJ" | "FK" | "FM" | "FO" | "FR" | "GA" | "GB2" | "GB" | "GD" | "GE" | "GG" | "GH" | "GI" | "GL" | "GM" | "GN" | "GQ" | "GR" | "GT" | "GU" | "GW" | "GY" | "HK" | "HN" | "HR" | "HT" | "HU" | "ID" | "IE" | "IL" | "IM" | "IN" | "IO" | "IQ" | "IR" | "IS" | "IT" | "JE" | "JM" | "JO" | "JP" | "KE" | "KG" | "KH" | "KI" | "KM" | "KN" | "KP" | "KR" | "KW" | "KY" | "KZ" | "LA" | "LB" | "LC" | "LI" | "LK" | "LR" | "LS" | "LT" | "LU" | "LV" | "LY" | "MA" | "MC" | "MD" | "ME" | "MG" | "MH" | "MK" | "ML" | "MM" | "MN" | "MO" | "MP" | "MQ" | "MR" | "MS" | "MT" | "MU" | "MV" | "MW" | "MX" | "MY" | "MZ" | "NA" | "NE" | "NF" | "NG" | "NI" | "NL" | "NO" | "NP" | "NR" | "NU" | "NZ" | "OM" | "PA" | "PE" | "PF" | "PG" | "PH" | "PK" | "PL" | "PN" | "PR" | "PS" | "PT" | "PW" | "PY" | "QA" | "RO" | "RS" | "RU" | "RW" | "SA" | "SB" | "SC" | "SE" | "SG" | "SI" | "SK" | "SL" | "SM" | "SN" | "SO" | "SR" | "SS" | "ST" | "SV" | "SX" | "SY" | "SZ" | "TC" | "TD" | "TG" | "TH" | "TJ" | "TK" | "TL" | "TM" | "TN" | "TO" | "TR" | "TT" | "TV" | "TW" | "TZ" | "UA" | "UG" | "US" | "UY" | "UZ" | "VC" | "VE" | "VG" | "VI" | "VN" | "VU" | "WS" | "YE" | "ZA" | "ZM" | "ZW";
34
29
  export declare const MOBILE_SIZE = 480;
35
30
  export declare const NETWORK_NOT_SUPPORTED_ERROR = "network not supported";
36
31
  export declare const EMAIL_REGEX: RegExp;
@@ -42,6 +42,11 @@ const ICON_TYPES = {
42
42
  celoBrand: { isCircular: true },
43
43
  tetherBrand: { isCircular: true }
44
44
  };
45
+ const WALLET_TYPES_METADATA = {
46
+ EVM: { name: "EVM", icon: "ethereum", isDark: true },
47
+ SOLANA: { name: "Solana", icon: "solana" },
48
+ COSMOS: { name: "Cosmos", icon: "cosmos", isCircular: true, isDark: true }
49
+ };
45
50
  const NETWORKS = Object.entries({
46
51
  [Network.ETHEREUM]: { name: "Ethereum", icon: "ethereum" },
47
52
  [Network.SEPOLIA]: { name: "Sepolia", icon: "ethereum" },
@@ -121,7 +126,7 @@ const BODY_MOTION_VARIANTS = {
121
126
  const BODY_TRANSITION = {
122
127
  duration: 0.2
123
128
  };
124
- const SDK_VERSION = "2.0.0-alpha.39";
129
+ const SDK_VERSION = "2.0.0-alpha.40";
125
130
  export {
126
131
  BODY_MOTION_VARIANTS,
127
132
  BODY_TRANSITION,
@@ -134,6 +139,7 @@ export {
134
139
  PARA_CONNECT,
135
140
  PARA_TERMS_AND_CONDITIONS,
136
141
  SDK_VERSION,
142
+ WALLET_TYPES_METADATA,
137
143
  getAssetCode,
138
144
  getAssetIcon,
139
145
  getAssetName,
@@ -1,12 +1,8 @@
1
1
  import { IconType } from '@getpara/react-components';
2
2
  import { TLinkedAccountType } from '@getpara/web-sdk';
3
+ import { DisplayMetadata } from '../types/commonTypes.js';
3
4
  export declare const ACCOUNT_TYPES: {
4
- [key in TLinkedAccountType | string]: {
5
- logo: IconType;
6
- logoBranded?: IconType;
7
- name: string;
8
- isDark?: boolean;
9
- inline?: string;
5
+ [key in TLinkedAccountType | string]: DisplayMetadata & {
10
6
  isExternalWallet?: boolean;
11
7
  };
12
8
  };
@@ -2,143 +2,145 @@
2
2
  import "../../chunk-MMUBH76A.js";
3
3
  const ACCOUNT_TYPES = {
4
4
  "EMAIL": {
5
- logo: "mail",
5
+ icon: "mail",
6
6
  name: "Email",
7
- inline: "email address",
7
+ inlineText: "email address",
8
8
  isDark: true
9
9
  },
10
10
  "PHONE": {
11
- logo: "phone",
11
+ icon: "phone",
12
12
  name: "Phone",
13
- inline: "phone number",
13
+ inlineText: "phone number",
14
14
  isDark: true
15
15
  },
16
16
  "EXTERNAL_WALLET": {
17
- logo: "wallet",
17
+ icon: "wallet",
18
18
  name: "External Wallet",
19
- inline: "external wallet",
19
+ inlineText: "external wallet",
20
20
  isDark: true
21
21
  },
22
22
  "GOOGLE": {
23
- logo: "google",
24
- logoBranded: "googleBrand",
23
+ icon: "google",
24
+ iconBranded: "googleBrand",
25
25
  name: "Google"
26
26
  },
27
27
  "TWITTER": {
28
- logo: "twitter",
29
- logoBranded: "twitterBrand",
28
+ icon: "twitter",
29
+ // Not using branded here to ensure the icon looks correct in dark mode
30
+ iconBranded: "twitter",
30
31
  name: "X / Twitter",
31
- inline: "X account",
32
+ inlineText: "X account",
32
33
  isDark: true
33
34
  },
34
35
  "APPLE": {
35
- logo: "apple",
36
- logoBranded: "appleBrand",
36
+ icon: "apple",
37
+ // Not using branded here to ensure the icon looks correct in dark mode
38
+ iconBranded: "apple",
37
39
  name: "Apple",
38
40
  isDark: true
39
41
  },
40
42
  "DISCORD": {
41
- logo: "discord",
42
- logoBranded: "discordBrand",
43
+ icon: "discord",
44
+ iconBranded: "discordBrand",
43
45
  name: "Discord"
44
46
  },
45
47
  "FACEBOOK": {
46
- logo: "facebook",
47
- logoBranded: "facebookBrand",
48
+ icon: "facebook",
49
+ iconBranded: "facebookBrand",
48
50
  name: "Facebook"
49
51
  },
50
52
  "FARCASTER": {
51
- logo: "farcaster",
52
- logoBranded: "farcasterBrand",
53
+ icon: "farcaster",
54
+ iconBranded: "farcasterBrand",
53
55
  name: "Farcaster"
54
56
  },
55
57
  "TELEGRAM": {
56
- logo: "telegram",
57
- logoBranded: "telegramBrand",
58
+ icon: "telegram",
59
+ iconBranded: "telegramBrand",
58
60
  name: "Telegram"
59
61
  },
60
62
  "MetaMask": {
61
- logo: "metamask",
63
+ icon: "metamask",
62
64
  name: "MetaMask",
63
65
  isExternalWallet: true
64
66
  },
65
67
  "Rainbow": {
66
- logo: "rainbow",
68
+ icon: "rainbow",
67
69
  name: "Rainbow",
68
70
  isExternalWallet: true
69
71
  },
70
72
  "Coinbase Wallet": {
71
- logo: "coinbase",
73
+ icon: "coinbase",
72
74
  name: "Coinbase Wallet",
73
75
  isExternalWallet: true
74
76
  },
75
77
  "WalletConnect": {
76
- logo: "walletConnect",
78
+ icon: "walletConnect",
77
79
  name: "WalletConnect",
78
80
  isExternalWallet: true
79
81
  },
80
82
  "Zerion": {
81
- logo: "zerion",
83
+ icon: "zerion",
82
84
  name: "Zerion",
83
85
  isExternalWallet: true
84
86
  },
85
87
  "Safe": {
86
- logo: "safe",
88
+ icon: "safe",
87
89
  name: "Safe",
88
90
  isExternalWallet: true
89
91
  },
90
92
  "Rabby": {
91
- logo: "rabby",
93
+ icon: "rabby",
92
94
  name: "Rabby",
93
95
  isExternalWallet: true
94
96
  },
95
97
  "OKX Wallet": {
96
- logo: "okx",
98
+ icon: "okx",
97
99
  name: "OKX Wallet",
98
100
  isExternalWallet: true
99
101
  },
100
102
  "Phantom": {
101
- logo: "phantom",
103
+ icon: "phantom",
102
104
  name: "Phantom",
103
105
  isExternalWallet: true
104
106
  },
105
107
  "Glow": {
106
- logo: "glow",
108
+ icon: "glow",
107
109
  name: "Glow",
108
110
  isExternalWallet: true
109
111
  },
110
112
  "Backpack": {
111
- logo: "backpack",
113
+ icon: "backpack",
112
114
  name: "Backpack",
113
115
  isExternalWallet: true
114
116
  },
115
117
  "Keplr": {
116
- logo: "keplr",
118
+ icon: "keplr",
117
119
  name: "Keplr",
118
120
  isExternalWallet: true
119
121
  },
120
122
  "Leap": {
121
- logo: "leap",
123
+ icon: "leap",
122
124
  name: "Leap",
123
125
  isExternalWallet: true
124
126
  },
125
127
  "HaHa": {
126
- logo: "haha",
128
+ icon: "haha",
127
129
  name: "HaHa",
128
130
  isExternalWallet: true
129
131
  },
130
132
  "Cosmostation": {
131
- logo: "cosmostation",
133
+ icon: "cosmostation",
132
134
  name: "Cosmostation",
133
135
  isExternalWallet: true
134
136
  },
135
137
  "Solflare": {
136
- logo: "solflare",
138
+ icon: "solflare",
137
139
  name: "Solflare",
138
140
  isExternalWallet: true
139
141
  },
140
142
  "Valora": {
141
- logo: "valora",
143
+ icon: "valora",
142
144
  name: "Valora",
143
145
  isExternalWallet: true
144
146
  }
@@ -146,10 +148,10 @@ const ACCOUNT_TYPES = {
146
148
  function getAccountTypeName(type, { inline = false } = {}) {
147
149
  var _a;
148
150
  const data = type ? ACCOUNT_TYPES[type] : void 0;
149
- return data ? inline ? (_a = data.inline) != null ? _a : `${data.name} ${data.isExternalWallet ? "wallet" : "account"}` : data.name : void 0;
151
+ return data ? inline ? (_a = data.inlineText) != null ? _a : `${data.name} ${data.isExternalWallet ? "wallet" : "account"}` : data.name : void 0;
150
152
  }
151
153
  function getAccountTypeLogo(type) {
152
- return type ? ACCOUNT_TYPES[type].logoBranded || ACCOUNT_TYPES[type].logo : void 0;
154
+ return type ? ACCOUNT_TYPES[type].iconBranded || ACCOUNT_TYPES[type].icon : void 0;
153
155
  }
154
156
  export {
155
157
  ACCOUNT_TYPES,
@@ -13,6 +13,9 @@ const useGoBack = () => {
13
13
  const resetState = useModalStore((state) => state.resetState);
14
14
  const { setChainIdSwitchingTo, disconnectExternalWallet } = useExternalWallets();
15
15
  const para = useInternalClient();
16
+ const iFrameUrl = useModalStore((state) => state.iFrameUrl);
17
+ const setIFrameUrl = useModalStore((state) => state.setIFrameUrl);
18
+ const setIsIFrameReady = useModalStore((state) => state.setIsIFrameReady);
16
19
  const goBack = () => {
17
20
  if (accountAddFundTab && currentStep === ModalStep.ADD_FUNDS_AWAITING) {
18
21
  setStep(getAddFundsStep(accountAddFundTab));
@@ -30,6 +33,12 @@ const useGoBack = () => {
30
33
  }
31
34
  break;
32
35
  }
36
+ case ModalStep.PASSWORD_CREATION: {
37
+ const urlWithTimestamp = iFrameUrl ? `${iFrameUrl}${iFrameUrl.includes("?") ? "&" : "?"}_t=${Date.now()}` : "";
38
+ setIFrameUrl(urlWithTimestamp);
39
+ setIsIFrameReady(false);
40
+ break;
41
+ }
33
42
  case ModalStep.CHAIN_SWITCH: {
34
43
  setChainIdSwitchingTo();
35
44
  break;
@@ -4,3 +4,11 @@ export type Tab<T> = {
4
4
  value: T;
5
5
  icon: IconType;
6
6
  };
7
+ export type DisplayMetadata = {
8
+ name: string;
9
+ inlineText?: string;
10
+ icon: IconType;
11
+ iconBranded?: IconType;
12
+ isDark?: boolean;
13
+ isCircular?: boolean;
14
+ };
@@ -1,10 +1,6 @@
1
1
  "use client";
2
2
  import "../../chunk-MMUBH76A.js";
3
- const WALLET_TYPES = {
4
- EVM: "EVM",
5
- SOLANA: "Solana",
6
- COSMOS: "Cosmos"
7
- };
3
+ import { WALLET_TYPES_METADATA } from "../constants/constants.js";
8
4
  function getWalletDisplayName(para, {
9
5
  type,
10
6
  isExternal,
@@ -12,8 +8,9 @@ function getWalletDisplayName(para, {
12
8
  isMenu = false,
13
9
  hideWallets = false
14
10
  }) {
11
+ var _a, _b;
15
12
  if (para.isMultiWallet) {
16
- return name != null ? name : `${isExternal ? "External " : ""}${type ? WALLET_TYPES[type] : ""}${!hideWallets && (isMenu || isExternal) ? " Wallet" : ""}`;
13
+ return name != null ? name : `${isExternal ? "External " : ""}${type ? (_b = (_a = WALLET_TYPES_METADATA[type]) == null ? void 0 : _a.name) != null ? _b : "" : ""}${!hideWallets && (isMenu || isExternal) ? " Wallet" : ""}`;
17
14
  }
18
15
  return hideWallets ? "My Account" : name || "My Wallet";
19
16
  }
@@ -0,0 +1,5 @@
1
+ import { TExternalWallet } from '@getpara/web-sdk';
2
+ import { IconType } from '@getpara/react-components';
3
+ export declare function getExternalWalletIcon(internalId: TExternalWallet | string | undefined, { branded }?: {
4
+ branded?: boolean;
5
+ }): IconType | undefined;
@@ -0,0 +1,17 @@
1
+ "use client";
2
+ import "../../chunk-MMUBH76A.js";
3
+ import { ACCOUNT_TYPES } from "../constants/oAuthLogos.js";
4
+ function getExternalWalletIcon(internalId, { branded = false } = {}) {
5
+ var _a;
6
+ if (!internalId) {
7
+ return "wallet02";
8
+ }
9
+ const data = (_a = ACCOUNT_TYPES) == null ? void 0 : _a[internalId];
10
+ if (!data) {
11
+ return "wallet02";
12
+ }
13
+ return branded ? data.iconBranded || data.icon : data.icon;
14
+ }
15
+ export {
16
+ getExternalWalletIcon
17
+ };
@@ -1,138 +1,33 @@
1
1
  "use client";
2
2
  import {
3
+ __objRest,
3
4
  __spreadProps,
4
5
  __spreadValues
5
6
  } from "../chunk-MMUBH76A.js";
6
- import { jsx, jsxs } from "react/jsx-runtime";
7
- import { forwardRef, useEffect, useState } from "react";
8
- import { useStore } from "./stores/useStore.js";
9
- import { useAutoSessionKeepAlive } from "./hooks/utils/useAutoSessionKeepAlive.js";
10
- import { useEventListeners } from "./hooks/utils/useEventListeners.js";
11
- import { ExternalWalletWrapper } from "./components/ExternalWalletWrapper.js";
12
- import { ParaModal } from "../modal/ParaModal.js";
13
- import { isConfigType, isParaWeb } from "./utils/paraConfigTypeGuards.js";
14
- import ParaWeb from "@getpara/web-sdk";
15
- import { EXTERNAL_WALLET_TYPES } from "@getpara/web-sdk";
16
- import { AuthProvider } from "./providers/AuthProvider.js";
17
- import { AccountLinkProvider } from "./providers/AccountLinkProvider.js";
18
- const ParaProvider = forwardRef(({ children, paraClientConfig, callbacks, config, externalWalletConfig, paraModalConfig }, ref) => {
19
- useEventListeners(callbacks);
20
- useAutoSessionKeepAlive({ disabled: config.disableAutoSessionKeepAlive });
21
- const setClient = useStore((state) => state.setClient);
22
- const client = useStore((state) => state.client);
23
- const setExternalWallets = useStore((state) => state.setExternalWallets);
24
- const externalWallets = useStore((state) => state.externalWallets);
25
- const setExternalWalletsWithFullAuth = useStore((state) => state.setExternalWalletsWithFullAuth);
26
- const externalWalletsWithFullAuth = useStore((state) => state.externalWalletsWithFullAuth);
27
- const setIncludeWalletVerification = useStore((state) => state.setIncludeWalletVerification);
28
- const includeWalletVerification = useStore((state) => state.includeWalletVerification);
29
- const setConnectionOnly = useStore((state) => state.setConnectionOnly);
30
- const connectionOnly = useStore((state) => state.connectionOnly);
31
- const setModalConfig = useStore((state) => state.setModalConfig);
32
- const modalConfig = useStore((state) => state.modalConfig);
33
- const setAppName = useStore((state) => state.setAppName);
34
- const appName = useStore((state) => state.appName);
35
- const setFarcasterMiniAppConfig = useStore((state) => state.setFarcasterMiniAppConfig);
36
- const farcasterMiniAppConfig = useStore((state) => state.farcasterMiniAppConfig);
37
- const rpcUrl = useStore((state) => state.rpcUrl);
38
- const setRpcUrl = useStore((state) => state.setRpcUrl);
39
- const setProviderProps = useStore((state) => state.setProviderProps);
40
- const [isClientReady, setIsClientReady] = useState(client == null ? void 0 : client.isReady);
41
- useEffect(() => {
42
- setProviderProps(__spreadProps(__spreadValues(__spreadValues(__spreadValues({}, config), externalWalletConfig), paraModalConfig), {
43
- // Redacting walletConnect to avoid exposing project id
44
- walletConnect: void 0
45
- }));
46
- }, [config, externalWalletConfig, paraModalConfig]);
47
- useEffect(() => {
48
- if (rpcUrl !== config.rpcUrl) setRpcUrl(config.rpcUrl);
49
- }, [config.rpcUrl]);
50
- useEffect(() => {
51
- if (appName !== config.appName) setAppName(config.appName);
52
- }, [config.appName]);
53
- useEffect(() => {
54
- if (farcasterMiniAppConfig !== config.farcasterMiniAppConfig) {
55
- setFarcasterMiniAppConfig(config.farcasterMiniAppConfig);
56
- }
57
- }, [config.farcasterMiniAppConfig]);
58
- useEffect(() => {
59
- if (modalConfig !== paraModalConfig) setModalConfig(paraModalConfig);
60
- }, [paraModalConfig]);
61
- useEffect(() => {
62
- var _a;
63
- if (connectionOnly !== (externalWalletConfig == null ? void 0 : externalWalletConfig.connectionOnly)) {
64
- setConnectionOnly((_a = externalWalletConfig == null ? void 0 : externalWalletConfig.connectionOnly) != null ? _a : false);
65
- }
66
- }, [externalWalletConfig == null ? void 0 : externalWalletConfig.connectionOnly]);
67
- useEffect(() => {
68
- var _a, _b;
69
- if (includeWalletVerification !== (externalWalletConfig == null ? void 0 : externalWalletConfig.includeWalletVerification)) {
70
- if ((externalWalletConfig == null ? void 0 : externalWalletConfig.connectionOnly) || (isConfigType(paraClientConfig) ? (_a = paraClientConfig.opts) == null ? void 0 : _a.externalWalletConnectionOnly : paraClientConfig.externalWalletConnectionOnly)) {
71
- console.warn("includeWalletVerification has no effect when using connection only external wallets");
72
- setIncludeWalletVerification(false);
73
- } else {
74
- setIncludeWalletVerification((_b = externalWalletConfig == null ? void 0 : externalWalletConfig.includeWalletVerification) != null ? _b : false);
75
- }
76
- }
77
- }, [externalWalletConfig == null ? void 0 : externalWalletConfig.includeWalletVerification]);
78
- useEffect(() => {
79
- var _a;
80
- if (externalWallets !== (externalWalletConfig == null ? void 0 : externalWalletConfig.wallets)) {
81
- setExternalWallets((_a = externalWalletConfig == null ? void 0 : externalWalletConfig.wallets) != null ? _a : [...EXTERNAL_WALLET_TYPES]);
82
- }
83
- }, [externalWalletConfig == null ? void 0 : externalWalletConfig.wallets]);
84
- useEffect(() => {
85
- var _a, _b;
86
- if (externalWalletsWithFullAuth !== (externalWalletConfig == null ? void 0 : externalWalletConfig.createLinkedEmbeddedForExternalWallets)) {
87
- if ((externalWalletConfig == null ? void 0 : externalWalletConfig.connectionOnly) || (isConfigType(paraClientConfig) ? (_a = paraClientConfig.opts) == null ? void 0 : _a.externalWalletConnectionOnly : paraClientConfig.externalWalletConnectionOnly)) {
88
- console.warn("createLinkedEmbeddedForExternalWallets has no effect when using connection only external wallets");
89
- setExternalWalletsWithFullAuth([]);
90
- } else {
91
- setExternalWalletsWithFullAuth(
92
- (externalWalletConfig == null ? void 0 : externalWalletConfig.createLinkedEmbeddedForExternalWallets) === "ALL" ? [...EXTERNAL_WALLET_TYPES] : (_b = externalWalletConfig == null ? void 0 : externalWalletConfig.createLinkedEmbeddedForExternalWallets) != null ? _b : []
93
- );
94
- }
95
- }
96
- }, [externalWalletConfig == null ? void 0 : externalWalletConfig.createLinkedEmbeddedForExternalWallets]);
97
- useEffect(() => {
98
- if (!isConfigType(paraClientConfig) && !isParaWeb(paraClientConfig)) {
99
- throw new Error("Invalid Para config");
100
- }
101
- const newClient = isConfigType(paraClientConfig) ? new ParaWeb(paraClientConfig.env, paraClientConfig.apiKey, paraClientConfig.opts) : paraClientConfig;
102
- if (newClient.isReady) {
103
- setIsClientReady(true);
104
- } else {
105
- setIsClientReady(false);
106
- }
107
- setClient(newClient);
108
- }, [paraClientConfig]);
109
- useEffect(() => {
110
- if (client && !client.isReady) {
111
- client.ready().then(() => {
112
- setIsClientReady(true);
113
- }).catch((err) => {
114
- setIsClientReady(false);
115
- console.error("Error initializing Para client:", err);
116
- });
117
- }
118
- }, [client]);
119
- if (!client || !isClientReady) {
120
- return null;
121
- }
7
+ import { jsx } from "react/jsx-runtime";
8
+ import { forwardRef } from "react";
9
+ import { ParaProviderMin } from "./ParaProviderMin.js";
10
+ import { COSMOS_CONFIG_DEFAULT, EVM_CONFIG_DEFAULT, SOLANA_CONFIG_DEFAULT } from "./utils/constants.js";
11
+ const ParaProvider = forwardRef((_a, ref) => {
12
+ var _b = _a, { externalWalletConfig } = _b, config = __objRest(_b, ["externalWalletConfig"]);
13
+ var _a2, _b2, _c;
122
14
  return /* @__PURE__ */ jsx(
123
- AuthProvider,
124
- {
125
- is2faEnabled: paraModalConfig == null ? void 0 : paraModalConfig.twoFactorAuthEnabled,
126
- isRecoverySecretStepEnabled: paraModalConfig == null ? void 0 : paraModalConfig.recoverySecretStepEnabled,
127
- overrides: {
128
- login: paraModalConfig == null ? void 0 : paraModalConfig.loginTransitionOverride,
129
- createWallets: paraModalConfig == null ? void 0 : paraModalConfig.createWalletOverride
130
- },
131
- children: /* @__PURE__ */ jsx(ExternalWalletWrapper, { config: externalWalletConfig, children: /* @__PURE__ */ jsxs(AccountLinkProvider, { children: [
132
- children,
133
- !config.disableEmbeddedModal && client.isReady && /* @__PURE__ */ jsx(ParaModal, { ref })
134
- ] }) })
135
- }
15
+ ParaProviderMin,
16
+ __spreadProps(__spreadValues({
17
+ ref
18
+ }, config), {
19
+ externalWalletConfig: __spreadProps(__spreadValues({}, externalWalletConfig), {
20
+ evmConnector: __spreadProps(__spreadValues({}, externalWalletConfig == null ? void 0 : externalWalletConfig.evmConnector), {
21
+ config: ((_a2 = externalWalletConfig == null ? void 0 : externalWalletConfig.evmConnector) == null ? void 0 : _a2.config) || EVM_CONFIG_DEFAULT
22
+ }),
23
+ cosmosConnector: __spreadProps(__spreadValues({}, externalWalletConfig == null ? void 0 : externalWalletConfig.cosmosConnector), {
24
+ config: ((_b2 = externalWalletConfig == null ? void 0 : externalWalletConfig.cosmosConnector) == null ? void 0 : _b2.config) || COSMOS_CONFIG_DEFAULT
25
+ }),
26
+ solanaConnector: __spreadProps(__spreadValues({}, externalWalletConfig == null ? void 0 : externalWalletConfig.solanaConnector), {
27
+ config: ((_c = externalWalletConfig == null ? void 0 : externalWalletConfig.solanaConnector) == null ? void 0 : _c.config) || SOLANA_CONFIG_DEFAULT
28
+ })
29
+ })
30
+ })
136
31
  );
137
32
  });
138
33
  export {
@@ -0,0 +1,4 @@
1
+ import { ParaProviderProps } from './types/provider.js';
2
+ import { Chain, Transport } from 'viem';
3
+ import { ParaModalHandle } from '../modal/index.js';
4
+ export declare const ParaProviderMin: import("react").ForwardRefExoticComponent<ParaProviderProps<readonly [Chain, ...Chain[]], Record<number, Transport>> & import("react").RefAttributes<ParaModalHandle>>;