@cairn-tool/cairn 3.1.0 → 3.3.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/README.md +74 -28
- package/dist/agent/audit/index.d.ts +6 -6
- package/dist/agent/audit/index.js +6 -17
- package/dist/agent/audit/index.js.map +1 -1
- package/dist/archive/run.d.ts +14 -7
- package/dist/archive/run.js +4 -1
- package/dist/archive/run.js.map +1 -1
- package/dist/archive/sets.d.ts +26 -1
- package/dist/archive/sets.js +108 -0
- package/dist/archive/sets.js.map +1 -1
- package/dist/atomic-write.d.ts +22 -0
- package/dist/atomic-write.js +42 -0
- package/dist/atomic-write.js.map +1 -0
- package/dist/binary-kind.d.ts +13 -0
- package/dist/binary-kind.js +25 -0
- package/dist/binary-kind.js.map +1 -0
- package/dist/cli.js +48 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/archive.js +11 -5
- package/dist/commands/archive.js.map +1 -1
- package/dist/commands/jira.js +1 -21
- package/dist/commands/jira.js.map +1 -1
- package/dist/commands/pdf.d.ts +29 -0
- package/dist/commands/pdf.js +345 -0
- package/dist/commands/pdf.js.map +1 -0
- package/dist/contract/registry.js +65 -1
- package/dist/contract/registry.js.map +1 -1
- package/dist/contract/schemas/index.js +2 -0
- package/dist/contract/schemas/index.js.map +1 -1
- package/dist/contract/schemas/pdf.d.ts +2 -0
- package/dist/contract/schemas/pdf.js +292 -0
- package/dist/contract/schemas/pdf.js.map +1 -0
- package/dist/jira/adf/to-markdown.js +2 -32
- package/dist/jira/adf/to-markdown.js.map +1 -1
- package/dist/markdown-stringify.d.ts +35 -0
- package/dist/markdown-stringify.js +44 -0
- package/dist/markdown-stringify.js.map +1 -0
- package/dist/pdf/attachments.d.ts +50 -0
- package/dist/pdf/attachments.js +229 -0
- package/dist/pdf/attachments.js.map +1 -0
- package/dist/pdf/diagnostics.d.ts +110 -0
- package/dist/pdf/diagnostics.js +137 -0
- package/dist/pdf/diagnostics.js.map +1 -0
- package/dist/pdf/document.d.ts +159 -0
- package/dist/pdf/document.js +272 -0
- package/dist/pdf/document.js.map +1 -0
- package/dist/pdf/forms.d.ts +9 -0
- package/dist/pdf/forms.js +101 -0
- package/dist/pdf/forms.js.map +1 -0
- package/dist/pdf/inspect.d.ts +42 -0
- package/dist/pdf/inspect.js +232 -0
- package/dist/pdf/inspect.js.map +1 -0
- package/dist/pdf/layout.d.ts +78 -0
- package/dist/pdf/layout.js +524 -0
- package/dist/pdf/layout.js.map +1 -0
- package/dist/pdf/outline.d.ts +30 -0
- package/dist/pdf/outline.js +127 -0
- package/dist/pdf/outline.js.map +1 -0
- package/dist/pdf/read.d.ts +62 -0
- package/dist/pdf/read.js +193 -0
- package/dist/pdf/read.js.map +1 -0
- package/dist/pdf/struct.d.ts +35 -0
- package/dist/pdf/struct.js +226 -0
- package/dist/pdf/struct.js.map +1 -0
- package/dist/pdf/text.d.ts +71 -0
- package/dist/pdf/text.js +166 -0
- package/dist/pdf/text.js.map +1 -0
- package/dist/pdf/to-markdown.d.ts +22 -0
- package/dist/pdf/to-markdown.js +289 -0
- package/dist/pdf/to-markdown.js.map +1 -0
- package/dist/pdf/types.d.ts +205 -0
- package/dist/pdf/types.js +2 -0
- package/dist/pdf/types.js.map +1 -0
- package/dist/pdf/validate.d.ts +51 -0
- package/dist/pdf/validate.js +136 -0
- package/dist/pdf/validate.js.map +1 -0
- package/dist/serve/pdf-tools.d.ts +2 -0
- package/dist/serve/pdf-tools.js +196 -0
- package/dist/serve/pdf-tools.js.map +1 -0
- package/dist/serve/tools.d.ts +2 -17
- package/dist/serve/tools.js +4 -0
- package/dist/serve/tools.js.map +1 -1
- package/dist/serve/types.d.ts +22 -0
- package/dist/serve/types.js +2 -0
- package/dist/serve/types.js.map +1 -0
- package/dist/usage/providers/cursor.d.ts +2 -0
- package/dist/usage/providers/cursor.js +570 -0
- package/dist/usage/providers/cursor.js.map +1 -0
- package/dist/usage/providers/index.js +2 -0
- package/dist/usage/providers/index.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
import { schemaUri } from "../version.js";
|
|
2
|
+
import { DRAFT } from "./shared.js";
|
|
3
|
+
/**
|
|
4
|
+
* A PDF finding.
|
|
5
|
+
*
|
|
6
|
+
* Inlined rather than cross-referenced: a schema retrieved with
|
|
7
|
+
* `cairn schema pdf-result` must compile on its own, so no `$ref` leaves this
|
|
8
|
+
* document.
|
|
9
|
+
*
|
|
10
|
+
* `code` is `AP###`, the third family after the `AB###` an `AgentDiagnostic`
|
|
11
|
+
* carries and the `AD###` a `ConversionDiagnostic` does. It is structurally a
|
|
12
|
+
* `ConversionDiagnostic` with `node` and `location` replaced by `page` and
|
|
13
|
+
* `construct`, because a PDF finding is positioned by page rather than by a node
|
|
14
|
+
* ancestry trail.
|
|
15
|
+
*/
|
|
16
|
+
const DIAGNOSTIC = {
|
|
17
|
+
type: "object",
|
|
18
|
+
required: ["code", "severity", "message", "quality"],
|
|
19
|
+
properties: {
|
|
20
|
+
code: { type: "string", pattern: "^AP[0-9]{3}$" },
|
|
21
|
+
severity: { enum: ["notice", "warning", "error"] },
|
|
22
|
+
message: { type: "string" },
|
|
23
|
+
quality: {
|
|
24
|
+
enum: ["exact", "approximate", "unsupported"],
|
|
25
|
+
description: "How faithfully the construct survived: exact has a direct equivalent, approximate emitted something else, unsupported emitted nothing.",
|
|
26
|
+
},
|
|
27
|
+
page: {
|
|
28
|
+
type: "integer",
|
|
29
|
+
minimum: 1,
|
|
30
|
+
description: "1-based page the finding concerns, when it concerns a single page.",
|
|
31
|
+
},
|
|
32
|
+
construct: {
|
|
33
|
+
type: "string",
|
|
34
|
+
description: "The PDF construct the finding concerns: a structure role, a filter name, a font name.",
|
|
35
|
+
},
|
|
36
|
+
remediation: { type: "string" },
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
const TEXT_LAYER = {
|
|
40
|
+
enum: ["present", "sparse", "absent"],
|
|
41
|
+
description: "Glyph coverage relative to page area: present is a normal text layer, sparse is a handful of glyphs over mostly image, absent is no text at all. An absent layer means the page is an image and text extraction returns nothing for it.",
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Document facts, carried by every subcommand.
|
|
45
|
+
*
|
|
46
|
+
* Unlike `adf-result`'s `inventory`, this is not confined to one command: a
|
|
47
|
+
* conversion from a tagged document and one from a scan are not the same kind of
|
|
48
|
+
* artifact and must be distinguishable without a second call.
|
|
49
|
+
*/
|
|
50
|
+
const DOCUMENT = {
|
|
51
|
+
type: "object",
|
|
52
|
+
required: ["pageCount", "tagged", "encrypted"],
|
|
53
|
+
properties: {
|
|
54
|
+
pageCount: { type: "integer", minimum: 0 },
|
|
55
|
+
tagged: {
|
|
56
|
+
type: "boolean",
|
|
57
|
+
description: "The document declares /MarkInfo <</Marked true>>. A tagged document names its own paragraphs, headings, lists, and table cells, so to-markdown infers almost nothing; an untagged one is inference throughout. Read this before trusting converted structure. It is a claim, not a measurement — see `structured`.",
|
|
58
|
+
},
|
|
59
|
+
structured: {
|
|
60
|
+
enum: ["struct", "partial", "none"],
|
|
61
|
+
description: "Whether pages actually carried a usable structure tree, measured rather than claimed: producers do set `tagged` and ship an empty tree. Absent on commands that do not walk pages.",
|
|
62
|
+
},
|
|
63
|
+
encrypted: {
|
|
64
|
+
type: "boolean",
|
|
65
|
+
description: "The document carries an encryption dictionary. True includes the common case of an empty user password that opens without one, in which case the restrictions are advisory only.",
|
|
66
|
+
},
|
|
67
|
+
textLayer: TEXT_LAYER,
|
|
68
|
+
pdfVersion: { type: "string" },
|
|
69
|
+
title: { type: "string" },
|
|
70
|
+
author: { type: "string" },
|
|
71
|
+
subject: { type: "string" },
|
|
72
|
+
keywords: { type: "string" },
|
|
73
|
+
creator: { type: "string" },
|
|
74
|
+
producer: { type: "string" },
|
|
75
|
+
created: {
|
|
76
|
+
type: "string",
|
|
77
|
+
description: "ISO-8601 in UTC, when the document's own date string parsed. Omitted rather than guessed when it did not.",
|
|
78
|
+
},
|
|
79
|
+
modified: { type: "string", description: "ISO-8601 in UTC; omitted when unparseable." },
|
|
80
|
+
},
|
|
81
|
+
};
|
|
82
|
+
/** One row of `pdf inspect`'s page inventory. */
|
|
83
|
+
const PAGE = {
|
|
84
|
+
type: "object",
|
|
85
|
+
required: ["page", "width", "height", "rotation", "characters", "density", "textLayer"],
|
|
86
|
+
properties: {
|
|
87
|
+
page: { type: "integer", minimum: 1 },
|
|
88
|
+
width: { type: "number", description: "Width in points, 72 to the inch, /Rotate applied." },
|
|
89
|
+
height: { type: "number", description: "Height in points, /Rotate applied." },
|
|
90
|
+
rotation: { type: "integer" },
|
|
91
|
+
characters: {
|
|
92
|
+
type: "integer",
|
|
93
|
+
minimum: 0,
|
|
94
|
+
description: "Non-whitespace code points on the page.",
|
|
95
|
+
},
|
|
96
|
+
density: {
|
|
97
|
+
type: "number",
|
|
98
|
+
description: "Characters per square inch. Published alongside textLayer so a consumer that disagrees with the threshold can re-classify from the evidence rather than the label.",
|
|
99
|
+
},
|
|
100
|
+
textLayer: TEXT_LAYER,
|
|
101
|
+
},
|
|
102
|
+
};
|
|
103
|
+
const TEXT_PAGE = {
|
|
104
|
+
type: "object",
|
|
105
|
+
required: ["page", "text", "characters"],
|
|
106
|
+
properties: {
|
|
107
|
+
page: { type: "integer", minimum: 1 },
|
|
108
|
+
text: { type: "string" },
|
|
109
|
+
characters: { type: "integer", minimum: 0 },
|
|
110
|
+
},
|
|
111
|
+
};
|
|
112
|
+
/** One outline entry. Recursive within this document, which `$ref: "#/..."` permits. */
|
|
113
|
+
const OUTLINE_ENTRY = {
|
|
114
|
+
type: "object",
|
|
115
|
+
required: ["title", "level", "page", "children"],
|
|
116
|
+
properties: {
|
|
117
|
+
title: { type: "string" },
|
|
118
|
+
level: { type: "integer", minimum: 1 },
|
|
119
|
+
page: {
|
|
120
|
+
type: ["integer", "null"],
|
|
121
|
+
description: "1-based destination page, or null when the destination did not resolve. A null keeps the entry rather than dropping it; the accompanying finding names it.",
|
|
122
|
+
},
|
|
123
|
+
url: {
|
|
124
|
+
type: "string",
|
|
125
|
+
description: "Present only when the parser validated the scheme. Recorded, never followed. An entry whose URL used a scheme the parser refused carries no url at all.",
|
|
126
|
+
},
|
|
127
|
+
children: { type: "array", items: { $ref: "#/$defs/outlineEntry" } },
|
|
128
|
+
},
|
|
129
|
+
};
|
|
130
|
+
/**
|
|
131
|
+
* One embedded file.
|
|
132
|
+
*
|
|
133
|
+
* `bytes` and `sha256` are optional because decoding is bounded: past the
|
|
134
|
+
* budget, or when a file's stream could not be read, the entry is still listed
|
|
135
|
+
* with its names and a finding says why the rest is missing. Listing it without
|
|
136
|
+
* saying so would be indistinguishable from a zero-length file.
|
|
137
|
+
*/
|
|
138
|
+
const ATTACHMENT = {
|
|
139
|
+
type: "object",
|
|
140
|
+
required: ["id", "filename", "rawFilename"],
|
|
141
|
+
properties: {
|
|
142
|
+
id: {
|
|
143
|
+
type: "string",
|
|
144
|
+
description: "The name-tree key identifying this attachment inside the document.",
|
|
145
|
+
},
|
|
146
|
+
filename: {
|
|
147
|
+
type: "string",
|
|
148
|
+
description: "The basename the parser derived. Sanitized again before it is ever used as a path.",
|
|
149
|
+
},
|
|
150
|
+
rawFilename: {
|
|
151
|
+
type: "string",
|
|
152
|
+
description: "The stored name verbatim, including any directory traversal it carries. Reported so a rename is visible rather than silent.",
|
|
153
|
+
},
|
|
154
|
+
description: { type: "string" },
|
|
155
|
+
bytes: {
|
|
156
|
+
type: "integer",
|
|
157
|
+
minimum: 0,
|
|
158
|
+
description: "Decoded length. Absent when it was not decoded.",
|
|
159
|
+
},
|
|
160
|
+
sha256: { type: "string", pattern: "^[0-9a-f]{64}$" },
|
|
161
|
+
binary: {
|
|
162
|
+
enum: ["elf", "pe", "macho"],
|
|
163
|
+
description: "Executable format, identified from the magic number. Absent when it is not one.",
|
|
164
|
+
},
|
|
165
|
+
written: {
|
|
166
|
+
type: "string",
|
|
167
|
+
description: "Absolute path written, present only under --extract.",
|
|
168
|
+
},
|
|
169
|
+
},
|
|
170
|
+
};
|
|
171
|
+
/** One AcroForm field, with its widgets folded into a count. */
|
|
172
|
+
const FORM_FIELD = {
|
|
173
|
+
type: "object",
|
|
174
|
+
required: ["name", "type", "page", "readOnly", "hidden", "password", "widgets"],
|
|
175
|
+
properties: {
|
|
176
|
+
name: { type: "string", description: "Fully-qualified field name." },
|
|
177
|
+
type: {
|
|
178
|
+
type: "string",
|
|
179
|
+
description: "text, checkbox, radiobutton, choice, signature, button, or unknown.",
|
|
180
|
+
},
|
|
181
|
+
page: {
|
|
182
|
+
type: ["integer", "null"],
|
|
183
|
+
minimum: 1,
|
|
184
|
+
description: "1-based, converted from the 0-based index the parser reports. Null when it does not resolve.",
|
|
185
|
+
},
|
|
186
|
+
value: { type: "string" },
|
|
187
|
+
defaultValue: { type: "string" },
|
|
188
|
+
readOnly: { type: "boolean" },
|
|
189
|
+
hidden: { type: "boolean" },
|
|
190
|
+
password: {
|
|
191
|
+
type: "boolean",
|
|
192
|
+
description: "The field's password flag. The value is still reported: the same bytes are reachable through pdf text.",
|
|
193
|
+
},
|
|
194
|
+
charLimit: { type: "integer", minimum: 1 },
|
|
195
|
+
exportValues: { type: "string" },
|
|
196
|
+
widgets: {
|
|
197
|
+
type: "integer",
|
|
198
|
+
minimum: 1,
|
|
199
|
+
description: "Widgets this field renders as; one field can appear on several pages.",
|
|
200
|
+
},
|
|
201
|
+
},
|
|
202
|
+
};
|
|
203
|
+
const FORM = {
|
|
204
|
+
type: "object",
|
|
205
|
+
required: ["type", "fieldCount", "fields"],
|
|
206
|
+
properties: {
|
|
207
|
+
type: {
|
|
208
|
+
enum: ["acroform", "xfa", "none"],
|
|
209
|
+
description: "xfa means the field values live in an XML packet this does not read, so fields is empty for a reason rather than because there are none.",
|
|
210
|
+
},
|
|
211
|
+
fieldCount: { type: "integer", minimum: 0 },
|
|
212
|
+
fields: { type: "array", items: { $ref: "#/$defs/formField" } },
|
|
213
|
+
},
|
|
214
|
+
};
|
|
215
|
+
export const pdfResultSchema = {
|
|
216
|
+
id: "pdf-result",
|
|
217
|
+
uri: schemaUri("v1", "pdf-result"),
|
|
218
|
+
title: "cairn pdf result",
|
|
219
|
+
commands: [
|
|
220
|
+
"pdf inspect",
|
|
221
|
+
"pdf text",
|
|
222
|
+
"pdf outline",
|
|
223
|
+
"pdf validate",
|
|
224
|
+
"pdf to-markdown",
|
|
225
|
+
"pdf attachments",
|
|
226
|
+
"pdf forms",
|
|
227
|
+
],
|
|
228
|
+
schema: {
|
|
229
|
+
$schema: DRAFT,
|
|
230
|
+
$id: schemaUri("v1", "pdf-result"),
|
|
231
|
+
title: "cairn pdf result",
|
|
232
|
+
description: "The --format json payload of every pdf subcommand, including the failure form. The default llm format writes the primary output alone to stdout and diagnostics to stderr; this shape appears only under --format json, so -fj is not the same output in JSON.",
|
|
233
|
+
type: "object",
|
|
234
|
+
required: ["command", "ok", "source", "diagnostics"],
|
|
235
|
+
properties: {
|
|
236
|
+
command: {
|
|
237
|
+
enum: ["inspect", "text", "outline", "validate", "to-markdown", "attachments", "forms"],
|
|
238
|
+
},
|
|
239
|
+
ok: {
|
|
240
|
+
type: "boolean",
|
|
241
|
+
description: "False when a blocking finding occurred. An approximation blocks only under --strict, so ok:true does not mean the conversion was lossless or the text complete — read diagnostics for that.",
|
|
242
|
+
},
|
|
243
|
+
source: { type: "string", description: "Input path, or '-' for stdin." },
|
|
244
|
+
document: {
|
|
245
|
+
description: "Present on every command whenever the document opened, so a result from a tagged document and one from a scan are distinguishable without a second call. Absent only in the failure form.",
|
|
246
|
+
allOf: [{ $ref: "#/$defs/document" }],
|
|
247
|
+
},
|
|
248
|
+
pages: {
|
|
249
|
+
type: "array",
|
|
250
|
+
description: "Emitted by inspect: one row per page, in page order.",
|
|
251
|
+
items: { $ref: "#/$defs/page" },
|
|
252
|
+
},
|
|
253
|
+
text: {
|
|
254
|
+
type: "array",
|
|
255
|
+
description: "Emitted by text: one entry per selected page, in page order. A page that could not be decoded is absent and reported as a finding, rather than present with an empty string, which would be indistinguishable from a blank page.",
|
|
256
|
+
items: { $ref: "#/$defs/textPage" },
|
|
257
|
+
},
|
|
258
|
+
outline: {
|
|
259
|
+
type: "array",
|
|
260
|
+
description: "Emitted by outline: the declared bookmark tree, in document order. An empty array means the document declares no outline, which is an answer rather than a failure.",
|
|
261
|
+
items: { $ref: "#/$defs/outlineEntry" },
|
|
262
|
+
},
|
|
263
|
+
markdown: { type: "string", description: "Emitted by to-markdown." },
|
|
264
|
+
attachments: {
|
|
265
|
+
type: "array",
|
|
266
|
+
description: "Emitted by attachments: the files embedded in the document, sorted by their name-tree key. An empty array means the document embeds none.",
|
|
267
|
+
items: { $ref: "#/$defs/attachment" },
|
|
268
|
+
},
|
|
269
|
+
form: {
|
|
270
|
+
description: "Emitted by forms.",
|
|
271
|
+
allOf: [{ $ref: "#/$defs/form" }],
|
|
272
|
+
},
|
|
273
|
+
selectedPages: {
|
|
274
|
+
type: "array",
|
|
275
|
+
items: { type: "integer", minimum: 1 },
|
|
276
|
+
description: "1-based pages --pages selected, ascending and deduplicated. Absent when --pages was not given, which means every page.",
|
|
277
|
+
},
|
|
278
|
+
output: { type: "string", description: "Absolute path written, when --output was given." },
|
|
279
|
+
diagnostics: { type: "array", items: DIAGNOSTIC },
|
|
280
|
+
},
|
|
281
|
+
$defs: {
|
|
282
|
+
document: DOCUMENT,
|
|
283
|
+
page: PAGE,
|
|
284
|
+
textPage: TEXT_PAGE,
|
|
285
|
+
outlineEntry: OUTLINE_ENTRY,
|
|
286
|
+
attachment: ATTACHMENT,
|
|
287
|
+
form: FORM,
|
|
288
|
+
formField: FORM_FIELD,
|
|
289
|
+
},
|
|
290
|
+
},
|
|
291
|
+
};
|
|
292
|
+
//# sourceMappingURL=pdf.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pdf.js","sourceRoot":"","sources":["../../../src/contract/schemas/pdf.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,36 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import remarkGfm from "remark-gfm";
|
|
3
|
-
import remarkStringify from "remark-stringify";
|
|
1
|
+
import { stringifyMarkdown } from "../../markdown-stringify.js";
|
|
4
2
|
import { CODES, DiagnosticSink } from "./diagnostics.js";
|
|
5
3
|
import { FIDELITY, MARK_FIDELITY, PANEL_TYPES } from "./profile.js";
|
|
6
|
-
/**
|
|
7
|
-
* Every stringify option is pinned.
|
|
8
|
-
*
|
|
9
|
-
* Left at their defaults, a `remark-stringify` minor bump silently changes the
|
|
10
|
-
* bytes of every document this command has ever produced. `emphasis: "_"` and
|
|
11
|
-
* `strong: "*"` also match this repository's own `.markdownlintrc`, so converted
|
|
12
|
-
* documents lint clean where they land.
|
|
13
|
-
*/
|
|
14
|
-
const STRINGIFY_OPTIONS = {
|
|
15
|
-
bullet: "-",
|
|
16
|
-
bulletOrdered: ".",
|
|
17
|
-
emphasis: "_",
|
|
18
|
-
strong: "*",
|
|
19
|
-
fence: "`",
|
|
20
|
-
fences: true,
|
|
21
|
-
rule: "-",
|
|
22
|
-
ruleRepetition: 3,
|
|
23
|
-
ruleSpaces: false,
|
|
24
|
-
setext: false,
|
|
25
|
-
closeAtx: false,
|
|
26
|
-
incrementListMarker: true,
|
|
27
|
-
listItemIndent: "one",
|
|
28
|
-
resourceLink: false,
|
|
29
|
-
tightDefinitions: false,
|
|
30
|
-
};
|
|
31
|
-
const processor = unified()
|
|
32
|
-
.use(remarkGfm)
|
|
33
|
-
.use(remarkStringify, STRINGIFY_OPTIONS);
|
|
34
4
|
/**
|
|
35
5
|
* The order marks are applied, innermost first.
|
|
36
6
|
*
|
|
@@ -507,6 +477,6 @@ export function toMarkdown(document) {
|
|
|
507
477
|
const converter = new Converter();
|
|
508
478
|
const children = converter.blocks(document.content, ["doc"]);
|
|
509
479
|
const root = { type: "root", children };
|
|
510
|
-
return { markdown:
|
|
480
|
+
return { markdown: stringifyMarkdown(root), diagnostics: converter.sink.all() };
|
|
511
481
|
}
|
|
512
482
|
//# sourceMappingURL=to-markdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"to-markdown.js","sourceRoot":"","sources":["../../../src/jira/adf/to-markdown.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"to-markdown.js","sourceRoot":"","sources":["../../../src/jira/adf/to-markdown.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { Root } from "mdast";
|
|
2
|
+
/**
|
|
3
|
+
* Every stringify option is pinned.
|
|
4
|
+
*
|
|
5
|
+
* Left at their defaults, a `remark-stringify` minor bump silently changes the
|
|
6
|
+
* bytes of every document these converters have ever produced. `emphasis: "_"`
|
|
7
|
+
* and `strong: "*"` also match this repository's own `.markdownlintrc`, so
|
|
8
|
+
* converted documents lint clean where they land.
|
|
9
|
+
*
|
|
10
|
+
* This lives here rather than in either converter because `jira adf to-markdown`
|
|
11
|
+
* and `pdf to-markdown` must emit byte-identical Markdown conventions, and one
|
|
12
|
+
* const with one consumer list is the only mechanical guarantee of that — the
|
|
13
|
+
* same reasoning `src/mapping-quality.ts` records for the quality-to-severity
|
|
14
|
+
* rule. Importing it across toolsets instead would drag the whole ADF converter,
|
|
15
|
+
* its content model, and its diagnostics into the `pdf` import graph.
|
|
16
|
+
*/
|
|
17
|
+
export declare const STRINGIFY_OPTIONS: {
|
|
18
|
+
readonly bullet: "-";
|
|
19
|
+
readonly bulletOrdered: ".";
|
|
20
|
+
readonly emphasis: "_";
|
|
21
|
+
readonly strong: "*";
|
|
22
|
+
readonly fence: "`";
|
|
23
|
+
readonly fences: true;
|
|
24
|
+
readonly rule: "-";
|
|
25
|
+
readonly ruleRepetition: 3;
|
|
26
|
+
readonly ruleSpaces: false;
|
|
27
|
+
readonly setext: false;
|
|
28
|
+
readonly closeAtx: false;
|
|
29
|
+
readonly incrementListMarker: true;
|
|
30
|
+
readonly listItemIndent: "one";
|
|
31
|
+
readonly resourceLink: false;
|
|
32
|
+
readonly tightDefinitions: false;
|
|
33
|
+
};
|
|
34
|
+
/** Renders an mdast tree with the pinned options. */
|
|
35
|
+
export declare function stringifyMarkdown(root: Root): string;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { unified } from "unified";
|
|
2
|
+
import remarkGfm from "remark-gfm";
|
|
3
|
+
import remarkStringify from "remark-stringify";
|
|
4
|
+
/**
|
|
5
|
+
* Every stringify option is pinned.
|
|
6
|
+
*
|
|
7
|
+
* Left at their defaults, a `remark-stringify` minor bump silently changes the
|
|
8
|
+
* bytes of every document these converters have ever produced. `emphasis: "_"`
|
|
9
|
+
* and `strong: "*"` also match this repository's own `.markdownlintrc`, so
|
|
10
|
+
* converted documents lint clean where they land.
|
|
11
|
+
*
|
|
12
|
+
* This lives here rather than in either converter because `jira adf to-markdown`
|
|
13
|
+
* and `pdf to-markdown` must emit byte-identical Markdown conventions, and one
|
|
14
|
+
* const with one consumer list is the only mechanical guarantee of that — the
|
|
15
|
+
* same reasoning `src/mapping-quality.ts` records for the quality-to-severity
|
|
16
|
+
* rule. Importing it across toolsets instead would drag the whole ADF converter,
|
|
17
|
+
* its content model, and its diagnostics into the `pdf` import graph.
|
|
18
|
+
*/
|
|
19
|
+
export const STRINGIFY_OPTIONS = {
|
|
20
|
+
bullet: "-",
|
|
21
|
+
bulletOrdered: ".",
|
|
22
|
+
emphasis: "_",
|
|
23
|
+
strong: "*",
|
|
24
|
+
fence: "`",
|
|
25
|
+
fences: true,
|
|
26
|
+
rule: "-",
|
|
27
|
+
ruleRepetition: 3,
|
|
28
|
+
ruleSpaces: false,
|
|
29
|
+
setext: false,
|
|
30
|
+
closeAtx: false,
|
|
31
|
+
incrementListMarker: true,
|
|
32
|
+
listItemIndent: "one",
|
|
33
|
+
resourceLink: false,
|
|
34
|
+
tightDefinitions: false,
|
|
35
|
+
};
|
|
36
|
+
/** Built once. Every converter shares it, which is what keeps the bytes equal. */
|
|
37
|
+
const processor = unified()
|
|
38
|
+
.use(remarkGfm)
|
|
39
|
+
.use(remarkStringify, STRINGIFY_OPTIONS);
|
|
40
|
+
/** Renders an mdast tree with the pinned options. */
|
|
41
|
+
export function stringifyMarkdown(root) {
|
|
42
|
+
return processor.stringify(root);
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=markdown-stringify.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"markdown-stringify.js","sourceRoot":"","sources":["../src/markdown-stringify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,eAAe,MAAM,kBAAkB,CAAC;AAG/C;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,MAAM,EAAE,GAAG;IACX,aAAa,EAAE,GAAG;IAClB,QAAQ,EAAE,GAAG;IACb,MAAM,EAAE,GAAG;IACX,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,IAAI;IACZ,IAAI,EAAE,GAAG;IACT,cAAc,EAAE,CAAC;IACjB,UAAU,EAAE,KAAK;IACjB,MAAM,EAAE,KAAK;IACb,QAAQ,EAAE,KAAK;IACf,mBAAmB,EAAE,IAAI;IACzB,cAAc,EAAE,KAAK;IACrB,YAAY,EAAE,KAAK;IACnB,gBAAgB,EAAE,KAAK;CACf,CAAC;AAEX,kFAAkF;AAClF,MAAM,SAAS,GAAG,OAAO,EAAE;KACxB,GAAG,CAAC,SAAS,CAAC;KACd,GAAG,CAAC,eAAe,EAAE,iBAA0D,CAAC,CAAC;AAEpF,qDAAqD;AACrD,MAAM,UAAU,iBAAiB,CAAC,IAAU;IAC1C,OAAO,SAAS,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACnC,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import type { OpenDocument } from "./document.js";
|
|
2
|
+
import type { PdfAttachment, PdfDiagnostic } from "./types.js";
|
|
3
|
+
/**
|
|
4
|
+
* Embedded files: inventory, and extraction under `--extract`.
|
|
5
|
+
*
|
|
6
|
+
* Two rules shape the module, and both are security properties rather than
|
|
7
|
+
* conveniences.
|
|
8
|
+
*
|
|
9
|
+
* **Binary never reaches stdout.** `--extract` is the only way bytes leave this
|
|
10
|
+
* command. A command that emits UTF-8 under one flag and a binary blob under
|
|
11
|
+
* another is a contract no consumer can code against.
|
|
12
|
+
*
|
|
13
|
+
* **Extraction is planned before anything is written.** An embedded file's
|
|
14
|
+
* stored name is attacker-controlled and will contain `../` eventually. Every
|
|
15
|
+
* destination is resolved and checked over the whole set first, so a single
|
|
16
|
+
* refused path means nothing is written at all — the same plan-then-write shape
|
|
17
|
+
* `src/agent/install` uses, and deliberately not `archive extract`, which
|
|
18
|
+
* sanitizes with `path.basename` alone and has no collision handling.
|
|
19
|
+
*
|
|
20
|
+
* pdf.js already strips the path — a `/F` of `../../etc/evil.csv` arrives as
|
|
21
|
+
* `filename: "evil.csv"` with `rawFilename` preserved. That is not treated as
|
|
22
|
+
* sufficient. The sanitization here is this command's own, and the payload
|
|
23
|
+
* reports both names so a caller can see what was renamed.
|
|
24
|
+
*/
|
|
25
|
+
/**
|
|
26
|
+
* Total decoded attachment bytes an inventory will hold at once.
|
|
27
|
+
*
|
|
28
|
+
* The inventory fetches content because size and SHA-256 are what make it
|
|
29
|
+
* actionable, and the document is already resident so a fetch is decompression
|
|
30
|
+
* rather than I/O. The cap bounds a document that claims a thousand large
|
|
31
|
+
* embedded files, and it reports rather than truncating silently.
|
|
32
|
+
*/
|
|
33
|
+
export declare const MAX_ATTACHMENT_BYTES: number;
|
|
34
|
+
export interface AttachmentsResult {
|
|
35
|
+
attachments: PdfAttachment[];
|
|
36
|
+
diagnostics: PdfDiagnostic[];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The basename this command is willing to write, or null when there is none.
|
|
40
|
+
*
|
|
41
|
+
* Deliberately stricter than "strip the directory": a name that still carries a
|
|
42
|
+
* separator, a NUL, or a drive letter after basename is a name whose author was
|
|
43
|
+
* trying something, and guessing at their intent is how a traversal gets through.
|
|
44
|
+
*/
|
|
45
|
+
export declare function sanitizeName(candidate: string): string | null;
|
|
46
|
+
export declare function readAttachments(handle: OpenDocument, options?: {
|
|
47
|
+
extract?: string;
|
|
48
|
+
}): Promise<AttachmentsResult>;
|
|
49
|
+
/** The human and llm rendering: one line per embedded file. */
|
|
50
|
+
export declare function formatAttachments(attachments: PdfAttachment[]): string;
|