@se-studio/contentful-cms 2.7.7 → 2.8.1
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/commands/host-scaffold.d.ts.map +1 -1
- package/dist/commands/host-scaffold.js +25 -4
- package/dist/commands/host-scaffold.js.map +1 -1
- package/dist/commands/preview.d.ts.map +1 -1
- package/dist/commands/preview.js +74 -0
- package/dist/commands/preview.js.map +1 -1
- package/dist/config/hosted.d.ts +1 -0
- package/dist/config/hosted.d.ts.map +1 -1
- package/dist/config/hosted.js +4 -0
- package/dist/config/hosted.js.map +1 -1
- package/dist/config/load.d.ts.map +1 -1
- package/dist/config/load.js +3 -0
- package/dist/config/load.js.map +1 -1
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/editor-pack/capabilities.d.ts +6 -0
- package/dist/editor-pack/capabilities.d.ts.map +1 -1
- package/dist/editor-pack/capabilities.js +19 -1
- package/dist/editor-pack/capabilities.js.map +1 -1
- package/dist/editor-pack/generate.d.ts.map +1 -1
- package/dist/editor-pack/generate.js +13 -1
- package/dist/editor-pack/generate.js.map +1 -1
- package/dist/generated/version.d.ts +1 -1
- package/dist/generated/version.js +1 -1
- package/dist/hosted/next/routes/health.d.ts.map +1 -1
- package/dist/hosted/next/routes/health.js +11 -0
- package/dist/hosted/next/routes/health.js.map +1 -1
- package/dist/mcp/prompts/onboarding.d.ts.map +1 -1
- package/dist/mcp/prompts/onboarding.js +15 -5
- package/dist/mcp/prompts/onboarding.js.map +1 -1
- package/dist/mcp/tools/cms-edit.d.ts +1 -1
- package/dist/mcp/tools/cms-edit.d.ts.map +1 -1
- package/dist/mcp/tools/cms-edit.js +2 -1
- package/dist/mcp/tools/cms-edit.js.map +1 -1
- package/dist/preview/entry-urls.d.ts +32 -0
- package/dist/preview/entry-urls.d.ts.map +1 -0
- package/dist/preview/entry-urls.js +103 -0
- package/dist/preview/entry-urls.js.map +1 -0
- package/dist/project/doctor.d.ts.map +1 -1
- package/dist/project/doctor.js +24 -0
- package/dist/project/doctor.js.map +1 -1
- package/docs/editor-tasks/create-from-document.md +4 -2
- package/docs/editor-tasks/preview-verify.md +40 -6
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { loadEditorPackManifest } from '../../../editor-pack/load.js';
|
|
1
2
|
import { buildCustomerPlaybookIndex } from '../../customer-playbooks.js';
|
|
2
3
|
import { GETTING_STARTED_INFO, getMcpResourceUrl, getVersionInfo, handleOAuthHealthCheck, loadHostedDeploymentFromEnv, } from '../../index.js';
|
|
3
4
|
import { getHostedEditorPackPath } from '../editor-pack-path.js';
|
|
@@ -11,6 +12,7 @@ export async function GET(request) {
|
|
|
11
12
|
},
|
|
12
13
|
redis: { ok: false, detail: 'Not checked' },
|
|
13
14
|
oauth: { ok: false, detail: 'Not checked' },
|
|
15
|
+
editorPack: { ok: false, detail: 'Not checked', path: '' },
|
|
14
16
|
};
|
|
15
17
|
try {
|
|
16
18
|
const probeKey = 'cms-edit:health-probe';
|
|
@@ -28,6 +30,15 @@ export async function GET(request) {
|
|
|
28
30
|
};
|
|
29
31
|
}
|
|
30
32
|
checks.oauth = await handleOAuthHealthCheck();
|
|
33
|
+
const editorPackPath = getHostedEditorPackPath();
|
|
34
|
+
const editorPackManifest = loadEditorPackManifest(editorPackPath);
|
|
35
|
+
checks.editorPack = {
|
|
36
|
+
ok: editorPackManifest !== null,
|
|
37
|
+
path: editorPackPath,
|
|
38
|
+
detail: editorPackManifest !== null
|
|
39
|
+
? `manifest.json OK (${editorPackManifest.resources.length} resources)`
|
|
40
|
+
: `manifest.json missing at ${editorPackPath}`,
|
|
41
|
+
};
|
|
31
42
|
const ok = checks.config.ok && checks.redis.ok && checks.oauth.ok;
|
|
32
43
|
const origin = new URL(request.url).origin;
|
|
33
44
|
const landingPageUrl = `${origin}/cms-edit`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../../../src/hosted/next/routes/health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,uBAAuB,EAAE,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"health.js","sourceRoot":"","sources":["../../../../src/hosted/next/routes/health.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts/onboarding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"onboarding.d.ts","sourceRoot":"","sources":["../../../src/mcp/prompts/onboarding.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAwBjD,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,EAAE,aAAa,GAAG,IAAI,CA0ezF"}
|
|
@@ -2,6 +2,10 @@ import { z } from 'zod';
|
|
|
2
2
|
import { prefixHostedToolDescription } from '../hosted-metadata.js';
|
|
3
3
|
const TASKS_PREAMBLE = 'Start by reading customer playbooks: cms_edit ["customer", "tasks-index"]; ' +
|
|
4
4
|
'cms_edit ["customer", "capabilities"]; cms_edit ["customer", "checklist"].\n\n';
|
|
5
|
+
const PREVIEW_AFTER_SAVE = 'After save: cms_edit ["preview", "urls", "<slug>"] (or use session entry id). ' +
|
|
6
|
+
'Open **siteLivePreview** or **staging** in a browser MCP by default for drafts. ' +
|
|
7
|
+
'Offer **production** (published only) and **contentfulEntry** links. ' +
|
|
8
|
+
'See task-preview-verify.\n';
|
|
5
9
|
function hostedNote(hosted) {
|
|
6
10
|
if (!hosted) {
|
|
7
11
|
return 'Local MCP: use --space when multiple spaces are configured.';
|
|
@@ -142,7 +146,8 @@ export function registerOnboardingPrompts(server, hosted) {
|
|
|
142
146
|
'2. cms_edit ["list", "--type", "template"] — pick a template ID\n' +
|
|
143
147
|
`3. cms_edit ["create", "page", "--slug", "${slug}", "--title", "${title}", "--template-id", "<id>"]\n` +
|
|
144
148
|
'4. cms_edit ["snapshot"] — review structure\n' +
|
|
145
|
-
'5. Edit fields with set/rtf as needed, then diff and save'
|
|
149
|
+
'5. Edit fields with set/rtf as needed, then diff and save\n' +
|
|
150
|
+
`6. ${PREVIEW_AFTER_SAVE}`,
|
|
146
151
|
},
|
|
147
152
|
},
|
|
148
153
|
],
|
|
@@ -172,7 +177,8 @@ export function registerOnboardingPrompts(server, hosted) {
|
|
|
172
177
|
'5. Build create-from-json payload (type article, articleTypeSlug or articleTypeId, components from articles playbook)\n' +
|
|
173
178
|
'6. cms_edit ["create", "from-json", "--file", "<path>", "--dry-run", "--strict"]\n' +
|
|
174
179
|
'7. On approval, create and save draft\n' +
|
|
175
|
-
|
|
180
|
+
`8. ${PREVIEW_AFTER_SAVE}` +
|
|
181
|
+
'9. Remind user: publish in Contentful UI when ready (cms-edit never publishes)',
|
|
176
182
|
},
|
|
177
183
|
},
|
|
178
184
|
],
|
|
@@ -226,11 +232,13 @@ export function registerOnboardingPrompts(server, hosted) {
|
|
|
226
232
|
`Create page at slug "${slug}" from a freeform document.\n` +
|
|
227
233
|
`${titleLine}${docLine}\n` +
|
|
228
234
|
`${TASKS_PREAMBLE}` +
|
|
229
|
-
'1. cms_edit ["customer", "task-create-from-document"]; overview, routing, components-index\n' +
|
|
235
|
+
'1. cms_edit ["customer", "task-create-from-document"]; overview, routing, pages (if present), components-index\n' +
|
|
230
236
|
'2. Infer page structure: map sections to component types using components-index\n' +
|
|
231
237
|
'3. Propose a plain-English page plan (slug, title, template, components) — ask user to confirm\n' +
|
|
232
238
|
'4. Build create-from-json payload; run cms_edit ["create", "from-json", "--file", "<path>", "--dry-run", "--strict"]\n' +
|
|
233
|
-
'5. On approval, create and save draft
|
|
239
|
+
'5. On approval, create and save draft\n' +
|
|
240
|
+
`6. ${PREVIEW_AFTER_SAVE}` +
|
|
241
|
+
'7. Remind user to publish in Contentful UI when satisfied',
|
|
234
242
|
},
|
|
235
243
|
},
|
|
236
244
|
],
|
|
@@ -265,7 +273,9 @@ export function registerOnboardingPrompts(server, hosted) {
|
|
|
265
273
|
'5. Ask about custom featured image; otherwise apply defaults.md inheritance rules\n' +
|
|
266
274
|
'6. Propose plain-English plan — ask user to confirm\n' +
|
|
267
275
|
'7. Build article create-from-json; run --dry-run --strict\n' +
|
|
268
|
-
'8. On approval, create and save draft
|
|
276
|
+
'8. On approval, create and save draft\n' +
|
|
277
|
+
`9. ${PREVIEW_AFTER_SAVE}` +
|
|
278
|
+
'10. Remind user to publish in Contentful UI when satisfied',
|
|
269
279
|
},
|
|
270
280
|
},
|
|
271
281
|
],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../../src/mcp/prompts/onboarding.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"onboarding.js","sourceRoot":"","sources":["../../../src/mcp/prompts/onboarding.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import type { HostedMcpInfo } from '../guide.js';
|
|
3
3
|
import type { RunCmsEditFn } from '../types.js';
|
|
4
|
-
export declare const TOOL_DESCRIPTION = "Run any cms-edit command. cms-edit edits Contentful draft content (no publishing).\n\nUse cms_edit_version (no args) to check the installed version.\nUse cms_edit_help to read the getting-started guide by topic.\nUse cms_edit_customer to read site-specific playbooks (articles, routing, blog-tag-matrix, etc.).\nIf Integrations only exposes cms_edit, use [\"customer\", \"index\"] or [\"customer\", \"resource=index\"] instead.\nRead the cms-edit://guide resource for the full guide.\n\nWorkflow: open \u2192 snapshot \u2192 read/set/rtf/add/remove \u2192 diff \u2192 save\nAll saves create drafts only \u2014 a human must publish in Contentful.\n\nCommon command sequences:\n [\"open\", \"--page-slug\", \"/\"] \u2014 homepage (CMS slug index; /index is equivalent)\n [\"open\", \"--page-slug\", \"/pricing\"] \u2014 load a page by slug\n [\"open\", \"--id\", \"<entry-id>\"] \u2014 load by Contentful entry ID\n [\"snapshot\"] \u2014 print content tree with @refs\n [\"read\", \"@c0\"] \u2014 read all fields of a component (requires open session)\n [\"read\", \"@c0\", \"heading\"] \u2014 read a specific field (requires open session)\n [\"read\", \"@root\"] \u2014 read root entry fields (requires open session)\n [\"read\", \"<entry-id>\", \"--id\"] \u2014 read entry by ID (no session)\n [\"read\", \"<entry-id>\", \"--id\", \"heading\"] \u2014 read one field by entry ID (no session)\n [\"peek\", \"--page-slug\", \"/pricing\"] \u2014 preview tree + root fields (no session)\n [\"peek\", \"--id\", \"<entry-id>\"] \u2014 preview by entry ID with rootFields in JSON\n [\"set\", \"@c0\", \"heading\", \"New heading\"] \u2014 set a scalar field\n [\"rtf\", \"@c0\", \"body\", \"--content\", \"# H1\\n\\nBody.\"] \u2014 set rich text (preferred for AI)\n [\"rtf\", \"@c0\", \"body\", \"--base64\", \"<encoded>\"] \u2014 set rich text via base64 (no filesystem)\n [\"diff\"] \u2014 show pending changes\n [\"save\"] \u2014 write drafts to Contentful\n [\"discard\"] \u2014 discard unsaved changes\n [\"links\", \"set\", \"@c0\", \"0\", \"variant\", \"link\"] \u2014 set scalar field on link at index 0\n [\"batch\", \"set\", \"<entry-id>:variant=link\"] \u2014 queue scalar edit by entry ID\n [\"batch\", \"diff\"] \u2014 show pending batch edits\n [\"batch\", \"save\"] \u2014 save all batch edits as drafts\n [\"health\"] \u2014 verify config and connectivity\n [\"diagnose\"] \u2014 session/MCP diagnostics (store, userId, active session)\n [\"version\"] \u2014 print installed cms-edit version\n [\"guide\"] \u2014 print getting-started guide\n [\"guide\", \"workflow\"] \u2014 print a guide section\n [\"customer\", \"index\"] \u2014 list site editor playbooks\n [\"customer\", \"articles\"] \u2014 read articles playbook\n [\"customer\", \"resource=index\"] \u2014 same as index (Integrations fallback)\n [\"list\", \"--type\", \"article\", \"--sort\", \"date\", \"-n\", \"10\"] \u2014 recent articles by publication date\n [\"list\", \"--type\", \"article\", \"--sort\", \"date\"] \u2014 list articles (preview index includes drafts)\n [\"peek\", \"--article-slug\", \"<slug>\"] \u2014 preview draft or published article (CMA)\n [\"preview\", \"url\", \"/pricing\"] \u2014 page
|
|
4
|
+
export declare const TOOL_DESCRIPTION = "Run any cms-edit command. cms-edit edits Contentful draft content (no publishing).\n\nUse cms_edit_version (no args) to check the installed version.\nUse cms_edit_help to read the getting-started guide by topic.\nUse cms_edit_customer to read site-specific playbooks (articles, routing, blog-tag-matrix, etc.).\nIf Integrations only exposes cms_edit, use [\"customer\", \"index\"] or [\"customer\", \"resource=index\"] instead.\nRead the cms-edit://guide resource for the full guide.\n\nWorkflow: open \u2192 snapshot \u2192 read/set/rtf/add/remove \u2192 diff \u2192 save\nAll saves create drafts only \u2014 a human must publish in Contentful.\n\nCommon command sequences:\n [\"open\", \"--page-slug\", \"/\"] \u2014 homepage (CMS slug index; /index is equivalent)\n [\"open\", \"--page-slug\", \"/pricing\"] \u2014 load a page by slug\n [\"open\", \"--id\", \"<entry-id>\"] \u2014 load by Contentful entry ID\n [\"snapshot\"] \u2014 print content tree with @refs\n [\"read\", \"@c0\"] \u2014 read all fields of a component (requires open session)\n [\"read\", \"@c0\", \"heading\"] \u2014 read a specific field (requires open session)\n [\"read\", \"@root\"] \u2014 read root entry fields (requires open session)\n [\"read\", \"<entry-id>\", \"--id\"] \u2014 read entry by ID (no session)\n [\"read\", \"<entry-id>\", \"--id\", \"heading\"] \u2014 read one field by entry ID (no session)\n [\"peek\", \"--page-slug\", \"/pricing\"] \u2014 preview tree + root fields (no session)\n [\"peek\", \"--id\", \"<entry-id>\"] \u2014 preview by entry ID with rootFields in JSON\n [\"set\", \"@c0\", \"heading\", \"New heading\"] \u2014 set a scalar field\n [\"rtf\", \"@c0\", \"body\", \"--content\", \"# H1\\n\\nBody.\"] \u2014 set rich text (preferred for AI)\n [\"rtf\", \"@c0\", \"body\", \"--base64\", \"<encoded>\"] \u2014 set rich text via base64 (no filesystem)\n [\"diff\"] \u2014 show pending changes\n [\"save\"] \u2014 write drafts to Contentful\n [\"discard\"] \u2014 discard unsaved changes\n [\"links\", \"set\", \"@c0\", \"0\", \"variant\", \"link\"] \u2014 set scalar field on link at index 0\n [\"batch\", \"set\", \"<entry-id>:variant=link\"] \u2014 queue scalar edit by entry ID\n [\"batch\", \"diff\"] \u2014 show pending batch edits\n [\"batch\", \"save\"] \u2014 save all batch edits as drafts\n [\"health\"] \u2014 verify config and connectivity\n [\"diagnose\"] \u2014 session/MCP diagnostics (store, userId, active session)\n [\"version\"] \u2014 print installed cms-edit version\n [\"guide\"] \u2014 print getting-started guide\n [\"guide\", \"workflow\"] \u2014 print a guide section\n [\"customer\", \"index\"] \u2014 list site editor playbooks\n [\"customer\", \"articles\"] \u2014 read articles playbook\n [\"customer\", \"resource=index\"] \u2014 same as index (Integrations fallback)\n [\"list\", \"--type\", \"article\", \"--sort\", \"date\", \"-n\", \"10\"] \u2014 recent articles by publication date\n [\"list\", \"--type\", \"article\", \"--sort\", \"date\"] \u2014 list articles (preview index includes drafts)\n [\"peek\", \"--article-slug\", \"<slug>\"] \u2014 preview draft or published article (CMA)\n [\"preview\", \"url\", \"/pricing\"] \u2014 staging page URL (open in browser MCP)\n [\"preview\", \"urls\", \"/pricing\"] \u2014 all preview targets (staging, production, site live preview, Contentful)\n [\"preview\", \"showcase\", \"--component\", \"HeroSimple\"] \u2014 component showcase URL (mock data)\n [\"preview\", \"showcase\", \"--collection\", \"CardGrid\", \"--param\", \"backgroundColour=Navy\"]\n\nDiscovery notes:\n Visual checks: use preview url / preview showcase, then open the returned URL with a browser MCP (cms-edit does not capture screenshots).\n peek/open/read --id load draft content via CMA \u2014 NOT published-only.\n Only list --published / resolve --published use the published-only Delivery API index.\n Articles: use --article-slug (not --page-slug). search --type article sorts by publication date.\n\nSessions persist between MCP calls (Redis on hosted, disk locally). MCP auto-uses session \"_mcp\" unless you pass --session.\nUse --session <name> before the subcommand to isolate concurrent workflows, e.g. [\"--session\", \"my-work\", \"open\", \"/\"].\nUse --space <name> to target a specific Contentful space (local MCP only \u2014 omit for hosted Integrations).\nStateless read (no open required): [\"read\", \"<entry-id>\", \"--id\"] or [\"read\", \"<entry-id>\", \"--id\", \"heading\"].\npeek is one-shot (no session): use [\"peek\", \"--page-slug\", \"<slug>\"] or [\"peek\", \"--id\", \"<entry-id>\"]. Includes rootFields in JSON \u2014 no follow-up read required.\nOutput is always JSON (CMS_EDIT_JSON=1 is forced by the MCP server).\n\nRich text tips:\n --content \"<markdown>\" preferred named flag for inline content (any length)\n --base64 \"<encoded>\" fully environment-agnostic, no filesystem needed\n --file \"<abs-path>\" platform-native absolute path required (C:\\\\Users\\\\... on Windows)\n stdin (\"-\") not supported via MCP";
|
|
5
5
|
export declare function registerCmsEditTools(server: McpServer, runCmsEdit: RunCmsEditFn, hosted?: HostedMcpInfo): void;
|
|
6
6
|
export declare function getMcpServerInfo(hosted?: HostedMcpInfo): {
|
|
7
7
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cms-edit.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/cms-edit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"cms-edit.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/cms-edit.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAIzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAOjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhD,eAAO,MAAM,gBAAgB,mgMAkEoB,CAAC;AAElD,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,UAAU,EAAE,YAAY,EACxB,MAAM,CAAC,EAAE,aAAa,GACrB,IAAI,CAsCN;AAED,wBAAgB,gBAAgB,CAAC,MAAM,CAAC,EAAE,aAAa,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAE1F"}
|
|
@@ -47,7 +47,8 @@ Common command sequences:
|
|
|
47
47
|
["list", "--type", "article", "--sort", "date", "-n", "10"] — recent articles by publication date
|
|
48
48
|
["list", "--type", "article", "--sort", "date"] — list articles (preview index includes drafts)
|
|
49
49
|
["peek", "--article-slug", "<slug>"] — preview draft or published article (CMA)
|
|
50
|
-
["preview", "url", "/pricing"] — page
|
|
50
|
+
["preview", "url", "/pricing"] — staging page URL (open in browser MCP)
|
|
51
|
+
["preview", "urls", "/pricing"] — all preview targets (staging, production, site live preview, Contentful)
|
|
51
52
|
["preview", "showcase", "--component", "HeroSimple"] — component showcase URL (mock data)
|
|
52
53
|
["preview", "showcase", "--collection", "CardGrid", "--param", "backgroundColour=Navy"]
|
|
53
54
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cms-edit.js","sourceRoot":"","sources":["../../../src/mcp/tools/cms-edit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,MAAM,CAAC,MAAM,gBAAgB,GAAG
|
|
1
|
+
{"version":3,"file":"cms-edit.js","sourceRoot":"","sources":["../../../src/mcp/tools/cms-edit.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEpE,OAAO,EACL,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iDAkEiB,CAAC;AAElD,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,UAAwB,EACxB,MAAsB;IAEtB,MAAM,CAAC,IAAI,CACT,kBAAkB,EAClB,2BAA2B,CACzB,8JAA8J,EAC9J,MAAM,CACP,EACD,EAAE,EACF,KAAK,IAAI,EAAE;QACT,MAAM,IAAI,GAAG,cAAc,EAAE,CAAC;QAC9B,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,yBAAyB,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;iBAC9D;aACF;SACF,CAAC;IACJ,CAAC,CACF,CAAC;IAEF,MAAM,CAAC,IAAI,CACT,UAAU,EACV,2BAA2B,CAAC,gBAAgB,EAAE,MAAM,CAAC,EACrD;QACE,IAAI,EAAE,CAAC;aACJ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;aACjB,QAAQ,CACP,uJAAuJ,CACxJ;KACJ,EACD,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACjB,MAAM,cAAc,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC;QAC5C,iBAAiB,CAAC,oBAAoB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;QAC3E,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,cAAc,CAAC,CAAC;QAC9C,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACxD,CAAC,CACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAsB;IACrD,OAAO,EAAE,IAAI,EAAE,sBAAsB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;AAC7E,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export type PreviewUrlTarget = 'staging' | 'production' | 'siteLivePreview' | 'contentfulEntry' | 'contentfulLivePreview';
|
|
2
|
+
export interface BuildPreviewUrlsInput {
|
|
3
|
+
spaceId: string;
|
|
4
|
+
environment: string;
|
|
5
|
+
entryId?: string;
|
|
6
|
+
slug?: string;
|
|
7
|
+
devBaseUrl?: string;
|
|
8
|
+
productionSiteUrl?: string;
|
|
9
|
+
requestParams?: Record<string, string>;
|
|
10
|
+
focusedField?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface PreviewUrlResult {
|
|
13
|
+
target: PreviewUrlTarget;
|
|
14
|
+
label: string;
|
|
15
|
+
url: string | null;
|
|
16
|
+
/** When true, draft-only changes are visible at this URL. */
|
|
17
|
+
showsDrafts: boolean;
|
|
18
|
+
notes?: string;
|
|
19
|
+
}
|
|
20
|
+
export declare function buildContentfulEntryUrl(spaceId: string, environment: string, entryId: string, options?: {
|
|
21
|
+
focusedField?: string;
|
|
22
|
+
}): string;
|
|
23
|
+
/**
|
|
24
|
+
* Fetches Contentful's in-app live preview URL (includes ephemeral preview token).
|
|
25
|
+
* Falls back to null when the API is unavailable or the token cannot be resolved.
|
|
26
|
+
*/
|
|
27
|
+
export declare function fetchContentfulLivePreviewUrl(spaceId: string, environment: string, entryId: string, managementToken: string): Promise<string | null>;
|
|
28
|
+
export declare function buildPreviewUrls(input: BuildPreviewUrlsInput): PreviewUrlResult[];
|
|
29
|
+
export declare function buildAllPreviewUrls(input: BuildPreviewUrlsInput & {
|
|
30
|
+
managementToken?: string;
|
|
31
|
+
}): Promise<PreviewUrlResult[]>;
|
|
32
|
+
//# sourceMappingURL=entry-urls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry-urls.d.ts","sourceRoot":"","sources":["../../src/preview/entry-urls.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,gBAAgB,GACxB,SAAS,GACT,YAAY,GACZ,iBAAiB,GACjB,iBAAiB,GACjB,uBAAuB,CAAC;AAE5B,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACvC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,6DAA6D;IAC7D,WAAW,EAAE,OAAO,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAWD,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,GAClC,MAAM,CAMR;AAED;;;GAGG;AACH,wBAAsB,6BAA6B,CACjD,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,EACf,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAaxB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG,gBAAgB,EAAE,CA2DjF;AAED,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,qBAAqB,GAAG;IAAE,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAC1D,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAsB7B"}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { appendRequestParams } from './capture-urls.js';
|
|
2
|
+
function normalizeBaseUrl(url) {
|
|
3
|
+
return url.replace(/\/$/, '');
|
|
4
|
+
}
|
|
5
|
+
function normalizeSlug(slug) {
|
|
6
|
+
if (slug === '/' || slug === '/index')
|
|
7
|
+
return '/';
|
|
8
|
+
return slug.startsWith('/') ? slug : `/${slug}`;
|
|
9
|
+
}
|
|
10
|
+
export function buildContentfulEntryUrl(spaceId, environment, entryId, options) {
|
|
11
|
+
const base = `https://app.contentful.com/spaces/${spaceId}/environments/${environment}/entries/${entryId}`;
|
|
12
|
+
if (options?.focusedField) {
|
|
13
|
+
return `${base}?focusedField=${encodeURIComponent(options.focusedField)}`;
|
|
14
|
+
}
|
|
15
|
+
return base;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Fetches Contentful's in-app live preview URL (includes ephemeral preview token).
|
|
19
|
+
* Falls back to null when the API is unavailable or the token cannot be resolved.
|
|
20
|
+
*/
|
|
21
|
+
export async function fetchContentfulLivePreviewUrl(spaceId, environment, entryId, managementToken) {
|
|
22
|
+
const endpoint = `https://api.contentful.com/spaces/${spaceId}/environments/${environment}/entries/${entryId}/preview`;
|
|
23
|
+
try {
|
|
24
|
+
const res = await fetch(endpoint, {
|
|
25
|
+
headers: { Authorization: `Bearer ${managementToken}` },
|
|
26
|
+
});
|
|
27
|
+
if (!res.ok)
|
|
28
|
+
return null;
|
|
29
|
+
const body = (await res.json());
|
|
30
|
+
const url = body.url ?? body.preview_url;
|
|
31
|
+
return typeof url === 'string' && url.startsWith('http') ? url : null;
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return null;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
export function buildPreviewUrls(input) {
|
|
38
|
+
const slug = input.slug ? normalizeSlug(input.slug) : undefined;
|
|
39
|
+
const results = [];
|
|
40
|
+
if (input.devBaseUrl && slug) {
|
|
41
|
+
const stagingUrl = appendRequestParams(`${normalizeBaseUrl(input.devBaseUrl)}${slug === '/' ? '' : slug}`, input.requestParams);
|
|
42
|
+
results.push({
|
|
43
|
+
target: 'staging',
|
|
44
|
+
label: 'Staging site',
|
|
45
|
+
url: stagingUrl,
|
|
46
|
+
showsDrafts: false,
|
|
47
|
+
notes: 'Public staging path. Draft content may require the site live-preview redirect or Contentful preview.',
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
if (input.devBaseUrl && input.entryId) {
|
|
51
|
+
const params = new URLSearchParams({ id: input.entryId });
|
|
52
|
+
if (input.requestParams) {
|
|
53
|
+
for (const [key, value] of Object.entries(input.requestParams)) {
|
|
54
|
+
params.set(key, value);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
results.push({
|
|
58
|
+
target: 'siteLivePreview',
|
|
59
|
+
label: 'Site live preview',
|
|
60
|
+
url: `${normalizeBaseUrl(input.devBaseUrl)}/preview?${params.toString()}`,
|
|
61
|
+
showsDrafts: true,
|
|
62
|
+
notes: 'Entry-aware redirect (Contentful preview destination). Best for verifying drafts on staging.',
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
if (input.productionSiteUrl && slug) {
|
|
66
|
+
results.push({
|
|
67
|
+
target: 'production',
|
|
68
|
+
label: 'Production site',
|
|
69
|
+
url: `${normalizeBaseUrl(input.productionSiteUrl)}${slug === '/' ? '' : slug}`,
|
|
70
|
+
showsDrafts: false,
|
|
71
|
+
notes: 'Published content only until the entry is published in Contentful.',
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
if (input.entryId) {
|
|
75
|
+
results.push({
|
|
76
|
+
target: 'contentfulEntry',
|
|
77
|
+
label: 'Contentful entry editor',
|
|
78
|
+
url: buildContentfulEntryUrl(input.spaceId, input.environment, input.entryId, {
|
|
79
|
+
focusedField: input.focusedField,
|
|
80
|
+
}),
|
|
81
|
+
showsDrafts: true,
|
|
82
|
+
notes: 'Open the entry in Contentful. Use the Live preview tab for in-app draft preview.',
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
return results;
|
|
86
|
+
}
|
|
87
|
+
export async function buildAllPreviewUrls(input) {
|
|
88
|
+
const results = buildPreviewUrls(input);
|
|
89
|
+
if (input.entryId && input.managementToken) {
|
|
90
|
+
const livePreviewUrl = await fetchContentfulLivePreviewUrl(input.spaceId, input.environment, input.entryId, input.managementToken);
|
|
91
|
+
if (livePreviewUrl) {
|
|
92
|
+
results.push({
|
|
93
|
+
target: 'contentfulLivePreview',
|
|
94
|
+
label: 'Contentful live preview',
|
|
95
|
+
url: livePreviewUrl,
|
|
96
|
+
showsDrafts: true,
|
|
97
|
+
notes: 'In-app Contentful preview with inspector mode.',
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
return results;
|
|
102
|
+
}
|
|
103
|
+
//# sourceMappingURL=entry-urls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entry-urls.js","sourceRoot":"","sources":["../../src/preview/entry-urls.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/project/doctor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/project/doctor.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAiDD,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,aAAa,EAAE,CAwI7F"}
|
package/dist/project/doctor.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as fs from 'node:fs';
|
|
2
2
|
import * as path from 'node:path';
|
|
3
|
+
import { hasSiteHandbook } from '../editor-pack/capabilities.js';
|
|
3
4
|
import { loadEditorPackManifest } from '../editor-pack/load.js';
|
|
4
5
|
import { parseConstants } from '../editor-pack/parse-constants.js';
|
|
5
6
|
import { resolveRepoRoot, resolveWebsiteAppDir } from './load.js';
|
|
@@ -109,6 +110,29 @@ export function runProjectDoctor(configPath, project) {
|
|
|
109
110
|
message: 'editor-pack has no articles.md — regenerate after adding articles playbook',
|
|
110
111
|
});
|
|
111
112
|
}
|
|
113
|
+
if (!hasSiteHandbook(repoRoot, project.projectKey, 'pages.md')) {
|
|
114
|
+
findings.push({
|
|
115
|
+
severity: 'info',
|
|
116
|
+
code: 'pages_playbook_missing',
|
|
117
|
+
message: `Add docs/cms-editor/${project.projectKey}/pages.md for landing-page and create-from-doc playbooks`,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
else if (!manifest.resources.includes('pages')) {
|
|
121
|
+
findings.push({
|
|
122
|
+
severity: 'warning',
|
|
123
|
+
code: 'pack_pages_missing',
|
|
124
|
+
message: 'editor-pack has no pages.md — regenerate after adding pages playbook',
|
|
125
|
+
});
|
|
126
|
+
}
|
|
127
|
+
const constants = parseConstants(appDir);
|
|
128
|
+
const hasPersons = constants.enablePerson === true || Boolean(constants.peopleBase);
|
|
129
|
+
if (hasPersons && !hasSiteHandbook(repoRoot, project.projectKey, 'people.md')) {
|
|
130
|
+
findings.push({
|
|
131
|
+
severity: 'info',
|
|
132
|
+
code: 'people_playbook_missing',
|
|
133
|
+
message: `Add docs/cms-editor/${project.projectKey}/people.md for team profiles and author import`,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
112
136
|
const routingPath = path.join(packDir, 'routing.md');
|
|
113
137
|
if (fs.existsSync(routingPath)) {
|
|
114
138
|
const routing = fs.readFileSync(routingPath, 'utf8');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/project/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/project/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,8 @@
|
|
|
24
24
|
5. Build `create from-json` payload
|
|
25
25
|
6. `cms_edit ["create", "from-json", "--file", "<path>", "--dry-run", "--strict"]`
|
|
26
26
|
7. On approval, create and `save`
|
|
27
|
-
8.
|
|
27
|
+
8. `cms_edit ["preview", "urls", "<slug>"]` — open **site live preview** or staging URL in browser MCP; offer production and Contentful entry URLs
|
|
28
|
+
9. Remind user to publish in Contentful UI
|
|
28
29
|
|
|
29
30
|
Use MCP prompts `cms_edit_create_from_doc` or `cms_edit_create_article_from_doc` when available.
|
|
30
31
|
|
|
@@ -42,4 +43,5 @@ Use MCP prompts `cms_edit_create_from_doc` or `cms_edit_create_article_from_doc`
|
|
|
42
43
|
## Related resources
|
|
43
44
|
|
|
44
45
|
- `cms-edit://customer/components-index`
|
|
45
|
-
- `task-media-reuse-and-upload`
|
|
46
|
+
- `task-media-reuse-and-upload`
|
|
47
|
+
- `task-preview-verify`
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
- preview changes
|
|
6
6
|
- check staging
|
|
7
7
|
- verify page looks right
|
|
8
|
+
- open in browser
|
|
8
9
|
|
|
9
10
|
## Requires capabilities
|
|
10
11
|
|
|
@@ -13,21 +14,53 @@ Always available.
|
|
|
13
14
|
## Prerequisites
|
|
14
15
|
|
|
15
16
|
- Draft saved (`save` creates drafts)
|
|
16
|
-
- Staging URL from `cms-edit://customer/overview`
|
|
17
|
+
- Staging URL from `cms-edit://customer/overview` or `capabilities.json` → `website.devBaseUrl`
|
|
18
|
+
- Entry ID from session (after `open` / `save`) or `--entry-id`
|
|
19
|
+
|
|
20
|
+
## Preview targets
|
|
21
|
+
|
|
22
|
+
After saving a draft, agents should offer **all applicable URLs** and open the best default in a browser MCP (Chrome DevTools, agent-browser, etc.).
|
|
23
|
+
|
|
24
|
+
| Target | Command | When to use |
|
|
25
|
+
|--------|---------|-------------|
|
|
26
|
+
| **Staging site** | `preview url <slug>` | Quick check on develop/staging deployment |
|
|
27
|
+
| **All URLs** | `preview urls <slug>` | Returns staging, production, site live preview, Contentful entry (and live preview when API resolves) |
|
|
28
|
+
| **Site live preview** | Included in `preview urls` | `{devBaseUrl}/preview?id={entryId}` — entry-aware draft redirect; **preferred for new drafts** |
|
|
29
|
+
| **Production site** | Included in `preview urls` | Published content only — use after publish or to compare live |
|
|
30
|
+
| **Contentful entry** | Included in `preview urls` | `app.contentful.com/.../entries/{id}` — editor + Live preview tab |
|
|
31
|
+
| **Contentful live preview** | Included in `preview urls` when available | In-app iframe preview with inspector (ephemeral token from Contentful API) |
|
|
17
32
|
|
|
18
33
|
## Steps
|
|
19
34
|
|
|
20
|
-
1. After `save`,
|
|
35
|
+
1. After `save`, list all preview URLs:
|
|
21
36
|
```
|
|
22
|
-
cms_edit ["preview", "
|
|
37
|
+
cms_edit ["preview", "urls", "<slug>"]
|
|
23
38
|
```
|
|
24
|
-
|
|
25
|
-
|
|
39
|
+
Or with explicit entry ID:
|
|
40
|
+
```
|
|
41
|
+
cms_edit ["preview", "urls", "<slug>", "--entry-id", "<entry-id>"]
|
|
42
|
+
```
|
|
43
|
+
Use `--json` for machine-readable output.
|
|
44
|
+
|
|
45
|
+
2. **Default open for new drafts:** site live preview (`siteLivePreview`) or staging URL — whichever the site playbook recommends.
|
|
46
|
+
|
|
47
|
+
3. **Open in browser** — use browser MCP on the chosen URL. Offer the user links to the other targets.
|
|
48
|
+
|
|
49
|
+
4. Summarize what to check (headings, CTAs, images, template blocks) before publish handoff.
|
|
50
|
+
|
|
51
|
+
### Legacy single URL
|
|
52
|
+
|
|
53
|
+
```
|
|
54
|
+
cms_edit ["preview", "url", "--page-slug", "<slug>"]
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Still valid for staging-only checks.
|
|
26
58
|
|
|
27
59
|
## Confirmation gates
|
|
28
60
|
|
|
29
61
|
1. Confirm draft saved before preview
|
|
30
62
|
2. Summarize what to check (headings, CTAs, images)
|
|
63
|
+
3. Tell user production URL will not show draft content until published
|
|
31
64
|
|
|
32
65
|
## Out of scope
|
|
33
66
|
|
|
@@ -35,4 +68,5 @@ Always available.
|
|
|
35
68
|
|
|
36
69
|
## Related resources
|
|
37
70
|
|
|
38
|
-
- `cms-edit://customer/overview`
|
|
71
|
+
- `cms-edit://customer/overview`
|
|
72
|
+
- `cms-edit://customer/production-site`
|