@dynamic-labs/utils 4.0.0-alpha.9 → 4.0.1

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 (122) hide show
  1. package/CHANGELOG.md +496 -1
  2. package/package.cjs +1 -1
  3. package/package.js +1 -1
  4. package/package.json +5 -5
  5. package/src/bufferToBase64/index.d.ts +1 -0
  6. package/src/eip6963/eip6963Provider.cjs +15 -4
  7. package/src/eip6963/eip6963Provider.d.ts +8 -3
  8. package/src/eip6963/eip6963Provider.js +14 -5
  9. package/src/encryption/convertPublicKeyCryptoKeyToHex/convertPublicKeyCryptoKeyToHex.cjs +31 -0
  10. package/src/encryption/convertPublicKeyCryptoKeyToHex/convertPublicKeyCryptoKeyToHex.d.ts +11 -0
  11. package/src/encryption/convertPublicKeyCryptoKeyToHex/convertPublicKeyCryptoKeyToHex.js +27 -0
  12. package/src/encryption/convertPublicKeyCryptoKeyToHex/index.d.ts +1 -0
  13. package/src/encryption/convertPublicKeyHexToCryptoKey/convertPublicKeyHexToCryptoKey.cjs +35 -0
  14. package/src/encryption/convertPublicKeyHexToCryptoKey/convertPublicKeyHexToCryptoKey.d.ts +8 -0
  15. package/src/encryption/convertPublicKeyHexToCryptoKey/convertPublicKeyHexToCryptoKey.js +31 -0
  16. package/src/encryption/convertPublicKeyHexToCryptoKey/index.d.ts +1 -0
  17. package/src/encryption/createKeyPair/createKeyPair.cjs +27 -0
  18. package/src/encryption/createKeyPair/createKeyPair.d.ts +9 -0
  19. package/src/encryption/createKeyPair/createKeyPair.js +23 -0
  20. package/src/encryption/createKeyPair/index.d.ts +1 -0
  21. package/src/encryption/decryptMessage/decryptMessage.cjs +48 -0
  22. package/src/encryption/decryptMessage/decryptMessage.d.ts +9 -0
  23. package/src/encryption/decryptMessage/decryptMessage.js +44 -0
  24. package/src/encryption/decryptMessage/index.d.ts +1 -0
  25. package/src/encryption/deriveSharedSecret/deriveSharedSecret.cjs +28 -0
  26. package/src/encryption/deriveSharedSecret/deriveSharedSecret.d.ts +10 -0
  27. package/src/encryption/deriveSharedSecret/deriveSharedSecret.js +24 -0
  28. package/src/encryption/deriveSharedSecret/index.d.ts +1 -0
  29. package/src/encryption/encryptMessage/encryptMessage.cjs +42 -0
  30. package/src/encryption/encryptMessage/encryptMessage.d.ts +13 -0
  31. package/src/encryption/encryptMessage/encryptMessage.js +38 -0
  32. package/src/encryption/encryptMessage/index.d.ts +1 -0
  33. package/src/encryption/index.d.ts +7 -0
  34. package/src/encryption/isEncryptedMessage/index.d.ts +1 -0
  35. package/src/encryption/isEncryptedMessage/isEncryptedMessage.cjs +28 -0
  36. package/src/encryption/isEncryptedMessage/isEncryptedMessage.d.ts +7 -0
  37. package/src/encryption/isEncryptedMessage/isEncryptedMessage.js +24 -0
  38. package/src/eventTimeline/eventTimeline.cjs +41 -0
  39. package/src/eventTimeline/eventTimeline.d.ts +18 -0
  40. package/src/eventTimeline/eventTimeline.js +37 -0
  41. package/src/eventTimeline/index.d.ts +1 -0
  42. package/src/getProvidersFromWindow/index.d.ts +1 -0
  43. package/src/handleMobileWalletRedirect/handleMobileWalletRedirect.cjs +1 -1
  44. package/src/handleMobileWalletRedirect/handleMobileWalletRedirect.js +1 -1
  45. package/src/index.cjs +85 -49
  46. package/src/index.d.ts +33 -24
  47. package/src/index.js +41 -25
  48. package/src/isInIframe/index.d.ts +1 -0
  49. package/src/isInIframe/isInIframe.cjs +8 -0
  50. package/src/isInIframe/isInIframe.d.ts +1 -0
  51. package/src/isInIframe/isInIframe.js +4 -0
  52. package/src/isLedgerAddressViaVerifiedCredentials/index.d.ts +1 -0
  53. package/src/isMobile/index.d.ts +1 -0
  54. package/src/isString/index.d.ts +1 -0
  55. package/src/isString/isString.cjs +8 -0
  56. package/src/isString/isString.d.ts +1 -0
  57. package/src/isString/isString.js +4 -0
  58. package/src/last/index.d.ts +1 -0
  59. package/src/localStorageAsync/index.d.ts +1 -0
  60. package/src/{localStorageAsync.cjs → localStorageAsync/localStorageAsync.cjs} +1 -1
  61. package/src/{localStorageAsync.js → localStorageAsync/localStorageAsync.js} +1 -1
  62. package/src/parseChainId/index.d.ts +1 -0
  63. package/src/parseIntSafe/index.d.ts +1 -0
  64. package/src/parseIntSafe/parseIntSafe.cjs +23 -0
  65. package/src/parseIntSafe/parseIntSafe.d.ts +1 -0
  66. package/src/parseIntSafe/parseIntSafe.js +19 -0
  67. package/src/parseNetworks/index.d.ts +1 -0
  68. package/src/{parseEvmNetworks.cjs → parseNetworks/parseNetworks.cjs} +3 -1
  69. package/src/parseNetworks/parseNetworks.d.ts +3 -0
  70. package/src/{parseEvmNetworks.js → parseNetworks/parseNetworks.js} +3 -2
  71. package/src/retryableFn/index.d.ts +1 -0
  72. package/src/{retryableFn.cjs → retryableFn/retryableFn.cjs} +3 -18
  73. package/src/{retryableFn.d.ts → retryableFn/retryableFn.d.ts} +0 -3
  74. package/src/{retryableFn.js → retryableFn/retryableFn.js} +3 -18
  75. package/src/sanitizeName/index.d.ts +1 -0
  76. package/src/sanitizeName/sanitizeName.cjs +8 -0
  77. package/src/sanitizeName/sanitizeName.d.ts +1 -0
  78. package/src/sanitizeName/sanitizeName.js +4 -0
  79. package/src/services/Oauth2Service/Oauth2Service.d.ts +0 -1
  80. package/src/services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.cjs +9 -1
  81. package/src/services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.js +9 -1
  82. package/src/services/StorageService/StorageService.d.ts +1 -1
  83. package/src/services/StorageService/applyPostfixToStorageService/applyPostfixToStorageService.cjs +11 -0
  84. package/src/services/StorageService/applyPostfixToStorageService/applyPostfixToStorageService.d.ts +7 -0
  85. package/src/services/StorageService/applyPostfixToStorageService/applyPostfixToStorageService.js +7 -0
  86. package/src/services/StorageService/applyPostfixToStorageService/index.d.ts +1 -0
  87. package/src/services/StorageService/createStorageService/createStorageService.cjs +4 -5
  88. package/src/services/StorageService/createStorageService/createStorageService.d.ts +1 -2
  89. package/src/services/StorageService/createStorageService/createStorageService.js +4 -5
  90. package/src/services/StorageService/index.d.ts +1 -0
  91. package/src/services/StorageService/types.d.ts +1 -1
  92. package/src/solToLamports/index.d.ts +1 -0
  93. package/src/solToLamports/solToLamports.cjs +11 -0
  94. package/src/solToLamports/solToLamports.d.ts +1 -0
  95. package/src/solToLamports/solToLamports.js +7 -0
  96. package/src/uint8ArrayToBase64/index.d.ts +1 -0
  97. package/src/uint8ArrayToBase64/uint8ArrayToBase64.cjs +32 -0
  98. package/src/uint8ArrayToBase64/uint8ArrayToBase64.d.ts +24 -0
  99. package/src/uint8ArrayToBase64/uint8ArrayToBase64.js +27 -0
  100. package/src/parseEvmNetworks.d.ts +0 -2
  101. /package/src/{bufferPolyfill.cjs → bufferToBase64/bufferPolyfill.cjs} +0 -0
  102. /package/src/{bufferPolyfill.d.ts → bufferToBase64/bufferPolyfill.d.ts} +0 -0
  103. /package/src/{bufferPolyfill.js → bufferToBase64/bufferPolyfill.js} +0 -0
  104. /package/src/{bufferToBase64.cjs → bufferToBase64/bufferToBase64.cjs} +0 -0
  105. /package/src/{bufferToBase64.d.ts → bufferToBase64/bufferToBase64.d.ts} +0 -0
  106. /package/src/{bufferToBase64.js → bufferToBase64/bufferToBase64.js} +0 -0
  107. /package/src/{getProvidersFromWindow.cjs → getProvidersFromWindow/getProvidersFromWindow.cjs} +0 -0
  108. /package/src/{getProvidersFromWindow.d.ts → getProvidersFromWindow/getProvidersFromWindow.d.ts} +0 -0
  109. /package/src/{getProvidersFromWindow.js → getProvidersFromWindow/getProvidersFromWindow.js} +0 -0
  110. /package/src/{isLedgerAddressViaVerifiedCredentials.cjs → isLedgerAddressViaVerifiedCredentials/isLedgerAddressViaVerifiedCredentials.cjs} +0 -0
  111. /package/src/{isLedgerAddressViaVerifiedCredentials.d.ts → isLedgerAddressViaVerifiedCredentials/isLedgerAddressViaVerifiedCredentials.d.ts} +0 -0
  112. /package/src/{isLedgerAddressViaVerifiedCredentials.js → isLedgerAddressViaVerifiedCredentials/isLedgerAddressViaVerifiedCredentials.js} +0 -0
  113. /package/src/{isMobile.cjs → isMobile/isMobile.cjs} +0 -0
  114. /package/src/{isMobile.d.ts → isMobile/isMobile.d.ts} +0 -0
  115. /package/src/{isMobile.js → isMobile/isMobile.js} +0 -0
  116. /package/src/{last.cjs → last/last.cjs} +0 -0
  117. /package/src/{last.d.ts → last/last.d.ts} +0 -0
  118. /package/src/{last.js → last/last.js} +0 -0
  119. /package/src/{localStorageAsync.d.ts → localStorageAsync/localStorageAsync.d.ts} +0 -0
  120. /package/src/{parseChainId.cjs → parseChainId/parseChainId.cjs} +0 -0
  121. /package/src/{parseChainId.d.ts → parseChainId/parseChainId.d.ts} +0 -0
  122. /package/src/{parseChainId.js → parseChainId/parseChainId.js} +0 -0
