@prenta/admin 2.3.0 → 2.5.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 (40) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/AdminRoot.d.ts.map +1 -1
  3. package/dist/AdminRoot.js +4 -0
  4. package/dist/AdminRoot.js.map +1 -1
  5. package/dist/__tests__/components/document-locale-switcher.test.js +17 -0
  6. package/dist/__tests__/components/document-locale-switcher.test.js.map +1 -1
  7. package/dist/components/DocumentLocaleSwitcher.d.ts.map +1 -1
  8. package/dist/components/DocumentLocaleSwitcher.js +30 -8
  9. package/dist/components/DocumentLocaleSwitcher.js.map +1 -1
  10. package/dist/router/admin-routes.d.ts.map +1 -1
  11. package/dist/router/admin-routes.js +1 -0
  12. package/dist/router/admin-routes.js.map +1 -1
  13. package/dist/views/ApiKeys.d.ts.map +1 -1
  14. package/dist/views/ApiKeys.js +2 -1
  15. package/dist/views/ApiKeys.js.map +1 -1
  16. package/dist/views/McpConsent.d.ts +4 -0
  17. package/dist/views/McpConsent.d.ts.map +1 -0
  18. package/dist/views/McpConsent.js +48 -0
  19. package/dist/views/McpConsent.js.map +1 -0
  20. package/dist/views/settings/McpSetupCard.d.ts +2 -0
  21. package/dist/views/settings/McpSetupCard.d.ts.map +1 -0
  22. package/dist/views/settings/McpSetupCard.js +48 -0
  23. package/dist/views/settings/McpSetupCard.js.map +1 -0
  24. package/dist/views/settings/PhiSafeguardsCard.d.ts +9 -0
  25. package/dist/views/settings/PhiSafeguardsCard.d.ts.map +1 -0
  26. package/dist/views/settings/PhiSafeguardsCard.js +70 -0
  27. package/dist/views/settings/PhiSafeguardsCard.js.map +1 -0
  28. package/dist/views/settings/SecurityTab.d.ts.map +1 -1
  29. package/dist/views/settings/SecurityTab.js +2 -1
  30. package/dist/views/settings/SecurityTab.js.map +1 -1
  31. package/package.json +3 -3
  32. package/src/AdminRoot.tsx +5 -0
  33. package/src/__tests__/components/document-locale-switcher.test.tsx +26 -0
  34. package/src/components/DocumentLocaleSwitcher.tsx +34 -0
  35. package/src/router/admin-routes.ts +1 -0
  36. package/src/views/ApiKeys.tsx +3 -1
  37. package/src/views/McpConsent.tsx +101 -0
  38. package/src/views/settings/McpSetupCard.tsx +95 -0
  39. package/src/views/settings/PhiSafeguardsCard.tsx +85 -0
  40. package/src/views/settings/SecurityTab.tsx +3 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # @actuate-media/cms-admin
2
2
 
3
+ ## 2.5.0
4
+
5
+ ### Minor Changes
6
+
7
+ - 5c668a0: Content API keys use the owner's editorial role, capped at editor, and a privacy setting can hide lead contents. Sites expose https://<site>/mcp with OAuth for Claude, ChatGPT, and Grok, and the same URL accepts an API key. Settings shows the URL and connected apps. New projects scaffold the same endpoint. Preview links use the document's public path.
8
+
9
+ ## 2.4.0
10
+
11
+ ### Minor Changes
12
+
13
+ - b9033ec: AI localization writes a draft in the target locale and leaves publish to the review workflow. The request is governed by the localization feature budget.
14
+
3
15
  ## 2.3.0
4
16
 
5
17
  ### Minor Changes
@@ -1 +1 @@
1
- {"version":3,"file":"AdminRoot.d.ts","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"AAgEA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uCAAuC,CAAA;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAE7D,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;IAC1C;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAysBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAsB9C"}
1
+ {"version":3,"file":"AdminRoot.d.ts","sourceRoot":"","sources":["../src/AdminRoot.tsx"],"names":[],"mappings":"AAiEA,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,uCAAuC,CAAA;AAE9C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAE7D,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;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA4BG;IACH,gBAAgB,CAAC,EAAE,uBAAuB,CAAA;IAC1C;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,gBAAgB,CAAA;IAC9B,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AA6sBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,2CAsB9C"}
package/dist/AdminRoot.js CHANGED
@@ -12,6 +12,7 @@ import { cmsApi, ensureCsrfToken } from './lib/api.js';
12
12
  import { setDocumentFavicon, BRAND_UPDATED_EVENT } from './lib/favicon.js';
13
13
  import { registerSectionTypes, resetCustomSectionTypes, resolveCustomSectionTypes, registerSectionTemplates, registerSectionPathTemplates, resetSectionTemplates, } from '@prenta/core/page-sections';
14
14
  import { Dashboard } from './views/Dashboard.js';
15
+ import { McpConsent } from './views/McpConsent.js';
15
16
  import { SEO_DEEP_PATHS, seoTabForPath } from './views/seo/seo-routes.js';
16
17
  import { CollectionList, DocumentEdit, FormDeliveries, FormEditor, FormEntries, FormSubmissions, Forms, MediaBrowser, NewPostPicker, NewPostTypeInstructions, PageSectionEditor, PageTagManager, PagesListView, PostSectionEditor, PostTemplateEditor, PostTypeEditor, PostTypesView, PostsListView, Jobs, Profile, SEO, ScriptTags, Settings, Trash, ViewFallback, } from './views/lazy-views.js';
17
18
  import { SetupWizard } from './views/SetupWizard.js';
@@ -339,6 +340,9 @@ function AdminShell({ config, session, basePath = '/admin', initialPath = '/', l
339
340
  if (matchRoute('/trash')) {
340
341
  return _jsx(Trash, { onNavigate: navigate, config: config });
341
342
  }
343
+ if (matchRoute('/mcp/consent')) {
344
+ return _jsx(McpConsent, { currentPath: currentPath });
345
+ }
342
346
  if (matchRoute('/jobs')) {
343
347
  return _jsx(Jobs, { onNavigate: navigate });
344
348
  }
@@ -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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"}
@@ -74,5 +74,22 @@ describe('DocumentLocaleSwitcher', () => {
74
74
  body: JSON.stringify({ locale: 'es' }),
75
75
  });
76
76
  });
77
+ it('asks for an AI draft and does not publish it', async () => {
78
+ const onNavigate = renderSwitcher();
79
+ await waitFor(() => expect(screen.getByRole('button', { name: 'Translations, English' })).toBeTruthy());
80
+ cmsApiMock.mockResolvedValueOnce({
81
+ data: { id: 'page-es', locale: 'es', created: true, applied: true, status: 'DRAFT' },
82
+ status: 201,
83
+ });
84
+ fireEvent.keyDown(screen.getByRole('button', { name: 'Translations, English' }), {
85
+ key: 'Enter',
86
+ });
87
+ fireEvent.click(screen.getByRole('menuitem', { name: 'Translate to ES' }));
88
+ await waitFor(() => expect(onNavigate).toHaveBeenCalledWith('/pages/page-es/edit'));
89
+ const body = JSON.parse((cmsApiMock.mock.calls.at(-1)?.[1]).body);
90
+ expect(cmsApiMock).toHaveBeenLastCalledWith('/collections/pages/page-1/translations/localize', expect.objectContaining({ method: 'POST' }));
91
+ expect(body).toEqual({ locale: 'es' });
92
+ expect(body).not.toHaveProperty('status');
93
+ });
77
94
  });
78
95
  //# sourceMappingURL=document-locale-switcher.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"document-locale-switcher.test.js","sourceRoot":"","sources":["../../../src/__tests__/components/document-locale-switcher.test.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document-locale-switcher.test.js","sourceRoot":"","sources":["../../../src/__tests__/components/document-locale-switcher.test.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentLocaleSwitcher.d.ts","sourceRoot":"","sources":["../../src/components/DocumentLocaleSwitcher.tsx"],"names":[],"mappings":"AA4BA,UAAU,2BAA2B;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAA;IAClC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,GACX,EAAE,2BAA2B,kDA4F7B"}
