@asciidoctor/core 3.0.3 → 4.0.0-alpha.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -10
- package/build/browser/index.js +24154 -0
- package/build/node/index.cjs +24735 -0
- package/{dist/css/asciidoctor.css → data/asciidoctor-default.css} +54 -53
- package/package.json +53 -100
- package/src/abstract_block.js +849 -0
- package/src/abstract_node.js +954 -0
- package/src/attribute_entry.js +12 -0
- package/src/attribute_list.js +380 -0
- package/src/block.js +168 -0
- package/src/browser/asset.js +22 -0
- package/src/browser/reader.js +138 -0
- package/src/browser.js +121 -0
- package/src/callouts.js +85 -0
- package/src/compliance.js +54 -0
- package/src/constants.js +665 -0
- package/src/convert.js +370 -0
- package/src/converter/composite.js +83 -0
- package/src/converter/docbook5.js +1031 -0
- package/src/converter/html5.js +1899 -0
- package/src/converter/manpage.js +935 -0
- package/src/converter/template.js +459 -0
- package/src/converter.js +478 -0
- package/src/data/stylesheet-data.js +2 -0
- package/src/document.js +2134 -0
- package/src/extensions.js +1952 -0
- package/src/footnote.js +28 -0
- package/src/helpers.js +355 -0
- package/src/index.js +138 -0
- package/src/inline.js +158 -0
- package/src/list.js +240 -0
- package/src/load.js +276 -0
- package/src/logging.js +526 -0
- package/src/parser.js +3661 -0
- package/src/path_resolver.js +472 -0
- package/src/reader.js +1755 -0
- package/src/rx.js +829 -0
- package/src/section.js +354 -0
- package/src/stylesheets.js +30 -0
- package/src/substitutors.js +2241 -0
- package/src/syntaxHighlighter/highlightjs.js +90 -0
- package/src/syntaxHighlighter/html_pipeline.js +33 -0
- package/src/syntax_highlighter.js +304 -0
- package/src/table.js +952 -0
- package/src/timings.js +78 -0
- package/types/abstract_block.d.ts +343 -0
- package/types/abstract_node.d.ts +471 -0
- package/types/attribute_entry.d.ts +7 -0
- package/types/attribute_list.d.ts +52 -0
- package/types/block.d.ts +55 -0
- package/types/browser/asset.d.ts +7 -0
- package/types/browser/reader.d.ts +29 -0
- package/types/callouts.d.ts +36 -0
- package/types/compliance.d.ts +23 -0
- package/types/constants.d.ts +268 -0
- package/types/convert.d.ts +34 -0
- package/types/converter/composite.d.ts +20 -0
- package/types/converter/docbook5.d.ts +41 -0
- package/types/converter/html5.d.ts +51 -0
- package/types/converter/manpage.d.ts +59 -0
- package/types/converter/template.d.ts +83 -0
- package/types/converter.d.ts +150 -0
- package/types/data/stylesheet-data.d.ts +2 -0
- package/types/document.d.ts +495 -0
- package/types/extensions.d.ts +876 -0
- package/types/footnote.d.ts +18 -0
- package/types/helpers.d.ts +146 -0
- package/types/index.d.ts +73 -3731
- package/types/inline.d.ts +69 -0
- package/types/list.d.ts +114 -0
- package/types/load.d.ts +39 -0
- package/types/logging.d.ts +187 -0
- package/types/parser.d.ts +114 -0
- package/types/path_resolver.d.ts +103 -0
- package/types/reader.d.ts +184 -0
- package/types/rx.d.ts +513 -0
- package/types/section.d.ts +122 -0
- package/types/stylesheets.d.ts +10 -0
- package/types/substitutors.d.ts +208 -0
- package/types/syntaxHighlighter/highlightjs.d.ts +33 -0
- package/types/syntaxHighlighter/html_pipeline.d.ts +16 -0
- package/types/syntax_highlighter.d.ts +167 -0
- package/types/table.d.ts +231 -0
- package/types/timings.d.ts +25 -0
- package/types/tsconfig.json +9 -0
- package/LICENSE +0 -21
- package/dist/browser/asciidoctor.js +0 -47654
- package/dist/browser/asciidoctor.min.js +0 -1452
- package/dist/graalvm/asciidoctor.js +0 -47402
- package/dist/node/asciidoctor.cjs +0 -21567
- package/dist/node/asciidoctor.js +0 -23037
|
@@ -0,0 +1,495 @@
|
|
|
1
|
+
export class ImageReference {
|
|
2
|
+
constructor(target: any, imagesdir: any);
|
|
3
|
+
target: any;
|
|
4
|
+
imagesdir: any;
|
|
5
|
+
/**
|
|
6
|
+
* @returns {string} the target image path or URI.
|
|
7
|
+
*/
|
|
8
|
+
getTarget(): string;
|
|
9
|
+
/**
|
|
10
|
+
* @returns {string} the images directory.
|
|
11
|
+
*/
|
|
12
|
+
getImagesDirectory(): string;
|
|
13
|
+
toString(): any;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Parsed and stores a partitioned title (title & subtitle).
|
|
17
|
+
*/
|
|
18
|
+
export class DocumentTitle {
|
|
19
|
+
constructor(val: any, opts?: {});
|
|
20
|
+
_sanitized: boolean;
|
|
21
|
+
main: any;
|
|
22
|
+
subtitle: any;
|
|
23
|
+
combined: any;
|
|
24
|
+
get title(): any;
|
|
25
|
+
isSanitized(): boolean;
|
|
26
|
+
hasSubtitle(): boolean;
|
|
27
|
+
getMain(): any;
|
|
28
|
+
getCombined(): any;
|
|
29
|
+
getSubtitle(): any;
|
|
30
|
+
toString(): any;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Represents an Author parsed from document attributes.
|
|
34
|
+
*/
|
|
35
|
+
export class Author {
|
|
36
|
+
constructor(name: any, firstname: any, middlename: any, lastname: any, initials: any, email: any);
|
|
37
|
+
name: any;
|
|
38
|
+
firstname: any;
|
|
39
|
+
middlename: any;
|
|
40
|
+
lastname: any;
|
|
41
|
+
initials: any;
|
|
42
|
+
email: any;
|
|
43
|
+
getName(): any;
|
|
44
|
+
getFirstName(): any;
|
|
45
|
+
getMiddleName(): any;
|
|
46
|
+
getLastName(): any;
|
|
47
|
+
getInitials(): any;
|
|
48
|
+
getEmail(): any;
|
|
49
|
+
}
|
|
50
|
+
export class RevisionInfo {
|
|
51
|
+
constructor(number: any, date: any, remark: any);
|
|
52
|
+
_number: any;
|
|
53
|
+
_date: any;
|
|
54
|
+
_remark: any;
|
|
55
|
+
isEmpty(): boolean;
|
|
56
|
+
getNumber(): any;
|
|
57
|
+
getDate(): any;
|
|
58
|
+
getRemark(): any;
|
|
59
|
+
}
|
|
60
|
+
export class Document extends AbstractBlock<string> {
|
|
61
|
+
/**
|
|
62
|
+
* Factory — create and fully parse a Document asynchronously.
|
|
63
|
+
* @param {string|string[]|null} data - The AsciiDoc source.
|
|
64
|
+
* @param {Object} [options={}] - Processing options.
|
|
65
|
+
* @returns {Promise<Document>} The parsed Document.
|
|
66
|
+
*/
|
|
67
|
+
static create(data: string | string[] | null, options?: any): Promise<Document>;
|
|
68
|
+
constructor(data?: any, options?: {});
|
|
69
|
+
/** @type {Reader} */
|
|
70
|
+
reader: Reader;
|
|
71
|
+
/** @type {string} */
|
|
72
|
+
doctype: string;
|
|
73
|
+
/** @type {string} */
|
|
74
|
+
baseDir: string;
|
|
75
|
+
/** @type {string} */
|
|
76
|
+
backend: string;
|
|
77
|
+
/** @type {number} */
|
|
78
|
+
safe: number;
|
|
79
|
+
/** @type {boolean} */
|
|
80
|
+
compatMode: boolean;
|
|
81
|
+
set converter(v: any);
|
|
82
|
+
/** Override AbstractNode's getter so Document can own its converter directly. */
|
|
83
|
+
get converter(): any;
|
|
84
|
+
parentDocument: any;
|
|
85
|
+
catalog: any;
|
|
86
|
+
outfilesuffix: any;
|
|
87
|
+
sourcemap: any;
|
|
88
|
+
pathResolver: any;
|
|
89
|
+
extensions: any;
|
|
90
|
+
syntaxHighlighter: any;
|
|
91
|
+
header: Section;
|
|
92
|
+
options: Readonly<{}>;
|
|
93
|
+
/** Alias catalog as references (backwards compat). */
|
|
94
|
+
get references(): any;
|
|
95
|
+
/** @returns {boolean} True if this is a nested (child) document. */
|
|
96
|
+
nested(): boolean;
|
|
97
|
+
/**
|
|
98
|
+
* Parse the AsciiDoc source and populate the document AST.
|
|
99
|
+
*
|
|
100
|
+
* This method is idempotent — repeated calls are no-ops once parsing is done.
|
|
101
|
+
* You rarely need to call it directly: prefer {@link Document.create} (factory) or
|
|
102
|
+
* the top-level {@link load} / {@link loadFile} functions, which call `parse()` for you.
|
|
103
|
+
*
|
|
104
|
+
* Call `parse()` explicitly only when you constructed `new Document(...)` by hand and
|
|
105
|
+
* need to defer the work, or when you want to supply a replacement `data` source.
|
|
106
|
+
*
|
|
107
|
+
* @param {string|string[]|null} [data=null] - Optional replacement source lines.
|
|
108
|
+
* When provided, replaces the data that was given to the constructor.
|
|
109
|
+
* @returns {Promise<Document>} This Document instance (allows chaining).
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* const doc = new Document('= Hello', {})
|
|
113
|
+
* await doc.parse()
|
|
114
|
+
* console.log(doc.getTitle()) // → 'Hello'
|
|
115
|
+
*/
|
|
116
|
+
parse(data?: string | string[] | null): Promise<Document>;
|
|
117
|
+
/**
|
|
118
|
+
* Return whether the document has been fully parsed.
|
|
119
|
+
* @returns {boolean}
|
|
120
|
+
*/
|
|
121
|
+
isParsed(): boolean;
|
|
122
|
+
/**
|
|
123
|
+
* Get the named counter and advance it by one step.
|
|
124
|
+
*
|
|
125
|
+
* Counters are document-scoped sequences used for automatic numbering (figures,
|
|
126
|
+
* tables, custom labels, …). Each call increments the sequence and returns the
|
|
127
|
+
* new value. Numeric counters increment by 1; alphabetic counters advance through
|
|
128
|
+
* the alphabet (`'a'` → `'b'` → … → `'z'`).
|
|
129
|
+
*
|
|
130
|
+
* When the counter does not yet exist:
|
|
131
|
+
* - If `seed` is a number (or a string that parses as an integer), the counter starts at `seed`.
|
|
132
|
+
* - If `seed` is a letter (`'a'`–`'z'`), the counter starts at that letter.
|
|
133
|
+
* - If `seed` is `null` (default), the counter starts at `1`.
|
|
134
|
+
*
|
|
135
|
+
* @param {string} name - Counter name (document-scoped key).
|
|
136
|
+
* @param {string|number|null} [seed=null] - Starting value for new counters.
|
|
137
|
+
* @returns {string|number} The new counter value after incrementing.
|
|
138
|
+
*
|
|
139
|
+
* @example <caption>Numeric counter (auto-starts at 1)</caption>
|
|
140
|
+
* doc.counter('figure-number') // → 1
|
|
141
|
+
* doc.counter('figure-number') // → 2
|
|
142
|
+
*
|
|
143
|
+
* @example <caption>Alphabetic counter</caption>
|
|
144
|
+
* doc.counter('appendix-number', 'A') // → 'A'
|
|
145
|
+
* doc.counter('appendix-number', 'A') // → 'B'
|
|
146
|
+
*
|
|
147
|
+
* @example <caption>Numeric counter with custom start</caption>
|
|
148
|
+
* doc.counter('example-number', 5) // → 5
|
|
149
|
+
* doc.counter('example-number', 5) // → 6
|
|
150
|
+
*/
|
|
151
|
+
counter(name: string, seed?: string | number | null): string | number;
|
|
152
|
+
/**
|
|
153
|
+
* Increment the specified counter and store it in the block's attributes.
|
|
154
|
+
* @param {string} counterName
|
|
155
|
+
* @param {Object} block
|
|
156
|
+
* @returns {string|number} The new counter value.
|
|
157
|
+
*/
|
|
158
|
+
incrementAndStoreCounter(counterName: string, block: any): string | number;
|
|
159
|
+
/** @deprecated Use incrementAndStoreCounter instead. */
|
|
160
|
+
counterIncrement(counterName: any, block: any): string | number;
|
|
161
|
+
/**
|
|
162
|
+
* Register a reference in the document catalog.
|
|
163
|
+
* @param {string} type - Catalog type ('ids', 'refs', 'footnotes', 'links', 'images', 'callouts').
|
|
164
|
+
* @param {*} value - The value to register.
|
|
165
|
+
*/
|
|
166
|
+
register(type: string, value: any): boolean | Inline;
|
|
167
|
+
/**
|
|
168
|
+
* Find the first registered reference matching the given reftext.
|
|
169
|
+
* @param {string} text - The reftext to look up.
|
|
170
|
+
* @returns {string|null} The matching ID, or null.
|
|
171
|
+
*/
|
|
172
|
+
resolveId(text: string): string | null;
|
|
173
|
+
isMultipart(): boolean;
|
|
174
|
+
hasFootnotes(): boolean;
|
|
175
|
+
get footnotes(): any;
|
|
176
|
+
get callouts(): any;
|
|
177
|
+
isNested(): boolean;
|
|
178
|
+
isEmbedded(): boolean;
|
|
179
|
+
hasExtensions(): boolean;
|
|
180
|
+
source(): string;
|
|
181
|
+
sourceLines(): string[];
|
|
182
|
+
basebackend(base: any): boolean;
|
|
183
|
+
/**
|
|
184
|
+
* Resolve the primary title for the document.
|
|
185
|
+
* @param {Object} [opts={}]
|
|
186
|
+
* @param {boolean} [opts.use_fallback] - Use 'untitled-label' if no title found.
|
|
187
|
+
* @param {boolean|string} [opts.partition] - Return a DocumentTitle instead of a string.
|
|
188
|
+
* @param {boolean} [opts.sanitize] - Strip XML tags from the title.
|
|
189
|
+
* @returns {string|DocumentTitle|null}
|
|
190
|
+
*/
|
|
191
|
+
doctitle(opts?: {
|
|
192
|
+
use_fallback?: boolean;
|
|
193
|
+
partition?: boolean | string;
|
|
194
|
+
sanitize?: boolean;
|
|
195
|
+
}): string | DocumentTitle | null;
|
|
196
|
+
get name(): string | DocumentTitle;
|
|
197
|
+
get author(): any;
|
|
198
|
+
get revdate(): any;
|
|
199
|
+
authors(): Author[];
|
|
200
|
+
isNotitle(): boolean;
|
|
201
|
+
isNoheader(): boolean;
|
|
202
|
+
isNofooter(): boolean;
|
|
203
|
+
firstSection(): AbstractBlock<string>;
|
|
204
|
+
hasHeader(): boolean;
|
|
205
|
+
/**
|
|
206
|
+
* Append a child Block, assigning index if it's a section.
|
|
207
|
+
* @param {Object} block
|
|
208
|
+
* @returns {Object} The appended block.
|
|
209
|
+
*/
|
|
210
|
+
append(block: any): any;
|
|
211
|
+
/**
|
|
212
|
+
* @private
|
|
213
|
+
* Called by parser after parsing header, before parsing body.
|
|
214
|
+
*/
|
|
215
|
+
private finalizeHeader;
|
|
216
|
+
/**
|
|
217
|
+
* Replay attribute assignments from block attributes.
|
|
218
|
+
* @param {Object} blockAttributes
|
|
219
|
+
*/
|
|
220
|
+
playbackAttributes(blockAttributes: any): void;
|
|
221
|
+
/**
|
|
222
|
+
* Set the specified attribute if not locked, applying attribute value substitutions.
|
|
223
|
+
* @param {string} name
|
|
224
|
+
* @param {string} [value='']
|
|
225
|
+
* @returns {string|null} The substituted value, or `null` if the attribute is locked.
|
|
226
|
+
*/
|
|
227
|
+
setAttribute(name: string, value?: string): string | null;
|
|
228
|
+
/**
|
|
229
|
+
* Delete the specified attribute if not locked.
|
|
230
|
+
* @param {string} name
|
|
231
|
+
* @returns {boolean} True if deleted, false if locked.
|
|
232
|
+
*/
|
|
233
|
+
deleteAttribute(name: string): boolean;
|
|
234
|
+
/**
|
|
235
|
+
* Check if the attribute is locked (set via attribute overrides).
|
|
236
|
+
* @param {string} name
|
|
237
|
+
* @returns {boolean}
|
|
238
|
+
*/
|
|
239
|
+
isAttributeLocked(name: string): boolean;
|
|
240
|
+
/** @deprecated Use isAttributeLocked instead. */
|
|
241
|
+
attributeLocked(name: any): boolean;
|
|
242
|
+
/**
|
|
243
|
+
* Assign a value to the specified attribute in the document header.
|
|
244
|
+
* @param {string} name
|
|
245
|
+
* @param {string} [value='']
|
|
246
|
+
* @param {boolean} [overwrite=true]
|
|
247
|
+
* @returns {boolean} False if the attribute exists and overwrite is false.
|
|
248
|
+
*/
|
|
249
|
+
setHeaderAttribute(name: string, value?: string, overwrite?: boolean): boolean;
|
|
250
|
+
/**
|
|
251
|
+
* Convert the parsed document to its output format (HTML5 by default).
|
|
252
|
+
*
|
|
253
|
+
* If `parse()` has not been called yet, it is called automatically.
|
|
254
|
+
*
|
|
255
|
+
* @param {Object} [opts={}] - Conversion options.
|
|
256
|
+
* @param {boolean} [opts.standalone] - When `true`, wraps output in a full
|
|
257
|
+
* document shell (html/head/body). Defaults to the `standalone` option
|
|
258
|
+
* passed at load time (which itself defaults to `true`).
|
|
259
|
+
* @param {string} [opts.outfile] - Path of the output file; stored as the
|
|
260
|
+
* `outfile` document attribute during conversion.
|
|
261
|
+
* @param {string} [opts.outdir] - Directory of the output file; stored as the
|
|
262
|
+
* `outdir` document attribute during conversion.
|
|
263
|
+
* @returns {Promise<string>} The converted output string.
|
|
264
|
+
*
|
|
265
|
+
* @example <caption>Embedded HTML (no html/head/body wrapper)</caption>
|
|
266
|
+
* const doc = await Document.create('= Hello\nWorld', {})
|
|
267
|
+
* const html = await doc.convert({ standalone: false })
|
|
268
|
+
*
|
|
269
|
+
* @example <caption>Full standalone HTML page</caption>
|
|
270
|
+
* const html = await doc.convert({ standalone: true })
|
|
271
|
+
*/
|
|
272
|
+
convert(opts?: {
|
|
273
|
+
standalone?: boolean;
|
|
274
|
+
outfile?: string;
|
|
275
|
+
outdir?: string;
|
|
276
|
+
}): Promise<string>;
|
|
277
|
+
/** @deprecated Use convert instead. */
|
|
278
|
+
render(opts?: {}): Promise<string>;
|
|
279
|
+
/**
|
|
280
|
+
* Write converted output to a file path or a writable stream.
|
|
281
|
+
*
|
|
282
|
+
* When `target` is a **string**, the output is written to that file path using
|
|
283
|
+
* `node:fs/promises.writeFile`.
|
|
284
|
+
* When `target` is a **writable stream** (has a `.write()` method), the output
|
|
285
|
+
* is written to the stream in two chunks (content + newline).
|
|
286
|
+
* When the converter itself implements `write()`, that method is called instead.
|
|
287
|
+
*
|
|
288
|
+
* @param {string} output - The converted output string returned by {@link convert}.
|
|
289
|
+
* @param {string|import('stream').Writable} target - File path or writable stream.
|
|
290
|
+
* @returns {Promise<void>}
|
|
291
|
+
*
|
|
292
|
+
* @example <caption>Write to a file</caption>
|
|
293
|
+
* const output = await doc.convert()
|
|
294
|
+
* await doc.write(output, 'out/index.html')
|
|
295
|
+
*
|
|
296
|
+
* @example <caption>Write to a stream</caption>
|
|
297
|
+
* await doc.write(output, process.stdout)
|
|
298
|
+
*/
|
|
299
|
+
write(output: string, target: string | any): Promise<void>;
|
|
300
|
+
/**
|
|
301
|
+
* Read the docinfo file(s) for inclusion in the document template.
|
|
302
|
+
* @param {string} [location='head'] - 'head' or 'footer'.
|
|
303
|
+
* @param {string|null} [suffix=null] - File suffix override.
|
|
304
|
+
* @returns {Promise<string>} Combined docinfo content.
|
|
305
|
+
*/
|
|
306
|
+
docinfo(location?: string, suffix?: string | null): Promise<string>;
|
|
307
|
+
/**
|
|
308
|
+
* @param {string} [location='head'] A location for checking docinfo extensions at a given location (head or footer).
|
|
309
|
+
* @returns {boolean} True if docinfo processors are registered for the given location.
|
|
310
|
+
*/
|
|
311
|
+
hasDocinfoProcessors(location?: string): boolean;
|
|
312
|
+
/**
|
|
313
|
+
* @deprecated Use {@link getDocumentTitle} instead.
|
|
314
|
+
* @see getDocumentTitle
|
|
315
|
+
*/
|
|
316
|
+
getDoctitle(opts?: {}): string | DocumentTitle;
|
|
317
|
+
/**
|
|
318
|
+
* Resolve the primary title for the document.
|
|
319
|
+
*
|
|
320
|
+
* Searches the following locations in order, returning the first non-empty value:
|
|
321
|
+
* - document-level attribute named `title`
|
|
322
|
+
* - header title (the document title)
|
|
323
|
+
* - title of the first section
|
|
324
|
+
* - document-level attribute named `untitled-label` (if `opts.use_fallback` is set)
|
|
325
|
+
*
|
|
326
|
+
* If no value can be resolved, `null` is returned.
|
|
327
|
+
*
|
|
328
|
+
* If `opts.partition` is specified, the value is parsed into a {@link DocumentTitle} object.
|
|
329
|
+
* If `opts.sanitize` is specified, XML elements are removed from the value.
|
|
330
|
+
* @param {Object} [opts={}]
|
|
331
|
+
* @param {boolean} [opts.partition] - Parse the title into a {@link DocumentTitle} with main and subtitle parts.
|
|
332
|
+
* @param {boolean} [opts.sanitize] - Strip XML/HTML elements from the resolved title.
|
|
333
|
+
* @param {boolean} [opts.use_fallback] - Fall back to the `untitled-label` attribute if no title is found.
|
|
334
|
+
* @returns {string|DocumentTitle|null} The resolved title, or null if none found.
|
|
335
|
+
*/
|
|
336
|
+
getDocumentTitle(opts?: {
|
|
337
|
+
partition?: boolean;
|
|
338
|
+
sanitize?: boolean;
|
|
339
|
+
use_fallback?: boolean;
|
|
340
|
+
}): string | DocumentTitle | null;
|
|
341
|
+
/** @returns {string} The document type (e.g. 'article', 'book'). */
|
|
342
|
+
getDoctype(): string;
|
|
343
|
+
/** @returns {string} The backend name (e.g. 'html5', 'docbook5'). */
|
|
344
|
+
getBackend(): string;
|
|
345
|
+
/**
|
|
346
|
+
* @returns {number} The safe mode level as a numeric value.
|
|
347
|
+
* Corresponds to {@link SafeMode}: unsafe (0), safe (1), server (10), secure (20).
|
|
348
|
+
*/
|
|
349
|
+
getSafe(): number;
|
|
350
|
+
/**
|
|
351
|
+
* Get the AsciiDoc compatibility mode flag.
|
|
352
|
+
*
|
|
353
|
+
* Enabling this attribute activates the following syntax changes:
|
|
354
|
+
* - single quotes as constrained emphasis formatting marks
|
|
355
|
+
* - single backticks parsed as inline literal, formatted as monospace
|
|
356
|
+
* - single plus parsed as constrained, monospaced inline formatting
|
|
357
|
+
* - double plus parsed as constrained, monospaced inline formatting
|
|
358
|
+
* @returns {boolean} True if compat mode is enabled.
|
|
359
|
+
*/
|
|
360
|
+
getCompatMode(): boolean;
|
|
361
|
+
/** @returns {boolean} True if sourcemap is enabled. */
|
|
362
|
+
getSourcemap(): boolean;
|
|
363
|
+
/** @param {boolean} val */
|
|
364
|
+
setSourcemap(val: boolean): void;
|
|
365
|
+
/** @returns {string} The output file suffix (e.g. '.html'). */
|
|
366
|
+
getOutfilesuffix(): string;
|
|
367
|
+
/** @returns {Object} The frozen options object. */
|
|
368
|
+
getOptions(): any;
|
|
369
|
+
/**
|
|
370
|
+
* Set the converter instance for this document.
|
|
371
|
+
* @param {Object} converter - The converter instance.
|
|
372
|
+
*/
|
|
373
|
+
setConverter(converter: any): void;
|
|
374
|
+
/** @returns {string|null} The raw AsciiDoc source. */
|
|
375
|
+
getSource(): string | null;
|
|
376
|
+
/** @returns {string[]|null} The source lines. */
|
|
377
|
+
getSourceLines(): string[] | null;
|
|
378
|
+
/** @returns {Object} The preprocessor reader. */
|
|
379
|
+
getReader(): any;
|
|
380
|
+
/** @returns {Footnote[]} The registered footnotes. */
|
|
381
|
+
getFootnotes(): Footnote[];
|
|
382
|
+
/** @returns {Object} The callouts registry. */
|
|
383
|
+
getCallouts(): any;
|
|
384
|
+
/** @returns {Object} The asset catalog. */
|
|
385
|
+
getCatalog(): any;
|
|
386
|
+
/** @returns {Object} The counters map. */
|
|
387
|
+
getCounters(): any;
|
|
388
|
+
/** @returns {string|null} The first author name. */
|
|
389
|
+
getAuthor(): string | null;
|
|
390
|
+
/** @returns {Author[]} All document authors. */
|
|
391
|
+
getAuthors(): Author[];
|
|
392
|
+
/** @returns {string} The base directory path. */
|
|
393
|
+
getBaseDir(): string;
|
|
394
|
+
/** @returns {RevisionInfo} The revision information. */
|
|
395
|
+
getRevisionInfo(): RevisionInfo;
|
|
396
|
+
/** @returns {Object|null} The extensions registry. */
|
|
397
|
+
getExtensions(): any | null;
|
|
398
|
+
/** @returns {Document|undefined} The parent document, or undefined for root documents. */
|
|
399
|
+
getParentDocument(): Document | undefined;
|
|
400
|
+
/**
|
|
401
|
+
* Get the parent node of this node.
|
|
402
|
+
* Always returns undefined for a root Document (Document is its own internal parent).
|
|
403
|
+
* @returns {undefined}
|
|
404
|
+
*/
|
|
405
|
+
getParent(): undefined;
|
|
406
|
+
/** @returns {Object|null} The syntax highlighter instance. */
|
|
407
|
+
getSyntaxHighlighter(): any | null;
|
|
408
|
+
/** @returns {Object} The id→node reference map. */
|
|
409
|
+
getRefs(): any;
|
|
410
|
+
/** @returns {ImageReference[]} The registered image references. */
|
|
411
|
+
getImages(): ImageReference[];
|
|
412
|
+
/** @returns {string[]} The registered links. */
|
|
413
|
+
getLinks(): string[];
|
|
414
|
+
/** @returns {Object|null} The level-0 Section (document header). */
|
|
415
|
+
getHeader(): any | null;
|
|
416
|
+
/** @returns {boolean} True if the basebackend attribute is set. */
|
|
417
|
+
isBasebackend(): boolean;
|
|
418
|
+
/** @returns {Object} The asset catalog (alias for getCatalog). */
|
|
419
|
+
getReferences(): any;
|
|
420
|
+
/** @returns {string|undefined} The revision date. */
|
|
421
|
+
getRevisionDate(): string | undefined;
|
|
422
|
+
/** @returns {string|undefined} The revision date (alias for getRevisionDate). */
|
|
423
|
+
getRevdate(): string | undefined;
|
|
424
|
+
/** @returns {string|undefined} The revision number. */
|
|
425
|
+
getRevisionNumber(): string | undefined;
|
|
426
|
+
/** @returns {string|undefined} The revision remark. */
|
|
427
|
+
getRevisionRemark(): string | undefined;
|
|
428
|
+
/** @returns {boolean} True if any revision info is set. */
|
|
429
|
+
hasRevisionInfo(): boolean;
|
|
430
|
+
/** @returns {boolean} True if the notitle attribute is set. */
|
|
431
|
+
getNotitle(): boolean;
|
|
432
|
+
/** @returns {boolean} True if the noheader attribute is set. */
|
|
433
|
+
getNoheader(): boolean;
|
|
434
|
+
/** @returns {boolean} True if the nofooter attribute is set. */
|
|
435
|
+
getNofooter(): boolean;
|
|
436
|
+
/** Restore attributes to their saved header state. */
|
|
437
|
+
restoreAttributes(): void;
|
|
438
|
+
/**
|
|
439
|
+
* @param {string} [location='head']
|
|
440
|
+
* @param {string} [suffix]
|
|
441
|
+
* @returns {Promise<string>}
|
|
442
|
+
*/
|
|
443
|
+
getDocinfo(location?: string, suffix?: string): Promise<string>;
|
|
444
|
+
/**
|
|
445
|
+
* Delete the specified attribute if not locked.
|
|
446
|
+
* @param {string} name - The attribute name to remove.
|
|
447
|
+
* @returns {string|undefined} The previous value, or undefined if not present or locked.
|
|
448
|
+
*/
|
|
449
|
+
removeAttribute(name: string): string | undefined;
|
|
450
|
+
/**
|
|
451
|
+
* @private
|
|
452
|
+
* Sync version: applies only synchronous subs (specialcharacters, attributes, replacements).
|
|
453
|
+
* Used by setAttribute() which must remain sync for the {set:...} inline directive path.
|
|
454
|
+
* Async subs (quotes, macros, …) in pass macros are handled by _applyAttributeEntryValueSubs.
|
|
455
|
+
*/
|
|
456
|
+
private _applyAttributeValueSubs;
|
|
457
|
+
/**
|
|
458
|
+
* @private
|
|
459
|
+
* Async version: applies all subs including async ones (quotes, macros, …).
|
|
460
|
+
* Used by processAttributeEntry() which can await the result.
|
|
461
|
+
*/
|
|
462
|
+
private _applyAttributeEntryValueSubs;
|
|
463
|
+
/**
|
|
464
|
+
* @private
|
|
465
|
+
* Resolve the list of substitutions to apply to docinfo files.
|
|
466
|
+
*
|
|
467
|
+
* Resolves subs from the `docinfosubs` document attribute if present,
|
|
468
|
+
* otherwise returns `['attributes']` as the default.
|
|
469
|
+
* @returns {string[]} The list of substitutions to apply.
|
|
470
|
+
*/
|
|
471
|
+
private _resolveDocinfoSubs;
|
|
472
|
+
/**
|
|
473
|
+
* @private
|
|
474
|
+
* Walk the block tree and pre-compute all async text values.
|
|
475
|
+
* Handles titles (AbstractBlock), list item text, table cell text, and reftexts.
|
|
476
|
+
*/
|
|
477
|
+
private _resolveAllTexts;
|
|
478
|
+
/**
|
|
479
|
+
* @private
|
|
480
|
+
* Create and initialize an instance of the converter for this document.
|
|
481
|
+
* @param {string} backend - The backend name (e.g. 'html5', 'docbook5').
|
|
482
|
+
* @param {string} [delegateBackend] - An optional delegate backend to use when resolving the converter.
|
|
483
|
+
*/
|
|
484
|
+
private _createConverter;
|
|
485
|
+
}
|
|
486
|
+
export namespace Document {
|
|
487
|
+
export { Footnote };
|
|
488
|
+
}
|
|
489
|
+
import { Footnote } from './footnote.js';
|
|
490
|
+
import { AttributeEntry } from './attribute_entry.js';
|
|
491
|
+
import { AbstractBlock } from './abstract_block.js';
|
|
492
|
+
import type { Reader } from './reader.js';
|
|
493
|
+
import { Section } from './section.js';
|
|
494
|
+
import { Inline } from './inline.js';
|
|
495
|
+
export { Footnote, AttributeEntry };
|