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.
Files changed (246) hide show
  1. package/README.ja.md +525 -107
  2. package/README.md +510 -89
  3. package/dist/executor/jsx-runner.d.ts +1 -0
  4. package/dist/executor/jsx-runner.d.ts.map +1 -1
  5. package/dist/executor/jsx-runner.js +33 -19
  6. package/dist/executor/jsx-runner.js.map +1 -1
  7. package/dist/jsx/helpers/common.jsx +113 -7
  8. package/dist/prompts/print-preflight-workflow.d.ts +3 -0
  9. package/dist/prompts/print-preflight-workflow.d.ts.map +1 -0
  10. package/dist/prompts/print-preflight-workflow.js +45 -0
  11. package/dist/prompts/print-preflight-workflow.js.map +1 -0
  12. package/dist/prompts/quick-layout.d.ts +3 -0
  13. package/dist/prompts/quick-layout.d.ts.map +1 -0
  14. package/dist/prompts/quick-layout.js +42 -0
  15. package/dist/prompts/quick-layout.js.map +1 -0
  16. package/dist/prompts/registry.d.ts +3 -0
  17. package/dist/prompts/registry.d.ts.map +1 -0
  18. package/dist/prompts/registry.js +7 -0
  19. package/dist/prompts/registry.js.map +1 -0
  20. package/dist/server.d.ts.map +1 -1
  21. package/dist/server.js +3 -1
  22. package/dist/server.js.map +1 -1
  23. package/dist/tools/export/export-pdf.d.ts.map +1 -1
  24. package/dist/tools/export/export-pdf.js +48 -18
  25. package/dist/tools/export/export-pdf.js.map +1 -1
  26. package/dist/tools/export/export.d.ts.map +1 -1
  27. package/dist/tools/export/export.js +41 -49
  28. package/dist/tools/export/export.js.map +1 -1
  29. package/dist/tools/modify/align-objects.d.ts +3 -0
  30. package/dist/tools/modify/align-objects.d.ts.map +1 -0
  31. package/dist/tools/modify/align-objects.js +195 -0
  32. package/dist/tools/modify/align-objects.js.map +1 -0
  33. package/dist/tools/modify/apply-color-profile.d.ts.map +1 -1
  34. package/dist/tools/modify/apply-color-profile.js +12 -10
  35. package/dist/tools/modify/apply-color-profile.js.map +1 -1
  36. package/dist/tools/modify/apply-graphic-style.d.ts +3 -0
  37. package/dist/tools/modify/apply-graphic-style.d.ts.map +1 -0
  38. package/dist/tools/modify/apply-graphic-style.js +100 -0
  39. package/dist/tools/modify/apply-graphic-style.js.map +1 -0
  40. package/dist/tools/modify/apply-text-style.d.ts +3 -0
  41. package/dist/tools/modify/apply-text-style.d.ts.map +1 -0
  42. package/dist/tools/modify/apply-text-style.js +117 -0
  43. package/dist/tools/modify/apply-text-style.js.map +1 -0
  44. package/dist/tools/modify/close-document.d.ts +3 -0
  45. package/dist/tools/modify/close-document.d.ts.map +1 -0
  46. package/dist/tools/modify/close-document.js +46 -0
  47. package/dist/tools/modify/close-document.js.map +1 -0
  48. package/dist/tools/modify/convert-to-outlines.d.ts.map +1 -1
  49. package/dist/tools/modify/convert-to-outlines.js +7 -29
  50. package/dist/tools/modify/convert-to-outlines.js.map +1 -1
  51. package/dist/tools/modify/create-document.d.ts +3 -0
  52. package/dist/tools/modify/create-document.d.ts.map +1 -0
  53. package/dist/tools/modify/create-document.js +67 -0
  54. package/dist/tools/modify/create-document.js.map +1 -0
  55. package/dist/tools/modify/create-ellipse.d.ts.map +1 -1
  56. package/dist/tools/modify/create-ellipse.js +15 -32
  57. package/dist/tools/modify/create-ellipse.js.map +1 -1
  58. package/dist/tools/modify/create-gradient.d.ts +3 -0
  59. package/dist/tools/modify/create-gradient.d.ts.map +1 -0
  60. package/dist/tools/modify/create-gradient.js +111 -0
  61. package/dist/tools/modify/create-gradient.js.map +1 -0
  62. package/dist/tools/modify/create-line.d.ts.map +1 -1
  63. package/dist/tools/modify/create-line.js +16 -36
  64. package/dist/tools/modify/create-line.js.map +1 -1
  65. package/dist/tools/modify/create-path-text.d.ts +3 -0
  66. package/dist/tools/modify/create-path-text.d.ts.map +1 -0
  67. package/dist/tools/modify/create-path-text.js +85 -0
  68. package/dist/tools/modify/create-path-text.js.map +1 -0
  69. package/dist/tools/modify/create-path.d.ts.map +1 -1
  70. package/dist/tools/modify/create-path.js +18 -38
  71. package/dist/tools/modify/create-path.js.map +1 -1
  72. package/dist/tools/modify/create-rectangle.d.ts.map +1 -1
  73. package/dist/tools/modify/create-rectangle.js +16 -32
  74. package/dist/tools/modify/create-rectangle.js.map +1 -1
  75. package/dist/tools/modify/create-text-frame.d.ts.map +1 -1
  76. package/dist/tools/modify/create-text-frame.js +27 -40
  77. package/dist/tools/modify/create-text-frame.js.map +1 -1
  78. package/dist/tools/modify/duplicate-objects.d.ts +3 -0
  79. package/dist/tools/modify/duplicate-objects.d.ts.map +1 -0
  80. package/dist/tools/modify/duplicate-objects.js +97 -0
  81. package/dist/tools/modify/duplicate-objects.js.map +1 -0
  82. package/dist/tools/modify/group-objects.d.ts +3 -0
  83. package/dist/tools/modify/group-objects.d.ts.map +1 -0
  84. package/dist/tools/modify/group-objects.js +79 -0
  85. package/dist/tools/modify/group-objects.js.map +1 -0
  86. package/dist/tools/modify/manage-artboards.d.ts +3 -0
  87. package/dist/tools/modify/manage-artboards.d.ts.map +1 -0
  88. package/dist/tools/modify/manage-artboards.js +142 -0
  89. package/dist/tools/modify/manage-artboards.js.map +1 -0
  90. package/dist/tools/modify/manage-datasets.d.ts +3 -0
  91. package/dist/tools/modify/manage-datasets.d.ts.map +1 -0
  92. package/dist/tools/modify/manage-datasets.js +126 -0
  93. package/dist/tools/modify/manage-datasets.js.map +1 -0
  94. package/dist/tools/modify/manage-layers.d.ts +3 -0
  95. package/dist/tools/modify/manage-layers.d.ts.map +1 -0
  96. package/dist/tools/modify/manage-layers.js +141 -0
  97. package/dist/tools/modify/manage-layers.js.map +1 -0
  98. package/dist/tools/modify/manage-linked-images.d.ts +3 -0
  99. package/dist/tools/modify/manage-linked-images.d.ts.map +1 -0
  100. package/dist/tools/modify/manage-linked-images.js +96 -0
  101. package/dist/tools/modify/manage-linked-images.js.map +1 -0
  102. package/dist/tools/modify/manage-swatches.d.ts +3 -0
  103. package/dist/tools/modify/manage-swatches.d.ts.map +1 -0
  104. package/dist/tools/modify/manage-swatches.js +78 -0
  105. package/dist/tools/modify/manage-swatches.js.map +1 -0
  106. package/dist/tools/modify/modify-object.d.ts.map +1 -1
  107. package/dist/tools/modify/modify-object.js +31 -47
  108. package/dist/tools/modify/modify-object.js.map +1 -1
  109. package/dist/tools/modify/move-to-layer.d.ts +3 -0
  110. package/dist/tools/modify/move-to-layer.d.ts.map +1 -0
  111. package/dist/tools/modify/move-to-layer.js +73 -0
  112. package/dist/tools/modify/move-to-layer.js.map +1 -0
  113. package/dist/tools/modify/open-document.d.ts +3 -0
  114. package/dist/tools/modify/open-document.d.ts.map +1 -0
  115. package/dist/tools/modify/open-document.js +72 -0
  116. package/dist/tools/modify/open-document.js.map +1 -0
  117. package/dist/tools/modify/place-color-chips.d.ts +3 -0
  118. package/dist/tools/modify/place-color-chips.d.ts.map +1 -0
  119. package/dist/tools/modify/place-color-chips.js +218 -0
  120. package/dist/tools/modify/place-color-chips.js.map +1 -0
  121. package/dist/tools/modify/place-image.d.ts +3 -0
  122. package/dist/tools/modify/place-image.d.ts.map +1 -0
  123. package/dist/tools/modify/place-image.js +113 -0
  124. package/dist/tools/modify/place-image.js.map +1 -0
  125. package/dist/tools/modify/place-symbol.d.ts +3 -0
  126. package/dist/tools/modify/place-symbol.d.ts.map +1 -0
  127. package/dist/tools/modify/place-symbol.js +96 -0
  128. package/dist/tools/modify/place-symbol.js.map +1 -0
  129. package/dist/tools/modify/replace-color.d.ts +3 -0
  130. package/dist/tools/modify/replace-color.d.ts.map +1 -0
  131. package/dist/tools/modify/replace-color.js +136 -0
  132. package/dist/tools/modify/replace-color.js.map +1 -0
  133. package/dist/tools/modify/resize-for-variation.d.ts +3 -0
  134. package/dist/tools/modify/resize-for-variation.d.ts.map +1 -0
  135. package/dist/tools/modify/resize-for-variation.js +169 -0
  136. package/dist/tools/modify/resize-for-variation.js.map +1 -0
  137. package/dist/tools/modify/save-document.d.ts +3 -0
  138. package/dist/tools/modify/save-document.d.ts.map +1 -0
  139. package/dist/tools/modify/save-document.js +63 -0
  140. package/dist/tools/modify/save-document.js.map +1 -0
  141. package/dist/tools/modify/set-z-order.d.ts +3 -0
  142. package/dist/tools/modify/set-z-order.d.ts.map +1 -0
  143. package/dist/tools/modify/set-z-order.js +60 -0
  144. package/dist/tools/modify/set-z-order.js.map +1 -0
  145. package/dist/tools/modify/shared.d.ts +49 -1
  146. package/dist/tools/modify/shared.d.ts.map +1 -1
  147. package/dist/tools/modify/shared.js +48 -4
  148. package/dist/tools/modify/shared.js.map +1 -1
  149. package/dist/tools/modify/undo.d.ts +3 -0
  150. package/dist/tools/modify/undo.d.ts.map +1 -0
  151. package/dist/tools/modify/undo.js +64 -0
  152. package/dist/tools/modify/undo.js.map +1 -0
  153. package/dist/tools/modify/ungroup-objects.d.ts +3 -0
  154. package/dist/tools/modify/ungroup-objects.d.ts.map +1 -0
  155. package/dist/tools/modify/ungroup-objects.js +67 -0
  156. package/dist/tools/modify/ungroup-objects.js.map +1 -0
  157. package/dist/tools/read/check-contrast.d.ts +3 -0
  158. package/dist/tools/read/check-contrast.d.ts.map +1 -0
  159. package/dist/tools/read/check-contrast.js +239 -0
  160. package/dist/tools/read/check-contrast.js.map +1 -0
  161. package/dist/tools/read/convert-coordinate.d.ts +3 -0
  162. package/dist/tools/read/convert-coordinate.d.ts.map +1 -0
  163. package/dist/tools/read/convert-coordinate.js +74 -0
  164. package/dist/tools/read/convert-coordinate.js.map +1 -0
  165. package/dist/tools/read/extract-design-tokens.d.ts +3 -0
  166. package/dist/tools/read/extract-design-tokens.d.ts.map +1 -0
  167. package/dist/tools/read/extract-design-tokens.js +258 -0
  168. package/dist/tools/read/extract-design-tokens.js.map +1 -0
  169. package/dist/tools/read/find-objects.d.ts.map +1 -1
  170. package/dist/tools/read/find-objects.js +16 -37
  171. package/dist/tools/read/find-objects.js.map +1 -1
  172. package/dist/tools/read/get-artboards.d.ts.map +1 -1
  173. package/dist/tools/read/get-artboards.js +15 -13
  174. package/dist/tools/read/get-artboards.js.map +1 -1
  175. package/dist/tools/read/get-colors.d.ts.map +1 -1
  176. package/dist/tools/read/get-colors.js +93 -15
  177. package/dist/tools/read/get-colors.js.map +1 -1
  178. package/dist/tools/read/get-document-info.d.ts.map +1 -1
  179. package/dist/tools/read/get-document-info.js +47 -19
  180. package/dist/tools/read/get-document-info.js.map +1 -1
  181. package/dist/tools/read/get-document-structure.d.ts.map +1 -1
  182. package/dist/tools/read/get-document-structure.js +16 -24
  183. package/dist/tools/read/get-document-structure.js.map +1 -1
  184. package/dist/tools/read/get-effects.d.ts.map +1 -1
  185. package/dist/tools/read/get-effects.js +32 -43
  186. package/dist/tools/read/get-effects.js.map +1 -1
  187. package/dist/tools/read/get-groups.d.ts.map +1 -1
  188. package/dist/tools/read/get-groups.js +22 -26
  189. package/dist/tools/read/get-groups.js.map +1 -1
  190. package/dist/tools/read/get-guidelines.d.ts.map +1 -1
  191. package/dist/tools/read/get-guidelines.js +13 -16
  192. package/dist/tools/read/get-guidelines.js.map +1 -1
  193. package/dist/tools/read/get-images.d.ts.map +1 -1
  194. package/dist/tools/read/get-images.js +43 -25
  195. package/dist/tools/read/get-images.js.map +1 -1
  196. package/dist/tools/read/get-layers.d.ts.map +1 -1
  197. package/dist/tools/read/get-layers.js +14 -15
  198. package/dist/tools/read/get-layers.js.map +1 -1
  199. package/dist/tools/read/get-overprint-info.d.ts.map +1 -1
  200. package/dist/tools/read/get-overprint-info.js +72 -63
  201. package/dist/tools/read/get-overprint-info.js.map +1 -1
  202. package/dist/tools/read/get-path-items.d.ts.map +1 -1
  203. package/dist/tools/read/get-path-items.js +26 -20
  204. package/dist/tools/read/get-path-items.js.map +1 -1
  205. package/dist/tools/read/get-selection.d.ts.map +1 -1
  206. package/dist/tools/read/get-selection.js +19 -33
  207. package/dist/tools/read/get-selection.js.map +1 -1
  208. package/dist/tools/read/get-separation-info.d.ts +3 -0
  209. package/dist/tools/read/get-separation-info.d.ts.map +1 -0
  210. package/dist/tools/read/get-separation-info.js +94 -0
  211. package/dist/tools/read/get-separation-info.js.map +1 -0
  212. package/dist/tools/read/get-symbols.d.ts.map +1 -1
  213. package/dist/tools/read/get-symbols.js +19 -23
  214. package/dist/tools/read/get-symbols.js.map +1 -1
  215. package/dist/tools/read/get-text-frame-detail.d.ts.map +1 -1
  216. package/dist/tools/read/get-text-frame-detail.js +270 -67
  217. package/dist/tools/read/get-text-frame-detail.js.map +1 -1
  218. package/dist/tools/read/list-fonts.d.ts +3 -0
  219. package/dist/tools/read/list-fonts.d.ts.map +1 -0
  220. package/dist/tools/read/list-fonts.js +78 -0
  221. package/dist/tools/read/list-fonts.js.map +1 -0
  222. package/dist/tools/read/list-text-frames.d.ts.map +1 -1
  223. package/dist/tools/read/list-text-frames.js +99 -36
  224. package/dist/tools/read/list-text-frames.js.map +1 -1
  225. package/dist/tools/registry.d.ts.map +1 -1
  226. package/dist/tools/registry.js +68 -0
  227. package/dist/tools/registry.js.map +1 -1
  228. package/dist/tools/session.d.ts +36 -0
  229. package/dist/tools/session.d.ts.map +1 -0
  230. package/dist/tools/session.js +246 -0
  231. package/dist/tools/session.js.map +1 -0
  232. package/dist/tools/utility/check-text-consistency.d.ts +3 -0
  233. package/dist/tools/utility/check-text-consistency.d.ts.map +1 -0
  234. package/dist/tools/utility/check-text-consistency.js +303 -0
  235. package/dist/tools/utility/check-text-consistency.js.map +1 -0
  236. package/dist/tools/utility/preflight-check.d.ts.map +1 -1
  237. package/dist/tools/utility/preflight-check.js +141 -43
  238. package/dist/tools/utility/preflight-check.js.map +1 -1
  239. package/dist/tools/utility/set-workflow.d.ts +3 -0
  240. package/dist/tools/utility/set-workflow.d.ts.map +1 -0
  241. package/dist/tools/utility/set-workflow.js +95 -0
  242. package/dist/tools/utility/set-workflow.js.map +1 -0
  243. package/dist/utils/image-header.d.ts.map +1 -1
  244. package/dist/utils/image-header.js +5 -1
  245. package/dist/utils/image-header.js.map +1 -1
  246. package/package.json +1 -1