1
+ {"version":3,"file":"DocumentLocaleSwitcher.d.ts","sourceRoot":"","sources":["../../src/components/DocumentLocaleSwitcher.tsx"],"names":[],"mappings":"AA4BA,UAAU,2BAA2B;IACnC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,OAAO,CAAA;IAClB,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAA;IAClC,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACnC;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,EACrC,UAAU,EACV,UAAU,EACV,SAAS,EACT,UAAU,EACV,UAAU,GACX,EAAE,2BAA2B,kDA8H7B"}
@@ -36,6 +36,19 @@ export function DocumentLocaleSwitcher({ collection, documentId, canCreate, edit
36
36
  return null;
37
37
  const current = locales.find((locale) => locale.code === currentLocale);
38
38
  const label = current?.code.toUpperCase() ?? 'Locale';
39
+ async function translate(code) {
40
+ if (!canCreate || busy)
41
+ return;
42
+ setBusy(true);
43
+ const result = await cmsApi(`/collections/${encodeURIComponent(collection)}/${encodeURIComponent(documentId)}/translations/localize`, { method: 'POST', body: JSON.stringify({ locale: code }) });
44
+ setBusy(false);
45
+ if (result.error || !result.data?.id) {
46
+ toast.error(result.error ?? 'Could not translate this document');
47
+ return;
48
+ }
49
+ toast.success('Saved as a draft. Submit it for review before publishing.');
50
+ onNavigate(editorPath(result.data.id));
51
+ }
39
52
  async function choose(code) {
40
53
  const sibling = siblings.find((row) => row.locale === code);
41
54
  if (sibling) {
@@ -54,13 +67,22 @@ export function DocumentLocaleSwitcher({ collection, documentId, canCreate, edit
54
67
  }
55
68
  onNavigate(editorPath(result.data.id));
56
69
  }
57
- return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { type: "button", disabled: busy, "aria-label": `Translations, ${current?.label ?? 'locale not set'}`, title: "Open or create a translation", className: "text-muted-foreground hover:text-foreground hover:bg-accent inline-flex shrink-0 items-center gap-1 rounded-lg px-2 py-1 text-sm disabled:cursor-not-allowed disabled:opacity-50", children: [_jsx(Globe, { className: "h-4 w-4", "aria-hidden": true }), label, _jsx(ChevronDown, { className: "h-3.5 w-3.5", "aria-hidden": true })] }) }), _jsx(DropdownMenu.Portal, { container: adminPortalContainer(), children: _jsx(DropdownMenu.Content, { align: "start", sideOffset: 6, className: "border-border bg-popover z-[120] min-w-40 rounded-lg border p-1 shadow-md", children: locales.map((locale) => {
58
- const sibling = siblings.find((row) => row.locale === locale.code);
59
- const isCurrent = locale.code === currentLocale;
60
- const canChoose = Boolean(sibling) || canCreate;
61
- return (_jsxs(DropdownMenu.Item, { disabled: !canChoose || busy, onSelect: () => {
62
- void choose(locale.code);
63
- }, className: "hover:bg-accent focus:bg-accent data-[disabled]:text-muted-foreground flex cursor-pointer items-center justify-between gap-3 rounded-md px-2.5 py-1.5 text-sm outline-none data-[disabled]:cursor-not-allowed", children: [_jsx("span", { children: locale.label }), _jsx("span", { className: "text-muted-foreground text-xs", children: isCurrent ? 'Current' : sibling ? sibling.status : 'New draft' })] }, locale.code));
64
- }) }) })] }));
70
+ return (_jsxs(DropdownMenu.Root, { children: [_jsx(DropdownMenu.Trigger, { asChild: true, children: _jsxs("button", { type: "button", disabled: busy, "aria-label": `Translations, ${current?.label ?? 'locale not set'}`, title: "Open or create a translation", className: "text-muted-foreground hover:text-foreground hover:bg-accent inline-flex shrink-0 items-center gap-1 rounded-lg px-2 py-1 text-sm disabled:cursor-not-allowed disabled:opacity-50", children: [_jsx(Globe, { className: "h-4 w-4", "aria-hidden": true }), label, _jsx(ChevronDown, { className: "h-3.5 w-3.5", "aria-hidden": true })] }) }), _jsx(DropdownMenu.Portal, { container: adminPortalContainer(), children: _jsxs(DropdownMenu.Content, { align: "start", sideOffset: 6, className: "border-border bg-popover z-[120] min-w-40 rounded-lg border p-1 shadow-md", children: [locales.map((locale) => {
71
+ const sibling = siblings.find((row) => row.locale === locale.code);
72
+ const isCurrent = locale.code === currentLocale;
73
+ const canChoose = Boolean(sibling) || canCreate;
74
+ return (_jsxs(DropdownMenu.Item, { disabled: !canChoose || busy, onSelect: () => {
75
+ void choose(locale.code);
76
+ }, className: "hover:bg-accent focus:bg-accent data-[disabled]:text-muted-foreground flex cursor-pointer items-center justify-between gap-3 rounded-md px-2.5 py-1.5 text-sm outline-none data-[disabled]:cursor-not-allowed", children: [_jsx("span", { children: locale.label }), _jsx("span", { className: "text-muted-foreground text-xs", children: isCurrent ? 'Current' : sibling ? sibling.status : 'New draft' })] }, locale.code));
77
+ }), locales
78
+ .filter((locale) => {
79
+ if (!canCreate || locale.code === currentLocale)
80
+ return false;
81
+ const sibling = siblings.find((row) => row.locale === locale.code);
82
+ return !sibling || sibling.status === 'DRAFT';
83
+ })
84
+ .map((locale) => (_jsxs(DropdownMenu.Item, { disabled: busy, onSelect: () => {
85
+ void translate(locale.code);
86
+ }, className: "hover:bg-accent focus:bg-accent flex cursor-pointer items-center rounded-md px-2.5 py-1.5 text-sm outline-none", children: ["Translate to ", locale.code.toUpperCase()] }, `translate-${locale.code}`)))] }) })] }));
65
87
  }
66
88
  //# sourceMappingURL=DocumentLocaleSwitcher.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentLocaleSwitcher.js","sourceRoot":"","sources":["../../src/components/DocumentLocaleSwitcher.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DocumentLocaleSwitcher.js","sourceRoot":"","sources":["../../src/components/DocumentLocaleSwitcher.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"admin-routes.d.ts","sourceRoot":"","sources":["../../src/router/admin-routes.ts"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EA2CxD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAiBxD,CAAA;AAEF,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AACD,UAAU,UAAU;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,CAAC,CAAA;CACzD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAW1E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,EAAE,CAShF;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,CAEhE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAE5E"}
