@baiyibai-antora/extensions 1.9.2 → 1.11.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 CHANGED
@@ -3,6 +3,29 @@
3
3
 
4
4
  All notable changes to this project will be documented in this file.
5
5
 
6
+ == [1.11.0] - 2026-08-18
7
+
8
+ === Fixed
9
+
10
+ * autoterm: include:: directives inside an unsatisfied conditional block are no longer resolved. Include collection previously ran on the raw page text, so a guarded template include leaked its index terms into the scan and the generated Index linked to targets that never rendered
11
+ * autoterm: partials are no longer scanned directly; a partial contributes only through the includes that pull it in, so a partial whose only inclusion sits inside an unsatisfied guard, or that no page includes, contributes nothing. Terms from legitimately included partials now also receive Index entries attributed to the including page
12
+
13
+ === Changed
14
+
15
+ * autoterm: conditional blocks are evaluated against real attribute state by default, the component-version's compiled attributes overlaid with the page header's entries; `scan_ignore_conditionals` now forces suppression for the named attributes even when set
16
+
17
+ == [1.10.0] - 2026-08-18
18
+
19
+ === Fixed
20
+
21
+ * autoterm-legacy-pdf: the letter guard reserves room for the letter and its actual first entry instead of a one-line approximation, so a lone letter never lands at a page bottom with its entry pushed overleaf
22
+ * autoterm: generated partials are injected into the host page's own module instead of a hardcoded ROOT, so a Terminology or Index page in any module resolves its include; the disk write follows the same module
23
+ * autoterm: `terminology_file` accepts the component-qualified form `component:module:partial$file.adoc`; a qualified reference never falls back across components, and an ambiguous unqualified reference logs the matching candidates
24
+
25
+ === Added
26
+
27
+ * autoterm: `scan_ignore_conditionals` names conditional attributes whose `ifdef::` blocks are skipped during scanning, keeping terms inside unrendered conditional content out of the Index; per-component entries extend the playbook list
28
+
6
29
  == [1.9.2] - 2026-08-18
7
30
 
8
31
  === Fixed
@@ -49,6 +49,10 @@
49
49
  * # Attribution line rendered above the Terminology content outside
50
50
  * # the PDF build. AsciiDoc inline markup allowed; empty disables.
51
51
  * attribution: 'Generated by https://gitlab.com/baiyibai-antora/baiyibai-extensions[autoterm].'
52
+ * # Conditional blocks are evaluated against the component's
53
+ * # compiled attributes plus the page header; this list additionally
54
+ * # forces suppression of ifdef:: blocks for the named attributes.
55
+ * scan_ignore_conditionals: []
52
56
  * # Terms whose shared definition is suppressed; local definitions
53
57
  * # still apply. One term per entry, matching the full term or the
54
58
  * # abbreviation, case-insensitively.
