illustrator-mcp-server 1.2.3 → 1.2.5
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/README.ja.md +525 -107
- package/README.md +510 -89
- package/dist/executor/jsx-runner.d.ts +1 -0
- package/dist/executor/jsx-runner.d.ts.map +1 -1
- package/dist/executor/jsx-runner.js +33 -19
- package/dist/executor/jsx-runner.js.map +1 -1
- package/dist/jsx/helpers/common.jsx +113 -7
- package/dist/prompts/print-preflight-workflow.d.ts +3 -0
- package/dist/prompts/print-preflight-workflow.d.ts.map +1 -0
- package/dist/prompts/print-preflight-workflow.js +45 -0
- package/dist/prompts/print-preflight-workflow.js.map +1 -0
- package/dist/prompts/quick-layout.d.ts +3 -0
- package/dist/prompts/quick-layout.d.ts.map +1 -0
- package/dist/prompts/quick-layout.js +42 -0
- package/dist/prompts/quick-layout.js.map +1 -0
- package/dist/prompts/registry.d.ts +3 -0
- package/dist/prompts/registry.d.ts.map +1 -0
- package/dist/prompts/registry.js +7 -0
- package/dist/prompts/registry.js.map +1 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +3 -1
- package/dist/server.js.map +1 -1
- package/dist/tools/export/export-pdf.d.ts.map +1 -1
- package/dist/tools/export/export-pdf.js +48 -18
- package/dist/tools/export/export-pdf.js.map +1 -1
- package/dist/tools/export/export.d.ts.map +1 -1
- package/dist/tools/export/export.js +41 -49
- package/dist/tools/export/export.js.map +1 -1
- package/dist/tools/modify/align-objects.d.ts +3 -0
- package/dist/tools/modify/align-objects.d.ts.map +1 -0
- package/dist/tools/modify/align-objects.js +195 -0
- package/dist/tools/modify/align-objects.js.map +1 -0
- package/dist/tools/modify/apply-color-profile.d.ts.map +1 -1
- package/dist/tools/modify/apply-color-profile.js +12 -10
- package/dist/tools/modify/apply-color-profile.js.map +1 -1
- package/dist/tools/modify/apply-graphic-style.d.ts +3 -0
- package/dist/tools/modify/apply-graphic-style.d.ts.map +1 -0
- package/dist/tools/modify/apply-graphic-style.js +100 -0
- package/dist/tools/modify/apply-graphic-style.js.map +1 -0
- package/dist/tools/modify/apply-text-style.d.ts +3 -0
- package/dist/tools/modify/apply-text-style.d.ts.map +1 -0
- package/dist/tools/modify/apply-text-style.js +117 -0
- package/dist/tools/modify/apply-text-style.js.map +1 -0
- package/dist/tools/modify/close-document.d.ts +3 -0
- package/dist/tools/modify/close-document.d.ts.map +1 -0
- package/dist/tools/modify/close-document.js +46 -0
- package/dist/tools/modify/close-document.js.map +1 -0
- package/dist/tools/modify/convert-to-outlines.d.ts.map +1 -1
- package/dist/tools/modify/convert-to-outlines.js +7 -29
- package/dist/tools/modify/convert-to-outlines.js.map +1 -1
- package/dist/tools/modify/create-document.d.ts +3 -0
- package/dist/tools/modify/create-document.d.ts.map +1 -0
- package/dist/tools/modify/create-document.js +67 -0
- package/dist/tools/modify/create-document.js.map +1 -0
- package/dist/tools/modify/create-ellipse.d.ts.map +1 -1
- package/dist/tools/modify/create-ellipse.js +15 -32
- package/dist/tools/modify/create-ellipse.js.map +1 -1
- package/dist/tools/modify/create-gradient.d.ts +3 -0
- package/dist/tools/modify/create-gradient.d.ts.map +1 -0
- package/dist/tools/modify/create-gradient.js +111 -0
- package/dist/tools/modify/create-gradient.js.map +1 -0
- package/dist/tools/modify/create-line.d.ts.map +1 -1
- package/dist/tools/modify/create-line.js +16 -36
- package/dist/tools/modify/create-line.js.map +1 -1
- package/dist/tools/modify/create-path-text.d.ts +3 -0
- package/dist/tools/modify/create-path-text.d.ts.map +1 -0
- package/dist/tools/modify/create-path-text.js +85 -0
- package/dist/tools/modify/create-path-text.js.map +1 -0
- package/dist/tools/modify/create-path.d.ts.map +1 -1
- package/dist/tools/modify/create-path.js +18 -38
- package/dist/tools/modify/create-path.js.map +1 -1
- package/dist/tools/modify/create-rectangle.d.ts.map +1 -1
- package/dist/tools/modify/create-rectangle.js +16 -32
- package/dist/tools/modify/create-rectangle.js.map +1 -1
- package/dist/tools/modify/create-text-frame.d.ts.map +1 -1
- package/dist/tools/modify/create-text-frame.js +27 -40
- package/dist/tools/modify/create-text-frame.js.map +1 -1
- package/dist/tools/modify/duplicate-objects.d.ts +3 -0
- package/dist/tools/modify/duplicate-objects.d.ts.map +1 -0
- package/dist/tools/modify/duplicate-objects.js +97 -0
- package/dist/tools/modify/duplicate-objects.js.map +1 -0
- package/dist/tools/modify/group-objects.d.ts +3 -0
- package/dist/tools/modify/group-objects.d.ts.map +1 -0
- package/dist/tools/modify/group-objects.js +79 -0
- package/dist/tools/modify/group-objects.js.map +1 -0
- package/dist/tools/modify/manage-artboards.d.ts +3 -0
- package/dist/tools/modify/manage-artboards.d.ts.map +1 -0
- package/dist/tools/modify/manage-artboards.js +142 -0
- package/dist/tools/modify/manage-artboards.js.map +1 -0
- package/dist/tools/modify/manage-datasets.d.ts +3 -0
- package/dist/tools/modify/manage-datasets.d.ts.map +1 -0
- package/dist/tools/modify/manage-datasets.js +126 -0
- package/dist/tools/modify/manage-datasets.js.map +1 -0
- package/dist/tools/modify/manage-layers.d.ts +3 -0
- package/dist/tools/modify/manage-layers.d.ts.map +1 -0
- package/dist/tools/modify/manage-layers.js +141 -0
- package/dist/tools/modify/manage-layers.js.map +1 -0
- package/dist/tools/modify/manage-linked-images.d.ts +3 -0
- package/dist/tools/modify/manage-linked-images.d.ts.map +1 -0
- package/dist/tools/modify/manage-linked-images.js +96 -0
- package/dist/tools/modify/manage-linked-images.js.map +1 -0
- package/dist/tools/modify/manage-swatches.d.ts +3 -0
- package/dist/tools/modify/manage-swatches.d.ts.map +1 -0
- package/dist/tools/modify/manage-swatches.js +78 -0
- package/dist/tools/modify/manage-swatches.js.map +1 -0
- package/dist/tools/modify/modify-object.d.ts.map +1 -1
- package/dist/tools/modify/modify-object.js +31 -47
- package/dist/tools/modify/modify-object.js.map +1 -1
- package/dist/tools/modify/move-to-layer.d.ts +3 -0
- package/dist/tools/modify/move-to-layer.d.ts.map +1 -0
- package/dist/tools/modify/move-to-layer.js +73 -0
- package/dist/tools/modify/move-to-layer.js.map +1 -0
- package/dist/tools/modify/open-document.d.ts +3 -0
- package/dist/tools/modify/open-document.d.ts.map +1 -0
- package/dist/tools/modify/open-document.js +72 -0
- package/dist/tools/modify/open-document.js.map +1 -0
- package/dist/tools/modify/place-color-chips.d.ts +3 -0
- package/dist/tools/modify/place-color-chips.d.ts.map +1 -0
- package/dist/tools/modify/place-color-chips.js +218 -0
- package/dist/tools/modify/place-color-chips.js.map +1 -0
- package/dist/tools/modify/place-image.d.ts +3 -0
- package/dist/tools/modify/place-image.d.ts.map +1 -0
- package/dist/tools/modify/place-image.js +113 -0
- package/dist/tools/modify/place-image.js.map +1 -0
- package/dist/tools/modify/place-symbol.d.ts +3 -0
- package/dist/tools/modify/place-symbol.d.ts.map +1 -0
- package/dist/tools/modify/place-symbol.js +96 -0
- package/dist/tools/modify/place-symbol.js.map +1 -0
- package/dist/tools/modify/replace-color.d.ts +3 -0
- package/dist/tools/modify/replace-color.d.ts.map +1 -0
- package/dist/tools/modify/replace-color.js +136 -0
- package/dist/tools/modify/replace-color.js.map +1 -0
- package/dist/tools/modify/resize-for-variation.d.ts +3 -0
- package/dist/tools/modify/resize-for-variation.d.ts.map +1 -0
- package/dist/tools/modify/resize-for-variation.js +169 -0
- package/dist/tools/modify/resize-for-variation.js.map +1 -0
- package/dist/tools/modify/save-document.d.ts +3 -0
- package/dist/tools/modify/save-document.d.ts.map +1 -0
- package/dist/tools/modify/save-document.js +63 -0
- package/dist/tools/modify/save-document.js.map +1 -0
- package/dist/tools/modify/set-z-order.d.ts +3 -0
- package/dist/tools/modify/set-z-order.d.ts.map +1 -0
- package/dist/tools/modify/set-z-order.js +60 -0
- package/dist/tools/modify/set-z-order.js.map +1 -0
- package/dist/tools/modify/shared.d.ts +49 -1
- package/dist/tools/modify/shared.d.ts.map +1 -1
- package/dist/tools/modify/shared.js +48 -4
- package/dist/tools/modify/shared.js.map +1 -1
- package/dist/tools/modify/undo.d.ts +3 -0
- package/dist/tools/modify/undo.d.ts.map +1 -0
- package/dist/tools/modify/undo.js +64 -0
- package/dist/tools/modify/undo.js.map +1 -0
- package/dist/tools/modify/ungroup-objects.d.ts +3 -0
- package/dist/tools/modify/ungroup-objects.d.ts.map +1 -0
- package/dist/tools/modify/ungroup-objects.js +67 -0
- package/dist/tools/modify/ungroup-objects.js.map +1 -0
- package/dist/tools/read/check-contrast.d.ts +3 -0
- package/dist/tools/read/check-contrast.d.ts.map +1 -0
- package/dist/tools/read/check-contrast.js +239 -0
- package/dist/tools/read/check-contrast.js.map +1 -0
- package/dist/tools/read/convert-coordinate.d.ts +3 -0
- package/dist/tools/read/convert-coordinate.d.ts.map +1 -0
- package/dist/tools/read/convert-coordinate.js +74 -0
- package/dist/tools/read/convert-coordinate.js.map +1 -0
- package/dist/tools/read/extract-design-tokens.d.ts +3 -0
- package/dist/tools/read/extract-design-tokens.d.ts.map +1 -0
- package/dist/tools/read/extract-design-tokens.js +258 -0
- package/dist/tools/read/extract-design-tokens.js.map +1 -0
- package/dist/tools/read/find-objects.d.ts.map +1 -1
- package/dist/tools/read/find-objects.js +16 -37
- package/dist/tools/read/find-objects.js.map +1 -1
- package/dist/tools/read/get-artboards.d.ts.map +1 -1
- package/dist/tools/read/get-artboards.js +15 -13
- package/dist/tools/read/get-artboards.js.map +1 -1
- package/dist/tools/read/get-colors.d.ts.map +1 -1
- package/dist/tools/read/get-colors.js +93 -15
- package/dist/tools/read/get-colors.js.map +1 -1
- package/dist/tools/read/get-document-info.d.ts.map +1 -1
- package/dist/tools/read/get-document-info.js +47 -19
- package/dist/tools/read/get-document-info.js.map +1 -1
- package/dist/tools/read/get-document-structure.d.ts.map +1 -1
- package/dist/tools/read/get-document-structure.js +16 -24
- package/dist/tools/read/get-document-structure.js.map +1 -1
- package/dist/tools/read/get-effects.d.ts.map +1 -1
- package/dist/tools/read/get-effects.js +32 -43
- package/dist/tools/read/get-effects.js.map +1 -1
- package/dist/tools/read/get-groups.d.ts.map +1 -1
- package/dist/tools/read/get-groups.js +22 -26
- package/dist/tools/read/get-groups.js.map +1 -1
- package/dist/tools/read/get-guidelines.d.ts.map +1 -1
- package/dist/tools/read/get-guidelines.js +13 -16
- package/dist/tools/read/get-guidelines.js.map +1 -1
- package/dist/tools/read/get-images.d.ts.map +1 -1
- package/dist/tools/read/get-images.js +43 -25
- package/dist/tools/read/get-images.js.map +1 -1
- package/dist/tools/read/get-layers.d.ts.map +1 -1
- package/dist/tools/read/get-layers.js +14 -15
- package/dist/tools/read/get-layers.js.map +1 -1
- package/dist/tools/read/get-overprint-info.d.ts.map +1 -1
- package/dist/tools/read/get-overprint-info.js +72 -63
- package/dist/tools/read/get-overprint-info.js.map +1 -1
- package/dist/tools/read/get-path-items.d.ts.map +1 -1
- package/dist/tools/read/get-path-items.js +26 -20
- package/dist/tools/read/get-path-items.js.map +1 -1
- package/dist/tools/read/get-selection.d.ts.map +1 -1
- package/dist/tools/read/get-selection.js +19 -33
- package/dist/tools/read/get-selection.js.map +1 -1
- package/dist/tools/read/get-separation-info.d.ts +3 -0
- package/dist/tools/read/get-separation-info.d.ts.map +1 -0
- package/dist/tools/read/get-separation-info.js +94 -0
- package/dist/tools/read/get-separation-info.js.map +1 -0
- package/dist/tools/read/get-symbols.d.ts.map +1 -1
- package/dist/tools/read/get-symbols.js +19 -23
- package/dist/tools/read/get-symbols.js.map +1 -1
- package/dist/tools/read/get-text-frame-detail.d.ts.map +1 -1
- package/dist/tools/read/get-text-frame-detail.js +270 -67
- package/dist/tools/read/get-text-frame-detail.js.map +1 -1
- package/dist/tools/read/list-fonts.d.ts +3 -0
- package/dist/tools/read/list-fonts.d.ts.map +1 -0
- package/dist/tools/read/list-fonts.js +78 -0
- package/dist/tools/read/list-fonts.js.map +1 -0
- package/dist/tools/read/list-text-frames.d.ts.map +1 -1
- package/dist/tools/read/list-text-frames.js +99 -36
- package/dist/tools/read/list-text-frames.js.map +1 -1
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +68 -0
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/session.d.ts +36 -0
- package/dist/tools/session.d.ts.map +1 -0
- package/dist/tools/session.js +246 -0
- package/dist/tools/session.js.map +1 -0
- package/dist/tools/utility/check-text-consistency.d.ts +3 -0
- package/dist/tools/utility/check-text-consistency.d.ts.map +1 -0
- package/dist/tools/utility/check-text-consistency.js +303 -0
- package/dist/tools/utility/check-text-consistency.js.map +1 -0
- package/dist/tools/utility/preflight-check.d.ts.map +1 -1
- package/dist/tools/utility/preflight-check.js +141 -43
- package/dist/tools/utility/preflight-check.js.map +1 -1
- package/dist/tools/utility/set-workflow.d.ts +3 -0
- package/dist/tools/utility/set-workflow.d.ts.map +1 -0
- package/dist/tools/utility/set-workflow.js +95 -0
- package/dist/tools/utility/set-workflow.js.map +1 -0
- package/dist/utils/image-header.d.ts.map +1 -1
- package/dist/utils/image-header.js +5 -1
- package/dist/utils/image-header.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { executeJsx } from '../../executor/jsx-runner.js';
|
|
3
|
+
import { READ_ANNOTATIONS } from '../modify/shared.js';
|
|
4
|
+
/**
|
|
5
|
+
* list_fonts — Illustrator で利用可能なフォント一覧
|
|
6
|
+
*
|
|
7
|
+
* @see https://ai-scripting.docsforadobe.dev/jsobjref/TextFonts/ — TextFonts, TextFont
|
|
8
|
+
*
|
|
9
|
+
* JSX API:
|
|
10
|
+
* Application.textFonts → TextFonts コレクション
|
|
11
|
+
* TextFont.name → String (PostScript名)
|
|
12
|
+
* TextFont.family → String (ファミリー名)
|
|
13
|
+
* TextFont.style → String (スタイル名)
|
|
14
|
+
*
|
|
15
|
+
* ドキュメント不要。checkIllustratorVersion() のみ使用。
|
|
16
|
+
*/
|
|
17
|
+
const jsxCode = `
|
|
18
|
+
try {
|
|
19
|
+
var verErr = checkIllustratorVersion();
|
|
20
|
+
if (verErr) {
|
|
21
|
+
writeResultFile(RESULT_PATH, verErr);
|
|
22
|
+
} else {
|
|
23
|
+
var params = readParamsFile(PARAMS_PATH);
|
|
24
|
+
var filterStr = (params.filter || "").toLowerCase();
|
|
25
|
+
var limit = params.limit || 100;
|
|
26
|
+
var fonts = [];
|
|
27
|
+
|
|
28
|
+
for (var i = 0; i < app.textFonts.length; i++) {
|
|
29
|
+
var tf = app.textFonts[i];
|
|
30
|
+
if (filterStr) {
|
|
31
|
+
var nameL = tf.name.toLowerCase();
|
|
32
|
+
var familyL = tf.family ? tf.family.toLowerCase() : "";
|
|
33
|
+
if (nameL.indexOf(filterStr) === -1 && familyL.indexOf(filterStr) === -1) {
|
|
34
|
+
continue;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
fonts.push({
|
|
38
|
+
name: tf.name,
|
|
39
|
+
family: tf.family,
|
|
40
|
+
style: tf.style
|
|
41
|
+
});
|
|
42
|
+
if (fonts.length >= limit) break;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
writeResultFile(RESULT_PATH, {
|
|
46
|
+
count: fonts.length,
|
|
47
|
+
totalAvailable: app.textFonts.length,
|
|
48
|
+
fonts: fonts
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
} catch (e) {
|
|
52
|
+
writeResultFile(RESULT_PATH, { error: true, message: "list_fonts failed: " + e.message, line: e.line });
|
|
53
|
+
}
|
|
54
|
+
`;
|
|
55
|
+
export function register(server) {
|
|
56
|
+
server.registerTool('list_fonts', {
|
|
57
|
+
title: 'List Fonts',
|
|
58
|
+
description: 'List fonts available in Illustrator. Does not require an open document.',
|
|
59
|
+
inputSchema: {
|
|
60
|
+
filter: z
|
|
61
|
+
.string()
|
|
62
|
+
.optional()
|
|
63
|
+
.describe('Filter by family or name (case-insensitive partial match)'),
|
|
64
|
+
limit: z
|
|
65
|
+
.number()
|
|
66
|
+
.int()
|
|
67
|
+
.min(1)
|
|
68
|
+
.optional()
|
|
69
|
+
.default(100)
|
|
70
|
+
.describe('Max fonts to return (default 100)'),
|
|
71
|
+
},
|
|
72
|
+
annotations: READ_ANNOTATIONS,
|
|
73
|
+
}, async (params) => {
|
|
74
|
+
const result = await executeJsx(jsxCode, params);
|
|
75
|
+
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=list-fonts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-fonts.js","sourceRoot":"","sources":["../../../src/tools/read/list-fonts.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqCf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,yEAAyE;QACtF,WAAW,EAAE;YACX,MAAM,EAAE,CAAC;iBACN,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,2DAA2D,CAAC;YACxE,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,OAAO,CAAC,GAAG,CAAC;iBACZ,QAAQ,CAAC,mCAAmC,CAAC;SACjD;QACD,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-text-frames.d.ts","sourceRoot":"","sources":["../../../src/tools/read/list-text-frames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"list-text-frames.d.ts","sourceRoot":"","sources":["../../../src/tools/read/list-text-frames.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgOpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuBhD"}
|
|
@@ -1,5 +1,12 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { executeJsx } from '../../executor/jsx-runner.js';
|
|
3
|
+
import { coordinateSystemSchema, resolveCoordinateSystem, } from '../session.js';
|
|
4
|
+
import { READ_ANNOTATIONS, coerceBoolean } from '../modify/shared.js';
|
|
5
|
+
/**
|
|
6
|
+
* list_text_frames — テキストフレーム一覧の取得
|
|
7
|
+
* @see https://ai-scripting.docsforadobe.dev/jsobjref/TextFrameItems/ — TextFrameItems collection
|
|
8
|
+
* @see https://ai-scripting.docsforadobe.dev/jsobjref/TextFrameItem/ — contents, kind, textRange
|
|
9
|
+
*/
|
|
3
10
|
const jsxCode = `
|
|
4
11
|
var preflight = preflightChecks();
|
|
5
12
|
if (preflight) {
|
|
@@ -11,6 +18,10 @@ if (preflight) {
|
|
|
11
18
|
var coordSystem = (params && params.coordinate_system) ? params.coordinate_system : "artboard-web";
|
|
12
19
|
var filterLayer = (params && params.layer_name) ? params.layer_name : null;
|
|
13
20
|
var filterArtboard = (params && typeof params.artboard_index === "number") ? params.artboard_index : null;
|
|
21
|
+
var sortMode = (params && params.sort) ? params.sort : null;
|
|
22
|
+
var contentsOnly = (params && params.contents_only === true) ? true : false;
|
|
23
|
+
var paramOffset = (params && typeof params.offset === "number") ? params.offset : 0;
|
|
24
|
+
var paramLimit = (params && typeof params.limit === "number") ? params.limit : null;
|
|
14
25
|
|
|
15
26
|
// アートボードインデックスの範囲チェック
|
|
16
27
|
if (filterArtboard !== null && (filterArtboard < 0 || filterArtboard >= doc.artboards.length)) {
|
|
@@ -44,38 +55,57 @@ if (preflight) {
|
|
|
44
55
|
}
|
|
45
56
|
|
|
46
57
|
if (sourceFrames !== null) {
|
|
47
|
-
|
|
48
|
-
var artboardRect = null;
|
|
49
|
-
if (filterArtboard !== null) {
|
|
50
|
-
artboardRect = doc.artboards[filterArtboard].artboardRect;
|
|
51
|
-
}
|
|
58
|
+
var artboardRect = (filterArtboard !== null) ? getArtboardRectByIndex(filterArtboard) : null;
|
|
52
59
|
|
|
53
60
|
var textFrames = [];
|
|
61
|
+
var canPaginateEarly = contentsOnly && sortMode !== "reading-order";
|
|
62
|
+
var earlySkipped = 0;
|
|
63
|
+
var earlyCollected = 0;
|
|
64
|
+
|
|
54
65
|
for (var i = 0; i < sourceFrames.length; i++) {
|
|
55
66
|
var tf = sourceFrames[i];
|
|
56
67
|
|
|
68
|
+
// アートボードインデックスを取得
|
|
69
|
+
var itemArtboardIndex = getArtboardIndexForItem(tf);
|
|
70
|
+
|
|
57
71
|
// アートボードフィルタリング
|
|
58
72
|
if (filterArtboard !== null) {
|
|
59
|
-
|
|
60
|
-
|
|
73
|
+
if (itemArtboardIndex !== filterArtboard) continue;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// contentsOnly + sortなし: ループ内でページネーション適用
|
|
77
|
+
if (canPaginateEarly) {
|
|
78
|
+
if (earlySkipped < paramOffset) { earlySkipped++; continue; }
|
|
79
|
+
if (paramLimit !== null && earlyCollected >= paramLimit) break;
|
|
61
80
|
}
|
|
62
81
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
82
|
+
if (contentsOnly) {
|
|
83
|
+
var contentsItem = {
|
|
84
|
+
uuid: ensureUUID(tf),
|
|
85
|
+
contents: tf.contents,
|
|
86
|
+
artboardIndex: itemArtboardIndex
|
|
87
|
+
};
|
|
88
|
+
if (sortMode === "reading-order") {
|
|
89
|
+
var sortAbRect = null;
|
|
90
|
+
if (coordSystem === "artboard-web" && itemArtboardIndex >= 0) {
|
|
91
|
+
sortAbRect = getArtboardRectByIndex(itemArtboardIndex);
|
|
92
|
+
}
|
|
93
|
+
var sortBounds = getBounds(tf, coordSystem, sortAbRect);
|
|
94
|
+
contentsItem.x = sortBounds.x;
|
|
95
|
+
contentsItem.y = sortBounds.y;
|
|
96
|
+
}
|
|
97
|
+
textFrames.push(contentsItem);
|
|
98
|
+
if (canPaginateEarly) { earlyCollected++; }
|
|
99
|
+
continue;
|
|
71
100
|
}
|
|
72
101
|
|
|
102
|
+
var textKind = getTextKind(tf);
|
|
103
|
+
|
|
73
104
|
// 座標変換用のアートボード矩形
|
|
74
105
|
var boundsAbRect = artboardRect;
|
|
75
106
|
if (!boundsAbRect && coordSystem === "artboard-web") {
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
boundsAbRect = doc.artboards[itemAbIdx].artboardRect;
|
|
107
|
+
if (itemArtboardIndex >= 0) {
|
|
108
|
+
boundsAbRect = getArtboardRectByIndex(itemArtboardIndex);
|
|
79
109
|
}
|
|
80
110
|
}
|
|
81
111
|
|
|
@@ -124,6 +154,7 @@ if (preflight) {
|
|
|
124
154
|
uuid: ensureUUID(tf),
|
|
125
155
|
zIndex: getZIndex(tf),
|
|
126
156
|
contents: tf.contents,
|
|
157
|
+
artboardIndex: itemArtboardIndex,
|
|
127
158
|
x: bounds.x,
|
|
128
159
|
y: bounds.y,
|
|
129
160
|
width: bounds.width,
|
|
@@ -138,11 +169,47 @@ if (preflight) {
|
|
|
138
169
|
textFrames.push(info);
|
|
139
170
|
}
|
|
140
171
|
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
textFrames
|
|
145
|
-
|
|
172
|
+
if (sortMode === "reading-order") {
|
|
173
|
+
// document座標はY軸上向き正なので降順、artboard-web座標はY軸下向き正なので昇順
|
|
174
|
+
var yDir = (coordSystem === "document") ? -1 : 1;
|
|
175
|
+
textFrames.sort(function(a, b) {
|
|
176
|
+
if (a.artboardIndex !== b.artboardIndex) return a.artboardIndex - b.artboardIndex;
|
|
177
|
+
// y差が5pt以内なら同一行とみなしx座標で比較
|
|
178
|
+
if (Math.abs(a.y - b.y) > 5) return (a.y - b.y) * yDir;
|
|
179
|
+
return a.x - b.x;
|
|
180
|
+
});
|
|
181
|
+
if (contentsOnly) {
|
|
182
|
+
for (var si = 0; si < textFrames.length; si++) {
|
|
183
|
+
delete textFrames[si].x;
|
|
184
|
+
delete textFrames[si].y;
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
// totalCount: 早期ページネーション時はbreakで途切れた残りを加算
|
|
190
|
+
var totalCount;
|
|
191
|
+
if (canPaginateEarly && paramLimit !== null && earlyCollected >= paramLimit) {
|
|
192
|
+
if (filterArtboard === null) {
|
|
193
|
+
totalCount = sourceFrames.length;
|
|
194
|
+
} else {
|
|
195
|
+
totalCount = earlySkipped + earlyCollected;
|
|
196
|
+
for (var ri = i; ri < sourceFrames.length; ri++) {
|
|
197
|
+
if (getArtboardIndexForItem(sourceFrames[ri]) === filterArtboard) totalCount++;
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
} else if (canPaginateEarly) {
|
|
201
|
+
totalCount = earlySkipped + earlyCollected;
|
|
202
|
+
} else {
|
|
203
|
+
totalCount = textFrames.length;
|
|
204
|
+
if (paramOffset > 0 || paramLimit !== null) {
|
|
205
|
+
textFrames = textFrames.slice(paramOffset, paramLimit !== null ? paramOffset + paramLimit : textFrames.length);
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
var payload = { totalCount: totalCount, count: textFrames.length, textFrames: textFrames };
|
|
210
|
+
if (!contentsOnly) { payload.coordinateSystem = coordSystem; }
|
|
211
|
+
if (paramOffset > 0 || paramLimit !== null) { payload.offset = paramOffset; }
|
|
212
|
+
writeResultFile(RESULT_PATH, payload);
|
|
146
213
|
}
|
|
147
214
|
}
|
|
148
215
|
} catch (e) {
|
|
@@ -153,24 +220,20 @@ if (preflight) {
|
|
|
153
220
|
export function register(server) {
|
|
154
221
|
server.registerTool('list_text_frames', {
|
|
155
222
|
title: 'List Text Frames',
|
|
156
|
-
description: 'List text frames with summary-level information',
|
|
223
|
+
description: 'List text frames with summary-level information. Supports reading-order sort, pagination, and a lightweight contents-only mode.',
|
|
157
224
|
inputSchema: {
|
|
158
225
|
layer_name: z.string().optional().describe('Filter by layer name'),
|
|
159
226
|
artboard_index: z.number().int().min(0).optional().describe('Filter by artboard index (0-based integer)'),
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
},
|
|
166
|
-
annotations: {
|
|
167
|
-
readOnlyHint: true,
|
|
168
|
-
destructiveHint: false,
|
|
169
|
-
idempotentHint: true,
|
|
170
|
-
openWorldHint: false,
|
|
227
|
+
sort: z.enum(['reading-order']).optional().describe('Sort order. "reading-order" sorts by artboardIndex asc → y asc → x asc (rows within ~5pt tolerance are treated as the same line)'),
|
|
228
|
+
contents_only: coerceBoolean.optional().describe('When true, return only uuid, contents, and artboardIndex (no position/font/style info). Useful for text proofreading.'),
|
|
229
|
+
offset: z.number().int().min(0).optional().describe('Number of items to skip (for pagination). Applied after sort.'),
|
|
230
|
+
limit: z.number().int().min(1).optional().describe('Maximum number of items to return (for pagination). Applied after sort.'),
|
|
231
|
+
coordinate_system: coordinateSystemSchema,
|
|
171
232
|
},
|
|
233
|
+
annotations: READ_ANNOTATIONS,
|
|
172
234
|
}, async (params) => {
|
|
173
|
-
const
|
|
235
|
+
const resolvedParams = { ...params, coordinate_system: await resolveCoordinateSystem(params.coordinate_system) };
|
|
236
|
+
const result = await executeJsx(jsxCode, resolvedParams);
|
|
174
237
|
return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
|
|
175
238
|
});
|
|
176
239
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list-text-frames.js","sourceRoot":"","sources":["../../../src/tools/read/list-text-frames.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"list-text-frames.js","sourceRoot":"","sources":["../../../src/tools/read/list-text-frames.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,GACxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACtE;;;;GAIG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiNf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,iIAAiI;QAC9I,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;YAClE,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACzG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kIAAkI,CAAC;YACvL,aAAa,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uHAAuH,CAAC;YACzK,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YACpH,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;YAC7H,iBAAiB,EAAE,sBAAsB;SAC1C;QACD,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,cAAc,GAAG,EAAE,GAAG,MAAM,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC,MAAM,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACjH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QACzD,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAChF,CAAC,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAyEpE,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAuExD"}
|
package/dist/tools/registry.js
CHANGED
|
@@ -15,11 +15,16 @@ import { register as registerGetImages } from './read/get-images.js';
|
|
|
15
15
|
import { register as registerGetSymbols } from './read/get-symbols.js';
|
|
16
16
|
import { register as registerGetDocumentStructure } from './read/get-document-structure.js';
|
|
17
17
|
import { register as registerFindObjects } from './read/find-objects.js';
|
|
18
|
+
import { register as registerCheckContrast } from './read/check-contrast.js';
|
|
19
|
+
import { register as registerExtractDesignTokens } from './read/extract-design-tokens.js';
|
|
18
20
|
// Phase 3: 書き出し + 印刷向け読み取り
|
|
19
21
|
import { register as registerExport } from './export/export.js';
|
|
20
22
|
import { register as registerExportPdf } from './export/export-pdf.js';
|
|
21
23
|
import { register as registerGetOverprintInfo } from './read/get-overprint-info.js';
|
|
24
|
+
import { register as registerGetSeparationInfo } from './read/get-separation-info.js';
|
|
22
25
|
import { register as registerPreflightCheck } from './utility/preflight-check.js';
|
|
26
|
+
import { register as registerCheckTextConsistency } from './utility/check-text-consistency.js';
|
|
27
|
+
import { register as registerSetWorkflow } from './utility/set-workflow.js';
|
|
23
28
|
// Phase 4: 操作系ツール
|
|
24
29
|
import { register as registerCreateRectangle } from './modify/create-rectangle.js';
|
|
25
30
|
import { register as registerCreateEllipse } from './modify/create-ellipse.js';
|
|
@@ -29,6 +34,35 @@ import { register as registerCreatePath } from './modify/create-path.js';
|
|
|
29
34
|
import { register as registerModifyObject } from './modify/modify-object.js';
|
|
30
35
|
import { register as registerConvertToOutlines } from './modify/convert-to-outlines.js';
|
|
31
36
|
import { register as registerApplyColorProfile } from './modify/apply-color-profile.js';
|
|
37
|
+
import { register as registerPlaceImage } from './modify/place-image.js';
|
|
38
|
+
import { register as registerResizeForVariation } from './modify/resize-for-variation.js';
|
|
39
|
+
import { register as registerAlignObjects } from './modify/align-objects.js';
|
|
40
|
+
import { register as registerReplaceColor } from './modify/replace-color.js';
|
|
41
|
+
import { register as registerManageLayers } from './modify/manage-layers.js';
|
|
42
|
+
import { register as registerPlaceColorChips } from './modify/place-color-chips.js';
|
|
43
|
+
// Phase 5: ドキュメント管理ツール
|
|
44
|
+
import { register as registerCreateDocument } from './modify/create-document.js';
|
|
45
|
+
import { register as registerCloseDocument } from './modify/close-document.js';
|
|
46
|
+
// Phase 6: 新規ツール
|
|
47
|
+
import { register as registerSaveDocument } from './modify/save-document.js';
|
|
48
|
+
import { register as registerOpenDocument } from './modify/open-document.js';
|
|
49
|
+
import { register as registerGroupObjects } from './modify/group-objects.js';
|
|
50
|
+
import { register as registerUngroupObjects } from './modify/ungroup-objects.js';
|
|
51
|
+
import { register as registerDuplicateObjects } from './modify/duplicate-objects.js';
|
|
52
|
+
import { register as registerListFonts } from './read/list-fonts.js';
|
|
53
|
+
import { register as registerManageArtboards } from './modify/manage-artboards.js';
|
|
54
|
+
import { register as registerSetZOrder } from './modify/set-z-order.js';
|
|
55
|
+
import { register as registerMoveToLayer } from './modify/move-to-layer.js';
|
|
56
|
+
import { register as registerApplyGraphicStyle } from './modify/apply-graphic-style.js';
|
|
57
|
+
import { register as registerManageSwatches } from './modify/manage-swatches.js';
|
|
58
|
+
import { register as registerApplyTextStyle } from './modify/apply-text-style.js';
|
|
59
|
+
import { register as registerCreateGradient } from './modify/create-gradient.js';
|
|
60
|
+
import { register as registerManageLinkedImages } from './modify/manage-linked-images.js';
|
|
61
|
+
import { register as registerUndo } from './modify/undo.js';
|
|
62
|
+
import { register as registerManageDatasets } from './modify/manage-datasets.js';
|
|
63
|
+
import { register as registerPlaceSymbol } from './modify/place-symbol.js';
|
|
64
|
+
import { register as registerCreatePathText } from './modify/create-path-text.js';
|
|
65
|
+
import { register as registerConvertCoordinate } from './read/convert-coordinate.js';
|
|
32
66
|
export function registerAllTools(server) {
|
|
33
67
|
// Phase 1: 基本読み取りツール
|
|
34
68
|
registerGetDocumentInfo(server);
|
|
@@ -47,11 +81,16 @@ export function registerAllTools(server) {
|
|
|
47
81
|
registerGetSymbols(server);
|
|
48
82
|
registerGetDocumentStructure(server);
|
|
49
83
|
registerFindObjects(server);
|
|
84
|
+
registerCheckContrast(server);
|
|
85
|
+
registerExtractDesignTokens(server);
|
|
50
86
|
// Phase 3: 書き出し + 印刷向け
|
|
51
87
|
registerExport(server);
|
|
52
88
|
registerExportPdf(server);
|
|
53
89
|
registerGetOverprintInfo(server);
|
|
90
|
+
registerGetSeparationInfo(server);
|
|
54
91
|
registerPreflightCheck(server);
|
|
92
|
+
registerCheckTextConsistency(server);
|
|
93
|
+
registerSetWorkflow(server);
|
|
55
94
|
// Phase 4: 操作系
|
|
56
95
|
registerCreateRectangle(server);
|
|
57
96
|
registerCreateEllipse(server);
|
|
@@ -61,5 +100,34 @@ export function registerAllTools(server) {
|
|
|
61
100
|
registerModifyObject(server);
|
|
62
101
|
registerConvertToOutlines(server);
|
|
63
102
|
registerApplyColorProfile(server);
|
|
103
|
+
registerPlaceImage(server);
|
|
104
|
+
registerResizeForVariation(server);
|
|
105
|
+
registerAlignObjects(server);
|
|
106
|
+
registerReplaceColor(server);
|
|
107
|
+
registerManageLayers(server);
|
|
108
|
+
registerPlaceColorChips(server);
|
|
109
|
+
// Phase 5: ドキュメント管理
|
|
110
|
+
registerCreateDocument(server);
|
|
111
|
+
registerCloseDocument(server);
|
|
112
|
+
// Phase 6: 新規ツール
|
|
113
|
+
registerSaveDocument(server);
|
|
114
|
+
registerOpenDocument(server);
|
|
115
|
+
registerGroupObjects(server);
|
|
116
|
+
registerUngroupObjects(server);
|
|
117
|
+
registerDuplicateObjects(server);
|
|
118
|
+
registerListFonts(server);
|
|
119
|
+
registerManageArtboards(server);
|
|
120
|
+
registerSetZOrder(server);
|
|
121
|
+
registerMoveToLayer(server);
|
|
122
|
+
registerApplyGraphicStyle(server);
|
|
123
|
+
registerManageSwatches(server);
|
|
124
|
+
registerApplyTextStyle(server);
|
|
125
|
+
registerCreateGradient(server);
|
|
126
|
+
registerManageLinkedImages(server);
|
|
127
|
+
registerUndo(server);
|
|
128
|
+
registerManageDatasets(server);
|
|
129
|
+
registerPlaceSymbol(server);
|
|
130
|
+
registerCreatePathText(server);
|
|
131
|
+
registerConvertCoordinate(server);
|
|
64
132
|
}
|
|
65
133
|
//# sourceMappingURL=registry.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"AAEA,qBAAqB;AACrB,OAAO,EAAE,QAAQ,IAAI,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAClF,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC3E,OAAO,EAAE,QAAQ,IAAI,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAEhF,6BAA6B;AAC7B,OAAO,EAAE,QAAQ,IAAI,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AACzF,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,QAAQ,IAAI,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAC7E,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,QAAQ,IAAI,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,QAAQ,IAAI,4BAA4B,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,EAAE,QAAQ,IAAI,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export type WorkflowType = 'web' | 'print' | 'video' | 'unknown';
|
|
3
|
+
export type CoordinateSystem = 'artboard-web' | 'document';
|
|
4
|
+
export declare function getSessionCoordinateSystem(): CoordinateSystem | null;
|
|
5
|
+
export declare function getSessionWorkflow(): WorkflowType | null;
|
|
6
|
+
export declare function setSession(workflow: WorkflowType, coordinateSystem: CoordinateSystem): void;
|
|
7
|
+
export declare function clearSession(): void;
|
|
8
|
+
/** ドキュメント切替時(create/close/open)に自動検出キャッシュのみ無効化 */
|
|
9
|
+
export declare function invalidateAutoDetectCache(): void;
|
|
10
|
+
/**
|
|
11
|
+
* Resolve coordinate_system:
|
|
12
|
+
* 1. explicit param (per-tool call)
|
|
13
|
+
* 2. session default (set via set_workflow)
|
|
14
|
+
* 3. auto-detect from document signals (cached, invalidated on document switch)
|
|
15
|
+
* 4. fallback: 'artboard-web'
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveCoordinateSystem(explicit?: CoordinateSystem): Promise<CoordinateSystem>;
|
|
18
|
+
export declare const coordinateSystemSchema: z.ZodOptional<z.ZodEnum<{
|
|
19
|
+
"artboard-web": "artboard-web";
|
|
20
|
+
document: "document";
|
|
21
|
+
}>>;
|
|
22
|
+
interface DocumentSignals {
|
|
23
|
+
colorMode: string;
|
|
24
|
+
rulerUnits: string;
|
|
25
|
+
rasterEffectResolution: number;
|
|
26
|
+
colorProfile: string;
|
|
27
|
+
}
|
|
28
|
+
export interface WorkflowHint {
|
|
29
|
+
detectedWorkflow: WorkflowType;
|
|
30
|
+
recommendedCoordinateSystem: CoordinateSystem;
|
|
31
|
+
reasoning: string;
|
|
32
|
+
signals: DocumentSignals;
|
|
33
|
+
}
|
|
34
|
+
export declare function detectWorkflow(signals: DocumentSignals): WorkflowHint;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/tools/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,MAAM,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;AACjE,MAAM,MAAM,gBAAgB,GAAG,cAAc,GAAG,UAAU,CAAC;AAS3D,wBAAgB,0BAA0B,IAAI,gBAAgB,GAAG,IAAI,CAEpE;AAED,wBAAgB,kBAAkB,IAAI,YAAY,GAAG,IAAI,CAExD;AAED,wBAAgB,UAAU,CACxB,QAAQ,EAAE,YAAY,EACtB,gBAAgB,EAAE,gBAAgB,GACjC,IAAI,CAIN;AAED,wBAAgB,YAAY,IAAI,IAAI,CAKnC;AAED,kDAAkD;AAClD,wBAAgB,yBAAyB,IAAI,IAAI,CAEhD;AAoGD;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,gBAAgB,CAAC,CA4B3B;AAID,eAAO,MAAM,sBAAsB;;;GAKhC,CAAC;AAIJ,UAAU,eAAe;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,EAAE,MAAM,CAAC;IAC/B,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IAC3B,gBAAgB,EAAE,YAAY,CAAC;IAC/B,2BAA2B,EAAE,gBAAgB,CAAC;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,eAAe,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAqFrE"}
|