1
+ {"version":3,"file":"admin-routes.d.ts","sourceRoot":"","sources":["../../src/router/admin-routes.ts"],"names":[],"mappings":"AAgBA;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EA4CxD,CAAA;AAED;;;;GAIG;AACH,eAAO,MAAM,yBAAyB,EAAE,WAAW,CAAC,MAAM,CAiBxD,CAAA;AAEF,UAAU,cAAc;IACtB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AACD,UAAU,UAAU;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,CAAC,CAAA;CACzD;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAW1E;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,UAAU,GAAG,SAAS,GAAG,MAAM,EAAE,CAShF;AAED,gEAAgE;AAChE,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,MAAM,EAAE,CAEhE;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,UAAU,GAAG,OAAO,CAE5E"}
@@ -34,6 +34,7 @@ export const ADMIN_STATIC_ROUTE_PATTERNS = [
34
34
  '/forms/new',
35
35
  '/jobs',
36
36
  '/media',
37
+ '/mcp/consent',
37
38
  '/page-builder/:id',
38
39
  '/page-builder/new',
39
40
  '/page-templates',
@@ -1 +1 @@
1
- {"version":3,"file":"admin-routes.js","sourceRoot":"","sources":["../../src/router/admin-routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"admin-routes.js","sourceRoot":"","sources":["../../src/router/admin-routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAE3D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAsB;IAC5D,GAAG;IACH,WAAW;IACX,oBAAoB;IACpB,wBAAwB;IACxB,wBAAwB;IACxB,kBAAkB;IAClB,QAAQ;IACR,iBAAiB;IACjB,wBAAwB;IACxB,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,cAAc;IACd,mBAAmB;IACnB,mBAAmB;IACnB,iBAAiB;IACjB,QAAQ;IACR,YAAY;IACZ,iBAAiB;IACjB,YAAY;IACZ,aAAa;IACb,sBAAsB;IACtB,iBAAiB;IACjB,QAAQ;IACR,uBAAuB;IACvB,kBAAkB;IAClB,YAAY;IACZ,cAAc;IACd,yBAAyB;IACzB,6BAA6B;IAC7B,kBAAkB;IAClB,UAAU;IACV,iBAAiB;IACjB,iBAAiB;IACjB,cAAc;IACd,kBAAkB;IAClB,kBAAkB;IAClB,WAAW;IACX,QAAQ;IACR,QAAQ;IACR,UAAU;CACX,CAAA;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAwB,IAAI,GAAG,CAAC;IACpE,OAAO;IACP,OAAO;IACP,KAAK;IACL,aAAa;IACb,gBAAgB;IAChB,gBAAgB;IAChB,SAAS;IACT,MAAM;IACN,OAAO;IACP,OAAO;IACP,UAAU;IACV,SAAS;IACT,cAAc;IACd,aAAa;IACb,OAAO;IACP,OAAO;CACR,CAAC,CAAA;AAUF;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY,EAAE,OAAe;IAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IAC/E,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACvD,IAAI,OAAO,KAAK,GAAG;QAAE,OAAO,SAAS,CAAC,MAAM,KAAK,CAAC,CAAA;IAClD,IAAI,YAAY,CAAC,MAAM,KAAK,SAAS,CAAC,MAAM;QAAE,OAAO,KAAK,CAAA;IAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,EAAE,GAAG,YAAY,CAAC,CAAC,CAAE,CAAA;QAC3B,IAAI,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAQ;QAChC,IAAI,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC;YAAE,OAAO,KAAK,CAAA;IACvC,CAAC;IACD,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAA8B;IACpE,MAAM,GAAG,GAAa,EAAE,CAAA;IACxB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,IAAI,EAAE,CAAC,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,GAAG,EAAE,IAAI,CAAA;QACtB,IAAI,CAAC,IAAI;YAAE,SAAQ;QACnB,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAA;QAChC,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAChE,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,gEAAgE;AAChE,MAAM,UAAU,kBAAkB,CAAC,MAAmB;IACpD,OAAO,CAAC,GAAG,2BAA2B,EAAE,GAAG,cAAc,EAAE,GAAG,uBAAuB,CAAC,MAAM,CAAC,CAAC,CAAA;AAChG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,MAAmB;IACjE,OAAO,kBAAkB,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;AACzF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"ApiKeys.d.ts","sourceRoot":"","sources":["../../src/views/ApiKeys.tsx"],"names":[],"mappings":"AAyBA,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC;gFAC4E;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAiDD,wBAAgB,OAAO,CAAC,EAAE,QAAgB,EAAE,GAAE,YAAiB,2CAqM9D"}
1
+ {"version":3,"file":"ApiKeys.d.ts","sourceRoot":"","sources":["../../src/views/ApiKeys.tsx"],"names":[],"mappings":"AA0BA,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACnC;gFAC4E;IAC5E,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAiDD,wBAAgB,OAAO,CAAC,EAAE,QAAgB,EAAE,GAAE,YAAiB,2CAsM9D"}
@@ -9,6 +9,7 @@ import { useApiData } from '../lib/useApiData.js';
9
9
  import { cmsApi } from '../lib/api.js';
10
10
  import { ReauthDialog } from '../components/ui/ReauthDialog.js';
11
11
  import { SettingsCard } from './settings/components.js';
12
+ import { McpSetupCard } from './settings/McpSetupCard.js';
12
13
  const DIALOG_INPUT_CLASS = 'w-full rounded-md border border-border bg-input-background px-3 py-2 text-base text-foreground focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none';
13
14
  function formatScopes(scopes) {
14
15
  if (scopes.admin)
@@ -49,7 +50,7 @@ export function ApiKeys({ embedded = false } = {}) {
49
50
  if (loading) {
50
51
  return (_jsx("div", { className: `flex h-64 items-center justify-center ${embedded ? '' : 'p-4 sm:p-6'}`, children: _jsx(Loader2, { className: "text-brand h-6 w-6 animate-spin" }) }));
51
52
  }
52
- return (_jsxs("div", { className: rootPadding, children: [_jsxs(SettingsCard, { headingLevel: "h2", title: "API Keys", description: _jsxs(_Fragment, { children: ["Long-lived credentials for programmatic access. Use the", ' ', _jsx("code", { className: "bg-muted rounded px-1 py-0.5 text-xs", children: "Authorization: Bearer" }), ' ', "header instead of session cookies. API key requests skip CSRF."] }), actions: _jsxs("button", { type: "button", onClick: () => setShowCreate(true), className: "bg-brand text-brand-foreground inline-flex items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-opacity hover:opacity-90", children: [_jsx(Plus, { size: 16, "aria-hidden": "true" }), "New API Key"] }), children: [error && (_jsxs("div", { role: "alert", className: "border-destructive/30 bg-destructive/10 text-destructive mb-4 flex items-center gap-3 rounded-lg border p-4 text-sm", children: [_jsx(AlertTriangle, { size: 20, className: "shrink-0", "aria-hidden": "true" }), _jsx("span", { className: "flex-1", children: error }), _jsx("button", { onClick: refetch, className: "border-destructive/40 rounded-md border px-3 py-1 transition-colors hover:opacity-80", children: "Retry" })] })), keys.length === 0 ? (_jsxs("div", { className: "py-10 text-center", children: [_jsx(KeyRound, { className: "text-muted-foreground mx-auto mb-3 h-8 w-8", "aria-hidden": "true" }), _jsx("p", { className: "text-foreground mb-1 text-sm font-medium", children: "No API keys yet" }), _jsx("p", { className: "text-muted-foreground mb-4 text-sm", children: "Create one to let AI agents, CI jobs, or external integrations call the CMS API." }), _jsxs("button", { type: "button", onClick: () => setShowCreate(true), className: "bg-brand text-brand-foreground inline-flex items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-opacity hover:opacity-90", children: [_jsx(Plus, { size: 16, "aria-hidden": "true" }), "Create your first API key"] })] })) : (_jsx("div", { className: "border-border overflow-hidden rounded-lg border", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "w-full min-w-[760px]", children: [_jsx("thead", { className: "border-border bg-muted/50 border-b", children: _jsxs("tr", { children: [_jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Name" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Token" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Scopes" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Last used" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Expires" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Status" }), _jsx("th", { className: "px-4 py-2" })] }) }), _jsx("tbody", { className: "divide-border divide-y", children: keys.map((k) => {
53
+ return (_jsxs("div", { className: `${rootPadding} space-y-4`, children: [_jsx(McpSetupCard, {}), _jsxs(SettingsCard, { headingLevel: "h2", title: "API Keys", description: _jsxs(_Fragment, { children: ["Long-lived credentials for programmatic access. Use the", ' ', _jsx("code", { className: "bg-muted rounded px-1 py-0.5 text-xs", children: "Authorization: Bearer" }), ' ', "header instead of session cookies. API key requests skip CSRF."] }), actions: _jsxs("button", { type: "button", onClick: () => setShowCreate(true), className: "bg-brand text-brand-foreground inline-flex items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-opacity hover:opacity-90", children: [_jsx(Plus, { size: 16, "aria-hidden": "true" }), "New API Key"] }), children: [error && (_jsxs("div", { role: "alert", className: "border-destructive/30 bg-destructive/10 text-destructive mb-4 flex items-center gap-3 rounded-lg border p-4 text-sm", children: [_jsx(AlertTriangle, { size: 20, className: "shrink-0", "aria-hidden": "true" }), _jsx("span", { className: "flex-1", children: error }), _jsx("button", { onClick: refetch, className: "border-destructive/40 rounded-md border px-3 py-1 transition-colors hover:opacity-80", children: "Retry" })] })), keys.length === 0 ? (_jsxs("div", { className: "py-10 text-center", children: [_jsx(KeyRound, { className: "text-muted-foreground mx-auto mb-3 h-8 w-8", "aria-hidden": "true" }), _jsx("p", { className: "text-foreground mb-1 text-sm font-medium", children: "No API keys yet" }), _jsx("p", { className: "text-muted-foreground mb-4 text-sm", children: "Create one to let AI agents, CI jobs, or external integrations call the CMS API." }), _jsxs("button", { type: "button", onClick: () => setShowCreate(true), className: "bg-brand text-brand-foreground inline-flex items-center justify-center gap-2 rounded-md px-4 py-2 text-sm font-medium transition-opacity hover:opacity-90", children: [_jsx(Plus, { size: 16, "aria-hidden": "true" }), "Create your first API key"] })] })) : (_jsx("div", { className: "border-border overflow-hidden rounded-lg border", children: _jsx("div", { className: "overflow-x-auto", children: _jsxs("table", { className: "w-full min-w-[760px]", children: [_jsx("thead", { className: "border-border bg-muted/50 border-b", children: _jsxs("tr", { children: [_jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Name" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Token" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Scopes" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Last used" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Expires" }), _jsx("th", { className: "text-muted-foreground px-4 py-2 text-left text-xs font-medium", children: "Status" }), _jsx("th", { className: "px-4 py-2" })] }) }), _jsx("tbody", { className: "divide-border divide-y", children: keys.map((k) => {
53
54
  const expired = k.expiresAt && new Date(k.expiresAt).getTime() < Date.now();
54
55
  return (_jsxs("tr", { className: expired ? 'opacity-60' : undefined, children: [_jsxs("td", { className: "px-4 py-3 text-sm", children: [_jsx("div", { className: "text-foreground font-medium", children: k.name }), k.user && (_jsxs("div", { className: "text-muted-foreground text-xs", children: ["created by ", k.user.name ?? k.user.email] }))] }), _jsxs("td", { className: "text-muted-foreground px-4 py-3 font-mono text-sm", children: [k.keyPrefix, "\u2026"] }), _jsx("td", { className: "text-foreground max-w-xs px-4 py-3 text-sm", children: formatScopes(k.scopes) }), _jsx("td", { className: "text-muted-foreground px-4 py-3 text-sm", children: formatDate(k.lastUsedAt) }), _jsx("td", { className: "text-muted-foreground px-4 py-3 text-sm", children: formatDate(k.expiresAt) }), _jsx("td", { className: "px-4 py-3", children: expired ? (_jsx("span", { className: "bg-warning/10 text-warning inline-flex rounded-full px-2 py-0.5 text-xs font-medium", children: "Expired" })) : (_jsx("span", { className: "bg-success/10 text-success inline-flex rounded-full px-2 py-0.5 text-xs font-medium", children: "Active" })) }), _jsx("td", { className: "px-4 py-3 text-right", children: _jsx("button", { type: "button", onClick: () => setPendingDelete({ id: k.id, name: k.name }), className: "hover:bg-destructive/10 rounded p-1.5 transition-colors", "aria-label": `Delete ${k.name}`, title: "Delete", children: _jsx(Trash2, { className: "text-destructive h-4 w-4", "aria-hidden": "true" }) }) })] }, k.id));
55
56
  }) })] }) }) }))] }), _jsx(CreateApiKeyDialog, { open: showCreate, onClose: () => setShowCreate(false), onCreated: (created) => {
@@ -1 +1 @@
1
- {"version":3,"file":"ApiKeys.js","sourceRoot":"","sources":["../../src/views/ApiKeys.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ApiKeys.js","sourceRoot":"","sources":["../../src/views/ApiKeys.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function McpConsent({ currentPath }: {
2
+ currentPath: string;
3
+ }): import("react/jsx-runtime").JSX.Element;
4
+ //# sourceMappingURL=McpConsent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpConsent.d.ts","sourceRoot":"","sources":["../../src/views/McpConsent.tsx"],"names":[],"mappings":"AAcA,wBAAgB,UAAU,CAAC,EAAE,WAAW,EAAE,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,2CAsFlE"}
@@ -0,0 +1,48 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from 'react';
4
+ import { Loader2 } from 'lucide-react';
5
+ import { cmsApi } from '../lib/api.js';
6
+ import { parseRouteQuery } from '../router/index.js';
7
+ export function McpConsent({ currentPath }) {
8
+ const txn = parseRouteQuery(currentPath).get('txn') ?? '';
9
+ const [details, setDetails] = useState(null);
10
+ const [error, setError] = useState('');
11
+ const [busy, setBusy] = useState(false);
12
+ useEffect(() => {
13
+ if (!txn) {
14
+ setError('This connection request is missing.');
15
+ return;
16
+ }
17
+ let cancelled = false;
18
+ cmsApi(`/mcp/oauth/transactions/${encodeURIComponent(txn)}`).then((res) => {
19
+ if (cancelled)
20
+ return;
21
+ if (res.error || !res.data) {
22
+ setError(res.error ?? 'This connection request expired.');
23
+ return;
24
+ }
25
+ setDetails(res.data);
26
+ });
27
+ return () => {
28
+ cancelled = true;
29
+ };
30
+ }, [txn]);
31
+ async function decide(allow) {
32
+ if (!txn || busy)
33
+ return;
34
+ setBusy(true);
35
+ const res = await cmsApi('/mcp/oauth/consent', {
36
+ method: 'POST',
37
+ body: JSON.stringify({ txn, allow }),
38
+ });
39
+ if (res.error || !res.data?.redirectUrl) {
40
+ setError(res.error ?? 'Could not finish the connection.');
41
+ setBusy(false);
42
+ return;
43
+ }
44
+ window.location.assign(res.data.redirectUrl);
45
+ }
46
+ return (_jsx("div", { className: "mx-auto max-w-lg p-6", children: _jsxs("div", { className: "border-border bg-card rounded-lg border p-6", children: [_jsx("h1", { className: "text-foreground text-xl font-medium", children: "Connect an app" }), !details && !error && (_jsxs("p", { className: "text-muted-foreground mt-4 flex items-center gap-2 text-sm", children: [_jsx(Loader2, { className: "animate-spin", size: 16, "aria-hidden": "true" }), "Loading the request"] })), error && _jsx("p", { className: "text-destructive mt-4 text-sm", children: error }), details && (_jsxs("div", { className: "mt-4 space-y-4", children: [_jsxs("p", { className: "text-foreground text-base", children: [_jsx("span", { className: "font-medium", children: details.clientName }), " wants to edit content on this site. It will return to", ' ', _jsx("span", { className: "font-medium", children: details.redirectHost }), "."] }), _jsxs("p", { className: "text-muted-foreground text-sm", children: ["Scope: ", details.scope, ". This includes pages, posts, forms, and SEO. It does not include deleting content or changing settings. If Protect health information is on, lead contents stay hidden."] }), _jsxs("div", { className: "flex gap-3", children: [_jsx("button", { type: "button", disabled: busy, onClick: () => void decide(true), className: "bg-primary text-primary-foreground rounded-md px-4 py-2 text-base font-medium hover:opacity-90 disabled:opacity-50", children: "Allow" }), _jsx("button", { type: "button", disabled: busy, onClick: () => void decide(false), className: "border-border text-foreground hover:bg-accent rounded-md border px-4 py-2 text-base font-medium disabled:opacity-50", children: "Deny" })] })] }))] }) }));
47
+ }
48
+ //# sourceMappingURL=McpConsent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpConsent.js","sourceRoot":"","sources":["../../src/views/McpConsent.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function McpSetupCard(): import("react/jsx-runtime").JSX.Element | null;
2
+ //# sourceMappingURL=McpSetupCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpSetupCard.d.ts","sourceRoot":"","sources":["../../../src/views/settings/McpSetupCard.tsx"],"names":[],"mappings":"AAeA,wBAAgB,YAAY,mDA+E3B"}
@@ -0,0 +1,48 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from 'react';
4
+ import { Copy } from 'lucide-react';
5
+ import { toast } from 'sonner';
6
+ import { cmsApi } from '../../lib/api.js';
7
+ import { SettingsCard } from './components.js';
8
+ export function McpSetupCard() {
9
+ const [mcpUrl, setMcpUrl] = useState('');
10
+ const [grants, setGrants] = useState([]);
11
+ const [hidden, setHidden] = useState(false);
12
+ function load() {
13
+ void cmsApi('/mcp/oauth/setup').then((res) => {
14
+ if (res.error || !res.data?.mcpUrl) {
15
+ setHidden(true);
16
+ return;
17
+ }
18
+ setMcpUrl(res.data.mcpUrl);
19
+ });
20
+ void cmsApi('/mcp/oauth/grants').then((res) => {
21
+ if (res.data)
22
+ setGrants(res.data.filter((grant) => !grant.revokedAt));
23
+ });
24
+ }
25
+ useEffect(() => {
26
+ load();
27
+ }, []);
28
+ async function revoke(id) {
29
+ const res = await cmsApi(`/mcp/oauth/grants/${encodeURIComponent(id)}`, {
30
+ method: 'DELETE',
31
+ });
32
+ if (res.error) {
33
+ toast.error(res.error);
34
+ return;
35
+ }
36
+ toast.success(res.data?.note ?? 'Disconnected');
37
+ load();
38
+ }
39
+ if (hidden)
40
+ return null;
41
+ return (_jsxs(SettingsCard, { title: "Remote MCP", description: "Paste this URL into Claude, ChatGPT, or Grok on the web. They sign in here. Cursor and VS Code keep using an API key from the list below.", children: [_jsxs("div", { className: "flex flex-wrap items-center gap-2", children: [_jsx("code", { className: "bg-muted text-foreground rounded px-2 py-1 text-sm", children: mcpUrl || '…' }), _jsxs("button", { type: "button", className: "border-border text-foreground hover:bg-accent inline-flex items-center gap-2 rounded-md border px-3 py-2 text-sm font-medium", onClick: () => {
42
+ if (!mcpUrl)
43
+ return;
44
+ void navigator.clipboard.writeText(mcpUrl);
45
+ toast.success('MCP URL copied');
46
+ }, "aria-label": "Copy MCP URL", children: [_jsx(Copy, { size: 16, "aria-hidden": "true" }), "Copy"] })] }), grants.length > 0 && (_jsx("ul", { className: "mt-4 space-y-2", children: grants.map((grant) => (_jsxs("li", { className: "flex items-center justify-between gap-3 text-sm", children: [_jsx("span", { className: "text-foreground min-w-0 truncate", children: grant.clientId }), _jsx("button", { type: "button", className: "text-destructive shrink-0 font-medium hover:underline", onClick: () => void revoke(grant.id), children: "Revoke" })] }, grant.id))) })), _jsx("p", { className: "text-muted-foreground mt-3 text-sm", children: "Revoke stops new requests immediately. An access token already issued can keep working for up to 15 minutes." })] }));
47
+ }
48
+ //# sourceMappingURL=McpSetupCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"McpSetupCard.js","sourceRoot":"","sources":["../../../src/views/settings/McpSetupCard.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Disclosure boundary for form submissions. Turning this on refuses lead
3
+ * values to API keys, MCP, and vision alt-text. It is a technical safeguard,
4
+ * not a compliance certification.
5
+ */
6
+ export declare function PhiSafeguardsCard({ canEdit }: {
7
+ canEdit: boolean;
8
+ }): import("react/jsx-runtime").JSX.Element | null;
9
+ //# sourceMappingURL=PhiSafeguardsCard.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhiSafeguardsCard.d.ts","sourceRoot":"","sources":["../../../src/views/settings/PhiSafeguardsCard.tsx"],"names":[],"mappings":"AAQA;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,OAAO,EAAE,EAAE;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,kDAuElE"}
@@ -0,0 +1,70 @@
1
+ 'use client';
2
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
+ import { useEffect, useState } from 'react';
4
+ import { toast } from 'sonner';
5
+ import { cmsApi } from '../../lib/api.js';
6
+ import { Toggle } from '../../components/ui/Toggle.js';
7
+ import { SettingsCard } from './components.js';
8
+ /**
9
+ * Disclosure boundary for form submissions. Turning this on refuses lead
10
+ * values to API keys, MCP, and vision alt-text. It is a technical safeguard,
11
+ * not a compliance certification.
12
+ */
13
+ export function PhiSafeguardsCard({ canEdit }) {
14
+ const [enabled, setEnabled] = useState(false);
15
+ const [loading, setLoading] = useState(true);
16
+ const [saving, setSaving] = useState(false);
17
+ const [hidden, setHidden] = useState(false);
18
+ useEffect(() => {
19
+ let cancelled = false;
20
+ cmsApi('/privacy')
21
+ .then((res) => {
22
+ if (cancelled)
23
+ return;
24
+ if ('error' in res && res.error) {
25
+ setHidden(true);
26
+ return;
27
+ }
28
+ if ('data' in res)
29
+ setEnabled(Boolean(res.data?.phiSafeguards));
30
+ })
31
+ .catch(() => {
32
+ if (!cancelled)
33
+ setHidden(true);
34
+ })
35
+ .finally(() => {
36
+ if (!cancelled)
37
+ setLoading(false);
38
+ });
39
+ return () => {
40
+ cancelled = true;
41
+ };
42
+ }, []);
43
+ if (hidden || loading)
44
+ return null;
45
+ async function onToggle(next) {
46
+ if (!canEdit || saving)
47
+ return;
48
+ setSaving(true);
49
+ const previous = enabled;
50
+ setEnabled(next);
51
+ try {
52
+ const res = await cmsApi('/privacy', {
53
+ method: 'PUT',
54
+ body: JSON.stringify({ phiSafeguards: next }),
55
+ });
56
+ if ('error' in res && res.error)
57
+ throw new Error(res.error);
58
+ toast.success(next ? 'Health-information protection is on' : 'Health-information protection is off');
59
+ }
60
+ catch {
61
+ setEnabled(previous);
62
+ toast.error('Could not update health-information protection');
63
+ }
64
+ finally {
65
+ setSaving(false);
66
+ }
67
+ }
68
+ return (_jsx(SettingsCard, { title: "Protect health information", description: "When on, API keys and connected AI apps cannot read form submission contents, and image alt-text generation is refused. People signed in to the admin can still open the inbox. This is a technical safeguard. It does not certify the site for any regulation.", busy: saving, children: _jsxs("div", { className: "flex items-center justify-between gap-4", children: [_jsx("label", { htmlFor: "phi-safeguards", className: "text-sm text-[var(--txt)]", children: "Hide lead contents from API keys and AI" }), _jsx(Toggle, { id: "phi-safeguards", checked: enabled, disabled: !canEdit || saving, onCheckedChange: (checked) => void onToggle(checked) })] }) }));
69
+ }
70
+ //# sourceMappingURL=PhiSafeguardsCard.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PhiSafeguardsCard.js","sourceRoot":"","sources":["../../../src/views/settings/PhiSafeguardsCard.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTab.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"AAgCA,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,UAAU,GACX,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,2CAuJA"}
1
+ {"version":3,"file":"SecurityTab.d.ts","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"AAiCA,wBAAgB,WAAW,CAAC,EAC1B,IAAI,EACJ,UAAU,GACX,EAAE;IACD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,2CAyJA"}
@@ -12,6 +12,7 @@ import { SecurityStatusCard } from './SecurityStatusCard.js';
12
12
  import { CaptchaStatusCard } from './CaptchaStatusCard.js';
13
13
  import { SessionPolicyCard } from './SessionPolicyCard.js';
14
14
  import { useSecuritySettings } from './useSecuritySettings.js';
15
+ import { PhiSafeguardsCard } from './PhiSafeguardsCard.js';
15
16
  function CardSkeleton() {
16
17
  return (_jsxs("div", { className: "border-border bg-card animate-pulse rounded-lg border p-6", children: [_jsx("div", { className: "bg-muted mb-3 h-4 w-40 rounded" }), _jsx("div", { className: "bg-muted mb-4 h-3 w-72 rounded" }), _jsxs("div", { className: "space-y-3", children: [_jsx("div", { className: "bg-muted h-3 w-full rounded" }), _jsx("div", { className: "bg-muted h-3 w-2/3 rounded" })] })] }));
17
18
  }
@@ -39,6 +40,6 @@ export function SecurityTab({ role, onNavigate, }) {
39
40
  ? 'Ask an administrator to review the Security tab.'
40
41
  : (loadError ?? 'The security service could not be reached. Try again shortly.') })] })] }));
41
42
  }
42
- return (_jsxs("div", { className: "space-y-4 pb-4", children: [_jsx(SecurityStatusCard, { status: data.status, onNavigate: onNavigate }), _jsx(CaptchaStatusCard, {}), issues.length > 0 && _jsx(SettingsValidationSummary, { issues: issues }), !canEdit && (_jsx("p", { className: "text-muted-foreground text-sm", children: "You have read-only access. Only administrators can change security settings." })), _jsx(AuthMfaCard, { form: form, setField: setField, canEdit: canEdit, viewerHasMfa: data.viewerHasMfa, withMfa: data.users.withMfa, totalAdmins: data.users.totalAdmins, onNavigate: onNavigate }), _jsx("div", { id: "security-sessions", children: _jsx(SessionPolicyCard, { form: form, setField: setField, canEdit: canEdit, activeSessions: data.activeSessions, revokeState: revokeState, onRevokeAll: () => void revokeAllOtherSessions() }) }), _jsx("div", { id: "security-ip-allowlist", children: _jsx(AccessProtectionCard, { form: form, setField: setField, canEdit: canEdit, ipAllowlist: data.ipAllowlist, secrets: data.secrets, csrfEnabled: data.csrfEnabled, uploadValidation: data.uploadValidation, sources: data.sources, onNavigate: onNavigate }) }), _jsxs("div", { id: "security-audit", className: "space-y-4", children: [canEdit && _jsx(AuditLogExportCard, {}), _jsx(SecretsAuditCard, { secrets: data.secrets, auditEnabled: data.auditEnabled, failedLogins24h: data.failedLogins24h, users: data.users, apiKeys: data.apiKeys, sources: data.sources, onNavigate: onNavigate })] }), saveState === 'error' && (_jsx("p", { className: "text-destructive text-sm", role: "alert", children: "Failed to save security settings. Please try again." })), _jsx(ConfirmDangerousSettingDialog, { open: lockoutPrompt !== null, title: "This allowlist may lock you out", description: lockoutPrompt ?? 'Your current IP is not covered by the allowlist you are about to save.', confirmLabel: "Save anyway", onConfirm: () => void save({ confirmLockout: true }), onCancel: dismissLockoutPrompt }), _jsx(SettingsSaveBar, { dirty: dirty, canEdit: canEdit, hasErrors: hasErrors, saveState: saveState, onSave: () => void save(), onReset: reset })] }));
43
+ return (_jsxs("div", { className: "space-y-4 pb-4", children: [_jsx(SecurityStatusCard, { status: data.status, onNavigate: onNavigate }), _jsx(CaptchaStatusCard, {}), issues.length > 0 && _jsx(SettingsValidationSummary, { issues: issues }), !canEdit && (_jsx("p", { className: "text-muted-foreground text-sm", children: "You have read-only access. Only administrators can change security settings." })), _jsx(AuthMfaCard, { form: form, setField: setField, canEdit: canEdit, viewerHasMfa: data.viewerHasMfa, withMfa: data.users.withMfa, totalAdmins: data.users.totalAdmins, onNavigate: onNavigate }), _jsx("div", { id: "security-sessions", children: _jsx(SessionPolicyCard, { form: form, setField: setField, canEdit: canEdit, activeSessions: data.activeSessions, revokeState: revokeState, onRevokeAll: () => void revokeAllOtherSessions() }) }), _jsx("div", { id: "security-ip-allowlist", children: _jsx(AccessProtectionCard, { form: form, setField: setField, canEdit: canEdit, ipAllowlist: data.ipAllowlist, secrets: data.secrets, csrfEnabled: data.csrfEnabled, uploadValidation: data.uploadValidation, sources: data.sources, onNavigate: onNavigate }) }), _jsx(PhiSafeguardsCard, { canEdit: canEdit || role === 'OWNER' }), _jsxs("div", { id: "security-audit", className: "space-y-4", children: [canEdit && _jsx(AuditLogExportCard, {}), _jsx(SecretsAuditCard, { secrets: data.secrets, auditEnabled: data.auditEnabled, failedLogins24h: data.failedLogins24h, users: data.users, apiKeys: data.apiKeys, sources: data.sources, onNavigate: onNavigate })] }), saveState === 'error' && (_jsx("p", { className: "text-destructive text-sm", role: "alert", children: "Failed to save security settings. Please try again." })), _jsx(ConfirmDangerousSettingDialog, { open: lockoutPrompt !== null, title: "This allowlist may lock you out", description: lockoutPrompt ?? 'Your current IP is not covered by the allowlist you are about to save.', confirmLabel: "Save anyway", onConfirm: () => void save({ confirmLockout: true }), onCancel: dismissLockoutPrompt }), _jsx(SettingsSaveBar, { dirty: dirty, canEdit: canEdit, hasErrors: hasErrors, saveState: saveState, onSave: () => void save(), onReset: reset })] }));
43
44
  }
44
45
  //# sourceMappingURL=SecurityTab.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SecurityTab.js","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SecurityTab.js","sourceRoot":"","sources":["../../../src/views/settings/SecurityTab.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prenta/admin",
3
- "version": "2.3.0",
3
+ "version": "2.5.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -101,7 +101,7 @@
101
101
  "typescript": "^5.7.0",
102
102
  "vitest": "^4.1.0",
103
103
  "@prenta/component-blocks": "0.3.1",
104
- "@prenta/core": "8.4.0",
104
+ "@prenta/core": "8.7.0",
105
105
  "@prenta/plugin-ai": "4.0.1",
106
106
  "@prenta/plugin-blocks": "1.0.1",
107
107
  "@prenta/plugin-commerce": "1.0.1",
@@ -109,7 +109,7 @@
109
109
  "@prenta/plugin-media": "1.0.1",
110
110
  "@prenta/plugin-navigation": "1.0.1",
111
111
  "@prenta/plugin-seo": "2.0.1",
112
- "@prenta/sections-react": "0.17.72"
112
+ "@prenta/sections-react": "0.17.77"
113
113
  },
114
114
  "scripts": {
115
115
  "build": "tsc --project tsconfig.json && npx @tailwindcss/cli -i src/styles/build-input.css -o dist/prenta-admin.css --minify",
package/src/AdminRoot.tsx CHANGED
@@ -20,6 +20,7 @@ import {
20
20
  type CustomSectionTypeInput,
21
21
  } from '@prenta/core/page-sections'
22
22
  import { Dashboard } from './views/Dashboard.js'
23
+ import { McpConsent } from './views/McpConsent.js'
23
24
  import { SEO_DEEP_PATHS, seoTabForPath } from './views/seo/seo-routes.js'
24
25
  import {
25
26
  CollectionList,
@@ -574,6 +575,10 @@ function AdminShell({
574
575
  return <Trash onNavigate={navigate} config={config} />
575
576
  }
576
577
 
578
+ if (matchRoute('/mcp/consent')) {
579
+ return <McpConsent currentPath={currentPath} />
580
+ }
581
+
577
582
  if (matchRoute('/jobs')) {
578
583
  return <Jobs onNavigate={navigate} />
579
584
  }
@@ -108,4 +108,30 @@ describe('DocumentLocaleSwitcher', () => {
108
108
  body: JSON.stringify({ locale: 'es' }),
109
109
  })
110
110
  })
111
+
112
+ it('asks for an AI draft and does not publish it', async () => {
113
+ const onNavigate = renderSwitcher()
114
+ await waitFor(() =>
115
+ expect(screen.getByRole('button', { name: 'Translations, English' })).toBeTruthy(),
116
+ )
117
+ cmsApiMock.mockResolvedValueOnce({
118
+ data: { id: 'page-es', locale: 'es', created: true, applied: true, status: 'DRAFT' },
119
+ status: 201,
120
+ })
121
+ fireEvent.keyDown(screen.getByRole('button', { name: 'Translations, English' }), {
122
+ key: 'Enter',
123
+ })
124
+ fireEvent.click(screen.getByRole('menuitem', { name: 'Translate to ES' }))
125
+ await waitFor(() => expect(onNavigate).toHaveBeenCalledWith('/pages/page-es/edit'))
126
+ const body = JSON.parse((cmsApiMock.mock.calls.at(-1)?.[1] as { body: string }).body) as Record<
127
+ string,
128
+ unknown
129
+ >
130
+ expect(cmsApiMock).toHaveBeenLastCalledWith(
131
+ '/collections/pages/page-1/translations/localize',
132
+ expect.objectContaining({ method: 'POST' }),
133
+ )
134
+ expect(body).toEqual({ locale: 'es' })
135
+ expect(body).not.toHaveProperty('status')
136
+ })
111
137
  })
@@ -72,6 +72,22 @@ export function DocumentLocaleSwitcher({
72
72
  const current = locales.find((locale) => locale.code === currentLocale)
73
73
  const label = current?.code.toUpperCase() ?? 'Locale'
74
74
 
75
+ async function translate(code: string) {
76
+ if (!canCreate || busy) return
77
+ setBusy(true)
78
+ const result = await cmsApi<TranslationDraft & { applied?: boolean; status?: string }>(
79
+ `/collections/${encodeURIComponent(collection)}/${encodeURIComponent(documentId)}/translations/localize`,
80
+ { method: 'POST', body: JSON.stringify({ locale: code }) },
81
+ )
82
+ setBusy(false)
83
+ if (result.error || !result.data?.id) {
84
+ toast.error(result.error ?? 'Could not translate this document')
85
+ return
86
+ }
87
+ toast.success('Saved as a draft. Submit it for review before publishing.')
88
+ onNavigate(editorPath(result.data.id))
89
+ }
90
+
75
91
  async function choose(code: string) {
76
92
  const sibling = siblings.find((row) => row.locale === code)
77
93
  if (sibling) {
@@ -133,6 +149,24 @@ export function DocumentLocaleSwitcher({
133
149
  </DropdownMenu.Item>
134
150
  )
135
151
  })}
152
+ {locales
153
+ .filter((locale) => {
154
+ if (!canCreate || locale.code === currentLocale) return false
155
+ const sibling = siblings.find((row) => row.locale === locale.code)
156
+ return !sibling || sibling.status === 'DRAFT'
157
+ })
158
+ .map((locale) => (
159
+ <DropdownMenu.Item
160
+ key={`translate-${locale.code}`}
161
+ disabled={busy}
162
+ onSelect={() => {
163
+ void translate(locale.code)
164
+ }}
165
+ className="hover:bg-accent focus:bg-accent flex cursor-pointer items-center rounded-md px-2.5 py-1.5 text-sm outline-none"
166
+ >
167
+ Translate to {locale.code.toUpperCase()}
168
+ </DropdownMenu.Item>
169
+ ))}
136
170
  </DropdownMenu.Content>
137
171
  </DropdownMenu.Portal>
138
172
  </DropdownMenu.Root>
@@ -35,6 +35,7 @@ export const ADMIN_STATIC_ROUTE_PATTERNS: readonly string[] = [
35
35
  '/forms/new',
36
36
  '/jobs',
37
37
  '/media',
38
+ '/mcp/consent',
38
39
  '/page-builder/:id',
39
40
  '/page-builder/new',
40
41
  '/page-templates',
@@ -19,6 +19,7 @@ import { useApiData } from '../lib/useApiData.js'
19
19
  import { cmsApi } from '../lib/api.js'
20
20
  import { ReauthDialog } from '../components/ui/ReauthDialog.js'
21
21
  import { SettingsCard } from './settings/components.js'
22
+ import { McpSetupCard } from './settings/McpSetupCard.js'
22
23
 
23
24
  const DIALOG_INPUT_CLASS =
24
25
  'w-full rounded-md border border-border bg-input-background px-3 py-2 text-base text-foreground focus-visible:ring-2 focus-visible:ring-ring focus-visible:outline-none'
@@ -95,7 +96,8 @@ export function ApiKeys({ embedded = false }: ApiKeysProps = {}) {
95
96
  }
96
97
 
97
98
  return (
98
- <div className={rootPadding}>
99
+ <div className={`${rootPadding} space-y-4`}>
100
+ <McpSetupCard />
99
101
  <SettingsCard
100
102
  headingLevel="h2"
101
103
  title="API Keys"
@@ -0,0 +1,101 @@
1
+ 'use client'
2
+
3
+ import { useEffect, useState } from 'react'
4
+ import { Loader2 } from 'lucide-react'
5
+ import { cmsApi } from '../lib/api.js'
6
+ import { parseRouteQuery } from '../router/index.js'
7
+
8
+ type ConsentDetails = {
9
+ clientName: string
10
+ clientId: string
11
+ redirectHost: string
12
+ scope: string
13
+ }
14
+
15
+ export function McpConsent({ currentPath }: { currentPath: string }) {
16
+ const txn = parseRouteQuery(currentPath).get('txn') ?? ''
17
+ const [details, setDetails] = useState<ConsentDetails | null>(null)
18
+ const [error, setError] = useState('')
19
+ const [busy, setBusy] = useState(false)
20
+
21
+ useEffect(() => {
22
+ if (!txn) {
23
+ setError('This connection request is missing.')
24
+ return
25
+ }
26
+ let cancelled = false
27
+ cmsApi<ConsentDetails>(`/mcp/oauth/transactions/${encodeURIComponent(txn)}`).then((res) => {
28
+ if (cancelled) return
29
+ if (res.error || !res.data) {
30
+ setError(res.error ?? 'This connection request expired.')
31
+ return
32
+ }
33
+ setDetails(res.data)
34
+ })
35
+ return () => {
36
+ cancelled = true
37
+ }
38
+ }, [txn])
39
+
40
+ async function decide(allow: boolean) {
41
+ if (!txn || busy) return
42
+ setBusy(true)
43
+ const res = await cmsApi<{ redirectUrl: string }>('/mcp/oauth/consent', {
44
+ method: 'POST',
45
+ body: JSON.stringify({ txn, allow }),
46
+ })
47
+ if (res.error || !res.data?.redirectUrl) {
48
+ setError(res.error ?? 'Could not finish the connection.')
49
+ setBusy(false)
50
+ return
51
+ }
52
+ window.location.assign(res.data.redirectUrl)
53
+ }
54
+
55
+ return (
56
+ <div className="mx-auto max-w-lg p-6">
57
+ <div className="border-border bg-card rounded-lg border p-6">
58
+ <h1 className="text-foreground text-xl font-medium">Connect an app</h1>
59
+ {!details && !error && (
60
+ <p className="text-muted-foreground mt-4 flex items-center gap-2 text-sm">
61
+ <Loader2 className="animate-spin" size={16} aria-hidden="true" />
62
+ Loading the request
63
+ </p>
64
+ )}
65
+ {error && <p className="text-destructive mt-4 text-sm">{error}</p>}
66
+ {details && (
67
+ <div className="mt-4 space-y-4">
68
+ <p className="text-foreground text-base">
69
+ <span className="font-medium">{details.clientName}</span> wants to edit content on
70
+ this site. It will return to{' '}
71
+ <span className="font-medium">{details.redirectHost}</span>.
72
+ </p>
73
+ <p className="text-muted-foreground text-sm">
74
+ Scope: {details.scope}. This includes pages, posts, forms, and SEO. It does not
75
+ include deleting content or changing settings. If Protect health information is on,
76
+ lead contents stay hidden.
77
+ </p>
78
+ <div className="flex gap-3">
79
+ <button
80
+ type="button"
81
+ disabled={busy}
82
+ onClick={() => void decide(true)}
83
+ className="bg-primary text-primary-foreground rounded-md px-4 py-2 text-base font-medium hover:opacity-90 disabled:opacity-50"
84
+ >
85
+ Allow
86
+ </button>
87
+ <button
88
+ type="button"
89
+ disabled={busy}
90
+ onClick={() => void decide(false)}
91
+ className="border-border text-foreground hover:bg-accent rounded-md border px-4 py-2 text-base font-medium disabled:opacity-50"
92
+ >
93
+ Deny
94
+ </button>
95
+ </div>
96
+ </div>
97
+ )}
98
+ </div>
99
+ </div>
100
+ )
101
+ }
@@ -0,0 +1,95 @@
1
+ 'use client'
2
+
3
+ import { useEffect, useState } from 'react'
4
+ import { Copy } from 'lucide-react'
5
+ import { toast } from 'sonner'
6
+ import { cmsApi } from '../../lib/api.js'
7
+ import { SettingsCard } from './components.js'
8
+
9
+ type Grant = {
10
+ id: string
11
+ clientId: string
12
+ scope: string
13
+ revokedAt: string | null
14
+ }
15
+
16
+ export function McpSetupCard() {
17
+ const [mcpUrl, setMcpUrl] = useState('')
18
+ const [grants, setGrants] = useState<Grant[]>([])
19
+ const [hidden, setHidden] = useState(false)
20
+
21
+ function load() {
22
+ void cmsApi<{ mcpUrl: string }>('/mcp/oauth/setup').then((res) => {
23
+ if (res.error || !res.data?.mcpUrl) {
24
+ setHidden(true)
25
+ return
26
+ }
27
+ setMcpUrl(res.data.mcpUrl)
28
+ })
29
+ void cmsApi<Grant[]>('/mcp/oauth/grants').then((res) => {
30
+ if (res.data) setGrants(res.data.filter((grant) => !grant.revokedAt))
31
+ })
32
+ }
33
+
34
+ useEffect(() => {
35
+ load()
36
+ }, [])
37
+
38
+ async function revoke(id: string) {
39
+ const res = await cmsApi<{ note: string }>(`/mcp/oauth/grants/${encodeURIComponent(id)}`, {
40
+ method: 'DELETE',
41
+ })
42
+ if (res.error) {
43
+ toast.error(res.error)
44
+ return
45
+ }
46
+ toast.success(res.data?.note ?? 'Disconnected')
47
+ load()
48
+ }
49
+
50
+ if (hidden) return null
51
+
52
+ return (
53
+ <SettingsCard
54
+ title="Remote MCP"
55
+ description="Paste this URL into Claude, ChatGPT, or Grok on the web. They sign in here. Cursor and VS Code keep using an API key from the list below."
56
+ >
57
+ <div className="flex flex-wrap items-center gap-2">
58
+ <code className="bg-muted text-foreground rounded px-2 py-1 text-sm">{mcpUrl || '…'}</code>
59
+ <button
60
+ type="button"
61
+ className="border-border text-foreground hover:bg-accent inline-flex items-center gap-2 rounded-md border px-3 py-2 text-sm font-medium"
62
+ onClick={() => {
63
+ if (!mcpUrl) return
64
+ void navigator.clipboard.writeText(mcpUrl)
65
+ toast.success('MCP URL copied')
66
+ }}
67
+ aria-label="Copy MCP URL"
68
+ >
69
+ <Copy size={16} aria-hidden="true" />
70
+ Copy
71
+ </button>
72
+ </div>
73
+ {grants.length > 0 && (
74
+ <ul className="mt-4 space-y-2">
75
+ {grants.map((grant) => (
76
+ <li key={grant.id} className="flex items-center justify-between gap-3 text-sm">
77
+ <span className="text-foreground min-w-0 truncate">{grant.clientId}</span>
78
+ <button
79
+ type="button"
80
+ className="text-destructive shrink-0 font-medium hover:underline"
81
+ onClick={() => void revoke(grant.id)}
82
+ >
83
+ Revoke
84
+ </button>
85
+ </li>
86
+ ))}
87
+ </ul>
88
+ )}
89
+ <p className="text-muted-foreground mt-3 text-sm">
90
+ Revoke stops new requests immediately. An access token already issued can keep working for
91
+ up to 15 minutes.
92
+ </p>
93
+ </SettingsCard>
94
+ )
95
+ }
@@ -0,0 +1,85 @@
1
+ 'use client'
2
+
3
+ import { useEffect, useState } from 'react'
4
+ import { toast } from 'sonner'
5
+ import { cmsApi } from '../../lib/api.js'
6
+ import { Toggle } from '../../components/ui/Toggle.js'
7
+ import { SettingsCard } from './components.js'
8
+
9
+ /**
10
+ * Disclosure boundary for form submissions. Turning this on refuses lead
11
+ * values to API keys, MCP, and vision alt-text. It is a technical safeguard,
12
+ * not a compliance certification.
13
+ */
14
+ export function PhiSafeguardsCard({ canEdit }: { canEdit: boolean }) {
15
+ const [enabled, setEnabled] = useState(false)
16
+ const [loading, setLoading] = useState(true)
17
+ const [saving, setSaving] = useState(false)
18
+ const [hidden, setHidden] = useState(false)
19
+
20
+ useEffect(() => {
21
+ let cancelled = false
22
+ cmsApi<{ phiSafeguards: boolean }>('/privacy')
23
+ .then((res) => {
24
+ if (cancelled) return
25
+ if ('error' in res && res.error) {
26
+ setHidden(true)
27
+ return
28
+ }
29
+ if ('data' in res) setEnabled(Boolean(res.data?.phiSafeguards))
30
+ })
31
+ .catch(() => {
32
+ if (!cancelled) setHidden(true)
33
+ })
34
+ .finally(() => {
35
+ if (!cancelled) setLoading(false)
36
+ })
37
+ return () => {
38
+ cancelled = true
39
+ }
40
+ }, [])
41
+
42
+ if (hidden || loading) return null
43
+
44
+ async function onToggle(next: boolean) {
45
+ if (!canEdit || saving) return
46
+ setSaving(true)
47
+ const previous = enabled
48
+ setEnabled(next)
49
+ try {
50
+ const res = await cmsApi('/privacy', {
51
+ method: 'PUT',
52
+ body: JSON.stringify({ phiSafeguards: next }),
53
+ })
54
+ if ('error' in res && res.error) throw new Error(res.error)
55
+ toast.success(
56
+ next ? 'Health-information protection is on' : 'Health-information protection is off',
57
+ )
58
+ } catch {
59
+ setEnabled(previous)
60
+ toast.error('Could not update health-information protection')
61
+ } finally {
62
+ setSaving(false)
63
+ }
64
+ }
65
+
66
+ return (
67
+ <SettingsCard
68
+ title="Protect health information"
69
+ description="When on, API keys and connected AI apps cannot read form submission contents, and image alt-text generation is refused. People signed in to the admin can still open the inbox. This is a technical safeguard. It does not certify the site for any regulation."
70
+ busy={saving}
71
+ >
72
+ <div className="flex items-center justify-between gap-4">
73
+ <label htmlFor="phi-safeguards" className="text-sm text-[var(--txt)]">
74
+ Hide lead contents from API keys and AI
75
+ </label>
76
+ <Toggle
77
+ id="phi-safeguards"
78
+ checked={enabled}
79
+ disabled={!canEdit || saving}
80
+ onCheckedChange={(checked) => void onToggle(checked)}
81
+ />
82
+ </div>
83
+ </SettingsCard>
84
+ )
85
+ }
@@ -16,6 +16,7 @@ import { SecurityStatusCard } from './SecurityStatusCard.js'
16
16
  import { CaptchaStatusCard } from './CaptchaStatusCard.js'
17
17
  import { SessionPolicyCard } from './SessionPolicyCard.js'
18
18
  import { useSecuritySettings } from './useSecuritySettings.js'
19
+ import { PhiSafeguardsCard } from './PhiSafeguardsCard.js'
19
20
 
20
21
  function CardSkeleton() {
21
22
  return (
@@ -145,6 +146,8 @@ export function SecurityTab({
145
146
  />
146
147
  </div>
147
148
 
149
+ <PhiSafeguardsCard canEdit={canEdit || role === 'OWNER'} />
150
+
148
151
  <div id="security-audit" className="space-y-4">
149
152
  {canEdit && <AuditLogExportCard />}
150
153
  <SecretsAuditCard