@cranberry-money/shared-constants 8.15.441 → 8.15.443

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 (53) hide show
  1. package/dist/business/index.d.ts +0 -2
  2. package/dist/business/index.d.ts.map +1 -1
  3. package/dist/business/index.js +0 -2
  4. package/dist/business/index.js.map +1 -1
  5. package/dist/business/wallets.d.ts +0 -119
  6. package/dist/business/wallets.d.ts.map +1 -1
  7. package/dist/business/wallets.js +21 -287
  8. package/dist/business/wallets.js.map +1 -1
  9. package/dist/config.d.ts +0 -60
  10. package/dist/config.d.ts.map +1 -1
  11. package/dist/config.js +0 -59
  12. package/dist/config.js.map +1 -1
  13. package/dist/countries.d.ts +0 -12
  14. package/dist/countries.d.ts.map +1 -1
  15. package/dist/countries.js +11 -82
  16. package/dist/countries.js.map +1 -1
  17. package/dist/ui/chart-colors.d.ts +0 -4
  18. package/dist/ui/chart-colors.d.ts.map +1 -1
  19. package/dist/ui/chart-colors.js +2 -11
  20. package/dist/ui/chart-colors.js.map +1 -1
  21. package/dist/ui/design-tokens.d.ts +0 -64
  22. package/dist/ui/design-tokens.d.ts.map +1 -1
  23. package/dist/ui/design-tokens.js +32 -182
  24. package/dist/ui/design-tokens.js.map +1 -1
  25. package/dist/ui/index.d.ts +0 -2
  26. package/dist/ui/index.d.ts.map +1 -1
  27. package/dist/ui/index.js +0 -2
  28. package/dist/ui/index.js.map +1 -1
  29. package/dist/ui/sumsub-theme.d.ts +0 -25
  30. package/dist/ui/sumsub-theme.d.ts.map +1 -1
  31. package/dist/ui/sumsub-theme.js +19 -51
  32. package/dist/ui/sumsub-theme.js.map +1 -1
  33. package/dist/utilities.d.ts +0 -4
  34. package/dist/utilities.d.ts.map +1 -1
  35. package/dist/utilities.js +3 -8
  36. package/dist/utilities.js.map +1 -1
  37. package/package.json +1 -1
  38. package/dist/business/assets.d.ts +0 -49
  39. package/dist/business/assets.d.ts.map +0 -1
  40. package/dist/business/assets.js +0 -64
  41. package/dist/business/assets.js.map +0 -1
  42. package/dist/business/user-preferences.d.ts +0 -36
  43. package/dist/business/user-preferences.d.ts.map +0 -1
  44. package/dist/business/user-preferences.js +0 -35
  45. package/dist/business/user-preferences.js.map +0 -1
  46. package/dist/ui/chart-config.d.ts +0 -12
  47. package/dist/ui/chart-config.d.ts.map +0 -1
  48. package/dist/ui/chart-config.js +0 -11
  49. package/dist/ui/chart-config.js.map +0 -1
  50. package/dist/ui/navigation.d.ts +0 -23
  51. package/dist/ui/navigation.d.ts.map +0 -1
  52. package/dist/ui/navigation.js +0 -21
  53. package/dist/ui/navigation.js.map +0 -1
@@ -2,7 +2,5 @@ export * from './user-accounts';
2
2
  export * from './investments';
3
3
  export * from './common';
4
4
  export * from './holdings';
5
- export * from './assets';
6
- export * from './user-preferences';
7
5
  export * from './wallets';
8
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -2,7 +2,5 @@ export * from './user-accounts';
2
2
  export * from './investments';
3
3
  export * from './common';
4
4
  export * from './holdings';
5
- export * from './assets';
6
- export * from './user-preferences';
7
5
  export * from './wallets';
8
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/business/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,WAAW,CAAC"}
@@ -1,12 +1,8 @@
1
- /**
2
- * Wallet-related constants for blockchain wallet management
3
- */
4
1
  export declare const WALLET_VERIFICATION_STATUS: {
5
2
  readonly PENDING: "PENDING";
6
3
  readonly VERIFIED: "VERIFIED";
7
4
  };