@@ -0,0 +1,41 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ /**
7
+ * The EventTimeline is a utility that allows you to track the timeline of events
8
+ * that occur in your application. It is useful to post events and query when
9
+ * some event was last fired.
10
+ */
11
+ const createEventTimeline = () => {
12
+ // Map to store event names and their corresponding timestamps
13
+ const eventTimelines = new Map();
14
+ return {
15
+ clear: () => {
16
+ eventTimelines.clear();
17
+ },
18
+ isEventRecent: (eventName, timeSince) => {
19
+ const now = Date.now();
20
+ let timestamps = eventTimelines.get(eventName);
21
+ if (!timestamps) {
22
+ return false;
23
+ }
24
+ const cutoff = now - timeSince;
25
+ // Remove timestamps older than the cutoff time
26
+ timestamps = timestamps.filter((timestamp) => timestamp >= cutoff);
27
+ // Check if there are any timestamps within the timeframe
28
+ return timestamps.length > 0;
29
+ },
30
+ postEvent: (event) => {
31
+ var _a;
32
+ const now = Date.now();
33
+ if (!eventTimelines.has(event)) {
34
+ eventTimelines.set(event, []);
35
+ }
36
+ (_a = eventTimelines.get(event)) === null || _a === void 0 ? void 0 : _a.push(now);
37
+ },
38
+ };
39
+ };
40
+
41
+ exports.createEventTimeline = createEventTimeline;
@@ -0,0 +1,18 @@
1
+ export type EventTimeline<T extends string> = {
2
+ clear: () => void;
3
+ postEvent: (event: T) => void;
4
+ /**
5
+ * Checks if a specific event was fired within the given timeframe relative to the current time.
6
+ *
7
+ * @param {string} eventName - The name of the event to check.
8
+ * @param {number} timeSince - The timeframe in milliseconds.
9
+ * @returns {boolean} - Returns `true` if the event was fired within the given timeframe, otherwise `false`.
10
+ */
11
+ isEventRecent: (eventName: T, timeSince: number) => boolean;
12
+ };
13
+ /**
14
+ * The EventTimeline is a utility that allows you to track the timeline of events
15
+ * that occur in your application. It is useful to post events and query when
16
+ * some event was last fired.
17
+ */
18
+ export declare const createEventTimeline: <T extends string>() => EventTimeline<T>;
@@ -0,0 +1,37 @@
1
+ 'use client'
2
+ /**
3
+ * The EventTimeline is a utility that allows you to track the timeline of events
4
+ * that occur in your application. It is useful to post events and query when
5
+ * some event was last fired.
6
+ */
7
+ const createEventTimeline = () => {
8
+ // Map to store event names and their corresponding timestamps
9
+ const eventTimelines = new Map();
10
+ return {
11
+ clear: () => {
12
+ eventTimelines.clear();
13
+ },
14
+ isEventRecent: (eventName, timeSince) => {
15
+ const now = Date.now();
16
+ let timestamps = eventTimelines.get(eventName);
17
+ if (!timestamps) {
18
+ return false;
19
+ }
20
+ const cutoff = now - timeSince;
21
+ // Remove timestamps older than the cutoff time
22
+ timestamps = timestamps.filter((timestamp) => timestamp >= cutoff);
23
+ // Check if there are any timestamps within the timeframe
24
+ return timestamps.length > 0;
25
+ },
26
+ postEvent: (event) => {
27
+ var _a;
28
+ const now = Date.now();
29
+ if (!eventTimelines.has(event)) {
30
+ eventTimelines.set(event, []);
31
+ }
32
+ (_a = eventTimelines.get(event)) === null || _a === void 0 ? void 0 : _a.push(now);
33
+ },
34
+ };
35
+ };
36
+
37
+ export { createEventTimeline };
@@ -0,0 +1 @@
1
+ export { createEventTimeline, type EventTimeline } from './eventTimeline';
@@ -0,0 +1 @@
1
+ export * from './getProvidersFromWindow';
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var isMobile = require('../isMobile.cjs');
6
+ var isMobile = require('../isMobile/isMobile.cjs');
7
7
 
