@dynamic-labs/utils 0.19.0-alpha.2 → 0.19.0-alpha.21

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 +293 -0
  2. package/package.json +7 -4
  3. package/src/CancellablePromise/CancellablePromise.cjs +128 -26
  4. package/src/CancellablePromise/CancellablePromise.d.ts +54 -9
  5. package/src/CancellablePromise/CancellablePromise.js +128 -26
  6. package/src/CancellablePromise/index.d.ts +1 -1
  7. package/src/bigIntToHex/bigIntToHex.cjs +15 -0
  8. package/src/bigIntToHex/bigIntToHex.d.ts +1 -0
  9. package/src/bigIntToHex/bigIntToHex.js +11 -0
  10. package/src/bigIntToHex/index.d.ts +1 -0
  11. package/src/bufferToBase64.cjs +5 -5
  12. package/src/bufferToBase64.d.ts +1 -1
  13. package/src/bufferToBase64.js +5 -5
  14. package/src/errors/AccountExistsError.cjs +6 -6
  15. package/src/errors/AccountExistsError.d.ts +13 -13
  16. package/src/errors/AccountExistsError.js +6 -6
  17. package/src/errors/ChainalysisError.cjs +5 -5
  18. package/src/errors/ChainalysisError.d.ts +5 -5
  19. package/src/errors/ChainalysisError.js +5 -5
  20. package/src/errors/CustomError.cjs +16 -16
  21. package/src/errors/CustomError.d.ts +11 -11
  22. package/src/errors/CustomError.js +16 -16
  23. package/src/errors/DynamicError.cjs +1 -1
  24. package/src/errors/DynamicError.d.ts +3 -3
  25. package/src/errors/DynamicError.js +1 -1
  26. package/src/errors/EmailAlreadyExistsError.cjs +4 -4
  27. package/src/errors/EmailAlreadyExistsError.d.ts +4 -4
  28. package/src/errors/EmailAlreadyExistsError.js +4 -4
  29. package/src/errors/EmailProviderError.cjs +4 -4
  30. package/src/errors/EmailProviderError.d.ts +4 -4
  31. package/src/errors/EmailProviderError.js +4 -4
  32. package/src/errors/EmailVerificationError.cjs +4 -4
  33. package/src/errors/EmailVerificationError.d.ts +4 -4
  34. package/src/errors/EmailVerificationError.js +4 -4
  35. package/src/errors/GateBlockedError.cjs +5 -5
  36. package/src/errors/GateBlockedError.d.ts +5 -5
  37. package/src/errors/GateBlockedError.js +5 -5
  38. package/src/errors/MissingEnvironmentIdError.cjs +4 -4
  39. package/src/errors/MissingEnvironmentIdError.d.ts +4 -4
  40. package/src/errors/MissingEnvironmentIdError.js +4 -4
  41. package/src/errors/NoAccessError.cjs +6 -6
  42. package/src/errors/NoAccessError.d.ts +9 -9
  43. package/src/errors/NoAccessError.js +6 -6
  44. package/src/errors/NotSupportedError.cjs +1 -1
  45. package/src/errors/NotSupportedError.d.ts +3 -3
  46. package/src/errors/NotSupportedError.js +1 -1
  47. package/src/errors/SocialAccountAlreadyExistsError.cjs +13 -0
  48. package/src/errors/SocialAccountAlreadyExistsError.d.ts +4 -0
  49. package/src/errors/SocialAccountAlreadyExistsError.js +9 -0
  50. package/src/errors/UserHasAccountWithEmailError.cjs +5 -5
  51. package/src/errors/UserHasAccountWithEmailError.d.ts +5 -5
  52. package/src/errors/UserHasAccountWithEmailError.js +5 -5
  53. package/src/errors/UsernameAlreadyExistsError.cjs +4 -4
  54. package/src/errors/UsernameAlreadyExistsError.d.ts +4 -4
  55. package/src/errors/UsernameAlreadyExistsError.js +4 -4
  56. package/src/errors/WalletNotDeployedError.cjs +4 -4
  57. package/src/errors/WalletNotDeployedError.d.ts +4 -4
  58. package/src/errors/WalletNotDeployedError.js +4 -4
  59. package/src/errors/WalletUsedError.cjs +4 -4
  60. package/src/errors/WalletUsedError.d.ts +4 -4
  61. package/src/errors/WalletUsedError.js +4 -4
  62. package/src/errors/index.d.ts +16 -15
  63. package/src/getOrMapViemChain.cjs +77 -0
  64. package/src/getOrMapViemChain.d.ts +11 -0
  65. package/src/getOrMapViemChain.js +51 -0
  66. package/src/getProvidersFromWindow.cjs +38 -0
  67. package/src/getProvidersFromWindow.d.ts +7 -0
  68. package/src/getProvidersFromWindow.js +34 -0
  69. package/src/index.cjs +22 -0
  70. package/src/index.d.ts +15 -8
  71. package/src/index.js +9 -1
  72. package/src/isBigInt/index.d.ts +1 -0
  73. package/src/isBigInt/isBigInt.cjs +7 -0
  74. package/src/isBigInt/isBigInt.d.ts +1 -0
  75. package/src/isBigInt/isBigInt.js +3 -0
  76. package/src/isFunction/index.d.ts +1 -1
  77. package/src/isFunction/isFunction.cjs +1 -1
  78. package/src/isFunction/isFunction.d.ts +1 -1
  79. package/src/isFunction/isFunction.js +1 -1
  80. package/src/isMobile.cjs +122 -56
  81. package/src/isMobile.d.ts +18 -15
  82. package/src/isMobile.js +120 -57
  83. package/src/last.cjs +21 -0
  84. package/src/last.d.ts +15 -0
  85. package/src/last.js +17 -0
  86. package/src/localStorageAsync.cjs +17 -17
  87. package/src/localStorageAsync.d.ts +3 -3
  88. package/src/localStorageAsync.js +17 -17
  89. package/src/logger/index.d.ts +1 -0
  90. package/src/logger/logger.cjs +9 -0
  91. package/src/logger/logger.d.ts +2 -0
  92. package/src/logger/logger.js +5 -0
  93. package/src/parseChainId.d.ts +1 -1
  94. package/src/parseEvmNetworks.cjs +6 -6
  95. package/src/parseEvmNetworks.d.ts +2 -2
  96. package/src/parseEvmNetworks.js +6 -6
  97. package/src/retryableFn.cjs +53 -0
  98. package/src/retryableFn.d.ts +14 -0
  99. package/src/retryableFn.js +48 -0
  100. package/src/sleep/index.d.ts +1 -0
  101. package/src/sleep/sleep.cjs +12 -0
  102. package/src/sleep/sleep.d.ts +11 -0
  103. package/src/sleep/sleep.js +8 -0
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class MissingEnvironmentIdError extends DynamicError.DynamicError {
8
- constructor() {
9
- super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
10
- }
7
+ class MissingEnvironmentIdError extends DynamicError.DynamicError {
8
+ constructor() {
9
+ super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
10
+ }
11
11
  }
12
12
 
13
13
  exports.MissingEnvironmentIdError = MissingEnvironmentIdError;
@@ -1,4 +1,4 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class MissingEnvironmentIdError extends DynamicError {
3
- constructor();
4
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class MissingEnvironmentIdError extends DynamicError {
3
+ constructor();
4
+ }
@@ -1,9 +1,9 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class MissingEnvironmentIdError extends DynamicError {
4
- constructor() {
5
- super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
6
- }
3
+ class MissingEnvironmentIdError extends DynamicError {
4
+ constructor() {
5
+ super('You are missing the environmentId field in yours DynamicContextProvider settings prop');
6
+ }
7
7
  }
8
8
 
9
9
  export { MissingEnvironmentIdError };
@@ -4,12 +4,12 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class NoAccessError extends DynamicError.DynamicError {
8
- constructor({ walletPublicKey, email, }) {
9
- super('User does not have access');
10
- this.email = email;
11
- this.walletPublicKey = walletPublicKey;
12
- }
7
+ class NoAccessError extends DynamicError.DynamicError {
8
+ constructor({ walletPublicKey, email, }) {
9
+ super('User does not have access');
10
+ this.email = email;
11
+ this.walletPublicKey = walletPublicKey;
12
+ }
13
13
  }
14
14
 
15
15
  exports.NoAccessError = NoAccessError;
@@ -1,9 +1,9 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class NoAccessError extends DynamicError {
3
- walletPublicKey?: string;
4
- email?: string;
5
- constructor({ walletPublicKey, email, }: {
6
- email?: string;
7
- walletPublicKey?: string;
8
- });
9
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class NoAccessError extends DynamicError {
3
+ walletPublicKey?: string;
4
+ email?: string;
5
+ constructor({ walletPublicKey, email, }: {
6
+ email?: string;
7
+ walletPublicKey?: string;
8
+ });
9
+ }
@@ -1,11 +1,11 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class NoAccessError extends DynamicError {
4
- constructor({ walletPublicKey, email, }) {
5
- super('User does not have access');
6
- this.email = email;
7
- this.walletPublicKey = walletPublicKey;
8
- }
3
+ class NoAccessError extends DynamicError {
4
+ constructor({ walletPublicKey, email, }) {
5
+ super('User does not have access');
6
+ this.email = email;
7
+ this.walletPublicKey = walletPublicKey;
8
+ }
9
9
  }
10
10
 
11
11
  export { NoAccessError };
@@ -4,7 +4,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class NotSupportedError extends DynamicError.DynamicError {
7
+ class NotSupportedError extends DynamicError.DynamicError {
8
8
  }
9
9
 
10
10
  exports.NotSupportedError = NotSupportedError;
@@ -1,3 +1,3 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class NotSupportedError extends DynamicError {
3
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class NotSupportedError extends DynamicError {
3
+ }
@@ -1,6 +1,6 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class NotSupportedError extends DynamicError {
3
+ class NotSupportedError extends DynamicError {
4
4
  }
5
5
 
6
6
  export { NotSupportedError };
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var DynamicError = require('./DynamicError.cjs');
6
+
7
+ class SocialAccountAlreadyExistsError extends DynamicError.DynamicError {
8
+ constructor() {
9
+ super('Social account already exists');
10
+ }
11
+ }
12
+
13
+ exports.SocialAccountAlreadyExistsError = SocialAccountAlreadyExistsError;
@@ -0,0 +1,4 @@
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class SocialAccountAlreadyExistsError extends DynamicError {
3
+ constructor();
4
+ }
@@ -0,0 +1,9 @@
1
+ import { DynamicError } from './DynamicError.js';
2
+
3
+ class SocialAccountAlreadyExistsError extends DynamicError {
4
+ constructor() {
5
+ super('Social account already exists');
6
+ }
7
+ }
8
+
9
+ export { SocialAccountAlreadyExistsError };
@@ -4,11 +4,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class UserHasAccountWithEmailError extends DynamicError.DynamicError {
8
- constructor(error) {
9
- super(error);
10
- this.error = error;
11
- }
7
+ class UserHasAccountWithEmailError extends DynamicError.DynamicError {
8
+ constructor(error) {
9
+ super(error);
10
+ this.error = error;
11
+ }
12
12
  }
13
13
 
14
14
  exports.UserHasAccountWithEmailError = UserHasAccountWithEmailError;
@@ -1,5 +1,5 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class UserHasAccountWithEmailError extends DynamicError {
3
- error: string;
4
- constructor(error: string);
5
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class UserHasAccountWithEmailError extends DynamicError {
3
+ error: string;
4
+ constructor(error: string);
5
+ }
@@ -1,10 +1,10 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class UserHasAccountWithEmailError extends DynamicError {
4
- constructor(error) {
5
- super(error);
6
- this.error = error;
7
- }
3
+ class UserHasAccountWithEmailError extends DynamicError {
4
+ constructor(error) {
5
+ super(error);
6
+ this.error = error;
7
+ }
8
8
  }
9
9
 
10
10
  export { UserHasAccountWithEmailError };
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class UsernameAlreadyExistsError extends DynamicError.DynamicError {
8
- constructor() {
9
- super('Username already exists');
10
- }
7
+ class UsernameAlreadyExistsError extends DynamicError.DynamicError {
8
+ constructor() {
9
+ super('Username already exists');
10
+ }
11
11
  }
12
12
 
13
13
  exports.UsernameAlreadyExistsError = UsernameAlreadyExistsError;
@@ -1,4 +1,4 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class UsernameAlreadyExistsError extends DynamicError {
3
- constructor();
4
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class UsernameAlreadyExistsError extends DynamicError {
3
+ constructor();
4
+ }
@@ -1,9 +1,9 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class UsernameAlreadyExistsError extends DynamicError {
4
- constructor() {
5
- super('Username already exists');
6
- }
3
+ class UsernameAlreadyExistsError extends DynamicError {
4
+ constructor() {
5
+ super('Username already exists');
6
+ }
7
7
  }
8
8
 
9
9
  export { UsernameAlreadyExistsError };
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class WalletNotDeployedError extends DynamicError.DynamicError {
8
- constructor() {
9
- super('Wallet has not been deployed', 'wallet_not_deployed');
10
- }
7
+ class WalletNotDeployedError extends DynamicError.DynamicError {
8
+ constructor() {
9
+ super('Wallet has not been deployed', 'wallet_not_deployed');
10
+ }
11
11
  }
12
12
 
13
13
  exports.WalletNotDeployedError = WalletNotDeployedError;
@@ -1,4 +1,4 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class WalletNotDeployedError extends DynamicError {
3
- constructor();
4
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class WalletNotDeployedError extends DynamicError {
3
+ constructor();
4
+ }
@@ -1,9 +1,9 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class WalletNotDeployedError extends DynamicError {
4
- constructor() {
5
- super('Wallet has not been deployed', 'wallet_not_deployed');
6
- }
3
+ class WalletNotDeployedError extends DynamicError {
4
+ constructor() {
5
+ super('Wallet has not been deployed', 'wallet_not_deployed');
6
+ }
7
7
  }
8
8
 
9
9
  export { WalletNotDeployedError };
@@ -4,10 +4,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var DynamicError = require('./DynamicError.cjs');
6
6
 
7
- class WalletUsedError extends DynamicError.DynamicError {
8
- constructor(code) {
9
- super('WalletUsedError', code);
10
- }
7
+ class WalletUsedError extends DynamicError.DynamicError {
8
+ constructor(code) {
9
+ super('WalletUsedError', code);
10
+ }
11
11
  }
12
12
 
13
13
  exports.WalletUsedError = WalletUsedError;
@@ -1,4 +1,4 @@
1
- import { DynamicError } from './DynamicError';
2
- export declare class WalletUsedError extends DynamicError {
3
- constructor(code: string);
4
- }
1
+ import { DynamicError } from './DynamicError';
2
+ export declare class WalletUsedError extends DynamicError {
3
+ constructor(code: string);
4
+ }
@@ -1,9 +1,9 @@
1
1
  import { DynamicError } from './DynamicError.js';
2
2
 
3
- class WalletUsedError extends DynamicError {
4
- constructor(code) {
5
- super('WalletUsedError', code);
6
- }
3
+ class WalletUsedError extends DynamicError {
4
+ constructor(code) {
5
+ super('WalletUsedError', code);
6
+ }
7
7
  }
8
8
 
9
9
  export { WalletUsedError };
@@ -1,15 +1,16 @@
1
- export * from './AccountExistsError';
2
- export * from './ChainalysisError';
3
- export * from './CustomError';
4
- export * from './DynamicError';
5
- export * from './EmailAlreadyExistsError';
6
- export * from './EmailVerificationError';
7
- export * from './NoAccessError';
8
- export * from './NotSupportedError';
9
- export * from './UsernameAlreadyExistsError';
10
- export * from './WalletNotDeployedError';
11
- export * from './WalletUsedError';
12
- export * from './EmailProviderError';
13
- export * from './MissingEnvironmentIdError';
14
- export * from './GateBlockedError';
15
- export * from './UserHasAccountWithEmailError';
1
+ export * from './AccountExistsError';
2
+ export * from './ChainalysisError';
3
+ export * from './CustomError';
4
+ export * from './DynamicError';
5
+ export * from './EmailAlreadyExistsError';
6
+ export * from './EmailVerificationError';
7
+ export * from './NoAccessError';
8
+ export * from './NotSupportedError';
9
+ export * from './UsernameAlreadyExistsError';
10
+ export * from './WalletNotDeployedError';
11
+ export * from './WalletUsedError';
12
+ export * from './EmailProviderError';
13
+ export * from './MissingEnvironmentIdError';
14
+ export * from './GateBlockedError';
15
+ export * from './UserHasAccountWithEmailError';
16
+ export * from './SocialAccountAlreadyExistsError';
@@ -0,0 +1,77 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var chains = require('viem/chains');
6
+
7
+ function _interopNamespace(e) {
8
+ if (e && e.__esModule) return e;
9
+ var n = Object.create(null);
10
+ if (e) {
11
+ Object.keys(e).forEach(function (k) {
12
+ if (k !== 'default') {
13
+ var d = Object.getOwnPropertyDescriptor(e, k);
14
+ Object.defineProperty(n, k, d.get ? d : {
15
+ enumerable: true,
16
+ get: function () { return e[k]; }
17
+ });
18
+ }
19
+ });
20
+ }
21
+ n["default"] = e;
22
+ return Object.freeze(n);
23
+ }
24
+
25
+ var chains__namespace = /*#__PURE__*/_interopNamespace(chains);
26
+
27
+ // eslint-disable-next-line import/no-namespace
28
+ /**
29
+ * Gets the chain object for the given chain id.
30
+ * @param chainId - Chain id of the target EVM chain.
31
+ * @returns Viem's chain object.
32
+ */
33
+ const getChain = (chainId) => {
34
+ for (const chain of Object.values(chains__namespace)) {
35
+ if ('id' in chain) {
36
+ if (chain.id === chainId) {
37
+ return chain;
38
+ }
39
+ }
40
+ }
41
+ throw new Error(`Chain with id ${chainId} not found`);
42
+ };
43
+ const mapChain = (network) => {
44
+ var _a;
45
+ return ({
46
+ blockExplorers: ((_a = network.blockExplorerUrls) === null || _a === void 0 ? void 0 : _a[0])
47
+ ? {
48
+ default: {
49
+ name: network.blockExplorerUrls[0],
50
+ url: network.blockExplorerUrls[0],
51
+ },
52
+ }
53
+ : undefined,
54
+ id: network.chainId,
55
+ name: network.vanityName || network.chainName,
56
+ nativeCurrency: network.nativeCurrency,
57
+ network: network.chainName,
58
+ rpcUrls: {
59
+ default: { http: network.rpcUrls },
60
+ public: { http: network.rpcUrls },
61
+ },
62
+ });
63
+ };
64
+ const getOrMapViemChain = (network) => {
65
+ let chain;
66
+ try {
67
+ chain = getChain(network.chainId);
68
+ }
69
+ catch (_a) {
70
+ chain = mapChain(network);
71
+ }
72
+ return chain;
73
+ };
74
+
75
+ exports.getChain = getChain;
76
+ exports.getOrMapViemChain = getOrMapViemChain;
77
+ exports.mapChain = mapChain;
@@ -0,0 +1,11 @@
1
+ import { Chain } from 'viem';
2
+ import * as chains from 'viem/chains';
3
+ import { EvmNetwork } from '@dynamic-labs/types';
4
+ /**
5
+ * Gets the chain object for the given chain id.
6
+ * @param chainId - Chain id of the target EVM chain.
7
+ * @returns Viem's chain object.
8
+ */
9
+ export declare const getChain: (chainId: number) => chains.Chain;
10
+ export declare const mapChain: (network: EvmNetwork) => Chain;
11
+ export declare const getOrMapViemChain: (network: EvmNetwork) => Chain;
@@ -0,0 +1,51 @@
1
+ import * as chains from 'viem/chains';
2
+
3
+ // eslint-disable-next-line import/no-namespace
4
+ /**
5
+ * Gets the chain object for the given chain id.
6
+ * @param chainId - Chain id of the target EVM chain.
7
+ * @returns Viem's chain object.
8
+ */
9
+ const getChain = (chainId) => {
10
+ for (const chain of Object.values(chains)) {
11
+ if ('id' in chain) {
12
+ if (chain.id === chainId) {
13
+ return chain;
14
+ }
15
+ }
16
+ }
17
+ throw new Error(`Chain with id ${chainId} not found`);
18
+ };
19
+ const mapChain = (network) => {
20
+ var _a;
21
+ return ({
22
+ blockExplorers: ((_a = network.blockExplorerUrls) === null || _a === void 0 ? void 0 : _a[0])
23
+ ? {
24
+ default: {
25
+ name: network.blockExplorerUrls[0],
26
+ url: network.blockExplorerUrls[0],
27
+ },
28
+ }
29
+ : undefined,
30
+ id: network.chainId,
31
+ name: network.vanityName || network.chainName,
32
+ nativeCurrency: network.nativeCurrency,
33
+ network: network.chainName,
34
+ rpcUrls: {
35
+ default: { http: network.rpcUrls },
36
+ public: { http: network.rpcUrls },
37
+ },
38
+ });
39
+ };
40
+ const getOrMapViemChain = (network) => {
41
+ let chain;
42
+ try {
43
+ chain = getChain(network.chainId);
44
+ }
45
+ catch (_a) {
46
+ chain = mapChain(network);
47
+ }
48
+ return chain;
49
+ };
50
+
51
+ export { getChain, getOrMapViemChain, mapChain };
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ /**
6
+ * return the destination (value)
7
+ *
8
+ * @param {string} path - path in the obj to the item
9
+ * @returns {T[]} - array of found items
10
+ */
11
+ const getProvidersFromWindow = (path) => {
12
+ const splitPath = path.split('.');
13
+ let result = window;
14
+ const foundProviders = [];
15
+ for (const [index, p] of Object.entries(splitPath)) {
16
+ result = result[p];
17
+ if (typeof result !== 'object' || result === null) {
18
+ return [];
19
+ }
20
+ // we need to check if we have hit the end of the requested path
21
+ if (Number(index) === splitPath.length - 1) {
22
+ if (Array.isArray(result)) {
23
+ result.forEach((p) => foundProviders.push(p));
24
+ }
25
+ else {
26
+ if (result.providers) {
27
+ result.providers.forEach((p) => foundProviders.push(p));
28
+ }
29
+ else {
30
+ foundProviders.push(result);
31
+ }
32
+ }
33
+ }
34
+ }
35
+ return foundProviders;
36
+ };
37
+
38
+ exports.getProvidersFromWindow = getProvidersFromWindow;
@@ -0,0 +1,7 @@
1
+ /**
2
+ * return the destination (value)
3
+ *
4
+ * @param {string} path - path in the obj to the item
5
+ * @returns {T[]} - array of found items
6
+ */
7
+ export declare const getProvidersFromWindow: <T>(path: string) => T[];
@@ -0,0 +1,34 @@
1
+ /**
2
+ * return the destination (value)
3
+ *
4
+ * @param {string} path - path in the obj to the item
5
+ * @returns {T[]} - array of found items
6
+ */
7
+ const getProvidersFromWindow = (path) => {
8
+ const splitPath = path.split('.');
9
+ let result = window;
10
+ const foundProviders = [];
11
+ for (const [index, p] of Object.entries(splitPath)) {
12
+ result = result[p];
13
+ if (typeof result !== 'object' || result === null) {
14
+ return [];
15
+ }
16
+ // we need to check if we have hit the end of the requested path
17
+ if (Number(index) === splitPath.length - 1) {
18
+ if (Array.isArray(result)) {
19
+ result.forEach((p) => foundProviders.push(p));
20
+ }
21
+ else {
22
+ if (result.providers) {
23
+ result.providers.forEach((p) => foundProviders.push(p));
24
+ }
25
+ else {
26
+ foundProviders.push(result);
27
+ }
28
+ }
29
+ }
30
+ }
31
+ return foundProviders;
32
+ };
33
+
34
+ export { getProvidersFromWindow };
package/src/index.cjs CHANGED
@@ -19,11 +19,19 @@ var EmailProviderError = require('./errors/EmailProviderError.cjs');
19
19
  var MissingEnvironmentIdError = require('./errors/MissingEnvironmentIdError.cjs');
20
20
  var GateBlockedError = require('./errors/GateBlockedError.cjs');
21
21
  var UserHasAccountWithEmailError = require('./errors/UserHasAccountWithEmailError.cjs');
22
+ var SocialAccountAlreadyExistsError = require('./errors/SocialAccountAlreadyExistsError.cjs');
22
23
  var CancellablePromise = require('./CancellablePromise/CancellablePromise.cjs');
23
24
  var isFunction = require('./isFunction/isFunction.cjs');
24
25
  var isMobile = require('./isMobile.cjs');
25
26
  var localStorageAsync = require('./localStorageAsync.cjs');
26
27
  var bufferToBase64 = require('./bufferToBase64.cjs');
28
+ var last = require('./last.cjs');
29
+ var getProvidersFromWindow = require('./getProvidersFromWindow.cjs');
30
+ var sleep = require('./sleep/sleep.cjs');
31
+ var getOrMapViemChain = require('./getOrMapViemChain.cjs');
32
+ var bigIntToHex = require('./bigIntToHex/bigIntToHex.cjs');
33
+ var isBigInt = require('./isBigInt/isBigInt.cjs');
34
+ var retryableFn = require('./retryableFn.cjs');
27
35
 
28
36
 
29
37
 
@@ -44,16 +52,30 @@ exports.EmailProviderError = EmailProviderError.EmailProviderError;
44
52
  exports.MissingEnvironmentIdError = MissingEnvironmentIdError.MissingEnvironmentIdError;
45
53
  exports.GateBlockedError = GateBlockedError.GateBlockedError;
46
54
  exports.UserHasAccountWithEmailError = UserHasAccountWithEmailError.UserHasAccountWithEmailError;
55
+ exports.SocialAccountAlreadyExistsError = SocialAccountAlreadyExistsError.SocialAccountAlreadyExistsError;
47
56
  exports.CancellablePromise = CancellablePromise.CancellablePromise;
48
57
  exports.isFunction = isFunction.isFunction;
58
+ exports.getAndroidVersion = isMobile.getAndroidVersion;
49
59
  exports.isAndroid = isMobile.isAndroid;
50
60
  exports.isIOS = isMobile.isIOS;
51
61
  exports.isIPad = isMobile.isIPad;
52
62
  exports.isIPhone = isMobile.isIPhone;
63
+ exports.isIPhone8OrEarlier = isMobile.isIPhone8OrEarlier;
53
64
  exports.isLegacySafari = isMobile.isLegacySafari;
54
65
  exports.isMobile = isMobile.isMobile;
55
66
  exports.isSamsungBrowser = isMobile.isSamsungBrowser;
67
+ exports.isWindows = isMobile.isWindows;
56
68
  exports.getItemAsync = localStorageAsync.getItemAsync;
57
69
  exports.removeItemAsync = localStorageAsync.removeItemAsync;
58
70
  exports.setItemAsync = localStorageAsync.setItemAsync;
59
71
  exports.bufferToBase64 = bufferToBase64.bufferToBase64;
72
+ exports.last = last.last;
73
+ exports.getProvidersFromWindow = getProvidersFromWindow.getProvidersFromWindow;
74
+ exports.sleep = sleep.sleep;
75
+ exports.getChain = getOrMapViemChain.getChain;
76
+ exports.getOrMapViemChain = getOrMapViemChain.getOrMapViemChain;
77
+ exports.mapChain = getOrMapViemChain.mapChain;
78
+ exports.bigIntToHex = bigIntToHex.bigIntToHex;
79
+ exports.isBigInt = isBigInt.isBigInt;
80
+ exports.FALLBACK_UNDEFINED = retryableFn.FALLBACK_UNDEFINED;
81
+ exports.retryableFn = retryableFn.retryableFn;