@mdguggenbichler/slugbase-core 0.0.31 → 0.0.33

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.
Files changed (40) hide show
  1. package/backend/dist/config/mode.d.ts +4 -4
  2. package/backend/dist/config/mode.d.ts.map +1 -1
  3. package/backend/dist/config/mode.js +4 -4
  4. package/backend/dist/config/mode.js.map +1 -1
  5. package/backend/dist/routes/auth.d.ts.map +1 -1
  6. package/backend/dist/routes/auth.js +33 -3
  7. package/backend/dist/routes/auth.js.map +1 -1
  8. package/frontend/src/App.tsx +3 -1
  9. package/frontend/src/components/FilterChips.tsx +5 -3
  10. package/frontend/src/components/StatCard.tsx +82 -5
  11. package/frontend/src/components/bookmarks/BookmarkCard.tsx +317 -210
  12. package/frontend/src/components/bookmarks/BookmarkTableView.tsx +47 -23
  13. package/frontend/src/components/collections/CollectionToolbar.tsx +294 -0
  14. package/frontend/src/components/collections/README.md +44 -0
  15. package/frontend/src/components/collections/index.ts +2 -0
  16. package/frontend/src/components/dashboard/DashboardHeader.tsx +16 -0
  17. package/frontend/src/components/dashboard/MostUsedTagsSection.tsx +49 -0
  18. package/frontend/src/components/dashboard/PinnedSection.tsx +110 -0
  19. package/frontend/src/components/dashboard/QuickAccessSection.tsx +120 -0
  20. package/frontend/src/components/dashboard/README.md +35 -0
  21. package/frontend/src/components/dashboard/StatsCardsRow.tsx +78 -0
  22. package/frontend/src/components/dashboard/index.ts +17 -0
  23. package/frontend/src/locales/de.json +11 -0
  24. package/frontend/src/locales/en.json +10 -0
  25. package/frontend/src/locales/es.json +11 -0
  26. package/frontend/src/locales/fr.json +2 -0
  27. package/frontend/src/locales/it.json +2 -0
  28. package/frontend/src/locales/ja.json +2 -0
  29. package/frontend/src/locales/nl.json +2 -0
  30. package/frontend/src/locales/pl.json +2 -0
  31. package/frontend/src/locales/pt.json +2 -0
  32. package/frontend/src/locales/ru.json +2 -0
  33. package/frontend/src/locales/zh.json +2 -0
  34. package/frontend/src/pages/Bookmarks.tsx +97 -214
  35. package/frontend/src/pages/Dashboard.tsx +99 -216
  36. package/frontend/src/pages/Folders.tsx +181 -251
  37. package/frontend/src/pages/Login.tsx +6 -3
  38. package/frontend/src/pages/Tags.tsx +87 -145
  39. package/frontend/src/pages/VerifyEmailRequired.tsx +163 -0
  40. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  /**
2
- * SlugBase runtime mode is now self-hosted only.
2
+ * SlugBase runtime mode: self-hosted (default) or cloud when SLUGBASE_MODE=cloud.
3
3
  */
4
- export declare const mode: 'selfhosted';
5
- export declare const isCloud = false;
6
- export declare const isSelfhosted = true;
4
+ export declare const isCloud: boolean;
5
+ export declare const mode: 'selfhosted' | 'cloud';
6
+ export declare const isSelfhosted: boolean;
7
7
  //# sourceMappingURL=mode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mode.d.ts","sourceRoot":"","sources":["../../src/config/mode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,IAAI,EAAE,YAA2B,CAAC;AAC/C,eAAO,MAAM,OAAO,QAAQ,CAAC;AAC7B,eAAO,MAAM,YAAY,OAAO,CAAC"}
