@dynamic-labs/message-transport 4.0.0-alpha.0 → 4.0.0-alpha.10

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/CHANGELOG.md +132 -0
  2. package/package.cjs +8 -0
  3. package/package.js +4 -0
  4. package/package.json +9 -11
  5. package/src/index.cjs +14 -1
  6. package/src/index.d.ts +3 -2
  7. package/src/index.js +9 -0
  8. package/src/messageTransport/decorators/makeWaitForInitEvent/makeWaitForInitEvent.d.ts +4 -9
  9. package/src/messageTransport/decorators/makeWaitForUnblock/makeWaitForUnblock.cjs +23 -15
  10. package/src/messageTransport/decorators/makeWaitForUnblock/makeWaitForUnblock.d.ts +16 -8
  11. package/src/messageTransport/decorators/makeWaitForUnblock/makeWaitForUnblock.js +23 -15
  12. package/src/messageTypes/AccountAbstractionMessages.d.ts +15 -0
  13. package/src/messageTypes/AuthModuleMessages.cjs +14 -0
  14. package/src/messageTypes/AuthModuleMessages.d.ts +12 -1
  15. package/src/messageTypes/AuthModuleMessages.js +10 -0
  16. package/src/messageTypes/EmbeddedWalletsModuleMessages.cjs +10 -0
  17. package/src/messageTypes/EmbeddedWalletsModuleMessages.d.ts +9 -1
  18. package/src/messageTypes/EmbeddedWalletsModuleMessages.js +6 -0
  19. package/src/messageTypes/ExternalAuthMessages.d.ts +3 -2
  20. package/src/messageTypes/OtpMessages.cjs +14 -0
  21. package/src/messageTypes/OtpMessages.d.ts +10 -0
  22. package/src/messageTypes/OtpMessages.js +9 -0
  23. package/src/messageTypes/ProjectSettingsMessages.d.ts +6 -0
  24. package/src/messageTypes/SecureStorageMessages.d.ts +5 -0
  25. package/src/messageTypes/UserInterfaceModuleMessages.cjs +12 -0
  26. package/src/messageTypes/UserInterfaceModuleMessages.d.ts +6 -0
  27. package/src/messageTypes/UserInterfaceModuleMessages.js +8 -0
  28. package/src/messageTypes/WalletsModuleMessages.cjs +12 -0
  29. package/src/messageTypes/WalletsModuleMessages.d.ts +29 -0
  30. package/src/messageTypes/WalletsModuleMessages.js +8 -0
  31. package/src/messageTypes/ZeroDevExtensionMessages.d.ts +10 -0
  32. package/src/messageTypes/index.d.ts +4 -0
  33. package/src/requestChannel/createRequestChannelMessageSender/createRequestChannelMessageSender.cjs +43 -0
  34. package/src/requestChannel/createRequestChannelMessageSender/createRequestChannelMessageSender.d.ts +18 -0
  35. package/src/requestChannel/createRequestChannelMessageSender/createRequestChannelMessageSender.js +39 -0
  36. package/src/requestChannel/createRequestChannelMessageSender/index.d.ts +1 -0
  37. package/src/requestChannel/index.d.ts +1 -0
  38. package/src/requestChannel/requestChannel.cjs +58 -31
  39. package/src/requestChannel/requestChannel.d.ts +3 -36
  40. package/src/requestChannel/requestChannel.js +55 -26
  41. package/src/requestChannel/types.d.ts +55 -0
  42. package/src/requestChannel/utils/index.d.ts +1 -0
  43. package/src/requestChannel/utils/utils.cjs +33 -0
  44. package/src/requestChannel/utils/utils.d.ts +16 -0
  45. package/src/requestChannel/utils/utils.js +25 -0
  46. package/src/store/createEventEmitterForMessages/createEventEmitterForMessages.cjs +4 -5
  47. package/src/store/createEventEmitterForMessages/createEventEmitterForMessages.d.ts +5 -8
  48. package/src/store/createEventEmitterForMessages/createEventEmitterForMessages.js +4 -5
  49. package/src/store/types.d.ts +3 -11
  50. package/src/types.d.ts +5 -0
  51. package/src/utils/logger.cjs +10 -0
  52. package/src/utils/logger.d.ts +2 -0
  53. package/src/utils/logger.js +6 -0
package/CHANGELOG.md CHANGED
@@ -1,4 +1,136 @@
1
1
 
