@slyxup/ui 0.2.8 → 0.2.10

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.
@@ -1 +1 @@
1
- {"version":3,"file":"UserProfile.d.ts","sourceRoot":"","sources":["../../../src/components/UserProfile/UserProfile.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAqDD,wBAAgB,WAAW,CAAC,EAC1B,KAAY,EACZ,OAAO,EACP,SAAS,GACV,EAAE,gBAAgB,sCAioBlB"}
1
+ {"version":3,"file":"UserProfile.d.ts","sourceRoot":"","sources":["../../../src/components/UserProfile/UserProfile.tsx"],"names":[],"mappings":"AAKA,MAAM,WAAW,gBAAgB;IAC/B,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;CACxB;AAqFD,wBAAgB,WAAW,CAAC,EAC1B,KAAY,EACZ,OAAO,EACP,SAAS,GACV,EAAE,gBAAgB,sCAqmClB"}
@@ -3,11 +3,21 @@ import { useAuth, useUser } from '@slyxup/react';
3
3
  import { useCallback, useEffect, useState } from 'react';
4
4
  import { injectStyles } from '../../styles';
5
5
  function initials(user) {
6
- const n = user.firstName?.trim();
7
- if (n)
8
- return n.slice(0, 1).toUpperCase();
6
+ const f = user.firstName?.trim();
7
+ const l = user.lastName?.trim();
8
+ if (f && l)
9
+ return (f[0] + l[0]).toUpperCase();
10
+ if (f)
11
+ return f.slice(0, 1).toUpperCase();
12
+ if (l)
13
+ return l.slice(0, 1).toUpperCase();
9
14
  return user.email.slice(0, 1).toUpperCase();
10
15
  }
16
+ function displayName(user) {
17
+ const parts = [user.firstName?.trim(), user.lastName?.trim()].filter(Boolean);
18
+ const name = parts.join(' ');
19
+ return name || user.email;
20
+ }
11
21
  function deviceLabel(ua) {
12
22
  if (!ua)
13
23
  return 'Unknown device';
@@ -44,10 +54,15 @@ function formatDate(iso) {
44
54
  });
45
55
  }
46
56
  function formatCurrency(amount, currency) {
47
- return new Intl.NumberFormat(undefined, {
48
- style: 'currency',
49
- currency: currency.toUpperCase(),
50
- }).format(amount / 100);
57
+ try {
58
+ return new Intl.NumberFormat(undefined, {
59
+ style: 'currency',
60
+ currency: currency.toUpperCase(),
61
+ }).format(amount / 100);
62
+ }
63
+ catch {
64
+ return `${(amount / 100).toFixed(2)} ${currency.toUpperCase()}`;
65
+ }
51
66
  }
