@baiyibai-antora/extensions 1.13.0 → 1.14.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.adoc +18 -0
- package/README.adoc +17 -1
- package/dist/extensions/attribute-distiller/index.d.ts +6 -0
- package/dist/extensions/attribute-distiller/index.d.ts.map +1 -1
- package/dist/extensions/attribute-distiller/index.js +92 -16
- package/dist/extensions/attribute-distiller/index.js.map +1 -1
- package/dist/extensions/autoterm/index.d.ts +29 -18
- package/dist/extensions/autoterm/index.d.ts.map +1 -1
- package/dist/extensions/autoterm/index.js +37 -197
- package/dist/extensions/autoterm/index.js.map +1 -1
- package/dist/extensions/cite-it/asciidoc.d.ts +29 -0
- package/dist/extensions/cite-it/asciidoc.d.ts.map +1 -0
- package/dist/extensions/cite-it/asciidoc.js +32 -0
- package/dist/extensions/cite-it/asciidoc.js.map +1 -0
- package/dist/extensions/cite-it/assembly-numbering.d.ts +202 -0
- package/dist/extensions/cite-it/assembly-numbering.d.ts.map +1 -0
- package/dist/extensions/cite-it/assembly-numbering.js +385 -0
- package/dist/extensions/cite-it/assembly-numbering.js.map +1 -0
- package/dist/extensions/cite-it/csl.d.ts +45 -0
- package/dist/extensions/cite-it/csl.d.ts.map +1 -0
- package/dist/extensions/cite-it/csl.js +139 -0
- package/dist/extensions/cite-it/csl.js.map +1 -0
- package/dist/extensions/cite-it/index.d.ts +300 -0
- package/dist/extensions/cite-it/index.d.ts.map +1 -0
- package/dist/extensions/cite-it/index.js +1098 -0
- package/dist/extensions/cite-it/index.js.map +1 -0
- package/dist/extensions/cite-it/macro.d.ts +104 -0
- package/dist/extensions/cite-it/macro.d.ts.map +1 -0
- package/dist/extensions/cite-it/macro.js +245 -0
- package/dist/extensions/cite-it/macro.js.map +1 -0
- package/dist/extensions/cite-it/registry.d.ts +64 -0
- package/dist/extensions/cite-it/registry.d.ts.map +1 -0
- package/dist/extensions/cite-it/registry.js +157 -0
- package/dist/extensions/cite-it/registry.js.map +1 -0
- package/dist/extensions/trademark-it/index.d.ts +91 -22
- package/dist/extensions/trademark-it/index.d.ts.map +1 -1
- package/dist/extensions/trademark-it/index.js +239 -242
- package/dist/extensions/trademark-it/index.js.map +1 -1
- package/dist/lib/asciidoc-conditionals.d.ts +59 -0
- package/dist/lib/asciidoc-conditionals.d.ts.map +1 -0
- package/dist/lib/asciidoc-conditionals.js +0 -0
- package/dist/lib/asciidoc-conditionals.js.map +1 -0
- package/dist/lib/asciidoc-indexterms.d.ts +126 -0
- package/dist/lib/asciidoc-indexterms.d.ts.map +1 -0
- package/dist/lib/asciidoc-indexterms.js +261 -0
- package/dist/lib/asciidoc-indexterms.js.map +1 -0
- package/dist/lib/asciidoc-table.d.ts +32 -0
- package/dist/lib/asciidoc-table.d.ts.map +1 -0
- package/dist/lib/asciidoc-table.js +55 -0
- package/dist/lib/asciidoc-table.js.map +1 -0
- package/package.json +19 -4
- package/resources/cite-it/ieee-bracket.csl +519 -0
- package/resources/cite-it/locale-en-US.xml +864 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensions/cite-it/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* cite-it: the `citeit:[key]` inline macro and its shared registry cache.
|
|
3
|
+
*
|
|
4
|
+
* One registration function serves two purposes:
|
|
5
|
+
*
|
|
6
|
+
* - Scan mode (`opts.scanSink` given): records the cited key into the
|
|
7
|
+
* provided Set and renders nothing. Used by the Antora-side extension
|
|
8
|
+
* (index.ts) at `contentClassified` time, via `scanCiteKeys` below, to
|
|
9
|
+
* learn which keys a page actually cites, through a real Asciidoctor
|
|
10
|
+
* conversion rather than a hand-rolled regex scan of `citeit:[key]`
|
|
11
|
+
* occurrences, matching this codebase's "favor the API over regex"
|
|
12
|
+
* rule (root CLAUDE.md).
|
|
13
|
+
* - Render mode (no `scanSink`): the real macro, registered as this
|
|
14
|
+
* package's `asciidoc.extensions` entry point (asciidoc.ts), used for
|
|
15
|
+
* actual page conversion, both ordinary per-page HTML and Antora
|
|
16
|
+
* Assembler-flattened PDF.
|
|
17
|
+
*
|
|
18
|
+
* Numbering is a PDF/assembled-output-only concept.
|
|
19
|
+
* `doc.hasAttribute('loader-assembler')` discriminates assembled
|
|
20
|
+
* conversion from ordinary per-page HTML, the same intrinsic attribute
|
|
21
|
+
* `assemble-content.js` sets and autoterm's own generated partials already
|
|
22
|
+
* guard PDF-only content with. Numbering state lives on the `Document`
|
|
23
|
+
* instance itself (`doc.__citeCounters`), assigned on first encounter in
|
|
24
|
+
* natural document order, and needs no manual reset: Asciidoctor creates a
|
|
25
|
+
* fresh Document per conversion.
|
|
26
|
+
*
|
|
27
|
+
* Registry access: the Antora-side extension computes the merged `.bib`
|
|
28
|
+
* registry per component-version before any page converts (contentClassified
|
|
29
|
+
* runs before conversion, the same lifecycle guarantee autoterm/trademark-it
|
|
30
|
+
* already rely on) and stores it in `citeCache`, a module-level Map. Node's
|
|
31
|
+
* module cache means requiring this file from both index.ts (writer, at
|
|
32
|
+
* contentClassified) and asciidoc.ts (reader, at conversion time) yields the
|
|
33
|
+
* same module instance and the same Map, so no IPC or serialization is
|
|
34
|
+
* needed, since both run in the same Antora build process.
|
|
35
|
+
*/
|
|
36
|
+
import type { CslJsonItem } from './registry';
|
|
37
|
+
declare const processor: import("@asciidoctor/core").Asciidoctor;
|
|
38
|
+
type ExtensionRegistry = ReturnType<typeof processor.Extensions.create>;
|
|
39
|
+
export interface ComponentVersionCiteData {
|
|
40
|
+
/** The merged `.bib` registry for this component-version, by citation key. */
|
|
41
|
+
entriesByKey: Map<string, CslJsonItem>;
|
|
42
|
+
/** citeproc-formatted bibliography-entry text, by citation key. */
|
|
43
|
+
formattedByKey: Map<string, string>;
|
|
44
|
+
}
|
|
45
|
+
/** Keyed by `${component}@${version}`. */
|
|
46
|
+
export declare const citeCache: Map<string, ComponentVersionCiteData>;
|
|
47
|
+
/**
|
|
48
|
+
* Citation keys used via `citeit:[key]` directly on a component-version's
|
|
49
|
+
* OWN pages that is NOT scanned at all (explicitly disabled, or no
|
|
50
|
+
* categories anywhere for it to inherit or define), keyed the same way as
|
|
51
|
+
* `citeCache`. There is no opt-in gate to forget: a component-version
|
|
52
|
+
* participates automatically once it has at least one category available
|
|
53
|
+
* (see index.ts's module docblock). Populated by index.ts's own scan of
|
|
54
|
+
* each SKIPPED component-version's raw page content, deliberately without
|
|
55
|
+
* resolving
|
|
56
|
+
* `include::` (a page whose entire content is an `include::` pulling in a
|
|
57
|
+
* genuinely participating component's real output, the demo site's own
|
|
58
|
+
* wrapper-page convention, correctly has nothing here: its own raw text
|
|
59
|
+
* carries no `citeit:[key]` usage at all).
|
|
60
|
+
*
|
|
61
|
+
* Checked below before the cross-component fallback scan, so a genuine
|
|
62
|
+
* misconfiguration renders a clear, distinct message instead of either
|
|
63
|
+
* silently borrowing an unrelated component's data (if the key happens to
|
|
64
|
+
* collide with one a different, participating component defines) or a
|
|
65
|
+
* generic "unknown key" (which reads like a typo, not "this
|
|
66
|
+
* component-version never participated").
|
|
67
|
+
*/
|
|
68
|
+
export declare const orphanedCiteKeys: Map<string, Set<string>>;
|
|
69
|
+
/**
|
|
70
|
+
* The ordinary, non-assembled HTML rendering of a citation: a templated
|
|
71
|
+
* author/year fragment, not a bracket number (numbering is PDF-only, see
|
|
72
|
+
* the module docblock). Falls back to the bare citation key when the entry
|
|
73
|
+
* carries no usable author or year data.
|
|
74
|
+
*/
|
|
75
|
+
export declare function renderHtmlFallback(key: string, entry: CslJsonItem | undefined): string;
|
|
76
|
+
export interface RegisterCiteMacroOptions {
|
|
77
|
+
/** Scan mode when set: records hits here instead of rendering. */
|
|
78
|
+
scanSink?: Set<string>;
|
|
79
|
+
/** Scan mode, additive: records every occurrence, duplicates included, in
|
|
80
|
+
* encounter order. Needed for true first-appearance numbering, since
|
|
81
|
+
* `scanSink`'s deduplication throws away the information of which
|
|
82
|
+
* occurrence came first. */
|
|
83
|
+
orderedSink?: string[];
|
|
84
|
+
}
|
|
85
|
+
export declare function registerCiteMacro(registry: ExtensionRegistry, opts?: RegisterCiteMacroOptions): void;
|
|
86
|
+
/**
|
|
87
|
+
* Which citation keys `text` cites, via a real Asciidoctor conversion with
|
|
88
|
+
* the citeit macro registered in scan mode, rather than a hand-rolled
|
|
89
|
+
* `citeit:[key]` regex (see the module docblock). `text` should already
|
|
90
|
+
* have unsatisfied conditionals and comments stripped by the caller, the
|
|
91
|
+
* same order autoterm/trademark-it already apply before their own content
|
|
92
|
+
* scans, so a `citeit:[key]` example shown inside a comment or an unset
|
|
93
|
+
* `ifdef::` block is not mistaken for a real citation.
|
|
94
|
+
*/
|
|
95
|
+
export declare function scanCiteKeys(text: string): Set<string>;
|
|
96
|
+
/**
|
|
97
|
+
* Every citeit:[key] occurrence in `text`, duplicates included, in true
|
|
98
|
+
* encounter order. The ordered counterpart of `scanCiteKeys`, needed to
|
|
99
|
+
* assign true first-appearance numbers across a sequence of pages, see
|
|
100
|
+
* `assembly-numbering.ts`.
|
|
101
|
+
*/
|
|
102
|
+
export declare function scanCiteKeysOrdered(text: string): string[];
|
|
103
|
+
export {};
|
|
104
|
+
//# sourceMappingURL=macro.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macro.d.ts","sourceRoot":"","sources":["../../../src/extensions/cite-it/macro.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,QAAA,MAAM,SAAS,yCAAuB,CAAC;AAEvC,KAAK,iBAAiB,GAAG,UAAU,CAAC,OAAO,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;AAExE,MAAM,WAAW,wBAAwB;IACvC,8EAA8E;IAC9E,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,mEAAmE;IACnE,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAED,0CAA0C;AAC1C,eAAO,MAAM,SAAS,uCAA8C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,gBAAgB,0BAAiC,CAAC;AA8C/D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAOtF;AAED,MAAM,WAAW,wBAAwB;IACvC,kEAAkE;IAClE,QAAQ,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB;;;gCAG4B;IAC5B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,iBAAiB,EAC3B,IAAI,GAAE,wBAA6B,GAClC,IAAI,CAkFN;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAYtD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAU1D"}
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* cite-it: the `citeit:[key]` inline macro and its shared registry cache.
|
|
4
|
+
*
|
|
5
|
+
* One registration function serves two purposes:
|
|
6
|
+
*
|
|
7
|
+
* - Scan mode (`opts.scanSink` given): records the cited key into the
|
|
8
|
+
* provided Set and renders nothing. Used by the Antora-side extension
|
|
9
|
+
* (index.ts) at `contentClassified` time, via `scanCiteKeys` below, to
|
|
10
|
+
* learn which keys a page actually cites, through a real Asciidoctor
|
|
11
|
+
* conversion rather than a hand-rolled regex scan of `citeit:[key]`
|
|
12
|
+
* occurrences, matching this codebase's "favor the API over regex"
|
|
13
|
+
* rule (root CLAUDE.md).
|
|
14
|
+
* - Render mode (no `scanSink`): the real macro, registered as this
|
|
15
|
+
* package's `asciidoc.extensions` entry point (asciidoc.ts), used for
|
|
16
|
+
* actual page conversion, both ordinary per-page HTML and Antora
|
|
17
|
+
* Assembler-flattened PDF.
|
|
18
|
+
*
|
|
19
|
+
* Numbering is a PDF/assembled-output-only concept.
|
|
20
|
+
* `doc.hasAttribute('loader-assembler')` discriminates assembled
|
|
21
|
+
* conversion from ordinary per-page HTML, the same intrinsic attribute
|
|
22
|
+
* `assemble-content.js` sets and autoterm's own generated partials already
|
|
23
|
+
* guard PDF-only content with. Numbering state lives on the `Document`
|
|
24
|
+
* instance itself (`doc.__citeCounters`), assigned on first encounter in
|
|
25
|
+
* natural document order, and needs no manual reset: Asciidoctor creates a
|
|
26
|
+
* fresh Document per conversion.
|
|
27
|
+
*
|
|
28
|
+
* Registry access: the Antora-side extension computes the merged `.bib`
|
|
29
|
+
* registry per component-version before any page converts (contentClassified
|
|
30
|
+
* runs before conversion, the same lifecycle guarantee autoterm/trademark-it
|
|
31
|
+
* already rely on) and stores it in `citeCache`, a module-level Map. Node's
|
|
32
|
+
* module cache means requiring this file from both index.ts (writer, at
|
|
33
|
+
* contentClassified) and asciidoc.ts (reader, at conversion time) yields the
|
|
34
|
+
* same module instance and the same Map, so no IPC or serialization is
|
|
35
|
+
* needed, since both run in the same Antora build process.
|
|
36
|
+
*/
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
exports.orphanedCiteKeys = exports.citeCache = void 0;
|
|
42
|
+
exports.renderHtmlFallback = renderHtmlFallback;
|
|
43
|
+
exports.registerCiteMacro = registerCiteMacro;
|
|
44
|
+
exports.scanCiteKeys = scanCiteKeys;
|
|
45
|
+
exports.scanCiteKeysOrdered = scanCiteKeysOrdered;
|
|
46
|
+
const core_1 = __importDefault(require("@asciidoctor/core"));
|
|
47
|
+
const processor = (0, core_1.default)();
|
|
48
|
+
/** Keyed by `${component}@${version}`. */
|
|
49
|
+
exports.citeCache = new Map();
|
|
50
|
+
/**
|
|
51
|
+
* Citation keys used via `citeit:[key]` directly on a component-version's
|
|
52
|
+
* OWN pages that is NOT scanned at all (explicitly disabled, or no
|
|
53
|
+
* categories anywhere for it to inherit or define), keyed the same way as
|
|
54
|
+
* `citeCache`. There is no opt-in gate to forget: a component-version
|
|
55
|
+
* participates automatically once it has at least one category available
|
|
56
|
+
* (see index.ts's module docblock). Populated by index.ts's own scan of
|
|
57
|
+
* each SKIPPED component-version's raw page content, deliberately without
|
|
58
|
+
* resolving
|
|
59
|
+
* `include::` (a page whose entire content is an `include::` pulling in a
|
|
60
|
+
* genuinely participating component's real output, the demo site's own
|
|
61
|
+
* wrapper-page convention, correctly has nothing here: its own raw text
|
|
62
|
+
* carries no `citeit:[key]` usage at all).
|
|
63
|
+
*
|
|
64
|
+
* Checked below before the cross-component fallback scan, so a genuine
|
|
65
|
+
* misconfiguration renders a clear, distinct message instead of either
|
|
66
|
+
* silently borrowing an unrelated component's data (if the key happens to
|
|
67
|
+
* collide with one a different, participating component defines) or a
|
|
68
|
+
* generic "unknown key" (which reads like a typo, not "this
|
|
69
|
+
* component-version never participated").
|
|
70
|
+
*/
|
|
71
|
+
exports.orphanedCiteKeys = new Map();
|
|
72
|
+
/**
|
|
73
|
+
* A displayable name per CSL-JSON author entry: `family` for a person,
|
|
74
|
+
* `literal` for an organization or other non-personal author (BibTeX's own
|
|
75
|
+
* double-brace convention, `author = {{W3C}}`, exports this way rather than
|
|
76
|
+
* as `family`; confirmed directly against a real corporate-author entry).
|
|
77
|
+
* Skipping `literal` here silently dropped every organizational author,
|
|
78
|
+
* falling all the way through to the bare citation key, `(svg2, 2018)`
|
|
79
|
+
* instead of `(W3C, 2018)`, a raw internal identifier with no reason to
|
|
80
|
+
* ever reach a reader.
|
|
81
|
+
*/
|
|
82
|
+
function authorDisplayNames(entry) {
|
|
83
|
+
const authors = entry['author'];
|
|
84
|
+
if (!Array.isArray(authors))
|
|
85
|
+
return [];
|
|
86
|
+
return authors
|
|
87
|
+
.map((a) => {
|
|
88
|
+
if (!a || typeof a !== 'object')
|
|
89
|
+
return undefined;
|
|
90
|
+
const rec = a;
|
|
91
|
+
return typeof rec['family'] === 'string' ? rec['family']
|
|
92
|
+
: typeof rec['literal'] === 'string' ? rec['literal']
|
|
93
|
+
: undefined;
|
|
94
|
+
})
|
|
95
|
+
.filter((f) => typeof f === 'string' && f.length > 0);
|
|
96
|
+
}
|
|
97
|
+
function issuedYear(entry) {
|
|
98
|
+
const issued = entry['issued'];
|
|
99
|
+
if (!issued || typeof issued !== 'object')
|
|
100
|
+
return null;
|
|
101
|
+
const dateParts = issued['date-parts'];
|
|
102
|
+
if (!Array.isArray(dateParts) || !Array.isArray(dateParts[0]))
|
|
103
|
+
return null;
|
|
104
|
+
const year = dateParts[0][0];
|
|
105
|
+
return year === undefined || year === null ? null : String(year);
|
|
106
|
+
}
|
|
107
|
+
// Every space inside the parenthetical is a non-breaking space (U+00A0),
|
|
108
|
+
// not a plain one: an ordinary space lets a browser wrap the fragment mid-
|
|
109
|
+
// citation, "(W3C," on one line and "2018)" on the next, confirmed live
|
|
110
|
+
// against the real rendered page. A citation is one visual unit; it never
|
|
111
|
+
// has a reason to break internally.
|
|
112
|
+
const NBSP = ' ';
|
|
113
|
+
/**
|
|
114
|
+
* The ordinary, non-assembled HTML rendering of a citation: a templated
|
|
115
|
+
* author/year fragment, not a bracket number (numbering is PDF-only, see
|
|
116
|
+
* the module docblock). Falls back to the bare citation key when the entry
|
|
117
|
+
* carries no usable author or year data.
|
|
118
|
+
*/
|
|
119
|
+
function renderHtmlFallback(key, entry) {
|
|
120
|
+
if (!entry)
|
|
121
|
+
return `(${key})`;
|
|
122
|
+
const names = authorDisplayNames(entry);
|
|
123
|
+
const year = issuedYear(entry);
|
|
124
|
+
if (names.length === 0)
|
|
125
|
+
return year ? `(${key},${NBSP}${year})` : `(${key})`;
|
|
126
|
+
const authorPart = names.length === 1 ? names[0] : `${names[0]}${NBSP}et${NBSP}al.`;
|
|
127
|
+
return year ? `(${authorPart},${NBSP}${year})` : `(${authorPart})`;
|
|
128
|
+
}
|
|
129
|
+
function registerCiteMacro(registry, opts = {}) {
|
|
130
|
+
registry.inlineMacro('citeit', function () {
|
|
131
|
+
this.matchFormat('short');
|
|
132
|
+
// Asciidoctor.js's shipped .d.ts splits inline-macro registration
|
|
133
|
+
// (InlineMacroProcessorDsl, matchFormat/process) from the real
|
|
134
|
+
// per-invocation processor (InlineMacroProcessor, createInline) as two
|
|
135
|
+
// distinct types, but the real Opal-bridged runtime object provides
|
|
136
|
+
// both dynamically on the same `this`. `createInline` is cast through
|
|
137
|
+
// `any` at each call below for that reason: the actual runtime
|
|
138
|
+
// contract, not the over-split declared type.
|
|
139
|
+
this.process((parent, target) => {
|
|
140
|
+
if (opts.scanSink || opts.orderedSink) {
|
|
141
|
+
opts.scanSink?.add(target);
|
|
142
|
+
opts.orderedSink?.push(target);
|
|
143
|
+
return this.createInline(parent, 'quoted', '');
|
|
144
|
+
}
|
|
145
|
+
const doc = parent.getDocument();
|
|
146
|
+
const componentName = doc.getAttribute('page-component-name');
|
|
147
|
+
const componentVersion = doc.getAttribute('page-version');
|
|
148
|
+
let data = exports.citeCache.get(`${componentName}@${componentVersion}`);
|
|
149
|
+
let entry = data?.entriesByKey.get(target);
|
|
150
|
+
// page-component-name/page-version identify the CONVERTING document,
|
|
151
|
+
// not necessarily the page the citeit:[key] usage was actually
|
|
152
|
+
// written in: when a page is pulled into a different component via
|
|
153
|
+
// include:: (as every extension's own demo-site wrapper page does,
|
|
154
|
+
// for example), Antora's real page-component-name attributes track
|
|
155
|
+
// the OUTER, including document, not the source file's own
|
|
156
|
+
// component.
|
|
157
|
+
//
|
|
158
|
+
// orphanedCiteKeys is checked FIRST, before that recovery, precisely
|
|
159
|
+
// to keep the two cases apart: a citeit:[key] usage on a page the
|
|
160
|
+
// converting component-version genuinely owns, when that
|
|
161
|
+
// component-version is not scanned at all (disabled, or no
|
|
162
|
+
// categories anywhere), is a real misconfiguration and must say so
|
|
163
|
+
// plainly, not silently succeed by coincidentally matching a key
|
|
164
|
+
// some unrelated component happens to also define.
|
|
165
|
+
if (!entry) {
|
|
166
|
+
const compKey = `${componentName}@${componentVersion}`;
|
|
167
|
+
if (exports.orphanedCiteKeys.get(compKey)?.has(target)) {
|
|
168
|
+
doc.getLogger().warn(`cite-it: citeit:[${target}] used directly in ${compKey}, which is not scanned (disabled, or no categories); this citation cannot resolve regardless of the playbook-level configuration`);
|
|
169
|
+
return this.createInline(parent, 'quoted', `[cite-it: ${compKey} is not scanned by cite-it]`);
|
|
170
|
+
}
|
|
171
|
+
// Falling back to a scan across every participating
|
|
172
|
+
// component-version's own cache is a pragmatic recovery for the
|
|
173
|
+
// include:: case above, not a design endorsement of citing across
|
|
174
|
+
// components routinely: a key genuinely unique across all of them
|
|
175
|
+
// (the normal case) still resolves correctly either way.
|
|
176
|
+
for (const candidate of exports.citeCache.values()) {
|
|
177
|
+
const found = candidate.entriesByKey.get(target);
|
|
178
|
+
if (found) {
|
|
179
|
+
data = candidate;
|
|
180
|
+
entry = found;
|
|
181
|
+
break;
|
|
182
|
+
}
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
if (!entry) {
|
|
186
|
+
doc.getLogger().warn(`cite-it: unknown citation key "${target}"`);
|
|
187
|
+
return this.createInline(parent, 'quoted', `[cite-it: unknown key "${target}"]`);
|
|
188
|
+
}
|
|
189
|
+
const isAssembled = doc.hasAttribute('loader-assembler');
|
|
190
|
+
let text;
|
|
191
|
+
if (isAssembled) {
|
|
192
|
+
const withCounters = doc;
|
|
193
|
+
const counters = withCounters.__citeCounters ?? new Map();
|
|
194
|
+
withCounters.__citeCounters = counters;
|
|
195
|
+
if (!counters.has(target))
|
|
196
|
+
counters.set(target, counters.size + 1);
|
|
197
|
+
text = `[${counters.get(target)}]`;
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
text = renderHtmlFallback(target, entry);
|
|
201
|
+
}
|
|
202
|
+
return this.createInline(parent, 'quoted', text);
|
|
203
|
+
});
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* Which citation keys `text` cites, via a real Asciidoctor conversion with
|
|
208
|
+
* the citeit macro registered in scan mode, rather than a hand-rolled
|
|
209
|
+
* `citeit:[key]` regex (see the module docblock). `text` should already
|
|
210
|
+
* have unsatisfied conditionals and comments stripped by the caller, the
|
|
211
|
+
* same order autoterm/trademark-it already apply before their own content
|
|
212
|
+
* scans, so a `citeit:[key]` example shown inside a comment or an unset
|
|
213
|
+
* `ifdef::` block is not mistaken for a real citation.
|
|
214
|
+
*/
|
|
215
|
+
function scanCiteKeys(text) {
|
|
216
|
+
const hits = new Set();
|
|
217
|
+
const registry = processor.Extensions.create();
|
|
218
|
+
registerCiteMacro(registry, { scanSink: hits });
|
|
219
|
+
// safe: 'secure' disables Asciidoctor's own include:: processing rather
|
|
220
|
+
// than letting it attempt (and fail) to resolve a real Antora resource
|
|
221
|
+
// ID like partial$name.adoc as a filesystem path. The caller resolves
|
|
222
|
+
// and appends included content separately (see index.ts's use of
|
|
223
|
+
// collectIncludeText); this conversion only needs to scan the resulting
|
|
224
|
+
// text for citeit:[key] usage, not follow includes itself.
|
|
225
|
+
processor.convert(text, { safe: 'secure', extension_registry: registry });
|
|
226
|
+
return hits;
|
|
227
|
+
}
|
|
228
|
+
/**
|
|
229
|
+
* Every citeit:[key] occurrence in `text`, duplicates included, in true
|
|
230
|
+
* encounter order. The ordered counterpart of `scanCiteKeys`, needed to
|
|
231
|
+
* assign true first-appearance numbers across a sequence of pages, see
|
|
232
|
+
* `assembly-numbering.ts`.
|
|
233
|
+
*/
|
|
234
|
+
function scanCiteKeysOrdered(text) {
|
|
235
|
+
const hits = [];
|
|
236
|
+
const registry = processor.Extensions.create();
|
|
237
|
+
registerCiteMacro(registry, { orderedSink: hits });
|
|
238
|
+
// See scanCiteKeys above: safe: 'secure' avoids a spurious "include file
|
|
239
|
+
// not found" error when the scanned text still carries a literal
|
|
240
|
+
// include::partial$...[] directive whose content was already resolved
|
|
241
|
+
// and appended separately by the caller.
|
|
242
|
+
processor.convert(text, { safe: 'secure', extension_registry: registry });
|
|
243
|
+
return hits;
|
|
244
|
+
}
|
|
245
|
+
//# sourceMappingURL=macro.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"macro.js","sourceRoot":"","sources":["../../../src/extensions/cite-it/macro.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* cite-it: `.bib` parsing and CSL-JSON registry merging.
|
|
3
|
+
*
|
|
4
|
+
* Parses BibTeX/BibLaTeX source text into CSL-JSON items keyed by the
|
|
5
|
+
* entry's real citation key, using `biblatex-csl-converter` rather than a
|
|
6
|
+
* hand-rolled `.bib` grammar parser (the same "favor the API over regex"
|
|
7
|
+
* reasoning this codebase already applies elsewhere; see the root
|
|
8
|
+
* `CLAUDE.md`, "Content Extraction: Favor the API Over Regex").
|
|
9
|
+
*
|
|
10
|
+
* `biblatex-csl-converter`'s own CSL export, verified directly against a
|
|
11
|
+
* real `.bib` sample rather than assumed from its documentation, carries
|
|
12
|
+
* two correctness gaps relevant to the entry types this extension's bundled
|
|
13
|
+
* `ieee-bracket` style actually branches on:
|
|
14
|
+
*
|
|
15
|
+
* - The exported item's `id` is the parser's own numeric result key
|
|
16
|
+
* ("1", "2", ...), never the real BibTeX citation key. `citeit:[key]`
|
|
17
|
+
* needs the real key to look an entry up at all, so it is restored from
|
|
18
|
+
* `entry_key` after export.
|
|
19
|
+
* - A plain BibTeX `@article` entry with a `journaltitle`/`journal` field
|
|
20
|
+
* exports as CSL type `article`, not `article-journal`. The two are
|
|
21
|
+
* both valid CSL types, but the `ieee-bracket` style's bibliography
|
|
22
|
+
* layout branches on `article-journal` for the volume/issue/page
|
|
23
|
+
* citation form real journal articles need; plain `article` falls
|
|
24
|
+
* through to a differently-shaped fallback branch instead. Remapped
|
|
25
|
+
* here when a `container-title` is present, the signal that the entry
|
|
26
|
+
* is really a journal article.
|
|
27
|
+
* - The BibTeX `number` field on an `@article` entry means the issue
|
|
28
|
+
* number, but the exporter maps it to CSL `collection-number` (correct
|
|
29
|
+
* for `@book`/`@report`-shaped series numbers, wrong for a journal
|
|
30
|
+
* article's issue). Remapped to `issue` specifically for the
|
|
31
|
+
* `article-journal` case, not applied to any other entry type.
|
|
32
|
+
* - A custom `supersededby` field, naming the citation key of a newer
|
|
33
|
+
* entry replacing this one, is not a real BibLaTeX field and never
|
|
34
|
+
* reaches CSL export at all (verified directly): read from the raw
|
|
35
|
+
* parsed entry instead and reattached to the exported CSL item under
|
|
36
|
+
* the same name. index.ts warns, once per category's generated
|
|
37
|
+
* partial, when an actually-cited or `ref_force`d entry carries it.
|
|
38
|
+
*/
|
|
39
|
+
export type CslJsonItem = Record<string, unknown> & {
|
|
40
|
+
id: string;
|
|
41
|
+
type?: string;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Parse one `.bib` file's raw text into a Map of citation key to CSL-JSON
|
|
45
|
+
* item. `sourceLabel` identifies the file in warning messages only (for
|
|
46
|
+
* example a catalog path); parse warnings from a malformed entry are
|
|
47
|
+
* returned rather than thrown, so one bad entry in a large shared file does
|
|
48
|
+
* not fail the whole build.
|
|
49
|
+
*/
|
|
50
|
+
export declare function parseCiteFile(bibText: string, sourceLabel: string): {
|
|
51
|
+
entries: Map<string, CslJsonItem>;
|
|
52
|
+
warnings: string[];
|
|
53
|
+
};
|
|
54
|
+
/**
|
|
55
|
+
* Merge a later file's entries over an earlier file's, by citation key.
|
|
56
|
+
* Mirrors autoterm's `mergeTerminology`: an override-by-key merge, not a
|
|
57
|
+
* deep field-level merge, matching the shared local-content-and-overrides
|
|
58
|
+
* design every extension in this codebase already uses.
|
|
59
|
+
*/
|
|
60
|
+
export declare function mergeCiteRegistry(base: Map<string, CslJsonItem>, overlay: Map<string, CslJsonItem>): {
|
|
61
|
+
merged: Map<string, CslJsonItem>;
|
|
62
|
+
overridden: string[];
|
|
63
|
+
};
|
|
64
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/extensions/cite-it/registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAoEH,MAAM,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAElF;;;;;;GAMG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,GAClB;IAAE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAE,CAuE3D;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAC9B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,GAChC;IAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,CAQ5D"}
|