@dynamic-labs/client 0.0.0-exp20240808.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/CHANGELOG.md +3746 -0
  2. package/LICENSE +21 -0
  3. package/README.md +3 -0
  4. package/_virtual/_tslib.cjs +36 -0
  5. package/_virtual/_tslib.js +32 -0
  6. package/package.cjs +8 -0
  7. package/package.js +4 -0
  8. package/package.json +37 -0
  9. package/src/client/client.cjs +43 -0
  10. package/src/client/client.d.ts +29 -0
  11. package/src/client/client.js +38 -0
  12. package/src/client/core/core.cjs +50 -0
  13. package/src/client/core/core.d.ts +44 -0
  14. package/src/client/core/core.js +46 -0
  15. package/src/client/core/index.d.ts +1 -0
  16. package/src/client/core/modules/initializationModule/index.d.ts +1 -0
  17. package/src/client/core/modules/initializationModule/initializationModule.cjs +33 -0
  18. package/src/client/core/modules/initializationModule/initializationModule.d.ts +6 -0
  19. package/src/client/core/modules/initializationModule/initializationModule.js +29 -0
  20. package/src/client/core/modules/manifestModule/createPartialManifest/createPartialManifest.cjs +17 -0
  21. package/src/client/core/modules/manifestModule/createPartialManifest/createPartialManifest.d.ts +3 -0
  22. package/src/client/core/modules/manifestModule/createPartialManifest/createPartialManifest.js +13 -0
  23. package/src/client/core/modules/manifestModule/createPartialManifest/index.d.ts +1 -0
  24. package/src/client/core/modules/manifestModule/index.d.ts +1 -0
  25. package/src/client/core/modules/manifestModule/manifestModule.cjs +36 -0
  26. package/src/client/core/modules/manifestModule/manifestModule.d.ts +11 -0
  27. package/src/client/core/modules/manifestModule/manifestModule.js +32 -0
  28. package/src/client/core/modules/manifestModule/validateManifest/index.d.ts +1 -0
  29. package/src/client/core/modules/manifestModule/validateManifest/validateManifest.cjs +31 -0
  30. package/src/client/core/modules/manifestModule/validateManifest/validateManifest.d.ts +14 -0
  31. package/src/client/core/modules/manifestModule/validateManifest/validateManifest.js +26 -0
  32. package/src/client/index.d.ts +1 -0
  33. package/src/index.cjs +15 -0
  34. package/src/index.d.ts +9 -0
  35. package/src/index.js +4 -0
  36. package/src/modules/authModule/authModule.cjs +37 -0
  37. package/src/modules/authModule/authModule.d.ts +15 -0
  38. package/src/modules/authModule/authModule.js +33 -0
  39. package/src/modules/authModule/emailAuthModule/emailAuthModule.cjs +20 -0
  40. package/src/modules/authModule/emailAuthModule/emailAuthModule.d.ts +8 -0
  41. package/src/modules/authModule/emailAuthModule/emailAuthModule.js +16 -0
  42. package/src/modules/authModule/emailAuthModule/index.d.ts +1 -0
  43. package/src/modules/authModule/externalAuthModule/externalAuthModule.cjs +16 -0
  44. package/src/modules/authModule/externalAuthModule/externalAuthModule.d.ts +7 -0
  45. package/src/modules/authModule/externalAuthModule/externalAuthModule.js +12 -0
  46. package/src/modules/authModule/externalAuthModule/index.d.ts +1 -0
  47. package/src/modules/authModule/index.d.ts +1 -0
  48. package/src/modules/authModule/smsAuthModule/index.d.ts +1 -0
  49. package/src/modules/authModule/smsAuthModule/smsAuthModule.cjs +17 -0
  50. package/src/modules/authModule/smsAuthModule/smsAuthModule.d.ts +9 -0
  51. package/src/modules/authModule/smsAuthModule/smsAuthModule.js +13 -0
  52. package/src/modules/authModule/socialAuthModule/index.d.ts +1 -0
  53. package/src/modules/authModule/socialAuthModule/socialAuthModule.cjs +14 -0
  54. package/src/modules/authModule/socialAuthModule/socialAuthModule.d.ts +6 -0
  55. package/src/modules/authModule/socialAuthModule/socialAuthModule.js +10 -0
  56. package/src/modules/networksModule/index.d.ts +1 -0
  57. package/src/modules/networksModule/networksModule.cjs +18 -0
  58. package/src/modules/networksModule/networksModule.d.ts +3 -0
  59. package/src/modules/networksModule/networksModule.js +14 -0
  60. package/src/modules/sdkModule/index.d.ts +1 -0
  61. package/src/modules/sdkModule/sdkModule.cjs +24 -0
  62. package/src/modules/sdkModule/sdkModule.d.ts +6 -0
  63. package/src/modules/sdkModule/sdkModule.js +20 -0
  64. package/src/modules/userInterfaceModule/index.d.ts +1 -0
  65. package/src/modules/userInterfaceModule/userInterfaceModule.cjs +23 -0
  66. package/src/modules/userInterfaceModule/userInterfaceModule.d.ts +14 -0
  67. package/src/modules/userInterfaceModule/userInterfaceModule.js +19 -0
  68. package/src/modules/walletsModule/embeddedWalletsModule/embeddedWalletsModule.cjs +29 -0
  69. package/src/modules/walletsModule/embeddedWalletsModule/embeddedWalletsModule.d.ts +6 -0
  70. package/src/modules/walletsModule/embeddedWalletsModule/embeddedWalletsModule.js +25 -0
  71. package/src/modules/walletsModule/embeddedWalletsModule/index.d.ts +1 -0
  72. package/src/modules/walletsModule/index.d.ts +1 -0
  73. package/src/modules/walletsModule/walletsModule.cjs +32 -0
  74. package/src/modules/walletsModule/walletsModule.d.ts +12 -0
  75. package/src/modules/walletsModule/walletsModule.js +28 -0
  76. package/src/utils/Extendable/Extendable.cjs +29 -0
  77. package/src/utils/Extendable/Extendable.d.ts +25 -0
  78. package/src/utils/Extendable/Extendable.js +25 -0
  79. package/src/utils/Extendable/deepMerge/deepMergeInto.cjs +26 -0
  80. package/src/utils/Extendable/deepMerge/deepMergeInto.d.ts +6 -0
  81. package/src/utils/Extendable/deepMerge/deepMergeInto.js +22 -0
  82. package/src/utils/Extendable/deepMerge/index.d.ts +1 -0
  83. package/src/utils/Extendable/hasExtension/hasExtension.cjs +14 -0
  84. package/src/utils/Extendable/hasExtension/hasExtension.d.ts +9 -0
  85. package/src/utils/Extendable/hasExtension/hasExtension.js +10 -0
  86. package/src/utils/Extendable/hasExtension/index.d.ts +1 -0
  87. package/src/utils/Extendable/index.d.ts +1 -0
  88. package/src/utils/addProperty/addProperty.cjs +21 -0
  89. package/src/utils/addProperty/addProperty.d.ts +13 -0
  90. package/src/utils/addProperty/addProperty.js +17 -0
  91. package/src/utils/addProperty/index.d.ts +1 -0
  92. package/src/utils/logger/index.d.ts +1 -0
  93. package/src/utils/logger/logger.cjs +10 -0
  94. package/src/utils/logger/logger.d.ts +2 -0
  95. package/src/utils/logger/logger.js +6 -0
  96. package/src/utils/pickListenerActions/index.d.ts +1 -0
  97. package/src/utils/pickListenerActions/pickListenerActions.cjs +17 -0
  98. package/src/utils/pickListenerActions/pickListenerActions.d.ts +6 -0
  99. package/src/utils/pickListenerActions/pickListenerActions.js +13 -0
