@pushchain/ui-kit 5.0.0 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/package.json +3 -3
  3. package/src/lib/components/LoginModal/index.js +19 -18
  4. package/src/lib/components/LoginModal/index.js.map +1 -1
  5. package/src/lib/components/LoginModal/useSmartModalPosition.js +1 -2
  6. package/src/lib/components/LoginModal/useSmartModalPosition.js.map +1 -1
  7. package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.js +4 -1
  8. package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.js.map +1 -1
  9. package/src/lib/components/PushUniversalAccountButton/index.js +9 -8
  10. package/src/lib/components/PushUniversalAccountButton/index.js.map +1 -1
  11. package/src/lib/components/PushWalletToast/index.js +4 -4
  12. package/src/lib/components/PushWalletToast/index.js.map +1 -1
  13. package/src/lib/components/common/Button.js +1 -4
  14. package/src/lib/components/common/Button.js.map +1 -1
  15. package/src/lib/constants/index.js +5 -0
  16. package/src/lib/constants/index.js.map +1 -1
  17. package/src/lib/context/WalletContext.js +172 -55
  18. package/src/lib/context/WalletContext.js.map +1 -1
  19. package/src/lib/helpers/txnAuthGuard.js +25 -19
  20. package/src/lib/helpers/txnAuthGuard.js.map +1 -1
  21. package/src/lib/hooks/useAppMetadata.js +1 -1
  22. package/src/lib/hooks/useAppMetadata.js.map +1 -1
  23. package/src/lib/hooks/usePushChainClient.js +22 -18
  24. package/src/lib/hooks/usePushChainClient.js.map +1 -1
  25. package/src/lib/providers/PushWalletProvider.js +28 -6
  26. package/src/lib/providers/PushWalletProvider.js.map +1 -1
  27. package/src/lib/providers/theme/ThemeContext.js +0 -1
  28. package/src/lib/providers/walletProviders/WalletProviderRegistry.js +1 -2
  29. package/src/lib/providers/walletProviders/WalletProviderRegistry.js.map +1 -1
  30. package/src/lib/providers/walletProviders/ethereum/chains.js +4 -1
  31. package/src/lib/providers/walletProviders/ethereum/chains.js.map +1 -1
  32. package/src/lib/providers/walletProviders/ethereum/metamask.js +45 -47
  33. package/src/lib/providers/walletProviders/ethereum/metamask.js.map +1 -1
  34. package/src/lib/providers/walletProviders/ethereum/rabby.js +41 -41
  35. package/src/lib/providers/walletProviders/ethereum/rabby.js.map +1 -1
  36. package/src/lib/providers/walletProviders/ethereum/walletConnect.js +62 -65
  37. package/src/lib/providers/walletProviders/ethereum/walletConnect.js.map +1 -1
  38. package/src/lib/providers/walletProviders/ethereum/zerion.js +41 -41
  39. package/src/lib/providers/walletProviders/ethereum/zerion.js.map +1 -1
  40. package/src/lib/providers/walletProviders/solana/phantom.js +56 -60
  41. package/src/lib/providers/walletProviders/solana/phantom.js.map +1 -1
  42. package/src/lib/providers/walletProviders/utils/eip6963.js +2 -4
  43. package/src/lib/providers/walletProviders/utils/eip6963.js.map +1 -1
  44. package/src/lib/styles/token.js +5 -1
  45. package/src/lib/styles/token.js.map +1 -1
  46. package/src/index.d.ts +0 -2
  47. package/src/lib/components/LoginModal/index.d.ts +0 -23
  48. package/src/lib/components/LoginModal/useSmartModalPosition.d.ts +0 -6
  49. package/src/lib/components/PushUniversalAccountButton/ConnectWalletButton.d.ts +0 -11
  50. package/src/lib/components/PushUniversalAccountButton/TogglePushWalletButton.d.ts +0 -11
  51. package/src/lib/components/PushUniversalAccountButton/index.d.ts +0 -17
  52. package/src/lib/components/PushWalletToast/index.d.ts +0 -8
  53. package/src/lib/components/common/Button.d.ts +0 -23
  54. package/src/lib/components/common/Spinner.d.ts +0 -6
  55. package/src/lib/components/common/icons/ArbitrumMonotone.d.ts +0 -2
  56. package/src/lib/components/common/icons/AvalancheMonotone.d.ts +0 -2
  57. package/src/lib/components/common/icons/BaseMonotone.d.ts +0 -2
  58. package/src/lib/components/common/icons/BnbMonotone.d.ts +0 -2
  59. package/src/lib/components/common/icons/CaretDown.d.ts +0 -6
  60. package/src/lib/components/common/icons/CaretUp.d.ts +0 -6
  61. package/src/lib/components/common/icons/CrossIcon.d.ts +0 -6
  62. package/src/lib/components/common/icons/DashIcon.d.ts +0 -2
  63. package/src/lib/components/common/icons/EllipseIcon.d.ts +0 -2
  64. package/src/lib/components/common/icons/EthereumMonotone.d.ts +0 -2
  65. package/src/lib/components/common/icons/OptimismMonotone.d.ts +0 -2
  66. package/src/lib/components/common/icons/PolygonMonotone.d.ts +0 -2
  67. package/src/lib/components/common/icons/PushLogo.d.ts +0 -2
  68. package/src/lib/components/common/icons/PushMonotone.d.ts +0 -2
  69. package/src/lib/components/common/icons/SolanaMonotone.d.ts +0 -2
  70. package/src/lib/components/common/icons/TickIcon.d.ts +0 -2
  71. package/src/lib/components/common/icons/WarningIcon.d.ts +0 -2
  72. package/src/lib/components/common/icons/index.d.ts +0 -14
  73. package/src/lib/components/common/index.d.ts +0 -3
  74. package/src/lib/constants/environment.d.ts +0 -15
  75. package/src/lib/constants/index.d.ts +0 -67
  76. package/src/lib/context/WalletContext.d.ts +0 -40
  77. package/src/lib/context/WalletContextMap.d.ts +0 -2
  78. package/src/lib/helpers/index.d.ts +0 -1
  79. package/src/lib/helpers/txnAuthGuard.d.ts +0 -10
  80. package/src/lib/helpers/wallet.helpers.d.ts +0 -8
  81. package/src/lib/hooks/useAppMetadata.d.ts +0 -1
  82. package/src/lib/hooks/usePushChain.d.ts +0 -4
  83. package/src/lib/hooks/usePushChainClient.d.ts +0 -6
  84. package/src/lib/hooks/usePushWallet.d.ts +0 -2
  85. package/src/lib/index.d.ts +0 -7
  86. package/src/lib/polyfills/index.d.ts +0 -4
  87. package/src/lib/providers/PushWalletProvider.d.ts +0 -3
  88. package/src/lib/providers/theme/ThemeContext.d.ts +0 -0
  89. package/src/lib/providers/walletProviders/BaseWalletProvider.d.ts +0 -19
  90. package/src/lib/providers/walletProviders/WalletProviderRegistry.d.ts +0 -13
  91. package/src/lib/providers/walletProviders/ethereum/chains.d.ts +0 -44
  92. package/src/lib/providers/walletProviders/ethereum/metamask.d.ts +0 -18
  93. package/src/lib/providers/walletProviders/ethereum/rabby.d.ts +0 -17
  94. package/src/lib/providers/walletProviders/ethereum/walletConnect.d.ts +0 -17
  95. package/src/lib/providers/walletProviders/ethereum/zerion.d.ts +0 -17
  96. package/src/lib/providers/walletProviders/helpers/address.d.ts +0 -11
  97. package/src/lib/providers/walletProviders/solana/phantom.d.ts +0 -46
  98. package/src/lib/providers/walletProviders/utils/eip6963.d.ts +0 -12
  99. package/src/lib/styles/token.d.ts +0 -76
  100. package/src/lib/types/PushWalletProvider.types.d.ts +0 -71
  101. package/src/lib/types/index.d.ts +0 -2
  102. package/src/lib/types/wallet.types.d.ts +0 -52
  103. package/src/lib/utils/theme.d.ts +0 -2
