@shuji-bonji/pdf-writer-mcp 0.9.2 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,42 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file.
4
4
 
5
+ ## [0.10.0] - 2026-07-17
6
+
7
+ Incremental updates grow up (B-7b) and `set_metadata` learns XMP (B-9).
8
+
9
+ ### Added
10
+
11
+ - **`preserveSignatures` for `set_metadata` and `add_bookmarks`** — the
12
+ signature-preserving incremental writer introduced in v0.9.0 for
13
+ annotations is now shared plumbing (`saveWithPreservedSignatures`) and
14
+ wired into two more tools. Measured against a really-signed PDF: two
15
+ stacked increments (metadata update, then bookmarks) keep
16
+ `verify_signatures: VALID` with byte-identical prefixes at every step.
17
+ DocMDP note: per ISO 32000-2 §12.8.2.2, metadata/outline changes are not
18
+ a permitted change type at *any* certification level, so certified
19
+ documents are always refused (annotations remain allowed at P=3).
20
+ - **`set_metadata` now keeps XMP in sync (B-9)** — on documents that carry
21
+ `/Metadata` (e.g. tagged output), updating the Info dictionary used to
22
+ leave `dc:title` etc. stale (found in SPEC-AUDIT Phase 1, §14.3.3). The
23
+ XMP packet is now regenerated from the updated Info values while
24
+ preserving the PDF/UA declaration (`pdfuaid:part`), `dc:language` and
25
+ `xmp:CreateDate`. The stream is replaced at the *same object ref*, so the
26
+ catalog stays untouched and the change rides incremental updates
27
+ naturally. New XMP fields: `dc:description` (Subject) and `pdf:Keywords`.
28
+ Measured: a tagged PDF re-titled via `set_metadata` stays veraPDF
29
+ **COMPLIANT (106/106)**.
30
+
31
+ ### Fixed
32
+
33
+ - **§7.5.6 trailer carry-over** — the incremental trailer now includes
34
+ *all* entries of the previous trailer (except position-dependent and
35
+ recomputed keys), not just Root/Info/ID: the previous trailer is parsed
36
+ from the original bytes with pdf-lib's `PDFObjectParser`, closing the
37
+ known v0.9.x gap (rare keys such as second-class names survive updates;
38
+ hybrid `XRefStm` is deliberately not carried). If the previous trailer
39
+ cannot be parsed, a warning is reported instead of failing.
40
+
5
41
  ## [0.9.2] - 2026-07-17
6
42
 
7
43
  SPEC-AUDIT Phase 1: the editing tools were audited clause-by-clause against
package/README.ja.md CHANGED
@@ -42,14 +42,14 @@ PDF/UA はタイトルを要求するため、`tagged: true` では `title` が
42
42
 
43
43
  | ツール | 役割 |
44
44
  |--------|------|
45
- | `set_metadata` | Info 辞書の更新(`title` / `author` / `subject` / `keywords` / `creator`)。指定フィールドのみ変更し、他は保持 |
45
+ | `set_metadata` | Info 辞書の更新(`title` / `author` / `subject` / `keywords` / `creator`)。指定フィールドのみ変更し、他は保持。XMP(`/Metadata`)を持つ文書では `dc:title` 等も同期再生成する(PDF/UA 宣言は保持)。`preserveSignatures` 対応 |
46
46
  | `merge_pdfs` | 2〜50 個の PDF を指定順に結合。メタデータは先頭ファイルから引き継ぎ |
47
47
  | `split_pdf` | ページ範囲ごとに 1 ファイルへ分割 |
48
48
  | `extract_pages` | 指定順を保持して抽出(並べ替えを兼ねる) |
49
49
  | `delete_pages` | ページ削除(全ページの削除はエラー) |
50
50
  | `reorder_pages` | 全ページの順列による並べ替え |
51
51
  | `rotate_pages` | 時計回りに回転(90/180/270)。既存の回転に加算 |
52
- | `add_bookmarks` | しおり(アウトライン)の設定。`children` で入れ子にでき、既存のしおりは置換 |
52
+ | `add_bookmarks` | しおり(アウトライン)の設定。`children` で入れ子にでき、既存のしおりは置換。`preserveSignatures` 対応 |
53
53
  | `add_annotation` | 付箋(`text`)/ ハイライト(`highlight`)/ 矩形(`square`)の注釈を追加。タグ付き PDF では `Annot` 構造要素に内包され PDF/UA 準拠を維持する(`alt` で説明を渡す)。`preserveSignatures: true` で**署名済み PDF の署名を保持したまま**追加できる — ISO 32000 の増分更新として末尾追記し、元のバイト列に一切触れない(タグ無し文書のみ) |
54
54
  | `attach_file` | ファイルを埋め込む(`/Names /EmbeddedFiles` + catalog `/AF` + `/AFRelationship`)。PDF/A-3 が要求する形式で、機械可読データを文書に同梱する |
55
55
  | `stamp_page_numbers` | ページ番号を刻む(`{n}` / `{total}`、6 箇所の配置、`pages`、`startAt`)。タグ付き PDF では Artifact になるため準拠を維持する |
@@ -62,7 +62,7 @@ PDF/UA はタイトルを要求するため、`tagged: true` では `title` が
62
62
 
63
63
  ページ指定は `"1,3-5,8-"` 形式(1 始まり。`-3` は先頭から 3 ページまで、`8-` は 8 ページから最終まで)。指定順を保持し、重複は除去します。
64
64
 
65
- > **署名について**: pdf-lib は保存時にファイル全体を再構築するため、通常の編集では既存の電子署名は必ず無効化されます。`/ByteRange` を含む PDF は既定でエラーとし、`allowBreakingSignatures: true` で破壊的に続行するか、`add_annotation` に限り `preserveSignatures: true`(v0.9.0)で**署名を保持したまま**増分更新で追加できます。実測: 実署名(CMS)PDF への追加後も pdf-verify-mcp は署名 **VALID** + 追記分を合法な増分リビジョン 1 件と報告します。
65
+ > **署名について**: pdf-lib は保存時にファイル全体を再構築するため、通常の編集では既存の電子署名は必ず無効化されます。`/ByteRange` を含む PDF は既定でエラーとし、`allowBreakingSignatures: true` で破壊的に続行するか、`preserveSignatures: true` で**署名を保持したまま** ISO 32000 の増分更新として編集できます。対応ツール: `add_annotation`(v0.9.0・タグ無し文書のみ)、`set_metadata` / `add_bookmarks`(v0.10.0)。認証署名(DocMDP)の許可レベルに反する変更は拒否されます(§12.8.2.2)。実測: 実署名(CMS)PDF への多段の増分後も pdf-verify-mcp は署名 **VALID** と報告します。
66
66
 
67
67
  ## インストール
68
68
 
@@ -183,7 +183,8 @@ TEST_FONT_PATH=/path/to/NotoSansJP-Regular.otf npm test
183
183
  - [x] コード衛生・family 整合 — McpServer + Zod、構造化エラー、絶対パス強制、stdout ガード、tool annotations、決定論的出力(v0.7.0)
184
184
  - [x] `tag_form_fields` — タグ付き PDF 内フォームの PDF/UA 修復。veraPDF で COMPLIANT を確認(v0.8.0)
185
185
  - [x] Tier C 第1弾 — `add_annotation` の署名保持増分更新。実署名(CMS)で pdf-verify-mcp の VALID を確認(v0.9.0)
186
- - [ ] Tier C 続き タグ付き文書の増分更新・他ツールへの展開、`ensure_tagged`、`edit_text`
186
+ - [x] 増分更新を `set_metadata` / `add_bookmarks` へ展開、trailer 全エントリ引き継ぎ(§7.5.6)、XMP と Info の同期(v0.10.0)
187
+ - [ ] Tier C 続き — タグ付き文書の増分更新・さらに他ツールへの展開、`ensure_tagged`、`edit_text`
187
188
  - [ ] 出力パイプライン Skill(write → pdf-reader で読み戻し → pdf-verify で品質ゲート)