@@ -0,0 +1,14 @@
1
+ import type { ClientManifest } from '@dynamic-labs/message-transport';
2
+ /**
3
+ * Union of fields from ClientManifest which must be defined
4
+ */
5
+ type MandatoryClientManifestField = {
6
+ [K in keyof ClientManifest]-?: NonNullable<unknown> extends Pick<ClientManifest, K> ? never : K;
7
+ }[keyof ClientManifest];
8
+ /**
9
+ * Maps each required field of the client manifest to an error message that explains
10
+ * what the customer can do if his app runs into the issue where this field is missing from his manifest.
11
+ */
12
+ export declare const mandatoryFields: Record<MandatoryClientManifestField, string>;
13
+ export declare const validateManifest: (partialManifest: Partial<ClientManifest>) => ClientManifest;
14
+ export {};
@@ -0,0 +1,26 @@
1
+ 'use client'
2
+ /**
3
+ * Maps each required field of the client manifest to an error message that explains
4
+ * what the customer can do if his app runs into the issue where this field is missing from his manifest.
5
+ */
6
+ const mandatoryFields = {
7
+ clientVersion: "We were unable to retrieve the Dynamic Client's version from your app. Please contact us about this.",
8
+ environmentId: 'You must provide an environment id to the Dynamic Client.',
9
+ platform: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
10
+ redirectUrl: 'Missing platform specific extension, like BrowserExtension or ReactNativeExtension. See how to setup Dynamic Client in our docs for help.',
11
+ };
12
+ const validateManifest = (partialManifest) => {
13
+ /**
14
+ * If any of these fields are missing, we show the user an error message.
15
+ * You should map to each required field a description of what the user can do to fix this issue.
16
+ *
17
+ * And if you add a new required field to DynamicClient, TS will automatically force you to
18
+ * also include a description here :)
19
+ */
20
+ for (const [field, description] of Object.entries(mandatoryFields))
21
+ if (partialManifest[field] === undefined)
22
+ throw new Error(`Missing client manifest field "${field}": ${description}`);
23
+ return partialManifest;
24
+ };
25
+
26
+ export { mandatoryFields, validateManifest };
@@ -0,0 +1 @@
1
+ export * from './client';
package/src/index.cjs ADDED
@@ -0,0 +1,15 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var Extendable = require('./utils/Extendable/Extendable.cjs');
7
+ var hasExtension = require('./utils/Extendable/hasExtension/hasExtension.cjs');
8
+ var client = require('./client/client.cjs');
9
+
10
+
11
+
12
+ exports.Extendable = Extendable.Extendable;
13
+ exports.hasExtension = hasExtension.hasExtension;
14
+ exports.baseClientExtensionName = client.baseClientExtensionName;
15
+ exports.createClient = client.createClient;
package/src/index.d.ts ADDED
@@ -0,0 +1,9 @@
1
+ export type { SocialProvider } from '@dynamic-labs/message-transport';
2
+ export type { BaseWallet as Wallet } from '@dynamic-labs/types';
3
+ export { type Core } from './client/core';
4
+ export { Extendable, type Extension } from './utils/Extendable';
5
+ export { hasExtension } from './utils/Extendable/hasExtension';
6
+ export { createClient, type BaseClient, type ClientProps, baseClientExtensionName, } from './client';
7
+ export type { AuthModule } from './modules/authModule';
8
+ export type { SdkModule } from './modules/sdkModule';
9
+ export type { WalletsModule } from './modules/walletsModule';
package/src/index.js ADDED
@@ -0,0 +1,4 @@
1
+ 'use client'
2
+ export { Extendable } from './utils/Extendable/Extendable.js';
3
+ export { hasExtension } from './utils/Extendable/hasExtension/hasExtension.js';
4
+ export { baseClientExtensionName, createClient } from './client/client.js';
@@ -0,0 +1,37 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+ var pickListenerActions = require('../../utils/pickListenerActions/pickListenerActions.cjs');
8
+ var emailAuthModule = require('./emailAuthModule/emailAuthModule.cjs');
9
+ var externalAuthModule = require('./externalAuthModule/externalAuthModule.cjs');
10
+ var smsAuthModule = require('./smsAuthModule/smsAuthModule.cjs');
11
+ var socialAuthModule = require('./socialAuthModule/socialAuthModule.cjs');
12
+
13
+ const createAuthModule = (core) => {
14
+ const store = messageTransport.createStore({
15
+ initialState: {
16
+ authenticatedUser: null,
17
+ token: null,
18
+ },
19
+ key: 'auth',
20
+ messageTransport: core.messageTransport,
21
+ });
22
+ const messageEvents = messageTransport.createEventEmitterForMessages({
23
+ initialEventEmitter: store.eventEmitter,
24
+ key: 'auth',
25
+ messageTransport: core.messageTransport,
26
+ });
27
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
28
+ return Object.assign(store.getters, pickListenerActions.pickListenerActions(messageEvents), {
29
+ email: emailAuthModule.createEmailAuthModule(core),
30
+ external: externalAuthModule.createExternalAuthModule(core),
31
+ logout: () => requestChannel.request('logout'),
32
+ sms: smsAuthModule.createSmsAuthModule(core),
33
+ social: socialAuthModule.createSocialAuthModule(core),
34
+ });
35
+ };
36
+
37
+ exports.createAuthModule = createAuthModule;
@@ -0,0 +1,15 @@
1
+ import { AuthModuleMessages, AuthModuleState, StoreEventListeners } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../client/core';
3
+ import { EmailAuthModule } from './emailAuthModule';
4
+ import { ExternalAuthModule } from './externalAuthModule';
5
+ import { SmsAuthModule } from './smsAuthModule';
6
+ import { SocialAuthModule } from './socialAuthModule';
7
+ type PublicAuthModuleMessages = Pick<AuthModuleMessages, 'logout'>;
8
+ export type AuthModule = AuthModuleState & StoreEventListeners<AuthModuleState> & PublicAuthModuleMessages & {
9
+ sms: SmsAuthModule;
10
+ email: EmailAuthModule;
11
+ social: SocialAuthModule;
12
+ external: ExternalAuthModule;
13
+ };
14
+ export declare const createAuthModule: (core: Core) => AuthModule;
15
+ export {};
@@ -0,0 +1,33 @@
1
+ 'use client'
2
+ import { createStore, createEventEmitterForMessages, createRequestChannel } from '@dynamic-labs/message-transport';
3
+ import { pickListenerActions } from '../../utils/pickListenerActions/pickListenerActions.js';
4
+ import { createEmailAuthModule } from './emailAuthModule/emailAuthModule.js';
5
+ import { createExternalAuthModule } from './externalAuthModule/externalAuthModule.js';
6
+ import { createSmsAuthModule } from './smsAuthModule/smsAuthModule.js';
7
+ import { createSocialAuthModule } from './socialAuthModule/socialAuthModule.js';
8
+
9
+ const createAuthModule = (core) => {
10
+ const store = createStore({
11
+ initialState: {
12
+ authenticatedUser: null,
13
+ token: null,
14
+ },
15
+ key: 'auth',
16
+ messageTransport: core.messageTransport,
17
+ });
18
+ const messageEvents = createEventEmitterForMessages({
19
+ initialEventEmitter: store.eventEmitter,
20
+ key: 'auth',
21
+ messageTransport: core.messageTransport,
22
+ });
23
+ const requestChannel = createRequestChannel(core.messageTransport);
24
+ return Object.assign(store.getters, pickListenerActions(messageEvents), {
25
+ email: createEmailAuthModule(core),
26
+ external: createExternalAuthModule(core),
27
+ logout: () => requestChannel.request('logout'),
28
+ sms: createSmsAuthModule(core),
29
+ social: createSocialAuthModule(core),
30
+ });
31
+ };
32
+
33
+ export { createAuthModule };
@@ -0,0 +1,20 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+
8
+ const createEmailAuthModule = (core) => {
9
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
10
+ return {
11
+ resendOTP: () => requestChannel.request('resendOTP'),
12
+ sendOTP: (email) => requestChannel.request('sendOTP', {
13
+ destination: 'email',
14
+ target: email,
15
+ }),
16
+ verifyOTP: (token) => requestChannel.request('verifyOTP', token),
17
+ };
18
+ };
19
+
20
+ exports.createEmailAuthModule = createEmailAuthModule;
@@ -0,0 +1,8 @@
1
+ import { OtpMessages } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../../client/core';
3
+ export type EmailAuthModule = {
4
+ resendOTP: OtpMessages['resendOTP'];
5
+ sendOTP: (email: string) => Promise<void>;
6
+ verifyOTP: OtpMessages['verifyOTP'];
7
+ };
8
+ export declare const createEmailAuthModule: (core: Core) => EmailAuthModule;
@@ -0,0 +1,16 @@
1
+ 'use client'
2
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
3
+
4
+ const createEmailAuthModule = (core) => {
5
+ const requestChannel = createRequestChannel(core.messageTransport);
6
+ return {
7
+ resendOTP: () => requestChannel.request('resendOTP'),
8
+ sendOTP: (email) => requestChannel.request('sendOTP', {
9
+ destination: 'email',
10
+ target: email,
11
+ }),
12
+ verifyOTP: (token) => requestChannel.request('verifyOTP', token),
13
+ };
14
+ };
15
+
16
+ export { createEmailAuthModule };
@@ -0,0 +1 @@
1
+ export * from './emailAuthModule';
@@ -0,0 +1,16 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+
8
+ const createExternalAuthModule = (core) => {
9
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
10
+ return {
11
+ signInWithExternalJwt: (props) => requestChannel.request('signInWithExternalJwt', props),
12
+ verifyWithExternalJwt: (props) => requestChannel.request('verifyWithExternalJwt', props),
13
+ };
14
+ };
15
+
16
+ exports.createExternalAuthModule = createExternalAuthModule;
@@ -0,0 +1,7 @@
1
+ import { ExternalAuthMessages } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../../client/core';
3
+ export type ExternalAuthModule = {
4
+ signInWithExternalJwt: ExternalAuthMessages['signInWithExternalJwt'];
5
+ verifyWithExternalJwt: ExternalAuthMessages['verifyWithExternalJwt'];
6
+ };
7
+ export declare const createExternalAuthModule: (core: Core) => ExternalAuthModule;
@@ -0,0 +1,12 @@
1
+ 'use client'
2
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
3
+
4
+ const createExternalAuthModule = (core) => {
5
+ const requestChannel = createRequestChannel(core.messageTransport);
6
+ return {
7
+ signInWithExternalJwt: (props) => requestChannel.request('signInWithExternalJwt', props),
8
+ verifyWithExternalJwt: (props) => requestChannel.request('verifyWithExternalJwt', props),
9
+ };
10
+ };
11
+
12
+ export { createExternalAuthModule };
@@ -0,0 +1 @@
1
+ export * from './externalAuthModule';
@@ -0,0 +1 @@
1
+ export * from './authModule';
@@ -0,0 +1 @@
1
+ export * from './smsAuthModule';
@@ -0,0 +1,17 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+
8
+ const createSmsAuthModule = (core) => {
9
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
10
+ return {
11
+ resendOTP: () => requestChannel.request('resendOTP'),
12
+ sendOTP: (phone) => requestChannel.request('sendOTP', { destination: 'sms', target: phone }),
13
+ verifyOTP: (token) => requestChannel.request('verifyOTP', token),
14
+ };
15
+ };
16
+
17
+ exports.createSmsAuthModule = createSmsAuthModule;
@@ -0,0 +1,9 @@
1
+ import { PhoneData } from '@dynamic-labs/types';
2
+ import { OtpMessages } from '@dynamic-labs/message-transport';
3
+ import { Core } from '../../../client/core';
4
+ export type SmsAuthModule = {
5
+ resendOTP: OtpMessages['resendOTP'];
6
+ sendOTP: (phone: PhoneData) => Promise<void>;
7
+ verifyOTP: OtpMessages['verifyOTP'];
8
+ };
9
+ export declare const createSmsAuthModule: (core: Core) => SmsAuthModule;
@@ -0,0 +1,13 @@
1
+ 'use client'
2
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
3
+
4
+ const createSmsAuthModule = (core) => {
5
+ const requestChannel = createRequestChannel(core.messageTransport);
6
+ return {
7
+ resendOTP: () => requestChannel.request('resendOTP'),
8
+ sendOTP: (phone) => requestChannel.request('sendOTP', { destination: 'sms', target: phone }),
9
+ verifyOTP: (token) => requestChannel.request('verifyOTP', token),
10
+ };
11
+ };
12
+
13
+ export { createSmsAuthModule };
@@ -0,0 +1 @@
1
+ export * from './socialAuthModule';
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+
8
+ const createSocialAuthModule = (core) => {
9
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
10
+ const connect = (props) => requestChannel.request('connectWithSocial', props);
11
+ return { connect };
12
+ };
13
+
14
+ exports.createSocialAuthModule = createSocialAuthModule;
@@ -0,0 +1,6 @@
1
+ import { SocialAuthModuleMessages } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../../client/core';
3
+ export type SocialAuthModule = {
4
+ connect: SocialAuthModuleMessages['connectWithSocial'];
5
+ };
6
+ export declare const createSocialAuthModule: (core: Core) => SocialAuthModule;
@@ -0,0 +1,10 @@
1
+ 'use client'
2
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
3
+
4
+ const createSocialAuthModule = (core) => {
5
+ const requestChannel = createRequestChannel(core.messageTransport);
6
+ const connect = (props) => requestChannel.request('connectWithSocial', props);
7
+ return { connect };
8
+ };
9
+
10
+ export { createSocialAuthModule };
@@ -0,0 +1 @@
1
+ export { createNetworksModule } from './networksModule';
@@ -0,0 +1,18 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+ var pickListenerActions = require('../../utils/pickListenerActions/pickListenerActions.cjs');
8
+
9
+ const createNetworksModule = (core) => {
10
+ const store = messageTransport.createStore({
11
+ initialState: { evm: [], solana: [] },
12
+ key: 'networks',
13
+ messageTransport: core.messageTransport,
14
+ });
15
+ return Object.assign(store.getters, pickListenerActions.pickListenerActions(store.eventEmitter));
16
+ };
17
+
18
+ exports.createNetworksModule = createNetworksModule;
@@ -0,0 +1,3 @@
1
+ import { NetworksModuleState } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../client/core';
3
+ export declare const createNetworksModule: (core: Core) => import("@dynamic-labs/message-transport").StoreStateGetters<NetworksModuleState> & Pick<import("eventemitter3").EventEmitter<import("@dynamic-labs/message-transport").StoreStateEvents<NetworksModuleState>, any>, "on" | "off" | "once">;
@@ -0,0 +1,14 @@
1
+ 'use client'
2
+ import { createStore } from '@dynamic-labs/message-transport';
3
+ import { pickListenerActions } from '../../utils/pickListenerActions/pickListenerActions.js';
4
+
5
+ const createNetworksModule = (core) => {
6
+ const store = createStore({
7
+ initialState: { evm: [], solana: [] },
8
+ key: 'networks',
9
+ messageTransport: core.messageTransport,
10
+ });
11
+ return Object.assign(store.getters, pickListenerActions(store.eventEmitter));
12
+ };
13
+
14
+ export { createNetworksModule };
@@ -0,0 +1 @@
1
+ export * from './sdkModule';
@@ -0,0 +1,24 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+ var pickListenerActions = require('../../utils/pickListenerActions/pickListenerActions.cjs');
8
+ var addProperty = require('../../utils/addProperty/addProperty.cjs');
9
+
10
+ const createSdkModule = (core) => {
11
+ const store = messageTransport.createStore({
12
+ initialState: {
13
+ loaded: false,
14
+ },
15
+ key: 'sdk',
16
+ messageTransport: core.messageTransport,
17
+ });
18
+ const baseModule = Object.assign(store.getters, pickListenerActions.pickListenerActions(store.eventEmitter));
19
+ return addProperty.addProperty(baseModule, 'error', {
20
+ get: () => core.initialization.error,
21
+ });
22
+ };
23
+
24
+ exports.createSdkModule = createSdkModule;
@@ -0,0 +1,6 @@
1
+ import { SdkModuleState, StoreEventListeners } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../client/core';
3
+ export type SdkModule = SdkModuleState & StoreEventListeners<SdkModuleState> & {
4
+ readonly error: Error | null;
5
+ };
6
+ export declare const createSdkModule: (core: Core) => SdkModule;
@@ -0,0 +1,20 @@
1
+ 'use client'
2
+ import { createStore } from '@dynamic-labs/message-transport';
3
+ import { pickListenerActions } from '../../utils/pickListenerActions/pickListenerActions.js';
4
+ import { addProperty } from '../../utils/addProperty/addProperty.js';
5
+
6
+ const createSdkModule = (core) => {
7
+ const store = createStore({
8
+ initialState: {
9
+ loaded: false,
10
+ },
11
+ key: 'sdk',
12
+ messageTransport: core.messageTransport,
13
+ });
14
+ const baseModule = Object.assign(store.getters, pickListenerActions(store.eventEmitter));
15
+ return addProperty(baseModule, 'error', {
16
+ get: () => core.initialization.error,
17
+ });
18
+ };
19
+
20
+ export { createSdkModule };
@@ -0,0 +1 @@
1
+ export { createUserInterfaceModule } from './userInterfaceModule';
@@ -0,0 +1,23 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+
8
+ const createUserInterfaceModule = (core) => {
9
+ const userInterfaceRequestChannel = messageTransport.createRequestChannel(core.messageTransport);
10
+ return {
11
+ auth: {
12
+ show: () => userInterfaceRequestChannel.emit('openAuthFlow'),
13
+ },
14
+ userProfile: {
15
+ show: () => userInterfaceRequestChannel.emit('openUserProfile'),
16
+ },
17
+ wallets: {
18
+ revealEmbeddedWalletKey: (params) => userInterfaceRequestChannel.emit('revealEmbeddedWalletKey', params),
19
+ },
20
+ };
21
+ };
22
+
23
+ exports.createUserInterfaceModule = createUserInterfaceModule;
@@ -0,0 +1,14 @@
1
+ import { UserInterfaceModuleMessages } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../client/core';
3
+ export type UserInterfaceModule = {
4
+ auth: {
5
+ show: VoidFunction;
6
+ };
7
+ userProfile: {
8
+ show: VoidFunction;
9
+ };
10
+ wallets: {
11
+ revealEmbeddedWalletKey: UserInterfaceModuleMessages['revealEmbeddedWalletKey'];
12
+ };
13
+ };
14
+ export declare const createUserInterfaceModule: (core: Core) => UserInterfaceModule;
@@ -0,0 +1,19 @@
1
+ 'use client'
2
+ import { createRequestChannel } from '@dynamic-labs/message-transport';
3
+
4
+ const createUserInterfaceModule = (core) => {
5
+ const userInterfaceRequestChannel = createRequestChannel(core.messageTransport);
6
+ return {
7
+ auth: {
8
+ show: () => userInterfaceRequestChannel.emit('openAuthFlow'),
9
+ },
10
+ userProfile: {
11
+ show: () => userInterfaceRequestChannel.emit('openUserProfile'),
12
+ },
13
+ wallets: {
14
+ revealEmbeddedWalletKey: (params) => userInterfaceRequestChannel.emit('revealEmbeddedWalletKey', params),
15
+ },
16
+ };
17
+ };
18
+
19
+ export { createUserInterfaceModule };
@@ -0,0 +1,29 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+ var pickListenerActions = require('../../../utils/pickListenerActions/pickListenerActions.cjs');
8
+
9
+ const createEmbeddedWalletsModule = (core) => {
10
+ const store = messageTransport.createStore({
11
+ initialState: {
12
+ hasWallet: false,
13
+ },
14
+ key: 'embeddedWallets',
15
+ messageTransport: core.messageTransport,
16
+ });
17
+ const messageEvents = messageTransport.createEventEmitterForMessages({
18
+ initialEventEmitter: store.eventEmitter,
19
+ key: 'embeddedWallets',
20
+ messageTransport: core.messageTransport,
21
+ });
22
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
23
+ return Object.assign(store.getters, pickListenerActions.pickListenerActions(messageEvents), {
24
+ createWallet: () => requestChannel.request('createWallet'),
25
+ getWallet: () => requestChannel.request('getWallet'),
26
+ });
27
+ };
28
+
29
+ exports.createEmbeddedWalletsModule = createEmbeddedWalletsModule;
@@ -0,0 +1,6 @@
1
+ import { EmbeddedWalletsModuleMessages, EmbeddedWalletsModuleState, StoreEventListeners } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../../client/core';
3
+ type PublicEmbeddedWalletsModuleMessages = Pick<EmbeddedWalletsModuleMessages, 'createWallet' | 'getWallet'>;
4
+ export type EmbeddedWalletsModule = EmbeddedWalletsModuleState & StoreEventListeners<EmbeddedWalletsModuleState> & PublicEmbeddedWalletsModuleMessages;
5
+ export declare const createEmbeddedWalletsModule: (core: Core) => EmbeddedWalletsModule;
6
+ export {};
@@ -0,0 +1,25 @@
1
+ 'use client'
2
+ import { createStore, createEventEmitterForMessages, createRequestChannel } from '@dynamic-labs/message-transport';
3
+ import { pickListenerActions } from '../../../utils/pickListenerActions/pickListenerActions.js';
4
+
5
+ const createEmbeddedWalletsModule = (core) => {
6
+ const store = createStore({
7
+ initialState: {
8
+ hasWallet: false,
9
+ },
10
+ key: 'embeddedWallets',
11
+ messageTransport: core.messageTransport,
12
+ });
13
+ const messageEvents = createEventEmitterForMessages({
14
+ initialEventEmitter: store.eventEmitter,
15
+ key: 'embeddedWallets',
16
+ messageTransport: core.messageTransport,
17
+ });
18
+ const requestChannel = createRequestChannel(core.messageTransport);
19
+ return Object.assign(store.getters, pickListenerActions(messageEvents), {
20
+ createWallet: () => requestChannel.request('createWallet'),
21
+ getWallet: () => requestChannel.request('getWallet'),
22
+ });
23
+ };
24
+
25
+ export { createEmbeddedWalletsModule };
@@ -0,0 +1 @@
1
+ export * from './embeddedWalletsModule';
@@ -0,0 +1 @@
1
+ export * from './walletsModule';
@@ -0,0 +1,32 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var messageTransport = require('@dynamic-labs/message-transport');
7
+ var pickListenerActions = require('../../utils/pickListenerActions/pickListenerActions.cjs');
8
+ var embeddedWalletsModule = require('./embeddedWalletsModule/embeddedWalletsModule.cjs');
9
+
10
+ const createWalletsModule = (core) => {
11
+ const requestChannel = messageTransport.createRequestChannel(core.messageTransport);
12
+ const store = messageTransport.createStore({
13
+ initialState: { primary: undefined, userWallets: [] },
14
+ key: 'wallets',
15
+ messageTransport: core.messageTransport,
16
+ });
17
+ const signMessage = (params) => requestChannel.request('signMessage', params);
18
+ const getBalance = (params) => requestChannel.request('getBalance', params);
19
+ const switchNetwork = (params) => requestChannel.request('switchNetwork', params);
20
+ const getNetwork = (params) => requestChannel.request('getNetwork', params);
21
+ const setPrimary = (params) => requestChannel.request('setPrimary', params);
22
+ return Object.assign(store.getters, pickListenerActions.pickListenerActions(store.eventEmitter), {
23
+ embedded: embeddedWalletsModule.createEmbeddedWalletsModule(core),
24
+ getBalance,
25
+ getNetwork,
26
+ setPrimary,
27
+ signMessage,
28
+ switchNetwork,
29
+ });
30
+ };
31
+
32
+ exports.createWalletsModule = createWalletsModule;
@@ -0,0 +1,12 @@
1
+ import { StoreEventListeners, WalletsModuleMessages, WalletsModuleState } from '@dynamic-labs/message-transport';
2
+ import { Core } from '../../client/core';
3
+ import { EmbeddedWalletsModule } from './embeddedWalletsModule';
4
+ export type WalletsModule = WalletsModuleState & {
5
+ embedded: EmbeddedWalletsModule;
6
+ signMessage: WalletsModuleMessages['signMessage'];
7
+ switchNetwork: WalletsModuleMessages['switchNetwork'];
8
+ getBalance: WalletsModuleMessages['getBalance'];
9
+ getNetwork: WalletsModuleMessages['getNetwork'];
10
+ setPrimary: WalletsModuleMessages['setPrimary'];
11
+ } & StoreEventListeners<WalletsModuleState>;
12
+ export declare const createWalletsModule: (core: Core) => WalletsModule;