2
+ ## [4.0.0-alpha.10](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.9...v4.0.0-alpha.10) (2024-10-15)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * epicgames key name without dash ([#7119](https://github.com/dynamic-labs/dynamic-auth/issues/7119)) ([7388d6c](https://github.com/dynamic-labs/dynamic-auth/commit/7388d6cf98f6ee92e12003549dfd1ad81951119e))
8
+
9
+ ## [4.0.0-alpha.9](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.8...v4.0.0-alpha.9) (2024-10-11)
10
+
11
+
12
+ ### Features
13
+
14
+ * add support for fordefi wallet ([#7109](https://github.com/dynamic-labs/dynamic-auth/issues/7109)) ([1adb6b1](https://github.com/dynamic-labs/dynamic-auth/commit/1adb6b15b7f8e9156207ac7addf4368d27c1e371))
15
+ * support ability to define additional oauth scopes ([#7105](https://github.com/dynamic-labs/dynamic-auth/issues/7105)) ([b303203](https://github.com/dynamic-labs/dynamic-auth/commit/b303203e8041c0cbf5f8968df0d3cde04ed1b22a))
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * add eip6963 for exodus evm ([#7094](https://github.com/dynamic-labs/dynamic-auth/issues/7094)) ([c1ec5ef](https://github.com/dynamic-labs/dynamic-auth/commit/c1ec5ef4b6a531c563be4b690aa5f2bd4e7e6a16))
21
+
22
+ ## [4.0.0-alpha.8](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.7...v4.0.0-alpha.8) (2024-10-07)
23
+
24
+
25
+ ### Features
26
+
27
+ * add support for dynamic event callbacks in rn ([#6997](https://github.com/dynamic-labs/dynamic-auth/issues/6997)) ([f9ac402](https://github.com/dynamic-labs/dynamic-auth/commit/f9ac40259d9168dfe69dafd5fd44478ba0e69505))
28
+ * add support for dynamic handlers in rn ([#7032](https://github.com/dynamic-labs/dynamic-auth/issues/7032)) ([f61f926](https://github.com/dynamic-labs/dynamic-auth/commit/f61f92666b6df8483dde2c47304fd4fb02690f7d))
29
+ * Support for multi-chain AA ([#6829](https://github.com/dynamic-labs/dynamic-auth/issues/6829)) ([b4a0c0a](https://github.com/dynamic-labs/dynamic-auth/commit/b4a0c0a4de48231a3748826600407c25abf6894d))
30
+
31
+
32
+ ### Bug Fixes
33
+
34
+ * persist isHardwareWalletEnabled on wallet connector ([#7025](https://github.com/dynamic-labs/dynamic-auth/issues/7025)) ([#7034](https://github.com/dynamic-labs/dynamic-auth/issues/7034)) ([4bfc301](https://github.com/dynamic-labs/dynamic-auth/commit/4bfc301d891f10db8c0bd31e5164c489a882c5c3))
35
+
36
+ ## [4.0.0-alpha.7](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.6...v4.0.0-alpha.7) (2024-10-03)
37
+
38
+
39
+ ### Features
40
+
41
+ * add account abstraction module to client ([#7002](https://github.com/dynamic-labs/dynamic-auth/issues/7002)) ([2f06975](https://github.com/dynamic-labs/dynamic-auth/commit/2f06975083dfa9d40537ef4a99b414eda1a68e01))
42
+ * add support for wallet events in rn ([#7061](https://github.com/dynamic-labs/dynamic-auth/issues/7061)) ([c7c4ce5](https://github.com/dynamic-labs/dynamic-auth/commit/c7c4ce51f27a2b84a1710c120d7006a00920c1e7))
43
+ * add zerodev extension for react native ([#7028](https://github.com/dynamic-labs/dynamic-auth/issues/7028)) ([858b8a8](https://github.com/dynamic-labs/dynamic-auth/commit/858b8a851cfa0cddc8e4559541b03992cf5ccdfc))
44
+
45
+
46
+ ### Bug Fixes
47
+
48
+ * do not modify sol tx blockhash as tx could have been signed already ([#7050](https://github.com/dynamic-labs/dynamic-auth/issues/7050)) ([770edb4](https://github.com/dynamic-labs/dynamic-auth/commit/770edb49ddc231b75fb45a9f6d563f22e5185df2))
49
+ * ensure the correct auth mode is used on social redirect ([#7047](https://github.com/dynamic-labs/dynamic-auth/issues/7047)) ([7c27172](https://github.com/dynamic-labs/dynamic-auth/commit/7c271721d5ddf19e3fd1bf56ddb1d49e0e2bca07))
50
+ * prevent react native message timeout before sdk is ready ([#7051](https://github.com/dynamic-labs/dynamic-auth/issues/7051)) ([6421237](https://github.com/dynamic-labs/dynamic-auth/commit/6421237d677d788b824d53432c1a75b9d571aa78))
51
+ * update version error text ([#7054](https://github.com/dynamic-labs/dynamic-auth/issues/7054)) ([713dacb](https://github.com/dynamic-labs/dynamic-auth/commit/713dacb79c2513323c2e6840d7418716011c2dcd))
52
+ * use project settings sdk network for send flow ([#7011](https://github.com/dynamic-labs/dynamic-auth/issues/7011)) ([983e796](https://github.com/dynamic-labs/dynamic-auth/commit/983e79632762f71ee0502c92057a32ea985ae19c))
53
+
54
+ ## [4.0.0-alpha.6](https://github.com/dynamic-labs/dynamic-auth/compare/v4.0.0-alpha.5...v4.0.0-alpha.6) (2024-10-01)
55
+
56
+
57
+ ### ⚠ BREAKING CHANGES
58
+
59
+ * remove support to magic ([#7033](https://github.com/dynamic-labs/dynamic-auth/issues/7033)) ([0fdc41f](https://github.com/dynamic-labs/dynamic-auth/commit/0fdc41f05f87b32f56b73db068f984f18bdf69a0))
60
+
61
+ ### Features
62
+
63
+ * global connectivity disconnect ([#7008](https://github.com/dynamic-labs/dynamic-auth/issues/7008)) ([80d705b](https://github.com/dynamic-labs/dynamic-auth/commit/80d705ba252aa3b01cbf4861507fed00e460215f))
64
+
65
+
66
+ ### Bug Fixes
67
+
68
+ * add popper context to send balance ([#7016](https://github.com/dynamic-labs/dynamic-auth/issues/7016)) ([73aa6f1](https://github.com/dynamic-labs/dynamic-auth/commit/73aa6f122afe0db660ebb654f3e018ae7bf445c5))
69
+ * add retry to useConnectWithOtp ([#7012](https://github.com/dynamic-labs/dynamic-auth/issues/7012)) ([d551d72](https://github.com/dynamic-labs/dynamic-auth/commit/d551d72a463f8a03964858b30ec174d41985a7b1))
70
+ * don't re-fetch wallet address on network change ([#7019](https://github.com/dynamic-labs/dynamic-auth/issues/7019)) ([4e7900c](https://github.com/dynamic-labs/dynamic-auth/commit/4e7900cc24b3abda736bc81466eda7512cf7fc61))
71
+ * fix sign message with solana wallet standard provider ([#7014](https://github.com/dynamic-labs/dynamic-auth/issues/7014)) ([ffaf972](https://github.com/dynamic-labs/dynamic-auth/commit/ffaf972e8b190b0b8cd0103e0ef67bfdee6c8f7c))
72
+ * update wallet reference when user switches wallet in connect-only ([#7030](https://github.com/dynamic-labs/dynamic-auth/issues/7030)) ([75d9aa6](https://github.com/dynamic-labs/dynamic-auth/commit/75d9aa66f63fc5536caeff12d8b860c0ba86106f))
73
+
74
+
75
+ ## [4.0.0-alpha.5](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.4...v4.0.0-alpha.5) (2024-09-25)
76
+
77
+
78
+ ### Features
79
+
80
+ * add isInstalledOnBrowser prop to wallet options in useWalletOptions ([#6976](https://github.com/dynamic-labs/DynamicAuth/issues/6976)) ([0fda409](https://github.com/dynamic-labs/DynamicAuth/commit/0fda409b293c83d73869d791c3d38ac421dcdecb))
81
+
82
+
83
+ ### Bug Fixes
84
+
85
+ * **client:** return user profile when using sign in with external jwt ([#7004](https://github.com/dynamic-labs/DynamicAuth/issues/7004)) ([927cfb6](https://github.com/dynamic-labs/DynamicAuth/commit/927cfb69f3dd7f8b00e3f0f975277a84c99c830b))
86
+ * react-native-extension to include esm ([#6965](https://github.com/dynamic-labs/DynamicAuth/issues/6965)) ([336825b](https://github.com/dynamic-labs/DynamicAuth/commit/336825b50142002bbc67c6f8850bd63030bf384b))
87
+
88
+ ## [4.0.0-alpha.4](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.3...v4.0.0-alpha.4) (2024-09-23)
89
+
90
+
91
+ ### Bug Fixes
92
+
93
+ * issue where builtin stream module was a dependency ([#6968](https://github.com/dynamic-labs/DynamicAuth/issues/6968)) ([0661129](https://github.com/dynamic-labs/DynamicAuth/commit/0661129920ba70ebbcd4d17ee5aa988c51d1b477))
94
+ * update in memory secure storage ([#6955](https://github.com/dynamic-labs/DynamicAuth/issues/6955)) ([697fc20](https://github.com/dynamic-labs/DynamicAuth/commit/697fc20740b243fa31ecf06e8b2ed9d09932a544))
95
+
96
+ ## [4.0.0-alpha.3](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.2...v4.0.0-alpha.3) (2024-09-20)
97
+
98
+
99
+ ### Features
100
+
101
+ * developers provide global connectivity appkit project id ([#6941](https://github.com/dynamic-labs/DynamicAuth/issues/6941)) ([83760ea](https://github.com/dynamic-labs/DynamicAuth/commit/83760ea57591685b12caee945f173f6a7f9312d1))
102
+
103
+
104
+ ### Bug Fixes
105
+
106
+ * don't try to set up event listeners if wallet provider doesn't support it ([#6943](https://github.com/dynamic-labs/DynamicAuth/issues/6943)) ([439f1bb](https://github.com/dynamic-labs/DynamicAuth/commit/439f1bbb3c765959756cfc6eeb8429e4018e0379))
107
+ * dont verify all signatures for solana embedded multisig tx ([#6953](https://github.com/dynamic-labs/DynamicAuth/issues/6953)) ([7a7973e](https://github.com/dynamic-labs/DynamicAuth/commit/7a7973e05f0960421b348a55c6a00c9fd873b0b7))
108
+
109
+ ## [4.0.0-alpha.2](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.1...v4.0.0-alpha.2) (2024-09-18)
110
+
111
+
112
+ ### Features
113
+
114
+ * add iconVariant prop to DynamicBridgeWidget ([#6915](https://github.com/dynamic-labs/DynamicAuth/issues/6915)) ([8aa0f3d](https://github.com/dynamic-labs/DynamicAuth/commit/8aa0f3d8d8c41c7b5c4796106f611f208010cb6d))
115
+ * allow to create extra embedded wallets in react-native ([#6923](https://github.com/dynamic-labs/DynamicAuth/issues/6923)) ([ba22f7b](https://github.com/dynamic-labs/DynamicAuth/commit/ba22f7bcf41a444a4df0aff9b6aec257457e9402))
116
+ * **client:** add hide method for auth and userProfile ui modules ([#6928](https://github.com/dynamic-labs/DynamicAuth/issues/6928)) ([a11a4a5](https://github.com/dynamic-labs/DynamicAuth/commit/a11a4a5d6e25ce2a916ebd52f0b341020dc1a7e5))
117
+
118
+ ## [4.0.0-alpha.1](https://github.com/dynamic-labs/DynamicAuth/compare/v4.0.0-alpha.0...v4.0.0-alpha.1) (2024-09-17)
119
+
120
+
121
+ ### Features
122
+
123
+ * blockaid website scanning for global connectivity ([#6874](https://github.com/dynamic-labs/DynamicAuth/issues/6874)) ([f8cbabd](https://github.com/dynamic-labs/DynamicAuth/commit/f8cbabd92fd4b5b096f47ff8e24c572ad7720dd8))
124
+
125
+
126
+ ### Bug Fixes
127
+
128
+ * deeplinking on ethereum and bitcoin sats connector ([#6917](https://github.com/dynamic-labs/DynamicAuth/issues/6917)) ([3896c3a](https://github.com/dynamic-labs/DynamicAuth/commit/3896c3a97819459da74dc5b4771796d7991c1f07))
129
+ * emit walletAdded event when createEmbeddedWalletAccount called ([#6922](https://github.com/dynamic-labs/DynamicAuth/issues/6922)) ([2a8bdd6](https://github.com/dynamic-labs/DynamicAuth/commit/2a8bdd68c50efd946c6f9b398dfae2b3585db34f))
130
+ * interface for sendBitcoin on unisat ([37a1bc2](https://github.com/dynamic-labs/DynamicAuth/commit/37a1bc216f43eef817c40e23b9161327f9d29c59))
131
+ * remove ballet crypto and duplicate keplr entry ([#6906](https://github.com/dynamic-labs/DynamicAuth/issues/6906)) ([14aeeea](https://github.com/dynamic-labs/DynamicAuth/commit/14aeeeaa8d906344f4aeddf9e73527df346b9ea0))
132
+ * solana and cosmos signers not working properly ([#6898](https://github.com/dynamic-labs/DynamicAuth/issues/6898)) ([6f07981](https://github.com/dynamic-labs/DynamicAuth/commit/6f079811c0d7e45b97d2dae72f4141268ab4fe0c))
133
+
2
134
  ## [4.0.0-alpha.0](https://github.com/dynamic-labs/DynamicAuth/compare/v3.0.0...v4.0.0-alpha.0) (2024-09-13)
3
135
 
4
136
 
package/package.cjs ADDED
@@ -0,0 +1,8 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var version = "4.0.0-alpha.10";
7
+
8
+ exports.version = version;
package/package.js ADDED
@@ -0,0 +1,4 @@
1
+ 'use client'
2
+ var version = "4.0.0-alpha.10";
3
+
4
+ export { version };
package/package.json CHANGED
@@ -1,16 +1,7 @@
1
1
  {
2
2
  "name": "@dynamic-labs/message-transport",
3
- "version": "4.0.0-alpha.0",
4
- "repository": {
5
- "type": "git",
6
- "url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
7
- "directory": "packages/message-transport"
8
- },
3
+ "version": "4.0.0-alpha.10",
9
4
  "description": "Defines the interface to communicate with dynamic's webview",
10
- "bugs": {
11
- "url": "https://github.com/dynamic-labs/DynamicAuth/issues"
12
- },
13
- "homepage": "https://github.com/dynamic-labs/DynamicAuth/main/packages/message-transport#readme",
14
5
  "author": "Dynamic Labs, Inc.",
15
6
  "license": "MIT",
16
7
  "main": "./src/index.cjs",
@@ -25,9 +16,16 @@
25
16
  },
26
17
  "./package.json": "./package.json"
27
18
  },
19
+ "homepage": "https://www.dynamic.xyz/",
28
20
  "dependencies": {
21
+ "@dynamic-labs/sdk-api-core": "0.0.545",
29
22
  "@vue/reactivity": "3.4.21",
30
- "@dynamic-labs/types": "4.0.0-alpha.0",
23
+ "@dynamic-labs/types": "4.0.0-alpha.10",
31
24
  "eventemitter3": "5.0.1"
25
+ },
26
+ "peerDependencies": {
27
+ "@dynamic-labs/assert-package-version": "4.0.0-alpha.10",
28
+ "@dynamic-labs/logger": "4.0.0-alpha.10",
29
+ "@dynamic-labs/utils": "4.0.0-alpha.10"
32
30
  }
33
31
  }
package/src/index.cjs CHANGED
@@ -3,6 +3,8 @@
3
3
 
4
4
  Object.defineProperty(exports, '__esModule', { value: true });
5
5
 
6
+ var assertPackageVersion = require('@dynamic-labs/assert-package-version');
7
+ var _package = require('../package.cjs');
6
8
  var messageTransport = require('./messageTransport/messageTransport.cjs');
7
9
  var applyDefaultMessageOrigin = require('./messageTransport/decorators/applyDefaultMessageOrigin/applyDefaultMessageOrigin.cjs');
8
10
  var makeWaitForInitEvent = require('./messageTransport/decorators/makeWaitForInitEvent/makeWaitForInitEvent.cjs');
@@ -14,9 +16,14 @@ var serializeErrorForTransport = require('./utils/serializeErrorForTransport/ser
14
16
  var createEventEmitterForMessages = require('./store/createEventEmitterForMessages/createEventEmitterForMessages.cjs');
15
17
  var store = require('./store/store.cjs');
16
18
  var storeSetter = require('./store/storeSetter/storeSetter.cjs');
19
+ var AuthModuleMessages = require('./messageTypes/AuthModuleMessages.cjs');
20
+ var EmbeddedWalletsModuleMessages = require('./messageTypes/EmbeddedWalletsModuleMessages.cjs');
21
+ var OtpMessages = require('./messageTypes/OtpMessages.cjs');
17
22
  var SdkModuleMessages = require('./messageTypes/SdkModuleMessages.cjs');
23
+ var UserInterfaceModuleMessages = require('./messageTypes/UserInterfaceModuleMessages.cjs');
24
+ var WalletsModuleMessages = require('./messageTypes/WalletsModuleMessages.cjs');
18
25
 
19
-
26
+ assertPackageVersion.assertPackageVersion('@dynamic-labs/message-transport', _package.version);
20
27
 
21
28
  exports.createMessageTransport = messageTransport.createMessageTransport;
22
29
  exports.applyDefaultMessageOrigin = applyDefaultMessageOrigin.applyDefaultMessageOrigin;
@@ -29,4 +36,10 @@ exports.serializeErrorForTransport = serializeErrorForTransport.serializeErrorFo
29
36
  exports.createEventEmitterForMessages = createEventEmitterForMessages.createEventEmitterForMessages;
30
37
  exports.createStore = store.createStore;
31
38
  exports.createStoreSetter = storeSetter.createStoreSetter;
39
+ exports.authEventNames = AuthModuleMessages.authEventNames;
40
+ exports.embeddedWalletsEventNames = EmbeddedWalletsModuleMessages.embeddedWalletsEventNames;
41
+ exports.emailEventNames = OtpMessages.emailEventNames;
42
+ exports.smsEventNames = OtpMessages.smsEventNames;
32
43
  exports.sdkHasLoadedEventName = SdkModuleMessages.sdkHasLoadedEventName;
44
+ exports.userInterfaceEventNames = UserInterfaceModuleMessages.userInterfaceEventNames;
45
+ exports.userWalletsEventNames = WalletsModuleMessages.userWalletsEventNames;
package/src/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export { createRequestChannel, type RequestChannel } from './requestChannel';
3
3
  export { parseErrorFromTransport } from './utils/parseErrorFromTransport';
4
4
  export { parseMessageTransportData } from './utils/parseMessageTransportData';
5
5
  export { serializeErrorForTransport } from './utils/serializeErrorForTransport';
6
- export { createEventEmitterForMessages, createStore, createStoreSetter, type CreateStoreProps, type MessagesForEventEmitter, } from './store';
6
+ export { createEventEmitterForMessages, createStore, createStoreSetter, type CreateStoreProps, } from './store';
7
7
  export type { Store, StoreEventListeners, StoreKeys, StoreSetter, StoreStateChangeEvent, StoreStateEvents, StoreStateGetters, } from './store/types';
8
- export { sdkHasLoadedEventName, type AuthModuleMessages, type AuthModuleState, type ClientManifest, type ConsoleMessages, type EmailOtpParams, type EmbeddedWalletsModuleMessages, type EmbeddedWalletsModuleState, type EthMessages, type EthRequestWithAddressParams, type EthRequestWithChainIdParams, type ExternalAuthMessages, type FetchMessages, type NetworksModuleState, type OtpMessages, type PasskeyMessages, type PlatformServiceMessages, type SdkModuleMessages, type SdkModuleState, type SignInWithExternalJwtParams, type SmsOtpParams, type SocialAuthModuleMessages, type SocialProvider, type SolanaMessages, type UserInterfaceModuleMessages, type VerifyWithExternalJwtParams, type WalletsModuleMessages, type WalletsModuleState, type WebViewVisibilityMessages, } from './messageTypes';
8
+ export type { PickedEventListeners } from './types';
9
+ export { authEventNames, emailEventNames, embeddedWalletsEventNames, sdkHasLoadedEventName, smsEventNames, userInterfaceEventNames, userWalletsEventNames, type AccountAbstractionGetEOAWalletArgs, type AccountAbstractionGetSmartWalletArgs, type AccountAbstractionIsSmartWalletArgs, type AccountAbstractionMessages, type AuthModuleMessages, type AuthModuleState, type ClientManifest, type ConsoleMessages, type CreateEmbeddedWalletArgs, type EmailOtpParams, type EmbeddedWalletsModuleMessages, type EmbeddedWalletsModuleState, type EthMessages, type EthRequestParams, type EthRequestWithAddressParams, type EthRequestWithChainIdParams, type ExternalAuthMessages, type FetchMessages, type KernelAccountSettings, type NetworksModuleState, type OtpData, type OtpMessages, type PasskeyMessages, type PlatformServiceMessages, type ProjectSettingsMessages, type SdkModuleMessages, type SdkModuleState, type SecureStorageMessages, type SignInWithExternalJwtParams, type SmsOtpParams, type SocialAuthModuleMessages, type SocialProvider, type SolanaMessages, type UserInterfaceModuleMessages, type VerifyWithExternalJwtParams, type WalletEvents, type WalletsModuleMessages, type WalletsModuleState, type WebViewVisibilityMessages, type ZeroDevExtensionMessages, } from './messageTypes';
package/src/index.js CHANGED
@@ -1,4 +1,6 @@
1
1
  'use client'
2
+ import { assertPackageVersion } from '@dynamic-labs/assert-package-version';
3
+ import { version } from '../package.js';
2
4
  export { createMessageTransport } from './messageTransport/messageTransport.js';
3
5
  export { applyDefaultMessageOrigin } from './messageTransport/decorators/applyDefaultMessageOrigin/applyDefaultMessageOrigin.js';
4
6
  export { makeWaitForInitEvent } from './messageTransport/decorators/makeWaitForInitEvent/makeWaitForInitEvent.js';
@@ -10,4 +12,11 @@ export { serializeErrorForTransport } from './utils/serializeErrorForTransport/s
10
12
  export { createEventEmitterForMessages } from './store/createEventEmitterForMessages/createEventEmitterForMessages.js';
11
13
  export { createStore } from './store/store.js';
12
14
  export { createStoreSetter } from './store/storeSetter/storeSetter.js';
15
+ export { authEventNames } from './messageTypes/AuthModuleMessages.js';
16
+ export { embeddedWalletsEventNames } from './messageTypes/EmbeddedWalletsModuleMessages.js';
17
+ export { emailEventNames, smsEventNames } from './messageTypes/OtpMessages.js';
13
18
  export { sdkHasLoadedEventName } from './messageTypes/SdkModuleMessages.js';
19
+ export { userInterfaceEventNames } from './messageTypes/UserInterfaceModuleMessages.js';
20
+ export { userWalletsEventNames } from './messageTypes/WalletsModuleMessages.js';
21
+
22
+ assertPackageVersion('@dynamic-labs/message-transport', version);
@@ -1,8 +1,8 @@
1
- import { MessageTransport, MessageTransportData } from '../../messageTransport';
1
+ import { MessageTransport } from '../../messageTransport';
2
2
  import { BypassBlockCallback } from '../makeWaitForUnblock';
3
- type MakeWaitForInitEventProps = {
3
+ type MakeWaitForInitEventProps<M extends MessageTransport> = {
4
4
  /** MessageTransport to add this decorator to */
5
- messageTransport: MessageTransport;
5
+ messageTransport: M;
6
6
  /** Which message type should trigger the initialization */
7
7
  initializeMessageType: string;
8
8
  /** If true is returned, the message will not be blocked */
@@ -16,10 +16,5 @@ type MakeWaitForInitEventProps = {
16
16
  * 2. Any future emit calls will no longer store the message, and instead
17
17
  * will emit them right away, as normal.
18
18
  */
19
- export declare const makeWaitForInitEvent: ({ bypassBlockIf, initializeMessageType, messageTransport, }: MakeWaitForInitEventProps) => {
20
- unblock: () => void;
21
- emit: (message: MessageTransportData) => void;
22
- off: (callback: import("../../messageTransport").MessageTransportCallback) => void;
23
- on: (callback: import("../../messageTransport").MessageTransportCallback) => void;
24
- };
19
+ export declare const makeWaitForInitEvent: <M extends MessageTransport>({ bypassBlockIf, initializeMessageType, messageTransport, }: MakeWaitForInitEventProps<M>) => import("../makeWaitForUnblock").WithBlock<M>;
25
20
  export {};
@@ -14,40 +14,48 @@ Object.defineProperty(exports, '__esModule', { value: true });
14
14
  const makeWaitForUnblock = ({ messageTransport, bypassBlockIf = () => false, }) => {
15
15
  /** Whether to block any new messages */
16
16
  let blocked = true;
17
- /** Messages pending to be sent once unblocked */
17
+ /**
18
+ * Messages pending to be sent once unblocked, along with their onEmit callbacks
19
+ */
18
20
  let pendingMessages = [];
19
21
  /**
20
22
  * Ids of incoming message sessions.
21
23
  * We don't want to block responses to these messages.
22
24
  */
23
25
  const bypassedMessageSessionIds = new Set();
24
- const extendedTransport = {
25
- emit: (message) => {
26
+ return {
27
+ emit: (message, options) => {
28
+ const { onEmit } = options !== null && options !== void 0 ? options : {};
26
29
  if (bypassBlockIf(message) && blocked) {
27
30
  bypassedMessageSessionIds.add(message.messageSessionId);
28
31
  }
29
32
  // Even if blocking, we still want to let through ids of messages that
30
33
  // can bypass the block (this includes any responses, since they share the same id)
31
34
  if (blocked && !bypassedMessageSessionIds.has(message.messageSessionId)) {
32
- pendingMessages.push(message);
35
+ pendingMessages.push({ message, onEmit });
33
36
  return;
34
37
  }
35
38
  messageTransport.emit(message);
39
+ onEmit === null || onEmit === void 0 ? void 0 : onEmit();
40
+ },
41
+ get isBlocked() {
42
+ return blocked;
36
43
  },
37
44
  off: (callback) => messageTransport.off(callback),
38
45
  on: (callback) => messageTransport.on(callback),
46
+ unblock: () => {
47
+ if (!blocked)
48
+ return;
49
+ blocked = false;
50
+ // Emit all stored messages
51
+ for (const { message, onEmit } of pendingMessages) {
52
+ messageTransport.emit(message);
53
+ onEmit === null || onEmit === void 0 ? void 0 : onEmit();
54
+ }
55
+ pendingMessages = [];
56
+ bypassedMessageSessionIds.clear();
57
+ },
39
58
  };
40
- const unblock = () => {
41
- if (!blocked)
42
- return;
43
- blocked = false;
44
- // Emit all stored messages
45
- for (const message of pendingMessages)
46
- messageTransport.emit(message);
47
- pendingMessages = [];
48
- bypassedMessageSessionIds.clear();
49
- };
50
- return Object.assign(Object.assign({}, extendedTransport), { unblock });
51
59
  };
52
60
 
53
61
  exports.makeWaitForUnblock = makeWaitForUnblock;
@@ -1,11 +1,24 @@
1
1
  import { MessageTransport, MessageTransportData } from '../../messageTransport';
2
2
  export type BypassBlockCallback = (message: MessageTransportData) => boolean;
3
- type MakeWaitForUnblockProps = {
3
+ type MakeWaitForUnblockProps<M extends MessageTransport> = {
4
4
  /** MessageTransport to add this decorator to */
5
- messageTransport: MessageTransport;
5
+ messageTransport: M;
6
6
  /** If true is return the message will not be blocked */
7
7
  bypassBlockIf?: BypassBlockCallback;
8
8
  };
9
+ /**
10
+ * A message transport that may have its messages blocked until unblock is called.
11
+ *
12
+ * This adds a second param to the emit method that allows triggering a callback when
13
+ * the message is actually emitted.
14
+ */
15
+ export type WithBlock<M extends MessageTransport> = M & {
16
+ emit: (message: Parameters<M['emit']>[0], options?: {
17
+ onEmit?: VoidFunction;
18
+ }) => void;
19
+ unblock: () => void;
20
+ isBlocked: boolean;
21
+ };
9
22
  /**
10
23
  * Decorator that adds the following features to a MessageTransport:
11
24
  * 1. Any emit calls will not emit the message yet. These messages will be stored.
@@ -14,10 +27,5 @@ type MakeWaitForUnblockProps = {
14
27
  * 2. Any future emit calls will no longer store the message, and instead
15
28
  * will emit them right away, as normal.
16
29
  */
17
- export declare const makeWaitForUnblock: ({ messageTransport, bypassBlockIf, }: MakeWaitForUnblockProps) => {
18
- unblock: () => void;
19
- emit: (message: MessageTransportData) => void;
20
- off: (callback: import("../../messageTransport").MessageTransportCallback) => void;
21
- on: (callback: import("../../messageTransport").MessageTransportCallback) => void;
22
- };
30
+ export declare const makeWaitForUnblock: <M extends MessageTransport>({ messageTransport, bypassBlockIf, }: MakeWaitForUnblockProps<M>) => WithBlock<M>;
23
31
  export {};
@@ -10,40 +10,48 @@
10
10
  const makeWaitForUnblock = ({ messageTransport, bypassBlockIf = () => false, }) => {
11
11
  /** Whether to block any new messages */
12
12
  let blocked = true;
13
- /** Messages pending to be sent once unblocked */
13
+ /**
14
+ * Messages pending to be sent once unblocked, along with their onEmit callbacks
15
+ */
14
16
  let pendingMessages = [];
15
17
  /**
16
18
  * Ids of incoming message sessions.
17
19
  * We don't want to block responses to these messages.
18
20
  */
19
21
  const bypassedMessageSessionIds = new Set();
20
- const extendedTransport = {
21
- emit: (message) => {
22
+ return {
23
+ emit: (message, options) => {
24
+ const { onEmit } = options !== null && options !== void 0 ? options : {};
22
25
  if (bypassBlockIf(message) && blocked) {
23
26
  bypassedMessageSessionIds.add(message.messageSessionId);
24
27
  }
25
28
  // Even if blocking, we still want to let through ids of messages that
26
29
  // can bypass the block (this includes any responses, since they share the same id)
27
30
  if (blocked && !bypassedMessageSessionIds.has(message.messageSessionId)) {
28
- pendingMessages.push(message);
31
+ pendingMessages.push({ message, onEmit });
29
32
  return;
30
33
  }
31
34
  messageTransport.emit(message);
35
+ onEmit === null || onEmit === void 0 ? void 0 : onEmit();
36
+ },
37
+ get isBlocked() {
38
+ return blocked;
32
39
  },
33
40
  off: (callback) => messageTransport.off(callback),
34
41
  on: (callback) => messageTransport.on(callback),
42
+ unblock: () => {
43
+ if (!blocked)
44
+ return;
45
+ blocked = false;
46
+ // Emit all stored messages
47
+ for (const { message, onEmit } of pendingMessages) {
48
+ messageTransport.emit(message);
49
+ onEmit === null || onEmit === void 0 ? void 0 : onEmit();
50
+ }
51
+ pendingMessages = [];
52
+ bypassedMessageSessionIds.clear();
53
+ },
35
54
  };
36
- const unblock = () => {
37
- if (!blocked)
38
- return;
39
- blocked = false;
40
- // Emit all stored messages
41
- for (const message of pendingMessages)
42
- messageTransport.emit(message);
43
- pendingMessages = [];
44
- bypassedMessageSessionIds.clear();
45
- };
46
- return Object.assign(Object.assign({}, extendedTransport), { unblock });
47
55
  };
48
56
 
49
57
  export { makeWaitForUnblock };
@@ -0,0 +1,15 @@
1
+ import { BaseWallet } from '@dynamic-labs/types';
2
+ export type AccountAbstractionIsSmartWalletArgs = {
3
+ wallet: BaseWallet;
4
+ };
5
+ export type AccountAbstractionGetEOAWalletArgs = {
6
+ wallet: BaseWallet;
7
+ };
8
+ export type AccountAbstractionGetSmartWalletArgs = {
9
+ wallet: BaseWallet;
10
+ };
11
+ export type AccountAbstractionMessages = {
12
+ isSmartWallet: (args: AccountAbstractionIsSmartWalletArgs) => Promise<boolean>;
13
+ getEOAWallet: (args: AccountAbstractionGetEOAWalletArgs) => Promise<BaseWallet | null>;
14
+ getSmartWallet: (args: AccountAbstractionGetSmartWalletArgs) => Promise<BaseWallet | null>;
15
+ };
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const authEventNames = [
7
+ 'authSuccess',
8
+ 'authFailed',
9
+ 'authInit',
10
+ 'loggedOut',
11
+ 'userProfileUpdated',
12
+ ];
13
+
14
+ exports.authEventNames = authEventNames;
@@ -1,8 +1,19 @@
1
- import type { UserProfile } from '@dynamic-labs/types';
1
+ import type { AuthEventPayload, UserProfile } from '@dynamic-labs/types';
2
2
  export type AuthModuleState = {
3
3
  token: string | null;
4
4
  authenticatedUser: UserProfile | null;
5
5
  };
6
6
  export type AuthModuleMessages = {
7
7
  logout: () => Promise<void>;
8
+ handleAuthenticatedUser: (params: {
9
+ user: UserProfile;
10
+ }) => Promise<void>;
11
+ authSuccess: (user: UserProfile) => void;
12
+ authFailed: (data: AuthEventPayload, reason: 'user-cancelled' | {
13
+ error: unknown;
14
+ }) => void;
15
+ authInit: (data: AuthEventPayload) => void;
16
+ loggedOut: (user: UserProfile | null) => void;
17
+ userProfileUpdated: (user: UserProfile) => void;
8
18
  };
19
+ export declare const authEventNames: ("authSuccess" | "authFailed" | "authInit" | "loggedOut" | "userProfileUpdated")[];
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ const authEventNames = [
3
+ 'authSuccess',
4
+ 'authFailed',
5
+ 'authInit',
6
+ 'loggedOut',
7
+ 'userProfileUpdated',
8
+ ];
9
+
10
+ export { authEventNames };
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const embeddedWalletsEventNames = [
7
+ 'embeddedWalletCreated',
8
+ ];
9
+
10
+ exports.embeddedWalletsEventNames = embeddedWalletsEventNames;
@@ -1,8 +1,16 @@
1
+ import { EmbeddedWalletChainEnum, JwtVerifiedCredential } from '@dynamic-labs/sdk-api-core';
1
2
  import { BaseWallet } from '@dynamic-labs/types';
3
+ export type CreateEmbeddedWalletArgs = {
4
+ chain?: keyof typeof EmbeddedWalletChainEnum;
5
+ };
2
6
  export type EmbeddedWalletsModuleState = {
3
7
  hasWallet: boolean;
4
8
  };
5
9
  export type EmbeddedWalletsModuleMessages = {
6
10
  getWallet: () => Promise<BaseWallet | null>;
7
- createWallet: () => Promise<BaseWallet>;
11
+ createWallet: (args?: CreateEmbeddedWalletArgs) => Promise<BaseWallet>;
12
+ embeddedWalletCreated: (verifiedCredential: JwtVerifiedCredential | null) => void;
8
13
  };
14
+ type EmbeddedWalletsEventNames = 'embeddedWalletCreated';
15
+ export declare const embeddedWalletsEventNames: EmbeddedWalletsEventNames[];
16
+ export {};
@@ -0,0 +1,6 @@
1
+ 'use client'
2
+ const embeddedWalletsEventNames = [
3
+ 'embeddedWalletCreated',
4
+ ];
5
+
6
+ export { embeddedWalletsEventNames };
@@ -1,3 +1,4 @@
1
+ import { UserProfile } from '@dynamic-labs/types';
1
2
  export type SignInWithExternalJwtParams = {
2
3
  externalUserId: string;
3
4
  externalJwt: string;
@@ -10,9 +11,9 @@ export type ExternalAuthMessages = {
10
11
  /**
11
12
  * Initiates sign in with an externally provided JWT
12
13
  */
13
- signInWithExternalJwt: (props: SignInWithExternalJwtParams) => Promise<void>;
14
+ signInWithExternalJwt: (props: SignInWithExternalJwtParams) => Promise<UserProfile | null>;
14
15
  /**
15
16
  * Initiates verification with an externally provided JWT
16
17
  */
17
- verifyWithExternalJwt: (props: VerifyWithExternalJwtParams) => Promise<void>;
18
+ verifyWithExternalJwt: (props: VerifyWithExternalJwtParams) => Promise<UserProfile | null>;
18
19
  };
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const emailEventNames = [
7
+ 'emailVerificationFinished',
8
+ ];
9
+ const smsEventNames = [
10
+ 'smsVerificationFinished',
11
+ ];
12
+
13
+ exports.emailEventNames = emailEventNames;
14
+ exports.smsEventNames = smsEventNames;
@@ -15,4 +15,14 @@ export type OtpMessages = {
15
15
  verifyOTP: (token: string) => Promise<void>;
16
16
  /** Re-sends the OTP for verification */
17
17
  resendOTP: () => Promise<void>;
18
+ emailVerificationFinished: (params: {
19
+ isSuccess: boolean;
20
+ destination: string;
21
+ }) => void;
22
+ smsVerificationFinished: (params: {
23
+ isSuccess: boolean;
24
+ destination: PhoneData;
25
+ }) => void;
18
26
  };
27
+ export declare const emailEventNames: "emailVerificationFinished"[];
28
+ export declare const smsEventNames: "smsVerificationFinished"[];
@@ -0,0 +1,9 @@
1
+ 'use client'
2
+ const emailEventNames = [
3
+ 'emailVerificationFinished',
4
+ ];
5
+ const smsEventNames = [
6
+ 'smsVerificationFinished',
7
+ ];
8
+
9
+ export { emailEventNames, smsEventNames };
@@ -0,0 +1,6 @@
1
+ import { ProjectSettings } from '@dynamic-labs/sdk-api-core';
2
+ export type ProjectSettingsMessages = {
3
+ getProjectSettings: () => Promise<{
4
+ projectSettings: ProjectSettings;
5
+ }>;
6
+ };
@@ -0,0 +1,5 @@
1
+ export type SecureStorageMessages = {
2
+ getSecureItem: (key: string) => Promise<string | null>;
3
+ setSecureItem: (key: string, data: string) => Promise<void>;
4
+ deleteSecureItem: (key: string) => Promise<void>;
5
+ };