52
67
  export function UserProfile({ modal = true, onClose, onDeleted, }) {
53
68
  injectStyles();
@@ -78,10 +93,15 @@ export function UserProfile({ modal = true, onClose, onDeleted, }) {
78
93
  const [billingLoading, setBillingLoading] = useState(true);
79
94
  const [subscription, setSubscription] = useState(null);
80
95
  const [invoices, setInvoices] = useState([]);
96
+ const [plans, setPlans] = useState([]);
97
+ const [plansLoading, setPlansLoading] = useState(false);
98
+ const [checkoutId, setCheckoutId] = useState(null);
81
99
  // ── Danger zone state ──
82
100
  const [confirmText, setConfirmText] = useState('');
83
101
  const [deleteBusy, setDeleteBusy] = useState(false);
84
102
  const [deleteError, setDeleteError] = useState(null);
103
+ // Sync form fields when user loads/updates (ensures firstName/lastName show correctly
104
+ // after SlyxUpProvider fetches client.users.me()). Guard against stale overwrites.
85
105
  useEffect(() => {
86
106
  if (user) {
87
107
  setFirstName(user.firstName ?? '');
@@ -112,39 +132,138 @@ export function UserProfile({ modal = true, onClose, onDeleted, }) {
112
132
  }, [client]);
113
133
  const loadBilling = useCallback(async () => {
114
134
  setBillingLoading(true);
135
+ setPlansLoading(true);
115
136
  try {
116
- const billingUrl = client.apiUrl?.replace('auth.slyxup.online', 'billing.slyxup.online') ?? 'https://billing.slyxup.online';
117
- const token = client?._token;
137
+ const rawApiUrl = client.apiUrl ??
138
+ 'https://auth.slyxup.online';
139
+ const billingUrl = rawApiUrl.replace('auth.slyxup.online', 'billing.slyxup.online');
140
+ const token = client?._token ??
141
+ client?.getToken?.();
118
142
  const headers = {
119
143
  'Content-Type': 'application/json',
120
144
  };
121
145
  if (token)
122
146
  headers.Authorization = `Bearer ${token}`;
123
- const [subRes, invRes] = await Promise.allSettled([
124
- fetch(`${billingUrl}/v1/subscription`, {
125
- headers,
126
- credentials: 'include',
127
- }),
128
- fetch(`${billingUrl}/v1/invoices`, { headers, credentials: 'include' }),
129
- ]);
130
- if (subRes.status === 'fulfilled' && subRes.value.ok) {
131
- const sub = await subRes.value.json();
132
- if (sub.ok)
133
- setSubscription(sub.subscription ?? null);
147
+ // Also forward publishable key if available (helps billing resolve project)
148
+ const pubKey = client
149
+ ?.publishableKey;
150
+ if (pubKey && pubKey !== 'pk_test_missing')
151
+ headers['X-Publishable-Key'] = pubKey;
152
+ // Derive projectId for plans: prefer user.projectId, then try subscription's projectId, fallback none
153
+ const projectId = user?.projectId ?? null;
154
+ // Fetch subscription + invoices (new /v1/billing/* with fallback to legacy /v1/*)
155
+ async function fetchJson(url) {
156
+ const res = await fetch(url, { headers, credentials: 'include' });
157
+ if (!res.ok)
158
+ throw new Error(String(res.status));
159
+ return res.json();
160
+ }
161
+ // Subscription
162
+ let subData = null;
163
+ for (const path of [
164
+ `${billingUrl}/v1/billing/subscription${projectId ? `?projectId=${projectId}` : ''}`,
165
+ `${billingUrl}/v1/subscription`,
166
+ ]) {
167
+ try {
168
+ const j = (await fetchJson(path));
169
+ if (j && j.ok !== false) {
170
+ subData = j;
171
+ break;
172
+ }
173
+ }
174
+ catch {
175
+ // try next path
176
+ }
177
+ }
178
+ if (subData) {
179
+ const sd = subData;
180
+ let sub = null;
181
+ if (sd.subscription !== undefined)
182
+ sub = sd.subscription;
183
+ else if (Array.isArray(sd.subscriptions) && sd.subscriptions.length > 0)
184
+ sub = sd.subscriptions[0];
185
+ if (sub) {
186
+ setSubscription({
187
+ id: String(sub.id ?? ''),
188
+ status: String(sub.status ?? 'active'),
189
+ planId: sub.planId ??
190
+ sub.plan_id ??
191
+ null,
192
+ planName: sub.planName ??
193
+ sub.plan_name ??
194
+ sub.name ??
195
+ null,
196
+ currentPeriodEnd: sub.currentPeriodEnd ??
197
+ sub.current_period_end ??
198
+ sub.currentPeriod_end ??
199
+ null,
200
+ cancelAtPeriodEnd: Boolean(sub.cancelAtPeriodEnd ?? sub.cancel_at_period_end ?? false),
201
+ });
202
+ }
203
+ else {
204
+ setSubscription(null);
205
+ }
206
+ }
207
+ else {
208
+ setSubscription(null);
209
+ }
210
+ // Invoices
211
+ for (const path of [
212
+ `${billingUrl}/v1/billing/invoices`,
213
+ `${billingUrl}/v1/invoices`,
214
+ ]) {
215
+ try {
216
+ const invJ = (await fetchJson(path));
217
+ if (invJ?.ok !== false && Array.isArray(invJ.invoices)) {
218
+ setInvoices(invJ.invoices.map((inv) => ({
219
+ id: String(inv.id),
220
+ amount: Number(inv.amount ?? 0),
221
+ currency: String(inv.currency ?? 'USD'),
222
+ status: String(inv.status ?? 'pending'),
223
+ billedAt: inv.billedAt ??
224
+ inv.billed_at ??
225
+ null,
226
+ })));
227
+ break;
228
+ }
229
+ }
230
+ catch {
231
+ // try next
232
+ }
134
233
  }
135
- if (invRes.status === 'fulfilled' && invRes.value.ok) {
136
- const inv = await invRes.value.json();
137
- if (inv.ok)
138
- setInvoices(inv.invoices ?? []);
234
+ // Plans (needs projectId if missing, try without and degrade gracefully)
235
+ const planPaths = [];
236
+ if (projectId)
237
+ planPaths.push(`${billingUrl}/v1/billing/plans?projectId=${projectId}`);
238
+ // Also try without projectId as last resort (will 400 but we catch)
239
+ planPaths.push(`${billingUrl}/v1/billing/plans?projectId=${projectId ?? ''}`);
240
+ planPaths.push(`${billingUrl}/v1/plans`);
241
+ let gotPlans = false;
242
+ for (const p of planPaths) {
243
+ try {
244
+ const pj = (await fetchJson(p));
245
+ if (pj?.ok !== false && Array.isArray(pj.plans)) {
246
+ setPlans(pj.plans);
247
+ gotPlans = true;
248
+ break;
249
+ }
250
+ }
251
+ catch {
252
+ // continue
253
+ }
139
254
  }
255
+ if (!gotPlans)
256
+ setPlans([]);
140
257
  }
141
258
  catch {
142
- // Billing unavailable — show empty state
259
+ // Billing unavailable — show empty state, keep plans empty
260
+ setPlans([]);
143
261
  }
144
262
  finally {
145
263
  setBillingLoading(false);
264
+ setPlansLoading(false);
146
265
  }
147
- }, [client]);
266
+ }, [client, user]);
148
267
  useEffect(() => {
149
268
  if (tab === 'security')
150
269
  void loadSessions();
@@ -241,19 +360,66 @@ export function UserProfile({ modal = true, onClose, onDeleted, }) {
241
360
  setDeleteBusy(false);
242
361
  }
243
362
  }
363
+ async function handleCheckout(planId) {
364
+ setCheckoutId(planId);
365
+ try {
366
+ const rawApiUrl = client.apiUrl ??
367
+ 'https://auth.slyxup.online';
368
+ const billingUrl = rawApiUrl.replace('auth.slyxup.online', 'billing.slyxup.online');
369
+ const token = client?._token ??
370
+ client?.getToken?.();
371
+ const headers = {
372
+ 'Content-Type': 'application/json',
373
+ };
374
+ if (token)
375
+ headers.Authorization = `Bearer ${token}`;
376
+ const pubKey = client
377
+ ?.publishableKey;
378
+ if (pubKey && pubKey !== 'pk_test_missing')
379
+ headers['X-Publishable-Key'] = pubKey;
380
+ const res = await fetch(`${billingUrl}/v1/billing/checkout`, {
381
+ method: 'POST',
382
+ headers,
383
+ credentials: 'include',
384
+ body: JSON.stringify({ planId }),
385
+ });
386
+ const data = (await res.json().catch(() => ({})));
387
+ if (res.ok && typeof data.checkoutUrl === 'string' && data.checkoutUrl) {
388
+ window.location.href = data.checkoutUrl;
389
+ return;
390
+ }
391
+ if (!res.ok)
392
+ throw new Error(typeof data.error === 'string'
393
+ ? data.error
394
+ : `Checkout failed (${res.status})`);
395
+ }
396
+ catch (err) {
397
+ // Fallback: if billing checkout isn't configured, just log. Parent can handle via window redirect.
398
+ console.error('[SlyxUp] checkout failed', err);
399
+ }
400
+ finally {
401
+ setCheckoutId(null);
402
+ }
403
+ }
244
404
  if (!isLoaded)
245
405
  return _jsx("div", { className: "slx-card", "aria-busy": "true" });
246
406
  if (!user)
247
407
  return null;
248
408
  const emailVerified = user.emailVerified;
249
- const body = (_jsxs("div", {
250
- // biome-ignore lint/a11y/useSemanticElements: rendered inside a popover, not a top-level dialog
251
- role: "dialog", "aria-modal": modal || undefined, "aria-label": "Account settings", children: [_jsxs("div", { className: "slx-profile-head", children: [_jsx("h2", { className: "slx-profile-title", children: "Account settings" }), modal && (_jsx("button", { type: "button", className: "slx-profile-close", onClick: onClose, "aria-label": "Close account settings", children: "\u2715" }))] }), _jsxs("div", { className: "slx-profile-body", children: [_jsxs("nav", { className: "slx-profile-nav", "aria-label": "Settings sections", children: [_jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'profile' ? ' on' : ''}`, onClick: () => setTab('profile'), "aria-current": tab === 'profile' ? 'page' : undefined, children: [_jsx(ProfileIcon, {}), " Profile"] }), _jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'security' ? ' on' : ''}`, onClick: () => setTab('security'), "aria-current": tab === 'security' ? 'page' : undefined, children: [_jsx(ShieldIcon, {}), " Security"] }), _jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'billing' ? ' on' : ''}`, onClick: () => setTab('billing'), "aria-current": tab === 'billing' ? 'page' : undefined, children: [_jsx(CreditCardIcon, {}), " Billing"] })] }), _jsxs("div", { className: "slx-profile-content", children: [tab === 'profile' && (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsxs("div", { className: "slx-avatar-row", children: [_jsx("div", { className: "slx-avatar-lg", "aria-hidden": "true", children: user.avatarUrl ? (_jsx("img", { src: user.avatarUrl, alt: "" })) : (initials(user)) }), _jsxs("div", { children: [_jsx("p", { className: "slx-row-value", style: { margin: 0 }, children: user.firstName
252
- ? `${user.firstName}${user.lastName ? ` ${user.lastName}` : ''}`
253
- : user.email }), _jsx("p", { className: "slx-row-label", children: user.email })] })] }), saved && (_jsx("p", { className: "slx-error-text", style: { color: 'var(--slx-success)' }, children: "Profile saved." })), _jsxs("form", { onSubmit: onProfileSubmit, children: [_jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-first", children: "First name" }), _jsx("input", { id: "slx-up-first", className: "slx-input", type: "text", value: firstName, onChange: (e) => setFirstName(e.target.value) })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-last", children: "Last name" }), _jsx("input", { id: "slx-up-last", className: "slx-input", type: "text", value: lastName, onChange: (e) => setLastName(e.target.value) })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-avatar", children: "Avatar URL" }), _jsx("input", { id: "slx-up-avatar", className: "slx-input", type: "url", placeholder: "https://\u2026", value: avatarUrl, onChange: (e) => setAvatarUrl(e.target.value) }), _jsx("p", { className: "slx-hint", children: "Paste a public image URL for your avatar." })] }), _jsx("button", { className: "slx-btn", type: "submit", disabled: busy, children: busy ? 'Saving…' : 'Save changes' })] })] }), _jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Email" }), _jsxs("div", { className: "slx-row", children: [_jsxs("div", { children: [_jsx("p", { className: "slx-row-value", children: user.email }), _jsx("p", { className: "slx-row-label", children: "Primary email" })] }), emailVerified ? (_jsx("span", { className: "slx-badge slx-badge-ok", children: "Verified" })) : (_jsxs("span", { style: {
409
+ const name = displayName(user);
410
+ // Resolve current plan name via plans lookup if subscription has planId but no planName
411
+ const currentPlan = subscription
412
+ ? (plans.find((p) => p.id === subscription.planId) ?? null)
413
+ : null;
414
+ const resolvedPlanName = subscription?.planName ?? currentPlan?.name ?? null;
415
+ const bodyInner = (_jsxs(_Fragment, { children: [_jsxs("div", { className: "slx-profile-head", children: [_jsx("h2", { className: "slx-profile-title", children: "Account settings" }), modal && (_jsx("button", { type: "button", className: "slx-profile-close", onClick: (e) => {
416
+ e.stopPropagation();
417
+ onClose?.();
418
+ }, "aria-label": "Close account settings", children: "\u2715" }))] }), _jsxs("div", { className: "slx-profile-body", children: [_jsxs("nav", { className: "slx-profile-nav", "aria-label": "Settings sections", children: [_jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'profile' ? ' on' : ''}`, onClick: () => setTab('profile'), "aria-current": tab === 'profile' ? 'page' : undefined, children: [_jsx(ProfileIcon, {}), " Profile"] }), _jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'security' ? ' on' : ''}`, onClick: () => setTab('security'), "aria-current": tab === 'security' ? 'page' : undefined, children: [_jsx(ShieldIcon, {}), " Security"] }), _jsxs("button", { type: "button", className: `slx-profile-nav-btn${tab === 'billing' ? ' on' : ''}`, onClick: () => setTab('billing'), "aria-current": tab === 'billing' ? 'page' : undefined, children: [_jsx(CreditCardIcon, {}), " Billing"] })] }), _jsxs("div", { className: "slx-profile-content", children: [tab === 'profile' && (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsxs("div", { className: "slx-avatar-row", children: [_jsx("div", { className: "slx-avatar-lg", "aria-hidden": "true", children: user.avatarUrl ? (_jsx("img", { src: user.avatarUrl, alt: "" })) : (initials(user)) }), _jsxs("div", { style: { minWidth: 0 }, children: [_jsx("p", { className: "slx-row-value", style: { margin: 0, wordBreak: 'break-word' }, children: name }), _jsx("p", { className: "slx-row-label", style: { wordBreak: 'break-all' }, children: user.email })] })] }), saved && (_jsx("p", { className: "slx-error-text", style: { color: 'var(--slx-success)' }, children: "Profile saved." })), _jsxs("form", { onSubmit: onProfileSubmit, children: [_jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-first", children: "First name" }), _jsx("input", { id: "slx-up-first", className: "slx-input", type: "text", autoComplete: "given-name", value: firstName, onChange: (e) => setFirstName(e.target.value) })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-last", children: "Last name" }), _jsx("input", { id: "slx-up-last", className: "slx-input", type: "text", autoComplete: "family-name", value: lastName, onChange: (e) => setLastName(e.target.value) })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-up-avatar", children: "Avatar URL" }), _jsx("input", { id: "slx-up-avatar", className: "slx-input", type: "url", placeholder: "https://\u2026", value: avatarUrl, onChange: (e) => setAvatarUrl(e.target.value) }), _jsx("p", { className: "slx-hint", children: "Paste a public image URL for your avatar." })] }), _jsx("button", { className: "slx-btn", type: "submit", disabled: busy, children: busy ? 'Saving…' : 'Save changes' })] })] }), _jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Email" }), _jsxs("div", { className: "slx-row", style: { flexWrap: 'wrap', gap: 8 }, children: [_jsxs("div", { style: { minWidth: 0 }, children: [_jsx("p", { className: "slx-row-value", style: { wordBreak: 'break-all' }, children: user.email }), _jsx("p", { className: "slx-row-label", children: "Primary email" })] }), emailVerified ? (_jsx("span", { className: "slx-badge slx-badge-ok", children: "Verified" })) : (_jsxs("span", { style: {
254
419
  display: 'inline-flex',
255
420
  alignItems: 'center',
256
421
  gap: 8,
422
+ flexWrap: 'wrap',
257
423
  }, children: [_jsx("span", { className: "slx-badge slx-badge-warn", children: "Unverified" }), _jsx("button", { type: "button", className: "slx-link", onClick: onResendVerification, disabled: resending, children: resending ? 'Sending…' : resent ? 'Sent ✓' : 'Resend' })] }))] })] })] })), tab === 'security' && (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Change password" }), pwSaved && (_jsx("p", { className: "slx-error-text", style: { color: 'var(--slx-success)' }, children: "Password updated." })), pwError && _jsx("p", { className: "slx-error-text", children: pwError }), _jsxs("form", { onSubmit: onPasswordSubmit, children: [_jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-pw-current", children: "Current password" }), _jsx("input", { id: "slx-pw-current", className: "slx-input", type: "password", autoComplete: "current-password", value: currentPassword, onChange: (e) => setCurrentPassword(e.target.value), required: true })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-pw-new", children: "New password" }), _jsx("input", { id: "slx-pw-new", className: "slx-input", type: "password", autoComplete: "new-password", minLength: 8, value: newPassword, onChange: (e) => setNewPassword(e.target.value), required: true }), _jsx("p", { className: "slx-hint", children: "At least 8 characters." })] }), _jsxs("div", { className: "slx-field", children: [_jsx("label", { className: "slx-label", htmlFor: "slx-pw-confirm", children: "Confirm new password" }), _jsx("input", { id: "slx-pw-confirm", className: "slx-input", type: "password", autoComplete: "new-password", value: confirmPassword, onChange: (e) => setConfirmPassword(e.target.value), required: true })] }), _jsx("button", { className: "slx-btn", type: "submit", disabled: pwBusy, children: pwBusy ? 'Updating…' : 'Update password' })] })] }), _jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Active sessions" }), sessionsLoading ? (_jsx("p", { className: "slx-hint", children: "Loading sessions\u2026" })) : sessions.length === 0 ? (_jsx("p", { className: "slx-hint", children: "No active sessions." })) : (_jsxs(_Fragment, { children: [sessions.map((s) => (_jsxs("div", { className: "slx-session", children: [_jsxs("div", { className: "slx-session-meta", children: [_jsxs("p", { className: "slx-session-device", children: [deviceLabel(s.userAgent), s.isCurrent && (_jsx("span", { className: "slx-badge slx-badge-accent", children: "This device" }))] }), _jsx("p", { className: "slx-session-sub", children: [
258
424
  s.ipAddress,
259
425
  `created ${formatDate(s.createdAt)}`,
@@ -266,23 +432,67 @@ export function UserProfile({ modal = true, onClose, onDeleted, }) {
266
432
  background: 'var(--slx-danger)',
267
433
  borderColor: 'var(--slx-danger)',
268
434
  }, onClick: onDeleteAccount, disabled: confirmText !== 'DELETE' || deleteBusy, children: deleteBusy ? 'Deleting…' : 'Delete my account forever' })] })] })), tab === 'billing' &&
269
- (billingLoading ? (_jsx("section", { className: "slx-profile-sec", children: _jsx("p", { className: "slx-hint", children: "Loading billing information\u2026" }) })) : !subscription ? (_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Subscription" }), _jsxs("div", { className: "slx-billing-card", children: [_jsx("p", { className: "slx-billing-plan", children: "No active subscription" }), _jsx("p", { className: "slx-billing-detail", children: "You don't have a subscription yet. Choose a plan to get started." })] })] })) : (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Current plan" }), _jsx("div", { className: "slx-billing-card", children: _jsx("div", { style: {
270
- display: 'flex',
271
- justifyContent: 'space-between',
272
- alignItems: 'flex-start',
273
- }, children: _jsxs("div", { children: [_jsx("p", { className: "slx-billing-plan", children: subscription.planName ?? 'Subscription' }), _jsxs("p", { className: "slx-billing-detail", children: ["Status:", ' ', _jsx("span", { className: `slx-billing-status slx-billing-status-${subscription.status}`, children: subscription.status })] }), subscription.currentPeriodEnd && (_jsx("p", { className: "slx-billing-detail", children: subscription.cancelAtPeriodEnd
274
- ? `Cancels ${formatDate(subscription.currentPeriodEnd)}`
275
- : `Renews ${formatDate(subscription.currentPeriodEnd)}` }))] }) }) })] }), invoices.length > 0 && (_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Invoices" }), invoices.map((inv) => (_jsxs("div", { className: "slx-invoice-row", children: [_jsx("span", { className: "slx-invoice-date", children: inv.billedAt ? formatDate(inv.billedAt) : '—' }), _jsx("span", { className: "slx-invoice-amount", children: formatCurrency(inv.amount, inv.currency) }), _jsx("span", { className: `slx-badge ${inv.status === 'paid'
435
+ (billingLoading ? (_jsx("section", { className: "slx-profile-sec", children: _jsx("p", { className: "slx-hint", children: "Loading billing information\u2026" }) })) : !subscription ? (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Subscription" }), _jsxs("div", { className: "slx-billing-card", children: [_jsx("p", { className: "slx-billing-plan", children: "No active subscription" }), _jsx("p", { className: "slx-billing-detail", children: "You don't have a subscription yet. Choose a plan to get started." })] })] }), _jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Available plans" }), plansLoading ? (_jsx("p", { className: "slx-hint", children: "Loading plans\u2026" })) : plans.length === 0 ? (_jsxs("div", { className: "slx-billing-card", style: { textAlign: 'center' }, children: [_jsx("p", { className: "slx-billing-detail", children: "No plans configured for this project yet." }), _jsx("p", { className: "slx-hint", style: { marginTop: 6 }, children: "Ask your admin to create a plan in billing." })] })) : (_jsx("div", { className: "slx-billing-plans", children: plans.map((plan) => (_jsxs("div", { className: `slx-plan-card${plan.isPopular ? ' popular' : ''}`, children: [plan.isPopular && (_jsx("span", { className: "slx-plan-badge", children: "POPULAR" })), _jsx("p", { className: "slx-plan-name", children: plan.name }), _jsxs("p", { style: { margin: '2px 0 0' }, children: [_jsx("span", { className: "slx-plan-price", children: formatCurrency(plan.amount, plan.currency) }), _jsxs("span", { className: "slx-plan-interval", children: ["/", plan.interval] })] }), plan.trialDays ? (_jsxs("p", { className: "slx-billing-detail", style: {
436
+ color: 'var(--slx-accent)',
437
+ marginTop: 4,
438
+ }, children: [plan.trialDays, " day free trial"] })) : (_jsx("p", { className: "slx-billing-detail", style: { visibility: 'hidden', marginTop: 4 }, children: "\u00A0" })), _jsx("ul", { className: "slx-plan-features", children: (plan.features ?? []).map((f) => (_jsx("li", { children: f }, f))) }), _jsx("button", { type: "button", className: "slx-btn slx-plan-cta", onClick: () => handleCheckout(plan.id), disabled: checkoutId === plan.id, children: checkoutId === plan.id
439
+ ? 'Redirecting…'
440
+ : 'Choose plan' })] }, plan.id))) }))] }), invoices.length > 0 && (_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Invoices" }), invoices.map((inv) => (_jsxs("div", { className: "slx-invoice-row", children: [_jsx("span", { className: "slx-invoice-date", children: inv.billedAt ? formatDate(inv.billedAt) : '—' }), _jsx("span", { className: "slx-invoice-amount", children: formatCurrency(inv.amount, inv.currency) }), _jsx("span", { className: `slx-badge ${inv.status === 'paid'
441
+ ? 'slx-badge-ok'
442
+ : inv.status === 'overdue'
443
+ ? 'slx-badge-warn'
444
+ : 'slx-badge-accent'}`, children: inv.status })] }, inv.id)))] }))] })) : (_jsxs(_Fragment, { children: [_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Current plan" }), _jsxs("div", { className: "slx-billing-card", children: [_jsxs("div", { style: {
445
+ display: 'flex',
446
+ justifyContent: 'space-between',
447
+ alignItems: 'flex-start',
448
+ gap: 12,
449
+ flexWrap: 'wrap',
450
+ }, children: [_jsxs("div", { style: { minWidth: 0 }, children: [_jsx("p", { className: "slx-billing-plan", children: resolvedPlanName ?? 'Subscription' }), _jsxs("p", { className: "slx-billing-detail", children: ["Status:", ' ', _jsx("span", { className: `slx-billing-status slx-billing-status-${subscription.status}`, children: subscription.status })] }), subscription.currentPeriodEnd && (_jsx("p", { className: "slx-billing-detail", children: subscription.cancelAtPeriodEnd
451
+ ? `Cancels ${formatDate(subscription.currentPeriodEnd)}`
452
+ : `Renews ${formatDate(subscription.currentPeriodEnd)}` })), subscription.cancelAtPeriodEnd && (_jsx("p", { className: "slx-billing-detail", style: {
453
+ color: 'var(--slx-danger)',
454
+ fontWeight: 600,
455
+ }, children: "Scheduled to cancel at period end" }))] }), currentPlan && (_jsxs("span", { className: "slx-badge slx-badge-accent", style: { flexShrink: 0 }, children: [formatCurrency(currentPlan.amount, currentPlan.currency), "/", currentPlan.interval] }))] }), currentPlan?.features &&
456
+ currentPlan.features.length > 0 && (_jsx("ul", { className: "slx-plan-features", style: { margin: '12px 0 0' }, children: currentPlan.features.map((f) => (_jsx("li", { children: f }, f))) })), _jsx("div", { className: "slx-billing-actions", children: _jsx("button", { type: "button", className: "slx-btn-secondary", onClick: () => void loadBilling(), children: "Refresh" }) })] })] }), plansLoading ? (_jsx("section", { className: "slx-profile-sec", children: _jsx("p", { className: "slx-hint", children: "Loading available plans\u2026" }) })) : plans.length > 0 ? (_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Available plans" }), _jsx("p", { className: "slx-hint", style: { marginBottom: 8 }, children: "Switch plans anytime. Changes apply at the next billing cycle." }), _jsx("div", { className: "slx-billing-plans", children: plans.map((plan) => {
457
+ const isCurrent = subscription.planId
458
+ ? subscription.planId === plan.id
459
+ : resolvedPlanName === plan.name;
460
+ const currentAmount = currentPlan?.amount ?? 0;
461
+ const isUpgrade = plan.amount > currentAmount;
462
+ const isDowngrade = plan.amount < currentAmount && !isCurrent;
463
+ return (_jsxs("div", { className: `slx-plan-card${plan.isPopular ? ' popular' : ''}`, style: isCurrent ? { opacity: 0.92 } : undefined, children: [plan.isPopular && !isCurrent && (_jsx("span", { className: "slx-plan-badge", children: "POPULAR" })), isCurrent && (_jsx("span", { className: "slx-plan-badge", style: { background: 'var(--slx-success)' }, children: "CURRENT" })), _jsx("p", { className: "slx-plan-name", children: plan.name }), _jsxs("p", { style: { margin: '2px 0 0' }, children: [_jsx("span", { className: "slx-plan-price", children: formatCurrency(plan.amount, plan.currency) }), _jsxs("span", { className: "slx-plan-interval", children: ["/", plan.interval] })] }), plan.trialDays ? (_jsxs("p", { className: "slx-billing-detail", style: {
464
+ color: 'var(--slx-accent)',
465
+ marginTop: 4,
466
+ }, children: [plan.trialDays, " day trial"] })) : (_jsx("p", { className: "slx-billing-detail", style: { visibility: 'hidden', marginTop: 4 }, children: "\u00A0" })), _jsx("ul", { className: "slx-plan-features", children: (plan.features ?? []).map((f) => (_jsx("li", { children: f }, f))) }), _jsx("button", { type: "button", className: isCurrent
467
+ ? 'slx-btn-secondary slx-plan-cta'
468
+ : 'slx-btn slx-plan-cta', disabled: isCurrent || checkoutId === plan.id, onClick: () => handleCheckout(plan.id), children: isCurrent
469
+ ? 'Current plan'
470
+ : checkoutId === plan.id
471
+ ? 'Redirecting…'
472
+ : isUpgrade
473
+ ? 'Upgrade'
474
+ : isDowngrade
475
+ ? 'Downgrade'
476
+ : 'Switch plan' })] }, plan.id));
477
+ }) })] })) : null, invoices.length > 0 && (_jsxs("section", { className: "slx-profile-sec", children: [_jsx("h3", { className: "slx-sec-title", children: "Invoices" }), invoices.map((inv) => (_jsxs("div", { className: "slx-invoice-row", children: [_jsx("span", { className: "slx-invoice-date", children: inv.billedAt ? formatDate(inv.billedAt) : '—' }), _jsx("span", { className: "slx-invoice-amount", children: formatCurrency(inv.amount, inv.currency) }), _jsx("span", { className: `slx-badge ${inv.status === 'paid'
276
478
  ? 'slx-badge-ok'
277
479
  : inv.status === 'overdue'
278
480
  ? 'slx-badge-warn'
279
481
  : 'slx-badge-accent'}`, children: inv.status })] }, inv.id)))] }))] })))] })] })] }));
280
- if (!modal)
281
- return body;
282
- return (_jsx("div", { className: "slx-overlay", onMouseDown: (e) => {
482
+ if (!modal) {
483
+ return (_jsx("div", { className: "slx-profile-modal", style: { maxHeight: 'none' }, children: bodyInner }));
484
+ }
485
+ // Modal overlay — click on backdrop closes, click inside modal does not.
486
+ // Use onMouseDown + onClick for desktop + mobile reliability; close button also works via stopPropagation.
487
+ return (
488
+ // biome-ignore lint/a11y/useKeyWithClickEvents: overlay click is for mouse; keyboard Escape handled in effect
489
+ _jsx("div", { className: "slx-overlay", onMouseDown: (e) => {
490
+ if (e.target === e.currentTarget)
491
+ onClose?.();
492
+ }, onClick: (e) => {
283
493
  if (e.target === e.currentTarget)
284
494
  onClose?.();
285
- }, children: body }));
495
+ }, role: "presentation", children: _jsx("div", { role: "dialog", "aria-modal": "true", "aria-label": "Account settings", className: "slx-profile-modal", onMouseDown: (e) => e.stopPropagation(), onClick: (e) => e.stopPropagation(), children: bodyInner }) }));
286
496
  }
287
497
  function ProfileIcon() {
288
498
  return (_jsxs("svg", { width: "15", height: "15", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", "aria-hidden": "true", children: [_jsx("circle", { cx: "12", cy: "8", r: "4" }), _jsx("path", { d: "M5 21c0-3.9 3.1-7 7-7s7 3.1 7 7" })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"UserProfile.js","sourceRoot":"","sources":["../../../src/components/UserProfile/UserProfile.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"UserProfile.js","sourceRoot":"","sources":["../../../src/components/UserProfile/UserProfile.tsx"],"names":[],"mappings":"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"}