@kywi-software/mcp 0.14.0 → 0.15.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.
Files changed (62) hide show
  1. package/AGENT-PATTERNS.md +200 -17
  2. package/README.md +39 -0
  3. package/dist/site/server.d.ts.map +1 -1
  4. package/dist/site/server.js +4 -3
  5. package/dist/site/server.js.map +1 -1
  6. package/dist/site/tools/components.d.ts.map +1 -1
  7. package/dist/site/tools/components.js +8 -4
  8. package/dist/site/tools/components.js.map +1 -1
  9. package/dist/site/tools/content.d.ts +2 -0
  10. package/dist/site/tools/content.d.ts.map +1 -1
  11. package/dist/site/tools/content.js +28 -6
  12. package/dist/site/tools/content.js.map +1 -1
  13. package/dist/site/tools/feeds.d.ts.map +1 -1
  14. package/dist/site/tools/feeds.js +5 -2
  15. package/dist/site/tools/feeds.js.map +1 -1
  16. package/dist/site/tools/layout.d.ts.map +1 -1
  17. package/dist/site/tools/layout.js +50 -4
  18. package/dist/site/tools/layout.js.map +1 -1
  19. package/dist/site/tools/media.d.ts +15 -0
  20. package/dist/site/tools/media.d.ts.map +1 -1
  21. package/dist/site/tools/media.js +50 -14
  22. package/dist/site/tools/media.js.map +1 -1
  23. package/dist/site/tools/menus.d.ts +13 -0
  24. package/dist/site/tools/menus.d.ts.map +1 -1
  25. package/dist/site/tools/menus.js +22 -4
  26. package/dist/site/tools/menus.js.map +1 -1
  27. package/dist/site/tools/users.d.ts +0 -2
  28. package/dist/site/tools/users.d.ts.map +1 -1
  29. package/dist/site/tools/users.js +8 -10
  30. package/dist/site/tools/users.js.map +1 -1
  31. package/dist/site/tools/webhooks.d.ts.map +1 -1
  32. package/dist/site/tools/webhooks.js +3 -0
  33. package/dist/site/tools/webhooks.js.map +1 -1
  34. package/package.json +4 -4
  35. package/dist/__tests__/auto-detect.test.d.ts +0 -2
  36. package/dist/__tests__/auto-detect.test.d.ts.map +0 -1
  37. package/dist/__tests__/auto-detect.test.js +0 -134
  38. package/dist/__tests__/auto-detect.test.js.map +0 -1
  39. package/dist/__tests__/config.test.d.ts +0 -2
  40. package/dist/__tests__/config.test.d.ts.map +0 -1
  41. package/dist/__tests__/config.test.js +0 -72
  42. package/dist/__tests__/config.test.js.map +0 -1
  43. package/dist/__tests__/developer-mutation.test.d.ts +0 -2
  44. package/dist/__tests__/developer-mutation.test.d.ts.map +0 -1
  45. package/dist/__tests__/developer-mutation.test.js +0 -511
  46. package/dist/__tests__/developer-mutation.test.js.map +0 -1
  47. package/dist/__tests__/developer-read-only.test.d.ts +0 -2
  48. package/dist/__tests__/developer-read-only.test.d.ts.map +0 -1
  49. package/dist/__tests__/developer-read-only.test.js +0 -192
  50. package/dist/__tests__/developer-read-only.test.js.map +0 -1
  51. package/dist/__tests__/site-content-tools.test.d.ts +0 -2
  52. package/dist/__tests__/site-content-tools.test.d.ts.map +0 -1
  53. package/dist/__tests__/site-content-tools.test.js +0 -446
  54. package/dist/__tests__/site-content-tools.test.js.map +0 -1
  55. package/dist/__tests__/site-layout-tools.test.d.ts +0 -2
  56. package/dist/__tests__/site-layout-tools.test.d.ts.map +0 -1
  57. package/dist/__tests__/site-layout-tools.test.js +0 -316
  58. package/dist/__tests__/site-layout-tools.test.js.map +0 -1
  59. package/dist/__tests__/site-other-tools.test.d.ts +0 -2
  60. package/dist/__tests__/site-other-tools.test.d.ts.map +0 -1
  61. package/dist/__tests__/site-other-tools.test.js +0 -318
  62. package/dist/__tests__/site-other-tools.test.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/site/tools/feeds.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feeds.js","sourceRoot":"","sources":["../../../src/site/tools/feeds.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/site/tools/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../../src/site/tools/layout.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,17 @@
