postext 1.36.0 → 1.38.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/dist/__tests__/comics/frames.test.d.ts +2 -0
- package/dist/__tests__/comics/frames.test.d.ts.map +1 -0
- package/dist/__tests__/comics/frames.test.js +251 -0
- package/dist/__tests__/comics/frames.test.js.map +1 -0
- package/dist/__tests__/composed/continuation.test.d.ts +2 -0
- package/dist/__tests__/composed/continuation.test.d.ts.map +1 -0
- package/dist/__tests__/composed/continuation.test.js +352 -0
- package/dist/__tests__/composed/continuation.test.js.map +1 -0
- package/dist/__tests__/composed/continuationRules.test.d.ts +2 -0
- package/dist/__tests__/composed/continuationRules.test.d.ts.map +1 -0
- package/dist/__tests__/composed/continuationRules.test.js +389 -0
- package/dist/__tests__/composed/continuationRules.test.js.map +1 -0
- package/dist/__tests__/composed/contrast.test.d.ts +2 -0
- package/dist/__tests__/composed/contrast.test.d.ts.map +1 -0
- package/dist/__tests__/composed/contrast.test.js +124 -0
- package/dist/__tests__/composed/contrast.test.js.map +1 -0
- package/dist/__tests__/composed/corpus.test.js +7 -1
- package/dist/__tests__/composed/corpus.test.js.map +1 -1
- package/dist/__tests__/composed/coverImages.test.d.ts +2 -0
- package/dist/__tests__/composed/coverImages.test.d.ts.map +1 -0
- package/dist/__tests__/composed/coverImages.test.js +75 -0
- package/dist/__tests__/composed/coverImages.test.js.map +1 -0
- package/dist/__tests__/composed/decorationSize.test.d.ts +2 -0
- package/dist/__tests__/composed/decorationSize.test.d.ts.map +1 -0
- package/dist/__tests__/composed/decorationSize.test.js +79 -0
- package/dist/__tests__/composed/decorationSize.test.js.map +1 -0
- package/dist/__tests__/composed/emptyFrames.test.d.ts +2 -0
- package/dist/__tests__/composed/emptyFrames.test.d.ts.map +1 -0
- package/dist/__tests__/composed/emptyFrames.test.js +129 -0
- package/dist/__tests__/composed/emptyFrames.test.js.map +1 -0
- package/dist/__tests__/composed/fit.test.js +19 -10
- package/dist/__tests__/composed/fit.test.js.map +1 -1
- package/dist/__tests__/composed/groups.test.js +34 -0
- package/dist/__tests__/composed/groups.test.js.map +1 -1
- package/dist/__tests__/composed/headingDesigns.test.d.ts +2 -0
- package/dist/__tests__/composed/headingDesigns.test.d.ts.map +1 -0
- package/dist/__tests__/composed/headingDesigns.test.js +262 -0
- package/dist/__tests__/composed/headingDesigns.test.js.map +1 -0
- package/dist/__tests__/composed/labels.test.d.ts +2 -0
- package/dist/__tests__/composed/labels.test.d.ts.map +1 -0
- package/dist/__tests__/composed/labels.test.js +326 -0
- package/dist/__tests__/composed/labels.test.js.map +1 -0
- package/dist/__tests__/composed/outsidePrint.test.js +5 -2
- package/dist/__tests__/composed/outsidePrint.test.js.map +1 -1
- package/dist/__tests__/composed/ruledFrames.test.d.ts +2 -0
- package/dist/__tests__/composed/ruledFrames.test.d.ts.map +1 -0
- package/dist/__tests__/composed/ruledFrames.test.js +93 -0
- package/dist/__tests__/composed/ruledFrames.test.js.map +1 -0
- package/dist/__tests__/composed/sourceMap.test.js +26 -0
- package/dist/__tests__/composed/sourceMap.test.js.map +1 -1
- package/dist/__tests__/composed/spread.test.js +82 -0
- package/dist/__tests__/composed/spread.test.js.map +1 -1
- package/dist/__tests__/composed/spreadLabels.test.d.ts +2 -0
- package/dist/__tests__/composed/spreadLabels.test.d.ts.map +1 -0
- package/dist/__tests__/composed/spreadLabels.test.js +131 -0
- package/dist/__tests__/composed/spreadLabels.test.js.map +1 -0
- package/dist/__tests__/exports.test.js +23 -0
- package/dist/__tests__/exports.test.js.map +1 -1
- package/dist/__tests__/migrate/fixtures/textbookPort.d.ts +14 -0
- package/dist/__tests__/migrate/fixtures/textbookPort.d.ts.map +1 -0
- package/dist/__tests__/migrate/fixtures/textbookPort.js +116 -0
- package/dist/__tests__/migrate/fixtures/textbookPort.js.map +1 -0
- package/dist/__tests__/migrate/labelsOnPictures.test.d.ts +2 -0
- package/dist/__tests__/migrate/labelsOnPictures.test.d.ts.map +1 -0
- package/dist/__tests__/migrate/labelsOnPictures.test.js +114 -0
- package/dist/__tests__/migrate/labelsOnPictures.test.js.map +1 -0
- package/dist/__tests__/migrate/textToMarkdown.test.d.ts +2 -0
- package/dist/__tests__/migrate/textToMarkdown.test.d.ts.map +1 -0
- package/dist/__tests__/migrate/textToMarkdown.test.js +268 -0
- package/dist/__tests__/migrate/textToMarkdown.test.js.map +1 -0
- package/dist/__tests__/paragraphDropCap.test.js +38 -0
- package/dist/__tests__/paragraphDropCap.test.js.map +1 -1
- package/dist/__tests__/paragraphStyleLetterSpacing.test.d.ts +2 -0
- package/dist/__tests__/paragraphStyleLetterSpacing.test.d.ts.map +1 -0
- package/dist/__tests__/paragraphStyleLetterSpacing.test.js +89 -0
- package/dist/__tests__/paragraphStyleLetterSpacing.test.js.map +1 -0
- package/dist/__tests__/pictureBelowPrintSize.test.d.ts +2 -0
- package/dist/__tests__/pictureBelowPrintSize.test.d.ts.map +1 -0
- package/dist/__tests__/pictureBelowPrintSize.test.js +82 -0
- package/dist/__tests__/pictureBelowPrintSize.test.js.map +1 -0
- package/dist/__tests__/pipeline/paragraphStyleFaces.test.js +1 -1
- package/dist/__tests__/pipeline/paragraphStyleFaces.test.js.map +1 -1
- package/dist/__tests__/resourceTypePartial.test.d.ts +2 -0
- package/dist/__tests__/resourceTypePartial.test.d.ts.map +1 -0
- package/dist/__tests__/resourceTypePartial.test.js +60 -0
- package/dist/__tests__/resourceTypePartial.test.js.map +1 -0
- package/dist/canvas-backend/composed.d.ts +8 -2
- package/dist/canvas-backend/composed.d.ts.map +1 -1
- package/dist/canvas-backend/composed.js +52 -29
- package/dist/canvas-backend/composed.js.map +1 -1
- package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
- package/dist/canvas-backend/headerFooter.js +13 -0
- package/dist/canvas-backend/headerFooter.js.map +1 -1
- package/dist/canvas-backend/index.d.ts.map +1 -1
- package/dist/canvas-backend/index.js +53 -24
- package/dist/canvas-backend/index.js.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.d.ts +5 -1
- package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.js +60 -1
- package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
- package/dist/comics/frames.d.ts +82 -0
- package/dist/comics/frames.d.ts.map +1 -0
- package/dist/comics/frames.js +182 -0
- package/dist/comics/frames.js.map +1 -0
- package/dist/comics/index.d.ts +4 -1
- package/dist/comics/index.d.ts.map +1 -1
- package/dist/comics/index.js +3 -1
- package/dist/comics/index.js.map +1 -1
- package/dist/comics/layoutPage.d.ts +9 -0
- package/dist/comics/layoutPage.d.ts.map +1 -1
- package/dist/comics/layoutPage.js +53 -68
- package/dist/comics/layoutPage.js.map +1 -1
- package/dist/comics/page.d.ts.map +1 -1
- package/dist/comics/page.js +10 -1
- package/dist/comics/page.js.map +1 -1
- package/dist/comics/sourceMap.d.ts +60 -0
- package/dist/comics/sourceMap.d.ts.map +1 -0
- package/dist/comics/sourceMap.js +166 -0
- package/dist/comics/sourceMap.js.map +1 -0
- package/dist/comics/spread.d.ts.map +1 -1
- package/dist/comics/spread.js +6 -0
- package/dist/comics/spread.js.map +1 -1
- package/dist/comics/textPanels.d.ts +113 -0
- package/dist/comics/textPanels.d.ts.map +1 -0
- package/dist/comics/textPanels.js +327 -0
- package/dist/comics/textPanels.js.map +1 -0
- package/dist/comics/transform.d.ts +6 -2
- package/dist/comics/transform.d.ts.map +1 -1
- package/dist/comics/transform.js +14 -1
- package/dist/comics/transform.js.map +1 -1
- package/dist/comics/types.d.ts +10 -0
- package/dist/comics/types.d.ts.map +1 -1
- package/dist/composed/continuation.d.ts +152 -0
- package/dist/composed/continuation.d.ts.map +1 -0
- package/dist/composed/continuation.js +189 -0
- package/dist/composed/continuation.js.map +1 -0
- package/dist/composed/groups.d.ts +3 -0
- package/dist/composed/groups.d.ts.map +1 -1
- package/dist/composed/groups.js +34 -4
- package/dist/composed/groups.js.map +1 -1
- package/dist/composed/labels.d.ts +154 -0
- package/dist/composed/labels.d.ts.map +1 -0
- package/dist/composed/labels.js +524 -0
- package/dist/composed/labels.js.map +1 -0
- package/dist/composed/pageMemo.d.ts +3 -2
- package/dist/composed/pageMemo.d.ts.map +1 -1
- package/dist/composed/pageMemo.js +3 -1
- package/dist/composed/pageMemo.js.map +1 -1
- package/dist/composed/paint.d.ts +28 -3
- package/dist/composed/paint.d.ts.map +1 -1
- package/dist/composed/paint.js +48 -2
- package/dist/composed/paint.js.map +1 -1
- package/dist/composed/reflowLog.d.ts +3 -1
- package/dist/composed/reflowLog.d.ts.map +1 -1
- package/dist/composed/reflowLog.js +20 -6
- package/dist/composed/reflowLog.js.map +1 -1
- package/dist/composed/rules.d.ts +31 -0
- package/dist/composed/rules.d.ts.map +1 -0
- package/dist/composed/rules.js +45 -0
- package/dist/composed/rules.js.map +1 -0
- package/dist/composed/slotChecks.d.ts +2 -1
- package/dist/composed/slotChecks.d.ts.map +1 -1
- package/dist/composed/slotChecks.js +56 -2
- package/dist/composed/slotChecks.js.map +1 -1
- package/dist/composed/sourceMap.d.ts +0 -21
- package/dist/composed/sourceMap.d.ts.map +1 -1
- package/dist/composed/sourceMap.js +102 -8
- package/dist/composed/sourceMap.js.map +1 -1
- package/dist/composed/spread.d.ts +23 -5
- package/dist/composed/spread.d.ts.map +1 -1
- package/dist/composed/spread.js +52 -27
- package/dist/composed/spread.js.map +1 -1
- package/dist/composed/templates.d.ts +11 -0
- package/dist/composed/templates.d.ts.map +1 -1
- package/dist/composed/templates.js +51 -2
- package/dist/composed/templates.js.map +1 -1
- package/dist/composed/types.d.ts +43 -3
- package/dist/composed/types.d.ts.map +1 -1
- package/dist/composed/validate.d.ts.map +1 -1
- package/dist/composed/validate.js +5 -3
- package/dist/composed/validate.js.map +1 -1
- package/dist/configWarnings.d.ts +15 -0
- package/dist/configWarnings.d.ts.map +1 -1
- package/dist/configWarnings.js +40 -18
- package/dist/configWarnings.js.map +1 -1
- package/dist/contrast.d.ts +5 -3
- package/dist/contrast.d.ts.map +1 -1
- package/dist/contrast.js +46 -5
- package/dist/contrast.js.map +1 -1
- package/dist/defaults/headerFooter.d.ts.map +1 -1
- package/dist/defaults/headerFooter.js +4 -0
- package/dist/defaults/headerFooter.js.map +1 -1
- package/dist/defaults/paragraphStyles.d.ts +1 -1
- package/dist/defaults/paragraphStyles.d.ts.map +1 -1
- package/dist/defaults/paragraphStyles.js +5 -1
- package/dist/defaults/paragraphStyles.js.map +1 -1
- package/dist/defaults/resourceTypes.d.ts +15 -0
- package/dist/defaults/resourceTypes.d.ts.map +1 -1
- package/dist/defaults/resourceTypes.js +39 -1
- package/dist/defaults/resourceTypes.js.map +1 -1
- package/dist/design/layout.d.ts +7 -0
- package/dist/design/layout.d.ts.map +1 -1
- package/dist/design/layout.js +109 -16
- package/dist/design/layout.js.map +1 -1
- package/dist/design/slots.d.ts +12 -10
- package/dist/design/slots.d.ts.map +1 -1
- package/dist/design/slots.js +26 -2
- package/dist/design/slots.js.map +1 -1
- package/dist/fonts/faces.d.ts.map +1 -1
- package/dist/fonts/faces.js +6 -0
- package/dist/fonts/faces.js.map +1 -1
- package/dist/highlightMarks.d.ts.map +1 -1
- package/dist/highlightMarks.js +6 -0
- package/dist/highlightMarks.js.map +1 -1
- package/dist/html-backend.d.ts.map +1 -1
- package/dist/html-backend.js +83 -7
- package/dist/html-backend.js.map +1 -1
- package/dist/htmlComic.d.ts +3 -0
- package/dist/htmlComic.d.ts.map +1 -1
- package/dist/htmlComic.js +2 -0
- package/dist/htmlComic.js.map +1 -1
- package/dist/index.d.ts +12 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -3
- package/dist/index.js.map +1 -1
- package/dist/migrate/markdownRuns.d.ts +70 -0
- package/dist/migrate/markdownRuns.d.ts.map +1 -0
- package/dist/migrate/markdownRuns.js +215 -0
- package/dist/migrate/markdownRuns.js.map +1 -0
- package/dist/migrate/pageDesign.d.ts +152 -0
- package/dist/migrate/pageDesign.d.ts.map +1 -0
- package/dist/migrate/pageDesign.js +573 -0
- package/dist/migrate/pageDesign.js.map +1 -0
- package/dist/migrate/textToMarkdown.d.ts +156 -0
- package/dist/migrate/textToMarkdown.d.ts.map +1 -0
- package/dist/migrate/textToMarkdown.js +913 -0
- package/dist/migrate/textToMarkdown.js.map +1 -0
- package/dist/parse/blockParser.js +26 -0
- package/dist/parse/blockParser.js.map +1 -1
- package/dist/pipeline/build.d.ts.map +1 -1
- package/dist/pipeline/build.js +388 -41
- package/dist/pipeline/build.js.map +1 -1
- package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
- package/dist/pipeline/buildMeasurement.js +12 -1
- package/dist/pipeline/buildMeasurement.js.map +1 -1
- package/dist/pipeline/calloutLayout.d.ts +25 -1
- package/dist/pipeline/calloutLayout.d.ts.map +1 -1
- package/dist/pipeline/calloutLayout.js +100 -2
- package/dist/pipeline/calloutLayout.js.map +1 -1
- package/dist/pipeline/composedLayout.d.ts +16 -2
- package/dist/pipeline/composedLayout.d.ts.map +1 -1
- package/dist/pipeline/composedLayout.js +337 -70
- package/dist/pipeline/composedLayout.js.map +1 -1
- package/dist/pipeline/contentWarnings.d.ts +15 -0
- package/dist/pipeline/contentWarnings.d.ts.map +1 -1
- package/dist/pipeline/contentWarnings.js +106 -1
- package/dist/pipeline/contentWarnings.js.map +1 -1
- package/dist/pipeline/dropCap.d.ts +5 -0
- package/dist/pipeline/dropCap.d.ts.map +1 -1
- package/dist/pipeline/dropCap.js +23 -2
- package/dist/pipeline/dropCap.js.map +1 -1
- package/dist/pipeline/frameLayout.d.ts +21 -3
- package/dist/pipeline/frameLayout.d.ts.map +1 -1
- package/dist/pipeline/frameLayout.js +52 -4
- package/dist/pipeline/frameLayout.js.map +1 -1
- package/dist/pipeline/headerFooter.d.ts +11 -1
- package/dist/pipeline/headerFooter.d.ts.map +1 -1
- package/dist/pipeline/headerFooter.js +210 -68
- package/dist/pipeline/headerFooter.js.map +1 -1
- package/dist/pipeline/measureContentBlock.d.ts +1 -1
- package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
- package/dist/pipeline/measureContentBlock.js +4 -1
- package/dist/pipeline/measureContentBlock.js.map +1 -1
- package/dist/pipeline/mirrorFrame.d.ts.map +1 -1
- package/dist/pipeline/mirrorFrame.js +25 -2
- package/dist/pipeline/mirrorFrame.js.map +1 -1
- package/dist/pipeline/resourceLayout.d.ts +28 -0
- package/dist/pipeline/resourceLayout.d.ts.map +1 -1
- package/dist/pipeline/resourceLayout.js +21 -0
- package/dist/pipeline/resourceLayout.js.map +1 -1
- package/dist/pipeline/resourceNumbering.d.ts.map +1 -1
- package/dist/pipeline/resourceNumbering.js +13 -4
- package/dist/pipeline/resourceNumbering.js.map +1 -1
- package/dist/pipeline/styles.d.ts +1 -1
- package/dist/pipeline/styles.d.ts.map +1 -1
- package/dist/pipeline/styles.js +4 -0
- package/dist/pipeline/styles.js.map +1 -1
- package/dist/preflight.js +5 -1
- package/dist/preflight.js.map +1 -1
- package/dist/types.d.ts +45 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/vdt.d.ts +228 -9
- package/dist/vdt.d.ts.map +1 -1
- package/dist/vdt.js.map +1 -1
- package/dist/word/toDocx.d.ts.map +1 -1
- package/dist/word/toDocx.js +14 -0
- package/dist/word/toDocx.js.map +1 -1
- package/dist/word/word.test.js +11 -1
- package/dist/word/word.test.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMeasurement.d.ts","sourceRoot":"","sources":["../../src/pipeline/buildMeasurement.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,qBAAqB,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"buildMeasurement.d.ts","sourceRoot":"","sources":["../../src/pipeline/buildMeasurement.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Measurement invocation for a single block — dispatches between plain/rich
|
|
3
3
|
* text runs and the `mathDisplay` bypass path that skips text layout entirely.
|
|
4
4
|
*/
|
|
5
|
+
import { layOutFigureLabels } from '../composed/labels';
|
|
5
6
|
import { measureBlock, measureRichBlock, cachedMeasureBlock, cachedMeasureRichBlock } from '../measure';
|
|
6
7
|
import { renderMath } from '../math';
|
|
7
8
|
import { layoutResourceBlock } from './resourceLayout';
|
|
@@ -65,7 +66,17 @@ export function runMeasurement(input) {
|
|
|
65
66
|
};
|
|
66
67
|
// A `:::figure`'s labels (#862) ride on its block: a copy, so a
|
|
67
68
|
// cached layout of the same resource keeps none of them.
|
|
68
|
-
|
|
69
|
+
// Each label is laid out on the picture as set here (#860).
|
|
70
|
+
const plain = figureLabels(contentBlock, input.bodyOffset);
|
|
71
|
+
const labels = plain
|
|
72
|
+
? layOutFigureLabels(plain, contentBlock.figure?.labels, block, {
|
|
73
|
+
resolved: input.resolved,
|
|
74
|
+
...(input.resourceNumbering ? { resourceNumbering: input.resourceNumbering } : {}),
|
|
75
|
+
...(input.resourceTypes ? { resourceTypes: input.resourceTypes } : {}),
|
|
76
|
+
...(input.resources ? { resources: input.resources } : {}),
|
|
77
|
+
...(cache ? { cache } : {}),
|
|
78
|
+
})
|
|
79
|
+
: undefined;
|
|
69
80
|
const resourceBlock = labels ? { ...block, labels } : block;
|
|
70
81
|
return { measured, resourceBlock, ...(tableRows ? { tableRows } : {}), ...(asideHeight !== undefined ? { asideHeight } : {}) };
|
|
71
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildMeasurement.js","sourceRoot":"","sources":["../../src/pipeline/buildMeasurement.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"buildMeasurement.js","sourceRoot":"","sources":["../../src/pipeline/buildMeasurement.ts"],"names":[],"mappings":"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"}
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
*/
|
|
41
41
|
import type { ContentBlock, DirectiveAttrs } from '../parse';
|
|
42
42
|
import type { CalloutPlacement, CalloutSpan, ResolvedCalloutStyleConfig } from '../types';
|
|
43
|
-
import { type ResolvedConfig, type VDTBlock, type VDTDesignBlock, type VDTExclusionContour } from '../vdt';
|
|
43
|
+
import { type ResolvedConfig, type VDTLine, type VDTBlock, type VDTDesignBlock, type VDTExclusionContour } from '../vdt';
|
|
44
44
|
import { type BlockMeasureContext } from './measureContentBlock';
|
|
45
45
|
import { type ParagraphContainerPlan } from './paragraphContainers';
|
|
46
46
|
import { type GalleyItem } from './columnsGroup';
|
|
@@ -173,7 +173,31 @@ export interface CalloutLayoutInput {
|
|
|
173
173
|
* the children is set at this share of the width it would take, below
|
|
174
174
|
* 1. */
|
|
175
175
|
pictureScale?: number;
|
|
176
|
+
/** The room a heading's own design takes in the box (#906): the
|
|
177
|
+
* `advancedDesign` of its level or heading style, laid out against the
|
|
178
|
+
* heading's box `width` wide, as in a page column. Answers the height
|
|
179
|
+
* the design reserves below the heading's top, or `undefined` when the
|
|
180
|
+
* heading has no design (its lines alone then set its height). The
|
|
181
|
+
* heading keeps at least that height; the design itself is laid out
|
|
182
|
+
* over the placed block after placement (`buildHeadersAndFooters`).
|
|
183
|
+
* Absent: headings in boxes reserve nothing for a design. */
|
|
184
|
+
headingDesign?: BoxHeadingDesign;
|
|
185
|
+
/** A continuation fragment that opens on another page than the piece
|
|
186
|
+
* before it (#917, a frame's `overflow.fromMark`): words set at its
|
|
187
|
+
* head, in the box's body face as the continuation marker is, before
|
|
188
|
+
* the first child ("Continued from page 47"). */
|
|
189
|
+
continuedMark?: string;
|
|
176
190
|
}
|
|
191
|
+
/** See `CalloutLayoutInput.headingDesign`. `lines` are the heading's
|
|
192
|
+
* measured lines (the title is joined back from them, as in a column). */
|
|
193
|
+
export type BoxHeadingDesign = (raw: ContentBlock, blockIdx: number, heading: {
|
|
194
|
+
lines: readonly VDTLine[];
|
|
195
|
+
numberPrefix: string;
|
|
196
|
+
headingNumber?: number;
|
|
197
|
+
}, width: number) => number | undefined;
|
|
198
|
+
/** Whether `block` is a heading of a box set with its own design (see
|
|
199
|
+
* `CalloutLayoutInput.headingDesign`). */
|
|
200
|
+
export declare const isDesignedBoxHeading: (block: VDTBlock) => boolean;
|
|
177
201
|
/** A box width the first child of a continuation was counted at (see
|
|
178
202
|
* `CalloutLayoutInput.lineWidths`). */
|
|
179
203
|
export interface CalloutLineWidth {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calloutLayout.d.ts","sourceRoot":"","sources":["../../src/pipeline/calloutLayout.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAG7D,OAAO,KAAK,EACV,gBAAgB,EAChB,WAAW,EAEX,0BAA0B,EAC3B,MAAM,UAAU,CAAC;AAElB,OAAO,EAKL,KAAK,cAAc,
|
|
1
|
+
{"version":3,"file":"calloutLayout.d.ts","sourceRoot":"","sources":["../../src/pipeline/calloutLayout.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,7 @@ import { resolveBodyStyle, resolveBlockquoteStyle } from './styles';
|
|
|
55
55
|
import { computeLevelIndentsPx, computeOrderedLevelIndentsPx, directListMarker, listBulletPosition, listItemGapPx, mirrorListMarker } from './lists';
|
|
56
56
|
import { measureContentBlock } from './measureContentBlock';
|
|
57
57
|
import { uppercasePreservingLength } from './buildBlockKind';
|
|
58
|
-
import { headingIsHidden } from './headingStyles';
|
|
58
|
+
import { headingIsHidden, headingStyleOf } from './headingStyles';
|
|
59
59
|
import { directDesignTextBlock } from '../design/bidiText';
|
|
60
60
|
import { arabicNumbersOf } from './config';
|
|
61
61
|
import { containerStyle, paragraphStyleIdOf } from './paragraphContainers';
|
|
@@ -204,6 +204,13 @@ export function deriveCalloutMeasureContext(ctx, style) {
|
|
|
204
204
|
orderedLevelIndentsPx: computeOrderedLevelIndentsPx(resolved, bodyStyle.fontSizePx, ctx.orderedMetrics.maxWidthByDepth),
|
|
205
205
|
};
|
|
206
206
|
}
|
|
207
|
+
/** The headings of boxes laid out with their own design (#906): their
|
|
208
|
+
* lines are not painted (the design replaces them), so a box never cuts
|
|
209
|
+
* between them. */
|
|
210
|
+
const designedBoxHeadings = new WeakSet();
|
|
211
|
+
/** Whether `block` is a heading of a box set with its own design (see
|
|
212
|
+
* `CalloutLayoutInput.headingDesign`). */
|
|
213
|
+
export const isDesignedBoxHeading = (block) => designedBoxHeadings.has(block);
|
|
207
214
|
/** The measures of `layoutCallout`'s first child across widths (see
|
|
208
215
|
* `CalloutLayoutInput.lineWidths`), per resolved configuration and
|
|
209
216
|
* content block: a build lays a split box out again on every pass. */
|
|
@@ -316,6 +323,14 @@ export function offsetBlock(blk, ox, oy) {
|
|
|
316
323
|
blk.bulletY += oy;
|
|
317
324
|
if (blk.bulletBaselineY !== undefined)
|
|
318
325
|
blk.bulletBaselineY += oy;
|
|
326
|
+
if (blk.dropCap) {
|
|
327
|
+
blk.dropCap.x += ox;
|
|
328
|
+
blk.dropCap.baselineY += oy;
|
|
329
|
+
if (blk.dropCap.hang) {
|
|
330
|
+
blk.dropCap.hang.x += ox;
|
|
331
|
+
blk.dropCap.hang.baselineY += oy;
|
|
332
|
+
}
|
|
333
|
+
}
|
|
319
334
|
if (blk.resourceBlock)
|
|
320
335
|
offsetResourceBlock(blk.resourceBlock, ox, oy);
|
|
321
336
|
// A nested box's frame carries its decoration on the overlay.
|
|
@@ -540,6 +555,32 @@ export function layoutCallout(input) {
|
|
|
540
555
|
}, titleTrackingPx);
|
|
541
556
|
cursorY += titleHeight;
|
|
542
557
|
}
|
|
558
|
+
// "Continued from …" at the head of a piece that opens on another page
|
|
559
|
+
// (#917): pagination furniture, as the "Continued" marker is.
|
|
560
|
+
const fromText = input.continuation ? (input.continuedMark ?? '').trim() : '';
|
|
561
|
+
let fromBlock;
|
|
562
|
+
if (fromText.length > 0) {
|
|
563
|
+
const font = buildFontString(style.body.fontFamily, em, style.body.fontWeight.toString(), style.continuesMarkerItalic ? 'italic' : 'normal');
|
|
564
|
+
const lh = bodyStyle.lineHeightPx;
|
|
565
|
+
const { lines } = measureRichBlock([{ text: fromText, bold: false, italic: false }], font, font, font, font, innerWidth, lh, { textAlign: 'left' });
|
|
566
|
+
if (lines.length > 0) {
|
|
567
|
+
const top = cursorY;
|
|
568
|
+
const align = style.continuesMarkerAlign;
|
|
569
|
+
fromBlock = directText({
|
|
570
|
+
kind: 'text',
|
|
571
|
+
bbox: createBoundingBox(innerX, top, innerWidth, lines.length * lh),
|
|
572
|
+
fontString: font,
|
|
573
|
+
color: bodyStyle.color,
|
|
574
|
+
lines: lines.map((ln, i) => {
|
|
575
|
+
const slack = Math.max(0, innerWidth - ln.bbox.width);
|
|
576
|
+
return { text: ln.text, xOffset: align === 'right' ? slack : align === 'center' ? slack / 2 : 0, baselineY: top + i * lh + lineBaselineOffset(lh, font), width: ln.bbox.width };
|
|
577
|
+
}),
|
|
578
|
+
clip: false,
|
|
579
|
+
artifact: true,
|
|
580
|
+
});
|
|
581
|
+
cursorY += lines.length * lh;
|
|
582
|
+
}
|
|
583
|
+
}
|
|
543
584
|
// --- Children --------------------------------------------------------------
|
|
544
585
|
// The children stack under the title; a `:::columns{count=N}` group among
|
|
545
586
|
// them lays its own children out in N columns of equal width, cut at
|
|
@@ -765,6 +806,11 @@ export function layoutCallout(input) {
|
|
|
765
806
|
// with its lines short beside them. A child the range opens inside
|
|
766
807
|
// keeps the lines it was counted with.
|
|
767
808
|
const opensInside = lineCut ? lineCut.from > 0 : isFirstRealOf(k) && (input.lineFrom ?? 0) > 0;
|
|
809
|
+
// A drop cap (#623) in a composed page's frame (#922): on the piece
|
|
810
|
+
// that holds the paragraph's first line, its rise kept clear above.
|
|
811
|
+
const cap = measuredBlock.dropCap && !opensInside ? measuredBlock.dropCap : undefined;
|
|
812
|
+
if (cap && cap.rise > 0.5)
|
|
813
|
+
st.cursorY += cap.rise;
|
|
768
814
|
if (exclusions.length > 0 && !opensInside && !(vdtType === 'resource' && resourceBlock) && !(vdtType === 'mathDisplay' && mathDisplayRender)) {
|
|
769
815
|
const lineInsets = exclusionInsets(exclusions, x, width, st.cursorY, kind.style.lineHeightPx);
|
|
770
816
|
if (lineInsets.length > 0) {
|
|
@@ -848,9 +894,32 @@ export function layoutCallout(input) {
|
|
|
848
894
|
height = blk.lines.length * bs.lineHeightPx;
|
|
849
895
|
blk.sourceStart = keptLines[0].sourceStart ?? raw.sourceStart + ctx.bodyOffset;
|
|
850
896
|
blk.sourceEnd = keptLines[keptLines.length - 1].sourceEnd ?? raw.sourceEnd + ctx.bodyOffset;
|
|
897
|
+
// A short paragraph keeps the room under its initial (`'reserve'`).
|
|
898
|
+
if (cap && cutTo === undefined)
|
|
899
|
+
height = Math.max(height, cap.minLines * bs.lineHeightPx);
|
|
900
|
+
}
|
|
901
|
+
// A heading with a design of its own (#906): the box keeps the room
|
|
902
|
+
// the design takes, as a page column does. A heading opened after its
|
|
903
|
+
// first line has no design to draw.
|
|
904
|
+
const blockWidth = widthLessEndIndent(blk, width);
|
|
905
|
+
if (vdtType === 'heading' && !hiddenHeading && !openedMidRun && isTextRun && input.headingDesign) {
|
|
906
|
+
const reserve = input.headingDesign(raw, blockIdx, { lines: measured.lines, numberPrefix: numberPrefix ?? '', ...(headingNumber !== undefined ? { headingNumber } : {}) }, blockWidth);
|
|
907
|
+
if (reserve !== undefined) {
|
|
908
|
+
designedBoxHeadings.add(blk);
|
|
909
|
+
if (Number.isFinite(reserve) && reserve > height)
|
|
910
|
+
height = reserve;
|
|
911
|
+
const offset = input.bodyOffset ?? ctx.bodyOffset;
|
|
912
|
+
const styleId = headingStyleOf(raw, input.resolved)?.id;
|
|
913
|
+
blk.boxDesign = {
|
|
914
|
+
...(styleId !== undefined ? { styleId } : {}),
|
|
915
|
+
...(raw.attrs ? { attrs: raw.attrs } : {}),
|
|
916
|
+
...(raw.attrSources ? { attrSources: Object.fromEntries(Object.entries(raw.attrSources).map(([k, r]) => [k, { start: r.start + offset, end: r.end + offset }])) } : {}),
|
|
917
|
+
...(raw.titleBreaks ? { titleBreaks: raw.titleBreaks, titleLength: raw.text.length } : {}),
|
|
918
|
+
};
|
|
919
|
+
}
|
|
851
920
|
}
|
|
852
921
|
// Relocate to the inner rect (box-relative).
|
|
853
|
-
blk.bbox = createBoundingBox(x, st.cursorY,
|
|
922
|
+
blk.bbox = createBoundingBox(x, st.cursorY, blockWidth, height);
|
|
854
923
|
for (const line of blk.lines) {
|
|
855
924
|
shiftLineX(line, x);
|
|
856
925
|
line.bbox.y += st.cursorY;
|
|
@@ -858,6 +927,30 @@ export function layoutCallout(input) {
|
|
|
858
927
|
}
|
|
859
928
|
if (blk.resourceBlock)
|
|
860
929
|
offsetResourceBlock(blk.resourceBlock, x, st.cursorY);
|
|
930
|
+
const capLine = blk.lines[0];
|
|
931
|
+
if (cap && capLine && isTextRun) {
|
|
932
|
+
// As the flow stamps it (`build.ts`): on the baseline of the line it
|
|
933
|
+
// sinks to.
|
|
934
|
+
blk.dropCap = {
|
|
935
|
+
text: cap.text,
|
|
936
|
+
fontString: cap.fontString,
|
|
937
|
+
color: cap.color,
|
|
938
|
+
x: blk.bbox.x + cap.x,
|
|
939
|
+
baselineY: capLine.baseline + (cap.sink - 1) * bs.lineHeightPx,
|
|
940
|
+
width: cap.width,
|
|
941
|
+
fontSizePx: cap.fontSizePx,
|
|
942
|
+
lines: cap.lines,
|
|
943
|
+
sink: cap.sink,
|
|
944
|
+
...(cap.sourceStart !== undefined ? { sourceStart: cap.sourceStart, sourceEnd: cap.sourceEnd } : {}),
|
|
945
|
+
plainStart: cap.plainStart,
|
|
946
|
+
plainEnd: cap.plainEnd,
|
|
947
|
+
word: cap.word,
|
|
948
|
+
wordRest: cap.wordRest,
|
|
949
|
+
...(cap.hang ? { hang: { text: cap.hang.text, fontString: cap.hang.fontString, x: blk.bbox.x + cap.hang.x, baselineY: capLine.baseline, width: cap.hang.width } } : {}),
|
|
950
|
+
};
|
|
951
|
+
if (cap.sourceStart !== undefined && (blk.sourceStart === undefined || cap.sourceStart < blk.sourceStart))
|
|
952
|
+
blk.sourceStart = cap.sourceStart;
|
|
953
|
+
}
|
|
861
954
|
// A code listing (#624): its language, numbers and fit; the lines a
|
|
862
955
|
// fence highlights get a band across the box.
|
|
863
956
|
if (code) {
|
|
@@ -994,6 +1087,7 @@ export function layoutCallout(input) {
|
|
|
994
1087
|
...(reopened && reopened.openRest.length > 0 ? { openNested: reopened.openRest } : {}),
|
|
995
1088
|
mirrored: input.mirrored,
|
|
996
1089
|
nestPath: [...(nestPath ?? []), open.containerId],
|
|
1090
|
+
...(input.headingDesign ? { headingDesign: input.headingDesign } : {}),
|
|
997
1091
|
});
|
|
998
1092
|
// Spacing above: as a paragraph's (margin collapsing, none at the top
|
|
999
1093
|
// of the box beyond the title gap).
|
|
@@ -1447,6 +1541,8 @@ export function layoutCallout(input) {
|
|
|
1447
1541
|
if (style.icon.align === 'center') {
|
|
1448
1542
|
if (titleBlock)
|
|
1449
1543
|
offsetDesignBlock(titleBlock, 0, extra / 2);
|
|
1544
|
+
if (fromBlock)
|
|
1545
|
+
offsetDesignBlock(fromBlock, 0, extra / 2);
|
|
1450
1546
|
if (continuesBlock)
|
|
1451
1547
|
offsetDesignBlock(continuesBlock, 0, extra / 2);
|
|
1452
1548
|
for (const blk of childBlocks)
|
|
@@ -1568,6 +1664,8 @@ export function layoutCallout(input) {
|
|
|
1568
1664
|
overlayBlocks.push(...groupRules);
|
|
1569
1665
|
if (titleBlock)
|
|
1570
1666
|
overlayBlocks.push(titleBlock);
|
|
1667
|
+
if (fromBlock)
|
|
1668
|
+
overlayBlocks.push(fromBlock);
|
|
1571
1669
|
if (continuesBlock)
|
|
1572
1670
|
overlayBlocks.push(continuesBlock);
|
|
1573
1671
|
// --- Label tab ---------------------------------------------------------------
|