@bounded-sh/client 0.0.114 → 0.0.116
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/auth/providers/injected-wallet-types.d.ts +11 -2
- package/dist/auth/providers/wallet-standard-discovery.d.ts +2 -0
- package/dist/auth/turnkey-signer-window.d.ts +19 -0
- package/dist/auth/turnkey-signing-capability.d.ts +5 -1
- package/dist/{email-auth-provider-Cr66GaKw.js → email-auth-provider-3tuw_aDK.js} +2 -2
- package/dist/{email-auth-provider-Cr66GaKw.js.map → email-auth-provider-3tuw_aDK.js.map} +1 -1
- package/dist/{email-auth-provider-DeORQbTK.js → email-auth-provider-BFOw9iI9.js} +2 -2
- package/dist/{email-auth-provider-DeORQbTK.js.map → email-auth-provider-BFOw9iI9.js.map} +1 -1
- package/dist/{email-auth-provider-Bk5GSpYT.mjs → email-auth-provider-C5bYKzpN.mjs} +2 -2
- package/dist/{email-auth-provider-Bk5GSpYT.mjs.map → email-auth-provider-C5bYKzpN.mjs.map} +1 -1
- package/dist/{email-auth-provider-nDZjRDpj.mjs → email-auth-provider-CmbRj-_I.mjs} +2 -2
- package/dist/{email-auth-provider-nDZjRDpj.mjs.map → email-auth-provider-CmbRj-_I.mjs.map} +1 -1
- package/dist/{guest-auth-provider-ejUTbjCC.mjs → guest-auth-provider-Bvoaq-zC.mjs} +2 -2
- package/dist/{guest-auth-provider-DDudqqxY.mjs.map → guest-auth-provider-Bvoaq-zC.mjs.map} +1 -1
- package/dist/{guest-auth-provider-DDudqqxY.mjs → guest-auth-provider-CsM_SuGH.mjs} +2 -2
- package/dist/{guest-auth-provider-ejUTbjCC.mjs.map → guest-auth-provider-CsM_SuGH.mjs.map} +1 -1
- package/dist/{guest-auth-provider-5bX-xt6K.js → guest-auth-provider-DJD3zkBU.js} +2 -2
- package/dist/{guest-auth-provider-5bX-xt6K.js.map → guest-auth-provider-DJD3zkBU.js.map} +1 -1
- package/dist/{guest-auth-provider-CUNkZVFK.js → guest-auth-provider-_jdqZKUo.js} +2 -2
- package/dist/{guest-auth-provider-CUNkZVFK.js.map → guest-auth-provider-_jdqZKUo.js.map} +1 -1
- package/dist/{index-BAiLpNEQ.mjs → index-BmBLsYn2.mjs} +797 -73
- package/dist/index-BmBLsYn2.mjs.map +1 -0
- package/dist/{index-BZ0X1Z9X.js → index-C2xAP67N.js} +801 -71
- package/dist/index-C2xAP67N.js.map +1 -0
- package/dist/index.d.ts +3 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{index.native-DJSOqyKQ.js → index.native-CMNMw3Pe.js} +83 -22
- package/dist/index.native-CMNMw3Pe.js.map +1 -0
- package/dist/{index.native-DcW2klyn.mjs → index.native-DfDVa7MG.mjs} +85 -24
- package/dist/index.native-DfDVa7MG.mjs.map +1 -0
- package/dist/index.native.js +1 -1
- package/dist/index.native.mjs +1 -1
- package/dist/{injected-evm-wallet-provider-C4aKa2v1.mjs → injected-evm-wallet-provider-B2xteR2I.mjs} +2 -2
- package/dist/{injected-evm-wallet-provider-C4aKa2v1.mjs.map → injected-evm-wallet-provider-B2xteR2I.mjs.map} +1 -1
- package/dist/{injected-evm-wallet-provider-D06arDQD.js → injected-evm-wallet-provider-CL_FBjLe.js} +2 -2
- package/dist/{injected-evm-wallet-provider-D06arDQD.js.map → injected-evm-wallet-provider-CL_FBjLe.js.map} +1 -1
- package/dist/{injected-evm-wallet-provider-BDYWjIOQ.js → injected-evm-wallet-provider-CUNTCT-a.js} +2 -2
- package/dist/{injected-evm-wallet-provider-BDYWjIOQ.js.map → injected-evm-wallet-provider-CUNTCT-a.js.map} +1 -1
- package/dist/{injected-evm-wallet-provider-BQ_kG1vI.mjs → injected-evm-wallet-provider-E7eCpvLr.mjs} +2 -2
- package/dist/{injected-evm-wallet-provider-BQ_kG1vI.mjs.map → injected-evm-wallet-provider-E7eCpvLr.mjs.map} +1 -1
- package/dist/{injected-wallet-provider-B9jvzDM5.js → injected-wallet-provider-Bc_xtyRd.js} +11 -5
- package/dist/{injected-wallet-provider-B9jvzDM5.js.map → injected-wallet-provider-Bc_xtyRd.js.map} +1 -1
- package/dist/{injected-wallet-provider-DxPcYxP-.mjs → injected-wallet-provider-BoRoxrEl.mjs} +59 -34
- package/dist/injected-wallet-provider-BoRoxrEl.mjs.map +1 -0
- package/dist/{injected-wallet-provider-Dqmk-m4V.js → injected-wallet-provider-BqYJQDGu.js} +59 -34
- package/dist/injected-wallet-provider-BqYJQDGu.js.map +1 -0
- package/dist/{injected-wallet-provider-Dj-F69gb.mjs → injected-wallet-provider-DwozZ926.mjs} +11 -5
- package/dist/{injected-wallet-provider-Dj-F69gb.mjs.map → injected-wallet-provider-DwozZ926.mjs.map} +1 -1
- package/dist/venue-escrow.d.ts +113 -0
- package/package.json +2 -2
- package/dist/index-BAiLpNEQ.mjs.map +0 -1
- package/dist/index-BZ0X1Z9X.js.map +0 -1
- package/dist/index.native-DJSOqyKQ.js.map +0 -1
- package/dist/index.native-DcW2klyn.mjs.map +0 -1
- package/dist/injected-wallet-provider-Dqmk-m4V.js.map +0 -1
- package/dist/injected-wallet-provider-DxPcYxP-.mjs.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { getConfig, getActiveSessionManager, WebSessionManager, ReactNativeSessionManager, revokeSession, reconnectWithNewAuth, init as init$1, deriveUserIdentityFromIdToken, onSessionCleared, subscribe, getFreshAuthToken, getSessionGeneration, getIdToken as getIdToken$1, genAuthNonce, genSolanaMessage, createSessionWithSignature } from '@bounded-sh/core';
|
|
1
|
+
import { getConfig, getActiveSessionManager, WebSessionManager, ReactNativeSessionManager, revokeSession, reconnectWithNewAuth, init as init$1, deriveUserIdentityFromIdToken, onSessionCleared, onSessionChange, subscribe, getFreshAuthToken, getSessionGeneration, getIdToken as getIdToken$1, genAuthNonce, genSolanaMessage, createSessionWithSignature } from '@bounded-sh/core';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
|
|
4
4
|
function walletContextFromClaims(claims, baseUrl, expectedAppId, tenantOrigin) {
|
|
@@ -4379,6 +4379,47 @@ async function openHiddenSignerFrame(page) {
|
|
|
4379
4379
|
};
|
|
4380
4380
|
}
|
|
4381
4381
|
|
|
4382
|
+
// turnkey-signer-window.ts - the top-level Bounded signer window: opening it, and reserving it
|
|
4383
|
+
// inside a click for an approval that is reached only after awaits.
|
|
4384
|
+
//
|
|
4385
|
+
// A cross-app Turnkey signature (the capability says `transport: 'popup'`) cannot run in the
|
|
4386
|
+
// in-app frame, so it opens in its own window, and a browser opens a window only inside the
|
|
4387
|
+
// user's click. The click handler therefore calls `reserveSignerPopup()` first, before any
|
|
4388
|
+
// `await`, and the exchange in turnkey-signer-bridge.ts navigates that window to the signer later.
|
|
4389
|
+
//
|
|
4390
|
+
// Kept out of the bridge on purpose: the bridge is loaded lazily as a whole module, so a bundler
|
|
4391
|
+
// keeps every one of its exports in every app that signs, while this reservation is needed only
|
|
4392
|
+
// by an app that funds an escrow.
|
|
4393
|
+
function openSignerWindow(url, w = 420, h = 620) {
|
|
4394
|
+
const left = window.screenX + Math.max(0, (window.outerWidth - w) / 2);
|
|
4395
|
+
const top = window.screenY + Math.max(0, (window.outerHeight - h) / 2);
|
|
4396
|
+
return window.open(url, 'bounded-turnkey-signer', `width=${w},height=${h},left=${left},top=${top}`);
|
|
4397
|
+
}
|
|
4398
|
+
// One slot: the next popup exchange takes it, and a new reservation replaces an unused earlier one.
|
|
4399
|
+
// A property of a const rather than a reassigned `let`, which a bundler would keep every assignment
|
|
4400
|
+
// to, dragging the reservation into apps that never reserve.
|
|
4401
|
+
const reserved = { popup: null };
|
|
4402
|
+
/** Hand the reserved window, if one is held, to an exchange: navigated to the signer page at `url`. */
|
|
4403
|
+
function takeReservedPopup(url) {
|
|
4404
|
+
const popup = reserved.popup;
|
|
4405
|
+
reserved.popup = null;
|
|
4406
|
+
if (!popup)
|
|
4407
|
+
return null;
|
|
4408
|
+
if (popup.closed)
|
|
4409
|
+
throw new Error('Wallet approval window was closed before it completed.');
|
|
4410
|
+
try {
|
|
4411
|
+
popup.location.replace(url);
|
|
4412
|
+
}
|
|
4413
|
+
catch (_a) {
|
|
4414
|
+
try {
|
|
4415
|
+
popup.close();
|
|
4416
|
+
}
|
|
4417
|
+
catch ( /* ignore */_b) { /* ignore */ }
|
|
4418
|
+
throw new Error('Wallet approval window could not open the signer - retry from a click.');
|
|
4419
|
+
}
|
|
4420
|
+
return popup;
|
|
4421
|
+
}
|
|
4422
|
+
|
|
4382
4423
|
// turnkey-signing-capability.ts - the pure AS-02 (DS2-0112) signing-capability logic,
|
|
4383
4424
|
// kept import-free (no DOM, no session, no @bounded-sh/core) so it is unit-testable.
|
|
4384
4425
|
//
|
|
@@ -4390,9 +4431,10 @@ async function openHiddenSignerFrame(page) {
|
|
|
4390
4431
|
// so a regression here (a dropped capability, a wrong route, a swallowed error) is
|
|
4391
4432
|
// caught without a browser.
|
|
4392
4433
|
// POST the Bounded id token + payload hash to the issuer's capability mint route and
|
|
4393
|
-
// return the issuer-signed capability for exactly these bytes
|
|
4394
|
-
// is proven with the id token in the
|
|
4395
|
-
// would not carry). Throws with the same
|
|
4434
|
+
// return the issuer-signed capability for exactly these bytes, with the transport the
|
|
4435
|
+
// issuer requires for them. Credential-free: identity is proven with the id token in the
|
|
4436
|
+
// body (not an ambient cookie the cross-origin fetch would not carry). Throws with the same
|
|
4437
|
+
// stable messages the bridge relied on inline.
|
|
4396
4438
|
async function requestTurnkeySigningCapability(opts) {
|
|
4397
4439
|
const base = opts.baseUrl.replace(/\/$/, '');
|
|
4398
4440
|
let res;
|
|
@@ -4422,7 +4464,7 @@ async function requestTurnkeySigningCapability(opts) {
|
|
|
4422
4464
|
if (!d || typeof d.capability !== 'string' || !d.capability) {
|
|
4423
4465
|
throw new Error('Turnkey signing capability was malformed.');
|
|
4424
4466
|
}
|
|
4425
|
-
return d.capability;
|
|
4467
|
+
return d.transport === 'popup' ? { capability: d.capability, transport: 'popup' } : { capability: d.capability };
|
|
4426
4468
|
}
|
|
4427
4469
|
// Assemble the `bounded:turnkey:sign` postMessage request, carrying the issuer-signed
|
|
4428
4470
|
// capability for the same bytes. Without the capability the hosted signer refuses
|
|
@@ -4501,12 +4543,16 @@ function hasDOM$2() {
|
|
|
4501
4543
|
// when we cannot embed (no DOM, or the frame never mounts/loads). Nothing in the
|
|
4502
4544
|
// email-session flow needs a popup by preference: the code entry and the approval
|
|
4503
4545
|
// click both run fine inside a cross-origin iframe on every engine (the old
|
|
4504
|
-
// Safari popup preference existed only for in-iframe WebAuthn CREATE).
|
|
4546
|
+
// Safari popup preference existed only for in-iframe WebAuthn CREATE). The one
|
|
4547
|
+
// exception is a signature the issuer marks `transport: 'popup'` (a cross-app
|
|
4548
|
+
// write): the hosted signer refuses it inside any frame, so it never touches the widget.
|
|
4505
4549
|
async function deliver(url, origin, ex) {
|
|
4506
4550
|
var _a, _b;
|
|
4507
4551
|
const popup = () => runPopup(url, origin, ex);
|
|
4508
4552
|
(_a = ex.assertCurrent) === null || _a === void 0 ? void 0 : _a.call(ex);
|
|
4509
|
-
const result =
|
|
4553
|
+
const result = ex.transport === 'popup'
|
|
4554
|
+
? await popup()
|
|
4555
|
+
: await runWidget(url, origin, { request: ex.request, onResult: ex.onResult, context: ex.context, assertCurrent: ex.assertCurrent }, popup);
|
|
4510
4556
|
(_b = ex.assertCurrent) === null || _b === void 0 ? void 0 : _b.call(ex);
|
|
4511
4557
|
return result;
|
|
4512
4558
|
}
|
|
@@ -4571,14 +4617,12 @@ function activeTurnkeyAddress() {
|
|
|
4571
4617
|
: null;
|
|
4572
4618
|
}
|
|
4573
4619
|
let requestSeq = 0;
|
|
4574
|
-
// Shared popup driver: open the signer page
|
|
4575
|
-
// resolve when `onResult` accepts a result message. Origin +
|
|
4620
|
+
// Shared popup driver: open the signer page (in the reserved window when one is held), do the
|
|
4621
|
+
// ready/postMessage handshake, and resolve when `onResult` accepts a result message. Origin +
|
|
4622
|
+
// source are pinned.
|
|
4576
4623
|
async function runPopup(url, signerOrigin, ex) {
|
|
4577
|
-
var _a
|
|
4578
|
-
const
|
|
4579
|
-
const left = window.screenX + Math.max(0, (window.outerWidth - w) / 2);
|
|
4580
|
-
const top = window.screenY + Math.max(0, (window.outerHeight - h) / 2);
|
|
4581
|
-
const popup = window.open(url, 'bounded-turnkey-signer', `width=${w},height=${h},left=${left},top=${top}`);
|
|
4624
|
+
var _a;
|
|
4625
|
+
const popup = (_a = takeReservedPopup(url)) !== null && _a !== void 0 ? _a : openSignerWindow(url, ex.width, ex.height);
|
|
4582
4626
|
if (!popup) {
|
|
4583
4627
|
throw new Error('Popup blocked - call this from a user gesture (e.g. a click handler) so the wallet approval window can open.');
|
|
4584
4628
|
}
|
|
@@ -4756,7 +4800,7 @@ async function signSolanaMessageViaTurnkey(message) {
|
|
|
4756
4800
|
const messageHex = toHex(message);
|
|
4757
4801
|
// AS-02: obtain the issuer-signed capability for THESE exact bytes first; the signer will
|
|
4758
4802
|
// refuse (capability_required) without it. Fetched per signature (each is single-payload).
|
|
4759
|
-
const capability = await fetchSigningCapability(messageHex, context);
|
|
4803
|
+
const { capability, transport } = await fetchSigningCapability(messageHex, context);
|
|
4760
4804
|
// Inline (authMode:"turnkey") sessions plant no Better Auth cookie on the issuer, so the
|
|
4761
4805
|
// signer's same-origin status/create fetches need a bearer session proof: attach the
|
|
4762
4806
|
// createWallet action authorization (it covers the sign flow's get-or-create too). Minted
|
|
@@ -4765,11 +4809,20 @@ async function signSolanaMessageViaTurnkey(message) {
|
|
|
4765
4809
|
return await deliver(url, origin, {
|
|
4766
4810
|
context: context.key, assertCurrent: context.assertCurrent,
|
|
4767
4811
|
request: buildTurnkeySignRequest({ requestId, messageHex, capability, authorization }),
|
|
4812
|
+
transport,
|
|
4768
4813
|
onResult: (d) => {
|
|
4769
4814
|
if (d.ok && typeof d.signatureHex === 'string' && typeof d.address === 'string') {
|
|
4770
|
-
|
|
4815
|
+
// A top-level popup keeps its signing session in the signer origin's own storage, which the
|
|
4816
|
+
// warm in-app frame (a partitioned context) cannot see, so it says nothing about that frame.
|
|
4817
|
+
if (transport !== 'popup')
|
|
4818
|
+
setWalletSessionState(context.key, { expiresAt: Number(d.signingSessionExpiresAt) });
|
|
4771
4819
|
return { done: true, value: { signature: fromHex(d.signatureHex), address: d.address, subOrgId: String(d.subOrgId || '') } };
|
|
4772
4820
|
}
|
|
4821
|
+
// The hosted signer refuses a cross-app signature inside a frame. Never retry it from here:
|
|
4822
|
+
// the top-level window needs the user's own click.
|
|
4823
|
+
if (d.error === 'top_level_required') {
|
|
4824
|
+
return { error: 'top_level_required: an approval that writes to another app must open in its own window. Start it from a click handler.' };
|
|
4825
|
+
}
|
|
4773
4826
|
return { error: String(d.error || 'Turnkey signing failed') };
|
|
4774
4827
|
},
|
|
4775
4828
|
});
|
|
@@ -6015,7 +6068,7 @@ async function getAuthProvider(config, fromStorage = false) {
|
|
|
6015
6068
|
// manager as legacy email sessions. Human login should be started
|
|
6016
6069
|
// with loginWithRedirect(); this provider is kept as the restore and
|
|
6017
6070
|
// logout surface for those sessions.
|
|
6018
|
-
currentAuthProvider = new (await import('./email-auth-provider-
|
|
6071
|
+
currentAuthProvider = new (await import('./email-auth-provider-C5bYKzpN.mjs')).EmailAuthProvider();
|
|
6019
6072
|
break;
|
|
6020
6073
|
case "phantom": {
|
|
6021
6074
|
// First-class Solana WALLET LOGIN (the poof/TaroBase-style "connect
|
|
@@ -6057,7 +6110,7 @@ async function getAuthProvider(config, fromStorage = false) {
|
|
|
6057
6110
|
// (bounded-login-widget.ts), so registration never counts as
|
|
6058
6111
|
// evidence the user has a wallet.
|
|
6059
6112
|
await ensureSolanaMobileWalletRegistered(config, configuredNetwork);
|
|
6060
|
-
const { InjectedWalletProvider } = await import('./injected-wallet-provider-
|
|
6113
|
+
const { InjectedWalletProvider } = await import('./injected-wallet-provider-BoRoxrEl.mjs');
|
|
6061
6114
|
currentAuthProvider = new InjectedWalletProvider(resolveInjectedWalletConfig(config), rpcUrl, configuredNetwork);
|
|
6062
6115
|
break;
|
|
6063
6116
|
}
|
|
@@ -6070,7 +6123,7 @@ async function getAuthProvider(config, fromStorage = false) {
|
|
|
6070
6123
|
// Selecting authMethod:'evm-wallet' IS the opt-in — pass evmWalletConfig
|
|
6071
6124
|
// to point at a specific wallet or set chainId/domain.
|
|
6072
6125
|
const evmWalletConfig = ((_a = config.evmWalletConfig) !== null && _a !== void 0 ? _a : {});
|
|
6073
|
-
const { InjectedEvmWalletProvider } = await import('./injected-evm-wallet-provider-
|
|
6126
|
+
const { InjectedEvmWalletProvider } = await import('./injected-evm-wallet-provider-E7eCpvLr.mjs');
|
|
6074
6127
|
currentAuthProvider = new InjectedEvmWalletProvider(evmWalletConfig);
|
|
6075
6128
|
break;
|
|
6076
6129
|
}
|
|
@@ -6095,7 +6148,7 @@ async function getAuthProvider(config, fromStorage = false) {
|
|
|
6095
6148
|
break;
|
|
6096
6149
|
case "guest":
|
|
6097
6150
|
// Anonymous auth: a device-local ed25519 keypair signs the challenge.
|
|
6098
|
-
currentAuthProvider = new (await import('./guest-auth-provider-
|
|
6151
|
+
currentAuthProvider = new (await import('./guest-auth-provider-CsM_SuGH.mjs')).GuestAuthProvider();
|
|
6099
6152
|
break;
|
|
6100
6153
|
}
|
|
6101
6154
|
if (!currentAuthProvider) {
|
|
@@ -6157,7 +6210,7 @@ async function signInAnonymously() {
|
|
|
6157
6210
|
// Lazy-load the guest provider so its ed25519/web3 dependencies stay out of
|
|
6158
6211
|
// the main bundle for data-only apps. Specifier is a static string literal
|
|
6159
6212
|
// so bundle-splitting can see it.
|
|
6160
|
-
const provider = new (await import('./guest-auth-provider-
|
|
6213
|
+
const provider = new (await import('./guest-auth-provider-CsM_SuGH.mjs')).GuestAuthProvider();
|
|
6161
6214
|
setAuthLoading(true); // reflect "signing in…" while the guest keypair session is minted
|
|
6162
6215
|
// adoptSessionProvider awaits only getConfig() (already resolved here) and then
|
|
6163
6216
|
// runs every write - provider/method/config/marker/user - in one synchronous
|
|
@@ -6328,7 +6381,7 @@ function ensureSharedWalletLoginReady() {
|
|
|
6328
6381
|
if (!sharedWalletReady) {
|
|
6329
6382
|
sharedWalletReady = (async () => {
|
|
6330
6383
|
await getConfig();
|
|
6331
|
-
await import('./injected-wallet-provider-
|
|
6384
|
+
await import('./injected-wallet-provider-BoRoxrEl.mjs');
|
|
6332
6385
|
})().catch((error) => {
|
|
6333
6386
|
sharedWalletReady = null;
|
|
6334
6387
|
throw error;
|
|
@@ -6639,6 +6692,14 @@ function registerStorageBridge() {
|
|
|
6639
6692
|
return;
|
|
6640
6693
|
void syncStoredSession().catch((error) => console.warn('Bounded session synchronization failed:', error));
|
|
6641
6694
|
});
|
|
6695
|
+
// `storage` fires only in other tabs. Another SDK copy in THIS tab (the hosted widget beside
|
|
6696
|
+
// the app, or the app beside the widget) announces its sign-in and sign-out on the session
|
|
6697
|
+
// channel instead; the nudge carries no authority, the record is re-read the same way.
|
|
6698
|
+
onSessionChange(() => {
|
|
6699
|
+
if (!initializedConfig)
|
|
6700
|
+
return;
|
|
6701
|
+
void syncStoredSession().catch((error) => console.warn('Bounded session synchronization failed:', error));
|
|
6702
|
+
});
|
|
6642
6703
|
}
|
|
6643
6704
|
function sameSessionIdentity(next, previous) {
|
|
6644
6705
|
if (!next || !previous)
|
|
@@ -8826,5 +8887,5 @@ class PrivyExpoProvider {
|
|
|
8826
8887
|
}
|
|
8827
8888
|
}
|
|
8828
8889
|
|
|
8829
|
-
export { PARK_REASONS as $, waitForAuthReady as A, login as B, logout as C, getAuthProvider as D, signInAnonymously as E, loginWithPrivy as F, loginWithRedirect as G, completeLoginFromRedirect as H, getLoginReturnError as I, loginWithPopup as J, useAuth as K, useQuery as L, useBuildRun as M, apps as N, getIdToken as O, onramp as P, onrampQuote as Q, onrampStatus as R, setPlatform as S, OffchainAuthProvider as T, PrivyExpoProvider as U, builds as V, BuildsApiError as W, mediaAgentTools as X, NON_TERMINAL_STATES as Y, TERMINAL_STATES as Z, RUN_STATES as _, signMessageWithTurnkey as a, FAILURE_REASONS as a0, BUILD_REVIEW_CAPABILITY_SCHEMA as a1, BUILD_REVIEW_CAPABILITY_REFRESH_SCHEMA as a2, BUILD_DELEGATED_REVIEW_CAPABILITY_SCHEMA as a3, signTransactionWithTurnkey as b, signTransactionV1WithTurnkey as c, signAndSubmitTransactionWithTurnkey as d, bs58 as e, getWallets as f, getPlatform as g, hasTurnkeyWallet as h,
|
|
8830
|
-
//# sourceMappingURL=index.native-
|
|
8890
|
+
export { PARK_REASONS as $, waitForAuthReady as A, login as B, logout as C, getAuthProvider as D, signInAnonymously as E, loginWithPrivy as F, loginWithRedirect as G, completeLoginFromRedirect as H, getLoginReturnError as I, loginWithPopup as J, useAuth as K, useQuery as L, useBuildRun as M, apps as N, getIdToken as O, onramp as P, onrampQuote as Q, onrampStatus as R, setPlatform as S, OffchainAuthProvider as T, PrivyExpoProvider as U, builds as V, BuildsApiError as W, mediaAgentTools as X, NON_TERMINAL_STATES as Y, TERMINAL_STATES as Z, RUN_STATES as _, signMessageWithTurnkey as a, FAILURE_REASONS as a0, BUILD_REVIEW_CAPABILITY_SCHEMA as a1, BUILD_REVIEW_CAPABILITY_REFRESH_SCHEMA as a2, BUILD_DELEGATED_REVIEW_CAPABILITY_SCHEMA as a3, signTransactionWithTurnkey as b, signTransactionV1WithTurnkey as c, signAndSubmitTransactionWithTurnkey as d, bs58 as e, getWallets as f, getPlatform as g, hasTurnkeyWallet as h, solanaMobileWalletLeavesPage as i, solanaMobileWalletAnswersSignInFromCache as j, isSolanaMobileWallet as k, setAuthLoading as l, bufferExports as m, normalizeSolanaRpcUrl as n, setStoredAuthMethod as o, confirmAndCheckTransaction as p, resolveSolanaRpcUrl as q, resolveSolanaWalletStandardChain as r, setCurrentUser as s, transactionHasSignature as t, init as u, getCurrentUser as v, walletStandardFeatureName as w, onAuthStateChanged as x, onAuthLoadingChanged as y, getAuthLoading as z };
|
|
8891
|
+
//# sourceMappingURL=index.native-DfDVa7MG.mjs.map
|