@@ -1,5 +1,13 @@
1
1
  import { z } from 'zod';
2
2
  import { executeJsx } from '../../executor/jsx-runner.js';
3
+ import { READ_ANNOTATIONS } from '../modify/shared.js';
4
+ /**
5
+ * get_colors — ドキュメントの色情報取得(スウォッチ・グラデーション・パターン・スポットカラー)
6
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Swatches/ — Swatches collection
7
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Gradient/ — Gradient, GradientStop
8
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Spot/ — Spot color
9
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Pattern/ — Pattern
10
+ */
3
11
  const jsxCode = `
4
12
  var preflight = preflightChecks();
5
13
  if (preflight) {
@@ -10,6 +18,8 @@ if (preflight) {
10
18
  var doc = app.activeDocument;
11
19
  var includeSwatches = (params && typeof params.include_swatches === "boolean") ? params.include_swatches : true;
12
20
  var includeUsedColors = (params && typeof params.include_used_colors === "boolean") ? params.include_used_colors : true;
21
+ var includeDiagnostics = (params && typeof params.include_diagnostics === "boolean") ? params.include_diagnostics : false;
22
+ var isCMYKDoc = (doc.documentColorSpace === DocumentColorSpace.CMYK);
13
23
 
14
24
  var result = {};
15
25
 
@@ -58,6 +68,24 @@ if (preflight) {
58
68
  }
59
69
  result.gradients = gradients;
60
70
 
71
+ // グラデーション色空間診断
72
+ if (includeDiagnostics && isCMYKDoc) {
73
+ var gradientWarnings = [];
74
+ for (var gwi = 0; gwi < gradients.length; gwi++) {
75
+ var gw = gradients[gwi];
76
+ for (var gwsi = 0; gwsi < gw.stops.length; gwsi++) {
77
+ if (gw.stops[gwsi].color && gw.stops[gwsi].color.type === "rgb") {
78
+ gradientWarnings.push({
79
+ gradientName: gw.name,
80
+ stopIndex: gwsi,
81
+ message: "RGB color stop in CMYK document gradient"
82
+ });
83
+ }
84
+ }
85
+ }
86
+ result.gradientWarnings = gradientWarnings;
87
+ }
88
+
61
89
  // パターン一覧
62
90
  var patterns = [];
63
91
  for (var pi = 0; pi < doc.patterns.length; pi++) {
@@ -77,29 +105,37 @@ if (preflight) {
77
105
  try { spotInfo.color = colorToObject(spot.color); } catch (e) { spotInfo.color = { type: "unknown" }; }
78
106
  try {
79
107
  var st = spot.spotKind;
80
- if (st === SpotColorKind.SPOTCMYK) spotInfo.spotKind = "CMYK";
81
- else if (st === SpotColorKind.SPOTRGB) spotInfo.spotKind = "RGB";
82
- else if (st === SpotColorKind.SPOTLAB) spotInfo.spotKind = "LAB";
108
+ if (st === SpotColorKind.SpotCMYK) spotInfo.spotKind = "CMYK";
109
+ else if (st === SpotColorKind.SpotRGB) spotInfo.spotKind = "RGB";
110
+ else if (st === SpotColorKind.SpotLAB) spotInfo.spotKind = "LAB";
83
111
  else spotInfo.spotKind = st.toString();
84
112
  } catch (e) { spotInfo.spotKind = "unknown"; }
85
113
  spots.push(spotInfo);
86
114
  }
87
115
  result.spots = spots;
88
116
 
89
- // 使用色の収集とメッシュ検出
117
+ // 使用色の収集とメッシュ検出(1パスで diagnostics も同時集計)
90
118
  if (includeUsedColors) {
91
119
  var usedFills = [];
92
120
  var usedStrokes = [];
93
121
  var meshItems = [];
94
122
  var spotUsageCount = {};
123
+ var rgbInCmyk = 0;
124
+ var cmykInRgb = 0;
95
125
 
96
- // doc.pathItems is document-wide (all layers), unlike doc.pageItems which only returns active layer
97
126
  for (var ii = 0; ii < doc.pathItems.length; ii++) {
98
127
  var item = doc.pathItems[ii];
99
128
 
100
129
  try {
101
130
  if (item.filled) {
102
131
  var fc = colorToObject(item.fillColor);
132
+ if (includeDiagnostics && fc.type === "cmyk") {
133
+ fc.inkCoverage = fc.c + fc.m + fc.y + fc.k;
134
+ }
135
+ if (includeDiagnostics) {
136
+ if (isCMYKDoc && fc.type === "rgb") rgbInCmyk++;
137
+ if (!isCMYKDoc && fc.type === "cmyk") cmykInRgb++;
138
+ }
103
139
  usedFills.push(fc);
104
140
  if (fc.type === "spot") {
105
141
  var spName = fc.name;
@@ -111,6 +147,13 @@ if (preflight) {
111
147
  try {
112
148
  if (item.stroked) {
113
149
  var sc = colorToObject(item.strokeColor);
150
+ if (includeDiagnostics && sc.type === "cmyk") {
151
+ sc.inkCoverage = sc.c + sc.m + sc.y + sc.k;
152
+ }
153
+ if (includeDiagnostics) {
154
+ if (isCMYKDoc && sc.type === "rgb") rgbInCmyk++;
155
+ if (!isCMYKDoc && sc.type === "cmyk") cmykInRgb++;
156
+ }
114
157
  usedStrokes.push(sc);
115
158
  if (sc.type === "spot") {
116
159
  var spName2 = sc.name;
@@ -121,6 +164,38 @@ if (preflight) {
121
164
  } catch (e) {}
122
165
  }
123
166
 
167
+ // テキストフレームの文字色を収集
168
+ for (var ti = 0; ti < doc.textFrames.length; ti++) {
169
+ try {
170
+ var tfItem = doc.textFrames[ti];
171
+ for (var ci = 0; ci < tfItem.textRanges.length; ci++) {
172
+ var ca = tfItem.textRanges[ci].characterAttributes;
173
+ try {
174
+ var tfc = colorToObject(ca.fillColor);
175
+ if (includeDiagnostics && tfc.type === "cmyk") {
176
+ tfc.inkCoverage = tfc.c + tfc.m + tfc.y + tfc.k;
177
+ }
178
+ if (includeDiagnostics) {
179
+ if (isCMYKDoc && tfc.type === "rgb") rgbInCmyk++;
180
+ if (!isCMYKDoc && tfc.type === "cmyk") cmykInRgb++;
181
+ }
182
+ usedFills.push(tfc);
183
+ if (tfc.type === "spot") {
184
+ var tSpName = tfc.name;
185
+ if (spotUsageCount[tSpName] === undefined) spotUsageCount[tSpName] = 0;
186
+ spotUsageCount[tSpName] = spotUsageCount[tSpName] + 1;
187
+ }
188
+ } catch (e3) {}
189
+ try {
190
+ if (ca.strokeWeight > 0) {
191
+ var tsc = colorToObject(ca.strokeColor);
192
+ usedStrokes.push(tsc);
193
+ }
194
+ } catch (e4) {}
195
+ }
196
+ } catch (e5) {}
197
+ }
198
+
124
199
  // メッシュアイテム検出 (document-wide)
125
200
  for (var mi = 0; mi < doc.meshItems.length; mi++) {
126
201
  meshItems.push(ensureUUID(doc.meshItems[mi]));
@@ -132,6 +207,14 @@ if (preflight) {
132
207
  spots[sci].usageCount = (count !== undefined) ? count : 0;
133
208
  }
134
209
 
210
+ if (includeDiagnostics) {
211
+ result.colorModelWarnings = {
212
+ documentColorSpace: isCMYKDoc ? "CMYK" : "RGB",
213
+ rgbColorsInCmykDoc: rgbInCmyk,
214
+ cmykColorsInRgbDoc: cmykInRgb
215
+ };
216
+ }
217
+
135
218
  result.usedFillColors = usedFills;
136
219
  result.usedStrokeColors = usedStrokes;
137
220
  result.meshGradient = {
@@ -161,18 +244,13 @@ export function register(server) {
161
244
  .optional()
162
245
  .default(true)
163
246
  .describe('Include used color collection'),
164
- coordinate_system: z
165
- .enum(['artboard-web', 'document'])
247
+ include_diagnostics: z
248
+ .boolean()
166
249
  .optional()
167
- .default('artboard-web')
168
- .describe('Coordinate system (artboard-web: artboard-relative Y-down, document: native Illustrator coordinates)'),
169
- },
170
- annotations: {
171
- readOnlyHint: true,
172
- destructiveHint: false,
173
- idempotentHint: true,
174
- openWorldHint: false,
250
+ .default(false)
251
+ .describe('Include print diagnostics: gradient color space validation, ink coverage per color, color model mismatch warnings'),
175
252
  },
253
+ annotations: READ_ANNOTATIONS,
176
254
  }, async (params) => {
177
255
  const result = await executeJsx(jsxCode, params);
178
256
  return { content: [{ type: 'text', text: JSON.stringify(result, null, 2) }] };
@@ -1 +1 @@
1
- {"version":3,"file":"get-colors.js","sourceRoot":"","sources":["../../../src/tools/read/get-colors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiJf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,gDAAgD;QAC7D,WAAW,EAAE;YACX,gBAAgB,EAAE,CAAC;iBAChB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CAAC,qBAAqB,CAAC;YAClC,mBAAmB,EAAE,CAAC;iBACnB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CAAC,+BAA+B,CAAC;YAC5C,iBAAiB,EAAE,CAAC;iBACjB,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;iBAClC,QAAQ,EAAE;iBACV,OAAO,CAAC,cAAc,CAAC;iBACvB,QAAQ,CAAC,sGAAsG,CAAC;SACpH;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,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
+ {"version":3,"file":"get-colors.js","sourceRoot":"","sources":["../../../src/tools/read/get-colors.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;AACvD;;;;;;GAMG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Nf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,gDAAgD;QAC7D,WAAW,EAAE;YACX,gBAAgB,EAAE,CAAC;iBAChB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CAAC,qBAAqB,CAAC;YAClC,mBAAmB,EAAE,CAAC;iBACnB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,IAAI,CAAC;iBACb,QAAQ,CAAC,+BAA+B,CAAC;YAC5C,mBAAmB,EAAE,CAAC;iBACnB,OAAO,EAAE;iBACT,QAAQ,EAAE;iBACV,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,CAAC,mHAAmH,CAAC;SACjI;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":"get-document-info.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-document-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiHpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0BhD"}
1
+ {"version":3,"file":"get-document-info.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-document-info.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA2IpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAkChD"}
@@ -1,11 +1,18 @@
1
- import { z } from 'zod';
2
1
  import { executeJsx } from '../../executor/jsx-runner.js';
2
+ import { coordinateSystemSchema, resolveCoordinateSystem, detectWorkflow, } from '../session.js';
3
+ import { READ_ANNOTATIONS } from '../modify/shared.js';
4
+ /**
5
+ * get_document_info — ドキュメントの基本情報取得
6
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Document/ — name, fullName, width, height, documentColorSpace, rulerUnits
7
+ *
8
+ * 注意: Document.colorProfileName はリファレンスに記載がないが実際は動作する。
9
+ */
3
10
  const jsxCode = `
