@prenta/admin 1.8.0 → 1.9.0

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 (85) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/design-system/tokens.css +38 -6
  3. package/design-system/tokens.json +36 -6
  4. package/design-system/tokens.scss +6 -6
  5. package/dist/__tests__/components/author-avatar.test.js +18 -1
  6. package/dist/__tests__/components/author-avatar.test.js.map +1 -1
  7. package/dist/__tests__/lib/utils.test.js +2 -1
  8. package/dist/__tests__/lib/utils.test.js.map +1 -1
  9. package/dist/__tests__/styles/tokens-drift.test.js +32 -0
  10. package/dist/__tests__/styles/tokens-drift.test.js.map +1 -1
  11. package/dist/__tests__/views/security-settings.render.test.js +1 -0
  12. package/dist/__tests__/views/security-settings.render.test.js.map +1 -1
  13. package/dist/__tests__/views/trash.render.test.js +33 -0
  14. package/dist/__tests__/views/trash.render.test.js.map +1 -1
  15. package/dist/__tests__/views/user-detail-drawer.render.test.js +1 -0
  16. package/dist/__tests__/views/user-detail-drawer.render.test.js.map +1 -1
  17. package/dist/__tests__/views/users-selected-deeplink.render.test.js +1 -0
  18. package/dist/__tests__/views/users-selected-deeplink.render.test.js.map +1 -1
  19. package/dist/components/LivePreview.d.ts.map +1 -1
  20. package/dist/components/LivePreview.js +2 -1
  21. package/dist/components/LivePreview.js.map +1 -1
  22. package/dist/components/PresenceIndicator.d.ts.map +1 -1
  23. package/dist/components/PresenceIndicator.js +3 -1
  24. package/dist/components/PresenceIndicator.js.map +1 -1
  25. package/dist/components/ui/AuthorAvatar.d.ts +12 -0
  26. package/dist/components/ui/AuthorAvatar.d.ts.map +1 -1
  27. package/dist/components/ui/AuthorAvatar.js +8 -8
  28. package/dist/components/ui/AuthorAvatar.js.map +1 -1
  29. package/dist/components/ui/DataTable.d.ts.map +1 -1
  30. package/dist/components/ui/DataTable.js +7 -1
  31. package/dist/components/ui/DataTable.js.map +1 -1
  32. package/dist/layout/Sidebar.js +1 -1
  33. package/dist/lib/sentry.d.ts.map +1 -1
  34. package/dist/lib/sentry.js +11 -0
  35. package/dist/lib/sentry.js.map +1 -1
  36. package/dist/prenta-admin.css +1 -1
  37. package/dist/views/CollectionList.d.ts.map +1 -1
  38. package/dist/views/CollectionList.js +6 -2
  39. package/dist/views/CollectionList.js.map +1 -1
  40. package/dist/views/Dashboard.d.ts.map +1 -1
  41. package/dist/views/Dashboard.js +4 -5
  42. package/dist/views/Dashboard.js.map +1 -1
  43. package/dist/views/MediaBrowser.d.ts.map +1 -1
  44. package/dist/views/MediaBrowser.js +6 -5
  45. package/dist/views/MediaBrowser.js.map +1 -1
  46. package/dist/views/Posts/PostsListView.d.ts.map +1 -1
  47. package/dist/views/Posts/PostsListView.js +6 -5
  48. package/dist/views/Posts/PostsListView.js.map +1 -1
  49. package/dist/views/Redirects.d.ts.map +1 -1
  50. package/dist/views/Redirects.js +2 -1
  51. package/dist/views/Redirects.js.map +1 -1
  52. package/dist/views/settings/SessionPolicyCard.d.ts.map +1 -1
  53. package/dist/views/settings/SessionPolicyCard.js +3 -1
  54. package/dist/views/settings/SessionPolicyCard.js.map +1 -1
  55. package/dist/views/settings/useSecuritySettings.d.ts +2 -0
  56. package/dist/views/settings/useSecuritySettings.d.ts.map +1 -1
  57. package/dist/views/settings/useSecuritySettings.js +8 -0
  58. package/dist/views/settings/useSecuritySettings.js.map +1 -1
  59. package/dist/views/users/UserDetailDrawer.d.ts.map +1 -1
  60. package/dist/views/users/UserDetailDrawer.js +5 -5
  61. package/dist/views/users/UserDetailDrawer.js.map +1 -1
  62. package/package.json +4 -3
  63. package/src/__tests__/components/author-avatar.test.tsx +22 -1
  64. package/src/__tests__/lib/utils.test.ts +2 -1
  65. package/src/__tests__/styles/tokens-drift.test.ts +46 -0
  66. package/src/__tests__/views/security-settings.render.test.tsx +1 -0
  67. package/src/__tests__/views/trash.render.test.tsx +38 -0
  68. package/src/__tests__/views/user-detail-drawer.render.test.tsx +1 -0
  69. package/src/__tests__/views/users-selected-deeplink.render.test.tsx +1 -0
  70. package/src/components/LivePreview.tsx +2 -1
  71. package/src/components/PresenceIndicator.tsx +3 -1
  72. package/src/components/ui/AuthorAvatar.tsx +8 -8
  73. package/src/components/ui/DataTable.tsx +13 -1
  74. package/src/layout/Sidebar.tsx +1 -1
  75. package/src/lib/sentry.ts +11 -0
  76. package/src/styles/prenta-tokens.css +38 -6
  77. package/src/styles/theme.css +4 -2
  78. package/src/views/CollectionList.tsx +8 -4
  79. package/src/views/Dashboard.tsx +5 -11
  80. package/src/views/MediaBrowser.tsx +35 -12
  81. package/src/views/Posts/PostsListView.tsx +13 -11
  82. package/src/views/Redirects.tsx +8 -5
  83. package/src/views/settings/SessionPolicyCard.tsx +40 -0
  84. package/src/views/settings/useSecuritySettings.ts +10 -0
  85. package/src/views/users/UserDetailDrawer.tsx +31 -5
@@ -1 +1 @@
1
- {"version":3,"file":"PostsListView.d.ts","sourceRoot":"","sources":["../../../src/views/Posts/PostsListView.tsx"],"names":[],"mappings":"AAuCA;;;;;;;;;;;;GAYG;AAEH,UAAU,kBAAkB;IAC1B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAkBD,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,EAAE,kBAAkB,2CAkb/D;AAofD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAU/E"}
1
+ {"version":3,"file":"PostsListView.d.ts","sourceRoot":"","sources":["../../../src/views/Posts/PostsListView.tsx"],"names":[],"mappings":"AAuCA;;;;;;;;;;;;GAYG;AAEH,UAAU,kBAAkB;IAC1B,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAkBD,wBAAgB,aAAa,CAAC,EAAE,UAAU,EAAE,EAAE,kBAAkB,2CAsb/D;AAkfD;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAU/E"}
@@ -115,6 +115,8 @@ export function PostsListView({ onNavigate }) {
115
115
  setDir(field === 'date' || field === 'seo' ? 'desc' : 'asc');
116
116
  }
117
117
  }, [sortBy, dir]);