@@ -84,6 +88,7 @@ interface AutotermConfig {
84
88
  letter_style: 'combined' | 'separate';
85
89
  attribution: string;
86
90
  write_to_disk: boolean;
91
+ scan_ignore_conditionals: string[];
87
92
  ignore_shared_definition: string[];
88
93
  exclude_terminology: string[];
89
94
  suppress_events: boolean;
@@ -105,6 +110,12 @@ interface AntoraLogger {
105
110
  warn?: (msg: string) => void;
106
111
  error?: (msg: string) => void;
107
112
  }
113
+ interface Logger {
114
+ debug: (msg: string) => void;
115
+ info: (msg: string) => void;
116
+ warn: (msg: string) => void;
117
+ error: (msg: string) => void;
118
+ }
108
119
  interface ExtensionEntry {
109
120
  require?: string;
110
121
  autoterm?: Partial<AutotermConfig>;
@@ -138,12 +149,24 @@ interface VirtualFile {
138
149
  src: VirtualFileSrc;
139
150
  contents: Buffer | Uint8Array;
140
151
  }
152
+ interface ComponentVersionEntry {
153
+ name?: string;
154
+ version?: string;
155
+ asciidoc?: {
156
+ attributes?: Record<string, unknown>;
157
+ };
158
+ }
159
+ interface ComponentEntry {
160
+ name: string;
161
+ versions: ComponentVersionEntry[];
162
+ }
141
163
  interface ContentCatalog {
142
164
  getFiles: () => VirtualFile[];
143
165
  addFile: (file: {
144
166
  contents: Buffer;
145
167
  src: VirtualFileSrc;
146
168
  }) => void;
169
+ getComponents?: () => ComponentEntry[];
147
170
  }
148
171
  interface ContentAggregateItem {
149
172
  name: string;
@@ -185,6 +208,23 @@ export declare function mergeTerminology(shared: Map<string, TermDefinition>, lo
185
208
  merged: Map<string, TermDefinition>;
186
209
  overridden: string[];
187
210
  };
211
+ /**
212
+ * Blank conditional blocks whose condition does not hold, evaluated against
213
+ * real attribute state instead of an ignore list. An ifdef:: block survives
214
+ * when its attribute expression is satisfied and no listed attribute forces
215
+ * suppression; an ifndef:: block survives when its expression is NOT
216
+ * satisfied. ifeval:: content is kept, since expressions are not evaluated.
217
+ * Multi-attribute expressions follow Asciidoctor: '+' requires all, ','
218
+ * requires any. Line count is preserved. Suppression happens before include
219
+ * collection, so an include inside an unsatisfied block is never resolved.
220
+ */
221
+ export declare function suppressUnsetConditionals(text: string, isDefined: (attr: string) => boolean, forceIgnore?: string[]): string;
222
+ /**
223
+ * Attributes defined in a raw page header: `:name: value` entries define,
224
+ * `:!name:` and `:name!:` entries unset. Scanning stops at the first
225
+ * non-empty line that is neither a title nor an attribute entry.
226
+ */
227
+ export declare function pageHeaderAttributes(sourceText: string): Map<string, boolean>;
188
228
  /**
189
229
  * Blank the content of listing and literal blocks (---- and .... fences).
190
230
  * Asciidoctor does not process index terms in verbatim context, so the
@@ -226,5 +266,24 @@ export declare function pageTitle(sourceText: string): string;
226
266
  /** Read a :name: value from a raw page header, or null. */
227
267
  export declare function pageAttribute(sourceText: string, name: string): string | null;
228
268
  export declare function register(this: Registry, context?: Registry): void;
269
+ /**
270
+ * Parse a definitions reference of the form
271
+ * [version@][component:]module:partial$relative, or a bare relative path.
272
+ * Absent parts return null and match any value.
273
+ */
274
+ export declare function parseDefinitionsRef(ref: string): {
275
+ version: string | null;
276
+ component: string | null;
277
+ module: string | null;
278
+ relative: string;
279
+ };
280
+ /**
281
+ * Inject a generated partial into the catalog, replacing an existing entry's
282
+ * contents when a file with that name was already loaded. When write_to_disk
283
+ * is enabled and the component has a local worktree, write the file there
284
+ * too; components loaded from a remote source skip the disk write,
285
+ * mirroring trademark-it.
286
+ */
287
+ export declare function injectPartial(contentCatalog: ContentCatalog, componentFiles: VirtualFile[], component: string, version: string, module: string, relative: string, content: string, writeToDisk: boolean, logger: Logger): void;
229
288
  export {};
230
289
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extensions/autoterm/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/extensions/autoterm/index.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,10 @@
50
50
  * # Attribution line rendered above the Terminology content outside
51
51
  * # the PDF build. AsciiDoc inline markup allowed; empty disables.
52
52
  * attribution: 'Generated by https://gitlab.com/baiyibai-antora/baiyibai-extensions[autoterm].'
53
+ * # Conditional blocks are evaluated against the component's
54
+ * # compiled attributes plus the page header; this list additionally
55
+ * # forces suppression of ifdef:: blocks for the named attributes.
56
+ * scan_ignore_conditionals: []
53
57
  * # Terms whose shared definition is suppressed; local definitions
54
58
  * # still apply. One term per entry, matching the full term or the
55
59
  * # abbreviation, case-insensitively.
@@ -111,6 +115,8 @@ exports.termMatcher = termMatcher;
111
115
  exports.suppressSharedDefinitions = suppressSharedDefinitions;
112
116
  exports.parseTerminologyTable = parseTerminologyTable;
113
117
  exports.mergeTerminology = mergeTerminology;
118
+ exports.suppressUnsetConditionals = suppressUnsetConditionals;
119
+ exports.pageHeaderAttributes = pageHeaderAttributes;
114
120
  exports.stripVerbatimBlocks = stripVerbatimBlocks;
115
121
  exports.scanIndexterms = scanIndexterms;
116
122
  exports.buildTerminologyEntries = buildTerminologyEntries;
@@ -119,6 +125,8 @@ exports.generateIndexPartial = generateIndexPartial;
119
125
  exports.pageTitle = pageTitle;
120
126
  exports.pageAttribute = pageAttribute;
121
127
  exports.register = register;
128
+ exports.parseDefinitionsRef = parseDefinitionsRef;
129
+ exports.injectPartial = injectPartial;
122
130
  const log_time_1 = require("../../lib/log-time");
123
131
  const index_1 = require("../trademark-it/index");
124
132
  const fs = __importStar(require("node:fs"));
@@ -291,6 +299,81 @@ function mergeTerminology(shared, local) {
291
299
  // ((Full Term (Abbr) )) — the trailing space before the closing marks keeps
292
300
  // the stock PDF index intact, but the scanner accepts both spellings.
293
301
  // ---------------------------------------------------------------------------
302
+ /**
303
+ * Blank conditional blocks whose condition does not hold, evaluated against
304
+ * real attribute state instead of an ignore list. An ifdef:: block survives
305
+ * when its attribute expression is satisfied and no listed attribute forces
306
+ * suppression; an ifndef:: block survives when its expression is NOT
307
+ * satisfied. ifeval:: content is kept, since expressions are not evaluated.
308
+ * Multi-attribute expressions follow Asciidoctor: '+' requires all, ','
309
+ * requires any. Line count is preserved. Suppression happens before include
310
+ * collection, so an include inside an unsatisfied block is never resolved.
311
+ */
312
+ function suppressUnsetConditionals(text, isDefined, forceIgnore = []) {
313
+ const forced = new Set(forceIgnore.map((a) => a.toLowerCase()));
314
+ const satisfied = (expr) => {
315
+ if (expr.includes('+')) {
316
+ return expr.split('+').map((a) => a.trim()).filter(Boolean).every(isDefined);
317
+ }
318
+ return expr.split(',').map((a) => a.trim()).filter(Boolean).some(isDefined);
319
+ };
320
+ const forcedHit = (expr) => expr.split(/[+,]/).map((a) => a.trim().toLowerCase()).filter(Boolean).some((a) => forced.has(a));
321
+ const out = [];
322
+ const suppressStack = [];
323
+ for (const line of text.split('\n')) {
324
+ const trimmed = line.trimStart();
325
+ if (/^endif::/.test(trimmed)) {
326
+ if (suppressStack.length > 0)
327
+ suppressStack.pop();
328
+ out.push('');
329
+ continue;
330
+ }
331
+ const m = trimmed.match(/^(ifdef|ifndef|ifeval)::([^\[]*)\[([\s\S]*)\]\s*$/);
332
+ if (m) {
333
+ const directive = m[1];
334
+ const expr = m[2];
335
+ const body = m[3];
336
+ let suppress = false;
337
+ if (directive === 'ifdef')
338
+ suppress = !satisfied(expr) || forcedHit(expr);
339
+ if (directive === 'ifndef')
340
+ suppress = satisfied(expr);
341
+ if (body === '') {
342
+ suppressStack.push(suppress);
343
+ out.push('');
344
+ }
345
+ else {
346
+ const active = suppressStack.every((s) => !s) && !suppress;
347
+ out.push(active ? body : '');
348
+ }
349
+ continue;
350
+ }
351
+ if (/^(ifdef|ifndef|ifeval)::/.test(trimmed)) {
352
+ out.push('');
353
+ continue;
354
+ }
355
+ out.push(suppressStack.some((s) => s) ? '' : line);
356
+ }
357
+ return out.join('\n');
358
+ }
359
+ /**
360
+ * Attributes defined in a raw page header: `:name: value` entries define,
361
+ * `:!name:` and `:name!:` entries unset. Scanning stops at the first
362
+ * non-empty line that is neither a title nor an attribute entry.
363
+ */
364
+ function pageHeaderAttributes(sourceText) {
365
+ const result = new Map();
366
+ for (const line of sourceText.split('\n')) {
367
+ const t = line.trim();
368
+ if (t === '' || t.startsWith('= ') || t.startsWith('//'))
369
+ continue;
370
+ const m = t.match(/^:(!?)([^:!\s]+)(!?):/);
371
+ if (!m)
372
+ break;
373
+ result.set(m[2], !(m[1] === '!' || m[3] === '!'));
374
+ }
375
+ return result;
376
+ }
294
377
  /**
295
378
  * Blank the content of listing and literal blocks (---- and .... fences).
296
379
  * Asciidoctor does not process index terms in verbatim context, so the
@@ -514,6 +597,7 @@ function register(context) {
514
597
  letter_style: 'combined',
515
598
  attribution: 'Generated by https://gitlab.com/baiyibai-antora/baiyibai-extensions[autoterm].',
516
599
  write_to_disk: false,
600
+ scan_ignore_conditionals: [],
517
601
  ignore_shared_definition: [],
518
602
  exclude_terminology: [],
519
603
  suppress_events: false,
@@ -544,6 +628,7 @@ function register(context) {
544
628
  letter_style: pick(raw, ['letter_style', 'letterStyle'], cfg.letter_style) === 'separate' ? 'separate' : 'combined',
545
629
  attribution: String(pick(raw, ['attribution'], cfg.attribution)),
546
630
  write_to_disk: toBool(pick(raw, ['write_to_disk', 'writeToDisk', 'writetodisk'], cfg.write_to_disk), cfg.write_to_disk),
631
+ scan_ignore_conditionals: toStringArray(pick(raw, ['scan_ignore_conditionals', 'scanIgnoreConditionals'], cfg.scan_ignore_conditionals)),
547
632
  ignore_shared_definition: toStringArray(pick(raw, ['ignore_shared_definition', 'ignoreSharedDefinition'], cfg.ignore_shared_definition)),
548
633
  exclude_terminology: toStringArray(pick(raw, ['exclude_terminology', 'excludeTerminology'], cfg.exclude_terminology)),
549
634
  suppress_events: toBool(pick(raw, ['suppress_events', 'suppressEvents'], cfg.suppress_events), cfg.suppress_events),
@@ -617,6 +702,10 @@ function register(context) {
617
702
  : cfg.letter_style;
618
703
  const compWriteToDisk = toBool(compExt['write_to_disk'] ?? compExt['writeToDisk'], cfg.write_to_disk);
619
704
  // Per-component lists extend the global lists, mirroring trademark-it.
705
+ const compIgnoreConditionals = [
706
+ ...cfg.scan_ignore_conditionals,
707
+ ...toStringArray(compExt['scan_ignore_conditionals'] ?? compExt['scanIgnoreConditionals']),
708
+ ];
620
709
  const compIgnoreShared = [
621
710
  ...cfg.ignore_shared_definition,
622
711
  ...toStringArray(compExt['ignore_shared_definition'] ?? compExt['ignoreSharedDefinition']),
@@ -636,35 +725,59 @@ function register(context) {
636
725
  f.src.family === 'partial' &&
637
726
  (f.src.relative === name || f.src.basename === name));
638
727
  };
639
- // Scan pages and partials, excluding the generated and local partials.
728
+ // Scan pages only. A partial contributes exclusively through the
729
+ // includes that pull it in, so its terms carry the including page's
730
+ // conditional context and attribution; a partial whose only inclusion
731
+ // sits inside an unsatisfied guard, or that no page includes at all,
732
+ // contributes nothing, matching what Asciidoctor renders.
640
733
  const excluded = new Set([cfg.terminology_partial, cfg.index_partial, compLocalFile]);
641
- const scanFiles = files.filter((f) => (f.src.family === 'page' || f.src.family === 'partial') &&
734
+ const scanFiles = files.filter((f) => f.src.family === 'page' &&
642
735
  !excluded.has(f.src.relative ?? '') &&
643
736
  !excluded.has(f.src.basename ?? ''));
644
- // Pre-populate the include-resolution visited set with every file in
645
- // this scan plus the excluded data partials, so resolved includes are
737
+ // Pre-populate the include-resolution visited set with the scanned
738
+ // pages and the excluded data partials, so resolved includes are
646
739
  // neither double-counted nor pulled from the generated partials.
740
+ // Content partials stay unvisited so includes resolve them.
647
741
  const includeVisited = new Set();
648
742
  for (const f of files) {
649
743
  if (f.src.family !== 'page' && f.src.family !== 'partial')
650
744
  continue;
651
745
  const key = `${f.src.component}@${f.src.version}:${f.src.module}:${f.src.family}$${f.src.relative}`;
652
- if (scanFiles.includes(f))
746
+ if (f.src.family === 'page' && scanFiles.includes(f))
653
747
  includeVisited.add(key);
654
748
  if (excluded.has(f.src.relative ?? '') || excluded.has(f.src.basename ?? ''))
655
749
  includeVisited.add(key);
656
750
  }
751
+ // Effective attribute state for conditional evaluation: the
752
+ // component-version's compiled asciidoc attributes, overlaid per page
753
+ // with its own header entries. Conditionals are evaluated by default;
754
+ // scan_ignore_conditionals additionally forces suppression.
755
+ const componentAttrs = (contentCatalog.getComponents?.() ?? [])
756
+ .find((c) => c.name === component)?.versions
757
+ .find((v) => (v.version ?? v.name) === version)?.asciidoc?.attributes ?? {};
657
758
  const allTerms = [];
658
759
  const occurrenceMap = new Map();
659
760
  for (const f of scanFiles) {
660
- let text = f.contents.toString('utf8');
761
+ const raw = f.contents.toString('utf8');
762
+ const headerAttrs = f.src.family === 'page' ? pageHeaderAttributes(raw) : new Map();
763
+ const isDefined = (attr) => {
764
+ if (headerAttrs.has(attr))
765
+ return headerAttrs.get(attr) === true;
766
+ const v = componentAttrs[attr];
767
+ return v !== undefined && v !== null && v !== false;
768
+ };
769
+ const stripConditionals = (t) => suppressUnsetConditionals(t, isDefined, compIgnoreConditionals);
770
+ // Suppress unsatisfied conditional blocks BEFORE resolving includes,
771
+ // so an include guarded by an unset attribute is never resolved and
772
+ // its terms never leak into the scan.
773
+ let text = stripConditionals(raw);
661
774
  // Resolve include:: directives on pages so terms living in
662
775
  // transcluded content, such as a reference page carried by another
663
776
  // component, are collected and attributed to the including page.
664
777
  if (f.src.family === 'page') {
665
778
  const extra = (0, index_1.collectIncludeText)(text, contentCatalog, component, version, f.src.module ?? 'ROOT', includeVisited);
666
779
  if (extra)
667
- text = `${text}\n${extra}`;
780
+ text = `${text}\n${stripConditionals(extra)}`;
668
781
  }
669
782
  const terms = scanIndexterms(text);
670
783
  allTerms.push(...terms);
@@ -733,13 +846,13 @@ function register(context) {
733
846
  : allTerms;
734
847
  const entries = buildTerminologyEntries(terminologyTerms, definitions);
735
848
  const content = generateTerminologyPartial(entries, cols, style, cfg.attribution);
736
- injectPartial(contentCatalog, files, component, version, cfg.terminology_partial, content, compWriteToDisk, logger);
849
+ injectPartial(contentCatalog, files, component, version, terminologyHost.src.module ?? 'ROOT', cfg.terminology_partial, content, compWriteToDisk, logger);
737
850
  }
738
851
  if (indexHost) {
739
852
  const hostText = indexHost.contents.toString('utf8');
740
853
  const cols = pageAttribute(hostText, 'autoterm-index-cols') ?? compIndexCols;
741
854
  const content = generateIndexPartial([...occurrenceMap.values()], cols);
742
- injectPartial(contentCatalog, files, component, version, cfg.index_partial, content, compWriteToDisk, logger);
855
+ injectPartial(contentCatalog, files, component, version, indexHost.src.module ?? 'ROOT', cfg.index_partial, content, compWriteToDisk, logger);
743
856
  }
744
857
  }
745
858
  }
@@ -750,22 +863,59 @@ function register(context) {
750
863
  // Helpers
751
864
  // ---------------------------------------------------------------------------
752
865
  /**
753
- * Locate the shared definitions file: catalog partial by resource-ID suffix,
754
- * then filesystem path, then basename match mirroring trademark-it's
755
- * resolution strategies.
866
+ * Parse a definitions reference of the form
867
+ * [version@][component:]module:partial$relative, or a bare relative path.
868
+ * Absent parts return null and match any value.
869
+ */
870
+ function parseDefinitionsRef(ref) {
871
+ let rest = ref.trim();
872
+ let version = null;
873
+ const at = rest.indexOf('@');
874
+ if (at >= 0) {
875
+ version = rest.slice(0, at);
876
+ rest = rest.slice(at + 1);
877
+ }
878
+ const dollar = rest.indexOf('partial$');
879
+ if (dollar < 0)
880
+ return { version, component: null, module: null, relative: rest };
881
+ const relative = rest.slice(dollar + 'partial$'.length);
882
+ const prefix = rest.slice(0, dollar).replace(/:$/, '');
883
+ const parts = prefix ? prefix.split(':') : [];
884
+ if (parts.length >= 2) {
885
+ return { version, component: parts[0] || null, module: parts[1] || null, relative };
886
+ }
887
+ if (parts.length === 1) {
888
+ return { version, component: null, module: parts[0] || null, relative };
889
+ }
890
+ return { version, component: null, module: null, relative };
891
+ }
892
+ /**
893
+ * Locate the shared definitions file: structured resource-ID match with
894
+ * optional component, module, and version qualification, then filesystem
895
+ * path, then basename fallback. A component-qualified reference never falls
896
+ * back across components, so a same-named file in another component cannot
897
+ * shadow the shared table.
756
898
  */
757
899
  function resolveDefinitionsFile(ref, contentCatalog, playbook, logger) {
758
- const catalogFile = contentCatalog.getFiles().find((f) => {
759
- if (f.src.family !== 'partial')
760
- return false;
761
- const rel = f.src.relative ?? '';
762
- const resourceId = `${f.src.module ?? 'ROOT'}:partial$${rel}`;
763
- return resourceId === ref || resourceId.endsWith(ref) || rel === ref || rel.endsWith(ref);
764
- });
765
- if (catalogFile) {
766
- logger.debug(`autoterm: definitions resolved from catalog (${catalogFile.src.path})`);
900
+ const parsed = parseDefinitionsRef(ref);
901
+ const candidates = contentCatalog.getFiles().filter((f) => f.src.family === 'partial' &&
902
+ f.src.relative === parsed.relative &&
903
+ (parsed.component === null || f.src.component === parsed.component) &&
904
+ (parsed.module === null || f.src.module === parsed.module) &&
905
+ (parsed.version === null || f.src.version === parsed.version));
906
+ if (candidates.length > 0) {
907
+ if (candidates.length > 1) {
908
+ const list = candidates.map((f) => `${f.src.component}@${f.src.version}:${f.src.module}:partial$${f.src.relative}`).join(', ');
909
+ logger.warn(`autoterm: terminology_file "${ref}" matches ${candidates.length} partials (${list}); using the first. Qualify the reference with the component name to disambiguate.`);
910
+ }
911
+ const catalogFile = candidates[0];
912
+ logger.debug(`autoterm: definitions resolved from catalog (${catalogFile.src.component}:${catalogFile.src.path})`);
767
913
  return catalogFile.contents.toString('utf8');
768
914
  }
915
+ if (parsed.component !== null) {
916
+ logger.error(`autoterm: terminology_file "${ref}" not found in component ${parsed.component}; no fallback is attempted for a component-qualified reference`);
917
+ return null;
918
+ }
769
919
  const fsPath = ref.startsWith('/') ? ref : `${playbook.dir}/${ref}`;
770
920
  if (fs.existsSync(fsPath)) {
771
921
  logger.debug(`autoterm: definitions resolved from filesystem (${fsPath})`);
@@ -786,13 +936,16 @@ function resolveDefinitionsFile(ref, contentCatalog, playbook, logger) {
786
936
  * too; components loaded from a remote source skip the disk write,
787
937
  * mirroring trademark-it.
788
938
  */
789
- function injectPartial(contentCatalog, componentFiles, component, version, relative, content, writeToDisk, logger) {
939
+ function injectPartial(contentCatalog, componentFiles, component, version, module, relative, content, writeToDisk, logger) {
790
940
  const contents = Buffer.from(content, 'utf8');
791
- const existing = componentFiles.find((f) => f.src.family === 'partial' &&
792
- (f.src.relative === relative || f.src.path === `modules/ROOT/partials/${relative}`));
941
+ // The host page's include resolves partial$ in its own module, so the
942
+ // generated partial must live in the host page's module, never a
943
+ // hardcoded ROOT.
944
+ const existing = componentFiles.find((f) => f.src.family === 'partial' && f.src.module === module &&
945
+ (f.src.relative === relative || f.src.path === `modules/${module}/partials/${relative}`));
793
946
  if (existing) {
794
947
  existing.contents = contents;
795
- logger.debug(`autoterm: updated partial$${relative} in ${component}@${version}`);
948
+ logger.debug(`autoterm: updated ${module}:partial$${relative} in ${component}@${version}`);
796
949
  }
797
950
  else {
798
951
  const basename = relative.split('/').pop() ?? relative;
@@ -802,10 +955,10 @@ function injectPartial(contentCatalog, componentFiles, component, version, relat
802
955
  src: {
803
956
  component,
804
957
  version,
805
- module: 'ROOT',
958
+ module,
806
959
  family: 'partial',
807
960
  relative,
808
- path: `modules/ROOT/partials/${relative}`,
961
+ path: `modules/${module}/partials/${relative}`,
809
962
  basename,
810
963
  stem: basename.replace(/\.[^.]+$/, ''),
811
964
  extname: basename.includes('.') ? `.${basename.split('.').pop()}` : '',
@@ -813,10 +966,10 @@ function injectPartial(contentCatalog, componentFiles, component, version, relat
813
966
  origin: undefined,
814
967
  },
815
968
  });
816
- logger.debug(`autoterm: injected partial$${relative} into ${component}@${version}`);
969
+ logger.debug(`autoterm: injected ${module}:partial$${relative} into ${component}@${version}`);
817
970
  }
818
971
  catch {
819
- logger.warn(`autoterm: could not inject partial$${relative} into ${component}@${version}`);
972
+ logger.warn(`autoterm: could not inject ${module}:partial$${relative} into ${component}@${version}`);
820
973
  }
821
974
  }
822
975
  if (!writeToDisk)
@@ -825,7 +978,7 @@ function injectPartial(contentCatalog, componentFiles, component, version, relat
825
978
  const worktree = originFile?.src.origin?.worktree;
826
979
  const startPath = originFile?.src.origin?.startPath ?? '';
827
980
  if (worktree) {
828
- const diskPath = path.join(worktree, startPath, 'modules', 'ROOT', 'partials', relative);
981
+ const diskPath = path.join(worktree, startPath, 'modules', module, 'partials', relative);
829
982
  try {
830
983
  fs.mkdirSync(path.dirname(diskPath), { recursive: true });
831
984
  fs.writeFileSync(diskPath, content, 'utf8');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensions/autoterm/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/extensions/autoterm/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@baiyibai-antora/extensions",
3
- "version": "1.9.2",
3
+ "version": "1.11.0",
4
4
  "description": "Antora extensions and AsciiDoc macros for Baiyibai documentation",
5
5
  "keywords": [
6
6
  "antora",
@@ -48,7 +48,7 @@ class AutotermLegacyPdfConverter < (Asciidoctor::Converter.for 'pdf')
48
48
  end
49
49
 
50
50
  line_metrics = calc_line_metrics @base_line_height
51
- space_needed_for_letter = @theme.description_list_term_spacing + (2 * (height_of_typeset_text 'A'))
51
+ letter_height = height_of_typeset_text 'A'
52
52
  term_width = bounds.width * 0.15
53
53
  term_column_width = term_width - 8
54
54
 
@@ -56,13 +56,24 @@ class AutotermLegacyPdfConverter < (Asciidoctor::Converter.for 'pdf')
56
56
  entries.each do |label, body|
57
57
  letter = label[0].to_s.upcase
58
58
 
59
+ # height_of measures on its own default line-height basis while the
60
+ # typeset below uses line_metrics, and the two disagree by a small fixed
61
+ # amount per line. Padding the page-break comparisons by one line's
62
+ # leading keeps them conservative on the real rendering basis.
63
+ label_height = height_of label, width: term_column_width
64
+ body_height = body.empty? ? 0 : (height_of body, width: bounds.width - term_width)
65
+ entry_height = [label_height, body_height].max
66
+
59
67
  if letter != current_letter
60
68
  unless current_letter.nil?
61
69
  @theme.prose_margin_bottom > cursor ? bounds.move_past_bottom : (move_down @theme.prose_margin_bottom)
62
70
  end
63
71
  current_letter = letter
64
72
 
65
- bounds.move_past_bottom if space_needed_for_letter > cursor
73
+ # Reserve room for the letter and its actual first entry, so a lone
74
+ # letter never lands at a page bottom with its entry pushed overleaf.
75
+ space_needed_for_letter_and_first_entry = @theme.description_list_term_spacing + letter_height + entry_height + line_metrics.padding_top + line_metrics.padding_bottom
76
+ bounds.move_past_bottom if space_needed_for_letter_and_first_entry > cursor
66
77
 
67
78
  ink_prose letter,
68
79
  align: :left,
@@ -71,15 +82,6 @@ class AutotermLegacyPdfConverter < (Asciidoctor::Converter.for 'pdf')
71
82
  style: :bold
72
83
  end
73
84
 
74
- label_height = height_of label, width: term_column_width
75
- body_height = body.empty? ? 0 : (height_of body, width: bounds.width - term_width)
76
- entry_height = [label_height, body_height].max
77
- # height_of measures on its own default line-height basis while the
78
- # typeset below uses line_metrics, and the two disagree by a small fixed
79
- # amount per line. Over a long table the disagreement erodes the
80
- # pre-check's margin until Prawn silently spills a label to the next
81
- # page. Padding the comparison by one line's leading keeps the check
82
- # conservative on the real rendering basis.
83
85
  bounds.move_past_bottom if (entry_height + line_metrics.padding_top + line_metrics.padding_bottom) > cursor
84
86
 
85
87
  start_cursor = cursor