4
- try {
5
- var err = preflightChecks();
6
- if (err) {
7
- writeResultFile(RESULT_PATH, err);
8
- } else {
11
+ var preflight = preflightChecks();
12
+ if (preflight) {
13
+ writeResultFile(RESULT_PATH, preflight);
14
+ } else {
15
+ try {
9
16
  var params = readParamsFile(PARAMS_PATH);
10
17
  var doc = app.activeDocument;
11
18
  var coordSystem = (params && params.coordinate_system) ? params.coordinate_system : "artboard-web";
@@ -41,6 +48,20 @@ try {
41
48
  colorProfile = "";
42
49
  }
43
50
 
51
+ // ルーラー単位
52
+ var rulerUnits = "unknown";
53
+ try {
54
+ var ru = doc.rulerUnits;
55
+ if (ru === RulerUnits.Pixels) rulerUnits = "px";
56
+ else if (ru === RulerUnits.Points) rulerUnits = "pt";
57
+ else if (ru === RulerUnits.Millimeters) rulerUnits = "mm";
58
+ else if (ru === RulerUnits.Centimeters) rulerUnits = "cm";
59
+ else if (ru === RulerUnits.Inches) rulerUnits = "in";
60
+ else if (ru === RulerUnits.Picas) rulerUnits = "pica";
61
+ } catch (e) {
62
+ rulerUnits = "unknown";
63
+ }
64
+
44
65
  // 裁ち落とし設定
45
66
  // Illustrator ExtendScript API はドキュメントの裁ち落とし(bleed)設定を
46
67
  // 直接公開していないため、取得不可
@@ -95,6 +116,7 @@ try {
95
116
  height: docHeight,
96
117
  colorMode: colorMode,
97
118
  colorProfile: colorProfile,
119
+ rulerUnits: rulerUnits,
98
120
  bleed: bleed,
99
121
  rasterEffectResolution: rasterResolution,
100
122
  artboardCount: artboardCount,
@@ -103,9 +125,9 @@ try {
103
125
  };
104
126
 
105
127
  writeResultFile(RESULT_PATH, result);
128
+ } catch (e) {
129
+ writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
106
130
  }
107
- } catch (e) {
108
- writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
109
131
  }
110
132
  `;
111
133
  export function register(server) {
@@ -113,19 +135,25 @@ export function register(server) {
113
135
  title: 'Get Document Info',
114
136
  description: 'Get document metadata',
115
137
  inputSchema: {
116
- coordinate_system: z
117
- .enum(['artboard-web', 'document'])
118
- .optional()
119
- .default('artboard-web'),
120
- },
121
- annotations: {
122
- readOnlyHint: true,
123
- destructiveHint: false,
124
- idempotentHint: true,
125
- openWorldHint: false,
138
+ coordinate_system: coordinateSystemSchema,
126
139
  },
140
+ annotations: READ_ANNOTATIONS,
127
141
  }, async (params) => {
128
- const result = await executeJsx(jsxCode, params);
142
+ const resolvedParams = {
143
+ ...params,
144
+ coordinate_system: await resolveCoordinateSystem(params.coordinate_system),
145
+ };
146
+ const result = await executeJsx(jsxCode, resolvedParams);
147
+ // Append workflow hint based on document signals
148
+ if (result && !result.error) {
149
+ const hint = detectWorkflow({
150
+ colorMode: result.colorMode ?? 'unknown',
151
+ rulerUnits: result.rulerUnits ?? 'unknown',
152
+ rasterEffectResolution: result.rasterEffectResolution ?? 0,
153
+ colorProfile: result.colorProfile ?? '',
154
+ });
155
+ result.workflowHint = hint;
156
+ }
129
157
  return {
130
158
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
131
159
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-document-info.js","sourceRoot":"","sources":["../../../src/tools/read/get-document-info.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2Gf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE;YACX,iBAAiB,EAAE,CAAC;iBACjB,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;iBAClC,QAAQ,EAAE;iBACV,OAAO,CAAC,cAAc,CAAC;SAC3B;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-document-info.js","sourceRoot":"","sources":["../../../src/tools/read/get-document-info.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EACL,sBAAsB,EACtB,uBAAuB,EACvB,cAAc,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD;;;;;GAKG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0Hf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,mBAAmB,EACnB;QACE,KAAK,EAAE,mBAAmB;QAC1B,WAAW,EAAE,uBAAuB;QACpC,WAAW,EAAE;YACX,iBAAiB,EAAE,sBAAsB;SAC1C;QACD,WAAW,EAAE,gBAAgB;KAC9B,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,cAAc,GAAG;YACrB,GAAG,MAAM;YACT,iBAAiB,EAAE,MAAM,uBAAuB,CAAC,MAAM,CAAC,iBAAiB,CAAC;SAC3E,CAAC;QACF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC;QAEzD,iDAAiD;QACjD,IAAI,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,cAAc,CAAC;gBAC1B,SAAS,EAAG,MAAM,CAAC,SAAoB,IAAI,SAAS;gBACpD,UAAU,EAAG,MAAM,CAAC,UAAqB,IAAI,SAAS;gBACtD,sBAAsB,EAAG,MAAM,CAAC,sBAAiC,IAAI,CAAC;gBACtE,YAAY,EAAG,MAAM,CAAC,YAAuB,IAAI,EAAE;aACpD,CAAC,CAAC;YACH,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-document-structure.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-document-structure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA+FpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmChD"}
1
+ {"version":3,"file":"get-document-structure.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-document-structure.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAiGpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2BhD"}
@@ -1,9 +1,17 @@
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 } from '../modify/shared.js';
5
+ /**
6
+ * get_document_structure — レイヤー・グループ・オブジェクトのツリー構造取得
7
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Document/ — layers
8
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/Layer/ — pageItems, layers (sublayers)
9
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/PageItem/ — typename, name, geometricBounds
10
+ */
3
11
  const jsxCode = `
4
- var err = preflightChecks();
5
- if (err) {
6
- writeResultFile(RESULT_PATH, err);
12
+ var preflight = preflightChecks();
13
+ if (preflight) {
14
+ writeResultFile(RESULT_PATH, preflight);
7
15
  } else {
8
16
  try {
9
17
  var params = readParamsFile(PARAMS_PATH);
@@ -12,14 +20,6 @@ if (err) {
12
20
  var coordSystem = params.coordinate_system || "artboard-web";
13
21
  var doc = app.activeDocument;
14
22
 
15
- function getArtboardRect(item) {
16
- var abIdx = getArtboardIndexForItem(item);
17
- if (abIdx >= 0) {
18
- return doc.artboards[abIdx].artboardRect;
19
- }
20
- return null;
21
- }
22
-
23
23
  function shouldIncludeItem(item) {
24
24
  if (filterArtboard < 0) { return true; }
25
25
  var abIdx = getArtboardIndexForItem(item);
@@ -33,7 +33,7 @@ if (err) {
33
33
  var item = container.pageItems[i];
34
34
  if (!shouldIncludeItem(item)) { continue; }
35
35
  var itemType = getItemType(item);
36
- var abRect = getArtboardRect(item);
36
+ var abRect = getArtboardRectByIndex(getArtboardIndexForItem(item));
37
37
  var child = {
38
38
  uuid: ensureUUID(item),
39
39
  name: "",
@@ -103,20 +103,12 @@ export function register(server) {
103
103
  .number()
104
104
  .optional()
105
105
  .describe('Filter by artboard index (0-based integer)'),
106
- coordinate_system: z
107
- .enum(['artboard-web', 'document'])
108
- .optional()
109
- .default('artboard-web')
110
- .describe('Coordinate system (artboard-web: artboard-relative Y-down, document: native Illustrator coordinates)'),
111
- },
112
- annotations: {
113
- readOnlyHint: true,
114
- destructiveHint: false,
115
- idempotentHint: true,
116
- openWorldHint: false,
106
+ coordinate_system: coordinateSystemSchema,
117
107
  },
108
+ annotations: READ_ANNOTATIONS,
118
109
  }, async (params) => {
119
- const result = await executeJsx(jsxCode, params);
110
+ const resolvedParams = { ...params, coordinate_system: await resolveCoordinateSystem(params.coordinate_system) };
111
+ const result = await executeJsx(jsxCode, resolvedParams);
120
112
  return {
121
113
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
122
114
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-document-structure.js","sourceRoot":"","sources":["../../../src/tools/read/get-document-structure.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyFf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,mDAAmD;QAChE,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,4CAA4C,CAAC;YACzD,iBAAiB,EAAE,CAAC;iBACjB,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;iBAClC,QAAQ,EAAE;iBACV,OAAO,CAAC,cAAc,CAAC;iBACvB,QAAQ,CAAC,sGAAsG,CAAC;SACpH;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SAC5E,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-document-structure.js","sourceRoot":"","sources":["../../../src/tools/read/get-document-structure.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,MAAM,qBAAqB,CAAC;AACvD;;;;;GAKG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiFf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,wBAAwB,EACxB;QACE,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,mDAAmD;QAChE,WAAW,EAAE;YACX,KAAK,EAAE,CAAC;iBACL,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,gDAAgD,CAAC;YAC7D,cAAc,EAAE,CAAC;iBACd,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,4CAA4C,CAAC;YACzD,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;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-effects.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAkKpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA4BhD"}
1
+ {"version":3,"file":"get-effects.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-effects.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAgKpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqBhD"}
@@ -1,11 +1,17 @@
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
+ * get_effects — オブジェクトに適用されたエフェクト情報の取得
7
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/PageItem/ — typename, geometricBounds, visibleBounds
8
+ */
3
9
  const jsxCode = `
4
- try {
5
- var err = preflightChecks();
6
- if (err) {
7
- writeResultFile(RESULT_PATH, err);
8
- } else {
10
+ var preflight = preflightChecks();
11
+ if (preflight) {
12
+ writeResultFile(RESULT_PATH, preflight);
13
+ } else {
14
+ try {
9
15
  var params = readParamsFile(PARAMS_PATH);
10
16
  var coordSystem = (params && params.coordinate_system) ? params.coordinate_system : "artboard-web";
11
17
  var targetUuid = (params && params.target) ? params.target : null;
@@ -26,7 +32,7 @@ try {
26
32
  if (mode === BlendModes.DIFFERENCE) return "difference";
27
33
  if (mode === BlendModes.EXCLUSION) return "exclusion";
28
34
  if (mode === BlendModes.HUE) return "hue";
29
- if (mode === BlendModes.SATURATION) return "saturationBlend";
35
+ if (mode === BlendModes.SATURATIONBLEND) return "saturationBlend";
30
36
  if (mode === BlendModes.COLOR) return "colorBlend";
31
37
  if (mode === BlendModes.LUMINOSITY) return "luminosity";
32
38
  return "unknown";
@@ -37,8 +43,7 @@ try {
37
43
  var zIdx = getZIndex(item);
38
44
  var itemType = getItemType(item);
39
45
  var abIndex = getArtboardIndexForItem(item);
40
- var abRect = null;
41
- if (abIndex >= 0) { abRect = doc.artboards[abIndex].artboardRect; }
46
+ var abRect = getArtboardRectByIndex(abIndex);
42
47
  var bounds = getBounds(item, coordSys, abRect);
43
48
 
44
49
  var info = {
@@ -106,27 +111,9 @@ try {
106
111
 
107
112
  var items = [];
108
113
 
109
- function findByNote(items, uuid) {
110
- for (var i = 0; i < items.length; i++) {
111
- var item = items[i];
112
- try { if (item.note === uuid) return item; } catch(e) {}
113
- if (item.typename === "GroupItem") {
114
- try {
115
- var child = findByNote(item.pageItems, uuid);
116
- if (child) return child;
117
- } catch(e2) {}
118
- }
119
- }
120
- return null;
121
- }
122
-
123
114
  if (targetUuid) {
124
115
  // Find specific item by UUID
125
- var targetItem = null;
126
- for (var li = 0; li < doc.layers.length; li++) {
127
- targetItem = findByNote(doc.layers[li].pageItems, targetUuid);
128
- if (targetItem) break;
129
- }
116
+ var targetItem = findItemByUUID(targetUuid);
130
117
  if (targetItem) {
131
118
  items.push(getEffectInfo(targetItem, coordSystem));
132
119
  } else {
@@ -140,8 +127,17 @@ try {
140
127
  }
141
128
  }
142
129
  } else {
143
- for (var j = 0; j < doc.pageItems.length; j++) {
144
- items.push(getEffectInfo(doc.pageItems[j], coordSystem));
130
+ function collectEffectItems(container) {
131
+ for (var j = 0; j < container.pageItems.length; j++) {
132
+ var pi = container.pageItems[j];
133
+ items.push(getEffectInfo(pi, coordSystem));
134
+ if (pi.typename === "GroupItem") {
135
+ try { collectEffectItems(pi); } catch (e) {}
136
+ }
137
+ }
138
+ }
139
+ for (var li = 0; li < doc.layers.length; li++) {
140
+ collectEffectItems(doc.layers[li]);
145
141
  }
146
142
  }
147
143
 
@@ -152,9 +148,9 @@ try {
152
148
  items: items
153
149
  });
154
150
  }
151
+ } catch (e) {
152
+ writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
155
153
  }
156
- } catch (e) {
157
- writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
158
154
  }
159
155
  `;
160
156
  export function register(server) {
@@ -163,20 +159,13 @@ export function register(server) {
163
159
  description: 'Get effect and appearance information',
164
160
  inputSchema: {
165
161
  target: z.string().optional().describe('Filter by UUID for a specific object'),
166
- selection_only: z.boolean().optional().default(false).describe('Selected objects only'),
167
- coordinate_system: z
168
- .enum(['artboard-web', 'document'])
169
- .optional()
170
- .default('artboard-web'),
171
- },
172
- annotations: {
173
- readOnlyHint: true,
174
- destructiveHint: false,
175
- idempotentHint: true,
176
- openWorldHint: false,
162
+ selection_only: coerceBoolean.optional().default(false).describe('Selected objects only'),
163
+ coordinate_system: coordinateSystemSchema,
177
164
  },
165
+ annotations: READ_ANNOTATIONS,
178
166
  }, async (params) => {
179
- const result = await executeJsx(jsxCode, params);
167
+ const resolvedParams = { ...params, coordinate_system: await resolveCoordinateSystem(params.coordinate_system) };
168
+ const result = await executeJsx(jsxCode, resolvedParams);
180
169
  return {
181
170
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
182
171
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-effects.js","sourceRoot":"","sources":["../../../src/tools/read/get-effects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4Jf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9E,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACvF,iBAAiB,EAAE,CAAC;iBACjB,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;iBAClC,QAAQ,EAAE;iBACV,OAAO,CAAC,cAAc,CAAC;SAC3B;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-effects.js","sourceRoot":"","sources":["../../../src/tools/read/get-effects.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;;;GAGG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkJf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;QACE,KAAK,EAAE,aAAa;QACpB,WAAW,EAAE,uCAAuC;QACpD,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,sCAAsC,CAAC;YAC9E,cAAc,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC;YACzF,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;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-groups.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAuJpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA4BhD"}
1
+ {"version":3,"file":"get-groups.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-groups.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA4JpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAqBhD"}
@@ -1,11 +1,18 @@
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 } from '../modify/shared.js';
5
+ /**
6
+ * get_groups — グループアイテム情報の取得
7
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/GroupItems/ — GroupItems collection
8
+ * @see https://ai-scripting.docsforadobe.dev/jsobjref/GroupItem/ — clipped, pageItems
9
+ */
3
10
  const jsxCode = `
4
- try {
5
- var err = preflightChecks();
6
- if (err) {
7
- writeResultFile(RESULT_PATH, err);
8
- } else {
11
+ var preflight = preflightChecks();
12
+ if (preflight) {
13
+ writeResultFile(RESULT_PATH, preflight);
14
+ } else {
15
+ try {
9
16
  var params = readParamsFile(PARAMS_PATH);
10
17
  var coordSystem = (params && params.coordinate_system) ? params.coordinate_system : "artboard-web";
11
18
  var maxDepth = (params && params.depth !== undefined) ? params.depth : 10;
@@ -20,8 +27,7 @@ try {
20
27
  var childUuid = ensureUUID(child);
21
28
  var childType = getItemType(child);
22
29
  var abIdx = getArtboardIndexForItem(child);
23
- var abRect = null;
24
- if (abIdx >= 0) { abRect = doc.artboards[abIdx].artboardRect; }
30
+ var abRect = getArtboardRectByIndex(abIdx);
25
31
  var childBounds = getBounds(child, coordSys, abRect);
26
32
  var childInfo = {
27
33
  uuid: childUuid,
@@ -69,8 +75,7 @@ try {
69
75
  var uuid = ensureUUID(group);
70
76
  var zIdx = getZIndex(group);
71
77
  var abIndex = getArtboardIndexForItem(group);
72
- var artboardRect = null;
73
- if (abIndex >= 0) { artboardRect = doc.artboards[abIndex].artboardRect; }
78
+ var artboardRect = getArtboardRectByIndex(abIndex);
74
79
  var bounds = getBounds(group, coordSystem, artboardRect);
75
80
 
76
81
  var groupType = "group";
@@ -102,8 +107,7 @@ try {
102
107
  var cpUuid = ensureUUID(cp);
103
108
  var cpZIdx = getZIndex(cp);
104
109
  var cpAbIndex = getArtboardIndexForItem(cp);
105
- var cpAbRect = null;
106
- if (cpAbIndex >= 0) { cpAbRect = doc.artboards[cpAbIndex].artboardRect; }
110
+ var cpAbRect = getArtboardRectByIndex(cpAbIndex);
107
111
  var cpBounds = getBounds(cp, coordSystem, cpAbRect);
108
112
 
109
113
  var cpInfo = {
@@ -120,8 +124,7 @@ try {
120
124
  var pathChild = cp.pathItems[pi];
121
125
  var pcUuid = ensureUUID(pathChild);
122
126
  var pcAbIdx = getArtboardIndexForItem(pathChild);
123
- var pcAbRect = null;
124
- if (pcAbIdx >= 0) { pcAbRect = doc.artboards[pcAbIdx].artboardRect; }
127
+ var pcAbRect = getArtboardRectByIndex(pcAbIdx);
125
128
  var pcBounds = getBounds(pathChild, coordSystem, pcAbRect);
126
129
  cpInfo.children.push({
127
130
  uuid: pcUuid,
@@ -141,9 +144,9 @@ try {
141
144
  });
142
145
 
143
146
  } // end of layerName && !sourceLayer guard
147
+ } catch (e) {
148
+ writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
144
149
  }
145
- } catch (e) {
146
- writeResultFile(RESULT_PATH, { error: true, message: e.message, line: e.line });
147
150
  }
148
151
  `;
149
152
  export function register(server) {
@@ -153,19 +156,12 @@ export function register(server) {
153
156
  inputSchema: {
154
157
  layer_name: z.string().optional().describe('Filter by layer name (all layers if omitted)'),
155
158
  depth: z.number().optional().default(10).describe('Maximum traversal depth'),
156
- coordinate_system: z
157
- .enum(['artboard-web', 'document'])
158
- .optional()
159
- .default('artboard-web'),
160
- },
161
- annotations: {
162
- readOnlyHint: true,
163
- destructiveHint: false,
164
- idempotentHint: true,
165
- openWorldHint: false,
159
+ coordinate_system: coordinateSystemSchema,
166
160
  },
161
+ annotations: READ_ANNOTATIONS,
167
162
  }, async (params) => {
168
- const result = await executeJsx(jsxCode, params);
163
+ const resolvedParams = { ...params, coordinate_system: await resolveCoordinateSystem(params.coordinate_system) };
164
+ const result = await executeJsx(jsxCode, resolvedParams);
169
165
  return {
170
166
  content: [{ type: 'text', text: JSON.stringify(result, null, 2) }],
171
167
  };
@@ -1 +1 @@
1
- {"version":3,"file":"get-groups.js","sourceRoot":"","sources":["../../../src/tools/read/get-groups.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAE1D,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiJf,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,6DAA6D;QAC1E,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YAC1F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAC5E,iBAAiB,EAAE,CAAC;iBACjB,IAAI,CAAC,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;iBAClC,QAAQ,EAAE;iBACV,OAAO,CAAC,cAAc,CAAC;SAC3B;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,KAAK;YACtB,cAAc,EAAE,IAAI;YACpB,aAAa,EAAE,KAAK;SACrB;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;QACjD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"get-groups.js","sourceRoot":"","sources":["../../../src/tools/read/get-groups.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,MAAM,qBAAqB,CAAC;AACvD;;;;GAIG;AACH,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6If,CAAC;AAEF,MAAM,UAAU,QAAQ,CAAC,MAAiB;IACxC,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;QACE,KAAK,EAAE,YAAY;QACnB,WAAW,EAAE,6DAA6D;QAC1E,WAAW,EAAE;YACX,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;YAC1F,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,yBAAyB,CAAC;YAC5E,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;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;SACnE,CAAC;IACJ,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-guidelines.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-guidelines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA8EpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2BhD"}
1
+ {"version":3,"file":"get-guidelines.d.ts","sourceRoot":"","sources":["../../../src/tools/read/get-guidelines.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAsFpE,wBAAgB,QAAQ,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAmBhD"}