188
189
  - [ ] 画像の代替テキスト(`Figure` + `/Alt`)
189
190
  - [ ] `.ttc` からのフェイス自動抽出
package/README.md CHANGED
@@ -42,14 +42,14 @@ PDF/UA mandates a document title, so `tagged: true` requires `title`. `lang` (BC
42
42
 
43
43
  | Tool | Purpose |
44
44
  |------|---------|
45
- | `set_metadata` | Update Info dictionary fields (`title` / `author` / `subject` / `keywords` / `creator`), preserving the rest |
45
+ | `set_metadata` | Update Info dictionary fields (`title` / `author` / `subject` / `keywords` / `creator`), preserving the rest. On documents carrying XMP (`/Metadata`), `dc:title` etc. are regenerated in sync (keeping the PDF/UA declaration). Supports `preserveSignatures` |
46
46
  | `merge_pdfs` | Concatenate 2–50 PDFs in order; metadata inherited from the first file |
47
47
  | `split_pdf` | One output file per page range |
48
48
  | `extract_pages` | Extract pages in the requested order (doubles as reordering) |
49
49
  | `delete_pages` | Remove pages (deleting every page is rejected) |
50
50
  | `reorder_pages` | Reorder by an explicit permutation of all pages |
51
51
  | `rotate_pages` | Rotate clockwise (90/180/270), accumulating over existing rotation |
52
- | `add_bookmarks` | Set the outline (bookmarks); nestable via `children`, replaces any existing outline |
52
+ | `add_bookmarks` | Set the outline (bookmarks); nestable via `children`, replaces any existing outline. Supports `preserveSignatures` |
53
53
  | `add_annotation` | Add a sticky note (`text`), `highlight`, or `square` annotation to a page. On tagged PDFs the annotation is nested in an `Annot` element and stays PDF/UA conformant — pass `alt` to describe it. With `preserveSignatures: true`, a **signed PDF keeps its signatures**: the annotation is appended as an ISO 32000 incremental update, leaving the original bytes untouched (untagged documents only) |
54
54
  | `attach_file` | Embed a file (`/Names /EmbeddedFiles` + catalog `/AF` + `/AFRelationship`) — the PDF/A-3 shape for bundling machine-readable data with a document |
55
55
  | `stamp_page_numbers` | Stamp page numbers (`{n}` / `{total}`, six positions, `pages`, `startAt`). Becomes an artifact on tagged PDFs, so conformance holds |
@@ -62,7 +62,7 @@ Shared options: `outputPath`, `returnBase64`, `allowBreakingSignatures`.
62
62
 
63
63
  Page specs use `"1,3-5,8-"` (1-based; `-3` means up to page 3, `8-` means page 8 to the end). Order is preserved and duplicates are removed.
64
64
 
65
- > **Signatures**: pdf-lib rewrites the whole file on save, so editing normally invalidates existing signatures. PDFs containing `/ByteRange` are rejected by default; pass `allowBreakingSignatures: true` to proceed destructively — or, for `add_annotation`, pass `preserveSignatures: true` (v0.9.0) to append an incremental update that keeps every signature valid. Measured: after annotating a really-signed PDF, pdf-verify-mcp reports the signature **VALID** and the added bytes as one legal incremental revision.
65
+ > **Signatures**: pdf-lib rewrites the whole file on save, so editing normally invalidates existing signatures. PDFs containing `/ByteRange` are rejected by default; pass `allowBreakingSignatures: true` to proceed destructively — or pass `preserveSignatures: true` to append an ISO 32000 incremental update that keeps every signature valid. Supported by `add_annotation` (v0.9.0, untagged documents only), `set_metadata` and `add_bookmarks` (v0.10.0). Certified documents (DocMDP) are refused when the change type is not permitted by the certification level (§12.8.2.2). Measured: stacked increments on a really-signed PDF keep pdf-verify-mcp reporting **VALID**.
66
66
 
67
67
  ## Install
68
68
 
@@ -183,6 +183,7 @@ TEST_FONT_PATH=/path/to/NotoSansJP-Regular.otf npm test
183
183
  - [x] Code hygiene / family alignment — McpServer + Zod, structured errors, absolute-path enforcement, stdout guard, tool annotations, deterministic output (v0.7.0)
184
184
  - [x] `tag_form_fields` — PDF/UA repair for forms in tagged PDFs, verified COMPLIANT by veraPDF (v0.8.0)
185
185
  - [x] Tier C first milestone — signature-preserving incremental updates for `add_annotation`, verified by pdf-verify-mcp against a real CMS signature (v0.9.0)
186
+ - [x] Incremental updates extended to `set_metadata` / `add_bookmarks`, full trailer carry-over (§7.5.6), XMP kept in sync with Info (v0.10.0)
186
187
  - [ ] Tier C continued — incremental updates for tagged PDFs and more tools, `ensure_tagged`, `edit_text`
187
188
  - [ ] Publish-pipeline skill (write → read back with pdf-reader → gate with pdf-verify)
188
189
  - [ ] Images with alt text (`Figure` + `/Alt`)
@@ -34,6 +34,7 @@ import { formatPageNumber, stampPage } from './page-number.js';
34
34
  import { assertRenderable } from './renderers/text.js';
35
35
  import { appendAnnotationToStructTree, isTagged, markArtifactOnPage } from './struct-append.js';
36
36
  import { watermarkPage } from './watermark.js';
37
+ import { syncXmpWithInfo } from './xmp.js';
37
38
  /** 入力バイト列に電子署名(/ByteRange)が含まれるかの軽量検査 */
38
39
  export function containsSignature(bytes) {
39
40
  // "/ByteRange" の ASCII 検索(署名辞書は非圧縮で現れるのが通例)
@@ -86,10 +87,67 @@ export async function loadForEdit(filePath, opts) {
86
87
  return { doc, absPath, bytes };
87
88
  }
88
89
  // ---------------------------------------------------------------------------
90
+ // 増分更新(preserveSignatures)の共通部品
91
+ // ---------------------------------------------------------------------------
92
+ /**
93
+ * DocMDP(認証署名)の許可レベル検査(ISO 32000-2 §12.8.2.2)。
94
+ * 注釈は P=3 でのみ許可。メタデータ・しおり等の変更はどの P でも許可されない
95
+ * (P=2 はフォーム記入と署名、P=3 は + 注釈のみ)。
96
+ */
97
+ function assertDocMdpAllows(doc, change) {
98
+ const p = findDocMdpPermission(doc);
99
+ if (p === undefined)
100
+ return; // 承認署名のみ — 増分更新は合法(「署名後の変更あり」にはなる)
101
+ if (change === 'annotation' && p >= 3)
102
+ return;
103
+ throw new PdfWriterError(`This PDF carries a certification signature (DocMDP) with permission level P=${p} — ` +
104
+ (change === 'annotation'
105
+ ? p === 1
106
+ ? 'the author declared the document final; any change (except DSS/DTS) invalidates it.'
107
+ : 'only form fill-in and signing are permitted; annotations are not.'
108
+ : 'metadata and outline changes are not among the permitted change types at any level.') +
109
+ ' Even a signature-preserving incremental update would be flagged as a disallowed change.', 'SIGNED_PDF', {
110
+ retryable: true,
111
+ hint: 'ISO 32000-2 §12.8.2.2: P=2 permits form fill-in; P=3 additionally permits annotations.',
112
+ next_actions: [NEXT_ACTIONS.allowBreakingSignatures()],
113
+ });
114
+ }
115
+ /** ModificationDate を更新し、既存 Info オブジェクトなら dirty に積む */
116
+ function touchModificationDate(doc, since, dirty) {
117
+ doc.setModificationDate(outputDate());
118
+ const info = doc.context.trailerInfo.Info;
119
+ if (info instanceof PDFRef && info.objectNumber <= since)
120
+ dirty.push(info);
121
+ }
122
+ /** 増分更新でビルドして保存する(前方バイト一致 = 署名保持) */
123
+ async function saveWithPreservedSignatures(doc, originalBytes, opts, dirtyRefs, since, what) {
124
+ const update = buildIncrementalUpdate({
125
+ original: originalBytes,
126
+ doc,
127
+ dirtyRefs,
128
+ sinceObjectNumber: since,
129
+ });
130
+ logger.info('Editor', `${what} via incremental update (${update.objectsWritten} object(s), ${update.xrefStyle} xref, ` +
131
+ `+${update.bytes.length - originalBytes.length} bytes); signatures preserved`);
132
+ const saved = await saveRawBytes(update.bytes, doc.getPageCount(), opts);
133
+ const result = { ...saved, incremental: true };
134
+ if (update.warnings.length > 0) {
135
+ result.warnings = [...(result.warnings ?? []), ...update.warnings];
136
+ }
137
+ return result;
138
+ }
139
+ // ---------------------------------------------------------------------------
89
140
  // Tier A ツール本体(ページ操作は page-ops.ts へ)
90
141
  // ---------------------------------------------------------------------------
91
142
  export async function setMetadata(args) {
92
- const { doc } = await loadForEdit(args.inputPath, args);
143
+ const { doc, bytes } = await loadForEdit(args.inputPath, args);
144
+ const preserve = args.preserveSignatures === true;
145
+ if (preserve) {
146
+ assertDocMdpAllows(doc, 'metadata-or-outline');
147
+ reserveExistingObjectNumbers(doc, bytes);
148
+ }
149
+ const since = doc.context.largestObjectNumber;
150
+ const dirty = [];
93
151
  if (args.title !== undefined)
94
152
  doc.setTitle(args.title);
95
153
  if (args.author !== undefined)
@@ -100,16 +158,53 @@ export async function setMetadata(args) {
100
158
  doc.setKeywords(args.keywords);
101
159
  if (args.creator !== undefined)
102
160
  doc.setCreator(args.creator);
103
- return saveEdited(doc, args);
161
+ // B-9(SPEC-AUDIT): XMP を持つ文書では Info と /Metadata を同期させる
162
+ const sync = syncXmpWithInfo(doc);
163
+ const warnings = [...sync.warnings];
164
+ if (sync.updated) {
165
+ warnings.push('The document carries XMP metadata (/Metadata); it was regenerated to stay ' +
166
+ 'consistent with the updated Info dictionary (dc:title etc.).');
167
+ if (sync.ref && sync.ref.objectNumber <= since)
168
+ dirty.push(sync.ref);
169
+ if (sync.catalogTouched && doc.context.trailerInfo.Root instanceof PDFRef) {
170
+ dirty.push(doc.context.trailerInfo.Root);
171
+ }
172
+ }
173
+ if (preserve) {
174
+ touchModificationDate(doc, since, dirty);
175
+ const result = await saveWithPreservedSignatures(doc, bytes, args, dirty, since, 'Updated metadata');
176
+ if (warnings.length > 0)
177
+ result.warnings = [...(result.warnings ?? []), ...warnings];
178
+ return result;
179
+ }
180
+ const result = await saveEdited(doc, args);
181
+ if (warnings.length > 0)
182
+ result.warnings = [...(result.warnings ?? []), ...warnings];
183
+ return result;
104
184
  }
105
185
  export async function addBookmarks(args) {
106
186
  const total = countBookmarks(args.bookmarks);
107
187
  if (total > LIMITS.BOOKMARK_MAX_TOTAL) {
108
188
  throw invalidArg(`too many bookmarks (${total}, max ${LIMITS.BOOKMARK_MAX_TOTAL})`);
109
189
  }
110
- const { doc } = await loadForEdit(args.inputPath, args);
190
+ const { doc, bytes } = await loadForEdit(args.inputPath, args);
191
+ const preserve = args.preserveSignatures === true;
192
+ if (preserve) {
193
+ assertDocMdpAllows(doc, 'metadata-or-outline');
194
+ reserveExistingObjectNumbers(doc, bytes);
195
+ }
196
+ const since = doc.context.largestObjectNumber;
111
197
  const added = setBookmarks(doc, args.bookmarks);
112
198
  logger.info('Editor', `Set ${added} bookmark(s)`);
199
+ if (preserve) {
200
+ // setBookmarks は catalog /Outlines を書き換える(新規オブジェクト群は自動追従)
201
+ const dirty = [];
202
+ if (doc.context.trailerInfo.Root instanceof PDFRef) {
203
+ dirty.push(doc.context.trailerInfo.Root);
204
+ }
205
+ touchModificationDate(doc, since, dirty);
206
+ return saveWithPreservedSignatures(doc, bytes, args, dirty, since, `Set ${added} bookmark(s)`);
207
+ }
113
208
  return saveEdited(doc, args);
114
209
  }
115
210
  export async function addAnnotation(args) {
@@ -124,21 +219,8 @@ export async function addAnnotation(args) {
124
219
  'If invalidating the signature is acceptable, retry with "allowBreakingSignatures": true.',
125
220
  });
126
221
  }
127
- // 認証署名(DocMDP)の許可レベル検査(ISO 32000-2 §12.8.2.2):
128
- // 注釈の追加が許されるのは P=3 のみ。P=1(変更禁止)/ P=2(フォームまで)では
129
- // 増分更新が合法でも認証署名の検証が「許可されない変更」として失敗する。
130
- const docMdpP = findDocMdpPermission(doc);
131
- if (docMdpP !== undefined && docMdpP < 3) {
132
- throw new PdfWriterError(`This PDF carries a certification signature (DocMDP) with permission level P=${docMdpP} — ` +
133
- (docMdpP === 1
134
- ? 'the author declared the document final; any change (except DSS/DTS) invalidates it.'
135
- : 'only form fill-in and signing are permitted; annotations are not.') +
136
- ' Even a signature-preserving incremental update would be flagged as a disallowed change.', 'SIGNED_PDF', {
137
- retryable: true,
138
- hint: 'ISO 32000-2 §12.8.2.2: annotation changes require DocMDP P=3.',
139
- next_actions: [NEXT_ACTIONS.allowBreakingSignatures()],
140
- });
141
- }
222
+ // 注釈の追加が許されるのは DocMDP P=3 のみ(承認署名なら制約なし)
223
+ assertDocMdpAllows(doc, 'annotation');
142
224
  // 容器ストリーム等の「登録されない番号」との衝突を防いでから採番を始める
143
225
  reserveExistingObjectNumbers(doc, bytes);
144
226
  const since = doc.context.largestObjectNumber;
@@ -148,21 +230,8 @@ export async function addAnnotation(args) {
148
230
  // /Annots が直接配列 or 新設 → ページオブジェクトを再定義
149
231
  const annotsRaw = added.page.node.get(PDFName.of('Annots'));
150
232
  const dirtyRefs = [annotsRaw instanceof PDFRef ? annotsRaw : added.page.ref];
151
- // ModificationDate の更新も増分に含める(Info が既存なら再定義、無ければ新規扱い)
152
- doc.setModificationDate(outputDate());
153
- const info = doc.context.trailerInfo.Info;
154
- if (info instanceof PDFRef && info.objectNumber <= since)
155
- dirtyRefs.push(info);
156
- const update = buildIncrementalUpdate({
157
- original: bytes,
158
- doc,
159
- dirtyRefs,
160
- sinceObjectNumber: since,
161
- });
162
- logger.info('Editor', `Added annotation via incremental update (${update.objectsWritten} object(s), ` +
163
- `${update.xrefStyle} xref, +${update.bytes.length - bytes.length} bytes); signatures preserved`);
164
- const saved = await saveRawBytes(update.bytes, doc.getPageCount(), args);
165
- return { ...saved, incremental: true };
233
+ touchModificationDate(doc, since, dirtyRefs);
234
+ return saveWithPreservedSignatures(doc, bytes, args, dirtyRefs, since, 'Added annotation');
166
235
  }
167
236
  const added = addAnnotationDict(doc, args);
168
237
  // タグ付き PDF なら構造木にも結び付ける(PDF/UA 7.18.1-1 / 7.18.3-1)。
@@ -1 +1 @@
1
- {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/services/editor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editor.js","sourceRoot":"","sources":["../../src/services/editor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAmBxE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,aAAa,IAAI,iBAAiB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAChE,OAAO,EAAE,uBAAuB,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AACpF,OAAO,EACL,eAAe,EACf,mBAAmB,EACnB,oBAAoB,EACpB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,UAAU,GACX,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,4BAA4B,GAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,4BAA4B,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C,yCAAyC;AACzC,MAAM,UAAU,iBAAiB,CAAC,KAAiB;IACjD,4CAA4C;IAC5C,MAAM,MAAM,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe;IAC5F,KAAK,EAAE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,IAAI,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;gBAAE,SAAS,KAAK,CAAC;QACjD,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gDAAgD;AAChD,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,QAAgB,EAChB,IAA0D;IAE1D,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,IAAI,KAAiB,CAAC;IACtB,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,cAAc,CAAC,yBAAyB,OAAO,EAAE,EAAE,eAAe,EAAE;YAC5E,YAAY,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IAED,qDAAqD;IACrD,IAAI,KAAK,CAAC,UAAU,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;QAClD,MAAM,IAAI,cAAc,CACtB,IAAI,OAAO,mBAAmB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,GAAG,IAAI,CAAC,MAAM;YAC5E,OAAO,MAAM,CAAC,mBAAmB,GAAG,IAAI,GAAG,IAAI,KAAK,EACtD,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,IAAI,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC1F,MAAM,IAAI,cAAc,CACtB,IAAI,OAAO,uDAAuD;YAChE,sFAAsF,EACxF,YAAY,EACZ;YACE,SAAS,EAAE,IAAI;YACf,YAAY,EAAE,CAAC,YAAY,CAAC,kBAAkB,EAAE,EAAE,YAAY,CAAC,uBAAuB,EAAE,CAAC;SAC1F,CACF,CAAC;IACJ,CAAC;IAED,IAAI,GAAgB,CAAC;IACrB,IAAI,CAAC;QACH,wDAAwD;QACxD,GAAG,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QACzD,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,IAAI,cAAc,CACtB,wBAAwB,OAAO,MAAM,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,YAAY,MAAM,KAAK,EAAE,EACxF,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,aAAa,EAC3C,SAAS;YACP,CAAC,CAAC,EAAE,IAAI,EAAE,qEAAqE,EAAE;YACjF,CAAC,CAAC,EAAE,CACP,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACjC,CAAC;AAED,8EAA8E;AAC9E,gCAAgC;AAChC,8EAA8E;AAE9E;;;;GAIG;AACH,SAAS,kBAAkB,CAAC,GAAgB,EAAE,MAA4C;IACxF,MAAM,CAAC,GAAG,oBAAoB,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,CAAC,KAAK,SAAS;QAAE,OAAO,CAAC,mCAAmC;IAChE,IAAI,MAAM,KAAK,YAAY,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO;IAC9C,MAAM,IAAI,cAAc,CACtB,+EAA+E,CAAC,KAAK;QACnF,CAAC,MAAM,KAAK,YAAY;YACtB,CAAC,CAAC,CAAC,KAAK,CAAC;gBACP,CAAC,CAAC,qFAAqF;gBACvF,CAAC,CAAC,mEAAmE;YACvE,CAAC,CAAC,qFAAqF,CAAC;QAC1F,0FAA0F,EAC5F,YAAY,EACZ;QACE,SAAS,EAAE,IAAI;QACf,IAAI,EAAE,wFAAwF;QAC9F,YAAY,EAAE,CAAC,YAAY,CAAC,uBAAuB,EAAE,CAAC;KACvD,CACF,CAAC;AACJ,CAAC;AAED,uDAAuD;AACvD,SAAS,qBAAqB,CAAC,GAAgB,EAAE,KAAa,EAAE,KAAe;IAC7E,GAAG,CAAC,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAC;IACtC,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;IAC1C,IAAI,IAAI,YAAY,MAAM,IAAI,IAAI,CAAC,YAAY,IAAI,KAAK;QAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC7E,CAAC;AAED,qCAAqC;AACrC,KAAK,UAAU,2BAA2B,CACxC,GAAgB,EAChB,aAAyB,EACzB,IAAuB,EACvB,SAAmB,EACnB,KAAa,EACb,IAAY;IAEZ,MAAM,MAAM,GAAG,sBAAsB,CAAC;QACpC,QAAQ,EAAE,aAAa;QACvB,GAAG;QACH,SAAS;QACT,iBAAiB,EAAE,KAAK;KACzB,CAAC,CAAC;IACH,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,GAAG,IAAI,4BAA4B,MAAM,CAAC,cAAc,eAAe,MAAM,CAAC,SAAS,SAAS;QAC9F,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,aAAa,CAAC,MAAM,+BAA+B,CAChF,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC;IACzE,MAAM,MAAM,GAAe,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;IAC3D,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrE,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,8EAA8E;AAC9E,qCAAqC;AACrC,8EAA8E;AAE9E,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAqB;IACrD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC;IAClD,IAAI,QAAQ,EAAE,CAAC;QACb,kBAAkB,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QAC/C,4BAA4B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAC9C,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS;QAAE,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;QAAE,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC7D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;QAAE,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;QAAE,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE7D,uDAAuD;IACvD,MAAM,IAAI,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,QAAQ,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,QAAQ,CAAC,IAAI,CACX,4EAA4E;YAC1E,8DAA8D,CACjE,CAAC;QACF,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,IAAI,KAAK;YAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrE,IAAI,IAAI,CAAC,cAAc,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,YAAY,MAAM,EAAE,CAAC;YAC1E,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,IAAI,QAAQ,EAAE,CAAC;QACb,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAC9C,GAAG,EACH,KAAK,EACL,IAAI,EACJ,KAAK,EACL,KAAK,EACL,kBAAkB,CACnB,CAAC;QACF,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;QACrF,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,QAAQ,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE,GAAG,QAAQ,CAAC,CAAC;IACrF,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAsB;IACvD,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC7C,IAAI,KAAK,GAAG,MAAM,CAAC,kBAAkB,EAAE,CAAC;QACtC,MAAM,UAAU,CAAC,uBAAuB,KAAK,SAAS,MAAM,CAAC,kBAAkB,GAAG,CAAC,CAAC;IACtF,CAAC;IACD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC;IAClD,IAAI,QAAQ,EAAE,CAAC;QACb,kBAAkB,CAAC,GAAG,EAAE,qBAAqB,CAAC,CAAC;QAC/C,4BAA4B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IACD,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;IAE9C,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,KAAK,cAAc,CAAC,CAAC;IAElD,IAAI,QAAQ,EAAE,CAAC;QACb,0DAA0D;QAC1D,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,YAAY,MAAM,EAAE,CAAC;YACnD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;QACD,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QACzC,OAAO,2BAA2B,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,KAAK,cAAc,CAAC,CAAC;IACjG,CAAC;IACD,OAAO,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC/B,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAuB;IACzD,MAAM,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAE/D,qDAAqD;IACrD,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAC5B,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,IAAI,cAAc,CACtB,qFAAqF;gBACnF,mFAAmF;gBACnF,qEAAqE,EACvE,yBAAyB,EACzB;gBACE,IAAI,EACF,wEAAwE;oBACxE,0FAA0F;aAC7F,CACF,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,kBAAkB,CAAC,GAAG,EAAE,YAAY,CAAC,CAAC;QAEtC,sCAAsC;QACtC,4BAA4B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC;QAC9C,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE3C,wBAAwB;QACxB,iDAAiD;QACjD,wCAAwC;QACxC,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC5D,MAAM,SAAS,GAAa,CAAC,SAAS,YAAY,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvF,qBAAqB,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAE7C,OAAO,2BAA2B,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,kBAAkB,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAE3C,qDAAqD;IACrD,sCAAsC;IACtC,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,4BAA4B,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IAClF,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;QAC/B,QAAQ,CAAC,IAAI,CACX,sFAAsF;YACpF,8DAA8D,CACjE,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC3C,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAAE,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACpD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,IAAoB;IACxD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE;QACrC,QAAQ,EAAE,IAAI,CAAC,cAAc;QAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,WAAW,EAAE,IAAI,CAAC,WAAW;QAC7B,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,YAAY,EAAE,IAAI,CAAC,YAAY;KAChC,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;QACvB,QAAQ,CAAC,IAAI,CACX,oEAAoE;YAClE,iFAAiF;YACjF,+FAA+F,CAClG,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,YAAY,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,KAAK,WAAW,QAAQ,CAAC,QAAQ,GAAG,CAC5E,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO;QACL,GAAG,KAAK;QACR,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;QACpD,UAAU,EAAE,QAAQ;QACpB,WAAW,EAAE,iBAAiB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;KACvD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAA0B;IAC/D,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IAEjC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,cAAc,CAAC,MAAM,CAAC;IACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,cAAc,CAAC,QAAQ,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,OAAO,CAAC;IACvD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;IAEhE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK;QACxB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;QAClC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEnD,6CAA6C;IAC7C,iCAAiC;IACjC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAC7B,IAAI,EAAE,gBAAgB,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,EAAE,KAAK,CAAC;KACnD,CAAC,CAAC,CAAC;IAEJ,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAE9D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,KAAK,MAAM,CAAC,CAAC,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;QAC1C,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACtC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ;YACR,KAAK;YACL,QAAQ;YACR,MAAM;YACN,+CAA+C;YAC/C,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SACvF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,WAAW,MAAM,CAAC,MAAM,WAAW,MAAM,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,EAAE,CAChF,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAsB;IACvD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,EAAE,CAAC;IAEjC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,kBAAkB,CAAC,QAAQ,CAAC;IAC9D,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,kBAAkB,CAAC,OAAO,CAAC;IAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC;IACrD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,kBAAkB,CAAC,MAAM,CAAC;IACxD,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,KAAK,IAAI,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAEpE,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK;QACxB,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC;QAClC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAEnD,4DAA4D;IAC5D,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7C,gBAAgB,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IACpC,MAAM,OAAO,GAAG,uBAAuB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IACtE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAE9D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IAC7B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE;YACvD,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ;YACR,KAAK;YACL,OAAO;YACP,KAAK;YACL,MAAM;YACN,6CAA6C;YAC7C,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS;SACvF,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,eAAe,OAAO,CAAC,MAAM,WAAW,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1G,CAAC;IACF,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC1C,OAAO,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACrE,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,sBAAsB,CACnC,GAAgB,EAChB,QAA4B;IAE5B,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAC3B,oCAAoC;IACpC,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACxC,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,gBAAgB,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChE,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9D,kBAAkB,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACtC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;AACxC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,IAAkB;IAC/C,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAE3B,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,cAAc,CACtB,kEAAkE;YAChE,oEAAoE,EACtE,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,UAAU,CAAC,gDAAgD,CAAC,CAAC;IAC3F,KAAK,MAAM,IAAI,IAAI,KAAK;QAAE,eAAe,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;IAEzE,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClE,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAEpC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;QACjB,SAAS,GAAG,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IACpE,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,KAAK,CAAC,MAAM,iBAAiB,SAAS,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAClG,kDAAkD;IAClD,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,OAAO;QACL,GAAG,KAAK;QACR,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,SAAS;QACT,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC;QACvB,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACrD,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,SAAS,cAAc,CACrB,GAAgB,EAChB,iBAAsC,EACtC,QAAkB;IAElB,IAAI,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACxC,MAAM,IAAI,cAAc,CACtB,sFAAsF;YACpF,yFAAyF;YACzF,oEAAoE;YACpE,4CAA4C,EAC9C,YAAY,EACZ,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,YAAY,CAAC,iBAAiB,EAAE,CAAC,EAAE,CACtE,CAAC;IACJ,CAAC;IACD,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QAClB,QAAQ,CAAC,IAAI,CACX,2FAA2F;YACzF,mFAAmF,CACtF,CAAC;IACJ,CAAC;IACD,mEAAmE;IACnE,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;IACzD,8EAA8E;IAC9E,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,MAAM,oDAAoD,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,IAAuB;IACzD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAExD,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,cAAc,CACtB,IAAI,IAAI,CAAC,SAAS,kEAAkE;YAClF,2EAA2E,EAC7E,kBAAkB,EAClB;YACE,IAAI,EACF,kFAAkF;gBAClF,sFAAsF;SACzF,CACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAC3B,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,cAAc,CACtB,iEAAiE,EACjE,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClC,MAAM,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,kCAAkC,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC;IAEnD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,OAAO,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,QAAQ,CAAC,IAAI,CACX,sBAAsB,OAAO,CAAC,SAAS,CAAC,MAAM,4CAA4C;YACxF,IAAI,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,+CAA+C;YAC/E,4DAA4D,CAC/D,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,QAAQ,CAAC,IAAI,CACX,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,gEAAgE;YACxF,cAAc,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAChD,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,IAAI,CACT,QAAQ,EACR,UAAU,OAAO,CAAC,MAAM,yCAAyC;QAC/D,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CACrE,CAAC;IAEF,2CAA2C;IAC3C,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,OAAO;QACL,GAAG,KAAK;QACR,aAAa,EAAE,OAAO,CAAC,MAAM;QAC7B,cAAc,EAAE,OAAO,CAAC,OAAO;QAC/B,MAAM,EAAE,UAAU,CAAC,GAAG,CAAC;QACvB,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACrD,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,IAAqB;IACrD,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;IAE3B,IAAI,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;QAClB,MAAM,IAAI,cAAc,CACtB,iEAAiE,EACjE,yBAAyB,CAC1B,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;IAC3C,IAAI,UAAU,KAAK,CAAC,EAAE,CAAC;QACrB,MAAM,UAAU,CAAC,IAAI,IAAI,CAAC,SAAS,sCAAsC,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAClE,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACpC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;IAEtD,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,aAAa,UAAU,gBAAgB,CAAC,CAAC;IAC/D,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,sBAAsB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC7E,OAAO;QACL,GAAG,KAAK;QACR,MAAM,EAAE,CAAC;QACT,SAAS,EAAE,IAAI;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;KACrD,CAAC;AACJ,CAAC"}
@@ -67,6 +67,8 @@ export interface IncrementalUpdateResult {
67
67
  objectsWritten: number;
68
68
  /** 追記した相互参照の形式 */
69
69
  xrefStyle: 'table' | 'stream';
70
+ /** 呼び出し側の結果に載せるべき注意事項 */
71
+ warnings: string[];
70
72
  }
71
73
  /**
72
74
  * 増分更新を構築して「元バイト列 + 追記部」を返す。
@@ -20,7 +20,7 @@
20
20
  * - 削除(free エントリ)は扱わない — 追加と再定義のみ
21
21
  */
22
22
  import { createHash } from 'node:crypto';
23
- import { PDFArray, PDFDict, PDFHexString, PDFName, PDFNumber, PDFRef, } from 'pdf-lib';
23
+ import { PDFArray, PDFDict, PDFHexString, PDFName, PDFNumber, PDFObjectParser, PDFRef, } from 'pdf-lib';
24
24
  import { PdfWriterError } from '../errors.js';
25
25
  /** 元ファイル末尾から startxref を読む */
26
26
  export function readStartXref(original) {
@@ -138,6 +138,63 @@ export function findDocMdpPermission(doc) {
138
138
  }
139
139
  return undefined;
140
140
  }
141
+ /**
142
+ * 有効な trailer 辞書を元バイト列から自前でパースする。
143
+ *
144
+ * §7.5.6:「追記する trailer は前 trailer の(Prev を除く)**全エントリ**を含まなければ
145
+ * ならない」。pdf-lib の trailerInfo は Root / Encrypt / Info / ID しか保持しないため、
146
+ * 稀なキー(hybrid の XRefStm、second-class name 等)を落とさないよう原文から読む。
147
+ * パースできなくても致命ではない(標準エントリは trailerInfo から書ける)ので null を返す。
148
+ */
149
+ function parsePreviousTrailer(doc, original, startxref, style) {
150
+ try {
151
+ const region = original.subarray(startxref);
152
+ const text = Buffer.from(region).toString('latin1');
153
+ let dictStart;
154
+ if (style === 'table') {
155
+ const at = text.indexOf('trailer');
156
+ if (at < 0)
157
+ return null;
158
+ dictStart = text.indexOf('<<', at);
159
+ }
160
+ else {
161
+ // "N G obj" に続く相互参照ストリームの辞書部
162
+ dictStart = text.indexOf('<<');
163
+ }
164
+ if (dictStart < 0)
165
+ return null;
166
+ const parser = PDFObjectParser.forBytes(region.subarray(dictStart), doc.context);
167
+ const obj = parser.parseObject();
168
+ return obj instanceof PDFDict ? obj : null;
169
+ }
170
+ catch {
171
+ return null;
172
+ }
173
+ }
174
+ /**
175
+ * 引き継がない trailer キー。
176
+ * Prev / XRefStm は位置依存(§7.5.6 が Prev の除外を明示)。
177
+ * Size / Root / Info / ID は本モジュールが明示的に書き直す。
178
+ * Type / W / Index / Length / Filter / DecodeParms / DL は相互参照ストリームの
179
+ * ストリーム固有キーであり、trailer エントリとして引き継ぐものではない。
180
+ * Encrypt は暗号化 PDF 自体を上流で拒否している。
181
+ */
182
+ const TRAILER_EXCLUDE = new Set([
183
+ 'Prev',
184
+ 'XRefStm',
185
+ 'Size',
186
+ 'Root',
187
+ 'Info',
188
+ 'ID',
189
+ 'Encrypt',
190
+ 'Type',
191
+ 'W',
192
+ 'Index',
193
+ 'Length',
194
+ 'Filter',
195
+ 'DecodeParms',
196
+ 'DL',
197
+ ]);
141
198
  /** 連続する番号の並びを xref のサブセクション([開始, 個数])へまとめる */
142
199
  function contiguousRuns(entries) {
143
200
  const runs = [];
@@ -230,6 +287,20 @@ export function buildIncrementalUpdate(opts) {
230
287
  }
231
288
  // §14.4: ID 第 2 要素は更新のたびに変えなければならない(shall)
232
289
  const updatedId = updateFileId(context, ti.ID, original, chunks);
290
+ // §7.5.6: 前 trailer の全エントリ(除外リスト以外)を引き継ぐ
291
+ const warnings = [];
292
+ const prevTrailer = parsePreviousTrailer(doc, original, prevStartXref, style);
293
+ const carryOver = [];
294
+ if (prevTrailer) {
295
+ for (const [key, value] of prevTrailer.entries()) {
296
+ if (!TRAILER_EXCLUDE.has(key.decodeText()))
297
+ carryOver.push([key, value]);
298
+ }
299
+ }
300
+ else {
301
+ warnings.push('The previous trailer could not be parsed; only the standard entries ' +
302
+ '(Size/Prev/Root/Info/ID) were carried into the incremental update (ISO 32000-2 §7.5.6).');
303
+ }
233
304
  if (style === 'table') {
234
305
  // --- 古典 xref テーブル + trailer ---
235
306
  const xrefOffset = cursor;
@@ -243,6 +314,8 @@ export function buildIncrementalUpdate(opts) {
243
314
  }
244
315
  push(latin1(table));
245
316
  const trailer = context.obj({});
317
+ for (const [key, value] of carryOver)
318
+ trailer.set(key, value);
246
319
  trailer.set(PDFName.of('Size'), PDFNumber.of(context.largestObjectNumber + 1));
247
320
  trailer.set(PDFName.of('Prev'), PDFNumber.of(prevStartXref));
248
321
  trailer.set(PDFName.of('Root'), ti.Root);
@@ -276,6 +349,8 @@ export function buildIncrementalUpdate(opts) {
276
349
  index.push(run.start, run.items.length);
277
350
  }
278
351
  const dict = context.obj({});
352
+ for (const [key, value] of carryOver)
353
+ dict.set(key, value);
279
354
  dict.set(PDFName.of('Type'), PDFName.of('XRef'));
280
355
  dict.set(PDFName.of('Size'), PDFNumber.of(xrefNum + 1));
281
356
  dict.set(PDFName.of('W'), context.obj([1, 4, 2]));
@@ -304,6 +379,6 @@ export function buildIncrementalUpdate(opts) {
304
379
  out.set(c, at);
305
380
  at += c.length;
306
381
  }
307
- return { bytes: out, objectsWritten: sorted.length, xrefStyle: style };
382
+ return { bytes: out, objectsWritten: sorted.length, xrefStyle: style, warnings };
308
383
  }
309
384
  //# sourceMappingURL=incremental.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../src/services/incremental.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"incremental.js","sourceRoot":"","sources":["../../src/services/incremental.ts"],"names":[],"mappings":"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"}
@@ -8,14 +8,20 @@
8
8
  * - 7.1(8) : 文書タイトル(dc:title)と ViewerPreferences /DisplayDocTitle = true
9
9
  * - 7.1(8) : /Metadata の /Type が /Metadata、/Subtype が /XML であること
10
10
  */
11
- import { type PDFDocument } from 'pdf-lib';
11
+ import { type PDFDocument, PDFRef } from 'pdf-lib';
12
12
  export interface XmpOptions {
13
13
  title?: string;
14
14
  author?: string;
15
+ /** dc:description(Info の Subject に対応) */
16
+ subject?: string;
17
+ /** pdf:Keywords(Info の Keywords に対応。空白区切りの 1 文字列) */
18
+ keywords?: string;
15
19
  /** PDF/UA 宣言を含める場合の part(1 | 2) */
16
20
  pdfuaPart?: number;
17
21
  /** dc:language */
18
22
  lang?: string;
23
+ /** xmp:CreateDate(ISO 8601)。更新時に元の作成日時を保持するために使う。省略時は現在時刻 */
24
+ createDate?: string;
19
25
  }
20
26
  export declare function buildXmpPacket(opts: XmpOptions): string;
21
27
  /**
@@ -26,6 +32,27 @@ export declare function buildXmpPacket(opts: XmpOptions): string;
26
32
  * また PDF/UA の XMP は暗号化・圧縮しない慣行に従い、フィルタを掛けない。
27
33
  */
28
34
  export declare function setXmpMetadata(doc: PDFDocument, opts: XmpOptions): void;
35
+ export interface XmpSyncResult {
36
+ /** XMP を更新したか(/Metadata が無ければ false) */
37
+ updated: boolean;
38
+ /** 同一 ref に差し替えた場合の参照(増分更新の dirty 追跡用) */
39
+ ref?: PDFRef;
40
+ /** catalog 自体を書き換えたか(/Metadata が直接オブジェクトだった場合) */
41
+ catalogTouched: boolean;
42
+ warnings: string[];
43
+ }
44
+ /**
45
+ * B-9(SPEC-AUDIT Phase 1): Info 辞書と XMP(/Metadata)の同期。
46
+ *
47
+ * §14.3.3 は Info を PDF 2.0 で非推奨とし、XMP を持つ文書では両者の不整合が
48
+ * dc:title 等の食い違い(スクリーンリーダ・アーカイブ検証の誤り)を生む。
49
+ * Info を更新した後に呼ぶと、Info の現在値で XMP を再生成する。
50
+ *
51
+ * 保持するもの: pdfuaid:part(PDF/UA 宣言)・dc:language・xmp:CreateDate。
52
+ * 既存 XMP からこれらを読み取り、新しいパケットへ引き継ぐ。
53
+ * 差し替えは**同一 ref への assign**で行い、catalog には触れない(増分更新に優しい)。
54
+ */
55
+ export declare function syncXmpWithInfo(doc: PDFDocument): XmpSyncResult;
29
56
  export interface PdfuaCatalogOptions {
30
57
  title: string;
31
58
  author?: string;
@@ -8,7 +8,7 @@
8
8
  * - 7.1(8) : 文書タイトル(dc:title)と ViewerPreferences /DisplayDocTitle = true
9
9
  * - 7.1(8) : /Metadata の /Type が /Metadata、/Subtype が /XML であること
10
10
  */
11
- import { PDFDict, PDFName, PDFRawStream, PDFString } from 'pdf-lib';
11
+ import { decodePDFRawStream, PDFDict, PDFName, PDFRawStream, PDFRef, PDFString, } from 'pdf-lib';
12
12
  import { outputDate, PACKAGE_INFO } from '../config.js';
13
13
  /** XML の特殊文字をエスケープする(タイトル等に < & " が入りうる) */
14
14
  function escapeXml(value) {
@@ -71,15 +71,23 @@ export function buildXmpPacket(opts) {
71
71
  if (opts.author) {
72
72
  dc.push(` <dc:creator>\n <rdf:Seq>\n <rdf:li>${escapeXml(opts.author)}</rdf:li>\n </rdf:Seq>\n </dc:creator>`);
73
73
  }
74
+ if (opts.subject) {
75
+ dc.push(` <dc:description>\n <rdf:Alt>\n <rdf:li xml:lang="x-default">${escapeXml(opts.subject)}</rdf:li>\n </rdf:Alt>\n </dc:description>`);
76
+ }
74
77
  if (opts.lang) {
75
78
  dc.push(` <dc:language>\n <rdf:Bag>\n <rdf:li>${escapeXml(opts.lang)}</rdf:li>\n </rdf:Bag>\n </dc:language>`);
76
79
  }
77
80
  if (dc.length > 0) {
78
81
  parts.push(` <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/">\n${dc.join('\n')}\n </rdf:Description>`);
79
82
  }
83
+ if (opts.keywords) {
84
+ parts.push(` <rdf:Description rdf:about="" xmlns:pdf="http://ns.adobe.com/pdf/1.3/">\n` +
85
+ ` <pdf:Keywords>${escapeXml(opts.keywords)}</pdf:Keywords>\n` +
86
+ ` </rdf:Description>`);
87
+ }
80
88
  parts.push(` <rdf:Description rdf:about="" xmlns:xmp="http://ns.adobe.com/xap/1.0/">\n` +
81
89
  ` <xmp:CreatorTool>${escapeXml(`${PACKAGE_INFO.name}/${PACKAGE_INFO.version}`)}</xmp:CreatorTool>\n` +
82
- ` <xmp:CreateDate>${now}</xmp:CreateDate>\n` +
90
+ ` <xmp:CreateDate>${escapeXml(opts.createDate ?? now)}</xmp:CreateDate>\n` +
83
91
  ` <xmp:ModifyDate>${now}</xmp:ModifyDate>\n` +
84
92
  ` </rdf:Description>`);
85
93
  return `<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
@@ -107,6 +115,73 @@ export function setXmpMetadata(doc, opts) {
107
115
  }), bytes);
108
116
  doc.catalog.set(PDFName.of('Metadata'), doc.context.register(stream));
109
117
  }
118
+ /**
119
+ * B-9(SPEC-AUDIT Phase 1): Info 辞書と XMP(/Metadata)の同期。
120
+ *
121
+ * §14.3.3 は Info を PDF 2.0 で非推奨とし、XMP を持つ文書では両者の不整合が
122
+ * dc:title 等の食い違い(スクリーンリーダ・アーカイブ検証の誤り)を生む。
123
+ * Info を更新した後に呼ぶと、Info の現在値で XMP を再生成する。
124
+ *
125
+ * 保持するもの: pdfuaid:part(PDF/UA 宣言)・dc:language・xmp:CreateDate。
126
+ * 既存 XMP からこれらを読み取り、新しいパケットへ引き継ぐ。
127
+ * 差し替えは**同一 ref への assign**で行い、catalog には触れない(増分更新に優しい)。
128
+ */
129
+ export function syncXmpWithInfo(doc) {
130
+ const none = { updated: false, catalogTouched: false, warnings: [] };
131
+ const raw = doc.catalog.get(PDFName.of('Metadata'));
132
+ if (raw === undefined)
133
+ return none;
134
+ // 既存 XMP の本文を取り出す(Filter 付きならデコード)
135
+ const resolved = doc.catalog.lookup(PDFName.of('Metadata'));
136
+ if (!(resolved instanceof PDFRawStream)) {
137
+ return {
138
+ ...none,
139
+ warnings: [
140
+ 'The document has /Metadata but not in a readable form; XMP was left unchanged ' +
141
+ 'and may now disagree with the Info dictionary.',
142
+ ],
143
+ };
144
+ }
145
+ let text;
146
+ try {
147
+ const bytes = resolved.dict.has(PDFName.of('Filter'))
148
+ ? decodePDFRawStream(resolved).decode()
149
+ : resolved.contents;
150
+ text = new TextDecoder().decode(bytes);
151
+ }
152
+ catch {
153
+ return {
154
+ ...none,
155
+ warnings: [
156
+ 'The existing XMP stream could not be decoded; it was left unchanged ' +
157
+ 'and may now disagree with the Info dictionary.',
158
+ ],
159
+ };
160
+ }
161
+ // 引き継ぐべき既存の事実
162
+ const part = /<pdfuaid:part>\s*(\d+)\s*<\/pdfuaid:part>/.exec(text)?.[1];
163
+ const lang = /<dc:language>[\s\S]*?<rdf:li>([^<]*)<\/rdf:li>/.exec(text)?.[1];
164
+ const createDate = /<xmp:CreateDate>([^<]+)<\/xmp:CreateDate>/.exec(text)?.[1];
165
+ const packet = buildXmpPacket({
166
+ title: doc.getTitle(),
167
+ author: doc.getAuthor(),
168
+ subject: doc.getSubject(),
169
+ keywords: doc.getKeywords(),
170
+ pdfuaPart: part !== undefined ? Number(part) : undefined,
171
+ lang,
172
+ createDate,
173
+ });
174
+ const bytes = new TextEncoder().encode(packet);
175
+ const stream = PDFRawStream.of(doc.context.obj({ Type: 'Metadata', Subtype: 'XML', Length: bytes.length }), bytes);
176
+ if (raw instanceof PDFRef) {
177
+ // 同一 ref を差し替え — catalog 不変・増分更新では this ref のみ dirty
178
+ doc.context.assign(raw, stream);
179
+ return { updated: true, ref: raw, catalogTouched: false, warnings: [] };
180
+ }
181
+ // /Metadata が直接オブジェクト(稀)— catalog を書き換えるしかない
182
+ doc.catalog.set(PDFName.of('Metadata'), doc.context.register(stream));
183
+ return { updated: true, catalogTouched: true, warnings: [] };
184
+ }
110
185
  /**
111
186
  * PDF/UA-1 に必要な catalog エントリと XMP を付与する。
112
187
  * MarkInfo と StructTreeRoot は StructTreeBuilder.finalize() が設定するため、ここでは扱わない。
@@ -1 +1 @@
1
- {"version":3,"file":"xmp.js","sourceRoot":"","sources":["../../src/services/xmp.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"xmp.js","sourceRoot":"","sources":["../../src/services/xmp.ts"],"names":[],"mappings":"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"}
@@ -44,7 +44,9 @@ export const tools = [
44
44
  name: 'set_metadata',
45
45
  title: 'Set PDF Metadata',
46
46
  description: '既存 PDF のメタデータ(Info 辞書)を更新する。指定したフィールドのみ変更し、他は保持する。' +
47
- 'title / author / subject / keywords / creator のうち最低 1 つが必要。',
47
+ 'title / author / subject / keywords / creator のうち最低 1 つが必要。' +
48
+ 'XMP(/Metadata)を持つ文書では dc:title 等も同期して不整合を防ぐ。' +
49
+ '署名済み PDF には preserveSignatures: true で署名を保持したまま更新できる。',
48
50
  shape: setMetadataShape,
49
51
  annotations: base,
50
52
  },
@@ -87,7 +89,8 @@ export const tools = [
87
89
  {
88
90
  name: 'add_bookmarks',
89
91
  title: 'Add Bookmarks (Outline)',
90
- description: 'PDF にしおり(アウトライン)を設定する。既存のしおりは置換される。children で入れ子にできる。',
92
+ description: 'PDF にしおり(アウトライン)を設定する。既存のしおりは置換される。children で入れ子にできる。' +
93
+ '署名済み PDF には preserveSignatures: true で署名を保持したまま設定できる。',
91
94
  shape: addBookmarksShape,
92
95
  annotations: base,
93
96
  },
@@ -1 +1 @@
1
- {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"definitions.js","sourceRoot":"","sources":["../../src/tools/definitions.ts"],"names":[],"mappings":"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"}
@@ -85,7 +85,7 @@ export interface CommonEditOptions {
85
85
  /** 署名済み PDF(/ByteRange 検知)でも編集を続行するか。既定 false */
86
86
  allowBreakingSignatures?: boolean;
87
87
  }
88
- export interface SetMetadataArgs extends CommonEditOptions {
88
+ export interface SetMetadataArgs extends CommonEditOptions, PreservableEditOptions {
89
89
  /** 編集対象の PDF パス */
90
90
  inputPath: string;
91
91
  title?: string;
@@ -140,7 +140,7 @@ export interface BookmarkInput {
140
140
  open?: boolean;
141
141
  children?: BookmarkInput[];
142
142
  }
143
- export interface AddBookmarksArgs extends CommonEditOptions {
143
+ export interface AddBookmarksArgs extends CommonEditOptions, PreservableEditOptions {
144
144
  inputPath: string;
145
145
  bookmarks: BookmarkInput[];
146
146
  }
@@ -255,6 +255,14 @@ export interface FlattenFormArgs extends CommonEditOptions {
255
255
  /** タグ付き PDF でもフラット化を許すか(PDF/UA 準拠が壊れる)。既定 false */
256
256
  allowBreakingTags?: boolean;
257
257
  }
258
+ /** 署名保持の増分更新に対応した編集ツールの共通オプション */
259
+ export interface PreservableEditOptions {
260
+ /**
261
+ * 署名済み PDF に対し、既存署名を無効化せず増分更新(末尾追記)で編集する。
262
+ * 既定 false。認証署名(DocMDP)の許可レベルに反する変更は拒否される。
263
+ */
264
+ preserveSignatures?: boolean;
265
+ }
258
266
  export interface TagFormFieldsArgs extends CommonEditOptions {
259
267
  inputPath: string;
260
268
  /** フィールド名 → 人間可読な代替名(/TU)。省略したフィールドはフィールド名で代用し警告する */
@@ -122,6 +122,7 @@ export declare const setMetadataShape: {
122
122
  readonly subject: z.ZodOptional<z.ZodString>;
123
123
  readonly keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
124
124
  readonly creator: z.ZodOptional<z.ZodString>;
125
+ readonly preserveSignatures: z.ZodOptional<z.ZodBoolean>;
125
126
  };
126
127
  export declare const mergePdfsShape: {
127
128
  readonly outputPath: z.ZodOptional<z.ZodString>;
@@ -171,6 +172,7 @@ export declare const addBookmarksShape: {
171
172
  readonly allowBreakingSignatures: z.ZodOptional<z.ZodBoolean>;
172
173
  readonly inputPath: z.ZodString;
173
174
  readonly bookmarks: z.ZodArray<z.ZodType<BookmarkInput, unknown, z.core.$ZodTypeInternals<BookmarkInput, unknown>>>;
175
+ readonly preserveSignatures: z.ZodOptional<z.ZodBoolean>;
174
176
  };
175
177
  export declare const addAnnotationShape: {
176
178
  readonly outputPath: z.ZodOptional<z.ZodString>;
@@ -366,6 +368,7 @@ export declare const SetMetadataSchema: z.ZodObject<{
366
368
  subject: z.ZodOptional<z.ZodString>;
367
369
  keywords: z.ZodOptional<z.ZodArray<z.ZodString>>;
368
370
  creator: z.ZodOptional<z.ZodString>;
371
+ preserveSignatures: z.ZodOptional<z.ZodBoolean>;
369
372
  }, z.core.$strip>;
370
373
  export declare const MergePdfsSchema: z.ZodObject<{
371
374
  outputPath: z.ZodOptional<z.ZodString>;
@@ -415,6 +418,7 @@ export declare const AddBookmarksSchema: z.ZodObject<{
415
418
  allowBreakingSignatures: z.ZodOptional<z.ZodBoolean>;
416
419
  inputPath: z.ZodString;
417
420
  bookmarks: z.ZodArray<z.ZodType<BookmarkInput, unknown, z.core.$ZodTypeInternals<BookmarkInput, unknown>>>;
421
+ preserveSignatures: z.ZodOptional<z.ZodBoolean>;
418
422
  }, z.core.$strip>;
419
423
  export declare const AddAnnotationSchema: z.ZodObject<{
420
424
  outputPath: z.ZodOptional<z.ZodString>;
@@ -122,6 +122,13 @@ export const createTableShape = {
122
122
  .describe('データ行の配列。各行は文字列の配列で、headers と同じ列数を推奨。'),
123
123
  ...commonCreateShape,
124
124
  };
125
+ /** 署名保持の増分更新に対応したツールが共有する preserveSignatures フィールド */
126
+ const zPreserveSignatures = z
127
+ .boolean()
128
+ .optional()
129
+ .describe('署名済み PDF に対し、既存署名を無効化せず増分更新(末尾追記)で編集する。既定 false。' +
130
+ '元のバイト列には一切触れないため /ByteRange が保たれる。' +
131
+ '認証署名(DocMDP)の許可レベルに反する変更は拒否される。');
125
132
  export const setMetadataShape = {
126
133
  inputPath: zPath.describe('編集対象 PDF の絶対パス。'),
127
134
  title: z.string().optional().describe('タイトル。'),
@@ -129,6 +136,7 @@ export const setMetadataShape = {
129
136
  subject: z.string().optional().describe('サブタイトル・件名。'),
130
137
  keywords: z.array(z.string()).optional().describe('キーワードの配列。'),
131
138
  creator: z.string().optional().describe('作成アプリケーション名。'),
139
+ preserveSignatures: zPreserveSignatures,
132
140
  ...commonEditShape,
133
141
  };
134
142
  export const mergePdfsShape = {
@@ -195,6 +203,7 @@ export const addBookmarksShape = {
195
203
  .min(1)
196
204
  .describe('しおりの配列。各要素は { title, page, open?, children? }。' +
197
205
  'page は 1 始まり。children で階層化でき、最大 8 階層・合計 2000 件まで。'),
206
+ preserveSignatures: zPreserveSignatures,
198
207
  ...commonEditShape,
199
208
  };
200
209
  export const addAnnotationShape = {
@@ -1 +1 @@
1
- {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validation.js","sourceRoot":"","sources":["../../src/utils/validation.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shuji-bonji/pdf-writer-mcp",
3
- "version": "0.9.2",
3
+ "version": "0.10.0",
4
4
  "description": "MCP server that generates and edits PDFs (text/Markdown/table creation, metadata & page operations) using pdf-lib, with Japanese font embedding (fontkit subset).",
5
5
  "type": "module",
6
6
  "bin": {