@baiyibai-antora/extensions 1.13.0 → 1.15.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.
Files changed (53) hide show
  1. package/CHANGELOG.adoc +32 -0
  2. package/README.adoc +17 -1
  3. package/dist/extensions/attribute-distiller/index.d.ts +6 -0
  4. package/dist/extensions/attribute-distiller/index.d.ts.map +1 -1
  5. package/dist/extensions/attribute-distiller/index.js +92 -16
  6. package/dist/extensions/attribute-distiller/index.js.map +1 -1
  7. package/dist/extensions/autoterm/index.d.ts +29 -18
  8. package/dist/extensions/autoterm/index.d.ts.map +1 -1
  9. package/dist/extensions/autoterm/index.js +37 -197
  10. package/dist/extensions/autoterm/index.js.map +1 -1
  11. package/dist/extensions/cite-it/asciidoc.d.ts +29 -0
  12. package/dist/extensions/cite-it/asciidoc.d.ts.map +1 -0
  13. package/dist/extensions/cite-it/asciidoc.js +32 -0
  14. package/dist/extensions/cite-it/asciidoc.js.map +1 -0
  15. package/dist/extensions/cite-it/assembly-numbering.d.ts +202 -0
  16. package/dist/extensions/cite-it/assembly-numbering.d.ts.map +1 -0
  17. package/dist/extensions/cite-it/assembly-numbering.js +385 -0
  18. package/dist/extensions/cite-it/assembly-numbering.js.map +1 -0
  19. package/dist/extensions/cite-it/csl.d.ts +36 -0
  20. package/dist/extensions/cite-it/csl.d.ts.map +1 -0
  21. package/dist/extensions/cite-it/csl.js +172 -0
  22. package/dist/extensions/cite-it/csl.js.map +1 -0
  23. package/dist/extensions/cite-it/index.d.ts +301 -0
  24. package/dist/extensions/cite-it/index.d.ts.map +1 -0
  25. package/dist/extensions/cite-it/index.js +1191 -0
  26. package/dist/extensions/cite-it/index.js.map +1 -0
  27. package/dist/extensions/cite-it/macro.d.ts +109 -0
  28. package/dist/extensions/cite-it/macro.d.ts.map +1 -0
  29. package/dist/extensions/cite-it/macro.js +262 -0
  30. package/dist/extensions/cite-it/macro.js.map +1 -0
  31. package/dist/extensions/cite-it/registry.d.ts +64 -0
  32. package/dist/extensions/cite-it/registry.d.ts.map +1 -0
  33. package/dist/extensions/cite-it/registry.js +157 -0
  34. package/dist/extensions/cite-it/registry.js.map +1 -0
  35. package/dist/extensions/trademark-it/index.d.ts +91 -22
  36. package/dist/extensions/trademark-it/index.d.ts.map +1 -1
  37. package/dist/extensions/trademark-it/index.js +239 -242
  38. package/dist/extensions/trademark-it/index.js.map +1 -1
  39. package/dist/lib/asciidoc-conditionals.d.ts +59 -0
  40. package/dist/lib/asciidoc-conditionals.d.ts.map +1 -0
  41. package/dist/lib/asciidoc-conditionals.js +0 -0
  42. package/dist/lib/asciidoc-conditionals.js.map +1 -0
  43. package/dist/lib/asciidoc-indexterms.d.ts +92 -0
  44. package/dist/lib/asciidoc-indexterms.d.ts.map +1 -0
  45. package/dist/lib/asciidoc-indexterms.js +280 -0
  46. package/dist/lib/asciidoc-indexterms.js.map +1 -0
  47. package/dist/lib/asciidoc-table.d.ts +32 -0
  48. package/dist/lib/asciidoc-table.d.ts.map +1 -0
  49. package/dist/lib/asciidoc-table.js +55 -0
  50. package/dist/lib/asciidoc-table.js.map +1 -0
  51. package/package.json +19 -4
  52. package/resources/cite-it/ieee-bracket.csl +519 -0
  53. 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,109 @@
