@dynamic-labs-sdk/client 0.23.4 → 0.24.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.
- package/dist/{InvalidParamError-D2mY6bDm.cjs.js → InvalidParamError-9IR2C0up.cjs.js} +9 -5
- package/dist/{InvalidParamError-D2mY6bDm.cjs.js.map → InvalidParamError-9IR2C0up.cjs.js.map} +1 -1
- package/dist/{InvalidParamError-DQNvDHoJ.esm.js → InvalidParamError-Bq5zAFj4.esm.js} +8 -4
- package/dist/{InvalidParamError-DQNvDHoJ.esm.js.map → InvalidParamError-Bq5zAFj4.esm.js.map} +1 -1
- package/dist/{NotWaasWalletAccountError-BycDPZE7.esm.js → NotWaasWalletAccountError-CIJRq-EG.esm.js} +3 -3
- package/dist/{NotWaasWalletAccountError-BycDPZE7.esm.js.map → NotWaasWalletAccountError-CIJRq-EG.esm.js.map} +1 -1
- package/dist/{NotWaasWalletAccountError-DKt-e0jp.cjs.js → NotWaasWalletAccountError-DpRIY6Pd.cjs.js} +3 -3
- package/dist/{NotWaasWalletAccountError-DKt-e0jp.cjs.js.map → NotWaasWalletAccountError-DpRIY6Pd.cjs.js.map} +1 -1
- package/dist/core.cjs.js +6 -29
- package/dist/core.cjs.js.map +1 -1
- package/dist/core.esm.js +5 -28
- package/dist/core.esm.js.map +1 -1
- package/dist/exports/index.d.ts +3 -0
- package/dist/exports/index.d.ts.map +1 -1
- package/dist/{getNetworkProviderFromNetworkId-Ck4qXPsJ.esm.js → getNetworkProviderFromNetworkId-C4aba1hS.esm.js} +27 -4
- package/dist/getNetworkProviderFromNetworkId-C4aba1hS.esm.js.map +1 -0
- package/dist/{getNetworkProviderFromNetworkId-BZ0Yi99m.cjs.js → getNetworkProviderFromNetworkId-COxYamJy.cjs.js} +32 -3
- package/dist/getNetworkProviderFromNetworkId-COxYamJy.cjs.js.map +1 -0
- package/dist/{getSignedSessionId-oiCgC33U.cjs.js → getSignedSessionId-D7uV3dw0.cjs.js} +3 -3
- package/dist/{getSignedSessionId-oiCgC33U.cjs.js.map → getSignedSessionId-D7uV3dw0.cjs.js.map} +1 -1
- package/dist/{getSignedSessionId-lg-rT8W_.esm.js → getSignedSessionId-_vjv5TNw.esm.js} +3 -3
- package/dist/{getSignedSessionId-lg-rT8W_.esm.js.map → getSignedSessionId-_vjv5TNw.esm.js.map} +1 -1
- package/dist/{getVerifiedCredentialForWalletAccount-6iZSd5T2.cjs.js → getVerifiedCredentialForWalletAccount-Df_wN20i.cjs.js} +3 -3
- package/dist/{getVerifiedCredentialForWalletAccount-6iZSd5T2.cjs.js.map → getVerifiedCredentialForWalletAccount-Df_wN20i.cjs.js.map} +1 -1
- package/dist/{getVerifiedCredentialForWalletAccount-C2m6GufK.esm.js → getVerifiedCredentialForWalletAccount-Y-aJ2rY7.esm.js} +2 -2
- package/dist/{getVerifiedCredentialForWalletAccount-C2m6GufK.esm.js.map → getVerifiedCredentialForWalletAccount-Y-aJ2rY7.esm.js.map} +1 -1
- package/dist/index.cjs.js +114 -5
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.esm.js +114 -6
- package/dist/index.esm.js.map +1 -1
- package/dist/{isMfaRequiredForAction-DqZS12dt.esm.js → isMfaRequiredForAction-Cc6jkbY5.esm.js} +2 -2
- package/dist/{isMfaRequiredForAction-DqZS12dt.esm.js.map → isMfaRequiredForAction-Cc6jkbY5.esm.js.map} +1 -1
- package/dist/{isMfaRequiredForAction-DRetUSWZ.cjs.js → isMfaRequiredForAction-cfGmMd_g.cjs.js} +2 -2
- package/dist/{isMfaRequiredForAction-DRetUSWZ.cjs.js.map → isMfaRequiredForAction-cfGmMd_g.cjs.js.map} +1 -1
- package/dist/modules/checkout/createCheckoutTransaction/createCheckoutTransaction.d.ts.map +1 -1
- package/dist/modules/checkout/events.d.ts +27 -0
- package/dist/modules/checkout/events.d.ts.map +1 -0
- package/dist/modules/checkout/trackCheckoutTransaction/index.d.ts +3 -0
- package/dist/modules/checkout/trackCheckoutTransaction/index.d.ts.map +1 -0
- package/dist/modules/checkout/trackCheckoutTransaction/trackCheckoutTransaction.d.ts +15 -0
- package/dist/modules/checkout/trackCheckoutTransaction/trackCheckoutTransaction.d.ts.map +1 -0
- package/dist/modules/checkout/utils/createCheckoutTransactionChannelSchema/createCheckoutTransactionChannelSchema.d.ts +28 -0
- package/dist/modules/checkout/utils/createCheckoutTransactionChannelSchema/createCheckoutTransactionChannelSchema.d.ts.map +1 -0
- package/dist/modules/checkout/utils/createCheckoutTransactionChannelSchema/index.d.ts +3 -0
- package/dist/modules/checkout/utils/createCheckoutTransactionChannelSchema/index.d.ts.map +1 -0
- package/dist/modules/checkout/utils/subscribeToCheckoutTransaction/index.d.ts +3 -0
- package/dist/modules/checkout/utils/subscribeToCheckoutTransaction/index.d.ts.map +1 -0
- package/dist/modules/checkout/utils/subscribeToCheckoutTransaction/subscribeToCheckoutTransaction.d.ts +15 -0
- package/dist/modules/checkout/utils/subscribeToCheckoutTransaction/subscribeToCheckoutTransaction.d.ts.map +1 -0
- package/dist/tsconfig.lib.tsbuildinfo +1 -1
- package/dist/utils/getNonce/fetchAndStoreNonces/fetchAndStoreNonces.d.ts +4 -1
- package/dist/utils/getNonce/fetchAndStoreNonces/fetchAndStoreNonces.d.ts.map +1 -1
- package/dist/waas.cjs.js +4 -4
- package/dist/waas.esm.js +3 -3
- package/dist/waasCore.cjs.js +4 -4
- package/dist/waasCore.esm.js +3 -3
- package/package.json +3 -3
- package/dist/getNetworkProviderFromNetworkId-BZ0Yi99m.cjs.js.map +0 -1
- package/dist/getNetworkProviderFromNetworkId-Ck4qXPsJ.esm.js.map +0 -1
package/dist/index.cjs.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
const require_getNetworkProviderFromNetworkId = require('./getNetworkProviderFromNetworkId-
|
|
2
|
-
const require_InvalidParamError = require('./InvalidParamError-
|
|
3
|
-
const require_getVerifiedCredentialForWalletAccount = require('./getVerifiedCredentialForWalletAccount-
|
|
4
|
-
const require_NotWaasWalletAccountError = require('./NotWaasWalletAccountError-
|
|
5
|
-
const require_isMfaRequiredForAction = require('./isMfaRequiredForAction-
|
|
1
|
+
const require_getNetworkProviderFromNetworkId = require('./getNetworkProviderFromNetworkId-COxYamJy.cjs.js');
|
|
2
|
+
const require_InvalidParamError = require('./InvalidParamError-9IR2C0up.cjs.js');
|
|
3
|
+
const require_getVerifiedCredentialForWalletAccount = require('./getVerifiedCredentialForWalletAccount-Df_wN20i.cjs.js');
|
|
4
|
+
const require_NotWaasWalletAccountError = require('./NotWaasWalletAccountError-DpRIY6Pd.cjs.js');
|
|
5
|
+
const require_isMfaRequiredForAction = require('./isMfaRequiredForAction-cfGmMd_g.cjs.js');
|
|
6
6
|
let _dynamic_labs_sdk_assert_package_version = require("@dynamic-labs-sdk/assert-package-version");
|
|
7
7
|
let _dynamic_labs_sdk_api_core = require("@dynamic-labs/sdk-api-core");
|
|
8
8
|
let zod_mini = require("zod/mini");
|
|
@@ -2595,6 +2595,85 @@ const getCheckouts = async (client) => {
|
|
|
2595
2595
|
return projectSettings.checkouts ?? [];
|
|
2596
2596
|
};
|
|
2597
2597
|
|
|
2598
|
+
//#endregion
|
|
2599
|
+
//#region src/modules/checkout/utils/createCheckoutTransactionChannelSchema/createCheckoutTransactionChannelSchema.ts
|
|
2600
|
+
/**
|
|
2601
|
+
* Zod schema for realtime events published to a checkout transaction's channel.
|
|
2602
|
+
* Uses z.string() for axis and state fields to remain valid when new states are
|
|
2603
|
+
* added to the backend without requiring a SDK update.
|
|
2604
|
+
*/
|
|
2605
|
+
const checkoutTransactionEventSchema = zod_mini.object({
|
|
2606
|
+
axis: zod_mini.string(),
|
|
2607
|
+
newState: zod_mini.string(),
|
|
2608
|
+
previousState: zod_mini.string(),
|
|
2609
|
+
timestamp: zod_mini.string(),
|
|
2610
|
+
transactionId: zod_mini.string()
|
|
2611
|
+
});
|
|
2612
|
+
/**
|
|
2613
|
+
* Creates a typed realtime channel schema for a given checkout transaction.
|
|
2614
|
+
* Channel name follows the backend convention: `transaction:{transactionId}`.
|
|
2615
|
+
* @not-instrumented
|
|
2616
|
+
*/
|
|
2617
|
+
const createCheckoutTransactionChannelSchema = (transactionId) => require_getNetworkProviderFromNetworkId.__createRealtimeChannelSchema_wrapped({
|
|
2618
|
+
channel: `transaction:${transactionId}`,
|
|
2619
|
+
schema: checkoutTransactionEventSchema
|
|
2620
|
+
});
|
|
2621
|
+
|
|
2622
|
+
//#endregion
|
|
2623
|
+
//#region src/modules/checkout/utils/subscribeToCheckoutTransaction/subscribeToCheckoutTransaction.ts
|
|
2624
|
+
const TERMINAL_EXECUTION_STATES = new Set([
|
|
2625
|
+
"cancelled",
|
|
2626
|
+
"expired",
|
|
2627
|
+
"failed"
|
|
2628
|
+
]);
|
|
2629
|
+
const TERMINAL_SETTLEMENT_STATES = new Set(["completed", "failed"]);
|
|
2630
|
+
const isTerminalEvent = (data) => {
|
|
2631
|
+
if (data.axis === "execution") return TERMINAL_EXECUTION_STATES.has(data.newState);
|
|
2632
|
+
if (data.axis === "settlement") return TERMINAL_SETTLEMENT_STATES.has(data.newState);
|
|
2633
|
+
return false;
|
|
2634
|
+
};
|
|
2635
|
+
/**
|
|
2636
|
+
* Connects to the realtime service if not already connected and subscribes to
|
|
2637
|
+
* all state transition events for the given checkout transaction.
|
|
2638
|
+
*
|
|
2639
|
+
* Settlement and execution axis events are forwarded as public SDK events.
|
|
2640
|
+
* The subscription is torn down automatically when a terminal event is received.
|
|
2641
|
+
* @not-instrumented
|
|
2642
|
+
*/
|
|
2643
|
+
const subscribeToCheckoutTransaction = async ({ transactionId }, client) => {
|
|
2644
|
+
const { realtime } = require_InvalidParamError.getCore(client);
|
|
2645
|
+
if (realtime.getConnectionState() === "idle") await realtime.connect({ client });
|
|
2646
|
+
const channelSchema = createCheckoutTransactionChannelSchema(transactionId);
|
|
2647
|
+
const handler = ({ data }) => {
|
|
2648
|
+
if (data.axis === "execution") require_getVerifiedCredentialForWalletAccount.emitEvent({
|
|
2649
|
+
args: {
|
|
2650
|
+
newState: data.newState,
|
|
2651
|
+
previousState: data.previousState,
|
|
2652
|
+
timestamp: data.timestamp,
|
|
2653
|
+
transactionId: data.transactionId
|
|
2654
|
+
},
|
|
2655
|
+
event: "checkoutTransactionExecutionStateChanged"
|
|
2656
|
+
}, client);
|
|
2657
|
+
if (data.axis === "settlement") require_getVerifiedCredentialForWalletAccount.emitEvent({
|
|
2658
|
+
args: {
|
|
2659
|
+
newState: data.newState,
|
|
2660
|
+
previousState: data.previousState,
|
|
2661
|
+
timestamp: data.timestamp,
|
|
2662
|
+
transactionId: data.transactionId
|
|
2663
|
+
},
|
|
2664
|
+
event: "checkoutTransactionSettlementStateChanged"
|
|
2665
|
+
}, client);
|
|
2666
|
+
if (isTerminalEvent(data)) realtime.unsubscribe({
|
|
2667
|
+
callback: handler,
|
|
2668
|
+
channelSchema
|
|
2669
|
+
});
|
|
2670
|
+
};
|
|
2671
|
+
await realtime.subscribe({
|
|
2672
|
+
callback: handler,
|
|
2673
|
+
channelSchema
|
|
2674
|
+
});
|
|
2675
|
+
};
|
|
2676
|
+
|
|
2598
2677
|
//#endregion
|
|
2599
2678
|
//#region src/modules/checkout/createCheckoutTransaction/createCheckoutTransaction.ts
|
|
2600
2679
|
/**
|
|
@@ -2626,6 +2705,9 @@ const createCheckoutTransaction = async (params, client = require_InvalidParamEr
|
|
|
2626
2705
|
environmentId: core.environmentId
|
|
2627
2706
|
});
|
|
2628
2707
|
await core.storage.setItem(createCheckoutSessionTokenStorageKey(result.transaction.id), result.sessionToken);
|
|
2708
|
+
subscribeToCheckoutTransaction({ transactionId: result.transaction.id }, client).catch((error) => {
|
|
2709
|
+
core.logger.error("Failed to subscribe to checkout transaction realtime channel", error);
|
|
2710
|
+
});
|
|
2629
2711
|
return result;
|
|
2630
2712
|
};
|
|
2631
2713
|
const __createCheckoutTransaction_impl = createCheckoutTransaction;
|
|
@@ -2898,6 +2980,32 @@ const __requiresConversion_wrapped = require_InvalidParamError.instrumentFunctio
|
|
|
2898
2980
|
}
|
|
2899
2981
|
});
|
|
2900
2982
|
|
|
2983
|
+
//#endregion
|
|
2984
|
+
//#region src/modules/checkout/trackCheckoutTransaction/trackCheckoutTransaction.ts
|
|
2985
|
+
/**
|
|
2986
|
+
* Subscribes to realtime state change events for an existing checkout transaction.
|
|
2987
|
+
*
|
|
2988
|
+
* Call this after a page refresh to resume receiving transaction events
|
|
2989
|
+
* for a transaction that was created in a previous page session.
|
|
2990
|
+
*
|
|
2991
|
+
* @param params.transactionId - The ID of the checkout transaction to track.
|
|
2992
|
+
* @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
|
|
2993
|
+
* @instrumented
|
|
2994
|
+
*/
|
|
2995
|
+
const trackCheckoutTransaction = ({ transactionId }, client = require_InvalidParamError.getDefaultClient()) => subscribeToCheckoutTransaction({ transactionId }, client);
|
|
2996
|
+
const __trackCheckoutTransaction_impl = trackCheckoutTransaction;
|
|
2997
|
+
const __trackCheckoutTransaction_wrapped = require_InvalidParamError.instrumentFunction({
|
|
2998
|
+
fn: __trackCheckoutTransaction_impl,
|
|
2999
|
+
functionName: "trackCheckoutTransaction",
|
|
3000
|
+
getCore: () => {
|
|
3001
|
+
try {
|
|
3002
|
+
return require_InvalidParamError.getCore(require_InvalidParamError.getDefaultClient());
|
|
3003
|
+
} catch {
|
|
3004
|
+
return;
|
|
3005
|
+
}
|
|
3006
|
+
}
|
|
3007
|
+
});
|
|
3008
|
+
|
|
2901
3009
|
//#endregion
|
|
2902
3010
|
//#region src/modules/deviceRegistration/completeDeviceRegistration/completeDeviceRegistration.ts
|
|
2903
3011
|
const DEVICE_REGISTRATION_TOKEN_HEADER = "x-dynamic-device-registration-token";
|
|
@@ -7020,6 +7128,7 @@ exports.signMessage = __signMessage_wrapped;
|
|
|
7020
7128
|
exports.submitCheckoutTransaction = __submitCheckoutTransaction_wrapped;
|
|
7021
7129
|
exports.supportedCountries = supportedCountries;
|
|
7022
7130
|
exports.switchActiveNetwork = __switchActiveNetwork_wrapped;
|
|
7131
|
+
exports.trackCheckoutTransaction = __trackCheckoutTransaction_wrapped;
|
|
7023
7132
|
exports.transferAmount = __transferAmount_wrapped;
|
|
7024
7133
|
exports.transferWalletAccount = __transferWalletAccount_wrapped;
|
|
7025
7134
|
exports.unlinkSocialAccount = __unlinkSocialAccount_wrapped;
|