@base44-preview/cli 0.0.54-pr.538.31b00c3 → 0.0.54-pr.538.77dd117

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/cli/index.js CHANGED
@@ -235154,8 +235154,37 @@ function getTestOverrides() {
235154
235154
  // src/core/auth/config.ts
235155
235155
  var TOKEN_REFRESH_BUFFER_MS = 60 * 1000;
235156
235156
  var refreshPromise = null;
235157
- function getEnvAccessToken() {
235158
- return process.env.BASE44_ACCESS_TOKEN || undefined;
235157
+ function decodeJwtClaims(token) {
235158
+ const parts = token.split(".");
235159
+ if (parts.length !== 3) {
235160
+ return null;
235161
+ }
235162
+ try {
235163
+ return JSON.parse(Buffer.from(parts[1], "base64url").toString("utf8"));
235164
+ } catch {
235165
+ return null;
235166
+ }
235167
+ }
235168
+ async function seedAuthFromEnv() {
235169
+ const accessToken = process.env.BASE44_ACCESS_TOKEN;
235170
+ if (!accessToken) {
235171
+ return false;
235172
+ }
235173
+ const refreshToken = process.env.BASE44_REFRESH_TOKEN;
235174
+ const claims = decodeJwtClaims(accessToken);
235175
+ const sub = typeof claims?.sub === "string" ? claims.sub : undefined;
235176
+ const exp = typeof claims?.exp === "number" ? claims.exp : undefined;
235177
+ if (!refreshToken || !sub || !exp) {
235178
+ return false;
235179
+ }
235180
+ await writeAuth({
235181
+ accessToken,
235182
+ refreshToken,
235183
+ expiresAt: exp * 1000,
235184
+ email: sub,
235185
+ name: sub
235186
+ });
235187
+ return true;
235159
235188
  }
235160
235189
  async function readAuth() {
235161
235190
  try {
@@ -235218,9 +235247,6 @@ async function refreshAndSaveTokens() {
235218
235247
  return refreshPromise;
235219
235248
  }
235220
235249
  async function isLoggedIn() {
235221
- if (getEnvAccessToken()) {
235222
- return true;
235223
- }
235224
235250
  try {
235225
235251
  await readAuth();
235226
235252
  return true;
@@ -244171,9 +244197,6 @@ async function handleUnauthorized(request, _options, response) {
244171
244197
  if (retriedRequests.has(request)) {
244172
244198
  return;
244173
244199
  }
244174
- if (getEnvAccessToken()) {
244175
- return;
244176
- }
244177
244200
  const newAccessToken = await refreshAndSaveTokens();
244178
244201
  if (!newAccessToken) {
244179
244202
  return;
@@ -244200,11 +244223,6 @@ var base44Client = distribution_default.create({
244200
244223
  captureRequestBody,
244201
244224
  async (request) => {
244202
244225
  try {
244203
- const envToken = getEnvAccessToken();
244204
- if (envToken) {
244205
- request.headers.set("Authorization", `Bearer ${envToken}`);
244206
- return;
244207
- }
244208
244226
  const auth = await readAuth();
244209
244227
  if (isTokenExpired(auth)) {
244210
244228
  const newAccessToken = await refreshAndSaveTokens();
@@ -244404,6 +244422,7 @@ async function login({
244404
244422
 
244405
244423
  // src/cli/utils/command/middleware.ts
244406
244424
  async function ensureAuth(ctx) {
244425
+ await seedAuthFromEnv();
244407
244426
  const loggedIn = await isLoggedIn();
244408
244427
  if (!loggedIn) {
244409
244428
  ctx.log.info("You need to login first to continue.");
@@ -261803,4 +261822,4 @@ export {
261803
261822
  CLIExitError
261804
261823
  };
261805
261824
 
261806
- //# debugId=3C4BC63D9DD7271A64756E2164756E21
261825
+ //# debugId=C760C3B8B75787D664756E2164756E21