8
8
  const handleMobileWalletRedirect = ({ nativeLink, universalLink, }) => {
9
9
  const url = encodeURIComponent(window.location.toString());
@@ -1,5 +1,5 @@
1
1
  'use client'
2
- import { isSamsungBrowser } from '../isMobile.js';
2
+ import { isSamsungBrowser } from '../isMobile/isMobile.js';
3
3
 
4
4
  const handleMobileWalletRedirect = ({ nativeLink, universalLink, }) => {
5
5
  const url = encodeURIComponent(window.location.toString());
package/src/index.cjs CHANGED
@@ -5,8 +5,11 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
6
  var assertPackageVersion = require('@dynamic-labs/assert-package-version');
7
7
  var _package = require('../package.cjs');
8
- var parseChainId = require('./parseChainId.cjs');
9
- var parseEvmNetworks = require('./parseEvmNetworks.cjs');
8
+ var bufferToBase64 = require('./bufferToBase64/bufferToBase64.cjs');
9
+ var CancellablePromise = require('./CancellablePromise/CancellablePromise.cjs');
10
+ var ceil = require('./ceil/ceil.cjs');
11
+ var DeferredPromise = require('./DeferredPromise/DeferredPromise.cjs');
12
+ var eip6963Provider = require('./eip6963/eip6963Provider.cjs');
10
13
  var AccountExistsError = require('./errors/AccountExistsError.cjs');
11
14
  var ChainalysisError = require('./errors/ChainalysisError.cjs');
12
15
  var SandboxMaximumThresholdReachedError = require('./errors/SandboxMaximumThresholdReachedError.cjs');
@@ -44,45 +47,64 @@ var ExternalAuthError = require('./errors/ExternalAuthError.cjs');
44
47
  var WalletAddressMismatchError = require('./errors/WalletAddressMismatchError.cjs');
45
48
  var UserRejectedRequestError = require('./errors/UserRejectedRequestError.cjs');
46
49
  var InvalidEmbeddedWalletSessionKeyError = require('./errors/InvalidEmbeddedWalletSessionKeyError.cjs');
47
- var CancellablePromise = require('./CancellablePromise/CancellablePromise.cjs');
48
- var isFunction = require('./isFunction/isFunction.cjs');
49
- var isMobile = require('./isMobile.cjs');
50
- var localStorageAsync = require('./localStorageAsync.cjs');
51
- var bufferToBase64 = require('./bufferToBase64.cjs');
52
- var last = require('./last.cjs');
53
- var getProvidersFromWindow = require('./getProvidersFromWindow.cjs');
54
- var sleep = require('./sleep/sleep.cjs');
55
- var retryableFn = require('./retryableFn.cjs');
56
- var wrapMethodWithCallback = require('./wrapMethodWithCallback/wrapMethodWithCallback.cjs');
57
- var DeferredPromise = require('./DeferredPromise/DeferredPromise.cjs');
58
- var handleMobileWalletRedirect = require('./handleMobileWalletRedirect/handleMobileWalletRedirect.cjs');
59
- var uniq = require('./uniq/uniq.cjs');
50
+ var eventTimeline = require('./eventTimeline/eventTimeline.cjs');
51
+ var formatNumberText = require('./formatNumberText/formatNumberText.cjs');
52
+ var getProvidersFromWindow = require('./getProvidersFromWindow/getProvidersFromWindow.cjs');
60
53
  var getTLD = require('./getTLD/getTLD.cjs');
54
+ var handleMobileWalletRedirect = require('./handleMobileWalletRedirect/handleMobileWalletRedirect.cjs');
55
+ var isFunction = require('./isFunction/isFunction.cjs');
56
+ var isLedgerAddressViaVerifiedCredentials = require('./isLedgerAddressViaVerifiedCredentials/isLedgerAddressViaVerifiedCredentials.cjs');
57
+ var isMobile = require('./isMobile/isMobile.cjs');
58
+ var isString = require('./isString/isString.cjs');
59
+ var last = require('./last/last.cjs');
60
+ var localStorageAsync = require('./localStorageAsync/localStorageAsync.cjs');
61
+ var parseChainId = require('./parseChainId/parseChainId.cjs');
62
+ var parseIntSafe = require('./parseIntSafe/parseIntSafe.cjs');
63
+ var parseNetworks = require('./parseNetworks/parseNetworks.cjs');
61
64
  var pipe = require('./pipe/pipe.cjs');
62
- var formatNumberText = require('./formatNumberText/formatNumberText.cjs');
63
- var ceil = require('./ceil/ceil.cjs');
65
+ var retryableFn = require('./retryableFn/retryableFn.cjs');
66
+ var sanitizeName = require('./sanitizeName/sanitizeName.cjs');
67
+ var sleep = require('./sleep/sleep.cjs');
64
68
  var trimEnd = require('./trimEnd/trimEnd.cjs');
65
- var isLedgerAddressViaVerifiedCredentials = require('./isLedgerAddressViaVerifiedCredentials.cjs');
66
- var eip6963Provider = require('./eip6963/eip6963Provider.cjs');
69
+ var uniq = require('./uniq/uniq.cjs');
70
+ var wrapMethodWithCallback = require('./wrapMethodWithCallback/wrapMethodWithCallback.cjs');
71
+ var createKeyPair = require('./encryption/createKeyPair/createKeyPair.cjs');
72
+ var deriveSharedSecret = require('./encryption/deriveSharedSecret/deriveSharedSecret.cjs');
73
+ var convertPublicKeyCryptoKeyToHex = require('./encryption/convertPublicKeyCryptoKeyToHex/convertPublicKeyCryptoKeyToHex.cjs');
74
+ var convertPublicKeyHexToCryptoKey = require('./encryption/convertPublicKeyHexToCryptoKey/convertPublicKeyHexToCryptoKey.cjs');
75
+ var decryptMessage = require('./encryption/decryptMessage/decryptMessage.cjs');
76
+ var encryptMessage = require('./encryption/encryptMessage/encryptMessage.cjs');
77
+ var isEncryptedMessage = require('./encryption/isEncryptedMessage/isEncryptedMessage.cjs');
78
+ var uint8ArrayToBase64 = require('./uint8ArrayToBase64/uint8ArrayToBase64.cjs');
79
+ var cloneObjectWithOverrides = require('./cloneObjectWithOverrides/cloneObjectWithOverrides.cjs');
80
+ var get = require('./get/get.cjs');
81
+ var hexToString = require('./hexToString/hexToString.cjs');
82
+ var isHex = require('./isHex/isHex.cjs');
83
+ var isInIframe = require('./isInIframe/isInIframe.cjs');
84
+ var promiseWithTimeout = require('./promiseWithTimeout/promiseWithTimeout.cjs');
67
85
  var runSafe = require('./runSafe/runSafe.cjs');
86
+ var template = require('./template/template.cjs');
68
87
  var PlatformService = require('./services/PlatformService/PlatformService.cjs');
69
88
  var createBrowserPlatformService = require('./services/PlatformService/createBrowserPlatformService/createBrowserPlatformService.cjs');
70
89
  var FetchService = require('./services/FetchService/FetchService.cjs');
71
90
  var Oauth2Service = require('./services/Oauth2Service/Oauth2Service.cjs');
72
91
  var createWindowOauth2Service = require('./services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.cjs');
73
- var template = require('./template/template.cjs');
74
- var get = require('./get/get.cjs');
75
- var hexToString = require('./hexToString/hexToString.cjs');
76
- var isHex = require('./isHex/isHex.cjs');
77
92
  var StorageService = require('./services/StorageService/StorageService.cjs');
78
93
  var createStorageService = require('./services/StorageService/createStorageService/createStorageService.cjs');
79
- var cloneObjectWithOverrides = require('./cloneObjectWithOverrides/cloneObjectWithOverrides.cjs');
80
- var promiseWithTimeout = require('./promiseWithTimeout/promiseWithTimeout.cjs');
94
+ var applyPostfixToStorageService = require('./services/StorageService/applyPostfixToStorageService/applyPostfixToStorageService.cjs');
95
+ var connectWithAppleId = require('./services/Oauth2Service/utils/connectWithAppleId/connectWithAppleId.cjs');
96
+ var solToLamports = require('./solToLamports/solToLamports.cjs');
81
97
 
82
98
  assertPackageVersion.assertPackageVersion('@dynamic-labs/utils', _package.version);
83
99
 
84
- exports.parseChainId = parseChainId.parseChainId;
85
- exports.parseEvmNetworks = parseEvmNetworks.parseEvmNetworks;
100
+ exports.bufferToBase64 = bufferToBase64.bufferToBase64;
101
+ exports.CancellablePromise = CancellablePromise.CancellablePromise;
102
+ exports.ceil = ceil.ceil;
103
+ exports.DeferredPromise = DeferredPromise.DeferredPromise;
104
+ exports.Eip6963Provider = eip6963Provider.Eip6963Provider;
105
+ exports.Eip6963ProviderSingleton = eip6963Provider.Eip6963ProviderSingleton;
106
+ exports.isEip9693Event = eip6963Provider.isEip9693Event;
107
+ exports.listenToEip6963Events = eip6963Provider.listenToEip6963Events;
86
108
  exports.AccountExistsError = AccountExistsError.AccountExistsError;
87
109
  exports.ChainalysisError = ChainalysisError.ChainalysisError;
88
110
  exports.SandboxMaximumThresholdReachedError = SandboxMaximumThresholdReachedError.SandboxMaximumThresholdReachedError;
@@ -120,8 +142,13 @@ exports.ExternalAuthError = ExternalAuthError.ExternalAuthError;
120
142
  exports.WalletAddressMismatchError = WalletAddressMismatchError.WalletAddressMismatchError;
121
143
  exports.UserRejectedRequestError = UserRejectedRequestError.UserRejectedRequestError;
122
144
  exports.InvalidEmbeddedWalletSessionKeyError = InvalidEmbeddedWalletSessionKeyError.InvalidEmbeddedWalletSessionKeyError;
123
- exports.CancellablePromise = CancellablePromise.CancellablePromise;
145
+ exports.createEventTimeline = eventTimeline.createEventTimeline;
146
+ exports.formatNumberText = formatNumberText.formatNumberText;
147
+ exports.getProvidersFromWindow = getProvidersFromWindow.getProvidersFromWindow;
148
+ exports.getTLD = getTLD.getTLD;
149
+ exports.handleMobileWalletRedirect = handleMobileWalletRedirect.handleMobileWalletRedirect;
124
150
  exports.isFunction = isFunction.isFunction;
151
+ exports.isLedgerAddressViaVerifiedCredentials = isLedgerAddressViaVerifiedCredentials.isLedgerAddressViaVerifiedCredentials;
125
152
  exports.getAndroidVersion = isMobile.getAndroidVersion;
126
153
  exports.isAndroid = isMobile.isAndroid;
127
154
  exports.isIOS = isMobile.isIOS;
@@ -133,38 +160,47 @@ exports.isMobile = isMobile.isMobile;
133
160
  exports.isSafariBrowser = isMobile.isSafariBrowser;
134
161
  exports.isSamsungBrowser = isMobile.isSamsungBrowser;
135
162
  exports.isWindows = isMobile.isWindows;
163
+ exports.isString = isString.isString;
164
+ exports.last = last.last;
136
165
  exports.getItemAsync = localStorageAsync.getItemAsync;
137
166
  exports.removeItemAsync = localStorageAsync.removeItemAsync;
138
167
  exports.setItemAsync = localStorageAsync.setItemAsync;
139
- exports.bufferToBase64 = bufferToBase64.bufferToBase64;
140
- exports.last = last.last;
141
- exports.getProvidersFromWindow = getProvidersFromWindow.getProvidersFromWindow;
142
- exports.sleep = sleep.sleep;
168
+ exports.parseChainId = parseChainId.parseChainId;
169
+ exports.parseIntSafe = parseIntSafe.parseIntSafe;
170
+ exports.parseCosmosNetworks = parseNetworks.parseCosmosNetworks;
171
+ exports.parseEvmNetworks = parseNetworks.parseEvmNetworks;
172
+ exports.pipe = pipe.pipe;
143
173
  exports.FALLBACK_UNDEFINED = retryableFn.FALLBACK_UNDEFINED;
144
174
  exports.retryableFn = retryableFn.retryableFn;
145
- exports.wrapMethodWithCallback = wrapMethodWithCallback.wrapMethodWithCallback;
146
- exports.DeferredPromise = DeferredPromise.DeferredPromise;
147
- exports.handleMobileWalletRedirect = handleMobileWalletRedirect.handleMobileWalletRedirect;
148
- exports.uniq = uniq.uniq;
149
- exports.getTLD = getTLD.getTLD;
150
- exports.pipe = pipe.pipe;
151
- exports.formatNumberText = formatNumberText.formatNumberText;
152
- exports.ceil = ceil.ceil;
175
+ exports.sanitizeName = sanitizeName.sanitizeName;
176
+ exports.sleep = sleep.sleep;
153
177
  exports.trimEnd = trimEnd.trimEnd;
154
- exports.isLedgerAddressViaVerifiedCredentials = isLedgerAddressViaVerifiedCredentials.isLedgerAddressViaVerifiedCredentials;
155
- exports.Eip6963Provider = eip6963Provider.Eip6963Provider;
156
- exports.Eip6963ProviderSingleton = eip6963Provider.Eip6963ProviderSingleton;
178
+ exports.uniq = uniq.uniq;
179
+ exports.wrapMethodWithCallback = wrapMethodWithCallback.wrapMethodWithCallback;
180
+ exports.createKeyPair = createKeyPair.createKeyPair;
181
+ exports.deriveSharedSecret = deriveSharedSecret.deriveSharedSecret;
182
+ exports.convertPublicKeyCryptoKeyToHex = convertPublicKeyCryptoKeyToHex.convertPublicKeyCryptoKeyToHex;
183
+ exports.convertPublicKeyHexToCryptoKey = convertPublicKeyHexToCryptoKey.convertPublicKeyHexToCryptoKey;
184
+ exports.decryptMessage = decryptMessage.decryptMessage;
185
+ exports.encryptMessage = encryptMessage.encryptMessage;
186
+ exports.isEncryptedMessage = isEncryptedMessage.isEncryptedMessage;
187
+ exports.uint8ArrayFromBase64 = uint8ArrayToBase64.uint8ArrayFromBase64;
188
+ exports.uint8ArrayToBase64 = uint8ArrayToBase64.uint8ArrayToBase64;
189
+ exports.cloneObjectWithOverrides = cloneObjectWithOverrides.cloneObjectWithOverrides;
190
+ exports.get = get.get;
191
+ exports.hexToString = hexToString.hexToString;
192
+ exports.isHex = isHex.isHex;
193
+ exports.isInIframe = isInIframe.isInIframe;
194
+ exports.promiseWithTimeout = promiseWithTimeout.promiseWithTimeout;
157
195
  exports.runSafe = runSafe.runSafe;
196
+ exports.template = template.template;
158
197
  exports.PlatformService = PlatformService.PlatformService;
159
198
  exports.createBrowserPlatformService = createBrowserPlatformService.createBrowserPlatformService;
160
199
  exports.FetchService = FetchService.FetchService;
161
200
  exports.Oauth2Service = Oauth2Service.Oauth2Service;
162
201
  exports.createWindowOauth2Service = createWindowOauth2Service.createWindowOauth2Service;
163
- exports.template = template.template;
164
- exports.get = get.get;
165
- exports.hexToString = hexToString.hexToString;
166
- exports.isHex = isHex.isHex;
167
202
  exports.StorageService = StorageService.StorageService;
168
203
  exports.createStorageService = createStorageService.createStorageService;
169
- exports.cloneObjectWithOverrides = cloneObjectWithOverrides.cloneObjectWithOverrides;
170
- exports.promiseWithTimeout = promiseWithTimeout.promiseWithTimeout;
204
+ exports.applyPostfixToStorageService = applyPostfixToStorageService.applyPostfixToStorageService;
205
+ exports.connectWithAppleId = connectWithAppleId.connectWithAppleId;
206
+ exports.solToLamports = solToLamports.solToLamports;
package/src/index.d.ts CHANGED
@@ -1,34 +1,43 @@
1
- export * from './parseChainId';
2
- export * from './parseEvmNetworks';
3
- export * from './errors';
1
+ export * from './bufferToBase64';
4
2
  export * from './CancellablePromise';
3
+ export * from './ceil';
4
+ export * from './DeferredPromise';
5
+ export * from './eip6963';
6
+ export * from './errors';
7
+ export * from './eventTimeline';
8
+ export * from './formatNumberText';
9
+ export * from './getProvidersFromWindow';
10
+ export * from './getTLD';
11
+ export * from './handleMobileWalletRedirect';
5
12
  export * from './isFunction';
13
+ export * from './isLedgerAddressViaVerifiedCredentials';
6
14
  export * from './isMobile';
7
- export * from './localStorageAsync';
8
- export * from './bufferToBase64';
15
+ export * from './isString';
9
16
  export * from './last';
10
- export * from './getProvidersFromWindow';
11
- export * from './sleep';
12
- export * from './retryableFn';
13
- export * from './wrapMethodWithCallback';
14
- export * from './DeferredPromise';
15
- export * from './handleMobileWalletRedirect';
16
- export * from './uniq';
17
- export * from './getTLD';
17
+ export * from './localStorageAsync';
18
+ export * from './parseChainId';
19
+ export * from './parseIntSafe';
20
+ export * from './parseNetworks';
18
21
  export * from './pipe';
19
- export * from './formatNumberText';
20
- export * from './ceil';
22
+ export * from './retryableFn';
23
+ export * from './sanitizeName';
24
+ export * from './sleep';
21
25
  export * from './trimEnd';
22
- export * from './isLedgerAddressViaVerifiedCredentials';
23
- export * from './eip6963';
24
- export { runSafe } from './runSafe';
25
- export { PlatformService, createBrowserPlatformService, type IPlatformService, } from './services/PlatformService';
26
- export { FetchService } from './services/FetchService';
27
- export { Oauth2Service, type GetOauthCodeError, type GetOauthCodeProps, type IOauth2Service, createWindowOauth2Service, } from './services/Oauth2Service';
28
- export { template } from './template';
26
+ export * from './uniq';
27
+ export * from './wrapMethodWithCallback';
28
+ export * from './encryption';
29
+ export * from './uint8ArrayToBase64';
30
+ export { cloneObjectWithOverrides } from './cloneObjectWithOverrides';
29
31
  export { get } from './get';
30
32
  export { hexToString } from './hexToString';
31
33
  export { isHex } from './isHex';
32
- export { type IStorageService, type StorageOptions, StorageService, createStorageService, } from './services/StorageService';
33
- export { cloneObjectWithOverrides } from './cloneObjectWithOverrides';
34
+ export { isInIframe } from './isInIframe';
34
35
  export { promiseWithTimeout } from './promiseWithTimeout';
36
+ export { runSafe } from './runSafe';
37
+ export { template } from './template';
38
+ export { PlatformService, createBrowserPlatformService, type IPlatformService, } from './services/PlatformService';
39
+ export { FetchService } from './services/FetchService';
40
+ export { Oauth2Service, type GetOauthCodeError, type GetOauthCodeProps, type IOauth2Service, createWindowOauth2Service, } from './services/Oauth2Service';
41
+ export { type IStorageService, type StorageOptions, StorageService, createStorageService, applyPostfixToStorageService, } from './services/StorageService';
42
+ export { connectWithAppleId } from './services/Oauth2Service/utils/connectWithAppleId';
43
+ export { solToLamports } from './solToLamports';
package/src/index.js CHANGED
@@ -1,8 +1,11 @@
1
1
  'use client'
2
2
  import { assertPackageVersion } from '@dynamic-labs/assert-package-version';
3
3
  import { version } from '../package.js';
4
- export { parseChainId } from './parseChainId.js';
5
- export { parseEvmNetworks } from './parseEvmNetworks.js';
4
+ export { bufferToBase64 } from './bufferToBase64/bufferToBase64.js';
5
+ export { CancellablePromise } from './CancellablePromise/CancellablePromise.js';
6
+ export { ceil } from './ceil/ceil.js';
7
+ export { DeferredPromise } from './DeferredPromise/DeferredPromise.js';
8
+ export { Eip6963Provider, Eip6963ProviderSingleton, isEip9693Event, listenToEip6963Events } from './eip6963/eip6963Provider.js';
6
9
  export { AccountExistsError } from './errors/AccountExistsError.js';
7
10
  export { ChainalysisError } from './errors/ChainalysisError.js';
8
11
  export { SandboxMaximumThresholdReachedError } from './errors/SandboxMaximumThresholdReachedError.js';
@@ -40,39 +43,52 @@ export { ExternalAuthError } from './errors/ExternalAuthError.js';
40
43
  export { WalletAddressMismatchError } from './errors/WalletAddressMismatchError.js';
41
44
  export { UserRejectedRequestError } from './errors/UserRejectedRequestError.js';
42
45
  export { InvalidEmbeddedWalletSessionKeyError } from './errors/InvalidEmbeddedWalletSessionKeyError.js';
43
- export { CancellablePromise } from './CancellablePromise/CancellablePromise.js';
44
- export { isFunction } from './isFunction/isFunction.js';
45
- export { getAndroidVersion, isAndroid, isIOS, isIPad, isIPhone, isIPhone8OrEarlier, isLegacySafari, isMobile, isSafariBrowser, isSamsungBrowser, isWindows } from './isMobile.js';
46
- export { getItemAsync, removeItemAsync, setItemAsync } from './localStorageAsync.js';
47
- export { bufferToBase64 } from './bufferToBase64.js';
48
- export { last } from './last.js';
49
- export { getProvidersFromWindow } from './getProvidersFromWindow.js';
50
- export { sleep } from './sleep/sleep.js';
51
- export { FALLBACK_UNDEFINED, retryableFn } from './retryableFn.js';
52
- export { wrapMethodWithCallback } from './wrapMethodWithCallback/wrapMethodWithCallback.js';
53
- export { DeferredPromise } from './DeferredPromise/DeferredPromise.js';
54
- export { handleMobileWalletRedirect } from './handleMobileWalletRedirect/handleMobileWalletRedirect.js';
55
- export { uniq } from './uniq/uniq.js';
46
+ export { createEventTimeline } from './eventTimeline/eventTimeline.js';
47
+ export { formatNumberText } from './formatNumberText/formatNumberText.js';
48
+ export { getProvidersFromWindow } from './getProvidersFromWindow/getProvidersFromWindow.js';
56
49
  export { getTLD } from './getTLD/getTLD.js';
50
+ export { handleMobileWalletRedirect } from './handleMobileWalletRedirect/handleMobileWalletRedirect.js';
51
+ export { isFunction } from './isFunction/isFunction.js';
52
+ export { isLedgerAddressViaVerifiedCredentials } from './isLedgerAddressViaVerifiedCredentials/isLedgerAddressViaVerifiedCredentials.js';
53
+ export { getAndroidVersion, isAndroid, isIOS, isIPad, isIPhone, isIPhone8OrEarlier, isLegacySafari, isMobile, isSafariBrowser, isSamsungBrowser, isWindows } from './isMobile/isMobile.js';
54
+ export { isString } from './isString/isString.js';
55
+ export { last } from './last/last.js';
56
+ export { getItemAsync, removeItemAsync, setItemAsync } from './localStorageAsync/localStorageAsync.js';
57
+ export { parseChainId } from './parseChainId/parseChainId.js';
58
+ export { parseIntSafe } from './parseIntSafe/parseIntSafe.js';
59
+ export { parseCosmosNetworks, parseEvmNetworks } from './parseNetworks/parseNetworks.js';
57
60
  export { pipe } from './pipe/pipe.js';
58
- export { formatNumberText } from './formatNumberText/formatNumberText.js';
59
- export { ceil } from './ceil/ceil.js';
61
+ export { FALLBACK_UNDEFINED, retryableFn } from './retryableFn/retryableFn.js';
62
+ export { sanitizeName } from './sanitizeName/sanitizeName.js';
63
+ export { sleep } from './sleep/sleep.js';
60
64
  export { trimEnd } from './trimEnd/trimEnd.js';
61
- export { isLedgerAddressViaVerifiedCredentials } from './isLedgerAddressViaVerifiedCredentials.js';
62
- export { Eip6963Provider, Eip6963ProviderSingleton } from './eip6963/eip6963Provider.js';
65
+ export { uniq } from './uniq/uniq.js';
66
+ export { wrapMethodWithCallback } from './wrapMethodWithCallback/wrapMethodWithCallback.js';
67
+ export { createKeyPair } from './encryption/createKeyPair/createKeyPair.js';
68
+ export { deriveSharedSecret } from './encryption/deriveSharedSecret/deriveSharedSecret.js';
69
+ export { convertPublicKeyCryptoKeyToHex } from './encryption/convertPublicKeyCryptoKeyToHex/convertPublicKeyCryptoKeyToHex.js';
70
+ export { convertPublicKeyHexToCryptoKey } from './encryption/convertPublicKeyHexToCryptoKey/convertPublicKeyHexToCryptoKey.js';
71
+ export { decryptMessage } from './encryption/decryptMessage/decryptMessage.js';
72
+ export { encryptMessage } from './encryption/encryptMessage/encryptMessage.js';
73
+ export { isEncryptedMessage } from './encryption/isEncryptedMessage/isEncryptedMessage.js';
74
+ export { uint8ArrayFromBase64, uint8ArrayToBase64 } from './uint8ArrayToBase64/uint8ArrayToBase64.js';
75
+ export { cloneObjectWithOverrides } from './cloneObjectWithOverrides/cloneObjectWithOverrides.js';
76
+ export { get } from './get/get.js';
77
+ export { hexToString } from './hexToString/hexToString.js';
78
+ export { isHex } from './isHex/isHex.js';
79
+ export { isInIframe } from './isInIframe/isInIframe.js';
80
+ export { promiseWithTimeout } from './promiseWithTimeout/promiseWithTimeout.js';
63
81
  export { runSafe } from './runSafe/runSafe.js';
82
+ export { template } from './template/template.js';
64
83
  export { PlatformService } from './services/PlatformService/PlatformService.js';
65
84
  export { createBrowserPlatformService } from './services/PlatformService/createBrowserPlatformService/createBrowserPlatformService.js';
66
85
  export { FetchService } from './services/FetchService/FetchService.js';
67
86
  export { Oauth2Service } from './services/Oauth2Service/Oauth2Service.js';
68
87
  export { createWindowOauth2Service } from './services/Oauth2Service/createWindowOauth2Service/createWindowOauth2Service.js';
69
- export { template } from './template/template.js';
70
- export { get } from './get/get.js';
71
- export { hexToString } from './hexToString/hexToString.js';
72
- export { isHex } from './isHex/isHex.js';
73
88
  export { StorageService } from './services/StorageService/StorageService.js';
74
89
  export { createStorageService } from './services/StorageService/createStorageService/createStorageService.js';
75
- export { cloneObjectWithOverrides } from './cloneObjectWithOverrides/cloneObjectWithOverrides.js';
76
- export { promiseWithTimeout } from './promiseWithTimeout/promiseWithTimeout.js';
90
+ export { applyPostfixToStorageService } from './services/StorageService/applyPostfixToStorageService/applyPostfixToStorageService.js';
91
+ export { connectWithAppleId } from './services/Oauth2Service/utils/connectWithAppleId/connectWithAppleId.js';
92
+ export { solToLamports } from './solToLamports/solToLamports.js';
77
93
 
78
94
  assertPackageVersion('@dynamic-labs/utils', version);
@@ -0,0 +1 @@
1
+ export { isInIframe } from './isInIframe';
@@ -0,0 +1,8 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const isInIframe = () => window.self !== window.top;
7
+
8
+ exports.isInIframe = isInIframe;
@@ -0,0 +1 @@
1
+ export declare const isInIframe: () => boolean;
@@ -0,0 +1,4 @@
1
+ 'use client'
2
+ const isInIframe = () => window.self !== window.top;
3
+
4
+ export { isInIframe };
@@ -0,0 +1 @@
1
+ export * from './isLedgerAddressViaVerifiedCredentials';
@@ -0,0 +1 @@
1
+ export * from './isMobile';
@@ -0,0 +1 @@
1
+ export { isString } from './isString';
@@ -0,0 +1,8 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const isString = (value) => typeof value === 'string';
7
+
8
+ exports.isString = isString;
@@ -0,0 +1 @@
1
+ export declare const isString: (value: unknown) => value is string;
@@ -0,0 +1,4 @@
1
+ 'use client'
2
+ const isString = (value) => typeof value === 'string';
3
+
4
+ export { isString };
@@ -0,0 +1 @@
1
+ export { last } from './last';
@@ -0,0 +1 @@
1
+ export * from './localStorageAsync';
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var _tslib = require('../_virtual/_tslib.cjs');
6
+ var _tslib = require('../../_virtual/_tslib.cjs');
7
7
 
8
8
  const getItemAsync = (key) => _tslib.__awaiter(void 0, void 0, void 0, function* () {
9
9
  if (typeof window === 'undefined') {
@@ -1,5 +1,5 @@
1
1
  'use client'
2
- import { __awaiter } from '../_virtual/_tslib.js';
2
+ import { __awaiter } from '../../_virtual/_tslib.js';
3
3
 
4
4
  const getItemAsync = (key) => __awaiter(void 0, void 0, void 0, function* () {
5
5
  if (typeof window === 'undefined') {
@@ -0,0 +1 @@
1
+ export * from './parseChainId';
@@ -0,0 +1 @@
1
+ export { parseIntSafe } from './parseIntSafe';
@@ -0,0 +1,23 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var logger = require('../logger/logger.cjs');
7
+
8
+ const parseIntSafe = (value, radix = 10) => {
9
+ try {
10
+ const int = parseInt(String(value), radix);
11
+ if (isNaN(int)) {
12
+ logger.logger.error(`Error parsing ${value}`);
13
+ return undefined;
14
+ }
15
+ return int;
16
+ }
17
+ catch (e) {
18
+ logger.logger.error(`Error parsing ${value} to int: ${e}`);
19
+ }
20
+ return undefined;
21
+ };
22
+
23
+ exports.parseIntSafe = parseIntSafe;
@@ -0,0 +1 @@
1
+ export declare const parseIntSafe: (value: string | number, radix?: number) => number | undefined;
@@ -0,0 +1,19 @@
1
+ 'use client'
2
+ import { logger } from '../logger/logger.js';
3
+
4
+ const parseIntSafe = (value, radix = 10) => {
5
+ try {
6
+ const int = parseInt(String(value), radix);
7
+ if (isNaN(int)) {
8
+ logger.error(`Error parsing ${value}`);
9
+ return undefined;
10
+ }
11
+ return int;
12
+ }
13
+ catch (e) {
14
+ logger.error(`Error parsing ${value} to int: ${e}`);
15
+ }
16
+ return undefined;
17
+ };
18
+
19
+ export { parseIntSafe };
@@ -0,0 +1 @@
1
+ export * from './parseNetworks';
@@ -3,7 +3,7 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
- var parseChainId = require('./parseChainId.cjs');
6
+ var parseChainId = require('../parseChainId/parseChainId.cjs');
7
7
 
8
8
  const parseEvmNetworks = (networks) => {
9
9
  const clone = networks.slice();
@@ -13,5 +13,7 @@ const parseEvmNetworks = (networks) => {
13
13
  return network;
14
14
  });
15
15
  };
16
+ const parseCosmosNetworks = (networks) => parseEvmNetworks(networks);
16
17
 
18
+ exports.parseCosmosNetworks = parseCosmosNetworks;
17
19
  exports.parseEvmNetworks = parseEvmNetworks;
@@ -0,0 +1,3 @@
1
+ import { CosmosNetwork, EvmNetwork, GenericNetwork } from '@dynamic-labs/types';
2
+ export declare const parseEvmNetworks: (networks: GenericNetwork[]) => EvmNetwork[];
3
+ export declare const parseCosmosNetworks: (networks: GenericNetwork[]) => CosmosNetwork[];