8
5
  export type WalletVerificationStatus = (typeof WALLET_VERIFICATION_STATUS)[keyof typeof WALLET_VERIFICATION_STATUS];
9
- export declare const WALLET_VERIFICATION_STATUS_LABELS: Record<WalletVerificationStatus, string>;
10
6
  export declare const BLOCKCHAIN: {
11
7
  readonly ETHEREUM: "ethereum";
12
8
  readonly BITCOIN: "bitcoin";
@@ -18,10 +14,6 @@ export declare const BLOCKCHAIN: {
18
14
  readonly BASE: "base";
19
15
  };
20
16
  export type BlockchainType = (typeof BLOCKCHAIN)[keyof typeof BLOCKCHAIN];
21
- /**
22
- * Chain configuration - THE SINGLE SOURCE OF TRUTH for all chain data
23
- * All other chain-related lookups should derive from this array
24
- */
25
17
  export interface ChainConfig {
26
18
  code: BlockchainType;
27
19
  name: string;
@@ -31,136 +23,25 @@ export interface ChainConfig {
31
23
  addressPlaceholder: string;
32
24
  confirmationTime: string;
33
25
  }
34
- /**
35
- * Centralized chain configuration for the app
36
- * - code: blockchain identifier used in API calls (e.g., 'ethereum')
37
- * - name: human-readable name (e.g., 'Ethereum')
38
- * - shortName: native token symbol (e.g., 'ETH')
39
- * - isActive: whether the chain is currently supported in the app
40
- * - explorerTxUrl: base URL for transaction explorer
41
- * - addressPlaceholder: placeholder text for address inputs
42
- * - confirmationTime: estimated confirmation time string
43
- */
44
26
  export declare const SUPPORTED_CHAINS: ChainConfig[];
45
- /**
46
- * Maps blockchain chain codes to their native asset symbols
47
- * @deprecated Use getChainShortCode() instead for consistent behavior
48
- */
49
- export declare const CHAIN_TO_NATIVE_ASSET: Record<string, string>;
50
- /**
51
- * Maps native asset short codes to full blockchain names
52
- * @deprecated Use getChainName() instead for consistent behavior
53
- */
54
- export declare const NATIVE_ASSET_TO_CHAIN: Record<string, BlockchainType>;
55
- /**
56
- * Human-readable labels for blockchain names
57
- * @deprecated Use getChainConfig(code)?.name instead
58
- */
59
- export declare const BLOCKCHAIN_LABELS: Record<string, string>;
60
- /**
61
- * Get chain config by code
62
- */
63
27
  export declare function getChainConfig(code: string): ChainConfig | undefined;
64
- /**
65
- * Get chain config by short name (native asset symbol)
66
- * Note: Returns first match (e.g., 'ETH' returns Ethereum, not Arbitrum)
67
- */
68
28
  export declare function getChainByShortName(shortName: string): ChainConfig | undefined;
69
- /**
70
- * Get only active chains
71
- */
72
29
  export declare function getActiveChains(): ChainConfig[];
73
- /**
74
- * Get full blockchain name from any chain identifier (short code or full name)
75
- * @param chain - Chain identifier (e.g., 'ETH', 'ethereum', 'BTC', 'bitcoin')
76
- * @returns Full blockchain name (e.g., 'ethereum', 'bitcoin') or original if not found
77
- */
78
30
  export declare function getChainName(chain: string): string;
79
- /**
80
- * Get native asset short code from any chain identifier
81
- * @param chain - Chain identifier (e.g., 'ETH', 'ethereum', 'BTC', 'bitcoin')
82
- * @returns Native asset symbol (e.g., 'ETH', 'BTC') or uppercase input if not found
83
- */
84
31
  export declare function getChainShortCode(chain: string): string;
85
- /**
86
- * Check if a chain short code represents Ethereum
87
- */
88
32
  export declare function isEthereumChain(chainShortCode: string): boolean;
89
- /**
90
- * Check if a chain short code represents Bitcoin
91
- */
92
33
  export declare function isBitcoinChain(chainShortCode: string): boolean;
93
- /**
94
- * Get the full blockchain display name from a chain short code
95
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
96
- * @returns Full blockchain name (e.g., 'Ethereum', 'Bitcoin')
97
- */
98
34
  export declare function getBlockchainDisplayName(chainShortCode: string): string;
99
- /**
100
- * Get address placeholder for input fields based on chain
101
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
102
- */
103
35
  export declare function getAddressPlaceholder(chainShortCode: string): string;
104
- /**
105
- * Get estimated confirmation time for a chain
106
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
107
- */
108
36
  export declare function getEstimatedConfirmationTime(chainShortCode: string): string;
109
- /**
110
- * Get block explorer URL for a transaction
111
- * @param chain - Chain identifier (e.g., 'ethereum', 'bitcoin', 'eth', 'btc')
112
- * @param txHash - Transaction hash
113
- * @returns Full URL to view the transaction on a block explorer
114
- */
115
37
  export declare function getBlockExplorerTxUrl(chain: string, txHash: string): string;
116
- /**
117
- * Block explorer base URLs for transaction lookups
118
- * @deprecated Use getBlockExplorerTxUrl() instead
119
- */
120
- export declare const BLOCK_EXPLORER_TX_URLS: Record<string, string>;
121
- /**
122
- * Estimated transaction fees for "max amount" calculations
123
- * These are conservative estimates to ensure transfers go through
124
- */
125
38
  export declare const TRANSFER_FEE_ESTIMATES: {
126
39
  readonly BTC: 0.0001;
127
40
  readonly ETH: 0.005;
128
41
  };
129
- /**
130
- * Get estimated fee for a chain
131
- */
132
42
  export declare function getEstimatedFee(chainShortName: string): number;
133
43
  export declare const WALLET_ADDRESS_PATTERNS: {
134
44
  readonly ETHEREUM: RegExp;
135
45
  readonly BITCOIN: RegExp;
136
46
  };
137
- export declare const QR_CODE_CONFIG: {
138
- readonly MAX_SIZE: 400;
139
- readonly MIN_SIZE: 200;
140
- readonly ERROR_CORRECTION_LEVEL: "M";
141
- readonly ANIMATION_FPS: 5;
142
- };
143
- export declare const FIAT_TRANSACTION_STATUS: {
144
- readonly PENDING: "PENDING";
145
- readonly PROCESSING: "PROCESSING";
146
- readonly COMPLETED: "COMPLETED";
147
- readonly FAILED: "FAILED";
148
- readonly CANCELLED: "CANCELLED";
149
- };
150
- export type FiatTransactionStatus = (typeof FIAT_TRANSACTION_STATUS)[keyof typeof FIAT_TRANSACTION_STATUS];
151
- export declare const FIAT_TRANSACTION_STATUS_LABELS: Record<FiatTransactionStatus, string>;
152
- export declare const FIAT_TRANSACTION_PROVIDER: {
153
- readonly MOONPAY: "MOONPAY";
154
- readonly RAMP: "RAMP";
155
- };
156
- export type FiatTransactionProvider = (typeof FIAT_TRANSACTION_PROVIDER)[keyof typeof FIAT_TRANSACTION_PROVIDER];
157
- export declare const FIAT_TRANSACTION_PROVIDER_LABELS: Record<FiatTransactionProvider, string>;
158
- export declare const PAYMENT_METHOD: {
159
- readonly CARD: "CARD";
160
- readonly BANK_TRANSFER: "BANK_TRANSFER";
161
- readonly APPLE_PAY: "APPLE_PAY";
162
- readonly GOOGLE_PAY: "GOOGLE_PAY";
163
- };
164
- export type PaymentMethod = (typeof PAYMENT_METHOD)[keyof typeof PAYMENT_METHOD];
165
- export declare const PAYMENT_METHOD_LABELS: Record<PaymentMethod, string>;
166
47
  //# sourceMappingURL=wallets.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallets.d.ts","sourceRoot":"","sources":["../../src/business/wallets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallets.d.ts","sourceRoot":"","sources":["../../src/business/wallets.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,0BAA0B;;;CAG7B,CAAC;AAEX,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,OAAO,0BAA0B,CAAC,CAAC;AAEpH,eAAO,MAAM,UAAU;;;;;;;;;CASb,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAE1E,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,cAAc,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,gBAAgB,EAAE,MAAM,CAAC;CAC1B;AAED,eAAO,MAAM,gBAAgB,EAAE,WAAW,EASzC,CAAC;AAKF,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAEpE;AAED,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAE9E;AAED,wBAAgB,eAAe,IAAI,WAAW,EAAE,CAE/C;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKlD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAQvD;AAED,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED,wBAAgB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAE9D;AAED,wBAAgB,wBAAwB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEvE;AAED,wBAAgB,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,wBAAgB,4BAA4B,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ3E;AAED,eAAO,MAAM,sBAAsB;;;CAAuC,CAAC;AAE3E,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAE9D;AAED,eAAO,MAAM,uBAAuB;;;CAG1B,CAAC"}
@@ -1,20 +1,7 @@
1
- /**
2
- * Wallet-related constants for blockchain wallet management
3
- */
4
- // ============================================
5
- // Wallet Verification Statuses
6
- // ============================================
7
1
  export const WALLET_VERIFICATION_STATUS = {
8
2
  PENDING: 'PENDING',
9
3
  VERIFIED: 'VERIFIED',
10
4
  };
11
- export const WALLET_VERIFICATION_STATUS_LABELS = {
12
- [WALLET_VERIFICATION_STATUS.PENDING]: 'Pending Verification',
13
- [WALLET_VERIFICATION_STATUS.VERIFIED]: 'Verified',
14
- };
15
- // ============================================
16
- // Blockchain Chains - Single Source of Truth
17
- // ============================================
18
5
  export const BLOCKCHAIN = {
19
6
  ETHEREUM: 'ethereum',
20
7
  BITCOIN: 'bitcoin',
@@ -25,329 +12,76 @@ export const BLOCKCHAIN = {
25
12
  OPTIMISM: 'optimism',
26
13
  BASE: 'base',
27
14
  };
28
- /**
29
- * Centralized chain configuration for the app
30
- * - code: blockchain identifier used in API calls (e.g., 'ethereum')
31
- * - name: human-readable name (e.g., 'Ethereum')
32
- * - shortName: native token symbol (e.g., 'ETH')
33
- * - isActive: whether the chain is currently supported in the app
34
- * - explorerTxUrl: base URL for transaction explorer
35
- * - addressPlaceholder: placeholder text for address inputs
36
- * - confirmationTime: estimated confirmation time string
37
- */
38
15
  export const SUPPORTED_CHAINS = [
39
- {
40
- code: BLOCKCHAIN.ETHEREUM,
41
- name: 'Ethereum',
42
- shortName: 'ETH',
43
- isActive: true,
44
- explorerTxUrl: 'https://etherscan.io/tx/',
45
- addressPlaceholder: '0x...',
46
- confirmationTime: '~2-3 minutes',
47
- },
48
- {
49
- code: BLOCKCHAIN.BITCOIN,
50
- name: 'Bitcoin',
51
- shortName: 'BTC',
52
- isActive: true,
53
- explorerTxUrl: 'https://blockchain.com/btc/tx/',
54
- addressPlaceholder: '1... or 3... or bc1...',
55
- confirmationTime: '~10 minutes',
56
- },
57
- {
58
- code: BLOCKCHAIN.POLYGON,
59
- name: 'Polygon',
60
- shortName: 'MATIC',
61
- isActive: false,
62
- explorerTxUrl: 'https://polygonscan.com/tx/',
63
- addressPlaceholder: '0x...',
64
- confirmationTime: '~2 minutes',
65
- },
66
- {
67
- code: BLOCKCHAIN.SOLANA,
68
- name: 'Solana',
69
- shortName: 'SOL',
70
- isActive: false,
71
- explorerTxUrl: 'https://solscan.io/tx/',
72
- addressPlaceholder: 'Enter address',
73
- confirmationTime: '~1 minute',
74
- },
75
- {
76
- code: BLOCKCHAIN.AVALANCHE,
77
- name: 'Avalanche',
78
- shortName: 'AVAX',
79
- isActive: false,
80
- explorerTxUrl: 'https://snowtrace.io/tx/',
81
- addressPlaceholder: '0x...',
82
- confirmationTime: '~2 minutes',
83
- },
84
- {
85
- code: BLOCKCHAIN.ARBITRUM,
86
- name: 'Arbitrum',
87
- shortName: 'ETH',
88
- isActive: false,
89
- explorerTxUrl: 'https://arbiscan.io/tx/',
90
- addressPlaceholder: '0x...',
91
- confirmationTime: '~2 minutes',
92
- },
93
- {
94
- code: BLOCKCHAIN.OPTIMISM,
95
- name: 'Optimism',
96
- shortName: 'ETH',
97
- isActive: false,
98
- explorerTxUrl: 'https://optimistic.etherscan.io/tx/',
99
- addressPlaceholder: '0x...',
100
- confirmationTime: '~2 minutes',
101
- },
102
- {
103
- code: BLOCKCHAIN.BASE,
104
- name: 'Base',
105
- shortName: 'ETH',
106
- isActive: false,
107
- explorerTxUrl: 'https://basescan.org/tx/',
108
- addressPlaceholder: '0x...',
109
- confirmationTime: '~2 minutes',
110
- },
16
+ { code: BLOCKCHAIN.ETHEREUM, name: 'Ethereum', shortName: 'ETH', isActive: true, explorerTxUrl: 'https://etherscan.io/tx/', addressPlaceholder: '0x...', confirmationTime: '~2-3 minutes' },
17
+ { code: BLOCKCHAIN.BITCOIN, name: 'Bitcoin', shortName: 'BTC', isActive: true, explorerTxUrl: 'https://blockchain.com/btc/tx/', addressPlaceholder: '1... or 3... or bc1...', confirmationTime: '~10 minutes' },
18
+ { code: BLOCKCHAIN.POLYGON, name: 'Polygon', shortName: 'MATIC', isActive: false, explorerTxUrl: 'https://polygonscan.com/tx/', addressPlaceholder: '0x...', confirmationTime: '~2 minutes' },
19
+ { code: BLOCKCHAIN.SOLANA, name: 'Solana', shortName: 'SOL', isActive: false, explorerTxUrl: 'https://solscan.io/tx/', addressPlaceholder: 'Enter address', confirmationTime: '~1 minute' },
20
+ { code: BLOCKCHAIN.AVALANCHE, name: 'Avalanche', shortName: 'AVAX', isActive: false, explorerTxUrl: 'https://snowtrace.io/tx/', addressPlaceholder: '0x...', confirmationTime: '~2 minutes' },
21
+ { code: BLOCKCHAIN.ARBITRUM, name: 'Arbitrum', shortName: 'ETH', isActive: false, explorerTxUrl: 'https://arbiscan.io/tx/', addressPlaceholder: '0x...', confirmationTime: '~2 minutes' },
22
+ { code: BLOCKCHAIN.OPTIMISM, name: 'Optimism', shortName: 'ETH', isActive: false, explorerTxUrl: 'https://optimistic.etherscan.io/tx/', addressPlaceholder: '0x...', confirmationTime: '~2 minutes' },
23
+ { code: BLOCKCHAIN.BASE, name: 'Base', shortName: 'ETH', isActive: false, explorerTxUrl: 'https://basescan.org/tx/', addressPlaceholder: '0x...', confirmationTime: '~2 minutes' },
111
24
  ];
112
- // ============================================
113
- // Derived Lookups (built from SUPPORTED_CHAINS)
114
- // ============================================
115
- // Build lookup maps once for O(1) access
116
25
  const chainByCode = new Map(SUPPORTED_CHAINS.map((c) => [c.code, c]));
117
26
  const chainByShortName = new Map(SUPPORTED_CHAINS.map((c) => [c.shortName, c]));
118
- /**
119
- * Maps blockchain chain codes to their native asset symbols
120
- * @deprecated Use getChainShortCode() instead for consistent behavior
121
- */
122
- export const CHAIN_TO_NATIVE_ASSET = Object.fromEntries([
123
- ...SUPPORTED_CHAINS.map((c) => [c.code, c.shortName]),
124
- // Aliases for common short codes used as input
125
- ['btc', 'BTC'],
126
- ['eth', 'ETH'],
127
- ['sol', 'SOL'],
128
- ['avax', 'AVAX'],
129
- ]);
130
- /**
131
- * Maps native asset short codes to full blockchain names
132
- * @deprecated Use getChainName() instead for consistent behavior
133
- */
134
- export const NATIVE_ASSET_TO_CHAIN = Object.fromEntries(SUPPORTED_CHAINS.filter((c) => c.shortName !== 'ETH' || c.code === BLOCKCHAIN.ETHEREUM).map((c) => [
135
- c.shortName,
136
- c.code,
137
- ]));
138
- /**
139
- * Human-readable labels for blockchain names
140
- * @deprecated Use getChainConfig(code)?.name instead
141
- */
142
- export const BLOCKCHAIN_LABELS = Object.fromEntries(SUPPORTED_CHAINS.map((c) => [c.code, c.name]));
143
- // ============================================
144
- // Chain Lookup Functions
145
- // ============================================
146
- /**
147
- * Get chain config by code
148
- */
149
27
  export function getChainConfig(code) {
150
28
  return chainByCode.get(code);
151
29
  }
152
- /**
153
- * Get chain config by short name (native asset symbol)
154
- * Note: Returns first match (e.g., 'ETH' returns Ethereum, not Arbitrum)
155
- */
156
30
  export function getChainByShortName(shortName) {
157
31
  return chainByShortName.get(shortName);
158
32
  }
159
- /**
160
- * Get only active chains
161
- */
162
33
  export function getActiveChains() {
163
34
  return SUPPORTED_CHAINS.filter((c) => c.isActive);
164
35
  }
165
- /**
166
- * Get full blockchain name from any chain identifier (short code or full name)
167
- * @param chain - Chain identifier (e.g., 'ETH', 'ethereum', 'BTC', 'bitcoin')
168
- * @returns Full blockchain name (e.g., 'ethereum', 'bitcoin') or original if not found
169
- */
170
36
  export function getChainName(chain) {
171
37
  const normalized = chain?.toLowerCase() || '';
172
- // Check if it's already a valid chain code
173
- if (chainByCode.has(normalized)) {
38
+ if (chainByCode.has(normalized))
174
39
  return normalized;
175
- }
176
- // Check if it's a short name
177
- const upper = chain?.toUpperCase() || '';
178
- const config = chainByShortName.get(upper);
179
- if (config) {
180
- return config.code;
181
- }
182
- return normalized;
40
+ const config = chainByShortName.get(chain?.toUpperCase() || '');
41
+ return config?.code || normalized;
183
42
  }
184
- /**
185
- * Get native asset short code from any chain identifier
186
- * @param chain - Chain identifier (e.g., 'ETH', 'ethereum', 'BTC', 'bitcoin')
187
- * @returns Native asset symbol (e.g., 'ETH', 'BTC') or uppercase input if not found
188
- */
189
43
  export function getChainShortCode(chain) {
190
44
  const normalized = chain?.toLowerCase() || '';
191
- // Check if it's a chain code
192
45
  const config = chainByCode.get(normalized);
193
- if (config) {
46
+ if (config)
194
47
  return config.shortName;
195
- }
196
- // Check common aliases
197
48
  const aliases = { btc: 'BTC', eth: 'ETH', sol: 'SOL', avax: 'AVAX' };
198
- if (aliases[normalized]) {
49
+ if (aliases[normalized])
199
50
  return aliases[normalized];
200
- }
201
- // Check if it's already a valid short name
202
51
  const upper = chain?.toUpperCase() || '';
203
- if (chainByShortName.has(upper)) {
204
- return upper;
205
- }
206
- return upper;
52
+ return chainByShortName.has(upper) ? upper : upper;
207
53
  }
208
- // ============================================
209
- // Chain Type Helpers
210
- // ============================================
211
- /**
212
- * Check if a chain short code represents Ethereum
213
- */
214
54
  export function isEthereumChain(chainShortCode) {
215
55
  return chainShortCode === 'ETH';
216
56
  }
217
- /**
218
- * Check if a chain short code represents Bitcoin
219
- */
220
57
  export function isBitcoinChain(chainShortCode) {
221
58
  return chainShortCode === 'BTC';
222
59
  }
223
- /**
224
- * Get the full blockchain display name from a chain short code
225
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
226
- * @returns Full blockchain name (e.g., 'Ethereum', 'Bitcoin')
227
- */
228
60
  export function getBlockchainDisplayName(chainShortCode) {
229
- const config = chainByShortName.get(chainShortCode);
230
- return config?.name || chainShortCode;
61
+ return chainByShortName.get(chainShortCode)?.name || chainShortCode;
231
62
  }
232
- /**
233
- * Get address placeholder for input fields based on chain
234
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
235
- */
236
63
  export function getAddressPlaceholder(chainShortCode) {
237
- const config = chainByShortName.get(chainShortCode);
238
- return config?.addressPlaceholder || 'Enter address';
64
+ return chainByShortName.get(chainShortCode)?.addressPlaceholder || 'Enter address';
239
65
  }
240
- /**
241
- * Get estimated confirmation time for a chain
242
- * @param chainShortCode - Chain short code (e.g., 'ETH', 'BTC')
243
- */
244
66
  export function getEstimatedConfirmationTime(chainShortCode) {
245
- const config = chainByShortName.get(chainShortCode);
246
- return config?.confirmationTime || '~5 minutes';
67
+ return chainByShortName.get(chainShortCode)?.confirmationTime || '~5 minutes';
247
68
  }
248
- // ============================================
249
- // Block Explorer URLs
250
- // ============================================
251
- /**
252
- * Get block explorer URL for a transaction
253
- * @param chain - Chain identifier (e.g., 'ethereum', 'bitcoin', 'eth', 'btc')
254
- * @param txHash - Transaction hash
255
- * @returns Full URL to view the transaction on a block explorer
256
- */
257
69
  export function getBlockExplorerTxUrl(chain, txHash) {
258
70
  const normalized = chain?.toLowerCase() || '';
259
- // Try to find by chain code
260
71
  let config = chainByCode.get(normalized);
261
- // Try common aliases
262
72
  if (!config) {
263
- const aliases = {
264
- btc: BLOCKCHAIN.BITCOIN,
265
- eth: BLOCKCHAIN.ETHEREUM,
266
- };
267
- if (aliases[normalized]) {
73
+ const aliases = { btc: BLOCKCHAIN.BITCOIN, eth: BLOCKCHAIN.ETHEREUM };
74
+ if (aliases[normalized])
268
75
  config = chainByCode.get(aliases[normalized]);
269
- }
270
76
  }
271
- const baseUrl = config?.explorerTxUrl || 'https://etherscan.io/tx/';
272
- return `${baseUrl}${txHash}`;
77
+ return `${config?.explorerTxUrl || 'https://etherscan.io/tx/'}${txHash}`;
273
78
  }
274
- /**
275
- * Block explorer base URLs for transaction lookups
276
- * @deprecated Use getBlockExplorerTxUrl() instead
277
- */
278
- export const BLOCK_EXPLORER_TX_URLS = Object.fromEntries([
279
- ...SUPPORTED_CHAINS.map((c) => [c.code, c.explorerTxUrl]),
280
- ['eth', 'https://etherscan.io/tx/'],
281
- ['btc', 'https://blockchain.com/btc/tx/'],
282
- ]);
283
- // ============================================
284
- // Transfer Fee Estimates
285
- // ============================================
286
- /**
287
- * Estimated transaction fees for "max amount" calculations
288
- * These are conservative estimates to ensure transfers go through
289
- */
290
- export const TRANSFER_FEE_ESTIMATES = {
291
- BTC: 0.0001, // ~$10 at $100k BTC - conservative for standard tx
292
- ETH: 0.005, // ~$20 at $4k ETH - conservative for ERC-20 transfers
293
- };
294
- /**
295
- * Get estimated fee for a chain
296
- */
79
+ export const TRANSFER_FEE_ESTIMATES = { BTC: 0.0001, ETH: 0.005 };
297
80
  export function getEstimatedFee(chainShortName) {
298
81
  return TRANSFER_FEE_ESTIMATES[chainShortName] || TRANSFER_FEE_ESTIMATES.ETH;
299
82
  }
300
- // ============================================
301
- // Wallet Address Validation Patterns
302
- // ============================================
303
83
  export const WALLET_ADDRESS_PATTERNS = {
304
84
  ETHEREUM: /^0x[a-fA-F0-9]{40}$/,
305
85
  BITCOIN: /^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^bc1[a-z0-9]{39,59}$/,
306
86
  };
307
- // ============================================
308
- // QR Code Configuration
309
- // ============================================
310
- export const QR_CODE_CONFIG = {
311
- MAX_SIZE: 400,
312
- MIN_SIZE: 200,
313
- ERROR_CORRECTION_LEVEL: 'M',
314
- ANIMATION_FPS: 5,
315
- };
316
- // ============================================
317
- // Fiat Purchase (On-Ramp)
318
- // ============================================
319
- export const FIAT_TRANSACTION_STATUS = {
320
- PENDING: 'PENDING',
321
- PROCESSING: 'PROCESSING',
322
- COMPLETED: 'COMPLETED',
323
- FAILED: 'FAILED',
324
- CANCELLED: 'CANCELLED',
325
- };
326
- export const FIAT_TRANSACTION_STATUS_LABELS = {
327
- [FIAT_TRANSACTION_STATUS.PENDING]: 'Pending',
328
- [FIAT_TRANSACTION_STATUS.PROCESSING]: 'Processing',
329
- [FIAT_TRANSACTION_STATUS.COMPLETED]: 'Completed',
330
- [FIAT_TRANSACTION_STATUS.FAILED]: 'Failed',
331
- [FIAT_TRANSACTION_STATUS.CANCELLED]: 'Cancelled',
332
- };
333
- export const FIAT_TRANSACTION_PROVIDER = {
334
- MOONPAY: 'MOONPAY',
335
- RAMP: 'RAMP',
336
- };
337
- export const FIAT_TRANSACTION_PROVIDER_LABELS = {
338
- [FIAT_TRANSACTION_PROVIDER.MOONPAY]: 'Moonpay',
339
- [FIAT_TRANSACTION_PROVIDER.RAMP]: 'Ramp Network',
340
- };
341
- export const PAYMENT_METHOD = {
342
- CARD: 'CARD',
343
- BANK_TRANSFER: 'BANK_TRANSFER',
344
- APPLE_PAY: 'APPLE_PAY',
345
- GOOGLE_PAY: 'GOOGLE_PAY',
346
- };
347
- export const PAYMENT_METHOD_LABELS = {
348
- [PAYMENT_METHOD.CARD]: 'Credit/Debit Card',
349
- [PAYMENT_METHOD.BANK_TRANSFER]: 'Bank Transfer',
350
- [PAYMENT_METHOD.APPLE_PAY]: 'Apple Pay',
351
- [PAYMENT_METHOD.GOOGLE_PAY]: 'Google Pay',
352
- };
353
87
  //# sourceMappingURL=wallets.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"wallets.js","sourceRoot":"","sources":["../../src/business/wallets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wallets.js","sourceRoot":"","sources":["../../src/business/wallets.ts"],"names":[],"mappings":"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"}