@@ -1,76 +0,0 @@
1
- type ColorThemeTokens = {
2
- '--pw-core-brand-primary-color': string;
3
- '--pw-core-text-primary-color': string;
4
- '--pw-core-text-secondary-color': string;
5
- '--pw-core-text-tertiary-color': string;
6
- '--pw-core-text-link-color': string;
7
- '--pw-core-text-disabled-color': string;
8
- '--pw-core-bg-primary-color': string;
9
- '--pw-core-bg-secondary-color': string;
10
- '--pw-core-bg-tertiary-color': string;
11
- '--pw-core-bg-disabled-color': string;
12
- '--pw-core-success-primary-color': string;
13
- '--pw-core-error-primary-color': string;
14
- '--pw-core-btn-primary-bg-color': string;
15
- '--pw-core-btn-primary-text-color': string;
16
- '--pwauth-btn-connect-text-color': string;
17
- '--pwauth-btn-connect-bg-color': string;
18
- '--pwauth-btn-connected-text-color': string;
19
- '--pwauth-btn-connected-bg-color': string;
20
- '--pwauth-btn-connect-border-radius': string;
21
- };
22
- type ThemeTokens = ColorThemeTokens & {
23
- '--pw-core-font-family': string;
24
- '--pw-core-text-size': string;
25
- '--pw-core-modal-border': string;
26
- '--pw-core-modal-border-radius': string;
27
- '--pw-core-modal-width': string;
28
- '--pw-core-modal-padding': string;
29
- '--pw-core-list-spacing': string;
30
- '--pw-core-btn-border-radius': string;
31
- '--pwauth-btn-connect-border-radius': string;
32
- };
33
- type ButtonColorTokens = {
34
- '--pwauth-btn-connect-text-color': string;
35
- '--pwauth-btn-connect-bg-color': string;
36
- '--pwauth-btn-connected-text-color': string;
37
- '--pwauth-btn-connected-bg-color': string;
38
- };
39
- type ButtonThemeTokens = ButtonColorTokens & {
40
- '--pwauth-btn-connect-border-radius': string;
41
- };
42
- export type ThemeOverrides = Partial<ThemeTokens> & {
43
- light?: Partial<ColorThemeTokens>;
44
- dark?: Partial<ColorThemeTokens>;
45
- };
46
- export type ButtonThemeOverrides = Partial<ButtonThemeTokens> & {
47
- light?: Partial<ButtonColorTokens>;
48
- dark?: Partial<ButtonColorTokens>;
49
- };
50
- export declare const themeDefault: {
51
- '--pw-int-text-heading-xsmall-size': string;
52
- '--pw-int-text-body-large-size': string;
53
- '--pw-int-font-family': string;
54
- '--pw-int-modal-width': string;
55
- };
56
- export declare const lightThemeDefault: {
57
- '--pw-int-bg-primary-color': string;
58
- '--pw-int-text-primary-color': string;
59
- '--pw-int-text-secondary-color': string;
60
- '--pw-int-brand-primary-color': string;
61
- };
62
- export declare const darkThemeDefault: {
63
- '--pw-int-bg-primary-color': string;
64
- '--pw-int-text-primary-color': string;
65
- '--pw-int-text-secondary-color': string;
66
- '--pw-int-brand-primary-color': string;
67
- };
68
- export declare const buttonThemeDefault: {
69
- '--pwauth-btn-connect-text-color': string;
70
- '--pwauth-btn-connect-bg-color': string;
71
- '--pwauth-btn-connected-text-color': string;
72
- '--pwauth-btn-connected-bg-color': string;
73
- '--pwauth-btn-connect-border-radius': string;
74
- };
75
- export declare const defaultThemeKeys: string[];
76
- export {};
@@ -1,71 +0,0 @@
1
- import { CHAIN, PUSH_NETWORK } from '@pushchain/core/src/lib/constants/enums';
2
- import { PushUI } from '../constants';
3
- import { ThemeOverrides } from '../styles/token';
4
- export type LoginMethodConfig = {
5
- email?: boolean;
6
- google?: boolean;
7
- phone?: boolean;
8
- socials?: {
9
- discord?: boolean;
10
- github?: boolean;
11
- x?: boolean;
12
- bluesky?: boolean;
13
- };
14
- wallet?: {
15
- enabled?: boolean;
16
- chains?: (typeof PushUI.CONSTANTS.CHAIN)[keyof typeof PushUI.CONSTANTS.CHAIN][];
17
- excludedChains?: (typeof PushUI.CONSTANTS.CHAIN)[keyof typeof PushUI.CONSTANTS.CHAIN][];
18
- };
19
- appPreview?: boolean;
20
- };
21
- export type ChainConfig = {
22
- rpcUrls?: Partial<Record<CHAIN, string[]>>;
23
- blockExplorers?: Partial<Record<CHAIN, string[]>>;
24
- printTraces?: boolean;
25
- };
26
- export type ProviderConfigProps = {
27
- uid?: string;
28
- network: PUSH_NETWORK;
29
- rpcUrl?: string;
30
- login?: LoginMethodConfig;
31
- modal?: ModalProps;
32
- chainConfig?: ChainConfig;
33
- version?: 4 | 5;
34
- };
35
- export type AppMetadata = {
36
- title?: string;
37
- logoUrl?: string;
38
- description?: string;
39
- };
40
- export type ModalProps = {
41
- /**
42
- * “split” shows the preview pane side-by-side with the iframe
43
- * “simple” shows only the iframe (no preview)
44
- */
45
- loginLayout?: typeof PushUI.CONSTANTS.LOGIN.LAYOUT.SPLIT | typeof PushUI.CONSTANTS.LOGIN.LAYOUT.SIMPLE;
46
- /** if true (and `app` is provided), show the preview pane in the wrapper */
47
- appPreview?: boolean;
48
- /** CSS background-image for wrapper or preview pane */
49
- bgImage?: string;
50
- /** when connected, how the account menu appears */
51
- connectedLayout?: typeof PushUI.CONSTANTS.CONNECTED.LAYOUT.FULL | typeof PushUI.CONSTANTS.CONNECTED.LAYOUT.HOVER;
52
- connectedInteraction?: typeof PushUI.CONSTANTS.CONNECTED.INTERACTION.INTERACTIVE | typeof PushUI.CONSTANTS.CONNECTED.INTERACTION.BLUR;
53
- };
54
- export type ThemeMode = typeof PushUI.CONSTANTS.THEME.LIGHT | typeof PushUI.CONSTANTS.THEME.DARK;
55
- export type PushWalletProviderProps = {
56
- children: React.ReactNode;
57
- config: ProviderConfigProps;
58
- app?: AppMetadata;
59
- themeMode?: ThemeMode;
60
- themeOverrides?: ThemeOverrides;
61
- };
62
- export type ModalAppDetails = {
63
- logoURL?: string;
64
- title?: string;
65
- description?: string;
66
- };
67
- export type WalletAppDetails = {
68
- logoURL?: string;
69
- title?: string;
70
- description?: string;
71
- };
@@ -1,2 +0,0 @@
1
- export * from './wallet.types';
2
- export * from './PushWalletProvider.types';
@@ -1,52 +0,0 @@
1
- import { CHAIN } from '@pushchain/core/src/lib/constants/enums';
2
- import { TypedData, TypedDataDomain } from 'viem';
3
- export declare enum ChainType {
4
- ETHEREUM = "sepolia",
5
- SOLANA = "solana",
6
- BINANCE = "bscTestnet",
7
- ARBITRUM = "arbitrumSepolia",
8
- BASE = "baseSepolia",
9
- AVALANCHE = "avalanche",
10
- WALLET_CONNECT = "walletConnect",
11
- PUSH_WALLET = "pushWalletDonut"
12
- }
13
- export interface WalletInfo {
14
- address: string;
15
- chainType: ChainType;
16
- providerName: string;
17
- }
18
- export interface ITypedData {
19
- domain: TypedDataDomain;
20
- types: TypedData;
21
- primaryType: string;
22
- message: Record<string, unknown>;
23
- }
24
- export interface IWalletProvider {
25
- name: string;
26
- icon: string;
27
- supportedChains: ChainType[];
28
- connect(chainType?: ChainType): Promise<{
29
- caipAddress: string;
30
- }>;
31
- signMessage(message: Uint8Array): Promise<Uint8Array>;
32
- signAndSendTransaction(txn: Uint8Array): Promise<Uint8Array>;
33
- signTypedData(typedData: ITypedData): Promise<Uint8Array>;
34
- disconnect(): Promise<void>;
35
- getChainId(): Promise<unknown>;
36
- switchNetwork?(chainName: ChainType): Promise<void>;
37
- }
38
- export type UniversalAccount = {
39
- chain: CHAIN;
40
- address: string;
41
- };
42
- export declare enum ConnectionStatus {
43
- NOT_CONNECTED = "notConnected",
44
- CONNECTING = "connecting",
45
- AUTHENTICATING = "authenticating",
46
- CONNECTED = "connected",
47
- RETRY = "retry"
48
- }
49
- export type WalletEventRespoonse = {
50
- signature?: Uint8Array;
51
- account?: UniversalAccount;
52
- };
@@ -1,2 +0,0 @@
1
- export declare const mapCoreToInt: (obj: Record<string, string | undefined>) => Record<string, string>;
2
- export declare const mapButtonCoreToInt: (obj: Record<string, string | undefined>) => Record<string, string>;