@bounded-sh/client 0.0.1 → 0.0.2

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 (56) hide show
  1. package/dist/auth/providers/phantom-wallet-provider.d.ts +1 -1
  2. package/dist/auth/providers/privy-expo-provider.d.ts +1 -1
  3. package/dist/auth/providers/solana-mobile-wallet-provider.d.ts +3 -3
  4. package/dist/{index-BHTfW8CV.esm.js → index-B2ytfYTB.esm.js} +2 -2
  5. package/dist/{index-BHTfW8CV.esm.js.map → index-B2ytfYTB.esm.js.map} +1 -1
  6. package/dist/{index-CT2j1oic.esm.js → index-BFOmV3Pb.esm.js} +2 -2
  7. package/dist/{index-CT2j1oic.esm.js.map → index-BFOmV3Pb.esm.js.map} +1 -1
  8. package/dist/{index-VGx-869x.js → index-BL-0ZKBl.js} +76 -76
  9. package/dist/index-BL-0ZKBl.js.map +1 -0
  10. package/dist/{index-sKqrgk0t.js → index-BgAygrhE.js} +2 -2
  11. package/dist/{index-sKqrgk0t.js.map → index-BgAygrhE.js.map} +1 -1
  12. package/dist/{index-C1VOdmRN.js → index-CqoP9udN.js} +2 -2
  13. package/dist/{index-C1VOdmRN.js.map → index-CqoP9udN.js.map} +1 -1
  14. package/dist/{index-o5Hv9pfS.esm.js → index-D986s6w7.esm.js} +76 -76
  15. package/dist/index-D986s6w7.esm.js.map +1 -0
  16. package/dist/{index.browser-DaNhOhkQ.esm.js → index.browser-Bd0GwRur.esm.js} +2 -2
  17. package/dist/{index.browser-DaNhOhkQ.esm.js.map → index.browser-Bd0GwRur.esm.js.map} +1 -1
  18. package/dist/{index.browser-utVKQsEC.js → index.browser-BeM1bzpe.js} +2 -2
  19. package/dist/{index.browser-utVKQsEC.js.map → index.browser-BeM1bzpe.js.map} +1 -1
  20. package/dist/{index.browser-DhAcjdpV.esm.js → index.browser-D2xm-q6N.esm.js} +2 -2
  21. package/dist/{index.browser-DhAcjdpV.esm.js.map → index.browser-D2xm-q6N.esm.js.map} +1 -1
  22. package/dist/{index.browser-BJZ7fYwv.js → index.browser-D8u31irV.js} +2 -2
  23. package/dist/{index.browser-BJZ7fYwv.js.map → index.browser-D8u31irV.js.map} +1 -1
  24. package/dist/index.d.ts +1 -1
  25. package/dist/index.esm.js +1 -1
  26. package/dist/index.js +1 -1
  27. package/dist/{index.native-JPUkdHJj.esm.js → index.native-B-cLm_BI.esm.js} +50 -50
  28. package/dist/index.native-B-cLm_BI.esm.js.map +1 -0
  29. package/dist/{index.native-B5IBOdv_.js → index.native-NgHStPq0.js} +50 -50
  30. package/dist/index.native-NgHStPq0.js.map +1 -0
  31. package/dist/index.native.d.ts +1 -1
  32. package/dist/index.native.esm.js +1 -1
  33. package/dist/index.native.js +1 -1
  34. package/dist/{phantom-wallet-provider-DMlaSrAl.esm.js → phantom-wallet-provider-Cy5T9EVd.esm.js} +10 -10
  35. package/dist/phantom-wallet-provider-Cy5T9EVd.esm.js.map +1 -0
  36. package/dist/{phantom-wallet-provider-CDLyxrih.js → phantom-wallet-provider-Dy48LSdU.js} +10 -10
  37. package/dist/phantom-wallet-provider-Dy48LSdU.js.map +1 -0
  38. package/dist/{privy-wallet-provider-nR52lXzI.esm.js → privy-wallet-provider-BDsrUpk4.esm.js} +5 -5
  39. package/dist/privy-wallet-provider-BDsrUpk4.esm.js.map +1 -0
  40. package/dist/{privy-wallet-provider-DiHHTDbZ.js → privy-wallet-provider-CiKtBJ5M.js} +5 -5
  41. package/dist/privy-wallet-provider-CiKtBJ5M.js.map +1 -0
  42. package/dist/{solana-mobile-wallet-provider-B4CeMMQd.esm.js → solana-mobile-wallet-provider-CSk_FIww.esm.js} +20 -20
  43. package/dist/solana-mobile-wallet-provider-CSk_FIww.esm.js.map +1 -0
  44. package/dist/{solana-mobile-wallet-provider-BYMfFjZb.js → solana-mobile-wallet-provider-k_YdrTJZ.js} +20 -20
  45. package/dist/solana-mobile-wallet-provider-k_YdrTJZ.js.map +1 -0
  46. package/package.json +2 -2
  47. package/dist/index-VGx-869x.js.map +0 -1
  48. package/dist/index-o5Hv9pfS.esm.js.map +0 -1
  49. package/dist/index.native-B5IBOdv_.js.map +0 -1
  50. package/dist/index.native-JPUkdHJj.esm.js.map +0 -1
  51. package/dist/phantom-wallet-provider-CDLyxrih.js.map +0 -1
  52. package/dist/phantom-wallet-provider-DMlaSrAl.esm.js.map +0 -1
  53. package/dist/privy-wallet-provider-DiHHTDbZ.js.map +0 -1
  54. package/dist/privy-wallet-provider-nR52lXzI.esm.js.map +0 -1
  55. package/dist/solana-mobile-wallet-provider-B4CeMMQd.esm.js.map +0 -1
  56. package/dist/solana-mobile-wallet-provider-BYMfFjZb.js.map +0 -1
