@lastbrain/ai-ui-core 1.0.54 → 1.0.55

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.
@@ -165,7 +165,7 @@ export function createClient(config) {
165
165
  // Silently fail - don't block the response
166
166
  });
167
167
  }
168
- catch (_error) {
168
+ catch {
169
169
  // Ignore tracking errors
170
170
  }
171
171
  }
@@ -207,7 +207,7 @@ export function createClient(config) {
207
207
  // Silently fail - don't block the response
208
208
  });
209
209
  }
210
- catch (error) {
210
+ catch {
211
211
  // Ignore tracking errors
212
212
  }
213
213
  }
@@ -1 +1 @@
1
- {"version":3,"file":"enhanced-gateway.d.ts","sourceRoot":"","sources":["../../../src/route-handlers/nextjs/enhanced-gateway.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,GAAG;;YAKotC,CAAC;;iDALtsC,CAAC;AAChC,eAAO,MAAM,IAAI;;YAImtC,CAAC;;iDAJpsC,CAAC;AAClC,eAAO,MAAM,GAAG;;YAGotC,CAAC;;iDAHtsC,CAAC;AAChC,eAAO,MAAM,MAAM;;YAEitC,CAAC;;iDAFhsC,CAAC;AACtC,eAAO,MAAM,KAAK;;YACktC,CAAC;;iDADlsC,CAAC"}
1
+ {"version":3,"file":"enhanced-gateway.d.ts","sourceRoot":"","sources":["../../../src/route-handlers/nextjs/enhanced-gateway.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,GAAG;;YAKqtC,CAAC;;iDALvsC,CAAC;AAChC,eAAO,MAAM,IAAI;;YAIotC,CAAC;;iDAJrsC,CAAC;AAClC,eAAO,MAAM,GAAG;;YAGqtC,CAAC;;iDAHvsC,CAAC;AAChC,eAAO,MAAM,MAAM;;YAEktC,CAAC;;iDAFjsC,CAAC;AACtC,eAAO,MAAM,KAAK;;YACmtC,CAAC;;iDADnsC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"lb-proxy.d.ts","sourceRoot":"","sources":["../../../src/route-handlers/nextjs/lb-proxy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,aAAkB;mBA4BlD,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;oBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;mBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;sBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;qBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;EAuJzB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,MAAM,EACpB,SAAS,GAAE,MAAe,GACzB,YAAY,CAYd;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,CAGzE"}
1
+ {"version":3,"file":"lb-proxy.d.ts","sourceRoot":"","sources":["../../../src/route-handlers/nextjs/lb-proxy.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAExD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,+BAA+B;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,GAAE,aAAkB;mBA4BlD,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;oBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;mBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;sBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;qBAFb,WAAW,YACV;QAAE,MAAM,EAAE,OAAO,CAAC;YAAE,IAAI,CAAC,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAA;KAAE,KACjD,OAAO,CAAC,YAAY,CAAC;EAwJzB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,YAAY,EACtB,YAAY,EAAE,MAAM,EACpB,SAAS,GAAE,MAAe,GACzB,YAAY,CAYd;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,YAAY,GAAG,YAAY,CAGzE"}
@@ -26,7 +26,7 @@ export function createLBProxyHandler(config = {}) {
26
26
  * - Legacy : pas de préfixe si baseUrl contient déjà /api/public/v1
27
27
  * - Sinon : /api/ai pour toutes les routes
28
28
  */
29
- function getApiPrefix(path) {
29
+ function getApiPrefix(_path) {
30
30
  if (isLegacyBaseUrl) {
31
31
  return ""; // Legacy: baseUrl contient déjà le préfixe
32
32
  }
@@ -97,33 +97,34 @@ export function createLBProxyHandler(config = {}) {
97
97
  }
98
98
  headers["Cookie"] = cookieParts.join("; ");
99
99
  }
100
- // Authentification : LB_API_KEY ou session cookie
100
+ // Authentification priorité:
101
+ // 1) Authorization/x-lb-api-key explicites du client
102
+ // 2) lb_session cookie (identité utilisateur)
103
+ // 3) LB_API_KEY fallback serveur (mode service)
101
104
  if (!authorization && !explicitApiKeyHeader) {
102
- if (apiKey) {
105
+ if (sessionToken) {
106
+ // Envoyer le cookie à la fois comme Authorization ET comme Cookie
107
+ // pour que le backend résolve correctement authType=lb_session.
108
+ headers["Authorization"] = `Bearer ${sessionToken}`;
109
+ console.log("[LB Proxy] Forwarding session cookie:", {
110
+ name: sessionCookieName,
111
+ hasValue: !!sessionToken,
112
+ });
113
+ }
114
+ else if (apiKey) {
103
115
  headers["x-lb-api-key"] = apiKey;
104
116
  headers["Authorization"] = `Bearer ${apiKey}`;
105
117
  }
106
- else {
107
- // Lire le cookie de session
108
- if (sessionToken) {
109
- // Envoyer le cookie à la fois comme Authorization ET comme Cookie
110
- headers["Authorization"] = `Bearer ${sessionToken}`;
111
- console.log("[LB Proxy] Forwarding session cookie:", {
112
- name: sessionCookieName,
113
- hasValue: !!sessionToken,
114
- });
115
- }
116
- else if (!isPublicPath) {
117
- // Pas d'auth disponible et route protégée
118
- console.log("[LB Proxy] No auth available for protected route:", {
119
- path,
120
- isPublicPath,
121
- });
122
- return NextResponse.json({
123
- error: "No authentication provided",
124
- hint: "Set LB_API_KEY env variable or login via /api/lastbrain/auth/login",
125
- }, { status: 401 });
126
- }
118
+ else if (!isPublicPath) {
119
+ // Pas d'auth disponible et route protégée
120
+ console.log("[LB Proxy] No auth available for protected route:", {
121
+ path,
122
+ isPublicPath,
123
+ });
124
+ return NextResponse.json({
125
+ error: "No authentication provided",
126
+ hint: "Set LB_API_KEY env variable or login via /api/lastbrain/auth/login",
127
+ }, { status: 401 });
127
128
  }
128
129
  }
129
130
  // Lire le body si c'est POST/PUT/PATCH
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lastbrain/ai-ui-core",
3
- "version": "1.0.54",
3
+ "version": "1.0.55",
4
4
  "description": "Framework-agnostic core library for LastBrain AI UI Kit",
5
5
  "private": false,
6
6
  "type": "module",
@@ -231,7 +231,7 @@ export function createClient(config: ClientConfig) {
231
231
  }).catch(() => {
232
232
  // Silently fail - don't block the response
233
233
  });
234
- } catch (_error) {
234
+ } catch {
235
235
  // Ignore tracking errors
236
236
  }
237
237
  }
@@ -280,7 +280,7 @@ export function createClient(config: ClientConfig) {
280
280
  }).catch(() => {
281
281
  // Silently fail - don't block the response
282
282
  });
283
- } catch (error) {
283
+ } catch {
284
284
  // Ignore tracking errors
285
285
  }
286
286
  }
@@ -269,10 +269,10 @@ export class LBClient {
269
269
 
270
270
  async verifySession(sessionToken?: string): Promise<LBSession | null> {
271
271
  try {
272
- const response = await this.request<{ session?: LBSession; user?: any }>(
273
- "/auth/session/verify",
274
- { method: "GET", sessionToken }
275
- );
272
+ const response = await this.request<{
273
+ session?: LBSession;
274
+ user?: any;
275
+ }>("/auth/session/verify", { method: "GET", sessionToken });
276
276
  return response?.session || null;
277
277
  } catch {
278
278
  return null;
@@ -46,7 +46,7 @@ export function createLBProxyHandler(config: LBProxyConfig = {}) {
46
46
  * - Legacy : pas de préfixe si baseUrl contient déjà /api/public/v1
47
47
  * - Sinon : /api/ai pour toutes les routes
48
48
  */
49
- function getApiPrefix(path: string): string {
49
+ function getApiPrefix(_path: string): string {
50
50
  if (isLegacyBaseUrl) {
51
51
  return ""; // Legacy: baseUrl contient déjà le préfixe
52
52
  }
@@ -129,34 +129,35 @@ export function createLBProxyHandler(config: LBProxyConfig = {}) {
129
129
  headers["Cookie"] = cookieParts.join("; ");
130
130
  }
131
131
 
132
- // Authentification : LB_API_KEY ou session cookie
132
+ // Authentification priorité:
133
+ // 1) Authorization/x-lb-api-key explicites du client
134
+ // 2) lb_session cookie (identité utilisateur)
135
+ // 3) LB_API_KEY fallback serveur (mode service)
133
136
  if (!authorization && !explicitApiKeyHeader) {
134
- if (apiKey) {
137
+ if (sessionToken) {
138
+ // Envoyer le cookie à la fois comme Authorization ET comme Cookie
139
+ // pour que le backend résolve correctement authType=lb_session.
140
+ headers["Authorization"] = `Bearer ${sessionToken}`;
141
+ console.log("[LB Proxy] Forwarding session cookie:", {
142
+ name: sessionCookieName,
143
+ hasValue: !!sessionToken,
144
+ });
145
+ } else if (apiKey) {
135
146
  headers["x-lb-api-key"] = apiKey;
136
147
  headers["Authorization"] = `Bearer ${apiKey}`;
137
- } else {
138
- // Lire le cookie de session
139
- if (sessionToken) {
140
- // Envoyer le cookie à la fois comme Authorization ET comme Cookie
141
- headers["Authorization"] = `Bearer ${sessionToken}`;
142
- console.log("[LB Proxy] Forwarding session cookie:", {
143
- name: sessionCookieName,
144
- hasValue: !!sessionToken,
145
- });
146
- } else if (!isPublicPath) {
147
- // Pas d'auth disponible et route protégée
148
- console.log("[LB Proxy] No auth available for protected route:", {
149
- path,
150
- isPublicPath,
151
- });
152
- return NextResponse.json(
153
- {
154
- error: "No authentication provided",
155
- hint: "Set LB_API_KEY env variable or login via /api/lastbrain/auth/login",
156
- },
157
- { status: 401 }
158
- );
159
- }
148
+ } else if (!isPublicPath) {
149
+ // Pas d'auth disponible et route protégée
150
+ console.log("[LB Proxy] No auth available for protected route:", {
151
+ path,
152
+ isPublicPath,
153
+ });
154
+ return NextResponse.json(
155
+ {
156
+ error: "No authentication provided",
157
+ hint: "Set LB_API_KEY env variable or login via /api/lastbrain/auth/login",
158
+ },
159
+ { status: 401 }
160
+ );
160
161
  }
161
162
  }
162
163