118
+ // `aria-sort` belongs on the column header cell (`<th>`), not the button.
119
+ const ariaSortFor = (field) => sortBy === field ? (dir === 'asc' ? 'ascending' : 'descending') : 'none';
118
120
  const clearFilters = () => {
119
121
  setSearch('');
120
122
  setStatus('all');
@@ -226,7 +228,7 @@ export function PostsListView({ onNavigate }) {
226
228
  }, author: author, onAuthorChange: (a) => {
227
229
  setAuthor(a);
228
230
  setPage(1);
229
- }, authors: authors, resultCount: total, onManageTypes: () => onNavigate('/posts/types') }), selected.size > 0 && (_jsx(BulkActionBar, { count: selected.size, onClear: () => setSelected(new Set()), onPublish: () => runBulkUpdate('PUBLISHED'), onDraft: () => runBulkUpdate('DRAFT'), onDelete: () => setPendingBulk('delete') })), _jsxs("div", { className: "border-border bg-card flex min-h-0 flex-1 flex-col overflow-hidden rounded-xl border shadow-sm", children: [_jsx("div", { className: "min-h-0 flex-1 overflow-auto", children: _jsxs("table", { className: "w-full table-fixed", style: { minWidth: TABLE_MIN_WIDTH }, role: "table", "aria-label": "Posts", children: [_jsxs("colgroup", { children: [_jsx("col", { style: { width: '40px' } }), _jsx("col", {}), _jsx("col", { style: { width: '140px' } }), _jsx("col", { style: { width: '180px' } }), _jsx("col", { style: { width: '130px' } }), _jsx("col", { style: { width: '120px' } }), _jsx("col", { style: { width: '90px' } }), _jsx("col", { style: { width: '110px' } })] }), _jsx("thead", { className: "border-border bg-muted/40 border-b", children: _jsxs("tr", { className: "text-muted-foreground text-xs", children: [_jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx("input", { type: "checkbox", "aria-label": "Select all posts on this page", checked: allOnPageSelected, onChange: (e) => toggleAllOnPage(e.target.checked), className: "border-border accent-primary rounded" }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Title", field: "title", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Type", field: "type", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Author", field: "author", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Status", field: "status", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Date", field: "date", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "SEO", field: "seo", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-right", children: _jsx("span", { className: "sr-only", children: "Actions" }) })] }) }), _jsxs("tbody", { children: [loading && posts.length === 0 && _jsx(LoadingRows, {}), !loading && error && (_jsx("tr", { children: _jsxs("td", { colSpan: 8, className: "px-3 py-12 text-center", children: [_jsx("div", { className: "text-foreground mb-2 text-sm font-medium", children: error }), _jsx("button", { onClick: () => setRefreshToken((t) => t + 1), className: "text-primary text-sm hover:underline", children: "Try again" })] }) })), !loading && !error && posts.length === 0 && (_jsx(EmptyRow, { filtersActive: filtersAreActive, onClear: clearFilters, onNewPost: () => onNavigate('/posts/new') })), !loading &&
231
+ }, authors: authors, resultCount: total, onManageTypes: () => onNavigate('/posts/types') }), selected.size > 0 && (_jsx(BulkActionBar, { count: selected.size, onClear: () => setSelected(new Set()), onPublish: () => runBulkUpdate('PUBLISHED'), onDraft: () => runBulkUpdate('DRAFT'), onDelete: () => setPendingBulk('delete') })), _jsxs("div", { className: "border-border bg-card flex min-h-0 flex-1 flex-col overflow-hidden rounded-xl border shadow-sm", children: [_jsx("div", { className: "min-h-0 flex-1 overflow-auto", children: _jsxs("table", { className: "w-full table-fixed", style: { minWidth: TABLE_MIN_WIDTH }, role: "table", "aria-label": "Posts", children: [_jsxs("colgroup", { children: [_jsx("col", { style: { width: '40px' } }), _jsx("col", {}), _jsx("col", { style: { width: '140px' } }), _jsx("col", { style: { width: '180px' } }), _jsx("col", { style: { width: '130px' } }), _jsx("col", { style: { width: '120px' } }), _jsx("col", { style: { width: '90px' } }), _jsx("col", { style: { width: '110px' } })] }), _jsx("thead", { className: "border-border bg-muted/40 border-b", children: _jsxs("tr", { className: "text-muted-foreground text-xs", children: [_jsx("th", { scope: "col", className: "px-3 py-2.5 text-left", children: _jsx("input", { type: "checkbox", "aria-label": "Select all posts on this page", checked: allOnPageSelected, onChange: (e) => toggleAllOnPage(e.target.checked), className: "border-border accent-primary rounded" }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('title'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Title", field: "title", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('type'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Type", field: "type", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('author'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Author", field: "author", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('status'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Status", field: "status", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('date'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "Date", field: "date", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", "aria-sort": ariaSortFor('seo'), className: "px-3 py-2.5 text-left", children: _jsx(SortHeader, { label: "SEO", field: "seo", current: sortBy, dir: dir, onSort: handleSort }) }), _jsx("th", { scope: "col", className: "px-3 py-2.5 text-right", children: _jsx("span", { className: "sr-only", children: "Actions" }) })] }) }), _jsxs("tbody", { children: [loading && posts.length === 0 && _jsx(LoadingRows, {}), !loading && error && (_jsx("tr", { children: _jsxs("td", { colSpan: 8, className: "px-3 py-12 text-center", children: [_jsx("div", { className: "text-foreground mb-2 text-sm font-medium", children: error }), _jsx("button", { onClick: () => setRefreshToken((t) => t + 1), className: "text-primary text-sm hover:underline", children: "Try again" })] }) })), !loading && !error && posts.length === 0 && (_jsx(EmptyRow, { filtersActive: filtersAreActive, onClear: clearFilters, onNewPost: () => onNavigate('/posts/new') })), !loading &&
230
232
  !error &&
231
233
  posts.map((p) => (_jsx(PostRow, { post: p, selected: selected.has(p.id), onSelect: () => toggleOne(p.id), onOpen: () => onNavigate(`/posts/${p.postTypeId}/${p.id}/edit`), onDuplicate: () => void runDuplicate(p), onDelete: () => setRowDelete(p) }, p.id)))] })] }) }), _jsx("div", { className: "shrink-0", children: _jsx(PaginationFooter, { page: page, totalPages: totalPages, total: total, pageSize: PAGE_SIZE, onPage: setPage }) })] }), _jsx(ConfirmDialog, { open: rowDelete !== null, title: `Delete "${rowDelete?.title ?? ''}"?`, description: "The post moves to trash and can be restored for 30 days.", confirmLabel: "Delete", destructive: true, onClose: () => setRowDelete(null), onConfirm: () => {
232
234
  if (rowDelete)
@@ -239,8 +241,7 @@ export function PostsListView({ onNavigate }) {
239
241
  // ─── Sub-components ──────────────────────────────────────────────────
240
242
  function SortHeader({ label, field, current, dir, onSort, }) {
241
243
  const active = current === field;
242
- const ariaSort = active ? (dir === 'asc' ? 'ascending' : 'descending') : 'none';
243
- return (_jsxs("button", { type: "button", onClick: () => onSort(field), "aria-sort": ariaSort, className: `hover:text-foreground inline-flex items-center gap-1 text-xs font-medium tracking-wider uppercase transition-colors ${active ? 'text-foreground' : 'text-muted-foreground'}`, children: [_jsx("span", { children: label }), active &&
244
+ return (_jsxs("button", { type: "button", onClick: () => onSort(field), className: `hover:text-foreground inline-flex items-center gap-1 text-xs font-medium tracking-wider uppercase transition-colors ${active ? 'text-foreground' : 'text-muted-foreground'}`, children: [_jsx("span", { children: label }), active &&
244
245
  (dir === 'asc' ? (_jsx(ChevronUp, { className: "h-3 w-3", "aria-hidden": true })) : (_jsx(ChevronDown, { className: "h-3 w-3", "aria-hidden": true })))] }));
245
246
  }
246
247
  function TypeTabs({ types, totalAll, active, onChange, }) {
@@ -248,8 +249,8 @@ function TypeTabs({ types, totalAll, active, onChange, }) {
248
249
  }
249
250
  function TabPill({ label, count, active, onClick, }) {
250
251
  return (_jsxs("button", { type: "button", role: "tab", "aria-selected": active, onClick: onClick, className: `relative inline-flex items-center gap-2 rounded-md px-3 py-2 text-sm font-medium transition-colors ${active
251
- ? 'bg-primary/10 text-primary'
252
- : 'text-muted-foreground hover:text-foreground hover:bg-accent'}`, children: [_jsx("span", { children: label }), _jsx("span", { className: `rounded-full px-1.5 text-xs tabular-nums ${active ? 'bg-primary/15 text-primary' : 'bg-muted text-muted-foreground'}`, children: count })] }));
252
+ ? 'bg-secondary text-primary'
253
+ : 'text-muted-foreground hover:bg-accent hover:text-foreground'}`, children: [_jsx("span", { children: label }), _jsx("span", { className: `rounded-full px-1.5 text-xs tabular-nums ${active ? 'bg-card text-primary' : 'bg-muted text-muted-foreground'}`, children: count })] }));
253
254
  }
254
255
  function ControlsRow({ search, onSearchChange, status, onStatusChange, author, onAuthorChange, authors, resultCount, onManageTypes, }) {
255
256
  return (_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsxs("div", { className: "relative max-w-sm flex-1", children: [_jsx(Search, { className: "text-muted-foreground absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2", "aria-hidden": true }), _jsx("input", { type: "search", value: search, onChange: (e) => onSearchChange(e.target.value), "aria-label": "Search posts", placeholder: "Search posts\u2026", className: "border-border bg-card text-foreground placeholder:text-muted-foreground focus:border-primary focus:ring-primary/30 w-full rounded-lg border py-2 pr-3 pl-9 text-sm shadow-sm focus:ring-2 focus:outline-none" })] }), _jsx(FilterSelect, { label: "Status", value: status, onChange: (v) => onStatusChange(v), options: [
@@ -1 +1 @@
1
- {"version":3,"file":"PostsListView.js","sourceRoot":"","sources":["../../../src/views/Posts/PostsListView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostsListView.js","sourceRoot":"","sources":["../../../src/views/Posts/PostsListView.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Redirects.d.ts","sourceRoot":"","sources":["../../src/views/Redirects.tsx"],"names":[],"mappings":"AAwBA,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,cAAc,2CAqUvD"}
1
+ {"version":3,"file":"Redirects.d.ts","sourceRoot":"","sources":["../../src/views/Redirects.tsx"],"names":[],"mappings":"AAwBA,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC;AAED;;;GAGG;AACH,wBAAgB,SAAS,CAAC,EAAE,UAAU,EAAE,EAAE,cAAc,2CAwUvD"}
@@ -80,6 +80,7 @@ export function Redirects({ onNavigate }) {
80
80
  refetch();
81
81
  }
82
82
  };
83
+ const ariaSortFor = (key) => sortConfig?.key === key ? (sortConfig.direction === 'asc' ? 'ascending' : 'descending') : 'none';
83
84
  function SortHeader({ label, sortKey }) {
84
85
  const active = sortConfig?.key === sortKey;
85
86
  return (_jsxs("button", { type: "button", onClick: () => setSortConfig(toggleSort(sortConfig, sortKey)), className: "text-foreground hover:text-foreground flex items-center gap-1 text-xs font-medium transition-colors", children: [label, active ? (sortConfig.direction === 'asc' ? (_jsx(ArrowUp, { className: "h-3 w-3" })) : (_jsx(ArrowDown, { className: "h-3 w-3" }))) : (_jsx(ArrowUpDown, { className: "text-muted-foreground h-3 w-3" }))] }));
@@ -87,7 +88,7 @@ export function Redirects({ onNavigate }) {
87
88
  if (loading) {
88
89
  return (_jsx("div", { className: "flex h-64 items-center justify-center p-3 pr-6 sm:p-4 sm:pr-8", children: _jsx(Loader2, { className: "text-primary h-6 w-6 animate-spin" }) }));
89
90
  }
90
- return (_jsxs("div", { className: "p-3 pr-6 sm:p-4 sm:pr-8", children: [error && (_jsxs("div", { className: "border-destructive/30 bg-destructive/10 mb-4 flex items-center gap-3 rounded-lg border p-3", children: [_jsx(AlertTriangle, { className: "text-destructive h-5 w-5 shrink-0" }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: error }), _jsx("button", { onClick: refetch, className: "border-destructive/40 text-destructive hover:bg-destructive/15 rounded-lg border px-3 py-1 text-sm transition-colors", children: "Retry" })] })), _jsxs("div", { className: "mb-4 flex items-center justify-between", children: [_jsxs("div", { children: [_jsx("h1", { className: "text-foreground mb-1", children: "Redirects" }), _jsxs("p", { className: "text-muted-foreground text-sm", children: [filteredAndSorted.length, " total redirects"] })] }), _jsxs("button", { type: "button", onClick: () => setShowAddDialog(true), className: "bg-primary text-primary-foreground hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm transition-colors", children: [_jsx(Plus, { className: "h-4 w-4" }), "Add Redirect"] })] }), _jsx("div", { className: "border-border bg-card mb-4 rounded-lg border", children: _jsxs("div", { className: "flex flex-col gap-3 p-3 sm:flex-row", children: [_jsxs("div", { className: "relative flex-1", children: [_jsx(Search, { className: "text-muted-foreground absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2" }), _jsx("input", { type: "text", placeholder: "Search by source or destination URL...", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), className: "border-input focus:ring-ring w-full rounded-lg border py-2 pr-3 pl-9 text-sm focus:ring-2 focus:outline-none" })] }), _jsxs("select", { value: filterType, onChange: (e) => setFilterType(e.target.value), className: "border-input focus:ring-ring rounded-lg border px-3 py-2 text-sm focus:ring-2 focus:outline-none", children: [_jsx("option", { value: "all", children: "All Types" }), _jsx("option", { value: "301", children: "301 (Permanent)" }), _jsx("option", { value: "302", children: "302 (Temporary)" })] })] }) }), filteredAndSorted.length === 0 && !loading ? (_jsxs("div", { className: "flex flex-col items-center justify-center py-16 text-center", children: [_jsx("div", { className: "bg-muted mb-4 flex h-12 w-12 items-center justify-center rounded-full", children: _jsx(ArrowRightLeft, { className: "text-muted-foreground h-6 w-6" }) }), _jsx("h3", { className: "text-foreground mb-1 text-sm font-medium", children: "No redirects yet" }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Add your first redirect to get started." })] })) : (_jsx("div", { className: "border-border bg-card rounded-lg border", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "w-full", children: [_jsx("thead", { className: "border-border bg-muted border-b", children: _jsxs("tr", { children: [_jsx("th", { className: "px-4 py-2 text-left", children: _jsx(SortHeader, { label: "Source URL", sortKey: "from" }) }), _jsx("th", { className: "px-4 py-2 text-left", children: _jsx(SortHeader, { label: "Destination URL", sortKey: "to" }) }), _jsx("th", { className: "px-4 py-2 text-left", children: _jsx(SortHeader, { label: "Type", sortKey: "type" }) }), _jsx("th", { className: "px-4 py-2 text-left", children: _jsx(SortHeader, { label: "Hits", sortKey: "hits" }) }), _jsx("th", { className: "px-4 py-2 text-left", children: _jsx(SortHeader, { label: "Status", sortKey: "active" }) }), _jsx("th", { className: "text-foreground px-4 py-2 text-left text-xs font-medium", children: "Actions" })] }) }), _jsx("tbody", { className: "divide-border divide-y", children: filteredAndSorted.map((redirect) => (_jsxs("tr", { className: "hover:bg-muted transition-colors", children: [_jsx("td", { className: "px-4 py-3", children: _jsx("code", { className: "bg-muted text-foreground rounded px-2 py-1 text-xs", children: redirect.from }) }), _jsx("td", { className: "px-4 py-3", children: _jsx("code", { className: "bg-muted text-foreground rounded px-2 py-1 text-xs", children: redirect.to }) }), _jsx("td", { className: "px-4 py-3", children: _jsx("span", { className: `inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${redirect.type === '301'
91
+ return (_jsxs("div", { className: "p-3 pr-6 sm:p-4 sm:pr-8", children: [error && (_jsxs("div", { className: "border-destructive/30 bg-destructive/10 mb-4 flex items-center gap-3 rounded-lg border p-3", children: [_jsx(AlertTriangle, { className: "text-destructive h-5 w-5 shrink-0" }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: error }), _jsx("button", { onClick: refetch, className: "border-destructive/40 text-destructive hover:bg-destructive/15 rounded-lg border px-3 py-1 text-sm transition-colors", children: "Retry" })] })), _jsxs("div", { className: "mb-4 flex items-center justify-between", children: [_jsxs("div", { children: [_jsx("h1", { className: "text-foreground mb-1", children: "Redirects" }), _jsxs("p", { className: "text-muted-foreground text-sm", children: [filteredAndSorted.length, " total redirects"] })] }), _jsxs("button", { type: "button", onClick: () => setShowAddDialog(true), className: "bg-primary text-primary-foreground hover:bg-primary/90 flex items-center gap-2 rounded-lg px-4 py-2 text-sm transition-colors", children: [_jsx(Plus, { className: "h-4 w-4" }), "Add Redirect"] })] }), _jsx("div", { className: "border-border bg-card mb-4 rounded-lg border", children: _jsxs("div", { className: "flex flex-col gap-3 p-3 sm:flex-row", children: [_jsxs("div", { className: "relative flex-1", children: [_jsx(Search, { className: "text-muted-foreground absolute top-1/2 left-3 h-4 w-4 -translate-y-1/2" }), _jsx("input", { type: "text", placeholder: "Search by source or destination URL...", value: searchQuery, onChange: (e) => setSearchQuery(e.target.value), className: "border-input focus:ring-ring w-full rounded-lg border py-2 pr-3 pl-9 text-sm focus:ring-2 focus:outline-none" })] }), _jsxs("select", { value: filterType, onChange: (e) => setFilterType(e.target.value), className: "border-input focus:ring-ring rounded-lg border px-3 py-2 text-sm focus:ring-2 focus:outline-none", children: [_jsx("option", { value: "all", children: "All Types" }), _jsx("option", { value: "301", children: "301 (Permanent)" }), _jsx("option", { value: "302", children: "302 (Temporary)" })] })] }) }), filteredAndSorted.length === 0 && !loading ? (_jsxs("div", { className: "flex flex-col items-center justify-center py-16 text-center", children: [_jsx("div", { className: "bg-muted mb-4 flex h-12 w-12 items-center justify-center rounded-full", children: _jsx(ArrowRightLeft, { className: "text-muted-foreground h-6 w-6" }) }), _jsx("h3", { className: "text-foreground mb-1 text-sm font-medium", children: "No redirects yet" }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Add your first redirect to get started." })] })) : (_jsx("div", { className: "border-border bg-card rounded-lg border", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "w-full", children: [_jsx("thead", { className: "border-border bg-muted border-b", children: _jsxs("tr", { children: [_jsx("th", { className: "px-4 py-2 text-left", "aria-sort": ariaSortFor('from'), children: _jsx(SortHeader, { label: "Source URL", sortKey: "from" }) }), _jsx("th", { className: "px-4 py-2 text-left", "aria-sort": ariaSortFor('to'), children: _jsx(SortHeader, { label: "Destination URL", sortKey: "to" }) }), _jsx("th", { className: "px-4 py-2 text-left", "aria-sort": ariaSortFor('type'), children: _jsx(SortHeader, { label: "Type", sortKey: "type" }) }), _jsx("th", { className: "px-4 py-2 text-left", "aria-sort": ariaSortFor('hits'), children: _jsx(SortHeader, { label: "Hits", sortKey: "hits" }) }), _jsx("th", { className: "px-4 py-2 text-left", "aria-sort": ariaSortFor('active'), children: _jsx(SortHeader, { label: "Status", sortKey: "active" }) }), _jsx("th", { className: "text-foreground px-4 py-2 text-left text-xs font-medium", children: "Actions" })] }) }), _jsx("tbody", { className: "divide-border divide-y", children: filteredAndSorted.map((redirect) => (_jsxs("tr", { className: "hover:bg-muted transition-colors", children: [_jsx("td", { className: "px-4 py-3", children: _jsx("code", { className: "bg-muted text-foreground rounded px-2 py-1 text-xs", children: redirect.from }) }), _jsx("td", { className: "px-4 py-3", children: _jsx("code", { className: "bg-muted text-foreground rounded px-2 py-1 text-xs", children: redirect.to }) }), _jsx("td", { className: "px-4 py-3", children: _jsx("span", { className: `inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${redirect.type === '301'
91
92
  ? 'bg-primary/15 text-primary'
92
93
  : 'bg-accent text-accent-foreground'}`, children: redirect.type }) }), _jsx("td", { className: "text-muted-foreground px-4 py-3 text-sm", children: redirect.hits.toLocaleString() }), _jsx("td", { className: "px-4 py-3", children: _jsx("span", { className: `inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${redirect.active
93
94
  ? 'bg-success/15 text-success'
@@ -1 +1 @@
1
- {"version":3,"file":"Redirects.js","sourceRoot":"","sources":["../../src/views/Redirects.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Redirects.js","sourceRoot":"","sources":["../../src/views/Redirects.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SessionPolicyCard.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SessionPolicyCard.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAY5D,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,cAAc,EACd,WAAW,EACX,WAAW,GACZ,EAAE;IACD,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAChF,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;IAClD,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB,2CA0HA"}
1
+ {"version":3,"file":"SessionPolicyCard.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SessionPolicyCard.tsx"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAY5D,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,cAAc,EACd,WAAW,EACX,WAAW,GACZ,EAAE;IACD,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAChF,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;IAClD,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB,2CAkKA"}
@@ -19,8 +19,10 @@ export function SessionPolicyCard({ form, setField, canEdit, activeSessions, rev
19
19
  const headingId = useId();
20
20
  const maxId = useId();
21
21
  const timeoutId = useId();
22
+ const thresholdId = useId();
23
+ const minutesId = useId();
22
24
  const [confirmRevoke, setConfirmRevoke] = useState(false);
23
- return (_jsxs(SecurityCard, { headingId: headingId, title: "Sessions", description: "Control session lifetime, idle sign-out, and how many sessions an account can hold.", children: [_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: timeoutId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Session timeout" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Members are signed out automatically after this period of inactivity." })] }), _jsx("select", { id: timeoutId, value: form.timeoutHours, disabled: !canEdit, onChange: (e) => setField('timeoutHours', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50", children: SESSION_TIMEOUT_HOURS_OPTIONS.map((h) => (_jsx("option", { value: h, children: timeoutLabel(h) }, h))) })] }), _jsx(SettingsToggleRow, { label: "Idle auto-logout", description: "End the session after the timeout above when the tab is inactive.", checked: form.idleLogoutEnabled, disabled: !canEdit, onChange: (value) => setField('idleLogoutEnabled', value) }), _jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: maxId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Maximum concurrent sessions" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Oldest sessions are signed out when a user exceeds this. Choose Unlimited to disable the cap." })] }), _jsx("select", { id: maxId, value: form.maxConcurrentSessions, disabled: !canEdit, onChange: (e) => setField('maxConcurrentSessions', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50", children: MAX_CONCURRENT_SESSION_OPTIONS.map((n) => (_jsx("option", { value: n, children: sessionsLabel(n) }, n))) })] })] }), _jsxs("div", { className: "border-border mt-4 space-y-2 border-t pt-4", children: [_jsx(StatusRow, { status: "pass", label: "Active admin sessions", value: String(activeSessions) }), _jsx(StatusRow, { status: "pass", label: "Maximum session age", value: timeoutLabel(form.timeoutHours) }), _jsx(StatusRow, { status: "pass", label: "Revoke sessions on password change", value: "Enabled" })] }), _jsxs("div", { className: "border-border mt-4 flex items-center justify-between gap-3 border-t pt-4", children: [_jsxs("div", { children: [_jsx("p", { className: "text-foreground text-sm font-medium", children: "Revoke other sessions" }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Sign out every session except this one. Useful after a suspected compromise." }), revokeState === 'done' && (_jsx("p", { className: "text-success mt-1 text-sm", "aria-live": "polite", children: "Other sessions revoked." })), revokeState === 'error' && (_jsx("p", { className: "text-destructive mt-1 text-sm", "aria-live": "polite", children: "Could not revoke sessions. Try again." }))] }), _jsxs("button", { type: "button", disabled: !canEdit || revokeState === 'working', onClick: () => setConfirmRevoke(true), className: "border-border text-foreground hover:bg-accent inline-flex shrink-0 items-center gap-2 rounded-md border px-3 py-2 text-sm font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50", children: [revokeState === 'working' && (_jsx(Loader2, { size: 15, className: "animate-spin", "aria-hidden": "true" })), "Revoke other sessions"] })] }), _jsx(ConfirmDangerousSettingDialog, { open: confirmRevoke, title: "Revoke all other sessions?", description: "Every active session except your current one will be signed out immediately. Those users (and your other devices) will need to sign in again.", confirmLabel: "Revoke sessions", onConfirm: () => {
25
+ return (_jsxs(SecurityCard, { headingId: headingId, title: "Sessions", description: "Control session lifetime, idle sign-out, and how many sessions an account can hold.", children: [_jsxs("div", { className: "space-y-4", children: [_jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: timeoutId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Session timeout" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Members are signed out automatically after this period of inactivity." })] }), _jsx("select", { id: timeoutId, value: form.timeoutHours, disabled: !canEdit, onChange: (e) => setField('timeoutHours', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50", children: SESSION_TIMEOUT_HOURS_OPTIONS.map((h) => (_jsx("option", { value: h, children: timeoutLabel(h) }, h))) })] }), _jsx(SettingsToggleRow, { label: "Idle auto-logout", description: "End the session after the timeout above when the tab is inactive.", checked: form.idleLogoutEnabled, disabled: !canEdit, onChange: (value) => setField('idleLogoutEnabled', value) }), _jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: maxId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Maximum concurrent sessions" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Oldest sessions are signed out when a user exceeds this. Choose Unlimited to disable the cap." })] }), _jsx("select", { id: maxId, value: form.maxConcurrentSessions, disabled: !canEdit, onChange: (e) => setField('maxConcurrentSessions', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50", children: MAX_CONCURRENT_SESSION_OPTIONS.map((n) => (_jsx("option", { value: n, children: sessionsLabel(n) }, n))) })] }), _jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: thresholdId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Failed-login lockout" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Lock the account after this many consecutive wrong passwords." })] }), _jsx("input", { id: thresholdId, type: "number", min: 3, max: 100, value: form.lockoutThreshold, disabled: !canEdit, onChange: (e) => setField('lockoutThreshold', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring w-20 rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50" })] }), _jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsxs("label", { htmlFor: minutesId, className: "flex-1", children: [_jsx("span", { className: "text-foreground text-base font-medium", children: "Lockout duration" }), _jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: "Minutes the account stays locked before a correct password can unlock it." })] }), _jsx("input", { id: minutesId, type: "number", min: 1, max: 1440, value: form.lockoutMinutes, disabled: !canEdit, onChange: (e) => setField('lockoutMinutes', Number(e.target.value)), className: "border-border bg-input-background text-foreground focus-visible:ring-ring w-20 rounded-md border px-3 py-2 text-sm focus-visible:ring-2 focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50" })] })] }), _jsxs("div", { className: "border-border mt-4 space-y-2 border-t pt-4", children: [_jsx(StatusRow, { status: "pass", label: "Active admin sessions", value: String(activeSessions) }), _jsx(StatusRow, { status: "pass", label: "Maximum session age", value: timeoutLabel(form.timeoutHours) }), _jsx(StatusRow, { status: "pass", label: "Revoke sessions on password change", value: "Enabled" })] }), _jsxs("div", { className: "border-border mt-4 flex items-center justify-between gap-3 border-t pt-4", children: [_jsxs("div", { children: [_jsx("p", { className: "text-foreground text-sm font-medium", children: "Revoke other sessions" }), _jsx("p", { className: "text-muted-foreground text-sm", children: "Sign out every session except this one. Useful after a suspected compromise." }), revokeState === 'done' && (_jsx("p", { className: "text-success mt-1 text-sm", "aria-live": "polite", children: "Other sessions revoked." })), revokeState === 'error' && (_jsx("p", { className: "text-destructive mt-1 text-sm", "aria-live": "polite", children: "Could not revoke sessions. Try again." }))] }), _jsxs("button", { type: "button", disabled: !canEdit || revokeState === 'working', onClick: () => setConfirmRevoke(true), className: "border-border text-foreground hover:bg-accent inline-flex shrink-0 items-center gap-2 rounded-md border px-3 py-2 text-sm font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-50", children: [revokeState === 'working' && (_jsx(Loader2, { size: 15, className: "animate-spin", "aria-hidden": "true" })), "Revoke other sessions"] })] }), _jsx(ConfirmDangerousSettingDialog, { open: confirmRevoke, title: "Revoke all other sessions?", description: "Every active session except your current one will be signed out immediately. Those users (and your other devices) will need to sign in again.", confirmLabel: "Revoke sessions", onConfirm: () => {
24
26
  setConfirmRevoke(false);
25
27
  onRevokeAll();
26
28
  }, onCancel: () => setConfirmRevoke(false) })] }));
@@ -1 +1 @@
1
- {"version":3,"file":"SessionPolicyCard.js","sourceRoot":"","sources":["../../../src/views/settings/SessionPolicyCard.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SessionPolicyCard.js","sourceRoot":"","sources":["../../../src/views/settings/SessionPolicyCard.tsx"],"names":[],"mappings":"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"}
@@ -10,6 +10,8 @@ export interface SecurityForm {
10
10
  /** Raw textarea contents — one IP/CIDR entry per line. */
11
11
  ipAllowlistText: string;
12
12
  auditLoggingEnabled: boolean;
13
+ lockoutThreshold: number;
14
+ lockoutMinutes: number;
13
15
  }
14
16
  type SaveState = 'idle' | 'saving' | 'success' | 'error';
15
17
  /** Split the textarea into trimmed, de-duplicated entries (one per line). */
@@ -1 +1 @@
1
- {"version":3,"file":"useSecuritySettings.d.ts","sourceRoot":"","sources":["../../../src/views/settings/useSecuritySettings.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,8BAA8B,CAAA;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE9D,yEAAyE;AACzE,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,OAAO,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAA;IACvB,mBAAmB,EAAE,OAAO,CAAA;CAC7B;AAED,KAAK,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAA;AAYxD,6EAA6E;AAC7E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAOzD;AA6BD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC/B,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAChF,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/D,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;IAClD,sBAAsB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACrD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,mBAAmB,CAuJzE"}
1
+ {"version":3,"file":"useSecuritySettings.d.ts","sourceRoot":"","sources":["../../../src/views/settings/useSecuritySettings.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,KAAK,kBAAkB,EAExB,MAAM,8BAA8B,CAAA;AAErC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAE9D,yEAAyE;AACzE,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,OAAO,CAAA;IACpB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,qBAAqB,EAAE,MAAM,CAAA;IAC7B,YAAY,EAAE,MAAM,CAAA;IACpB,iBAAiB,EAAE,OAAO,CAAA;IAC1B,0DAA0D;IAC1D,eAAe,EAAE,MAAM,CAAA;IACvB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,KAAK,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,CAAA;AAcxD,6EAA6E;AAC7E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAOzD;AAmCD,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,kBAAkB,GAAG,IAAI,CAAA;IAC/B,IAAI,EAAE,YAAY,CAAA;IAClB,QAAQ,EAAE,CAAC,CAAC,SAAS,MAAM,YAAY,EAAE,GAAG,EAAE,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;IAChF,KAAK,EAAE,OAAO,CAAA;IACd,MAAM,EAAE,eAAe,EAAE,CAAA;IACzB,SAAS,EAAE,OAAO,CAAA;IAClB,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;IACpB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE;QAAE,cAAc,CAAC,EAAE,OAAO,CAAA;KAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/D,KAAK,EAAE,MAAM,IAAI,CAAA;IACjB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,0EAA0E;IAC1E,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAA;IAClD,sBAAsB,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAA;CACrD;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,mBAAmB,CAuJzE"}
@@ -10,6 +10,8 @@ const EMPTY_FORM = {
10
10
  idleLogoutEnabled: false,
11
11
  ipAllowlistText: '',
12
12
  auditLoggingEnabled: true,
13
+ lockoutThreshold: 10,
14
+ lockoutMinutes: 15,
13
15
  };
14
16
  /** Split the textarea into trimmed, de-duplicated entries (one per line). */
15
17
  export function parseAllowlistText(text) {
@@ -30,6 +32,8 @@ function formFromSettings(s) {
30
32
  idleLogoutEnabled: s.session.idleLogoutEnabled ?? false,
31
33
  ipAllowlistText: (s.access?.ipAllowlist ?? []).join('\n'),
32
34
  auditLoggingEnabled: s.access?.auditLoggingEnabled ?? true,
35
+ lockoutThreshold: s.lockout?.threshold ?? 10,
36
+ lockoutMinutes: s.lockout?.minutes ?? 15,
33
37
  };
34
38
  }
35
39
  function formToSettings(f) {
@@ -44,6 +48,10 @@ function formToSettings(f) {
44
48
  ipAllowlist: parseAllowlistText(f.ipAllowlistText),
45
49
  auditLoggingEnabled: f.auditLoggingEnabled,
46
50
  },
51
+ lockout: {
52
+ threshold: f.lockoutThreshold,
53
+ minutes: f.lockoutMinutes,
54
+ },
47
55
  };
48
56
  }
49
57
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"useSecuritySettings.js","sourceRoot":"","sources":["../../../src/views/settings/useSecuritySettings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useSecuritySettings.js","sourceRoot":"","sources":["../../../src/views/settings/useSecuritySettings.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAA;AACjE,OAAO,EACL,wBAAwB,GAGzB,MAAM,8BAA8B,CAAA;AACrC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAA;AAmBzC,MAAM,UAAU,GAAiB;IAC/B,WAAW,EAAE,KAAK;IAClB,kBAAkB,EAAE,CAAC;IACrB,qBAAqB,EAAE,CAAC;IACxB,YAAY,EAAE,GAAG;IACjB,iBAAiB,EAAE,KAAK;IACxB,eAAe,EAAE,EAAE;IACnB,mBAAmB,EAAE,IAAI;IACzB,gBAAgB,EAAE,EAAE;IACpB,cAAc,EAAE,EAAE;CACnB,CAAA;AAED,6EAA6E;AAC7E,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QACzB,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACpD,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,SAAS,gBAAgB,CAAC,CAAmB;IAC3C,OAAO;QACL,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ;QAC3B,kBAAkB,EAAE,CAAC,CAAC,GAAG,CAAC,eAAe;QACzC,qBAAqB,EAAE,CAAC,CAAC,OAAO,CAAC,qBAAqB;QACtD,YAAY,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,IAAI,GAAG;QAC3C,iBAAiB,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,IAAI,KAAK;QACvD,eAAe,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QACzD,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE,mBAAmB,IAAI,IAAI;QAC1D,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE,SAAS,IAAI,EAAE;QAC5C,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,OAAO,IAAI,EAAE;KACzC,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,CAAe;IACrC,OAAO;QACL,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC,CAAC,kBAAkB,EAAE;QACvE,OAAO,EAAE;YACP,qBAAqB,EAAE,CAAC,CAAC,qBAAqB;YAC9C,YAAY,EAAE,CAAC,CAAC,YAAY;YAC5B,iBAAiB,EAAE,CAAC,CAAC,iBAAiB;SACvC;QACD,MAAM,EAAE;YACN,WAAW,EAAE,kBAAkB,CAAC,CAAC,CAAC,eAAe,CAAC;YAClD,mBAAmB,EAAE,CAAC,CAAC,mBAAmB;SAC3C;QACD,OAAO,EAAE;YACP,SAAS,EAAE,CAAC,CAAC,gBAAgB;YAC7B,OAAO,EAAE,CAAC,CAAC,cAAc;SAC1B;KACF,CAAA;AACH,CAAC;AAwBD;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAgB;IAClD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;IAC5C,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC/D,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAA4B,IAAI,CAAC,CAAA;IACjE,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAe,UAAU,CAAC,CAAA;IAClE,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAe,UAAU,CAAC,CAAA;IAC1D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAY,MAAM,CAAC,CAAA;IAC7D,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IAC/D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAA;IACvE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAwC,MAAM,CAAC,CAAA;IAC7F,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAA;IAE7C,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,SAAS,GAAG,KAAK,CAAA;QACrB,UAAU,CAAC,IAAI,CAAC,CAAA;QAChB,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,MAAM,CAAqB,WAAW,CAAC;aACpC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YACZ,IAAI,SAAS;gBAAE,OAAM;YACrB,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC3B,YAAY,CAAC,GAAG,CAAC,KAAK,IAAI,mCAAmC,CAAC,CAAA;gBAC9D,OAAM;YACR,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACjB,MAAM,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC7C,WAAW,CAAC,CAAC,CAAC,CAAA;YACd,OAAO,CAAC,CAAC,CAAC,CAAA;QACZ,CAAC,CAAC;aACD,KAAK,CAAC,GAAG,EAAE;YACV,IAAI,CAAC,SAAS;gBAAE,YAAY,CAAC,mCAAmC,CAAC,CAAA;QACnE,CAAC,CAAC;aACD,OAAO,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,SAAS;gBAAE,UAAU,CAAC,KAAK,CAAC,CAAA;QACnC,CAAC,CAAC,CAAA;QACJ,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAA;QAClB,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;IAEf,MAAM,QAAQ,GAAG,WAAW,CAAC,CAA+B,GAAM,EAAE,KAAsB,EAAE,EAAE;QAC5F,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAA;QAC9C,YAAY,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,MAAM,KAAK,GAAG,OAAO,CACnB,GAAG,EAAE,CAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAA+B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAC3F,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjB,CAAA;IAED,MAAM,MAAM,GAAG,OAAO,CAAoB,GAAG,EAAE;QAC7C,MAAM,IAAI,GAAG,wBAAwB,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,CAAA;QAC3D,uEAAuE;QACvE,qEAAqE;QACrE,IAAI,IAAI,CAAC,WAAW,IAAI,CAAC,QAAQ,CAAC,WAAW,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YAC5E,IAAI,CAAC,IAAI,CAAC;gBACR,KAAK,EAAE,aAAa;gBACpB,OAAO,EACL,2GAA2G;gBAC7G,QAAQ,EAAE,OAAO;aAClB,CAAC,CAAA;QACJ,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAA;IAEtC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAA;IAE5D,MAAM,IAAI,GAAG,WAAW,CACtB,KAAK,EAAE,OAAsC,EAAE,EAAE;QAC/C,IAAI,CAAC,OAAO,IAAI,SAAS,IAAI,CAAC,KAAK;YAAE,OAAM;QAC3C,YAAY,CAAC,QAAQ,CAAC,CAAA;QACtB,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;QACtB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAqB,WAAW,EAAE;gBACxD,MAAM,EAAE,KAAK;gBACb,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,GAAG,cAAc,CAAC,IAAI,CAAC;oBACvB,GAAG,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7D,CAAC;aACH,CAAC,CAAA;YACF,oEAAoE;YACpE,iEAAiE;YACjE,IAAI,GAAG,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnC,YAAY,CAAC,MAAM,CAAC,CAAA;gBACpB,gBAAgB,CAAC,GAAG,CAAC,KAAK,IAAI,+CAA+C,CAAC,CAAA;gBAC9E,OAAM;YACR,CAAC;YACD,IAAI,GAAG,CAAC,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC3B,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,IAAI,mCAAmC,CAAC,CAAA;YACnE,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACjB,MAAM,CAAC,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC7C,WAAW,CAAC,CAAC,CAAC,CAAA;YACd,OAAO,CAAC,CAAC,CAAC,CAAA;YACV,YAAY,CAAC,SAAS,CAAC,CAAA;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,YAAY,CAAC,OAAO,CAAC,CAAA;YACrB,YAAY,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC,CAAC,CAAA;QACxF,CAAC;IACH,CAAC,EACD,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,CAAC,CAClC,CAAA;IAED,MAAM,oBAAoB,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,CAAA;IAE1E,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE;QAC7B,OAAO,CAAC,QAAQ,CAAC,CAAA;QACjB,YAAY,CAAC,MAAM,CAAC,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,CAAA;QAClB,gBAAgB,CAAC,IAAI,CAAC,CAAA;IACxB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAA;IAEd,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IAEjE,MAAM,sBAAsB,GAAG,WAAW,CAAC,KAAK,IAA4B,EAAE;QAC5E,cAAc,CAAC,SAAS,CAAC,CAAA;QACzB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,MAAM,CAAsB,+BAA+B,EAAE;gBAC7E,MAAM,EAAE,MAAM;aACf,CAAC,CAAA;YACF,IAAI,GAAG,CAAC,KAAK;gBAAE,MAAM,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;YACzC,cAAc,CAAC,MAAM,CAAC,CAAA;YACtB,oCAAoC;YACpC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;YAC1B,OAAO,GAAG,CAAC,IAAI,EAAE,OAAO,IAAI,CAAC,CAAA;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,cAAc,CAAC,OAAO,CAAC,CAAA;YACvB,OAAO,IAAI,CAAA;QACb,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAA;IAEN,OAAO;QACL,OAAO;QACP,SAAS;QACT,IAAI;QACJ,IAAI;QACJ,QAAQ;QACR,KAAK;QACL,MAAM;QACN,SAAS;QACT,OAAO;QACP,SAAS;QACT,SAAS;QACT,IAAI;QACJ,KAAK;QACL,OAAO;QACP,aAAa;QACb,oBAAoB;QACpB,WAAW;QACX,sBAAsB;KACvB,CAAA;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"UserDetailDrawer.d.ts","sourceRoot":"","sources":["../../../src/views/users/UserDetailDrawer.tsx"],"names":[],"mappings":"AAoUA,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,qBAAqB,2CAqpBhG"}
1
+ {"version":3,"file":"UserDetailDrawer.d.ts","sourceRoot":"","sources":["../../../src/views/users/UserDetailDrawer.tsx"],"names":[],"mappings":"AAqUA,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,IAAI,EAAE,OAAO,CAAA;IACb,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACrC,8DAA8D;IAC9D,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,wBAAgB,gBAAgB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,qBAAqB,2CA8qBhG"}
@@ -191,7 +191,7 @@ export function UserDetailDrawer({ userId, open, onOpenChange, onChanged }) {
191
191
  }
192
192
  }, []);
193
193
  const u = detail.data;
194
- return (_jsx(_Fragment, { children: _jsxs(Drawer, { open: open, onOpenChange: onOpenChange, width: "max-w-xl", title: u ? u.name : detail.loading ? 'Loading…' : 'User', description: u?.email, headerExtra: u ? (_jsx("span", { className: `mr-1 inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${ROLE_PILL[u.roleName] ?? ROLE_PILL.Viewer}`, children: u.roleName })) : undefined, children: [detail.loading ? (_jsxs("div", { className: "space-y-3", children: [_jsx(Skeleton, { variant: "card" }), _jsx(Skeleton, { variant: "table-row", lines: 4 })] })) : detail.error || !u ? (_jsxs("div", { className: "flex items-center gap-3 py-6", children: [_jsx(AlertTriangle, { size: 18, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: detail.error ?? 'User not found.' }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => detail.refetch(), children: "Retry" })] })) : (_jsxs(Tabs.Root, { value: tab, onValueChange: setTab, children: [_jsx(Tabs.List, { className: "border-border mb-4 flex gap-1 overflow-x-auto border-b", "aria-label": "User detail sections", children: TABS.map((t) => (_jsx(Tabs.Trigger, { value: t.id, className: "text-muted-foreground hover:text-foreground data-[state=active]:text-foreground data-[state=active]:border-brand focus-visible:ring-ring -mb-px shrink-0 border-b-2 border-transparent px-3 py-2 text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:outline-none", children: t.label }, t.id))) }), _jsxs(Tabs.Content, { value: "overview", tabIndex: -1, className: "focus:outline-none", children: [_jsxs("div", { className: "mb-4 flex items-center gap-2", children: [_jsxs("span", { className: `inline-flex items-center gap-1.5 text-sm ${STATUS_META[u.status].text}`, children: [_jsx("span", { className: `h-2 w-2 rounded-full ${STATUS_META[u.status].dot}`, "aria-hidden": true }), STATUS_META[u.status].label] }), u.isCurrentUser && (_jsx("span", { className: "bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-xs", children: "You" })), u.externalDomain && (_jsx("span", { className: "bg-warning/10 text-warning rounded px-1.5 py-0.5 text-xs", children: "External domain" }))] }), _jsxs("dl", { className: "grid grid-cols-2 gap-x-4 gap-y-4", children: [_jsx(Fact, { label: "Role", value: u.roleName }), _jsx(Fact, { label: "Status", value: STATUS_META[u.status].label }), _jsx(Fact, { label: "Last active", value: relativeTime(u.lastActiveAt) }), _jsx(Fact, { label: "Last sign-in", value: relativeTime(u.lastLoginAt) }), _jsx(Fact, { label: "Created", value: formatDate(u.createdAt) }), _jsx(Fact, { label: "Accepted invite", value: formatDate(u.acceptedInviteAt) }), _jsx(Fact, { label: "Invited by", value: u.invitedBy ? (u.invitedBy.name) : (_jsx("span", { className: "text-muted-foreground", children: "\u2014" })) }), _jsx(Fact, { label: "Email domain", value: u.email.split('@')[1] ?? '—' }), _jsx(Fact, { label: "Content owned", value: `${u.contentOwnedCount} ${u.contentOwnedCount === 1 ? 'item' : 'items'}` }), _jsx(Fact, { label: "Email verified", value: u.emailVerified ? 'Yes' : _jsx("span", { className: "text-warning", children: "No" }) }), u.authProvider && _jsx(Fact, { label: "Auth provider", value: u.authProvider }), u.oauthProviders.length > 0 && (_jsx(Fact, { label: "Connected accounts", value: u.oauthProviders.join(', ') }))] }), u.contentOwnedCount > 0 && (_jsxs("div", { className: "border-info/30 bg-info/5 mt-4 flex items-start gap-2 rounded-md border p-3", children: [_jsx(FileText, { size: 14, className: "text-info mt-0.5 shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("p", { className: "text-muted-foreground text-xs", children: ["This user owns ", u.contentOwnedCount, " content", ' ', u.contentOwnedCount === 1 ? 'item' : 'items', ". Revoking access suspends the account and preserves their content and authorship \u2014 or reassign it to another member first."] }), _jsx(Button, { size: "sm", variant: "outline", className: "mt-2", leftIcon: _jsx(FileText, { size: 14, "aria-hidden": true }), onClick: () => setShowTransfer(true), children: "Transfer content" })] })] }))] }), _jsxs(Tabs.Content, { value: "security", tabIndex: -1, className: "focus:outline-none", children: [_jsx(SecurityRow, { icon: u.mfaEnabled ? _jsx(ShieldCheck, { size: 16 }) : _jsx(ShieldAlert, { size: 16 }), title: "Multi-factor authentication", description: u.mfaEnabled
194
+ return (_jsx(_Fragment, { children: _jsxs(Drawer, { open: open, onOpenChange: onOpenChange, width: "max-w-xl", title: u ? u.name : detail.loading ? 'Loading…' : 'User', description: u?.email, headerExtra: u ? (_jsx("span", { className: `mr-1 inline-flex items-center rounded-full px-2 py-0.5 text-xs font-medium ${ROLE_PILL[u.roleName] ?? ROLE_PILL.Viewer}`, children: u.roleName })) : undefined, children: [detail.loading ? (_jsxs("div", { className: "space-y-3", children: [_jsx(Skeleton, { variant: "card" }), _jsx(Skeleton, { variant: "table-row", lines: 4 })] })) : detail.error || !u ? (_jsxs("div", { className: "flex items-center gap-3 py-6", children: [_jsx(AlertTriangle, { size: 18, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: detail.error ?? 'User not found.' }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => detail.refetch(), children: "Retry" })] })) : (_jsxs(Tabs.Root, { value: tab, onValueChange: setTab, children: [_jsx(Tabs.List, { className: "border-border mb-4 flex gap-1 overflow-x-auto border-b", "aria-label": "User detail sections", children: TABS.map((t) => (_jsx(Tabs.Trigger, { value: t.id, className: "text-muted-foreground hover:text-foreground data-[state=active]:text-foreground data-[state=active]:border-brand focus-visible:ring-ring -mb-px shrink-0 border-b-2 border-transparent px-3 py-2 text-sm font-medium transition-colors focus-visible:ring-2 focus-visible:outline-none", children: t.label }, t.id))) }), _jsxs(Tabs.Content, { value: "overview", tabIndex: -1, className: "focus:outline-none", children: [_jsxs("div", { className: "mb-4 flex items-center gap-2", children: [_jsxs("span", { className: `inline-flex items-center gap-1.5 text-sm ${STATUS_META[u.status].text}`, children: [_jsx("span", { className: `h-2 w-2 rounded-full ${STATUS_META[u.status].dot}`, "aria-hidden": true }), STATUS_META[u.status].label] }), u.isCurrentUser && (_jsx("span", { className: "bg-muted text-muted-foreground rounded px-1.5 py-0.5 text-xs", children: "You" })), u.externalDomain && (_jsx("span", { className: "bg-warning/10 text-warning rounded px-1.5 py-0.5 text-xs", children: "External domain" }))] }), _jsxs("dl", { className: "grid grid-cols-2 gap-x-4 gap-y-4", children: [_jsx(Fact, { label: "Role", value: u.roleName }), _jsx(Fact, { label: "Status", value: STATUS_META[u.status].label }), _jsx(Fact, { label: "Last active", value: relativeTime(u.lastActiveAt) }), _jsx(Fact, { label: "Last sign-in", value: relativeTime(u.lastLoginAt) }), _jsx(Fact, { label: "Created", value: formatDate(u.createdAt) }), _jsx(Fact, { label: "Accepted invite", value: formatDate(u.acceptedInviteAt) }), _jsx(Fact, { label: "Invited by", value: u.invitedBy ? (u.invitedBy.name) : (_jsx("span", { className: "text-muted-foreground", children: "\u2014" })) }), _jsx(Fact, { label: "Email domain", value: u.email.split('@')[1] ?? '—' }), _jsx(Fact, { label: "Content owned", value: `${u.contentOwnedCount} ${u.contentOwnedCount === 1 ? 'item' : 'items'}` }), _jsx(Fact, { label: "Live API keys", value: u.liveApiKeyCount > 0 ? (_jsxs("span", { className: "text-warning", children: [u.liveApiKeyCount, " ", u.liveApiKeyCount === 1 ? 'key' : 'keys'] })) : ('None') }), _jsx(Fact, { label: "Email verified", value: u.emailVerified ? 'Yes' : _jsx("span", { className: "text-warning", children: "No" }) }), u.authProvider && _jsx(Fact, { label: "Auth provider", value: u.authProvider }), u.oauthProviders.length > 0 && (_jsx(Fact, { label: "Connected accounts", value: u.oauthProviders.join(', ') }))] }), u.contentOwnedCount > 0 && (_jsxs("div", { className: "border-info/30 bg-info/5 mt-4 flex items-start gap-2 rounded-md border p-3", children: [_jsx(FileText, { size: 14, className: "text-info mt-0.5 shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsxs("p", { className: "text-muted-foreground text-xs", children: ["This user owns ", u.contentOwnedCount, " content", ' ', u.contentOwnedCount === 1 ? 'item' : 'items', ". Revoking access suspends the account and preserves their content and authorship \u2014 or reassign it to another member first."] }), _jsx(Button, { size: "sm", variant: "outline", className: "mt-2", leftIcon: _jsx(FileText, { size: 14, "aria-hidden": true }), onClick: () => setShowTransfer(true), children: "Transfer content" })] })] }))] }), _jsxs(Tabs.Content, { value: "security", tabIndex: -1, className: "focus:outline-none", children: [_jsx(SecurityRow, { icon: u.mfaEnabled ? (_jsx(ShieldCheck, { size: 16, "aria-hidden": true })) : (_jsx(ShieldAlert, { size: 16, "aria-hidden": true })), title: "Multi-factor authentication", description: u.mfaEnabled
195
195
  ? 'Enabled for this account.'
196
196
  : u.mfaRequired
197
197
  ? 'Required but not yet enrolled.'
@@ -204,7 +204,7 @@ export function UserDetailDrawer({ userId, open, onOpenChange, onChanged }) {
204
204
  confirmLabel: 'Reset MFA',
205
205
  destructive: true,
206
206
  onConfirm: () => runAction('mfa-reset', `/users/${u.id}/mfa-reset`, { method: 'POST' }, { successMsg: 'MFA enrolment reset.', after: refreshAfterChange }),
207
- }), children: "Reset MFA" })] }) }), _jsx(SecurityRow, { icon: _jsx(KeyRound, { size: 16 }), title: "Password", description: u.ssoOnly
207
+ }), children: "Reset MFA" })] }) }), _jsx(SecurityRow, { icon: _jsx(KeyRound, { size: 16, "aria-hidden": true }), title: "Password", description: u.ssoOnly
208
208
  ? 'Signs in via an external identity provider — no local password.'
209
209
  : u.forcePasswordReset
210
210
  ? 'Must set a new password on next sign-in.'
@@ -218,13 +218,13 @@ export function UserDetailDrawer({ userId, open, onOpenChange, onChanged }) {
218
218
  ? 'Forced reset cleared.'
219
219
  : 'User must reset password on next sign-in.',
220
220
  after: refreshAfterChange,
221
- }), children: u.forcePasswordReset ? 'Clear forced reset' : 'Force reset' })] }) }), _jsx(SecurityRow, { icon: _jsx(ShieldAlert, { size: 16 }), title: "Failed sign-ins", description: `${u.failedLoginCount} failed ${u.failedLoginCount === 1 ? 'attempt' : 'attempts'} on record.`, action: null }), _jsx(SecurityRow, { icon: u.status === 'locked' ? _jsx(Lock, { size: 16 }) : _jsx(Unlock, { size: 16 }), title: "Account lock", description: u.status === 'locked' ? 'Locked by a security policy or an admin.' : 'Not locked.', action: u.status === 'locked' ? (_jsx(Button, { size: "sm", variant: "outline", loading: pending === 'unlock', onClick: () => runAction('unlock', `/users/${u.id}/unlock`, { method: 'POST' }, { successMsg: 'Account unlocked.', after: refreshAfterChange }), children: "Unlock" })) : (_jsx(Button, { size: "sm", variant: "outline", disabled: u.isCurrentUser, title: u.isCurrentUser ? 'You cannot lock your own account' : undefined, loading: pending === 'lock', onClick: () => setConfirm({
221
+ }), children: u.forcePasswordReset ? 'Clear forced reset' : 'Force reset' })] }) }), _jsx(SecurityRow, { icon: _jsx(ShieldAlert, { size: 16, "aria-hidden": true }), title: "Failed sign-ins", description: `${u.failedLoginCount} failed ${u.failedLoginCount === 1 ? 'attempt' : 'attempts'} on record.`, action: null }), _jsx(SecurityRow, { icon: u.status === 'locked' ? (_jsx(Lock, { size: 16, "aria-hidden": true })) : (_jsx(Unlock, { size: 16, "aria-hidden": true })), title: "Account lock", description: u.status === 'locked' ? 'Locked by a security policy or an admin.' : 'Not locked.', action: u.status === 'locked' ? (_jsx(Button, { size: "sm", variant: "outline", loading: pending === 'unlock', onClick: () => runAction('unlock', `/users/${u.id}/unlock`, { method: 'POST' }, { successMsg: 'Account unlocked.', after: refreshAfterChange }), children: "Unlock" })) : (_jsx(Button, { size: "sm", variant: "outline", disabled: u.isCurrentUser, title: u.isCurrentUser ? 'You cannot lock your own account' : undefined, loading: pending === 'lock', onClick: () => setConfirm({
222
222
  title: 'Lock account',
223
223
  description: `${u.name} will be blocked from signing in and all their sessions will be revoked until you unlock the account.`,
224
224
  confirmLabel: 'Lock account',
225
225
  destructive: true,
226
226
  onConfirm: () => runAction('lock', `/users/${u.id}/lock`, { method: 'POST' }, { successMsg: 'Account locked.', after: refreshAfterChange }),
227
- }), children: "Lock" })) }), _jsx(SecurityRow, { icon: _jsx(Ban, { size: 16 }), title: "Account access", description: u.status === 'suspended'
227
+ }), children: "Lock" })) }), _jsx(SecurityRow, { icon: _jsx(Ban, { size: 16, "aria-hidden": true }), title: "Account access", description: u.status === 'suspended'
228
228
  ? 'Suspended — cannot sign in, history preserved.'
229
229
  : 'Active — can sign in.', action: u.status === 'suspended' || u.status === 'deactivated' ? (_jsx(Button, { size: "sm", variant: "outline", loading: pending === 'reactivate', onClick: () => runAction('reactivate', `/users/${u.id}/reactivate`, { method: 'POST' }, { successMsg: 'Access restored.', after: refreshAfterChange }), children: "Reactivate" })) : (_jsx(Button, { size: "sm", variant: "outline", disabled: u.isCurrentUser, title: u.isCurrentUser ? 'You cannot suspend your own account' : undefined, loading: pending === 'suspend', onClick: () => setConfirm({
230
230
  title: 'Suspend user',
@@ -240,7 +240,7 @@ export function UserDetailDrawer({ userId, open, onOpenChange, onChanged }) {
240
240
  onConfirm: () => runAction('revoke-all', `/users/${u.id}/sessions/revoke-all`, { method: 'POST' }, { successMsg: 'Sessions revoked.', after: () => sessions.refetch() }),
241
241
  }), children: "Revoke all" }) }), _jsx("ul", { className: "space-y-2", children: sessions.data
242
242
  ?.filter((s) => s.active)
243
- .map((s) => (_jsxs("li", { className: "border-border flex items-center justify-between gap-3 rounded-md border p-3", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [_jsx(Monitor, { size: 16, className: "text-muted-foreground shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0", children: [_jsxs("div", { className: "text-card-foreground flex items-center gap-1.5 text-sm", children: [_jsx("span", { className: "truncate", children: s.deviceLabel }), s.current && (_jsx("span", { className: "bg-success/10 text-success rounded px-1 text-[10px]", children: "This device" }))] }), _jsxs("div", { className: "text-muted-foreground text-xs", children: ["Signed in ", relativeTime(s.createdAt), " \u00B7 expires", ' ', formatDate(s.expiresAt)] })] })] }), _jsx("button", { type: "button", disabled: pending === `revoke-${s.id}`, onClick: () => runAction(`revoke-${s.id}`, `/users/${u.id}/sessions/${s.id}`, { method: 'DELETE' }, { successMsg: 'Session revoked.', after: () => sessions.refetch() }), className: "text-muted-foreground hover:text-destructive shrink-0 text-xs font-medium transition-colors disabled:opacity-50", children: "Revoke" })] }, s.id))) })] })) }), _jsx(Tabs.Content, { value: "activity", tabIndex: -1, className: "focus:outline-none", children: activity.loading ? (_jsx(Skeleton, { variant: "table-row", lines: 4 })) : activity.error ? (_jsxs("div", { className: "flex items-center gap-3 py-4", children: [_jsx(AlertTriangle, { size: 16, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: activity.error }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => activity.refetch(), children: "Retry" })] })) : (activity.data?.length ?? 0) === 0 ? (_jsx(EmptyState, { icon: _jsx(ActivityIcon, { size: 24, "aria-hidden": true }), title: "No recent activity", description: "Audit events for this user will appear here." })) : (_jsx("ul", { className: "space-y-1", children: activity.data?.map((e) => (_jsxs("li", { className: "hover:bg-accent/30 flex items-center justify-between gap-3 rounded-md px-2 py-2", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [_jsx(ActivityIcon, { size: 14, className: "text-muted-foreground shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-card-foreground truncate text-sm", children: humanizeEvent(e.event) }), _jsxs("div", { className: "text-muted-foreground text-xs", children: [e.role === 'target' ? 'Affected this user' : 'Performed by this user', e.ipAddress ? ` · ${e.ipAddress}` : ''] })] })] }), _jsx("span", { className: "text-muted-foreground shrink-0 text-xs", children: relativeTime(e.timestamp) })] }, e.id))) })) }), _jsx(Tabs.Content, { value: "permissions", tabIndex: -1, className: "focus:outline-none", children: perms.loading ? (_jsx(Skeleton, { variant: "table-row", lines: 4 })) : perms.error ? (_jsxs("div", { className: "flex items-center gap-3 py-4", children: [_jsx(AlertTriangle, { size: 16, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: perms.error }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => perms.refetch(), children: "Retry" })] })) : perms.data ? (_jsxs(_Fragment, { children: [_jsxs("p", { className: "text-muted-foreground mb-3 text-sm", children: ["Effective role", ' ', _jsx("span", { className: "text-card-foreground font-medium", children: perms.data.roleName }), ' ', "grants ", perms.data.permissions.length, " permission", perms.data.permissions.length === 1 ? '' : 's', ". Permissions are derived from the role and managed in configuration."] }), _jsx("ul", { className: "flex flex-wrap gap-1.5", children: perms.data.permissions.map((p) => (_jsxs("li", { className: "border-border bg-muted/50 text-card-foreground inline-flex items-center gap-1 rounded-md border px-2 py-1 text-xs", children: [_jsx(Check, { size: 12, className: "text-success", "aria-hidden": true }), p] }, p))) })] })) : null })] })), confirm && (_jsx(ConfirmDialog, { open: !!confirm, onClose: () => setConfirm(null), onConfirm: confirm.onConfirm, title: confirm.title, description: confirm.description, confirmLabel: confirm.confirmLabel, destructive: confirm.destructive })), _jsx(ReauthDialog, { open: !!reauth, onClose: () => setReauth(null), onSubmit: async (password) => {
243
+ .map((s) => (_jsxs("li", { className: "border-border flex items-center justify-between gap-3 rounded-md border p-3", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [_jsx(Monitor, { size: 16, className: "text-muted-foreground shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0", children: [_jsxs("div", { className: "text-card-foreground flex items-center gap-1.5 text-sm", children: [_jsx("span", { className: "truncate", children: s.deviceLabel }), s.current && (_jsx("span", { className: "bg-success/10 text-success rounded px-1 text-[10px]", children: "This device" }))] }), _jsxs("div", { className: "text-muted-foreground text-xs", children: ["Signed in ", relativeTime(s.createdAt), " \u00B7 expires", ' ', formatDate(s.expiresAt)] })] })] }), _jsx("button", { type: "button", disabled: pending === `revoke-${s.id}`, "aria-label": `Revoke session on ${s.deviceLabel}`, onClick: () => runAction(`revoke-${s.id}`, `/users/${u.id}/sessions/${s.id}`, { method: 'DELETE' }, { successMsg: 'Session revoked.', after: () => sessions.refetch() }), className: "text-muted-foreground hover:text-destructive shrink-0 text-xs font-medium transition-colors disabled:opacity-50", children: "Revoke" })] }, s.id))) })] })) }), _jsx(Tabs.Content, { value: "activity", tabIndex: -1, className: "focus:outline-none", children: activity.loading ? (_jsx(Skeleton, { variant: "table-row", lines: 4 })) : activity.error ? (_jsxs("div", { className: "flex items-center gap-3 py-4", children: [_jsx(AlertTriangle, { size: 16, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: activity.error }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => activity.refetch(), children: "Retry" })] })) : (activity.data?.length ?? 0) === 0 ? (_jsx(EmptyState, { icon: _jsx(ActivityIcon, { size: 24, "aria-hidden": true }), title: "No recent activity", description: "Audit events for this user will appear here." })) : (_jsx("ul", { className: "space-y-1", children: activity.data?.map((e) => (_jsxs("li", { className: "hover:bg-accent/30 flex items-center justify-between gap-3 rounded-md px-2 py-2", children: [_jsxs("div", { className: "flex min-w-0 items-center gap-2.5", children: [_jsx(ActivityIcon, { size: 14, className: "text-muted-foreground shrink-0", "aria-hidden": true }), _jsxs("div", { className: "min-w-0", children: [_jsx("div", { className: "text-card-foreground truncate text-sm", children: humanizeEvent(e.event) }), _jsxs("div", { className: "text-muted-foreground text-xs", children: [e.role === 'target' ? 'Affected this user' : 'Performed by this user', e.ipAddress ? ` · ${e.ipAddress}` : ''] })] })] }), _jsx("span", { className: "text-muted-foreground shrink-0 text-xs", children: relativeTime(e.timestamp) })] }, e.id))) })) }), _jsx(Tabs.Content, { value: "permissions", tabIndex: -1, className: "focus:outline-none", children: perms.loading ? (_jsx(Skeleton, { variant: "table-row", lines: 4 })) : perms.error ? (_jsxs("div", { className: "flex items-center gap-3 py-4", children: [_jsx(AlertTriangle, { size: 16, className: "text-destructive shrink-0", "aria-hidden": true }), _jsx("span", { className: "text-destructive flex-1 text-sm", children: perms.error }), _jsx(Button, { variant: "outline", size: "sm", onClick: () => perms.refetch(), children: "Retry" })] })) : perms.data ? (_jsxs(_Fragment, { children: [_jsxs("p", { className: "text-muted-foreground mb-3 text-sm", children: ["Effective role", ' ', _jsx("span", { className: "text-card-foreground font-medium", children: perms.data.roleName }), ' ', "grants ", perms.data.permissions.length, " permission", perms.data.permissions.length === 1 ? '' : 's', ". Permissions are derived from the role and managed in configuration."] }), _jsx("ul", { className: "flex flex-wrap gap-1.5", children: perms.data.permissions.map((p) => (_jsxs("li", { className: "border-border bg-muted/50 text-card-foreground inline-flex items-center gap-1 rounded-md border px-2 py-1 text-xs", children: [_jsx(Check, { size: 12, className: "text-success", "aria-hidden": true }), p] }, p))) })] })) : null })] })), confirm && (_jsx(ConfirmDialog, { open: !!confirm, onClose: () => setConfirm(null), onConfirm: confirm.onConfirm, title: confirm.title, description: confirm.description, confirmLabel: confirm.confirmLabel, destructive: confirm.destructive })), _jsx(ReauthDialog, { open: !!reauth, onClose: () => setReauth(null), onSubmit: async (password) => {
244
244
  if (reauth)
245
245
  await reauth.run(password);
246
246
  } }), u && (_jsx(TransferContentModal, { open: showTransfer, onClose: () => setShowTransfer(false), fromUser: { id: u.id, name: u.name, contentOwnedCount: u.contentOwnedCount }, onTransferred: refreshAfterChange }))] }) }));