1
1
  import { z } from 'zod';
2
+ import { createModuleRegistry, applyModuleDefaults } from '@kywi-software/core';
2
3
  import { textResult, errorResult } from '../../shared.js';
4
+ /**
5
+ * The BUILT-IN module palette, for seeding a newly placed module's declared
6
+ * prop defaults (kywi-cms#197).
7
+ *
8
+ * This process talks to a site over REST and has no access to that site's
9
+ * `kywi.config.ts`, so custom modules are not in here — the server seeds those
10
+ * on the write path, which is where the rule authoritatively lives. Seeding the
11
+ * built-ins here as well means the node this tool hands back matches the node
12
+ * that was actually stored, instead of showing an agent an empty props object.
13
+ */
14
+ const builtInModules = createModuleRegistry([]);
3
15
  // ─── Pure helpers ────────────────────────────────────────────────────────────
4
16
  function findSection(layout, region, rowId) {
5
17
  const sections = layout.regions[region];
@@ -13,6 +25,33 @@ function findColumn(section, colId) {
13
25
  function findModule(column, instanceId) {
14
26
  return column.nodes.find((n) => n.type !== 'moduleVariantContainer' && n.instanceId === instanceId);
15
27
  }
28
+ /**
29
+ * Is `instanceId` actually inside a `moduleVariantContainer` in this column
30
+ * (kywi-cms#169)? `findModule` deliberately excludes container arms — a
31
+ * personalized/A-B'd module's arm is not addressable by `update_module_props`
32
+ * / `remove_module`, which only ever wrote a plain module in place — so a
33
+ * caller that has never seen `get_layout`'s tree would get a bare "not found"
34
+ * for an id it can plainly see there, and keep retrying with no way to tell a
35
+ * typo apart from a module it simply cannot reach this way. Mirrors
36
+ * `describeIneligibility`'s pointer for `personalize_module`.
37
+ */
38
+ function describeModuleContainerHit(column, instanceId) {
39
+ for (const node of column.nodes) {
40
+ if (node.type !== 'moduleVariantContainer')
41
+ continue;
42
+ const mvc = node;
43
+ if (mvc.defaultModule.instanceId === instanceId) {
44
+ return `Module instance '${instanceId}' is the Default arm of moduleVariantContainer '${mvc.id}'. ` +
45
+ 'This tool cannot reach into a container\'s arms — read the layout with get_layout and rewrite the container with update_layout instead.';
46
+ }
47
+ const arm = mvc.variants.find((v) => v.module.instanceId === instanceId);
48
+ if (arm) {
49
+ return `Module instance '${instanceId}' is variant '${arm.id}' of moduleVariantContainer '${mvc.id}'. ` +
50
+ 'This tool cannot reach into a container\'s arms — read the layout with get_layout and rewrite the container with update_layout instead.';
51
+ }
52
+ }
53
+ return null;
54
+ }
16
55
  function parseLayout(content) {
17
56
  // Core 0.6.1 stores the layout as a `layout` jsonb object. Older content used a
18
57
  // stringified `layoutJson`; keep the fallback so mixed data still reads.
@@ -58,7 +97,8 @@ export async function handleAddModule(sdk, args) {
58
97
  id: crypto.randomUUID(),
59
98
  type: args.module,
60
99
  instanceId: crypto.randomUUID(),
61
- props: args.props ?? {},
100
+ // Omitted prop → the module's declared default; explicit '' → stays ''.
101
+ props: applyModuleDefaults(args.props, builtInModules, args.module),
62
102
  style: {},
63
103
  };
64
104
  column.nodes.push(newModule);
@@ -81,7 +121,8 @@ export async function handleRemoveModule(sdk, args) {
81
121
  const before = column.nodes.length;
82
122
  column.nodes = column.nodes.filter((n) => n.type === 'moduleVariantContainer' || n.instanceId !== args.instanceId);
83
123
  if (column.nodes.length === before) {
84
- return errorResult(`Module '${args.instanceId}' not found in column '${args.colId}'`);
124
+ const why = describeModuleContainerHit(column, args.instanceId);
125
+ return errorResult(why ?? `Module '${args.instanceId}' not found in column '${args.colId}'`);
85
126
  }
86
127
  const updated = await sdk.content.update(args.type, args.id, {
87
128
  layout,
@@ -100,8 +141,10 @@ export async function handleUpdateModuleProps(sdk, args) {
100
141
  if (!column)
101
142
  return errorResult(`Column '${args.colId}' not found in row '${args.rowId}'`);
102
143
  const mod = findModule(column, args.instanceId);
103
- if (!mod)
104
- return errorResult(`Module '${args.instanceId}' not found in column '${args.colId}'`);
144
+ if (!mod) {
145
+ const why = describeModuleContainerHit(column, args.instanceId);
146
+ return errorResult(why ?? `Module '${args.instanceId}' not found in column '${args.colId}'`);
147
+ }
105
148
  mod.props = { ...mod.props, ...args.props };
106
149
  const updated = await sdk.content.update(args.type, args.id, {
107
150
  layout,
@@ -298,6 +341,9 @@ export function registerLayoutTools(server, sdk) {
298
341
  description: 'Add a module to a specific column in a layout row. `module` must be a `type` name from list_module_types ' +
299
342
  '(built-ins) or a custom module defined in kywi.config.ts — call list_module_types first if you have not ' +
300
343
  "already. `props` should match that module's props schema. " +
344
+ 'DEFAULTS: any prop you OMIT is filled in with the value the module declares as its default, so a module ' +
345
+ 'placed with no props still renders as something. Pass an explicit empty string to mean "intentionally ' +
346
+ 'blank" — omitted takes the default, `\'\'` stays blank. ' +
301
347
  'For section-level A/B tests or audience variants, add a `variantContainer` row (see update_layout); to vary ' +
302
348
  'ONE module, add it normally and then call personalize_module.',
303
349
  inputSchema: {
@@ -1 +1 @@
1
- {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/site/tools/layout.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../../src/site/tools/layout.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,14 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
2
  import type { KywiSdkScope } from '@kywi-software/sdk';
3
+ /**
4
+ * Upload a base64 payload as a media file (kywi-cms#198).
5
+ *
6
+ * `mimeType` is passed through to the SDK, which sends it as the request's
7
+ * Content-Type alongside an `x-filename` header — the two things `POST /media`
8
+ * actually reads. It used to be accepted and then dropped: the SDK sent
9
+ * multipart, so the server saw `multipart/form-data` as the file's type and no
10
+ * filename at all, and rejected every upload as extensionless.
11
+ */
3
12
  export declare function handleUploadMedia(sdk: KywiSdkScope, args: {
4
13
  filename: string;
5
14
  mimeType: string;
@@ -12,6 +21,12 @@ export declare function handleUploadMedia(sdk: KywiSdkScope, args: {
12
21
  text: string;
13
22
  }];
14
23
  isError?: undefined;
24
+ } | {
25
+ content: [{
26
+ type: "text";
27
+ text: string;
28
+ }];
29
+ isError: true;
15
30
  }>;
16
31
  export declare function handleListMedia(sdk: KywiSdkScope, args: {
17
32
  siteId?: string | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../../src/site/tools/media.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAKtD,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAQnH;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAQ5H;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;;;;;;GAIrB;AAID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CA4B7E"}
1
+ {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../../src/site/tools/media.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAKtD;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;;;;;;;GAgBnH;AAED,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAiB5H;AAED,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE;;;;;;GAIrB;AAID,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAuC7E"}
@@ -1,13 +1,31 @@
1
1
  import { z } from 'zod';
2
- import { textResult } from '../../shared.js';
2
+ import { textResult, errorResult } from '../../shared.js';
3
3
  // ─── Exported handler functions (testable without server) ───────────────────
4
+ /**
5
+ * Upload a base64 payload as a media file (kywi-cms#198).
6
+ *
7
+ * `mimeType` is passed through to the SDK, which sends it as the request's
8
+ * Content-Type alongside an `x-filename` header — the two things `POST /media`
9
+ * actually reads. It used to be accepted and then dropped: the SDK sent
10
+ * multipart, so the server saw `multipart/form-data` as the file's type and no
11
+ * filename at all, and rejected every upload as extensionless.
12
+ */
4
13
  export async function handleUploadMedia(sdk, args) {
5
14
  const buffer = Buffer.from(args.data, 'base64');
6
- const item = await sdk.media.upload(buffer, args.filename, {
7
- alt: args.alt,
8
- caption: args.caption,
9
- });
10
- return textResult(item);
15
+ try {
16
+ const item = await sdk.media.upload(buffer, args.filename, {
17
+ alt: args.alt,
18
+ caption: args.caption,
19
+ mimeType: args.mimeType,
20
+ });
21
+ return textResult(item);
22
+ }
23
+ catch (err) {
24
+ // The upload allowlist rejects with a 400 the SDK raises as an error. An
25
+ // agent needs the server's reason ("extension .exe is not allowed"), not a
26
+ // stack trace from inside the tool loop.
27
+ return errorResult(`Failed to upload media: ${err instanceof Error ? err.message : String(err)}`);
28
+ }
11
29
  }
12
30
  export async function handleListMedia(sdk, args) {
13
31
  const result = await sdk.media.list({
@@ -15,7 +33,16 @@ export async function handleListMedia(sdk, args) {
15
33
  limit: args.limit,
16
34
  mimeType: args.mimeType,
17
35
  });
18
- return textResult({ items: result.data, total: result.meta.total, page: result.meta.page, pageSize: result.meta.pageSize });
36
+ const meta = result.meta;
37
+ return textResult({
38
+ items: result.data,
39
+ total: meta.total,
40
+ page: meta.page,
41
+ pageSize: meta.pageSize,
42
+ // kywi-cms#199: say out loud whether this is everything. Without a limit it
43
+ // always is; with one, the caller has to page.
44
+ hasMore: meta.hasMore ?? meta.page * meta.pageSize < meta.total,
45
+ });
19
46
  }
20
47
  export async function handleDeleteMedia(sdk, args) {
21
48
  await sdk.media.delete(args.id);
@@ -24,22 +51,31 @@ export async function handleDeleteMedia(sdk, args) {
24
51
  // ─── Registration ───────────────────────────────────────────────────────────
25
52
  export function registerMediaTools(server, sdk) {
26
53
  server.registerTool('upload_media', {
27
- description: 'Upload a media file from base64-encoded data',
54
+ description: 'Upload a media file from base64-encoded data. `filename` must carry a real extension — the server '
55
+ + 'gates uploads on both the extension and the MIME type, so `hero.png` + `image/png` is accepted and '
56
+ + 'an extensionless name is refused. The name is reduced to a plain basename: path segments are '
57
+ + 'stripped and anything outside [A-Za-z0-9._-] becomes `_`, so pass a bare file name and read the '
58
+ + 'stored `filename` back from the result. `alt` and `caption` are saved as the file\'s metadata.',
28
59
  inputSchema: {
29
- filename: z.string().describe('File name'),
30
- mimeType: z.string().describe('MIME type (e.g. image/png)'),
60
+ filename: z.string().describe('File name, including its extension (e.g. hero.png)'),
61
+ mimeType: z.string().describe('MIME type (e.g. image/png) — must match the extension'),
31
62
  data: z.string().describe('Base64-encoded file data'),
32
63
  alt: z.string().optional().describe('Alt text for the media'),
33
64
  caption: z.string().optional().describe('Caption for the media'),
34
65
  },
35
66
  }, async (args) => handleUploadMedia(sdk, args));
36
67
  server.registerTool('list_media', {
37
- description: 'List media files with optional pagination and MIME type filtering',
68
+ description: 'List media files. Omit `limit` and you get the site\'s ENTIRE library in one call (media is not '
69
+ + 'capped by default, unlike list_content); pass `limit` to page through it. `page` is only '
70
+ + 'meaningful WITH a `limit` — sending it alone is an error, not a silent page 1. The result '
71
+ + 'carries `total` and `hasMore` — when `hasMore` is true you are looking at a partial answer and '
72
+ + 'must request the next `page`. `mimeType` matches by prefix, so `image/` narrows to images and '
73
+ + '`image/png` selects one type.',
38
74
  inputSchema: {
39
75
  siteId: z.string().optional().describe('Filter by site ID (informational only)'),
40
- limit: z.number().optional().describe('Items per page'),
41
- page: z.number().optional().describe('Page number'),
42
- mimeType: z.string().optional().describe('Filter by MIME type (e.g. image/jpeg)'),
76
+ limit: z.number().optional().describe('Items per page (max 100) — omit to return every file'),
77
+ page: z.number().optional().describe('Page number (1-based) — requires limit'),
78
+ mimeType: z.string().optional().describe('Filter by MIME type prefix (e.g. image/ or image/jpeg)'),
43
79
  },
44
80
  }, async (args) => handleListMedia(sdk, args));
45
81
  server.registerTool('delete_media', {
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/site/tools/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../../src/site/tools/media.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,17 @@ import type { KywiSdkScope } from '@kywi-software/sdk';
6
6
  * never by raw content id.
7
7
  */
8
8
  export interface MenuItemInputArg {
9
+ /**
10
+ * Existing row id from `get_menu`. Kept across the replace instead of being
11
+ * re-minted, so a re-run of the same tree leaves the row identities alone
12
+ * (kywi-cms#116). Unlike `contentId` this is not a stability trap — it is the
13
+ * menu item's OWN id, and the API rejects one that is not already this
14
+ * menu's.
15
+ */
16
+ id?: string | undefined;
9
17
  label: string;
18
+ /** `'label'` is a heading: no target, children kept (kywi-cms#116). */
19
+ kind?: 'link' | 'label' | undefined;
10
20
  contentSlug?: string | undefined;
11
21
  externalUrl?: string | undefined;
12
22
  description?: string | undefined;
@@ -18,6 +28,9 @@ export interface MenuItemInputArg {
18
28
  * contentSlug / externalUrl, or null when the whole tree is valid. The API
19
29
  * enforces this too; failing here names the offending item so an agent can fix
20
30
  * it without decoding a 400.
31
+ *
32
+ * A `kind: 'label'` item inverts the rule: a heading must set NEITHER
33
+ * (kywi-cms#116).
21
34
  */
22
35
  export declare function findLinkTargetError(items: MenuItemInputArg[], ancestors?: string[]): string | null;
23
36
  export declare function handleListMenus(sdk: KywiSdkScope, args: {
@@ -1 +1 @@
1
- {"version":3,"file":"menus.d.ts","sourceRoot":"","sources":["../../../src/site/tools/menus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGtD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAA;CAC1C;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EAAE,EACzB,SAAS,GAAE,MAAM,EAAO,GACvB,MAAM,GAAG,IAAI,CAiBf;AAID,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAItC;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;;;;;;;GAOpD;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,gBAAgB,EAAE,CAAA;CAAE;;;;;;;;;;;;GAY7F;AAaD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAyB5E"}
1
+ {"version":3,"file":"menus.d.ts","sourceRoot":"","sources":["../../../src/site/tools/menus.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAGtD;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;;OAMG;IACH,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IACvB,KAAK,EAAE,MAAM,CAAA;IACb,uEAAuE;IACvE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS,CAAA;IACnC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;IAChC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;IACrC,QAAQ,CAAC,EAAE,gBAAgB,EAAE,GAAG,SAAS,CAAA;CAC1C;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,gBAAgB,EAAE,EACzB,SAAS,GAAE,MAAM,EAAO,GACvB,MAAM,GAAG,IAAI,CA2Bf;AAID,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAKtC;AAED,wBAAsB,aAAa,CACjC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;;;;;;;GAOpD;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,EAAE,gBAAgB,EAAE,CAAA;CAAE;;;;;;;;;;;;GAY7F;AAeD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CA2B5E"}
@@ -5,17 +5,31 @@ import { textResult, errorResult } from '../../shared.js';
5
5
  * contentSlug / externalUrl, or null when the whole tree is valid. The API
6
6
  * enforces this too; failing here names the offending item so an agent can fix
7
7
  * it without decoding a 400.
8
+ *
9
+ * A `kind: 'label'` item inverts the rule: a heading must set NEITHER
10
+ * (kywi-cms#116).
8
11
  */
9
12
  export function findLinkTargetError(items, ancestors = []) {
10
13
  for (const item of items) {
11
14
  const path = [...ancestors, item.label].join(' > ');
12
15
  const hasSlug = item.contentSlug !== undefined && item.contentSlug !== '';
13
16
  const hasUrl = item.externalUrl !== undefined && item.externalUrl !== '';
17
+ if (item.kind === 'label') {
18
+ if (hasSlug || hasUrl) {
19
+ return `Menu item "${path}" is a label-only heading — remove contentSlug/externalUrl, or drop kind: "label".`;
20
+ }
21
+ if (item.children?.length) {
22
+ const childError = findLinkTargetError(item.children, [...ancestors, item.label]);
23
+ if (childError)
24
+ return childError;
25
+ }
26
+ continue;
27
+ }
14
28
  if (hasSlug && hasUrl) {
15
29
  return `Menu item "${path}" sets both contentSlug and externalUrl — set exactly one.`;
16
30
  }
17
31
  if (!hasSlug && !hasUrl) {
18
- return `Menu item "${path}" sets neither contentSlug nor externalUrl — set exactly one.`;
32
+ return `Menu item "${path}" sets neither contentSlug nor externalUrl — set exactly one (or kind: "label" for a heading).`;
19
33
  }
20
34
  if (item.children?.length) {
21
35
  const childError = findLinkTargetError(item.children, [...ancestors, item.label]);
@@ -28,7 +42,8 @@ export function findLinkTargetError(items, ancestors = []) {
28
42
  // ─── Exported handler functions (testable without server) ───────────────────
29
43
  export async function handleListMenus(sdk, args) {
30
44
  const menus = await sdk.menus.list({ siteId: args.siteId });
31
- return textResult({ menus, total: menus.length });
45
+ // Every menu, in one response (kywi-cms#199).
46
+ return textResult({ menus, total: menus.length, hasMore: false });
32
47
  }
33
48
  export async function handleGetMenu(sdk, args) {
34
49
  const menu = await sdk.menus.get(args.slug, { siteId: args.siteId });
@@ -51,7 +66,9 @@ export async function handleUpsertMenu(sdk, args) {
51
66
  }
52
67
  // ─── Registration ───────────────────────────────────────────────────────────
53
68
  const menuItemSchema = z.lazy(() => z.object({
69
+ id: z.string().uuid().optional().describe('Existing item id from get_menu — pass it back to keep that row across the replace; omit it for a new item and one is minted'),
54
70
  label: z.string().describe('Visible link text (always required — it wins over the page title)'),
71
+ kind: z.enum(['link', 'label']).optional().describe('"link" (default) links somewhere; "label" is a structural heading with NO target that still keeps its children — use it for mega-panel/footer column headings'),
55
72
  contentSlug: z.string().optional().describe('Slug of a page in this site to link to; href resolves live from the page path'),
56
73
  externalUrl: z.string().optional().describe('Absolute off-site URL, e.g. https://github.com/…'),
57
74
  description: z.string().optional().describe('Supporting copy shown in mega-menu panels'),
@@ -60,7 +77,8 @@ const menuItemSchema = z.lazy(() => z.object({
60
77
  }));
61
78
  export function registerMenuTools(server, sdk) {
62
79
  server.registerTool('list_menus', {
63
- description: "List the site's named navigation menus (slug + name). Use this to discover which menus exist before editing one.",
80
+ description: "List the site's named navigation menus (slug + name). Use this to discover which menus exist before "
81
+ + 'editing one. Returns every menu in one call — `hasMore` is always false.',
64
82
  inputSchema: {
65
83
  siteId: z.string().optional().describe('Site ID (uses default if omitted)'),
66
84
  },
@@ -73,7 +91,7 @@ export function registerMenuTools(server, sdk) {
73
91
  },
74
92
  }, async (args) => handleGetMenu(sdk, args));
75
93
  server.registerTool('upsert_menu', {
76
- description: 'Create or update a navigation menu and replace its entire item tree in one idempotent call. Items are nested; each item links to a page via `contentSlug` (preferred — the href stays correct when the page moves) OR to an off-site address via `externalUrl`. Exactly one of the two is required per item. Re-running with the same input is a no-op.',
94
+ description: 'Create or update a navigation menu and replace its entire item tree in one idempotent call. Items are nested; each item links to a page via `contentSlug` (preferred — the href stays correct when the page moves) OR to an off-site address via `externalUrl`. Exactly one of the two is required per item, unless the item sets `kind: "label"` — a structural heading with no target, for a mega-panel or footer column title. Re-running with the same input is a no-op; pass each item\'s `id` from `get_menu` to keep its row identity too.',
77
95
  inputSchema: {
78
96
  slug: z.string().describe('Menu slug, e.g. "main" or "footer"'),
79
97
  name: z.string().describe('Human-readable menu name shown in the admin'),
@@ -1 +1 @@
1
- {"version":3,"file":"menus.js","sourceRoot":"","sources":["../../../src/site/tools/menus.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menus.js","sourceRoot":"","sources":["../../../src/site/tools/menus.ts"],"names":[],"mappings":"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"}
@@ -3,8 +3,6 @@ import type { KywiSdkScope } from '@kywi-software/sdk';
3
3
  export declare function handleListUsers(sdk: KywiSdkScope, args: {
4
4
  siteId?: string | undefined;
5
5
  role?: string | undefined;
6
- limit?: number | undefined;
7
- page?: number | undefined;
8
6
  }): Promise<{
9
7
  content: [{
10
8
  type: "text";
@@ -1 +1 @@
1
- {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../../src/site/tools/users.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAKtD,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GASxH;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAUnG;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;GAIzB;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;;;;;;;;;;;;GAQ5D;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAoC5E"}
1
+ {"version":3,"file":"users.d.ts","sourceRoot":"","sources":["../../../src/site/tools/users.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAKtD,wBAAsB,eAAe,CACnC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAQjE;AAED,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;GAUnG;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE;;;;;;;;;;;;GAIzB;AAED,wBAAsB,sBAAsB,CAC1C,GAAG,EAAE,YAAY,EACjB,IAAI,EAAE;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE;;;;;;;;;;;;GAQ5D;AAID,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,YAAY,GAAG,IAAI,CAoC5E"}
@@ -2,13 +2,12 @@ import { z } from 'zod';
2
2
  import { textResult, errorResult } from '../../shared.js';
3
3
  // ─── Exported handler functions (testable without server) ───────────────────
4
4
  export async function handleListUsers(sdk, args) {
5
- const result = await sdk.user.list({
6
- siteId: args.siteId,
7
- role: args.role,
8
- limit: args.limit,
9
- page: args.page,
10
- });
11
- return textResult(result);
5
+ // No limit/page: `GET /users` does not paginate — it returns the site's whole
6
+ // roster. The tool used to accept both and hand them to a server that ignores
7
+ // them, which is worse than not offering them: an agent that passed
8
+ // `limit: 10` believed it had asked for a page and had not.
9
+ const result = await sdk.user.list({ siteId: args.siteId, role: args.role });
10
+ return textResult({ ...result, hasMore: false });
12
11
  }
13
12
  export async function handleCreateUser(sdk, args) {
14
13
  const user = await sdk.user.create({
@@ -36,12 +35,11 @@ export async function handleUpdateSiteConfig(sdk, args) {
36
35
  // ─── Registration ───────────────────────────────────────────────────────────
37
36
  export function registerUserTools(server, sdk) {
38
37
  server.registerTool('list_users', {
39
- description: 'List users for a site (requires siteAdmin role)',
38
+ description: 'List users for a site (requires siteAdmin role). Returns the whole roster in one call — `total` is '
39
+ + 'the complete count and `hasMore` is always false.',
40
40
  inputSchema: {
41
41
  siteId: z.string().optional().describe('Filter by site ID'),
42
42
  role: z.string().optional().describe('Filter by role'),
43
- limit: z.number().optional().describe('Items per page'),
44
- page: z.number().optional().describe('Page number'),
45
43
  },
46
44
  }, async (args) => handleListUsers(sdk, args));
47
45
  server.registerTool('create_user', {
@@ -1 +1 @@
1
- {"version":3,"file":"users.js","sourceRoot":"","sources":["../../../src/site/tools/users.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"users.js","sourceRoot":"","sources":["../../../src/site/tools/users.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../../src/site/tools/webhooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAKxD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;;;;;;;GAerE;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc;;;;;;;;;;;;GAO5D;AAID,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAclF"}
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../../src/site/tools/webhooks.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAKxD,wBAAsB,mBAAmB,CACvC,IAAI,EAAE,cAAc,EACpB,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE;;;;;;;;;;;;GAerE;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,cAAc;;;;;;;;;;;;GAU5D;AAID,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI,CAclF"}
@@ -19,6 +19,9 @@ export async function handleCreateWebhook(http, args) {
19
19
  }
20
20
  export async function handleListWebhooks(http) {
21
21
  try {
22
+ // `{ data, meta }` — every webhook in one response, so `meta.hasMore` is
23
+ // always false (kywi-cms#199). Passed through as-is so the caller sees the
24
+ // same envelope the API sent.
22
25
  const result = await http.get('/webhooks');
23
26
  return textResult(result);
24
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../src/site/tools/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEzD,6EAA6E;AAE7E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAoB,EACpB,IAAoE;IAEpE,IAAI,CAAC;QACH,MAAM,OAAO,GAA4B;YACvC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC9B,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAU,WAAW,EAAE,OAAO,CAAC,CAAA;QAC7D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,6BAA6B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACrG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAoB;IAC3D,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAU,WAAW,CAAC,CAAA;QACnD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACpG,CAAC;AACH,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,oBAAoB,CAAC,MAAiB,EAAE,IAAoB;IAC1E,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE;QACpC,WAAW,EAAE,+CAA+C;QAC5D,WAAW,EAAE;YACX,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACtD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,kEAAkE,CAAC;YACxG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;SACjG;KACF,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAEnD,MAAM,CAAC,YAAY,CAAC,eAAe,EAAE;QACnC,WAAW,EAAE,8BAA8B;QAC3C,WAAW,EAAE,EAAE;KAChB,EAAE,KAAK,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1C,CAAC"}
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../../src/site/tools/webhooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAEzD,6EAA6E;AAE7E,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAoB,EACpB,IAAoE;IAEpE,IAAI,CAAC;QACH,MAAM,OAAO,GAA4B;YACvC,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAA;QACD,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC9B,CAAC;QACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAU,WAAW,EAAE,OAAO,CAAC,CAAA;QAC7D,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,6BAA6B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACrG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,IAAoB;IAC3D,IAAI,CAAC;QACH,yEAAyE;QACzE,2EAA2E;QAC3E,8BAA8B;QAC9B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,GAAG,CAAU,WAAW,CAAC,CAAA;QACnD,OAAO,UAAU,CAAC,MAAM,CAAC,CAAA;IAC3B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,WAAW,CAAC,4BAA4B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACpG,CAAC;AACH,CAAC;AAED,iFAAiF;AAEjF,MAAM,UAAU,oBAAoB,CAAC,MAAiB,EAAE,IAAoB;IAC1E,MAAM,CAAC,YAAY,CAAC,gBAAgB,EAAE;QACpC,WAAW,EAAE,+CAA+C;QAC5D,WAAW,EAAE;YACX,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YACtD,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,kEAAkE,CAAC;YACxG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,wDAAwD,CAAC;SACjG;KACF,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;IAEnD,MAAM,CAAC,YAAY,CAAC,eAAe,EAAE;QACnC,WAAW,EAAE,8BAA8B;QAC3C,WAAW,EAAE,EAAE;KAChB,EAAE,KAAK,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAA;AAC1C,CAAC"}