1
+ {"version":3,"file":"mode.d.ts","sourceRoot":"","sources":["../../src/config/mode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,OAAO,SAAwC,CAAC;AAC7D,eAAO,MAAM,IAAI,EAAE,YAAY,GAAG,OAA0C,CAAC;AAC7E,eAAO,MAAM,YAAY,SAAW,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * SlugBase runtime mode is now self-hosted only.
2
+ * SlugBase runtime mode: self-hosted (default) or cloud when SLUGBASE_MODE=cloud.
3
3
  */
4
- export const mode = 'selfhosted';
5
- export const isCloud = false;
6
- export const isSelfhosted = true;
4
+ export const isCloud = process.env.SLUGBASE_MODE === 'cloud';
5
+ export const mode = isCloud ? 'cloud' : 'selfhosted';
6
+ export const isSelfhosted = !isCloud;
7
7
  //# sourceMappingURL=mode.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mode.js","sourceRoot":"","sources":["../../src/config/mode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,IAAI,GAAiB,YAAY,CAAC;AAC/C,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC;AAC7B,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"mode.js","sourceRoot":"","sources":["../../src/config/mode.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,KAAK,OAAO,CAAC;AAC7D,MAAM,CAAC,MAAM,IAAI,GAA2B,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC;AAC7E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"AAgBA,QAAA,MAAM,MAAM,4CAAW,CAAC;AAgzBxB,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"AAiBA,QAAA,MAAM,MAAM,4CAAW,CAAC;AA80BxB,eAAe,MAAM,CAAC"}
@@ -12,6 +12,7 @@ import { getAuthCookieOptions, getClearAuthCookieOptions } from '../config/cooki
12
12
  import { sendSignupVerificationEmail } from '../utils/email.js';
13
13
  import crypto from 'crypto';
14
14
  import { getDefaultTenantId } from '../utils/tenant.js';
15
+ import { isCloud } from '../config/mode.js';
15
16
  const router = Router();
16
17
  const DB_TYPE = process.env.DB_TYPE || 'sqlite';
17
18
  function hashToken(token) {
@@ -140,6 +141,13 @@ router.post('/login', authRateLimiter, async (req, res, next) => {
140
141
  }
141
142
  const emailVerified = user.email_verified;
142
143
  const isVerified = emailVerified !== false && emailVerified !== 0;
144
+ // In cloud, block login until email is verified
145
+ if (isCloud && !isVerified) {
146
+ return res.status(403).json({
147
+ code: 'EMAIL_NOT_VERIFIED',
148
+ error: 'Please verify your email before logging in. Check your inbox for the verification link.',
149
+ });
150
+ }
143
151
  const userPayload = {
144
152
  id: user.id,
145
153
  email: user.email,
@@ -383,10 +391,11 @@ router.post('/resend-signup-verification', authRateLimiter, async (req, res) =>
383
391
  });
384
392
  /**
385
393
  * POST /auth/request-signup-resend — CLOUD only. Request resend of verification email by email (no token).
394
+ * Optional newEmail: if provided and different, update user email and send verification to new address.
386
395
  */
387
396
  router.post('/request-signup-resend', authRateLimiter, async (req, res) => {
388
397
  try {
389
- const { email } = req.body;
398
+ const { email, newEmail } = req.body;
390
399
  if (!email || typeof email !== 'string') {
391
400
  return res.status(400).json({ error: 'Email is required' });
392
401
  }
@@ -396,8 +405,26 @@ router.post('/request-signup-resend', authRateLimiter, async (req, res) => {
396
405
  }
397
406
  const normalizedEmail = normalizeEmail(email.trim());
398
407
  const user = await queryOne('SELECT id FROM users WHERE email = ? AND (email_verified = FALSE OR email_verified = 0)', [normalizedEmail]);
408
+ let targetEmail = normalizedEmail;
409
+ let emailChanged = false;
399
410
  if (user) {
400
411
  const u = user;
412
+ if (newEmail && typeof newEmail === 'string' && newEmail.trim()) {
413
+ const newEmailValidation = validateEmail(newEmail.trim());
414
+ if (!newEmailValidation.valid) {
415
+ return res.status(400).json({ error: newEmailValidation.error });
416
+ }
417
+ const normalizedNew = normalizeEmail(newEmail.trim());
418
+ if (normalizedNew !== normalizedEmail) {
419
+ const existing = await queryOne('SELECT id FROM users WHERE email = ?', [normalizedNew]);
420
+ if (existing) {
421
+ return res.status(400).json({ error: 'Email already registered' });
422
+ }
423
+ await execute('UPDATE users SET email = ? WHERE id = ?', [normalizedNew, u.id]);
424
+ targetEmail = normalizedNew;
425
+ emailChanged = true;
426
+ }
427
+ }
401
428
  await execute('DELETE FROM signup_verification_tokens WHERE user_id = ?', [u.id]);
402
429
  const tokenId = uuidv4();
403
430
  const newToken = crypto.randomBytes(32).toString('hex');
@@ -415,9 +442,12 @@ router.post('/request-signup-resend', authRateLimiter, async (req, res) => {
415
442
  }
416
443
  const frontendUrl = (process.env.FRONTEND_URL || 'http://localhost:3000').replace(/\/$/, '');
417
444
  const verificationUrl = `${frontendUrl}/verify-email?token=${encodeURIComponent(newToken)}`;
418
- await sendSignupVerificationEmail(normalizedEmail, verificationUrl);
445
+ await sendSignupVerificationEmail(targetEmail, verificationUrl);
419
446
  }
420
- return res.json({ message: 'If an unverified account exists with that email, a new verification link has been sent.' });
447
+ return res.json({
448
+ message: 'If an unverified account exists with that email, a new verification link has been sent.',
449
+ emailChanged,
450
+ });
421
451
  }
422
452
  catch (error) {
423
453
  console.error('Request signup resend error:', error?.message ?? error);
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/routes/auth.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ const AdminSettingsPage = lazy(() => import('./pages/admin/AdminSettingsPage'));
24
24
  const AdminAIPage = lazy(() => import('./pages/admin/AdminAIPage'));
25
25
  const PasswordReset = lazy(() => import('./pages/PasswordReset'));
26
26
  const VerifyEmail = lazy(() => import('./pages/VerifyEmail'));
27
+ const VerifyEmailRequired = lazy(() => import('./pages/VerifyEmailRequired'));
27
28
  const SearchEngineGuide = lazy(() => import('./pages/SearchEngineGuide'));
28
29
  const GoPreferences = lazy(() => import('./pages/GoPreferences'));
29
30
 
@@ -108,6 +109,7 @@ function AppRoutes() {
108
109
  <Route path="/reset-password" element={<PasswordReset />} />
109
110
  <Route path="/password-reset" element={<PasswordReset />} />
110
111
  <Route path="/verify-email" element={<VerifyEmail />} />
112
+ <Route path="/verify-email-required" element={<VerifyEmailRequired />} />
111
113
  <Route path="/go/:slug" element={<ForwardingHandler />} />
112
114
  <Route path="/" element={<PrivateRoute><Layout /></PrivateRoute>}>
113
115
  <Route index element={<Dashboard />} />
@@ -243,7 +245,7 @@ export interface AppProps {
243
245
  }
244
246
 
245
247
  function App({ basePath, apiBaseUrl, routerBasename, skipSetupFlow, hideAdminOidcAndSmtp, adminAiOnlyToggle }: AppProps = {}) {
246
- const appRootPath = basePath === '/' || !basePath ? '/' : basePath;
248
+ const appRootPath = routerBasename !== undefined ? '/' : (basePath === '/' || !basePath ? '/' : basePath);
247
249
  const pathPrefixForLinks = routerBasename !== undefined ? '' : (basePath ?? '');
248
250
  const content = (
249
251
  <AuthProvider>
@@ -1,4 +1,5 @@
1
1
  import { X } from 'lucide-react';
2
+ import { Badge } from './ui/badge';
2
3
 
3
4
  export interface FilterChipItem {
4
5
  key: string;
@@ -20,9 +21,10 @@ export function FilterChips({ chips, onRemove, onClearAll, clearAllLabel, clearA
20
21
  return (
21
22
  <div className="flex flex-wrap items-center gap-2">
22
23
  {chips.map(({ key, label, ariaLabel }) => (
23
- <span
24
+ <Badge
24
25
  key={key}
25
- className="inline-flex items-center gap-1.5 pl-2.5 pr-1.5 py-1 rounded-md bg-muted text-muted-foreground text-sm border border-border"
26
+ variant="secondary"
27
+ className="inline-flex items-center gap-1.5 pl-2.5 pr-1 py-1 text-sm font-normal"
26
28
  >
27
29
  <span>{label}</span>
28
30
  <button
@@ -39,7 +41,7 @@ export function FilterChips({ chips, onRemove, onClearAll, clearAllLabel, clearA
39
41
  >
40
42
  <X className="h-3.5 w-3.5" />
41
43
  </button>
42
- </span>
44
+ </Badge>
43
45
  ))}
44
46
  <button
45
47
  type="button"
@@ -3,6 +3,18 @@ import { LucideIcon } from 'lucide-react';
3
3
  import { Card, CardContent } from './ui/card';
4
4
  import { cn } from '@/lib/utils';
5
5
 
6
+ /** Optional usage display for plan/limit (e.g. slugbase-cloud). Only rendered when used + limit are both set. */
7
+ export interface StatCardUsageProps {
8
+ used: number;
9
+ limit: number;
10
+ /** e.g. "Bookmarks used" */
11
+ labelOverride?: string;
12
+ showProgress?: boolean;
13
+ progressVariant?: 'normal' | 'warning' | 'danger';
14
+ /** Upgrade CTA; only pass in cloud when plan limits apply */
15
+ cta?: { label: string; onClick: () => void };
16
+ }
17
+
6
18
  interface StatCardProps {
7
19
  label: string;
8
20
  value: string | number;
@@ -15,21 +27,86 @@ interface StatCardProps {
15
27
  /** Tailwind classes for the icon color (e.g. text-blue-600 dark:text-blue-400) */
16
28
  iconColorClassName?: string;
17
29
  className?: string;
30
+ /** Optional secondary line below value (e.g. "+12 this week") */
31
+ secondaryLine?: string;
32
+ /** Optional usage/limit display for cloud plan; only shown when both used and limit are provided */
33
+ used?: number;
34
+ limit?: number;
35
+ labelOverride?: string;
36
+ showProgress?: boolean;
37
+ progressVariant?: 'normal' | 'warning' | 'danger';
38
+ cta?: { label: string; onClick: () => void };
18
39
  }
19
40
 
20
- export function StatCard({ label, value, icon: Icon, href, dense, iconContainerClassName, iconColorClassName, className }: StatCardProps) {
41
+ export function StatCard({
42
+ label,
43
+ value,
44
+ icon: Icon,
45
+ href,
46
+ dense,
47
+ iconContainerClassName,
48
+ iconColorClassName,
49
+ className,
50
+ secondaryLine,
51
+ used: usedProp,
52
+ limit: limitProp,
53
+ labelOverride,
54
+ showProgress = true,
55
+ progressVariant = 'normal',
56
+ cta,
57
+ }: StatCardProps) {
58
+ const hasUsage = usedProp != null && limitProp != null;
59
+ const used = hasUsage ? usedProp : 0;
60
+ const limit = hasUsage ? limitProp : 0;
61
+ const showProgressBar = hasUsage && showProgress;
62
+ const progressPercent = limit > 0 ? Math.min(100, (used / limit) * 100) : 0;
63
+
21
64
  const content = (
22
65
  <>
23
66
  <div className="flex items-center justify-between">
24
- <div>
25
- <p className={cn('font-medium text-muted-foreground', dense ? 'text-xs' : 'text-sm')}>
67
+ <div className="min-w-0 flex-1">
68
+ <p className={cn('text-muted-foreground', dense ? 'text-xs' : 'text-sm')}>
26
69
  {label}
27
70
  </p>
28
- <p className={cn('font-semibold mt-2', dense ? 'text-xl' : 'text-2xl')}>
71
+ <p className={cn('font-semibold mt-1 text-foreground', dense ? 'text-xl' : 'text-2xl')}>
29
72
  {value}
30
73
  </p>
74
+ {secondaryLine && (
75
+ <p className="mt-0.5 text-xs text-muted-foreground">{secondaryLine}</p>
76
+ )}
77
+ {hasUsage && (
78
+ <p className="mt-1 text-xs text-muted-foreground">
79
+ {labelOverride ?? label} {used} / {limit}
80
+ </p>
81
+ )}
82
+ {showProgressBar && (
83
+ <div className="mt-2 w-full overflow-hidden rounded-full bg-primary/20">
84
+ <div
85
+ className={cn(
86
+ 'h-2 transition-all',
87
+ progressVariant === 'warning' && 'bg-amber-500',
88
+ progressVariant === 'danger' && 'bg-destructive',
89
+ (progressVariant === 'normal' || !progressVariant) && 'bg-primary'
90
+ )}
91
+ style={{ width: `${progressPercent}%` }}
92
+ />
93
+ </div>
94
+ )}
95
+ {cta && (
96
+ <button
97
+ type="button"
98
+ onClick={(e) => {
99
+ e.preventDefault();
100
+ e.stopPropagation();
101
+ cta.onClick();
102
+ }}
103
+ className="mt-2 text-xs font-medium text-primary hover:underline focus:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 rounded"
104
+ >
105
+ {cta.label}
106
+ </button>
107
+ )}
31
108
  </div>
32
- <div className={cn('rounded-lg', iconContainerClassName ?? 'bg-muted', dense ? 'p-2' : 'p-3')}>
109
+ <div className={cn('shrink-0 rounded-lg', iconContainerClassName ?? 'bg-muted', dense ? 'p-2' : 'p-3')}>
33
110
  <Icon className={cn(iconColorClassName ?? 'text-muted-foreground', dense ? 'h-5 w-5' : 'h-6 w-6')} />
34
111
  </div>
35
112
  </div>