@@ -6469,7 +6469,7 @@ function getWebhookKeysUrl() {
6469
6469
  /**
6470
6470
  * True when init() configured a Bounded network (the Cloudflare-native stack).
6471
6471
  * Synchronous + non-blocking. Used to route reads/writes that behave differently
6472
- * on Bounded vs the legacy Tarobase backend (e.g. `count`/`aggregate`, which on
6472
+ * on Bounded vs the legacy backend (e.g. `count`/`aggregate`, which on
6473
6473
  * Bounded must use the deterministic server aggregation, not the legacy AI query).
6474
6474
  */
6475
6475
  function isBoundedNetwork() {
@@ -9324,7 +9324,7 @@ class WebSessionManager {
9324
9324
  // the RIGHT /session/refresh. Email overrides with humanAuthApiUrl; all
9325
9325
  // wallet/guest/signature flows default to authApiUrl (the bounded-auth issuer).
9326
9326
  const sessionIssuer = (issuer || config.authApiUrl || "").replace(/\/$/, "");
9327
- localStorage.setItem(this.TAROBASE_SESSION_STORAGE_KEY, JSON.stringify(Object.assign({ address,
9327
+ localStorage.setItem(this.BOUNDED_SESSION_STORAGE_KEY, JSON.stringify(Object.assign({ address,
9328
9328
  accessToken,
9329
9329
  idToken,
9330
9330
  refreshToken, appId: currentAppId }, (sessionIssuer ? { issuer: sessionIssuer } : {}))));
@@ -9335,7 +9335,7 @@ class WebSessionManager {
9335
9335
  static async getSession() {
9336
9336
  if (typeof window === "undefined")
9337
9337
  return null;
9338
- const session = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9338
+ const session = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9339
9339
  if (!session)
9340
9340
  return null;
9341
9341
  const sessionObj = JSON.parse(session);
@@ -9359,7 +9359,7 @@ class WebSessionManager {
9359
9359
  // Persist the ROTATED refresh token — the old one is now
9360
9360
  // single-use spent; reusing it would revoke the family.
9361
9361
  refreshed.refreshToken);
9362
- const newSession = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9362
+ const newSession = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9363
9363
  if (!newSession)
9364
9364
  return null;
9365
9365
  const newObj = JSON.parse(newSession);
@@ -9383,14 +9383,14 @@ class WebSessionManager {
9383
9383
  static clearSession() {
9384
9384
  if (typeof window === "undefined")
9385
9385
  return;
9386
- localStorage.removeItem(this.TAROBASE_SESSION_STORAGE_KEY);
9386
+ localStorage.removeItem(this.BOUNDED_SESSION_STORAGE_KEY);
9387
9387
  }
9388
9388
  /* ------------------------------------------------------------------ */
9389
9389
  /* IS-AUTH */
9390
9390
  /* ------------------------------------------------------------------ */
9391
9391
  static isAuthenticated() {
9392
9392
  // NOTE: this remains synchronous to stay backward compatible
9393
- return !!localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9393
+ return !!localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9394
9394
  }
9395
9395
  /* ------------------------------------------------------------------ */
9396
9396
  /* TOKEN HELPERS */
@@ -9398,13 +9398,13 @@ class WebSessionManager {
9398
9398
  static getIdToken() {
9399
9399
  if (typeof window === "undefined")
9400
9400
  return null;
9401
- const session = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9401
+ const session = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9402
9402
  return session ? JSON.parse(session).idToken : null;
9403
9403
  }
9404
9404
  static getRefreshToken() {
9405
9405
  if (typeof window === "undefined")
9406
9406
  return null;
9407
- const session = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9407
+ const session = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9408
9408
  return session ? JSON.parse(session).refreshToken : null;
9409
9409
  }
9410
9410
  /** The issuer base that minted this session (for routing silent refresh). */
@@ -9412,7 +9412,7 @@ class WebSessionManager {
9412
9412
  var _a;
9413
9413
  if (typeof window === "undefined")
9414
9414
  return null;
9415
- const session = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9415
+ const session = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9416
9416
  return session ? ((_a = JSON.parse(session).issuer) !== null && _a !== void 0 ? _a : null) : null;
9417
9417
  }
9418
9418
  /* ------------------------------------------------------------------ */
@@ -9422,7 +9422,7 @@ class WebSessionManager {
9422
9422
  var _a;
9423
9423
  if (typeof window === "undefined")
9424
9424
  return;
9425
- const session = localStorage.getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9425
+ const session = localStorage.getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9426
9426
  if (!session)
9427
9427
  return;
9428
9428
  const sessionObj = JSON.parse(session);
@@ -9439,10 +9439,10 @@ class WebSessionManager {
9439
9439
  sessionObj.refreshToken = refreshToken;
9440
9440
  }
9441
9441
  (_a = sessionObj.appId) !== null && _a !== void 0 ? _a : (sessionObj.appId = config.appId);
9442
- localStorage.setItem(this.TAROBASE_SESSION_STORAGE_KEY, JSON.stringify(sessionObj));
9442
+ localStorage.setItem(this.BOUNDED_SESSION_STORAGE_KEY, JSON.stringify(sessionObj));
9443
9443
  }
9444
9444
  }
9445
- WebSessionManager.TAROBASE_SESSION_STORAGE_KEY = "tarobase_session_storage";
9445
+ WebSessionManager.BOUNDED_SESSION_STORAGE_KEY = "bounded_session_storage";
9446
9446
 
9447
9447
  let _config = null;
9448
9448
  class ReactNativeSessionManager {
@@ -9535,7 +9535,7 @@ class ReactNativeSessionManager {
9535
9535
  // Issuer base for silent refresh (email overrides w/ humanAuthApiUrl; wallet/
9536
9536
  // guest default to authApiUrl). See WebSessionManager for the rationale.
9537
9537
  const sessionIssuer = (issuer || config.authApiUrl || "").replace(/\/$/, "");
9538
- this.getStorage().setItem(this.TAROBASE_SESSION_STORAGE_KEY, JSON.stringify(Object.assign({ address,
9538
+ this.getStorage().setItem(this.BOUNDED_SESSION_STORAGE_KEY, JSON.stringify(Object.assign({ address,
9539
9539
  accessToken,
9540
9540
  idToken,
9541
9541
  refreshToken, appId: currentAppId }, (sessionIssuer ? { issuer: sessionIssuer } : {}))));
@@ -9544,7 +9544,7 @@ class ReactNativeSessionManager {
9544
9544
  /* GET */
9545
9545
  /* ------------------------------------------------------------------ */
9546
9546
  static async getSession() {
9547
- const session = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9547
+ const session = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9548
9548
  if (!session)
9549
9549
  return null;
9550
9550
  const sessionObj = JSON.parse(session);
@@ -9565,7 +9565,7 @@ class ReactNativeSessionManager {
9565
9565
  const refreshed = await refreshSession(refreshToken, sessionObj.issuer);
9566
9566
  if ((refreshed === null || refreshed === void 0 ? void 0 : refreshed.idToken) && (refreshed === null || refreshed === void 0 ? void 0 : refreshed.accessToken)) {
9567
9567
  await this.updateIdTokenAndAccessToken(refreshed.idToken, refreshed.accessToken, refreshed.refreshToken);
9568
- const newSession = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9568
+ const newSession = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9569
9569
  if (!newSession)
9570
9570
  return null;
9571
9571
  const newObj = JSON.parse(newSession);
@@ -9587,20 +9587,20 @@ class ReactNativeSessionManager {
9587
9587
  /* CLEAR */
9588
9588
  /* ------------------------------------------------------------------ */
9589
9589
  static clearSession() {
9590
- this.getStorage().removeItem(this.TAROBASE_SESSION_STORAGE_KEY);
9590
+ this.getStorage().removeItem(this.BOUNDED_SESSION_STORAGE_KEY);
9591
9591
  }
9592
9592
  /* ------------------------------------------------------------------ */
9593
9593
  /* IS-AUTH */
9594
9594
  /* ------------------------------------------------------------------ */
9595
9595
  static isAuthenticated() {
9596
- return !!this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9596
+ return !!this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9597
9597
  }
9598
9598
  /* ------------------------------------------------------------------ */
9599
9599
  /* TOKEN HELPERS */
9600
9600
  /* ------------------------------------------------------------------ */
9601
9601
  static getIdToken() {
9602
9602
  try {
9603
- const session = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9603
+ const session = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9604
9604
  return session ? JSON.parse(session).idToken : null;
9605
9605
  }
9606
9606
  catch (_a) {
@@ -9611,7 +9611,7 @@ class ReactNativeSessionManager {
9611
9611
  static getIssuer() {
9612
9612
  var _a;
9613
9613
  try {
9614
- const session = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9614
+ const session = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9615
9615
  return session ? ((_a = JSON.parse(session).issuer) !== null && _a !== void 0 ? _a : null) : null;
9616
9616
  }
9617
9617
  catch (_b) {
@@ -9620,7 +9620,7 @@ class ReactNativeSessionManager {
9620
9620
  }
9621
9621
  static getRefreshToken() {
9622
9622
  try {
9623
- const session = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9623
+ const session = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9624
9624
  return session ? JSON.parse(session).refreshToken : null;
9625
9625
  }
9626
9626
  catch (_a) {
@@ -9632,7 +9632,7 @@ class ReactNativeSessionManager {
9632
9632
  /* ------------------------------------------------------------------ */
9633
9633
  static async updateIdTokenAndAccessToken(idToken, accessToken, refreshToken) {
9634
9634
  var _a;
9635
- const session = this.getStorage().getItem(this.TAROBASE_SESSION_STORAGE_KEY);
9635
+ const session = this.getStorage().getItem(this.BOUNDED_SESSION_STORAGE_KEY);
9636
9636
  if (!session)
9637
9637
  return;
9638
9638
  const sessionObj = JSON.parse(session);
@@ -9648,10 +9648,10 @@ class ReactNativeSessionManager {
9648
9648
  sessionObj.refreshToken = refreshToken;
9649
9649
  }
9650
9650
  (_a = sessionObj.appId) !== null && _a !== void 0 ? _a : (sessionObj.appId = config.appId);
9651
- this.getStorage().setItem(this.TAROBASE_SESSION_STORAGE_KEY, JSON.stringify(sessionObj));
9651
+ this.getStorage().setItem(this.BOUNDED_SESSION_STORAGE_KEY, JSON.stringify(sessionObj));
9652
9652
  }
9653
9653
  }
9654
- ReactNativeSessionManager.TAROBASE_SESSION_STORAGE_KEY = "tarobase_session_storage";
9654
+ ReactNativeSessionManager.BOUNDED_SESSION_STORAGE_KEY = "bounded_session_storage";
9655
9655
 
9656
9656
  /**
9657
9657
  * Return the active CLIENT session manager for the current runtime.
@@ -10172,9 +10172,9 @@ async function buildSetDocumentsTransaction(connection, idl, anchorProvider, pay
10172
10172
  /* ENV helpers */
10173
10173
  /* ------------------------------------------------------------------ */
10174
10174
  // Canonical `BOUNDED_PRIVATE_KEY` (matches the CLI); legacy
10175
- // `TAROBASE_SOLANA_KEYPAIR` still honored. Only consulted when no explicit
10175
+ // `BOUNDED_SOLANA_KEYPAIR` still honored. Only consulted when no explicit
10176
10176
  // keypair was provided (createWalletClient passes one).
10177
- const ENV_KEYPAIRS = ["BOUNDED_PRIVATE_KEY", "TAROBASE_SOLANA_KEYPAIR"];
10177
+ const ENV_KEYPAIRS = ["BOUNDED_PRIVATE_KEY", "BOUNDED_SOLANA_KEYPAIR"];
10178
10178
  function loadKeypairFromEnv() {
10179
10179
  let secret;
10180
10180
  let found;
@@ -10297,7 +10297,7 @@ var serverSessionManager = /*#__PURE__*/Object.freeze({
10297
10297
  });
10298
10298
 
10299
10299
  /**
10300
- * Safe base64 helpers for tarobase-core.
10300
+ * Safe base64 helpers for bounded-core.
10301
10301
  *
10302
10302
  * Uses the global atob/btoa when available (browser, RN with polyfill),
10303
10303
  * falls back to the 'buffer' package (Node.js / SSR / RN without polyfill).
@@ -10477,7 +10477,7 @@ axiosRetry(apiClient, {
10477
10477
  shouldResetTimeout: true,
10478
10478
  onRetry: (retryCount, error, requestConfig) => {
10479
10479
  var _a;
10480
- console.warn(`[tarobase-sdk] retry ${retryCount} for ${(_a = requestConfig.method) === null || _a === void 0 ? void 0 : _a.toUpperCase()} ${requestConfig.url} — ${error.code || error.message}`);
10480
+ console.warn(`[bounded-sdk] retry ${retryCount} for ${(_a = requestConfig.method) === null || _a === void 0 ? void 0 : _a.toUpperCase()} ${requestConfig.url} — ${error.code || error.message}`);
10481
10481
  },
10482
10482
  });
10483
10483
  const refreshInFlight = new Map();
@@ -10536,8 +10536,8 @@ async function makeApiRequest(method, urlPath, data, _overrides) {
10536
10536
  : await createAuthHeader(config.isServer);
10537
10537
  const headers = Object.assign({ "Content-Type": "application/json", "X-Public-App-Id": config.appId, "X-App-Id": config.appId }, authHeader);
10538
10538
  if (typeof window !== "undefined" &&
10539
- window.CUSTOM_TAROBASE_APP_ID_HEADER) {
10540
- const customAppId = window.CUSTOM_TAROBASE_APP_ID_HEADER;
10539
+ window.CUSTOM_BOUNDED_APP_ID_HEADER) {
10540
+ const customAppId = window.CUSTOM_BOUNDED_APP_ID_HEADER;
10541
10541
  if (customAppId) {
10542
10542
  headers["X-App-Id"] = customAppId;
10543
10543
  }
@@ -10796,7 +10796,7 @@ function parseAggregateValue(result) {
10796
10796
  * Count items in a collection path. Returns a numeric result.
10797
10797
  *
10798
10798
  * This uses the AI query engine with a count-specific prompt prefix,
10799
- * so TaroBase will generate a $count aggregation pipeline and return
10799
+ * so Bounded will generate a $count aggregation pipeline and return
10800
10800
  * just the count rather than full documents.
10801
10801
  *
10802
10802
  * IMPORTANT: This only works for collections where the read policy is "true".
@@ -11321,10 +11321,10 @@ async function setMany(many, options) {
11321
11321
  let documents = [];
11322
11322
  const pathsToInvalidate = new Set();
11323
11323
  for (const { path, document: documentWithReservedFields } of many) {
11324
- // for setting, we should remove any pieces of the document that start with 'tarobase_' as they are internal and shouldn't be updated. The API would block it if it is one of the reserved ones
11324
+ // for setting, we should remove any pieces of the document that start with '_' as they are internal and shouldn't be updated. The API would block it if it is one of the reserved ones
11325
11325
  let document = documentWithReservedFields;
11326
11326
  if (documentWithReservedFields) {
11327
- document = Object.fromEntries(Object.entries(documentWithReservedFields).filter(([key]) => !key.startsWith('tarobase_')));
11327
+ document = Object.fromEntries(Object.entries(documentWithReservedFields).filter(([key]) => !key.startsWith('_')));
11328
11328
  }
11329
11329
  const normalizedPath = path.startsWith("/") ? path.slice(1) : path;
11330
11330
  pathsToInvalidate.add(normalizedPath);
@@ -11448,7 +11448,7 @@ async function setMany(many, options) {
11448
11448
  var _a, _b, _c, _d, _e;
11449
11449
  // NOTE (backwards-compat revert): a program-allowlist on server-supplied
11450
11450
  // `preInstructions` was tried here for the audit-8 SOL-drain concern, but it
11451
- // broke legitimate onchain DeFi flows — tarobase routes Phoenix, Jupiter/swap,
11451
+ // broke legitimate onchain DeFi flows — bounded routes Phoenix, Jupiter/swap,
11452
11452
  // SPL-Token and ATA-creation instructions through standard-path preInstructions
11453
11453
  // (see sol-helper remaining-accounts-extractor). A correct audit-8 fix must be
11454
11454
  // DeFi-aware (e.g. block ONLY a raw System Transfer/TransferWithSeed, never a
@@ -11532,10 +11532,10 @@ async function setMany(many, options) {
11532
11532
  const transaction = web3_js.VersionedTransaction.deserialize(txBytes);
11533
11533
  // Validate the transaction before signing: ensure only allowed programs
11534
11534
  // and no unauthorized System program instructions (e.g., SOL transfers)
11535
- const TAROBASE_PROGRAM = 'poof4b5pk1L9tmThvBmaABjcyjfhFGbMbQP5BXk2QZp';
11535
+ const BOUNDED_PROGRAM = 'poof4b5pk1L9tmThvBmaABjcyjfhFGbMbQP5BXk2QZp';
11536
11536
  const COMPUTE_BUDGET = 'ComputeBudget111111111111111111111111111111';
11537
11537
  const SYSTEM_PROGRAM = '11111111111111111111111111111111';
11538
- const ALLOWED_PROGRAMS = new Set([TAROBASE_PROGRAM, COMPUTE_BUDGET, SYSTEM_PROGRAM]);
11538
+ const ALLOWED_PROGRAMS = new Set([BOUNDED_PROGRAM, COMPUTE_BUDGET, SYSTEM_PROGRAM]);
11539
11539
  // System program instruction discriminators (first 4 bytes, little-endian u32)
11540
11540
  const SYSTEM_TRANSFER = 2; // Transfer instruction index
11541
11541
  const SYSTEM_TRANSFER_WITH_SEED = 11;
@@ -12129,8 +12129,8 @@ async function getOrCreateConnection(appId, isServer, routePath, authTokenProvid
12129
12129
  if (appId && appId !== config.appId) {
12130
12130
  wsUrl.searchParams.append('appId', appId);
12131
12131
  }
12132
- else if (typeof window !== 'undefined' && window.CUSTOM_TAROBASE_APP_ID_HEADER) {
12133
- wsUrl.searchParams.append('appId', window.CUSTOM_TAROBASE_APP_ID_HEADER);
12132
+ else if (typeof window !== 'undefined' && window.CUSTOM_BOUNDED_APP_ID_HEADER) {
12133
+ wsUrl.searchParams.append('appId', window.CUSTOM_BOUNDED_APP_ID_HEADER);
12134
12134
  }
12135
12135
  else {
12136
12136
  wsUrl.searchParams.append('appId', config.appId);
@@ -12990,7 +12990,7 @@ function serverTimestamp() {
12990
12990
  // ---------------------------------------------------------------------------
12991
12991
  // IDB helpers (lazy-loaded, non-blocking)
12992
12992
  // ---------------------------------------------------------------------------
12993
- const IDB_NAME$1 = 'tarobase-realtime';
12993
+ const IDB_NAME$1 = 'bounded-realtime';
12994
12994
  const IDB_STORE$1 = 'subscriptions';
12995
12995
  const IDB_VERSION = 1;
12996
12996
  let idbPromise = null;
@@ -13428,10 +13428,10 @@ class RealtimeStore {
13428
13428
  const normalizedPath = path.startsWith('/') ? path.slice(1) : path;
13429
13429
  const collectionPath = this.getCollectionPath(normalizedPath);
13430
13430
  const optimisticDoc = Object.assign(Object.assign({ _id: normalizedPath, pathId: normalizedPath }, resolvedDoc), {
13431
- // System timestamp field name differs by stack: the Bounded worker stamps
13432
- // the neutral `_updatedAt`; legacy Tarobase stamps `tarobase_updated_at`.
13431
+ // System timestamp field name: the Bounded worker stamps the neutral
13432
+ // `_updatedAt`; the underscore-prefixed `_updated_at` metadata mirror.
13433
13433
  // Match it so the optimistic doc lines up with the server's confirmation.
13434
- [isBoundedNetwork() ? '_updatedAt' : 'tarobase_updated_at']: Date.now() });
13434
+ [isBoundedNetwork() ? '_updatedAt' : '_updated_at']: Date.now() });
13435
13435
  const sub = this.findSubscriptionByPath(collectionPath);
13436
13436
  let prevDoc = null;
13437
13437
  if (sub) {
@@ -18545,7 +18545,7 @@ let currentAuthProvider = null;
18545
18545
  let currentAuthMethod = null;
18546
18546
  let initConfig = null;
18547
18547
  // --- localStorage helpers: track which auth method the user last logged in with ---
18548
- const STORED_AUTH_METHOD_KEY = 'tarobase_last_auth_method';
18548
+ const STORED_AUTH_METHOD_KEY = 'bounded_last_auth_method';
18549
18549
  function getStoredAuthMethod() {
18550
18550
  try {
18551
18551
  return getPlatform().storage.getItem(STORED_AUTH_METHOD_KEY);
@@ -18593,17 +18593,17 @@ function clearIncompatibleSession() {
18593
18593
  // Lazy loaders for web-only providers.
18594
18594
  // Using dynamic import() ensures Metro (RN) never resolves these modules.
18595
18595
  async function loadPhantomWalletProvider() {
18596
- const mod = await Promise.resolve().then(function () { return require('./phantom-wallet-provider-CDLyxrih.js'); });
18596
+ const mod = await Promise.resolve().then(function () { return require('./phantom-wallet-provider-Dy48LSdU.js'); });
18597
18597
  return { PhantomWalletProvider: mod.PhantomWalletProvider };
18598
18598
  }
18599
18599
  // Web Privy provider (depends on react-dom + @privy-io/react-auth). Lazy so Metro
18600
18600
  // never bundles it into the RN build — RN uses the @privy-io/expo provider instead.
18601
18601
  async function loadPrivyWalletProvider() {
18602
- const mod = await Promise.resolve().then(function () { return require('./privy-wallet-provider-DiHHTDbZ.js'); });
18602
+ const mod = await Promise.resolve().then(function () { return require('./privy-wallet-provider-CiKtBJ5M.js'); });
18603
18603
  return mod.PrivyWalletProvider;
18604
18604
  }
18605
18605
  async function loadSolanaMobileWalletProvider() {
18606
- const mod = await Promise.resolve().then(function () { return require('./solana-mobile-wallet-provider-BYMfFjZb.js'); });
18606
+ const mod = await Promise.resolve().then(function () { return require('./solana-mobile-wallet-provider-k_YdrTJZ.js'); });
18607
18607
  return mod.SolanaMobileWalletProvider;
18608
18608
  }
18609
18609
  async function hotSwapToMWAProvider(config) {
@@ -19323,7 +19323,7 @@ class PrivyExpoProvider {
19323
19323
  if (!wallet) {
19324
19324
  throw new Error('No embedded Solana wallet found after login. Ensure embeddedWallets.solana.createOnLogin is configured.');
19325
19325
  }
19326
- // Mint a Tarobase session by having the Privy Solana wallet sign the
19326
+ // Mint a Bounded session by having the Privy Solana wallet sign the
19327
19327
  // standard SIWS challenge — identical to Phantom/MWA, so the backend mints
19328
19328
  // the session via the proven wallet-signature path (no Privy-specific
19329
19329
  // token verification needed).
@@ -19343,8 +19343,8 @@ class PrivyExpoProvider {
19343
19343
  const connection = new web3_js.Connection(rpcUrl, 'confirmed');
19344
19344
  const remainingAccounts = convertRemainingAccounts(solTransactionData.txArgs[0].remainingAccounts);
19345
19345
  let app_id = solTransactionData.appId;
19346
- if (typeof globalThis !== 'undefined' && globalThis.CUSTOM_TAROBASE_APP_ID_HEADER) {
19347
- app_id = globalThis.CUSTOM_TAROBASE_APP_ID_HEADER;
19346
+ if (typeof globalThis !== 'undefined' && globalThis.CUSTOM_BOUNDED_APP_ID_HEADER) {
19347
+ app_id = globalThis.CUSTOM_BOUNDED_APP_ID_HEADER;
19348
19348
  }
19349
19349
  if (!app_id) {
19350
19350
  throw new Error('App ID is required');
@@ -19498,7 +19498,7 @@ class PrivyExpoProvider {
19498
19498
  // Private helpers
19499
19499
  // -------------------------------------------------------------------
19500
19500
  /**
19501
- * Mint a Tarobase session from a Privy Solana wallet by signing the canonical
19501
+ * Mint a Bounded session from a Privy Solana wallet by signing the canonical
19502
19502
  * SIWS challenge (nonce -> genSolanaMessage -> wallet.signMessage). This reuses
19503
19503
  * createSessionWithSignature — the exact path Phantom, the mobile wallet
19504
19504
  * adapter, and the guest device-key use — so the bounded /session issuer mints
@@ -19681,4 +19681,4 @@ exports.wsGet = wsGet;
19681
19681
  exports.wsGetMany = wsGetMany;
19682
19682
  exports.wsQuery = wsQuery;
19683
19683
  exports.wsSet = wsSet;
19684
- //# sourceMappingURL=index.native-B5IBOdv_.js.map
19684
+ //# sourceMappingURL=index.native-NgHStPq0.js.map