postext 1.33.11 → 1.34.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/__tests__/bundle/designOverflowPin.test.js +1 -1
- package/dist/__tests__/bundle/gridBreakRulesPin.test.js +2 -2
- package/dist/__tests__/bundle/shapingLanguagePin.test.js +3 -3
- package/dist/__tests__/bundle/taskBoxPin.test.js +1 -1
- package/dist/__tests__/bundle.test.js +34 -2
- package/dist/__tests__/bundle.test.js.map +1 -1
- package/dist/__tests__/codeBlocks.test.js +89 -1
- package/dist/__tests__/codeBlocks.test.js.map +1 -1
- package/dist/__tests__/composed/corpus.test.d.ts +2 -0
- package/dist/__tests__/composed/corpus.test.d.ts.map +1 -0
- package/dist/__tests__/composed/corpus.test.js +33 -0
- package/dist/__tests__/composed/corpus.test.js.map +1 -0
- package/dist/__tests__/composed/fixtures/page8.d.ts +20 -0
- package/dist/__tests__/composed/fixtures/page8.d.ts.map +1 -0
- package/dist/__tests__/composed/fixtures/page8.js +159 -0
- package/dist/__tests__/composed/fixtures/page8.js.map +1 -0
- package/dist/__tests__/composed/layout.test.d.ts +2 -0
- package/dist/__tests__/composed/layout.test.d.ts.map +1 -0
- package/dist/__tests__/composed/layout.test.js +387 -0
- package/dist/__tests__/composed/layout.test.js.map +1 -0
- package/dist/__tests__/composed/slotChecks.test.d.ts +2 -0
- package/dist/__tests__/composed/slotChecks.test.d.ts.map +1 -0
- package/dist/__tests__/composed/slotChecks.test.js +151 -0
- package/dist/__tests__/composed/slotChecks.test.js.map +1 -0
- package/dist/__tests__/composedPaint.test.d.ts +2 -0
- package/dist/__tests__/composedPaint.test.d.ts.map +1 -0
- package/dist/__tests__/composedPaint.test.js +191 -0
- package/dist/__tests__/composedPaint.test.js.map +1 -0
- package/dist/__tests__/composedTemplates.test.d.ts +2 -0
- package/dist/__tests__/composedTemplates.test.d.ts.map +1 -0
- package/dist/__tests__/composedTemplates.test.js +349 -0
- package/dist/__tests__/composedTemplates.test.js.map +1 -0
- package/dist/__tests__/contentInConfig.test.d.ts +2 -0
- package/dist/__tests__/contentInConfig.test.d.ts.map +1 -0
- package/dist/__tests__/contentInConfig.test.js +201 -0
- package/dist/__tests__/contentInConfig.test.js.map +1 -0
- package/dist/__tests__/defaults/stripRoundTrip.test.js +6 -3
- package/dist/__tests__/defaults/stripRoundTrip.test.js.map +1 -1
- package/dist/__tests__/exports.test.js +34 -0
- package/dist/__tests__/exports.test.js.map +1 -1
- package/dist/__tests__/hardBreaks.test.js +1 -1
- package/dist/__tests__/headingInlineMarks.test.js +1 -1
- package/dist/__tests__/highlightMarks.test.d.ts +2 -0
- package/dist/__tests__/highlightMarks.test.d.ts.map +1 -0
- package/dist/__tests__/highlightMarks.test.js +169 -0
- package/dist/__tests__/highlightMarks.test.js.map +1 -0
- package/dist/__tests__/mathSizeMigration.test.js +2 -2
- package/dist/__tests__/parse/composedPages.test.d.ts +2 -0
- package/dist/__tests__/parse/composedPages.test.d.ts.map +1 -0
- package/dist/__tests__/parse/composedPages.test.js +323 -0
- package/dist/__tests__/parse/composedPages.test.js.map +1 -0
- package/dist/__tests__/parse/containers.test.js +2 -2
- package/dist/__tests__/parse/containers.test.js.map +1 -1
- package/dist/__tests__/pipeline/calloutInlineResourceGap.test.js +1 -1
- package/dist/__tests__/pipeline/calloutSplitMinLinesChild.test.js +1 -1
- package/dist/__tests__/pipeline/colonListRoom.test.js +1 -1
- package/dist/__tests__/pipeline/compoundBreaks.test.js +1 -1
- package/dist/__tests__/pipeline/dashBreaks.test.js +1 -1
- package/dist/__tests__/pipeline/headingSplitOrphans.test.js +1 -1
- package/dist/__tests__/pipeline/inlineFigureSpace.test.js +1 -1
- package/dist/__tests__/pipeline/paragraphContainerTail.test.js +1 -1
- package/dist/__tests__/pipeline/raggedOptimal.test.js +1 -1
- package/dist/__tests__/tocGroups.test.d.ts +2 -0
- package/dist/__tests__/tocGroups.test.d.ts.map +1 -0
- package/dist/__tests__/tocGroups.test.js +213 -0
- package/dist/__tests__/tocGroups.test.js.map +1 -0
- package/dist/__tests__/tocPartLeader.test.d.ts +2 -0
- package/dist/__tests__/tocPartLeader.test.d.ts.map +1 -0
- package/dist/__tests__/tocPartLeader.test.js +133 -0
- package/dist/__tests__/tocPartLeader.test.js.map +1 -0
- package/dist/__tests__/verseLines.test.js +1 -1
- package/dist/bundle/api.d.ts +8 -0
- package/dist/bundle/api.d.ts.map +1 -1
- package/dist/bundle/api.js +6 -3
- package/dist/bundle/api.js.map +1 -1
- package/dist/bundle/codec.d.ts +5 -0
- package/dist/bundle/codec.d.ts.map +1 -1
- package/dist/bundle/codec.js +4 -0
- package/dist/bundle/codec.js.map +1 -1
- package/dist/bundle/configVersion.d.ts +16 -5
- package/dist/bundle/configVersion.d.ts.map +1 -1
- package/dist/bundle/configVersion.js +17 -4
- package/dist/bundle/configVersion.js.map +1 -1
- package/dist/bundle/index.d.ts +2 -2
- package/dist/bundle/index.d.ts.map +1 -1
- package/dist/bundle/index.js +1 -1
- package/dist/bundle/index.js.map +1 -1
- package/dist/bundle/manifest.d.ts +14 -0
- package/dist/bundle/manifest.d.ts.map +1 -1
- package/dist/bundle/manifest.js +13 -0
- package/dist/bundle/manifest.js.map +1 -1
- package/dist/bundle/types.d.ts +11 -3
- package/dist/bundle/types.d.ts.map +1 -1
- package/dist/canvas-backend/annotations.d.ts +6 -0
- package/dist/canvas-backend/annotations.d.ts.map +1 -1
- package/dist/canvas-backend/annotations.js +39 -0
- package/dist/canvas-backend/annotations.js.map +1 -1
- package/dist/canvas-backend/blockRender.d.ts.map +1 -1
- package/dist/canvas-backend/blockRender.js +6 -1
- package/dist/canvas-backend/blockRender.js.map +1 -1
- package/dist/canvas-backend/composed.d.ts +15 -0
- package/dist/canvas-backend/composed.d.ts.map +1 -0
- package/dist/canvas-backend/composed.js +41 -0
- package/dist/canvas-backend/composed.js.map +1 -0
- package/dist/canvas-backend/index.d.ts.map +1 -1
- package/dist/canvas-backend/index.js +15 -1
- package/dist/canvas-backend/index.js.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.js +4 -1
- package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
- package/dist/composed/document.d.ts +43 -0
- package/dist/composed/document.d.ts.map +1 -0
- package/dist/composed/document.js +88 -0
- package/dist/composed/document.js.map +1 -0
- package/dist/composed/geometry.d.ts +108 -0
- package/dist/composed/geometry.d.ts.map +1 -0
- package/dist/composed/geometry.js +241 -0
- package/dist/composed/geometry.js.map +1 -0
- package/dist/composed/paint.d.ts +41 -0
- package/dist/composed/paint.d.ts.map +1 -0
- package/dist/composed/paint.js +83 -0
- package/dist/composed/paint.js.map +1 -0
- package/dist/composed/slotChecks.d.ts +29 -0
- package/dist/composed/slotChecks.d.ts.map +1 -0
- package/dist/composed/slotChecks.js +109 -0
- package/dist/composed/slotChecks.js.map +1 -0
- package/dist/composed/templates.d.ts +133 -0
- package/dist/composed/templates.d.ts.map +1 -0
- package/dist/composed/templates.js +702 -0
- package/dist/composed/templates.js.map +1 -0
- package/dist/composed/types.d.ts +361 -0
- package/dist/composed/types.d.ts.map +1 -0
- package/dist/composed/types.js +2 -0
- package/dist/composed/types.js.map +1 -0
- package/dist/composed/validate.d.ts +26 -0
- package/dist/composed/validate.d.ts.map +1 -0
- package/dist/composed/validate.js +276 -0
- package/dist/composed/validate.js.map +1 -0
- package/dist/composed/wrap.d.ts +52 -0
- package/dist/composed/wrap.d.ts.map +1 -0
- package/dist/composed/wrap.js +234 -0
- package/dist/composed/wrap.js.map +1 -0
- package/dist/configWarnings.d.ts +19 -3
- package/dist/configWarnings.d.ts.map +1 -1
- package/dist/configWarnings.js +171 -41
- package/dist/configWarnings.js.map +1 -1
- package/dist/defaults/checks.d.ts +7 -0
- package/dist/defaults/checks.d.ts.map +1 -0
- package/dist/defaults/checks.js +49 -0
- package/dist/defaults/checks.js.map +1 -0
- package/dist/defaults/codeStyle.d.ts.map +1 -1
- package/dist/defaults/codeStyle.js +1 -0
- package/dist/defaults/codeStyle.js.map +1 -1
- package/dist/defaults/index.d.ts +2 -0
- package/dist/defaults/index.d.ts.map +1 -1
- package/dist/defaults/index.js +35 -0
- package/dist/defaults/index.js.map +1 -1
- package/dist/defaults/markStyles.d.ts +23 -0
- package/dist/defaults/markStyles.d.ts.map +1 -0
- package/dist/defaults/markStyles.js +80 -0
- package/dist/defaults/markStyles.js.map +1 -0
- package/dist/defaults/shared.d.ts.map +1 -1
- package/dist/defaults/shared.js +12 -0
- package/dist/defaults/shared.js.map +1 -1
- package/dist/defaults/toc.d.ts +17 -2
- package/dist/defaults/toc.d.ts.map +1 -1
- package/dist/defaults/toc.js +53 -1
- package/dist/defaults/toc.js.map +1 -1
- package/dist/design/bidiText.d.ts +4 -1
- package/dist/design/bidiText.d.ts.map +1 -1
- package/dist/design/bidiText.js +5 -2
- package/dist/design/bidiText.js.map +1 -1
- package/dist/design/layout.d.ts +10 -0
- package/dist/design/layout.d.ts.map +1 -1
- package/dist/design/layout.js +110 -8
- package/dist/design/layout.js.map +1 -1
- package/dist/design/placeholders.d.ts +28 -2
- package/dist/design/placeholders.d.ts.map +1 -1
- package/dist/design/placeholders.js +24 -1
- package/dist/design/placeholders.js.map +1 -1
- package/dist/design/richText.d.ts +2 -0
- package/dist/design/richText.d.ts.map +1 -1
- package/dist/design/richText.js.map +1 -1
- package/dist/design/slots.d.ts +29 -0
- package/dist/design/slots.d.ts.map +1 -0
- package/dist/design/slots.js +48 -0
- package/dist/design/slots.js.map +1 -0
- package/dist/highlightMarks.d.ts +33 -0
- package/dist/highlightMarks.d.ts.map +1 -0
- package/dist/highlightMarks.js +209 -0
- package/dist/highlightMarks.js.map +1 -0
- package/dist/html-backend.d.ts.map +1 -1
- package/dist/html-backend.js +65 -8
- package/dist/html-backend.js.map +1 -1
- package/dist/htmlAnnotations.d.ts +5 -0
- package/dist/htmlAnnotations.d.ts.map +1 -1
- package/dist/htmlAnnotations.js +16 -0
- package/dist/htmlAnnotations.js.map +1 -1
- package/dist/index.d.ts +21 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +14 -3
- package/dist/index.js.map +1 -1
- package/dist/knuthPlass/richAdapter.d.ts +3 -0
- package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
- package/dist/knuthPlass/richAdapter.js +3 -2
- package/dist/knuthPlass/richAdapter.js.map +1 -1
- package/dist/measure/cache.js +3 -3
- package/dist/measure/cache.js.map +1 -1
- package/dist/measure/chipEdges.d.ts +13 -1
- package/dist/measure/chipEdges.d.ts.map +1 -1
- package/dist/measure/chipEdges.js +59 -1
- package/dist/measure/chipEdges.js.map +1 -1
- package/dist/measure/links.d.ts.map +1 -1
- package/dist/measure/links.js +78 -5
- package/dist/measure/links.js.map +1 -1
- package/dist/measure/rich.d.ts +3 -0
- package/dist/measure/rich.d.ts.map +1 -1
- package/dist/measure/rich.js +19 -4
- package/dist/measure/rich.js.map +1 -1
- package/dist/parse/blockParser.d.ts.map +1 -1
- package/dist/parse/blockParser.js +295 -36
- package/dist/parse/blockParser.js.map +1 -1
- package/dist/parse/index.d.ts +1 -1
- package/dist/parse/index.d.ts.map +1 -1
- package/dist/parse/index.js.map +1 -1
- package/dist/parse/indexMarks.d.ts.map +1 -1
- package/dist/parse/indexMarks.js +24 -0
- package/dist/parse/indexMarks.js.map +1 -1
- package/dist/parse/inlineFormatting.d.ts +14 -0
- package/dist/parse/inlineFormatting.d.ts.map +1 -1
- package/dist/parse/inlineFormatting.js +104 -5
- package/dist/parse/inlineFormatting.js.map +1 -1
- package/dist/parse/links.js +1 -1
- package/dist/parse/links.js.map +1 -1
- package/dist/parse/softBreaks.js +1 -1
- package/dist/parse/softBreaks.js.map +1 -1
- package/dist/parse/sourceMapping.d.ts.map +1 -1
- package/dist/parse/sourceMapping.js +19 -3
- package/dist/parse/sourceMapping.js.map +1 -1
- package/dist/parse/types.d.ts +119 -2
- package/dist/parse/types.d.ts.map +1 -1
- package/dist/pipeline/build.d.ts.map +1 -1
- package/dist/pipeline/build.js +318 -287
- package/dist/pipeline/build.js.map +1 -1
- package/dist/pipeline/calloutLayout.d.ts +33 -0
- package/dist/pipeline/calloutLayout.d.ts.map +1 -1
- package/dist/pipeline/calloutLayout.js +91 -2
- package/dist/pipeline/calloutLayout.js.map +1 -1
- package/dist/pipeline/codeInline.d.ts +10 -1
- package/dist/pipeline/codeInline.d.ts.map +1 -1
- package/dist/pipeline/codeInline.js +96 -15
- package/dist/pipeline/codeInline.js.map +1 -1
- package/dist/pipeline/composedLayout.d.ts +88 -0
- package/dist/pipeline/composedLayout.d.ts.map +1 -0
- package/dist/pipeline/composedLayout.js +320 -0
- package/dist/pipeline/composedLayout.js.map +1 -0
- package/dist/pipeline/config.d.ts.map +1 -1
- package/dist/pipeline/config.js +18 -2
- package/dist/pipeline/config.js.map +1 -1
- package/dist/pipeline/contentWarnings.d.ts.map +1 -1
- package/dist/pipeline/contentWarnings.js +105 -1
- package/dist/pipeline/contentWarnings.js.map +1 -1
- package/dist/pipeline/floatSlots.js +1 -1
- package/dist/pipeline/floatSlots.js.map +1 -1
- package/dist/pipeline/frameLayout.d.ts +120 -0
- package/dist/pipeline/frameLayout.d.ts.map +1 -0
- package/dist/pipeline/frameLayout.js +279 -0
- package/dist/pipeline/frameLayout.js.map +1 -0
- package/dist/pipeline/headerFooter.d.ts.map +1 -1
- package/dist/pipeline/headerFooter.js +48 -3
- package/dist/pipeline/headerFooter.js.map +1 -1
- package/dist/pipeline/pageRoles.d.ts +1 -0
- package/dist/pipeline/pageRoles.d.ts.map +1 -1
- package/dist/pipeline/pageRoles.js +3 -0
- package/dist/pipeline/pageRoles.js.map +1 -1
- package/dist/pipeline/placeholders.d.ts +7 -0
- package/dist/pipeline/placeholders.d.ts.map +1 -1
- package/dist/pipeline/placeholders.js +41 -0
- package/dist/pipeline/placeholders.js.map +1 -1
- package/dist/pipeline/placement.js +1 -1
- package/dist/pipeline/placement.js.map +1 -1
- package/dist/pipeline/resourceLayout.d.ts.map +1 -1
- package/dist/pipeline/resourceLayout.js +5 -3
- package/dist/pipeline/resourceLayout.js.map +1 -1
- package/dist/pipeline/tabs.js +1 -1
- package/dist/pipeline/tabs.js.map +1 -1
- package/dist/pipeline/textWrap.js +1 -1
- package/dist/pipeline/textWrap.js.map +1 -1
- package/dist/pipeline/toc.d.ts +11 -1
- package/dist/pipeline/toc.d.ts.map +1 -1
- package/dist/pipeline/toc.js +147 -8
- package/dist/pipeline/toc.js.map +1 -1
- package/dist/types.d.ts +168 -3
- package/dist/types.d.ts.map +1 -1
- package/dist/util/closestKey.d.ts +4 -0
- package/dist/util/closestKey.d.ts.map +1 -0
- package/dist/util/closestKey.js +40 -0
- package/dist/util/closestKey.js.map +1 -0
- package/dist/vdt.d.ts +293 -7
- package/dist/vdt.d.ts.map +1 -1
- package/dist/vdt.js.map +1 -1
- package/package.json +1 -1
package/dist/defaults/toc.js
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
+
import { presentTag } from '../locale';
|
|
1
2
|
import { resolveDesignSlot, stripDesignSlotDefaults } from './headerFooter';
|
|
3
|
+
import { defaultTableContinuationStrings } from './tableStyle';
|
|
2
4
|
const ZERO = { value: 0, unit: 'em' };
|
|
3
5
|
const NUMBER_WIDTH = { value: 2, unit: 'em' };
|
|
4
6
|
const HALF_EM = { value: 0.5, unit: 'em' };
|
|
@@ -12,7 +14,22 @@ export const DEFAULT_TOC_CONFIG = {
|
|
|
12
14
|
pageNumber: { width: NUMBER_WIDTH },
|
|
13
15
|
subtitle: { enabled: false, attr: 'author' },
|
|
14
16
|
parts: { enabled: true, breakBefore: false },
|
|
17
|
+
groups: { keepTogether: false, head: 'part', minEntriesAfterHead: 2, continuation: { enabled: true } },
|
|
15
18
|
};
|
|
19
|
+
/** A `toc.groups.head` value as written (`'part'`, `1`…`6`, or the same as
|
|
20
|
+
* a string: a directive's `keep="2"`), else undefined. */
|
|
21
|
+
export function parseTocGroupHead(value) {
|
|
22
|
+
if (value === 'part')
|
|
23
|
+
return 'part';
|
|
24
|
+
const n = typeof value === 'number' ? value : typeof value === 'string' && /^\s*[1-6]\s*$/.test(value) ? Number(value) : NaN;
|
|
25
|
+
return Number.isInteger(n) && n >= 1 && n <= 6 ? n : undefined;
|
|
26
|
+
}
|
|
27
|
+
/** The default continuation mark of a contents block in `locale`: the
|
|
28
|
+
* continued-table suffix of that language ("(cont.)", "(suite)",
|
|
29
|
+
* "(续)"…). */
|
|
30
|
+
export function defaultTocContinuationMark(locale) {
|
|
31
|
+
return defaultTableContinuationStrings(locale).continuedSuffix;
|
|
32
|
+
}
|
|
16
33
|
function resolveEntryStyle(partial, bodyText) {
|
|
17
34
|
const fontFamily = partial?.fontFamily ?? bodyText.fontFamily;
|
|
18
35
|
const fontSize = partial?.fontSize ?? bodyText.fontSize;
|
|
@@ -46,7 +63,7 @@ function partialEntryStyle(partial) {
|
|
|
46
63
|
}
|
|
47
64
|
return out;
|
|
48
65
|
}
|
|
49
|
-
export function resolveTocConfig(partial, bodyText) {
|
|
66
|
+
export function resolveTocConfig(partial, bodyText, locale) {
|
|
50
67
|
const d = DEFAULT_TOC_CONFIG;
|
|
51
68
|
const levelsIn = partial?.levels && partial.levels.length > 0
|
|
52
69
|
? partial.levels
|
|
@@ -56,6 +73,7 @@ export function resolveTocConfig(partial, bodyText) {
|
|
|
56
73
|
const pn = partial?.pageNumber;
|
|
57
74
|
const sub = partial?.subtitle;
|
|
58
75
|
const parts = partial?.parts;
|
|
76
|
+
const groups = partial?.groups;
|
|
59
77
|
return {
|
|
60
78
|
levels,
|
|
61
79
|
unnumbered: partialEntryStyle(partial?.unnumbered),
|
|
@@ -90,6 +108,16 @@ export function resolveTocConfig(partial, bodyText) {
|
|
|
90
108
|
marginTop: parts?.marginTop ?? ZERO,
|
|
91
109
|
marginBottom: parts?.marginBottom ?? ZERO,
|
|
92
110
|
},
|
|
111
|
+
groups: {
|
|
112
|
+
keepTogether: groups?.keepTogether ?? d.groups.keepTogether,
|
|
113
|
+
head: parseTocGroupHead(groups?.head) ?? d.groups.head,
|
|
114
|
+
minEntriesAfterHead: Math.max(0, Math.floor(groups?.minEntriesAfterHead ?? d.groups.minEntriesAfterHead)),
|
|
115
|
+
continuation: {
|
|
116
|
+
enabled: groups?.continuation?.enabled ?? d.groups.continuation.enabled,
|
|
117
|
+
// The document's language, as a continued table's (#850).
|
|
118
|
+
mark: groups?.continuation?.mark ?? defaultTocContinuationMark(presentTag(locale) ?? bodyText.hyphenation.tag ?? bodyText.hyphenation.locale),
|
|
119
|
+
},
|
|
120
|
+
},
|
|
93
121
|
};
|
|
94
122
|
}
|
|
95
123
|
function stripObject(obj) {
|
|
@@ -166,6 +194,30 @@ export function stripTocDefaults(toc) {
|
|
|
166
194
|
if (kept)
|
|
167
195
|
r.parts = kept;
|
|
168
196
|
}
|
|
197
|
+
if (toc.groups) {
|
|
198
|
+
const g = {};
|
|
199
|
+
const gd = d.groups;
|
|
200
|
+
if (toc.groups.keepTogether !== undefined && toc.groups.keepTogether !== gd.keepTogether)
|
|
201
|
+
g.keepTogether = toc.groups.keepTogether;
|
|
202
|
+
if (toc.groups.head !== undefined && toc.groups.head !== gd.head)
|
|
203
|
+
g.head = toc.groups.head;
|
|
204
|
+
if (toc.groups.minEntriesAfterHead !== undefined && toc.groups.minEntriesAfterHead !== gd.minEntriesAfterHead)
|
|
205
|
+
g.minEntriesAfterHead = toc.groups.minEntriesAfterHead;
|
|
206
|
+
if (toc.groups.continuation) {
|
|
207
|
+
const c = {};
|
|
208
|
+
if (toc.groups.continuation.enabled !== undefined && toc.groups.continuation.enabled !== gd.continuation.enabled)
|
|
209
|
+
c.enabled = toc.groups.continuation.enabled;
|
|
210
|
+
// The default mark follows the language: an explicit one is kept.
|
|
211
|
+
if (toc.groups.continuation.mark !== undefined)
|
|
212
|
+
c.mark = toc.groups.continuation.mark;
|
|
213
|
+
const kept = stripObject(c);
|
|
214
|
+
if (kept)
|
|
215
|
+
g.continuation = kept;
|
|
216
|
+
}
|
|
217
|
+
const kept = stripObject(g);
|
|
218
|
+
if (kept)
|
|
219
|
+
r.groups = kept;
|
|
220
|
+
}
|
|
169
221
|
return stripObject(r);
|
|
170
222
|
}
|
|
171
223
|
//# sourceMappingURL=toc.js.map
|
package/dist/defaults/toc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toc.js","sourceRoot":"","sources":["../../src/defaults/toc.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toc.js","sourceRoot":"","sources":["../../src/defaults/toc.ts"],"names":[],"mappings":"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"}
|
|
@@ -121,7 +121,10 @@ export declare function directDesignTextBlock(block: VDTDesignTextBlock, base: '
|
|
|
121
121
|
export declare function directChipRuns<R extends Run>(runs: R[], measure: (text: string, font: string, rtl: boolean) => number,
|
|
122
122
|
/** Every run takes its own advance, in the direction it is painted in
|
|
123
123
|
* ({@link measuresRunsAsPainted}): the chip is then as wide as its runs. */
|
|
124
|
-
asPainted?: boolean
|
|
124
|
+
asPainted?: boolean,
|
|
125
|
+
/** The base direction, when the chip has one of its own (inline code
|
|
126
|
+
* reads left to right, #845); else that of its first strong letter. */
|
|
127
|
+
base?: 'ltr' | 'rtl'): {
|
|
125
128
|
runs: (R & {
|
|
126
129
|
rtl?: true;
|
|
127
130
|
})[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bidiText.d.ts","sourceRoot":"","sources":["../../src/design/bidiText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAOH,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,QAAQ,CAAC;AAEnE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED;;kCAEkC;AAClC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAGhF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,aAAa,UAAQ,GAAG,MAAM,CAYhH;AAED,4EAA4E;AAC5E,UAAU,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd;gDAC4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACtC;AAED;yEACyE;AACzE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAS5E;AAED;6EAC6E;AAC7E,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,EAC7C,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,KAAK,GAAG,KAAK,GAC/B,KAAK,GAAG,KAAK,CAIf;AAED;gCACgC;AAChC,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,IAAI,EAAE,CAAC,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,EAAE,CAAC;IAC7B,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,GAAG,EACtC,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,MAAM;AACvD;qEACqE;AACrE,aAAa,UAAQ,EACrB,SAAS,UAAQ,GAChB,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAgD7B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,QAAQ,EAAE,OAAO,EACjB,UAAU,SAAI,EACd,aAAa,UAAQ,GACpB,IAAI,CAkBN;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,GAAG,EAC1C,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,MAAM;AAC7D;6EAC6E;AAC7E,SAAS,UAAQ,
|
|
1
|
+
{"version":3,"file":"bidiText.d.ts","sourceRoot":"","sources":["../../src/design/bidiText.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAOH,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,QAAQ,CAAC;AAEnE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAE/C;AAED;;kCAEkC;AAClC,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,GAAG,MAAM,CAGhF;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,GAAG,KAAK,EAAE,aAAa,UAAQ,GAAG,MAAM,CAYhH;AAED,4EAA4E;AAC5E,UAAU,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd;gDAC4C;IAC5C,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,GAAG,CAAC,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACtC;AAED;yEACyE;AACzE,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,GAAG,KAAK,GAAG,SAAS,CAS5E;AAED;6EAC6E;AAC7E,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,KAAK,GAAG,KAAK,GAAG,MAAM,GAAG,SAAS,EAC7C,IAAI,EAAE,MAAM,EACZ,iBAAiB,EAAE,KAAK,GAAG,KAAK,GAC/B,KAAK,GAAG,KAAK,CAIf;AAED;gCACgC;AAChC,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,IAAI,EAAE,CAAC,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,EAAE,CAAC;IAC7B,yEAAyE;IACzE,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,UAAU,CAAC,CAAC,SAAS,GAAG,EACtC,IAAI,EAAE,SAAS,CAAC,EAAE,EAClB,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,QAAQ,EAAE,OAAO,EACjB,OAAO,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,MAAM;AACvD;qEACqE;AACrE,aAAa,UAAQ,EACrB,SAAS,UAAQ,GAChB,YAAY,CAAC,CAAC,CAAC,GAAG,SAAS,CAgD7B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,kBAAkB,EACzB,IAAI,EAAE,KAAK,GAAG,KAAK,EACnB,QAAQ,EAAE,OAAO,EACjB,UAAU,SAAI,EACd,aAAa,UAAQ,GACpB,IAAI,CAkBN;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,GAAG,EAC1C,IAAI,EAAE,CAAC,EAAE,EACT,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,MAAM;AAC7D;6EAC6E;AAC7E,SAAS,UAAQ;AACjB;wEACwE;AACxE,IAAI,CAAC,EAAE,KAAK,GAAG,KAAK,GACnB;IAAE,IAAI,EAAE,CAAC,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,IAAI,CAAA;KAAE,CAAC,EAAE,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAMpD"}
|
package/dist/design/bidiText.js
CHANGED
|
@@ -224,13 +224,16 @@ export function directDesignTextBlock(block, base, mirrored, trackingPx = 0, ara
|
|
|
224
224
|
export function directChipRuns(runs, measure,
|
|
225
225
|
/** Every run takes its own advance, in the direction it is painted in
|
|
226
226
|
* ({@link measuresRunsAsPainted}): the chip is then as wide as its runs. */
|
|
227
|
-
asPainted = false
|
|
227
|
+
asPainted = false,
|
|
228
|
+
/** The base direction, when the chip has one of its own (inline code
|
|
229
|
+
* reads left to right, #845); else that of its first strong letter. */
|
|
230
|
+
base) {
|
|
228
231
|
let text = '';
|
|
229
232
|
for (const r of runs)
|
|
230
233
|
text += r.text;
|
|
231
234
|
if (!needsBidi(text))
|
|
232
235
|
return { runs };
|
|
233
|
-
const directed = directRuns(runs, firstStrongDirection(text) ?? 'ltr', false, (r, t, rtl) => measure(t, r.fontString, rtl), false, asPainted);
|
|
236
|
+
const directed = directRuns(runs, base ?? firstStrongDirection(text) ?? 'ltr', false, (r, t, rtl) => measure(t, r.fontString, rtl), false, asPainted);
|
|
234
237
|
return directed ?? { runs };
|
|
235
238
|
}
|
|
236
239
|
//# sourceMappingURL=bidiText.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bidiText.js","sourceRoot":"","sources":["../../src/design/bidiText.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bidiText.js","sourceRoot":"","sources":["../../src/design/bidiText.ts"],"names":[],"mappings":"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"}
|
package/dist/design/layout.d.ts
CHANGED
|
@@ -194,6 +194,16 @@ export interface DesignFrames {
|
|
|
194
194
|
* stands upright on the sheet, so its box in the flow is sized with the
|
|
195
195
|
* picture's width and height swapped (`ResolvedImagePrimitive.upright`). */
|
|
196
196
|
upright?: boolean;
|
|
197
|
+
/** Boxes outside the slot an element may anchor to as `'#name'`, with
|
|
198
|
+
* the element-to-element edges: the frames of a composed page for its
|
|
199
|
+
* template's decoration (#855). An element of the slot with the same id
|
|
200
|
+
* wins. */
|
|
201
|
+
named?: Readonly<Record<string, {
|
|
202
|
+
x: number;
|
|
203
|
+
y: number;
|
|
204
|
+
width: number;
|
|
205
|
+
height: number;
|
|
206
|
+
}>>;
|
|
197
207
|
}
|
|
198
208
|
export interface LayoutContext {
|
|
199
209
|
container: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/design/layout.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,UAAU,EAEV,eAAe,EAMf,QAAQ,EACR,cAAc,EAEd,qBAAqB,EAGrB,kBAAkB,EAClB,yBAAyB,EACzB,QAAQ,EAER,MAAM,EACP,MAAM,UAAU,CAAC;AAGlB,OAAO,EAAoC,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAS5E,OAAO,
|
|
1
|
+
{"version":3,"file":"layout.d.ts","sourceRoot":"","sources":["../../src/design/layout.ts"],"names":[],"mappings":"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"}
|
package/dist/design/layout.js
CHANGED
|
@@ -10,7 +10,8 @@ import { parseInlineSnippetSpans } from '../parse/inlineSnippet';
|
|
|
10
10
|
import { getHyphenationRulesKey, hyphenateByDictionary, hyphenateText, withoutEdgeSoftHyphens, withoutSlashJoints } from '../hyphenate';
|
|
11
11
|
import { withLineEndHyphen } from '../measure/geminate';
|
|
12
12
|
import { BREAKING_SPACE_RUNS_SPLIT_RE, NO_BREAK_SPACES, isBreakingSpaceRun } from '../measure/spaces';
|
|
13
|
-
import { resolveDesignResourceId, resolveDesignText, } from './placeholders';
|
|
13
|
+
import { LEADER_MARK, resolveDesignResourceId, resolveDesignText, } from './placeholders';
|
|
14
|
+
import { fitLeader } from '../measure/leader';
|
|
14
15
|
import { hasJoiningScript, joinsWithNext } from '../bidi';
|
|
15
16
|
import { designBaseDirection, directRuns, directedTextWidth, measuresRunsAsPainted, paintedRunWidth } from './bidiText';
|
|
16
17
|
import { composeCjkDesignParagraph, composesDesignAsCjk } from './cjkText';
|
|
@@ -163,14 +164,14 @@ function frameFor(placement, frames) {
|
|
|
163
164
|
return frames.outer;
|
|
164
165
|
return undefined;
|
|
165
166
|
}
|
|
166
|
-
function topoSort(elements, issues) {
|
|
167
|
+
function topoSort(elements, issues, named) {
|
|
167
168
|
const byId = new Map();
|
|
168
169
|
for (const el of elements)
|
|
169
170
|
byId.set(el.id, el);
|
|
170
171
|
// Detect dangling
|
|
171
172
|
for (const el of elements) {
|
|
172
173
|
const target = anchorTargetId(el.placement);
|
|
173
|
-
if (target && !byId.has(target)) {
|
|
174
|
+
if (target && !byId.has(target) && !named?.[target]) {
|
|
174
175
|
issues.push({ kind: 'danglingAnchor', elementId: el.id, targetId: target });
|
|
175
176
|
}
|
|
176
177
|
}
|
|
@@ -226,6 +227,7 @@ function resolveContainerAnchor(edge, ref) {
|
|
|
226
227
|
return { anchorX: ref.x, anchorY: ref.y, pinX: 'start', pinY: 'start' };
|
|
227
228
|
}
|
|
228
229
|
}
|
|
230
|
+
const ELEMENT_TO_ELEMENT_EDGES = new Set(['right-of', 'left-of', 'below', 'above', 'align-top', 'align-bottom', 'align-left', 'align-right']);
|
|
229
231
|
function resolveElementAnchor(edge, ref) {
|
|
230
232
|
switch (edge) {
|
|
231
233
|
case 'right-of':
|
|
@@ -726,7 +728,7 @@ export function layoutDesignSlot(slot, context, pageIndex) {
|
|
|
726
728
|
.map((el) => (overrides && Object.keys(overrides).length > 0 ? applyPaletteOverrides(el, overrides) : el));
|
|
727
729
|
// Topologically sort (dependencies first) to resolve geometry; paint
|
|
728
730
|
// order is still the array order (first = back), restored below.
|
|
729
|
-
const ordered = topoSort(candidates, issues);
|
|
731
|
+
const ordered = topoSort(candidates, issues, context.frames?.named);
|
|
730
732
|
// Precompute: resolved text contents (placeholder-expanded), with the
|
|
731
733
|
// `\n` escape of the template and of attribute values turned into a
|
|
732
734
|
// newline before any case transform (which would make it `\N`).
|
|
@@ -769,10 +771,19 @@ export function layoutDesignSlot(slot, context, pageIndex) {
|
|
|
769
771
|
}
|
|
770
772
|
else if (target) {
|
|
771
773
|
const dep = resolvedGeo.get(target);
|
|
774
|
+
const outside = dep ? undefined : context.frames?.named?.[target];
|
|
772
775
|
if (dep) {
|
|
773
776
|
refGeo = { x: dep.x, y: dep.y, width: dep.width, height: dep.height };
|
|
774
777
|
useElementEdge = true;
|
|
775
778
|
}
|
|
779
|
+
else if (outside) {
|
|
780
|
+
refGeo = { ...outside };
|
|
781
|
+
// A nine-point edge on a frame is that point of its box; an
|
|
782
|
+
// element edge (`below`, `right-of`…) reads as for an element.
|
|
783
|
+
useElementEdge = ELEMENT_TO_ELEMENT_EDGES.has(el.placement.anchor.edge);
|
|
784
|
+
if (!useElementEdge)
|
|
785
|
+
fillRef = refGeo;
|
|
786
|
+
}
|
|
776
787
|
}
|
|
777
788
|
const anchor = useElementEdge
|
|
778
789
|
? resolveElementAnchor(el.placement.anchor.edge, refGeo)
|
|
@@ -789,14 +800,22 @@ export function layoutDesignSlot(slot, context, pageIndex) {
|
|
|
789
800
|
// A vertical element in a frame whose text is horizontal (a running
|
|
790
801
|
// head on the sheet, a design of a horizontal page); in a vertical
|
|
791
802
|
// flow the text already runs down.
|
|
792
|
-
const
|
|
793
|
-
|
|
794
|
-
|
|
803
|
+
const content = textContent.get(el.id) ?? '';
|
|
804
|
+
const turned = el.writingMode === 'vertical-rl' && getMeasureWritingMode() !== 'vertical-rl';
|
|
805
|
+
// A contents part row's `{leader}` (#889), on a horizontal line.
|
|
806
|
+
const leader = context.placeholders.leader;
|
|
807
|
+
const leadered = content.includes(LEADER_MARK) && leader && !turned && getMeasureWritingMode() !== 'vertical-rl';
|
|
808
|
+
const text = leadered ? content : content.split(LEADER_MARK).join('');
|
|
809
|
+
const prims = turned
|
|
810
|
+
? layoutVerticalTextElement(el, text, pin, fillRef, context.dpi, useElementEdge, textSeams.get(el.id))
|
|
811
|
+
: leadered
|
|
812
|
+
? layoutLeaderTextElement(el, text, leader, pin, fillRef, context.dpi, useElementEdge, context)
|
|
813
|
+
: layoutTextElement(el, text, pin, fillRef, context.dpi, useElementEdge, context, textSeams.get(el.id));
|
|
795
814
|
resolvedGeo.set(el.id, prims[0]);
|
|
796
815
|
primsByElement.set(el, prims);
|
|
797
816
|
const truncated = prims[0].truncated;
|
|
798
817
|
if (truncated) {
|
|
799
|
-
const text =
|
|
818
|
+
const text = content.split(LEADER_MARK).join('');
|
|
800
819
|
issues.push({ kind: 'textTruncated', elementId: el.id, mode: truncated, text: el.inlineMarks ? plainDesignText(text) : text });
|
|
801
820
|
}
|
|
802
821
|
}
|
|
@@ -1365,6 +1384,89 @@ seams = []) {
|
|
|
1365
1384
|
};
|
|
1366
1385
|
return [main, capPrim];
|
|
1367
1386
|
}
|
|
1387
|
+
/**
|
|
1388
|
+
* A text element of a contents part row whose text holds `{leader}`
|
|
1389
|
+
* (#889): one line, as wide as the room its placement gives it (an `auto`
|
|
1390
|
+
* width fills to the container's edge), the text before the mark at the
|
|
1391
|
+
* line's start, the text after it at its end, and between them the
|
|
1392
|
+
* contents' leader (`toc.leader`): its character repeated over the room
|
|
1393
|
+
* left, `gap` from either text, flush with the end so the leaders of the
|
|
1394
|
+
* rows line up, as an entry row's are (`pipeline/toc.ts`). The text before
|
|
1395
|
+
* the mark gives way when the line is short of room (cut by the element's
|
|
1396
|
+
* `overflow`, `'ellipsis-end'` for a wrapping one); fewer than three
|
|
1397
|
+
* repeats, or a leader turned off, leave the room blank.
|
|
1398
|
+
*/
|
|
1399
|
+
function layoutLeaderTextElement(el, text, leader, pin, container, dpi, anchoredToElement, frame) {
|
|
1400
|
+
const at = text.indexOf(LEADER_MARK);
|
|
1401
|
+
const before = text.slice(0, at).trimEnd();
|
|
1402
|
+
const after = text.slice(at + LEADER_MARK.length).split(LEADER_MARK).join('').trimStart();
|
|
1403
|
+
const autoWidth = el.placement.size?.width === undefined || el.placement.size.width === 'auto';
|
|
1404
|
+
const single = { ...el, overflow: el.overflow === 'wrap' ? 'ellipsis-end' : el.overflow, dropCap: undefined, paragraphIndent: undefined };
|
|
1405
|
+
// The row's box: the room the placement gives, one line high.
|
|
1406
|
+
const [box] = layoutTextElement({ ...single, overflow: 'clip', placement: autoWidth ? { ...el.placement, size: { ...el.placement.size, width: 'fill' } } : el.placement }, `${before} ${after}`.trim() || ' ', pin, container, dpi, anchoredToElement, frame);
|
|
1407
|
+
const row = box;
|
|
1408
|
+
const room = row.contentWidth;
|
|
1409
|
+
const fontSizePx = row.fontSizePx;
|
|
1410
|
+
const gap = Math.max(0, dimPx(leader.gap, dpi, fontSizePx));
|
|
1411
|
+
// Each text on its own, as wide as it is set (cut to the room left).
|
|
1412
|
+
const part = (t, max) => (t
|
|
1413
|
+
? layoutTextElement({ ...single, box: undefined, placement: { ...el.placement, size: { width: 'auto', maxWidth: { value: Math.max(0, max), unit: 'px' } } } }, t, pin, container, dpi, anchoredToElement, frame)[0]
|
|
1414
|
+
: undefined);
|
|
1415
|
+
const tail = part(after, room);
|
|
1416
|
+
const tailW = tail?.lines[0]?.width ?? 0;
|
|
1417
|
+
const gaps = (before ? gap : 0) + (after ? gap : 0);
|
|
1418
|
+
const head = part(before, room - tailW - gaps);
|
|
1419
|
+
const headW = head?.lines[0]?.width ?? 0;
|
|
1420
|
+
const free = Math.max(0, room - headW - tailW - gaps);
|
|
1421
|
+
const tracking = row.letterSpacingPx;
|
|
1422
|
+
const dots = leader.enabled
|
|
1423
|
+
? fitLeader(leader.char, free, (t) => Math.max(0, flowTextWidth(t, row.fontString) + tracking * graphemeCount(t)))
|
|
1424
|
+
: null;
|
|
1425
|
+
const runsOf = (p) => {
|
|
1426
|
+
const line = p?.lines[0];
|
|
1427
|
+
if (!line || !line.text)
|
|
1428
|
+
return { runs: [] };
|
|
1429
|
+
return { runs: line.runs ?? [{ text: line.text, fontString: p.fontString, width: line.width }], ...(line.order ? { order: line.order } : {}) };
|
|
1430
|
+
};
|
|
1431
|
+
const h = runsOf(head);
|
|
1432
|
+
const t = runsOf(tail);
|
|
1433
|
+
// The leader: blank room, the run, the gap before the text after it. A
|
|
1434
|
+
// blank run is a box as wide as its room (`inkOffset` 0).
|
|
1435
|
+
const blank = (width) => ({ text: '', fontString: row.fontString, width, inkOffset: 0, leader: true });
|
|
1436
|
+
const fill = blank((before ? gap : 0) + free - (dots?.width ?? 0));
|
|
1437
|
+
const middle = dots
|
|
1438
|
+
? [fill, { text: dots.text, fontString: row.fontString, width: dots.width, leader: true }, blank(after ? gap : 0)]
|
|
1439
|
+
: [blank(room - headW - tailW)];
|
|
1440
|
+
const runs = [...h.runs, ...middle, ...t.runs];
|
|
1441
|
+
// Paint order: the text before the mark at the line's start, which is on
|
|
1442
|
+
// the right of a right-to-left row on the sheet and of a left-to-right
|
|
1443
|
+
// one in a mirrored flow; each text keeps its own order.
|
|
1444
|
+
const startRight = row.startRight === true;
|
|
1445
|
+
const ids = (n, from, order) => (order ?? Array.from({ length: n }, (_, i) => i)).map((i) => i + from);
|
|
1446
|
+
const headIds = ids(h.runs.length, 0, h.order);
|
|
1447
|
+
const middleIds = ids(middle.length, h.runs.length);
|
|
1448
|
+
const tailIds = ids(t.runs.length, h.runs.length + middle.length, t.order);
|
|
1449
|
+
const order = startRight ? [...tailIds, ...middleIds.reverse(), ...headIds] : [...headIds, ...middleIds, ...tailIds];
|
|
1450
|
+
const identity = order.every((v, i) => v === i);
|
|
1451
|
+
const first = row.lines[0];
|
|
1452
|
+
const line = {
|
|
1453
|
+
text: runs.map((r) => r.text).join(''),
|
|
1454
|
+
width: room,
|
|
1455
|
+
baselineY: first?.baselineY ?? 0,
|
|
1456
|
+
topY: first?.topY ?? 0,
|
|
1457
|
+
height: first?.height ?? 0,
|
|
1458
|
+
runs,
|
|
1459
|
+
...(identity ? {} : { order }),
|
|
1460
|
+
};
|
|
1461
|
+
const truncated = head?.truncated ?? tail?.truncated;
|
|
1462
|
+
return [{
|
|
1463
|
+
...row,
|
|
1464
|
+
lines: [line],
|
|
1465
|
+
align: 'left',
|
|
1466
|
+
needsClip: el.overflow === 'clip',
|
|
1467
|
+
...(truncated ? { truncated } : { truncated: undefined }),
|
|
1468
|
+
}];
|
|
1469
|
+
}
|
|
1368
1470
|
/**
|
|
1369
1471
|
* One design text element laid out on its own, its box's top left corner at
|
|
1370
1472
|
* `(x, y)` and nothing around it to clamp it: the text `text` as given (no
|