@actuate-media/cms-admin 0.68.0 → 0.69.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.
- package/CHANGELOG.md +12 -0
- package/dist/AdminRoot.d.ts.map +1 -1
- package/dist/AdminRoot.js +31 -11
- package/dist/AdminRoot.js.map +1 -1
- package/dist/__tests__/hooks/useIdleLogout.test.js +57 -2
- package/dist/__tests__/hooks/useIdleLogout.test.js.map +1 -1
- package/dist/__tests__/router/query-string.test.d.ts +2 -0
- package/dist/__tests__/router/query-string.test.d.ts.map +1 -0
- package/dist/__tests__/router/query-string.test.js +44 -0
- package/dist/__tests__/router/query-string.test.js.map +1 -0
- package/dist/__tests__/views/users-selected-deeplink.render.test.d.ts +2 -0
- package/dist/__tests__/views/users-selected-deeplink.render.test.d.ts.map +1 -0
- package/dist/__tests__/views/users-selected-deeplink.render.test.js +91 -0
- package/dist/__tests__/views/users-selected-deeplink.render.test.js.map +1 -0
- package/dist/hooks/useIdleLogout.d.ts +21 -6
- package/dist/hooks/useIdleLogout.d.ts.map +1 -1
- package/dist/hooks/useIdleLogout.js +41 -8
- package/dist/hooks/useIdleLogout.js.map +1 -1
- package/dist/router/index.d.ts +7 -0
- package/dist/router/index.d.ts.map +1 -1
- package/dist/router/index.js +23 -4
- package/dist/router/index.js.map +1 -1
- package/dist/views/MediaBrowser.d.ts +4 -1
- package/dist/views/MediaBrowser.d.ts.map +1 -1
- package/dist/views/MediaBrowser.js +27 -5
- package/dist/views/MediaBrowser.js.map +1 -1
- package/dist/views/SEO.d.ts.map +1 -1
- package/dist/views/SEO.js +2 -1
- package/dist/views/SEO.js.map +1 -1
- package/dist/views/Settings.d.ts +4 -1
- package/dist/views/Settings.d.ts.map +1 -1
- package/dist/views/Settings.js +4 -3
- package/dist/views/Settings.js.map +1 -1
- package/dist/views/Users.d.ts +4 -1
- package/dist/views/Users.d.ts.map +1 -1
- package/dist/views/Users.js +22 -2
- package/dist/views/Users.js.map +1 -1
- package/dist/views/settings/SecurityTab.d.ts.map +1 -1
- package/dist/views/settings/SecurityTab.js +2 -1
- package/dist/views/settings/SecurityTab.js.map +1 -1
- package/package.json +2 -2
- package/src/AdminRoot.tsx +53 -12
- package/src/__tests__/hooks/useIdleLogout.test.tsx +103 -1
- package/src/__tests__/router/query-string.test.ts +54 -0
- package/src/__tests__/views/users-selected-deeplink.render.test.tsx +102 -0
- package/src/hooks/useIdleLogout.ts +65 -13
- package/src/router/index.ts +25 -4
- package/src/views/MediaBrowser.tsx +28 -5
- package/src/views/SEO.tsx +2 -1
- package/src/views/Settings.tsx +7 -2
- package/src/views/Users.tsx +23 -2
- package/src/views/settings/SecurityTab.tsx +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# @actuate-media/cms-admin
|
|
2
2
|
|
|
3
|
+
## 0.69.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 41bd56a: Correctness fixes from the post-Phase-3 polish plan.
|
|
8
|
+
|
|
9
|
+
**plugin-consent — granular consent categories.** Consent is no longer binary: visitors can grant individual categories (`analytics`, `marketing`, `functional`, `preferences`) via a new "Manage preferences" expansion in `ConsentBanner`. Custom selections persist as JSON in the same `am_cookie_consent` key; `all`/`essential` still persist as legacy strings so previously shipped consent gates keep working, and legacy stored values migrate transparently on read. New exports: `CONSENT_CATEGORIES`, `ConsentCategory`, `ConsentState`, `readConsentState`, `writeConsentState`, `setConsentCategories`, `hasCategoryConsent`, `categoriesForLevel`, `normalizeConsentSelection`, `waitForConsentState`. `useConsent` now reports `categories` and an `allows(category)` helper; `loadConsentGatedAnalytics` gates GA4/Google Ads on `analytics` and Meta Pixel on `marketing` when passed a consent state.
|
|
10
|
+
|
|
11
|
+
**cms-core — script-tag consent gate honors categories.** `wrapCodeInConsentGate` now grants when the visitor accepted all cookies _or_ granted the tag's specific category through a custom selection, instead of requiring full consent for every gated tag. Legacy stored `'all'` strings still pass.
|
|
12
|
+
|
|
13
|
+
**cms-admin — router query strings + idle-logout warning.** `useAdminRouter` now includes the query string in `currentPath` on mount and popstate, so deep links like `/pages/new?parent=<id>` and `/settings?tab=users` survive hard reloads and back/forward. New `parseRouteQuery` helper and `search` return value; the command palette's `?selected=` deep links now open the media detail panel and user drawer. `useIdleLogout` gains a warning stage — one minute before idle sign-out a toast offers "Stay signed in" to reset the clock.
|
|
14
|
+
|
|
3
15
|
## 0.68.0
|
|
4
16
|
|
|
5
17
|
### Minor Changes
|
package/dist/AdminRoot.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminRoot.d.ts","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"AA4CA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uCAAuC,CAAA;AAe9C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,GAAG,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;KACjB,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACnD,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,KAClB,OAAO,CAAC;QACX,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB,eAAe,CAAC,EAAE,MAAM,CAAA;KACzB,CAAC,CAAA;IACF,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CACb,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,KACT,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAClD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;IACxF;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;IAC1C,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;
|
|
1
|
+
{"version":3,"file":"AdminRoot.d.ts","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"AA4CA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uCAAuC,CAAA;AAe9C,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,GAAG,CAAA;IACX,OAAO,EAAE,GAAG,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB;;;;;;;;OAQG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE;QACvB,IAAI,EAAE,MAAM,CAAA;QACZ,KAAK,EAAE,MAAM,CAAA;QACb,QAAQ,EAAE,MAAM,CAAA;KACjB,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IACnD,OAAO,CAAC,EAAE,CACR,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,MAAM,EAChB,YAAY,CAAC,EAAE,MAAM,KAClB,OAAO,CAAC;QACX,OAAO,EAAE,OAAO,CAAA;QAChB,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,YAAY,CAAC,EAAE,OAAO,CAAA;QACtB,eAAe,CAAC,EAAE,MAAM,CAAA;KACzB,CAAC,CAAA;IACF,2EAA2E;IAC3E,YAAY,CAAC,EAAE,CACb,eAAe,EAAE,MAAM,EACvB,IAAI,EAAE,MAAM,KACT,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAA;IAClD;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IACrC,aAAa,CAAC,EAAE;QAAE,QAAQ,EAAE,WAAW,GAAG,WAAW,GAAG,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;IACxF;;;;;;;OAOG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;IAC1C,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAoyBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAoB9C"}
|
package/dist/AdminRoot.js
CHANGED
|
@@ -5,7 +5,7 @@ import * as Dialog from '@radix-ui/react-dialog';
|
|
|
5
5
|
import { toast } from 'sonner';
|
|
6
6
|
import { Layout } from './layout/Layout.js';
|
|
7
7
|
import { adminPortalContainer } from './lib/portal-container.js';
|
|
8
|
-
import { useAdminRouter } from './router/index.js';
|
|
8
|
+
import { useAdminRouter, parseRouteQuery } from './router/index.js';
|
|
9
9
|
import { cmsApi, ensureCsrfToken } from './lib/api.js';
|
|
10
10
|
import { setDocumentFavicon, BRAND_UPDATED_EVENT } from './lib/favicon.js';
|
|
11
11
|
import { registerSectionTypes, resetCustomSectionTypes, resolveCustomSectionTypes, } from '@actuate-media/cms-core/page-sections';
|
|
@@ -122,10 +122,26 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
122
122
|
cancelled = true;
|
|
123
123
|
};
|
|
124
124
|
}, [session]);
|
|
125
|
-
useIdleLogout({
|
|
125
|
+
const { stayActive } = useIdleLogout({
|
|
126
126
|
enabled: Boolean(session && sessionPolicy?.idleLogoutEnabled),
|
|
127
127
|
timeoutMs: (sessionPolicy?.timeoutHours ?? 0) * 3_600_000,
|
|
128
128
|
onIdle: handleLogout,
|
|
129
|
+
// One-minute heads-up so the sign-out is never a surprise. Any activity
|
|
130
|
+
// (or the toast action) resets the clock and dismisses the warning.
|
|
131
|
+
warningMs: 60_000,
|
|
132
|
+
onWarn: () => {
|
|
133
|
+
toast.warning('You will be signed out in about a minute due to inactivity.', {
|
|
134
|
+
id: 'idle-logout-warning',
|
|
135
|
+
duration: 60_000,
|
|
136
|
+
action: {
|
|
137
|
+
label: 'Stay signed in',
|
|
138
|
+
onClick: () => stayActive(),
|
|
139
|
+
},
|
|
140
|
+
});
|
|
141
|
+
},
|
|
142
|
+
onWarnCancelled: () => {
|
|
143
|
+
toast.dismiss('idle-logout-warning');
|
|
144
|
+
},
|
|
129
145
|
});
|
|
130
146
|
useBranding(config);
|
|
131
147
|
useAppearanceBootstrap(session);
|
|
@@ -222,8 +238,9 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
222
238
|
}
|
|
223
239
|
const resetMatch = matchRoute('/reset-password');
|
|
224
240
|
if (resetMatch) {
|
|
225
|
-
|
|
226
|
-
|
|
241
|
+
// currentPath carries the query string (router syncs it from the URL on
|
|
242
|
+
// mount/popstate), so the emailed `?token=` deep link survives reloads.
|
|
243
|
+
return (_jsx(ResetPassword, { onNavigate: navigate, token: parseRouteQuery(currentPath).get('token') }));
|
|
227
244
|
}
|
|
228
245
|
if (onLogin) {
|
|
229
246
|
// Thread `config.admin.branding` through so the login screen matches the
|
|
@@ -241,7 +258,7 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
241
258
|
// so they cannot be shadowed by a consumer-defined collection (e.g.
|
|
242
259
|
// a collection slugged `media`, `users`, or `settings`).
|
|
243
260
|
if (matchRoute('/media')) {
|
|
244
|
-
return _jsx(MediaBrowser, { onNavigate: navigate });
|
|
261
|
+
return _jsx(MediaBrowser, { onNavigate: navigate, currentPath: currentPath });
|
|
245
262
|
}
|
|
246
263
|
// ─── Posts area ────────────────────────────────────────────────
|
|
247
264
|
// These take priority over the per-collection `/<slug>` matcher
|
|
@@ -304,7 +321,7 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
304
321
|
// "Add sub-page" in the Pages tree view arrives with the parent id
|
|
305
322
|
// in the query string (`/pages/new?parent=<id>`); matchRoute ignores
|
|
306
323
|
// the query so it's parsed here and preselected in the editor.
|
|
307
|
-
const newPageQuery =
|
|
324
|
+
const newPageQuery = parseRouteQuery(currentPath);
|
|
308
325
|
return (_jsx(PageSectionEditor, { initialParentId: newPageQuery.get('parent'), config: config, session: session, onNavigate: navigate, onOpenPreview: openPreview }));
|
|
309
326
|
}
|
|
310
327
|
const pagePreview = matchRoute('/pages/:id/preview');
|
|
@@ -377,13 +394,13 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
377
394
|
// Users + API Keys moved into the Settings view as tabs. The legacy
|
|
378
395
|
// top-level routes still resolve — they just land on the matching tab.
|
|
379
396
|
if (matchRoute('/users')) {
|
|
380
|
-
return _jsx(Settings, { onNavigate: navigate, config: config, session: session, initialTab: "users" });
|
|
397
|
+
return (_jsx(Settings, { onNavigate: navigate, config: config, session: session, initialTab: "users", currentPath: currentPath }));
|
|
381
398
|
}
|
|
382
399
|
if (matchRoute('/api-keys')) {
|
|
383
|
-
return (_jsx(Settings, { onNavigate: navigate, config: config, session: session, initialTab: "api-keys" }));
|
|
400
|
+
return (_jsx(Settings, { onNavigate: navigate, config: config, session: session, initialTab: "api-keys", currentPath: currentPath }));
|
|
384
401
|
}
|
|
385
402
|
if (matchRoute('/settings')) {
|
|
386
|
-
return _jsx(Settings, { onNavigate: navigate, config: config, session: session });
|
|
403
|
+
return (_jsx(Settings, { onNavigate: navigate, config: config, session: session, currentPath: currentPath }));
|
|
387
404
|
}
|
|
388
405
|
if (matchRoute('/profile')) {
|
|
389
406
|
return _jsx(Profile, { onNavigate: navigate, session: session });
|
|
@@ -458,7 +475,8 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
|
|
|
458
475
|
// Preview routes render as standalone pages (no sidebar/header) so a
|
|
459
476
|
// new-tab preview looks like the real published page rather than an
|
|
460
477
|
// embedded admin view. Everything else gets the full admin chrome.
|
|
461
|
-
|
|
478
|
+
// Query string is stripped — currentPath carries it after reloads.
|
|
479
|
+
if (currentPath.split('?')[0].endsWith('/preview')) {
|
|
462
480
|
return (_jsx("div", { className: "bg-background h-full min-h-screen", children: _jsx(ErrorBoundary, { children: renderView() }) }));
|
|
463
481
|
}
|
|
464
482
|
return (_jsxs(Layout, { config: config, session: session, currentPath: currentPath, onNavigate: navigate, onLogout: handleLogout, children: [_jsx(ErrorBoundary, { children: renderView() }), _jsx(ShortcutHelp, { open: shortcutHelpOpen, onClose: () => setShortcutHelpOpen(false) })] }));
|
|
@@ -555,7 +573,9 @@ function useAdminPageTitle(config, currentPath) {
|
|
|
555
573
|
const baseName = branding?.title ?? (branding?.name ? `${branding.name} Admin` : null);
|
|
556
574
|
if (!baseName)
|
|
557
575
|
return;
|
|
558
|
-
|
|
576
|
+
// Strip the query so `/settings?tab=users` titles as "Settings".
|
|
577
|
+
const pathname = currentPath.split('?')[0].split('#')[0];
|
|
578
|
+
const segment = pathname === '/' ? 'Dashboard' : pathname.split('/').filter(Boolean)[0];
|
|
559
579
|
const pageName = segment ? segment.charAt(0).toUpperCase() + segment.slice(1) : 'Dashboard';
|
|
560
580
|
document.title = `${pageName} — ${baseName}`;
|
|
561
581
|
}, [config, currentPath]);
|
package/dist/AdminRoot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AdminRoot.js","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"AdminRoot.js","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,17 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
3
3
|
import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
|
|
4
4
|
import { render } from '@testing-library/react';
|
|
5
5
|
import { useIdleLogout } from '../../hooks/useIdleLogout.js';
|
|
6
|
-
function Harness({ enabled, timeoutMs, onIdle, }) {
|
|
7
|
-
|
|
6
|
+
function Harness({ enabled, timeoutMs, onIdle, warningMs, onWarn, onWarnCancelled, stayActiveRef, }) {
|
|
7
|
+
const { stayActive } = useIdleLogout({
|
|
8
|
+
enabled,
|
|
9
|
+
timeoutMs,
|
|
10
|
+
onIdle,
|
|
11
|
+
warningMs,
|
|
12
|
+
onWarn,
|
|
13
|
+
onWarnCancelled,
|
|
14
|
+
});
|
|
15
|
+
if (stayActiveRef)
|
|
16
|
+
stayActiveRef.current = stayActive;
|
|
8
17
|
return null;
|
|
9
18
|
}
|
|
10
19
|
const TIMEOUT_MS = 60_000;
|
|
@@ -60,5 +69,51 @@ describe('useIdleLogout', () => {
|
|
|
60
69
|
document.dispatchEvent(new Event('visibilitychange'));
|
|
61
70
|
expect(onIdle).toHaveBeenCalledTimes(1);
|
|
62
71
|
});
|
|
72
|
+
describe('warning window', () => {
|
|
73
|
+
const WARNING_MS = 20_000;
|
|
74
|
+
it('fires onWarn once inside the warning window, then onIdle at the deadline', () => {
|
|
75
|
+
const onIdle = vi.fn();
|
|
76
|
+
const onWarn = vi.fn();
|
|
77
|
+
render(_jsx(Harness, { enabled: true, timeoutMs: TIMEOUT_MS, warningMs: WARNING_MS, onIdle: onIdle, onWarn: onWarn }));
|
|
78
|
+
// Before the warning window: nothing.
|
|
79
|
+
vi.advanceTimersByTime(TIMEOUT_MS - WARNING_MS - 5_000);
|
|
80
|
+
expect(onWarn).not.toHaveBeenCalled();
|
|
81
|
+
// Inside the window: warn exactly once, no logout yet.
|
|
82
|
+
vi.advanceTimersByTime(10_000);
|
|
83
|
+
expect(onWarn).toHaveBeenCalledTimes(1);
|
|
84
|
+
expect(onIdle).not.toHaveBeenCalled();
|
|
85
|
+
// Deadline: logout, and the warning doesn't re-fire.
|
|
86
|
+
vi.advanceTimersByTime(TIMEOUT_MS);
|
|
87
|
+
expect(onIdle).toHaveBeenCalledTimes(1);
|
|
88
|
+
expect(onWarn).toHaveBeenCalledTimes(1);
|
|
89
|
+
});
|
|
90
|
+
it('activity after the warning cancels it and resets the clock', () => {
|
|
91
|
+
const onIdle = vi.fn();
|
|
92
|
+
const onWarn = vi.fn();
|
|
93
|
+
const onWarnCancelled = vi.fn();
|
|
94
|
+
render(_jsx(Harness, { enabled: true, timeoutMs: TIMEOUT_MS, warningMs: WARNING_MS, onIdle: onIdle, onWarn: onWarn, onWarnCancelled: onWarnCancelled }));
|
|
95
|
+
vi.advanceTimersByTime(TIMEOUT_MS - 10_000);
|
|
96
|
+
expect(onWarn).toHaveBeenCalledTimes(1);
|
|
97
|
+
window.dispatchEvent(new Event('keydown'));
|
|
98
|
+
expect(onWarnCancelled).toHaveBeenCalledTimes(1);
|
|
99
|
+
// The clock restarted: warn again on the next quiet cycle, no logout yet.
|
|
100
|
+
vi.advanceTimersByTime(TIMEOUT_MS - 10_000);
|
|
101
|
+
expect(onWarn).toHaveBeenCalledTimes(2);
|
|
102
|
+
expect(onIdle).not.toHaveBeenCalled();
|
|
103
|
+
});
|
|
104
|
+
it('stayActive resets the clock like real activity', () => {
|
|
105
|
+
const onIdle = vi.fn();
|
|
106
|
+
const onWarn = vi.fn();
|
|
107
|
+
const onWarnCancelled = vi.fn();
|
|
108
|
+
const stayActiveRef = { current: null };
|
|
109
|
+
render(_jsx(Harness, { enabled: true, timeoutMs: TIMEOUT_MS, warningMs: WARNING_MS, onIdle: onIdle, onWarn: onWarn, onWarnCancelled: onWarnCancelled, stayActiveRef: stayActiveRef }));
|
|
110
|
+
vi.advanceTimersByTime(TIMEOUT_MS - 10_000);
|
|
111
|
+
expect(onWarn).toHaveBeenCalledTimes(1);
|
|
112
|
+
stayActiveRef.current?.();
|
|
113
|
+
expect(onWarnCancelled).toHaveBeenCalledTimes(1);
|
|
114
|
+
vi.advanceTimersByTime(TIMEOUT_MS - 15_000);
|
|
115
|
+
expect(onIdle).not.toHaveBeenCalled();
|
|
116
|
+
});
|
|
117
|
+
});
|
|
63
118
|
});
|
|
64
119
|
//# sourceMappingURL=useIdleLogout.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIdleLogout.test.js","sourceRoot":"","sources":["../../../src/__tests__/hooks/useIdleLogout.test.tsx"],"names":[],"mappings":";AAAA,gCAAgC;AAChC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAA;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAA;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAA;AAE5D,SAAS,OAAO,CAAC,EACf,OAAO,EACP,SAAS,EACT,MAAM,
|
|
1
|
+
{"version":3,"file":"useIdleLogout.test.js","sourceRoot":"","sources":["../../../src/__tests__/hooks/useIdleLogout.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-string.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/router/query-string.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// @vitest-environment happy-dom
|
|
2
|
+
import { describe, expect, it } from 'vitest';
|
|
3
|
+
import { act, renderHook } from '@testing-library/react';
|
|
4
|
+
import { parseRouteQuery, useAdminRouter } from '../../router/index.js';
|
|
5
|
+
// The admin router must carry the query string in `currentPath` so deep links
|
|
6
|
+
// like `/pages/new?parent=<id>` survive hard reloads and back/forward — not
|
|
7
|
+
// just in-app `navigate()` calls (which always carried it).
|
|
8
|
+
describe('useAdminRouter query strings', () => {
|
|
9
|
+
it('includes the query string when syncing from the browser URL on mount', () => {
|
|
10
|
+
window.history.pushState({}, '', '/admin/pages/new?parent=abc');
|
|
11
|
+
const { result } = renderHook(() => useAdminRouter('/admin', '/pages/new'));
|
|
12
|
+
expect(result.current.currentPath).toBe('/pages/new?parent=abc');
|
|
13
|
+
expect(result.current.search).toBe('?parent=abc');
|
|
14
|
+
// matchRoute strips the query, so route patterns still match.
|
|
15
|
+
expect(result.current.matchRoute('/pages/new')).toEqual({});
|
|
16
|
+
expect(parseRouteQuery(result.current.currentPath).get('parent')).toBe('abc');
|
|
17
|
+
});
|
|
18
|
+
it('carries the query string through popstate (back/forward)', () => {
|
|
19
|
+
window.history.pushState({}, '', '/admin/settings?tab=users');
|
|
20
|
+
const { result } = renderHook(() => useAdminRouter('/admin', '/'));
|
|
21
|
+
act(() => {
|
|
22
|
+
window.history.pushState({}, '', '/admin/seo?tab=audit&issueId=i1');
|
|
23
|
+
window.dispatchEvent(new PopStateEvent('popstate'));
|
|
24
|
+
});
|
|
25
|
+
expect(result.current.currentPath).toBe('/seo?tab=audit&issueId=i1');
|
|
26
|
+
expect(result.current.search).toBe('?tab=audit&issueId=i1');
|
|
27
|
+
expect(result.current.matchRoute('/seo')).toEqual({});
|
|
28
|
+
expect(result.current.matchRoute('/seo/:id')).toBeNull();
|
|
29
|
+
});
|
|
30
|
+
it('handles a query on the admin root path', () => {
|
|
31
|
+
window.history.pushState({}, '', '/admin?foo=1');
|
|
32
|
+
const { result } = renderHook(() => useAdminRouter('/admin', '/'));
|
|
33
|
+
expect(result.current.currentPath).toBe('/?foo=1');
|
|
34
|
+
expect(result.current.matchRoute('/')).toEqual({});
|
|
35
|
+
});
|
|
36
|
+
it('parseRouteQuery accepts full paths, raw search strings, and hashes', () => {
|
|
37
|
+
expect(parseRouteQuery('/pages/new?parent=abc').get('parent')).toBe('abc');
|
|
38
|
+
expect(parseRouteQuery('?tab=users&selected=u1').get('selected')).toBe('u1');
|
|
39
|
+
expect(parseRouteQuery('/pages').get('parent')).toBeNull();
|
|
40
|
+
expect(parseRouteQuery('').get('parent')).toBeNull();
|
|
41
|
+
expect(parseRouteQuery('/seo?tab=audit#section').get('tab')).toBe('audit');
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
//# sourceMappingURL=query-string.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-string.test.js","sourceRoot":"","sources":["../../../src/__tests__/router/query-string.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users-selected-deeplink.render.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/views/users-selected-deeplink.render.test.tsx"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
// @vitest-environment happy-dom
|
|
3
|
+
import { beforeEach, describe, expect, it, vi } from 'vitest';
|
|
4
|
+
import { render, screen } from '@testing-library/react';
|
|
5
|
+
/**
|
|
6
|
+
* Render tests for the `?selected=<userId>` deep link written by the command
|
|
7
|
+
* palette (`/users?selected=<id>`): once the member list loads, the matching
|
|
8
|
+
* member's detail drawer opens. Unknown ids are tolerated — no drawer, no crash.
|
|
9
|
+
*/
|
|
10
|
+
const MEMBER = {
|
|
11
|
+
id: 'u1',
|
|
12
|
+
name: 'Priya Nair',
|
|
13
|
+
email: 'priya@actuatemedia.com',
|
|
14
|
+
initials: 'PN',
|
|
15
|
+
role: 'EDITOR',
|
|
16
|
+
roleName: 'Editor',
|
|
17
|
+
status: 'active',
|
|
18
|
+
mfaEnabled: true,
|
|
19
|
+
externalDomain: false,
|
|
20
|
+
lastLoginAt: null,
|
|
21
|
+
lastActiveAt: null,
|
|
22
|
+
acceptedInviteAt: new Date('2026-01-02').toISOString(),
|
|
23
|
+
createdAt: new Date('2026-01-01').toISOString(),
|
|
24
|
+
isCurrentUser: false,
|
|
25
|
+
};
|
|
26
|
+
const DETAIL = {
|
|
27
|
+
...MEMBER,
|
|
28
|
+
avatarUrl: null,
|
|
29
|
+
mfaRequired: false,
|
|
30
|
+
passwordSet: true,
|
|
31
|
+
forcePasswordReset: false,
|
|
32
|
+
failedLoginCount: 0,
|
|
33
|
+
lockedAt: null,
|
|
34
|
+
suspendedAt: null,
|
|
35
|
+
authProvider: null,
|
|
36
|
+
oauthProviders: [],
|
|
37
|
+
ssoOnly: false,
|
|
38
|
+
emailVerified: true,
|
|
39
|
+
invitedBy: null,
|
|
40
|
+
contentOwnedCount: 4,
|
|
41
|
+
};
|
|
42
|
+
const STATS = {
|
|
43
|
+
members: 1,
|
|
44
|
+
pendingInvites: 0,
|
|
45
|
+
admins: 0,
|
|
46
|
+
seatsUsed: 1,
|
|
47
|
+
seatLimit: null,
|
|
48
|
+
seatsAvailable: null,
|
|
49
|
+
emailConfigured: true,
|
|
50
|
+
};
|
|
51
|
+
const { cmsApi } = vi.hoisted(() => ({ cmsApi: vi.fn() }));
|
|
52
|
+
vi.mock('../../lib/api.js', () => ({ cmsApi }));
|
|
53
|
+
cmsApi.mockImplementation(async (endpoint) => {
|
|
54
|
+
if (!endpoint)
|
|
55
|
+
return { data: null, status: 200 };
|
|
56
|
+
if (endpoint === '/invites')
|
|
57
|
+
return { data: [], status: 200 };
|
|
58
|
+
if (endpoint === '/users/stats')
|
|
59
|
+
return { data: STATS, status: 200 };
|
|
60
|
+
if (endpoint === '/access-review')
|
|
61
|
+
return { data: [], status: 200 };
|
|
62
|
+
if (endpoint.startsWith('/users/u1'))
|
|
63
|
+
return { data: DETAIL, status: 200 };
|
|
64
|
+
if (endpoint === '/users' || endpoint.startsWith('/users?'))
|
|
65
|
+
return { data: [MEMBER], status: 200 };
|
|
66
|
+
return { data: null, status: 200 };
|
|
67
|
+
});
|
|
68
|
+
const { Users } = await import('../../views/Users.js');
|
|
69
|
+
describe('Users ?selected= deep link', () => {
|
|
70
|
+
beforeEach(() => cmsApi.mockClear());
|
|
71
|
+
it('opens the detail drawer for the selected member once the list loads', async () => {
|
|
72
|
+
render(_jsx(Users, { currentPath: "/users?selected=u1" }));
|
|
73
|
+
// "Content owned" only renders inside the detail drawer's overview tab.
|
|
74
|
+
expect(await screen.findByText('Content owned')).toBeTruthy();
|
|
75
|
+
expect(cmsApi.mock.calls.some(([endpoint]) => String(endpoint).startsWith('/users/u1'))).toBe(true);
|
|
76
|
+
});
|
|
77
|
+
it('ignores a selected id that matches no member', async () => {
|
|
78
|
+
render(_jsx(Users, { currentPath: "/users?selected=does-not-exist" }));
|
|
79
|
+
// List renders normally…
|
|
80
|
+
expect(await screen.findByText('priya@actuatemedia.com')).toBeTruthy();
|
|
81
|
+
// …but no drawer opens and no detail fetch is issued.
|
|
82
|
+
expect(screen.queryByText('Content owned')).toBeNull();
|
|
83
|
+
expect(cmsApi.mock.calls.some(([endpoint]) => String(endpoint).includes('/users/does-not-exist'))).toBe(false);
|
|
84
|
+
});
|
|
85
|
+
it('renders without a drawer when there is no query at all', async () => {
|
|
86
|
+
render(_jsx(Users, { currentPath: "/users" }));
|
|
87
|
+
expect(await screen.findByText('priya@actuatemedia.com')).toBeTruthy();
|
|
88
|
+
expect(screen.queryByText('Content owned')).toBeNull();
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
//# sourceMappingURL=users-selected-deeplink.render.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"users-selected-deeplink.render.test.js","sourceRoot":"","sources":["../../../src/__tests__/views/users-selected-deeplink.render.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,23 @@
|
|
|
1
|
+
export interface UseIdleLogoutOptions {
|
|
2
|
+
enabled: boolean;
|
|
3
|
+
timeoutMs: number;
|
|
4
|
+
onIdle: () => void;
|
|
5
|
+
/**
|
|
6
|
+
* How long before the idle deadline to fire `onWarn` (so the UI can show a
|
|
7
|
+
* "you're about to be signed out" prompt). Ignored unless `onWarn` is set
|
|
8
|
+
* or when it doesn't fit inside `timeoutMs`.
|
|
9
|
+
*/
|
|
10
|
+
warningMs?: number;
|
|
11
|
+
/** Fired once when the session enters the warning window. */
|
|
12
|
+
onWarn?: () => void;
|
|
13
|
+
/** Fired when activity resumes after `onWarn` (dismiss the prompt). */
|
|
14
|
+
onWarnCancelled?: () => void;
|
|
15
|
+
}
|
|
1
16
|
/**
|
|
2
17
|
* Signs the user out after `timeoutMs` of no user activity, when enabled by
|
|
3
|
-
* the Settings → Security "Idle auto-logout" policy.
|
|
18
|
+
* the Settings → Security "Idle auto-logout" policy. Optionally fires a
|
|
19
|
+
* warning `warningMs` before the deadline so the UI can offer a
|
|
20
|
+
* "Stay signed in" action (the returned `stayActive` resets the clock).
|
|
4
21
|
*
|
|
5
22
|
* Deliberately lightweight: activity events only stamp a ref (no state, no
|
|
6
23
|
* re-renders), and a single coarse interval compares the last-activity stamp
|
|
@@ -10,9 +27,7 @@
|
|
|
10
27
|
*
|
|
11
28
|
* All listeners and the interval are torn down on unmount or when disabled.
|
|
12
29
|
*/
|
|
13
|
-
export declare function useIdleLogout(options: {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
onIdle: () => void;
|
|
17
|
-
}): void;
|
|
30
|
+
export declare function useIdleLogout(options: UseIdleLogoutOptions): {
|
|
31
|
+
stayActive: () => void;
|
|
32
|
+
};
|
|
18
33
|
//# sourceMappingURL=useIdleLogout.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIdleLogout.d.ts","sourceRoot":"","sources":["../../src/hooks/useIdleLogout.ts"],"names":[],"mappings":"AAOA
|
|
1
|
+
{"version":3,"file":"useIdleLogout.d.ts","sourceRoot":"","sources":["../../src/hooks/useIdleLogout.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;IACnB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,IAAI,CAAA;CAC7B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG;IAAE,UAAU,EAAE,MAAM,IAAI,CAAA;CAAE,CA2FvF"}
|