@lastbrain/ai-ui-react 1.0.48 → 1.0.49

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.
@@ -213,7 +213,7 @@ export function AiStatusButton({ status, loading = false, className = "", }) {
213
213
  gap: "8px",
214
214
  borderTop: "1px solid var(--ai-border-primary, #374151)",
215
215
  paddingTop: "12px",
216
- }, children: [_jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/metrics", "_blank"), style: {
216
+ }, children: [_jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/auth/dashboard", "_blank"), style: {
217
217
  flex: 1,
218
218
  background: "transparent",
219
219
  border: "none",
@@ -232,7 +232,7 @@ export function AiStatusButton({ status, loading = false, className = "", }) {
232
232
  Object.assign(e.currentTarget.style, {
233
233
  background: "transparent",
234
234
  });
235
- }, title: "View Metrics", children: _jsx(BarChart3, { size: 18 }) }), _jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/settings", "_blank"), style: {
235
+ }, title: "View Metrics", children: _jsx(BarChart3, { size: 18 }) }), _jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/auth/ai/settings", "_blank"), style: {
236
236
  flex: 1,
237
237
  background: "transparent",
238
238
  border: "none",
@@ -251,7 +251,7 @@ export function AiStatusButton({ status, loading = false, className = "", }) {
251
251
  Object.assign(e.currentTarget.style, {
252
252
  background: "transparent",
253
253
  });
254
- }, title: "Settings", children: _jsx(Settings, { size: 18 }) }), _jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/auth/prompts", "_blank"), style: {
254
+ }, title: "Settings", children: _jsx(Settings, { size: 18 }) }), _jsx("button", { onClick: () => window.open("https://prompt.lastbrain.io/auth/ai/prompts", "_blank"), style: {
255
255
  flex: 1,
256
256
  background: "transparent",
257
257
  border: "none",
@@ -1 +1 @@
1
- {"version":3,"file":"LBAuthProvider.d.ts","sourceRoot":"","sources":["../../src/context/LBAuthProvider.tsx"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EAIT,MAAM,uBAAuB,CAAC;AAE/B,UAAU,eAAe;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IACzD,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,UAAU,cAAe,SAAQ,WAAW;IAC1C,4BAA4B;IAC5B,KAAK,EAAE,CACL,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC,CAAC;IACH,8BAA8B;IAC9B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,6CAA6C;IAC7C,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,gEAAgE;IAChE,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,mDAAmD;IACnD,qBAAqB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,oCAAoC;IACpC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,2BAA2B;IAC3B,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,EAAE,QAA2B,EACpC,QAA2B,EAC3B,cAAc,EACd,YAAY,GACb,EAAE,eAAe,2CA4UjB;AAED;;GAEG;AACH,wBAAgB,KAAK,IAAI,cAAc,CAMtC"}
1
+ {"version":3,"file":"LBAuthProvider.d.ts","sourceRoot":"","sources":["../../src/context/LBAuthProvider.tsx"],"names":[],"mappings":"AAEA;;;GAGG;AAEH,OAAO,EAML,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AACf,OAAO,KAAK,EACV,WAAW,EACX,QAAQ,EAIT,MAAM,uBAAuB,CAAC;AAE/B,UAAU,eAAe;IACvB,QAAQ,EAAE,SAAS,CAAC;IACpB,4DAA4D;IAC5D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,uCAAuC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC;IACzD,sEAAsE;IACtE,YAAY,CAAC,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,UAAU,cAAe,SAAQ,WAAW;IAC1C,4BAA4B;IAC5B,KAAK,EAAE,CACL,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,KACb,OAAO,CAAC;QACX,OAAO,EAAE,OAAO,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,iBAAiB,CAAC,EAAE,OAAO,CAAC;KAC7B,CAAC,CAAC;IACH,8BAA8B;IAC9B,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5B,6CAA6C;IAC7C,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3D,gEAAgE;IAChE,YAAY,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,mDAAmD;IACnD,qBAAqB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3D,oCAAoC;IACpC,cAAc,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,2BAA2B;IAC3B,OAAO,EAAE,QAAQ,EAAE,CAAC;IACpB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAID,wBAAgB,UAAU,CAAC,EACzB,QAAQ,EACR,OAAO,EAAE,QAA2B,EACpC,QAA2B,EAC3B,cAAc,EACd,YAAY,GACb,EAAE,eAAe,2CA6WjB;AAED;;GAEG;AACH,wBAAgB,KAAK,IAAI,cAAc,CAMtC"}
@@ -22,14 +22,46 @@ export function LBProvider({ children, baseUrl: _baseUrl = "/api/lastbrain", pro
22
22
  });
23
23
  if (response.ok) {
24
24
  const session = await response.json();
25
- setState({
26
- status: "ready",
27
- session,
28
- user: {
29
- id: session.userId,
30
- email: "", // Sera rempli par une autre requête si nécessaire
31
- },
32
- });
25
+ // Récupérer les infos utilisateur depuis /auth/status
26
+ try {
27
+ const statusResponse = await fetch(`${proxyUrl}/auth/status`, {
28
+ credentials: "include",
29
+ });
30
+ if (statusResponse.ok) {
31
+ const statusData = await statusResponse.json();
32
+ setState({
33
+ status: "ready",
34
+ session,
35
+ user: {
36
+ id: session.userId,
37
+ email: statusData.user?.email || "",
38
+ },
39
+ });
40
+ }
41
+ else {
42
+ // Fallback sans email
43
+ setState({
44
+ status: "ready",
45
+ session,
46
+ user: {
47
+ id: session.userId,
48
+ email: "",
49
+ },
50
+ });
51
+ }
52
+ }
53
+ catch (statusError) {
54
+ console.error("[LBProvider] Failed to fetch status:", statusError);
55
+ // Fallback sans email
56
+ setState({
57
+ status: "ready",
58
+ session,
59
+ user: {
60
+ id: session.userId,
61
+ email: "",
62
+ },
63
+ });
64
+ }
33
65
  onStatusChange?.("ready");
34
66
  }
35
67
  else {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lastbrain/ai-ui-react",
3
- "version": "1.0.48",
3
+ "version": "1.0.49",
4
4
  "description": "Headless React components for LastBrain AI UI Kit",
5
5
  "private": false,
6
6
  "type": "module",
@@ -417,7 +417,7 @@ export function AiStatusButton({
417
417
  <button
418
418
  onClick={() =>
419
419
  window.open(
420
- "https://prompt.lastbrain.io/metrics",
420
+ "https://prompt.lastbrain.io/auth/dashboard",
421
421
  "_blank"
422
422
  )
423
423
  }
@@ -450,7 +450,7 @@ export function AiStatusButton({
450
450
  <button
451
451
  onClick={() =>
452
452
  window.open(
453
- "https://prompt.lastbrain.io/settings",
453
+ "https://prompt.lastbrain.io/auth/ai/settings",
454
454
  "_blank"
455
455
  )
456
456
  }
@@ -483,7 +483,7 @@ export function AiStatusButton({
483
483
  <button
484
484
  onClick={() =>
485
485
  window.open(
486
- "https://prompt.lastbrain.io/auth/prompts",
486
+ "https://prompt.lastbrain.io/auth/ai/prompts",
487
487
  "_blank"
488
488
  )
489
489
  }
@@ -85,14 +85,47 @@ export function LBProvider({
85
85
 
86
86
  if (response.ok) {
87
87
  const session: LBSession = await response.json();
88
- setState({
89
- status: "ready",
90
- session,
91
- user: {
92
- id: session.userId,
93
- email: "", // Sera rempli par une autre requête si nécessaire
94
- },
95
- });
88
+
89
+ // Récupérer les infos utilisateur depuis /auth/status
90
+ try {
91
+ const statusResponse = await fetch(`${proxyUrl}/auth/status`, {
92
+ credentials: "include",
93
+ });
94
+
95
+ if (statusResponse.ok) {
96
+ const statusData = await statusResponse.json();
97
+ setState({
98
+ status: "ready",
99
+ session,
100
+ user: {
101
+ id: session.userId,
102
+ email: statusData.user?.email || "",
103
+ },
104
+ });
105
+ } else {
106
+ // Fallback sans email
107
+ setState({
108
+ status: "ready",
109
+ session,
110
+ user: {
111
+ id: session.userId,
112
+ email: "",
113
+ },
114
+ });
115
+ }
116
+ } catch (statusError) {
117
+ console.error("[LBProvider] Failed to fetch status:", statusError);
118
+ // Fallback sans email
119
+ setState({
120
+ status: "ready",
121
+ session,
122
+ user: {
123
+ id: session.userId,
124
+ email: "",
125
+ },
126
+ });
127
+ }
128
+
96
129
  onStatusChange?.("ready");
97
130
  } else {
98
131
  setState({ status: "needs_auth" });