mitra-interactions-sdk 1.0.60-beta.7 → 1.0.60-beta.9

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/index.js CHANGED
@@ -449,13 +449,11 @@ async function emailLoginMitra2(options) {
449
449
  });
450
450
  const response = {
451
451
  token: data.token,
452
- // baseURL = authUrl usado (o gateway). NÃO usar data.baseURL da resposta:
453
- // no novo Mitra o BFF pode devolver outro backURL e isso reescreveria a base
454
- // (quebra no F5 quando o app persiste). authUrl e baseURL são o mesmo gateway.
452
+ // baseURL = authUrl (o gateway configurado). O BFF não devolve baseURL/integrationURL;
453
+ // a base é sempre o gateway, resolvido no lado do SDK.
455
454
  baseURL: authUrl,
456
455
  // Guarda o refreshToken do login — é ele que vai no body do refresh depois.
457
- ...data.refreshToken ? { refreshToken: data.refreshToken } : {},
458
- ...data.integrationURL ? { integrationURL: data.integrationURL } : {}
456
+ ...data.refreshToken ? { refreshToken: data.refreshToken } : {}
459
457
  };
460
458
  autoConfigureFromLogin2(response, authUrl, projectId);
461
459
  return response;
@@ -488,11 +486,9 @@ async function refreshTokenSilently2(authUrl, _projectId) {
488
486
  const data = await postBffAuth(buildBffAuthEndpoint(authUrl, "/refresh-token"), { refreshToken });
489
487
  return {
490
488
  token: data.token,
491
- // Refresh NÃO muda a base — devolve o authUrl usado (gateway), nunca o
492
- // data.baseURL da resposta (que reescreveria a base e quebra no F5).
489
+ // Refresh não muda a base — mantém o authUrl (gateway).
493
490
  baseURL: authUrl,
494
- ...data.refreshToken ? { refreshToken: data.refreshToken } : {},
495
- ...data.integrationURL ? { integrationURL: data.integrationURL } : {}
491
+ ...data.refreshToken ? { refreshToken: data.refreshToken } : {}
496
492
  };
497
493
  } finally {
498
494
  _refreshPromise2 = null;
@@ -2360,6 +2356,37 @@ function stripBearer(token) {
2360
2356
  }
2361
2357
  return t;
2362
2358
  }
2359
+ var SESSION_STORE_KEY = "mitra-session";
2360
+ function safeLocalStorage() {
2361
+ try {
2362
+ return typeof localStorage !== "undefined" ? localStorage : null;
2363
+ } catch (e) {
2364
+ return null;
2365
+ }
2366
+ }
2367
+ function persistRefreshToken(refreshToken) {
2368
+ const ls = safeLocalStorage();
2369
+ if (!ls) return;
2370
+ try {
2371
+ const raw = ls.getItem(SESSION_STORE_KEY);
2372
+ const obj = raw ? JSON.parse(raw) : {};
2373
+ obj.refreshToken = refreshToken;
2374
+ ls.setItem(SESSION_STORE_KEY, JSON.stringify(obj));
2375
+ } catch (e) {
2376
+ }
2377
+ }
2378
+ function readPersistedRefreshToken() {
2379
+ const ls = safeLocalStorage();
2380
+ if (!ls) return void 0;
2381
+ try {
2382
+ const raw = ls.getItem(SESSION_STORE_KEY);
2383
+ if (!raw) return void 0;
2384
+ const obj = JSON.parse(raw);
2385
+ return typeof (obj == null ? void 0 : obj.refreshToken) === "string" && obj.refreshToken ? obj.refreshToken : void 0;
2386
+ } catch (e) {
2387
+ return void 0;
2388
+ }
2389
+ }
2363
2390
  function readInjectedEnv() {
2364
2391
  if (typeof window === "undefined") return {};
2365
2392
  const env = window.__mitraEnv;
@@ -2377,6 +2404,12 @@ function configureSdkMitra(config = {}) {
2377
2404
  throw new Error("baseURL \xE9 obrigat\xF3rio. Passe em configureSdkMitra({ baseURL }), fa\xE7a login para receber via sdk-auth, ou rode em uma app publicada pelo Mitra (window.__mitraEnv).");
2378
2405
  }
2379
2406
  if (merged.token != null) merged.token = stripBearer(merged.token);
2407
+ if (!merged.refreshToken) {
2408
+ const persisted = readPersistedRefreshToken();
2409
+ if (persisted) merged.refreshToken = persisted;
2410
+ } else {
2411
+ persistRefreshToken(merged.refreshToken);
2412
+ }
2380
2413
  globalConfig = {
2381
2414
  ...merged,
2382
2415
  baseURL: merged.baseURL.replace(/\/+$/, "")
@@ -2403,6 +2436,7 @@ function updateGlobalToken(token, refreshToken) {
2403
2436
  token: stripBearer(token),
2404
2437
  ...refreshToken !== void 0 ? { refreshToken } : {}
2405
2438
  };
2439
+ if (refreshToken) persistRefreshToken(refreshToken);
2406
2440
  }
2407
2441
  }
2408
2442
  function resolveProjectId2(projectId) {