1
+ /**
2
+ * cite-it: the `cite:[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 `cite:[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
+ /** The component-version's own resolved `blanket_pubstate` setting (index.ts),
45
+ * threaded through so the ordinary HTML render below shows the same
46
+ * status-instead-of-year fallback the generated bibliography partial
47
+ * shows, rather than only half the citation surface honoring the flag. */
48
+ blanketPubstate: boolean;
49
+ }
50
+ /** Keyed by `${component}@${version}`. */
51
+ export declare const citeCache: Map<string, ComponentVersionCiteData>;
52
+ /**
53
+ * Citation keys used via `cite:[key]` directly on a component-version's
54
+ * OWN pages that is NOT scanned at all (explicitly disabled, or no
55
+ * categories anywhere for it to inherit or define), keyed the same way as
56
+ * `citeCache`. There is no opt-in gate to forget: a component-version
57
+ * participates automatically once it has at least one category available
58
+ * (see index.ts's module docblock). Populated by index.ts's own scan of
59
+ * each SKIPPED component-version's raw page content, deliberately without
60
+ * resolving
61
+ * `include::` (a page whose entire content is an `include::` pulling in a
62
+ * genuinely participating component's real output, the demo site's own
63
+ * wrapper-page convention, correctly has nothing here: its own raw text
64
+ * carries no `cite:[key]` usage at all).
65
+ *
66
+ * Checked below before the cross-component fallback scan, so a genuine
67
+ * misconfiguration renders a clear, distinct message instead of either
68
+ * silently borrowing an unrelated component's data (if the key happens to
69
+ * collide with one a different, participating component defines) or a
70
+ * generic "unknown key" (which reads like a typo, not "this
71
+ * component-version never participated").
72
+ */
73
+ export declare const orphanedCiteKeys: Map<string, Set<string>>;
74
+ /**
75
+ * The ordinary, non-assembled HTML rendering of a citation: a templated
76
+ * author/year fragment, not a bracket number (numbering is PDF-only, see
77
+ * the module docblock). Falls back to the bare citation key when the entry
78
+ * carries no usable author or year data.
79
+ */
80
+ export declare function renderHtmlFallback(key: string, entry: CslJsonItem | undefined, blanketPubstate?: boolean): string;
81
+ export interface RegisterCiteMacroOptions {
82
+ /** Scan mode when set: records hits here instead of rendering. */
83
+ scanSink?: Set<string>;
84
+ /** Scan mode, additive: records every occurrence, duplicates included, in
85
+ * encounter order. Needed for true first-appearance numbering, since
86
+ * `scanSink`'s deduplication throws away the information of which
87
+ * occurrence came first. */
88
+ orderedSink?: string[];
89
+ }
90
+ export declare function registerCiteMacro(registry: ExtensionRegistry, opts?: RegisterCiteMacroOptions): void;
91
+ /**
92
+ * Which citation keys `text` cites, via a real Asciidoctor conversion with
93
+ * the citeit macro registered in scan mode, rather than a hand-rolled
94
+ * `cite:[key]` regex (see the module docblock). `text` should already
95
+ * have unsatisfied conditionals and comments stripped by the caller, the
96
+ * same order autoterm/trademark-it already apply before their own content
97
+ * scans, so a `cite:[key]` example shown inside a comment or an unset
98
+ * `ifdef::` block is not mistaken for a real citation.
99
+ */
100
+ export declare function scanCiteKeys(text: string): Set<string>;
101
+ /**
102
+ * Every cite:[key] occurrence in `text`, duplicates included, in true
103
+ * encounter order. The ordered counterpart of `scanCiteKeys`, needed to
104
+ * assign true first-appearance numbers across a sequence of pages, see
105
+ * `assembly-numbering.ts`.
106
+ */
107
+ export declare function scanCiteKeysOrdered(text: string): string[];
108
+ export {};
109
+ //# 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;IACpC;;;8EAG0E;IAC1E,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,0CAA0C;AAC1C,eAAO,MAAM,SAAS,uCAA8C,CAAC;AAErE;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,gBAAgB,0BAAiC,CAAC;AAqD/D;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,WAAW,GAAG,SAAS,EAC9B,eAAe,UAAQ,GACtB,MAAM,CAiBR;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,262 @@
1
+ "use strict";
2
+ /**
3
+ * cite-it: the `cite:[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 `cite:[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 `cite:[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 `cite:[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
+ /** "in preparation" -> "In preparation", matching the IEEE style's own
108
+ * `text-case="capitalize-first"` treatment of the same CSL `status`
109
+ * value (csl.ts). */
110
+ function capitalizeFirst(s) {
111
+ return s.length === 0 ? s : s[0].toUpperCase() + s.slice(1);
112
+ }
113
+ // Every space inside the parenthetical is a non-breaking space (U+00A0),
114
+ // not a plain one: an ordinary space lets a browser wrap the fragment mid-
115
+ // citation, "(W3C," on one line and "2018)" on the next, confirmed live
116
+ // against the real rendered page. A citation is one visual unit; it never
117
+ // has a reason to break internally.
118
+ const NBSP = ' ';
119
+ /**
120
+ * The ordinary, non-assembled HTML rendering of a citation: a templated
121
+ * author/year fragment, not a bracket number (numbering is PDF-only, see
122
+ * the module docblock). Falls back to the bare citation key when the entry
123
+ * carries no usable author or year data.
124
+ */
125
+ function renderHtmlFallback(key, entry, blanketPubstate = false) {
126
+ if (!entry)
127
+ return `(${key})`;
128
+ const names = authorDisplayNames(entry);
129
+ let year = issuedYear(entry);
130
+ // blanket_pubstate: an entry with no year but a BibLaTeX pubstate
131
+ // ("in preparation", "forthcoming", "in press") shows that status in
132
+ // the year's own place, the same substitution the generated
133
+ // bibliography partial makes (csl.ts), rather than dropping to a bare
134
+ // author-only fragment that looks like missing data instead of an
135
+ // intentional not-yet-published citation.
136
+ if (!year && blanketPubstate) {
137
+ const status = entry['status'];
138
+ if (typeof status === 'string' && status)
139
+ year = capitalizeFirst(status);
140
+ }
141
+ if (names.length === 0)
142
+ return year ? `(${key},${NBSP}${year})` : `(${key})`;
143
+ const authorPart = names.length === 1 ? names[0] : `${names[0]}${NBSP}et${NBSP}al.`;
144
+ return year ? `(${authorPart},${NBSP}${year})` : `(${authorPart})`;
145
+ }
146
+ function registerCiteMacro(registry, opts = {}) {
147
+ registry.inlineMacro('cite', function () {
148
+ this.matchFormat('short');
149
+ // Asciidoctor.js's shipped .d.ts splits inline-macro registration
150
+ // (InlineMacroProcessorDsl, matchFormat/process) from the real
151
+ // per-invocation processor (InlineMacroProcessor, createInline) as two
152
+ // distinct types, but the real Opal-bridged runtime object provides
153
+ // both dynamically on the same `this`. `createInline` is cast through
154
+ // `any` at each call below for that reason: the actual runtime
155
+ // contract, not the over-split declared type.
156
+ this.process((parent, target) => {
157
+ if (opts.scanSink || opts.orderedSink) {
158
+ opts.scanSink?.add(target);
159
+ opts.orderedSink?.push(target);
160
+ return this.createInline(parent, 'quoted', '');
161
+ }
162
+ const doc = parent.getDocument();
163
+ const componentName = doc.getAttribute('page-component-name');
164
+ const componentVersion = doc.getAttribute('page-version');
165
+ let data = exports.citeCache.get(`${componentName}@${componentVersion}`);
166
+ let entry = data?.entriesByKey.get(target);
167
+ // page-component-name/page-version identify the CONVERTING document,
168
+ // not necessarily the page the cite:[key] usage was actually
169
+ // written in: when a page is pulled into a different component via
170
+ // include:: (as every extension's own demo-site wrapper page does,
171
+ // for example), Antora's real page-component-name attributes track
172
+ // the OUTER, including document, not the source file's own
173
+ // component.
174
+ //
175
+ // orphanedCiteKeys is checked FIRST, before that recovery, precisely
176
+ // to keep the two cases apart: a cite:[key] usage on a page the
177
+ // converting component-version genuinely owns, when that
178
+ // component-version is not scanned at all (disabled, or no
179
+ // categories anywhere), is a real misconfiguration and must say so
180
+ // plainly, not silently succeed by coincidentally matching a key
181
+ // some unrelated component happens to also define.
182
+ if (!entry) {
183
+ const compKey = `${componentName}@${componentVersion}`;
184
+ if (exports.orphanedCiteKeys.get(compKey)?.has(target)) {
185
+ doc.getLogger().warn(`cite-it: cite:[${target}] used directly in ${compKey}, which is not scanned (disabled, or no categories); this citation cannot resolve regardless of the playbook-level configuration`);
186
+ return this.createInline(parent, 'quoted', `[cite-it: ${compKey} is not scanned by cite-it]`);
187
+ }
188
+ // Falling back to a scan across every participating
189
+ // component-version's own cache is a pragmatic recovery for the
190
+ // include:: case above, not a design endorsement of citing across
191
+ // components routinely: a key genuinely unique across all of them
192
+ // (the normal case) still resolves correctly either way.
193
+ for (const candidate of exports.citeCache.values()) {
194
+ const found = candidate.entriesByKey.get(target);
195
+ if (found) {
196
+ data = candidate;
197
+ entry = found;
198
+ break;
199
+ }
200
+ }
201
+ }
202
+ if (!entry) {
203
+ doc.getLogger().warn(`cite-it: unknown citation key "${target}"`);
204
+ return this.createInline(parent, 'quoted', `[cite-it: unknown key "${target}"]`);
205
+ }
206
+ const isAssembled = doc.hasAttribute('loader-assembler');
207
+ let text;
208
+ if (isAssembled) {
209
+ const withCounters = doc;
210
+ const counters = withCounters.__citeCounters ?? new Map();
211
+ withCounters.__citeCounters = counters;
212
+ if (!counters.has(target))
213
+ counters.set(target, counters.size + 1);
214
+ text = `[${counters.get(target)}]`;
215
+ }
216
+ else {
217
+ text = renderHtmlFallback(target, entry, data?.blanketPubstate ?? false);
218
+ }
219
+ return this.createInline(parent, 'quoted', text);
220
+ });
221
+ });
222
+ }
223
+ /**
224
+ * Which citation keys `text` cites, via a real Asciidoctor conversion with
225
+ * the citeit macro registered in scan mode, rather than a hand-rolled
226
+ * `cite:[key]` regex (see the module docblock). `text` should already
227
+ * have unsatisfied conditionals and comments stripped by the caller, the
228
+ * same order autoterm/trademark-it already apply before their own content
229
+ * scans, so a `cite:[key]` example shown inside a comment or an unset
230
+ * `ifdef::` block is not mistaken for a real citation.
231
+ */
232
+ function scanCiteKeys(text) {
233
+ const hits = new Set();
234
+ const registry = processor.Extensions.create();
235
+ registerCiteMacro(registry, { scanSink: hits });
236
+ // safe: 'secure' disables Asciidoctor's own include:: processing rather
237
+ // than letting it attempt (and fail) to resolve a real Antora resource
238
+ // ID like partial$name.adoc as a filesystem path. The caller resolves
239
+ // and appends included content separately (see index.ts's use of
240
+ // collectIncludeText); this conversion only needs to scan the resulting
241
+ // text for cite:[key] usage, not follow includes itself.
242
+ processor.convert(text, { safe: 'secure', extension_registry: registry });
243
+ return hits;
244
+ }
245
+ /**
246
+ * Every cite:[key] occurrence in `text`, duplicates included, in true
247
+ * encounter order. The ordered counterpart of `scanCiteKeys`, needed to
248
+ * assign true first-appearance numbers across a sequence of pages, see
249
+ * `assembly-numbering.ts`.
250
+ */
251
+ function scanCiteKeysOrdered(text) {
252
+ const hits = [];
253
+ const registry = processor.Extensions.create();
254
+ registerCiteMacro(registry, { orderedSink: hits });
255
+ // See scanCiteKeys above: safe: 'secure' avoids a spurious "include file
256
+ // not found" error when the scanned text still carries a literal
257
+ // include::partial$...[] directive whose content was already resolved
258
+ // and appended separately by the caller.
259
+ processor.convert(text, { safe: 'secure', extension_registry: registry });
260
+ return hits;
261
+ }
262
+ //# 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. `cite:[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"}