postext 1.14.1 → 1.15.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/dist/__tests__/arabic/blockLanguageDigits.test.d.ts +2 -0
- package/dist/__tests__/arabic/blockLanguageDigits.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/blockLanguageDigits.test.js +54 -0
- package/dist/__tests__/arabic/blockLanguageDigits.test.js.map +1 -0
- package/dist/__tests__/arabic/emphasis.test.d.ts +2 -0
- package/dist/__tests__/arabic/emphasis.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/emphasis.test.js +206 -0
- package/dist/__tests__/arabic/emphasis.test.js.map +1 -0
- package/dist/__tests__/arabic/footnotes.test.d.ts +2 -0
- package/dist/__tests__/arabic/footnotes.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/footnotes.test.js +118 -0
- package/dist/__tests__/arabic/footnotes.test.js.map +1 -0
- package/dist/__tests__/arabic/harakat.test.d.ts +2 -0
- package/dist/__tests__/arabic/harakat.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/harakat.test.js +167 -0
- package/dist/__tests__/arabic/harakat.test.js.map +1 -0
- package/dist/__tests__/arabic/ornateBrackets.test.d.ts +2 -0
- package/dist/__tests__/arabic/ornateBrackets.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/ornateBrackets.test.js +71 -0
- package/dist/__tests__/arabic/ornateBrackets.test.js.map +1 -0
- package/dist/__tests__/arabic/tashkil.test.d.ts +2 -0
- package/dist/__tests__/arabic/tashkil.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/tashkil.test.js +106 -0
- package/dist/__tests__/arabic/tashkil.test.js.map +1 -0
- package/dist/__tests__/arabicLocale.test.d.ts +2 -0
- package/dist/__tests__/arabicLocale.test.d.ts.map +1 -0
- package/dist/__tests__/arabicLocale.test.js +232 -0
- package/dist/__tests__/arabicLocale.test.js.map +1 -0
- package/dist/__tests__/arabicNumberWords.test.d.ts +2 -0
- package/dist/__tests__/arabicNumberWords.test.d.ts.map +1 -0
- package/dist/__tests__/arabicNumberWords.test.js +176 -0
- package/dist/__tests__/arabicNumberWords.test.js.map +1 -0
- package/dist/__tests__/arabicNumbering.test.d.ts +2 -0
- package/dist/__tests__/arabicNumbering.test.d.ts.map +1 -0
- package/dist/__tests__/arabicNumbering.test.js +257 -0
- package/dist/__tests__/arabicNumbering.test.js.map +1 -0
- package/dist/__tests__/arabicWords.test.d.ts +2 -0
- package/dist/__tests__/arabicWords.test.d.ts.map +1 -0
- package/dist/__tests__/arabicWords.test.js +302 -0
- package/dist/__tests__/arabicWords.test.js.map +1 -0
- package/dist/__tests__/bidi.test.d.ts +2 -0
- package/dist/__tests__/bidi.test.d.ts.map +1 -0
- package/dist/__tests__/bidi.test.js +282 -0
- package/dist/__tests__/bidi.test.js.map +1 -0
- package/dist/__tests__/blockHints.test.d.ts +2 -0
- package/dist/__tests__/blockHints.test.d.ts.map +1 -0
- package/dist/__tests__/blockHints.test.js +79 -0
- package/dist/__tests__/blockHints.test.js.map +1 -0
- package/dist/__tests__/chineseLocale.test.js +2 -2
- package/dist/__tests__/chineseLocale.test.js.map +1 -1
- package/dist/__tests__/cjk/grid.test.js +2 -2
- package/dist/__tests__/cjk/grid.test.js.map +1 -1
- package/dist/__tests__/cjk/justifyRender.test.js +2 -1
- package/dist/__tests__/cjk/justifyRender.test.js.map +1 -1
- package/dist/__tests__/defaults/folio.test.js +16 -1
- package/dist/__tests__/defaults/folio.test.js.map +1 -1
- package/dist/__tests__/direction.test.d.ts +2 -0
- package/dist/__tests__/direction.test.d.ts.map +1 -0
- package/dist/__tests__/direction.test.js +117 -0
- package/dist/__tests__/direction.test.js.map +1 -0
- package/dist/__tests__/exports.test.js +29 -0
- package/dist/__tests__/exports.test.js.map +1 -1
- package/dist/__tests__/headingLetterSpacing.test.js +1 -1
- package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
- package/dist/__tests__/headingNumberPosition.test.d.ts +2 -0
- package/dist/__tests__/headingNumberPosition.test.d.ts.map +1 -0
- package/dist/__tests__/headingNumberPosition.test.js +87 -0
- package/dist/__tests__/headingNumberPosition.test.js.map +1 -0
- package/dist/__tests__/htmlCopyText.test.d.ts +2 -0
- package/dist/__tests__/htmlCopyText.test.d.ts.map +1 -0
- package/dist/__tests__/htmlCopyText.test.js +153 -0
- package/dist/__tests__/htmlCopyText.test.js.map +1 -0
- package/dist/__tests__/kashida.test.d.ts +2 -0
- package/dist/__tests__/kashida.test.d.ts.map +1 -0
- package/dist/__tests__/kashida.test.js +281 -0
- package/dist/__tests__/kashida.test.js.map +1 -0
- package/dist/__tests__/kashidaPatterns.test.d.ts +2 -0
- package/dist/__tests__/kashidaPatterns.test.d.ts.map +1 -0
- package/dist/__tests__/kashidaPatterns.test.js +143 -0
- package/dist/__tests__/kashidaPatterns.test.js.map +1 -0
- package/dist/__tests__/links.test.js +3 -1
- package/dist/__tests__/links.test.js.map +1 -1
- package/dist/__tests__/parse/anchors.test.js +17 -0
- package/dist/__tests__/parse/anchors.test.js.map +1 -1
- package/dist/__tests__/parse/containers.test.js +1 -1
- package/dist/__tests__/parse/containers.test.js.map +1 -1
- package/dist/__tests__/rtl/designText.test.d.ts +2 -0
- package/dist/__tests__/rtl/designText.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/designText.test.js +301 -0
- package/dist/__tests__/rtl/designText.test.js.map +1 -0
- package/dist/__tests__/rtl/designTextPaint.test.d.ts +2 -0
- package/dist/__tests__/rtl/designTextPaint.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/designTextPaint.test.js +140 -0
- package/dist/__tests__/rtl/designTextPaint.test.js.map +1 -0
- package/dist/__tests__/rtl/htmlRtl.test.d.ts +2 -0
- package/dist/__tests__/rtl/htmlRtl.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/htmlRtl.test.js +175 -0
- package/dist/__tests__/rtl/htmlRtl.test.js.map +1 -0
- package/dist/__tests__/rtl/mirroredFrame.test.d.ts +2 -0
- package/dist/__tests__/rtl/mirroredFrame.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/mirroredFrame.test.js +313 -0
- package/dist/__tests__/rtl/mirroredFrame.test.js.map +1 -0
- package/dist/__tests__/rtl/mirroredPaint.test.d.ts +2 -0
- package/dist/__tests__/rtl/mirroredPaint.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/mirroredPaint.test.js +116 -0
- package/dist/__tests__/rtl/mirroredPaint.test.js.map +1 -0
- package/dist/__tests__/rtl/oppositeBlocks.test.d.ts +2 -0
- package/dist/__tests__/rtl/oppositeBlocks.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/oppositeBlocks.test.js +273 -0
- package/dist/__tests__/rtl/oppositeBlocks.test.js.map +1 -0
- package/dist/__tests__/rtl/segmentLang.test.d.ts +2 -0
- package/dist/__tests__/rtl/segmentLang.test.d.ts.map +1 -0
- package/dist/__tests__/rtl/segmentLang.test.js +54 -0
- package/dist/__tests__/rtl/segmentLang.test.js.map +1 -0
- package/dist/__tests__/rtlLines.test.d.ts +2 -0
- package/dist/__tests__/rtlLines.test.d.ts.map +1 -0
- package/dist/__tests__/rtlLines.test.js +180 -0
- package/dist/__tests__/rtlLines.test.js.map +1 -0
- package/dist/__tests__/tocNumberColumn.test.d.ts +2 -0
- package/dist/__tests__/tocNumberColumn.test.d.ts.map +1 -0
- package/dist/__tests__/tocNumberColumn.test.js +67 -0
- package/dist/__tests__/tocNumberColumn.test.js.map +1 -0
- package/dist/__tests__/verse.test.d.ts +2 -0
- package/dist/__tests__/verse.test.d.ts.map +1 -0
- package/dist/__tests__/verse.test.js +232 -0
- package/dist/__tests__/verse.test.js.map +1 -0
- package/dist/__tests__/vertical/geometry.test.js +2 -2
- package/dist/__tests__/vertical/geometry.test.js.map +1 -1
- package/dist/__tests__/vertical/htmlTurnedCells.test.js +2 -2
- package/dist/__tests__/vertical/htmlTurnedCells.test.js.map +1 -1
- package/dist/arabicMarks.d.ts +80 -0
- package/dist/arabicMarks.d.ts.map +1 -0
- package/dist/arabicMarks.js +267 -0
- package/dist/arabicMarks.js.map +1 -0
- package/dist/arabicNumberWords.d.ts +43 -0
- package/dist/arabicNumberWords.d.ts.map +1 -0
- package/dist/arabicNumberWords.js +163 -0
- package/dist/arabicNumberWords.js.map +1 -0
- package/dist/arabicNumerals.d.ts +54 -0
- package/dist/arabicNumerals.d.ts.map +1 -0
- package/dist/arabicNumerals.js +143 -0
- package/dist/arabicNumerals.js.map +1 -0
- package/dist/bidi.d.ts +186 -0
- package/dist/bidi.d.ts.map +1 -0
- package/dist/bidi.js +851 -0
- package/dist/bidi.js.map +1 -0
- package/dist/bidiData.d.ts +13 -0
- package/dist/bidiData.d.ts.map +1 -0
- package/dist/bidiData.js +318 -0
- package/dist/bidiData.js.map +1 -0
- package/dist/canvas-backend/blockRender.d.ts.map +1 -1
- package/dist/canvas-backend/blockRender.js +58 -27
- package/dist/canvas-backend/blockRender.js.map +1 -1
- package/dist/canvas-backend/chip.d.ts.map +1 -1
- package/dist/canvas-backend/chip.js +16 -2
- package/dist/canvas-backend/chip.js.map +1 -1
- package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
- package/dist/canvas-backend/headerFooter.js +7 -3
- 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 +9 -4
- package/dist/canvas-backend/index.js.map +1 -1
- package/dist/canvas-backend/mirrorFrame.d.ts +38 -0
- package/dist/canvas-backend/mirrorFrame.d.ts.map +1 -0
- package/dist/canvas-backend/mirrorFrame.js +129 -0
- package/dist/canvas-backend/mirrorFrame.js.map +1 -0
- package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.js +16 -5
- package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
- package/dist/canvas-backend/runDirection.d.ts +21 -0
- package/dist/canvas-backend/runDirection.d.ts.map +1 -0
- package/dist/canvas-backend/runDirection.js +46 -0
- package/dist/canvas-backend/runDirection.js.map +1 -0
- package/dist/canvas-backend/wordRuns.d.ts +49 -0
- package/dist/canvas-backend/wordRuns.d.ts.map +1 -0
- package/dist/canvas-backend/wordRuns.js +111 -0
- package/dist/canvas-backend/wordRuns.js.map +1 -0
- package/dist/columnClip.d.ts +4 -1
- package/dist/columnClip.d.ts.map +1 -1
- package/dist/columnClip.js +8 -3
- package/dist/columnClip.js.map +1 -1
- package/dist/configWarnings.d.ts +3 -1
- package/dist/configWarnings.d.ts.map +1 -1
- package/dist/configWarnings.js +59 -5
- package/dist/configWarnings.js.map +1 -1
- package/dist/defaults/bodyText.d.ts +28 -6
- package/dist/defaults/bodyText.d.ts.map +1 -1
- package/dist/defaults/bodyText.js +158 -30
- package/dist/defaults/bodyText.js.map +1 -1
- package/dist/defaults/calloutStyles.js +1 -1
- package/dist/defaults/calloutStyles.js.map +1 -1
- package/dist/defaults/captionStyle.js +5 -5
- package/dist/defaults/captionStyle.js.map +1 -1
- package/dist/defaults/folio.d.ts +4 -0
- package/dist/defaults/folio.d.ts.map +1 -1
- package/dist/defaults/folio.js +12 -1
- package/dist/defaults/folio.js.map +1 -1
- package/dist/defaults/footnotes.d.ts.map +1 -1
- package/dist/defaults/footnotes.js +12 -2
- package/dist/defaults/footnotes.js.map +1 -1
- package/dist/defaults/headerFooter.d.ts.map +1 -1
- package/dist/defaults/headerFooter.js +1 -0
- package/dist/defaults/headerFooter.js.map +1 -1
- package/dist/defaults/headingStyles.d.ts.map +1 -1
- package/dist/defaults/headingStyles.js +2 -1
- package/dist/defaults/headingStyles.js.map +1 -1
- package/dist/defaults/headings.d.ts.map +1 -1
- package/dist/defaults/headings.js +9 -2
- package/dist/defaults/headings.js.map +1 -1
- package/dist/defaults/index.d.ts +1 -1
- package/dist/defaults/index.d.ts.map +1 -1
- package/dist/defaults/index.js +7 -1
- package/dist/defaults/index.js.map +1 -1
- package/dist/defaults/indexConfig.d.ts +6 -2
- package/dist/defaults/indexConfig.d.ts.map +1 -1
- package/dist/defaults/indexConfig.js +25 -5
- package/dist/defaults/indexConfig.js.map +1 -1
- package/dist/defaults/page.d.ts +7 -4
- package/dist/defaults/page.d.ts.map +1 -1
- package/dist/defaults/page.js +10 -7
- package/dist/defaults/page.js.map +1 -1
- package/dist/defaults/paragraphStyles.js +2 -2
- package/dist/defaults/paragraphStyles.js.map +1 -1
- package/dist/defaults/parts.d.ts.map +1 -1
- package/dist/defaults/parts.js +2 -1
- package/dist/defaults/parts.js.map +1 -1
- package/dist/defaults/resourceTypes.d.ts +1 -1
- package/dist/defaults/resourceTypes.d.ts.map +1 -1
- package/dist/defaults/resourceTypes.js +10 -2
- package/dist/defaults/resourceTypes.js.map +1 -1
- package/dist/defaults/shared.d.ts +9 -0
- package/dist/defaults/shared.d.ts.map +1 -1
- package/dist/defaults/shared.js +15 -0
- package/dist/defaults/shared.js.map +1 -1
- package/dist/defaults/tableStyle.d.ts.map +1 -1
- package/dist/defaults/tableStyle.js +5 -1
- package/dist/defaults/tableStyle.js.map +1 -1
- package/dist/design/bidiText.d.ts +89 -0
- package/dist/design/bidiText.d.ts.map +1 -0
- package/dist/design/bidiText.js +165 -0
- package/dist/design/bidiText.js.map +1 -0
- package/dist/design/layout.d.ts +20 -0
- package/dist/design/layout.d.ts.map +1 -1
- package/dist/design/layout.js +46 -5
- package/dist/design/layout.js.map +1 -1
- package/dist/design/placeholders.d.ts +7 -1
- package/dist/design/placeholders.d.ts.map +1 -1
- package/dist/design/placeholders.js +6 -3
- package/dist/design/placeholders.js.map +1 -1
- package/dist/design/richText.d.ts +5 -2
- package/dist/design/richText.d.ts.map +1 -1
- package/dist/design/richText.js +35 -2
- package/dist/design/richText.js.map +1 -1
- package/dist/emphasisOverline.d.ts +27 -0
- package/dist/emphasisOverline.d.ts.map +1 -0
- package/dist/emphasisOverline.js +107 -0
- package/dist/emphasisOverline.js.map +1 -0
- package/dist/frontmatter.d.ts +25 -6
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +51 -10
- package/dist/frontmatter.js.map +1 -1
- package/dist/html-backend.d.ts +4 -1
- package/dist/html-backend.d.ts.map +1 -1
- package/dist/html-backend.js +363 -87
- package/dist/html-backend.js.map +1 -1
- package/dist/hyphenate.d.ts.map +1 -1
- package/dist/hyphenate.js +4 -1
- package/dist/hyphenate.js.map +1 -1
- package/dist/index.d.ts +11 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -4
- package/dist/index.js.map +1 -1
- package/dist/knuthPlass/breakpoints.d.ts.map +1 -1
- package/dist/knuthPlass/breakpoints.js +3 -0
- package/dist/knuthPlass/breakpoints.js.map +1 -1
- package/dist/knuthPlass/pretextAdapter.d.ts.map +1 -1
- package/dist/knuthPlass/pretextAdapter.js +9 -3
- package/dist/knuthPlass/pretextAdapter.js.map +1 -1
- package/dist/knuthPlass/richAdapter.d.ts +11 -0
- package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
- package/dist/knuthPlass/richAdapter.js +11 -4
- package/dist/knuthPlass/richAdapter.js.map +1 -1
- package/dist/knuthPlass/tracking.d.ts +2 -1
- package/dist/knuthPlass/tracking.d.ts.map +1 -1
- package/dist/knuthPlass/tracking.js +5 -2
- package/dist/knuthPlass/tracking.js.map +1 -1
- package/dist/knuthPlass/types.d.ts +4 -0
- package/dist/knuthPlass/types.d.ts.map +1 -1
- package/dist/locale.d.ts +63 -9
- package/dist/locale.d.ts.map +1 -1
- package/dist/locale.js +129 -12
- package/dist/locale.js.map +1 -1
- package/dist/measure/bidiLines.d.ts +91 -0
- package/dist/measure/bidiLines.d.ts.map +1 -0
- package/dist/measure/bidiLines.js +293 -0
- package/dist/measure/bidiLines.js.map +1 -0
- package/dist/measure/cache.d.ts.map +1 -1
- package/dist/measure/cache.js +10 -4
- package/dist/measure/cache.js.map +1 -1
- package/dist/measure/joining.d.ts +39 -0
- package/dist/measure/joining.d.ts.map +1 -0
- package/dist/measure/joining.js +91 -0
- package/dist/measure/joining.js.map +1 -0
- package/dist/measure/joiningGroups.d.ts +7 -0
- package/dist/measure/joiningGroups.d.ts.map +1 -0
- package/dist/measure/joiningGroups.js +110 -0
- package/dist/measure/joiningGroups.js.map +1 -0
- package/dist/measure/kashida.d.ts +97 -0
- package/dist/measure/kashida.d.ts.map +1 -0
- package/dist/measure/kashida.js +285 -0
- package/dist/measure/kashida.js.map +1 -0
- package/dist/measure/kashidaPatterns.d.ts +109 -0
- package/dist/measure/kashidaPatterns.d.ts.map +1 -0
- package/dist/measure/kashidaPatterns.js +519 -0
- package/dist/measure/kashidaPatterns.js.map +1 -0
- package/dist/measure/links.d.ts.map +1 -1
- package/dist/measure/links.js +5 -2
- package/dist/measure/links.js.map +1 -1
- package/dist/measure/plain.d.ts.map +1 -1
- package/dist/measure/plain.js +31 -0
- package/dist/measure/plain.js.map +1 -1
- package/dist/measure/rich.d.ts +24 -0
- package/dist/measure/rich.d.ts.map +1 -1
- package/dist/measure/rich.js +250 -22
- package/dist/measure/rich.js.map +1 -1
- package/dist/measure/types.d.ts +14 -0
- package/dist/measure/types.d.ts.map +1 -1
- package/dist/measure/types.js.map +1 -1
- package/dist/numberWords.d.ts +17 -4
- package/dist/numberWords.d.ts.map +1 -1
- package/dist/numberWords.js +19 -13
- package/dist/numberWords.js.map +1 -1
- package/dist/numbering.d.ts +49 -11
- package/dist/numbering.d.ts.map +1 -1
- package/dist/numbering.js +117 -21
- package/dist/numbering.js.map +1 -1
- package/dist/parse/annotations.d.ts +6 -3
- package/dist/parse/annotations.d.ts.map +1 -1
- package/dist/parse/annotations.js +31 -7
- package/dist/parse/annotations.js.map +1 -1
- package/dist/parse/attrs.d.ts +3 -3
- package/dist/parse/attrs.d.ts.map +1 -1
- package/dist/parse/attrs.js +5 -4
- package/dist/parse/attrs.js.map +1 -1
- package/dist/parse/blockParser.d.ts.map +1 -1
- package/dist/parse/blockParser.js +158 -14
- 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 +32 -10
- package/dist/parse/indexMarks.js.map +1 -1
- package/dist/parse/inlineFormatting.d.ts.map +1 -1
- package/dist/parse/inlineFormatting.js +5 -4
- package/dist/parse/inlineFormatting.js.map +1 -1
- package/dist/parse/types.d.ts +63 -1
- package/dist/parse/types.d.ts.map +1 -1
- package/dist/pipeline/build.d.ts.map +1 -1
- package/dist/pipeline/build.js +161 -43
- package/dist/pipeline/build.js.map +1 -1
- package/dist/pipeline/buildBlockKind.d.ts +2 -0
- package/dist/pipeline/buildBlockKind.d.ts.map +1 -1
- package/dist/pipeline/buildBlockKind.js +67 -2
- package/dist/pipeline/buildBlockKind.js.map +1 -1
- package/dist/pipeline/buildHelpers.d.ts +22 -1
- package/dist/pipeline/buildHelpers.d.ts.map +1 -1
- package/dist/pipeline/buildHelpers.js +55 -5
- package/dist/pipeline/buildHelpers.js.map +1 -1
- package/dist/pipeline/calloutLayout.d.ts +6 -1
- package/dist/pipeline/calloutLayout.d.ts.map +1 -1
- package/dist/pipeline/calloutLayout.js +63 -18
- package/dist/pipeline/calloutLayout.js.map +1 -1
- package/dist/pipeline/citations.d.ts +2 -1
- package/dist/pipeline/citations.d.ts.map +1 -1
- package/dist/pipeline/citations.js +29 -9
- package/dist/pipeline/citations.js.map +1 -1
- package/dist/pipeline/cjkGrid.d.ts +3 -2
- package/dist/pipeline/cjkGrid.d.ts.map +1 -1
- package/dist/pipeline/cjkGrid.js +3 -2
- package/dist/pipeline/cjkGrid.js.map +1 -1
- package/dist/pipeline/config.d.ts +13 -1
- package/dist/pipeline/config.d.ts.map +1 -1
- package/dist/pipeline/config.js +32 -3
- package/dist/pipeline/config.js.map +1 -1
- package/dist/pipeline/contentWarnings.d.ts +10 -0
- package/dist/pipeline/contentWarnings.d.ts.map +1 -1
- package/dist/pipeline/contentWarnings.js +88 -0
- package/dist/pipeline/contentWarnings.js.map +1 -1
- package/dist/pipeline/continuation.d.ts.map +1 -1
- package/dist/pipeline/continuation.js +1 -1
- package/dist/pipeline/continuation.js.map +1 -1
- package/dist/pipeline/crossRefs.d.ts.map +1 -1
- package/dist/pipeline/crossRefs.js +2 -0
- package/dist/pipeline/crossRefs.js.map +1 -1
- package/dist/pipeline/floatPlacement.d.ts.map +1 -1
- package/dist/pipeline/floatPlacement.js +2 -1
- package/dist/pipeline/floatPlacement.js.map +1 -1
- package/dist/pipeline/footnotes.d.ts +13 -5
- package/dist/pipeline/footnotes.d.ts.map +1 -1
- package/dist/pipeline/footnotes.js +19 -8
- package/dist/pipeline/footnotes.js.map +1 -1
- package/dist/pipeline/headerFooter.d.ts +4 -0
- package/dist/pipeline/headerFooter.d.ts.map +1 -1
- package/dist/pipeline/headerFooter.js +41 -13
- package/dist/pipeline/headerFooter.js.map +1 -1
- package/dist/pipeline/headingDesignCuts.d.ts +1 -1
- package/dist/pipeline/headingDesignCuts.d.ts.map +1 -1
- package/dist/pipeline/headingDesignCuts.js +2 -1
- package/dist/pipeline/headingDesignCuts.js.map +1 -1
- package/dist/pipeline/headingStyles.d.ts +10 -0
- package/dist/pipeline/headingStyles.d.ts.map +1 -1
- package/dist/pipeline/headingStyles.js +46 -0
- package/dist/pipeline/headingStyles.js.map +1 -1
- package/dist/pipeline/indexDirective.d.ts.map +1 -1
- package/dist/pipeline/indexDirective.js +33 -6
- package/dist/pipeline/indexDirective.js.map +1 -1
- package/dist/pipeline/indexGroups.d.ts +23 -1
- package/dist/pipeline/indexGroups.d.ts.map +1 -1
- package/dist/pipeline/indexGroups.js +50 -1
- package/dist/pipeline/indexGroups.js.map +1 -1
- package/dist/pipeline/lists.d.ts +16 -4
- package/dist/pipeline/lists.d.ts.map +1 -1
- package/dist/pipeline/lists.js +51 -12
- package/dist/pipeline/lists.js.map +1 -1
- package/dist/pipeline/measureContentBlock.d.ts +5 -0
- package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
- package/dist/pipeline/measureContentBlock.js +63 -4
- package/dist/pipeline/measureContentBlock.js.map +1 -1
- package/dist/pipeline/mirrorFrame.d.ts +37 -0
- package/dist/pipeline/mirrorFrame.d.ts.map +1 -0
- package/dist/pipeline/mirrorFrame.js +143 -0
- package/dist/pipeline/mirrorFrame.js.map +1 -0
- package/dist/pipeline/outline.d.ts +2 -2
- package/dist/pipeline/outline.d.ts.map +1 -1
- package/dist/pipeline/outline.js +33 -6
- package/dist/pipeline/outline.js.map +1 -1
- package/dist/pipeline/paragraphContainers.d.ts +5 -0
- package/dist/pipeline/paragraphContainers.d.ts.map +1 -1
- package/dist/pipeline/paragraphContainers.js +12 -0
- package/dist/pipeline/paragraphContainers.js.map +1 -1
- package/dist/pipeline/parts.d.ts +1 -1
- package/dist/pipeline/parts.d.ts.map +1 -1
- package/dist/pipeline/parts.js +3 -2
- package/dist/pipeline/parts.js.map +1 -1
- package/dist/pipeline/placeholders.d.ts +13 -6
- package/dist/pipeline/placeholders.d.ts.map +1 -1
- package/dist/pipeline/placeholders.js +15 -11
- package/dist/pipeline/placeholders.js.map +1 -1
- package/dist/pipeline/placement.d.ts +3 -2
- package/dist/pipeline/placement.d.ts.map +1 -1
- package/dist/pipeline/placement.js +18 -6
- package/dist/pipeline/placement.js.map +1 -1
- package/dist/pipeline/resourceLayout.d.ts.map +1 -1
- package/dist/pipeline/resourceLayout.js +70 -7
- package/dist/pipeline/resourceLayout.js.map +1 -1
- package/dist/pipeline/resourceNumbering.d.ts +5 -3
- package/dist/pipeline/resourceNumbering.d.ts.map +1 -1
- package/dist/pipeline/resourceNumbering.js +11 -8
- package/dist/pipeline/resourceNumbering.js.map +1 -1
- package/dist/pipeline/styles.d.ts +6 -1
- package/dist/pipeline/styles.d.ts.map +1 -1
- package/dist/pipeline/styles.js +44 -14
- package/dist/pipeline/styles.js.map +1 -1
- package/dist/pipeline/tashkil.d.ts +27 -0
- package/dist/pipeline/tashkil.d.ts.map +1 -0
- package/dist/pipeline/tashkil.js +161 -0
- package/dist/pipeline/tashkil.js.map +1 -0
- package/dist/pipeline/toc.d.ts +12 -0
- package/dist/pipeline/toc.d.ts.map +1 -1
- package/dist/pipeline/toc.js +64 -4
- package/dist/pipeline/toc.js.map +1 -1
- package/dist/pipeline/verse.d.ts +65 -0
- package/dist/pipeline/verse.d.ts.map +1 -0
- package/dist/pipeline/verse.js +252 -0
- package/dist/pipeline/verse.js.map +1 -0
- package/dist/pipeline/verticalMetrics.d.ts +1 -1
- package/dist/pipeline/verticalMetrics.d.ts.map +1 -1
- package/dist/pipeline/verticalMetrics.js +7 -5
- package/dist/pipeline/verticalMetrics.js.map +1 -1
- package/dist/table/model.d.ts +4 -3
- package/dist/table/model.d.ts.map +1 -1
- package/dist/table/model.js.map +1 -1
- package/dist/types.d.ts +286 -36
- package/dist/types.d.ts.map +1 -1
- package/dist/uprightArabic.d.ts +39 -0
- package/dist/uprightArabic.d.ts.map +1 -0
- package/dist/uprightArabic.js +105 -0
- package/dist/uprightArabic.js.map +1 -0
- package/dist/vdt.d.ts +276 -11
- package/dist/vdt.d.ts.map +1 -1
- package/dist/vdt.js +46 -9
- package/dist/vdt.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classical Arabic verse (#378, arabic-typography §6.1): a `:::verse` poem,
|
|
3
|
+
* each bayt on one line in two hemistichs — the ṣadr on the start side
|
|
4
|
+
* (the right in Arabic), the ʿajuz on the end side, a gap between them.
|
|
5
|
+
* Every hemistich of a poem is set to one common width, so the hemistichs
|
|
6
|
+
* of every bayt start and end on the same verticals and the rhyme letters
|
|
7
|
+
* of the ʿajuz line up down the poem.
|
|
8
|
+
*
|
|
9
|
+
* - The common width: `width` on the fence, else the widest hemistich of
|
|
10
|
+
* the poem's two-hemistich lines, at most half the measure less the gap.
|
|
11
|
+
* - Each hemistich is brought to it with kashidas first (verse elongates
|
|
12
|
+
* more than prose: twice the body's longest elongation at a join), then
|
|
13
|
+
* its word spaces. A hemistich of one word that cannot fill it leaves the
|
|
14
|
+
* rest to the gap, so its ends still sit on the verticals.
|
|
15
|
+
* - A hemistich wider than the common width tightens its word spaces to
|
|
16
|
+
* `bodyText.minWordSpacing`; if it still does not fit, the bayt is set
|
|
17
|
+
* staggered: the ṣadr flush with the start side on its own line, the
|
|
18
|
+
* ʿajuz flush with the end side on the next. A hemistich wider than the
|
|
19
|
+
* measure is broken over lines there, which only a narrow column calls
|
|
20
|
+
* for.
|
|
21
|
+
* - A line of one hemistich (no `||`) is centred on the poem.
|
|
22
|
+
* - The poem is centred in the measure (`align="start"`: flush with the
|
|
23
|
+
* start side). `gap` sets the gap (default 2 em); `ornament` prints a
|
|
24
|
+
* mark in its middle (٭, ✻), which is no character of the text.
|
|
25
|
+
*
|
|
26
|
+
* The poem is a paragraph whose lines carry final segment widths (the
|
|
27
|
+
* block is set flush left): every renderer paints it as measured, the gap
|
|
28
|
+
* a `space` segment flagged `labelTab`. Lines are in the flow frame, so a
|
|
29
|
+
* mirrored page turns the whole poem. The hemistichs are measured as
|
|
30
|
+
* paragraphs of their own in the poem's direction: each has its own bidi
|
|
31
|
+
* order, joined here in the order of that direction.
|
|
32
|
+
*/
|
|
33
|
+
import type { ContentBlock } from '../parse';
|
|
34
|
+
import type { DirectiveAttrs } from '../parse/types';
|
|
35
|
+
import type { MeasuredBlock, MeasurementCache } from '../measure';
|
|
36
|
+
import { type KashidaOptions } from '../measure/kashida';
|
|
37
|
+
import type { BlockStyle } from './styles';
|
|
38
|
+
/** A poem's settings read from its fence. */
|
|
39
|
+
export interface VerseSettings {
|
|
40
|
+
gapPx: number;
|
|
41
|
+
/** Fixed hemistich width (`width`), px. */
|
|
42
|
+
widthPx?: number;
|
|
43
|
+
align: 'center' | 'start';
|
|
44
|
+
ornament?: string;
|
|
45
|
+
}
|
|
46
|
+
/** The settings of a poem's fence (`gap`, `width`, `align`, `ornament`). */
|
|
47
|
+
export declare function verseSettings(attrs: DirectiveAttrs, dpi: number, fontSizePx: number): VerseSettings;
|
|
48
|
+
interface VerseLayoutInput {
|
|
49
|
+
contentBlock: ContentBlock;
|
|
50
|
+
style: BlockStyle;
|
|
51
|
+
/** The measure, px. */
|
|
52
|
+
measureMaxWidth: number;
|
|
53
|
+
dpi: number;
|
|
54
|
+
minWordSpacing: number;
|
|
55
|
+
/** The body's kashida options for this style, when it takes kashidas. */
|
|
56
|
+
kashida?: KashidaOptions;
|
|
57
|
+
/** The poem's direction and its frame's. */
|
|
58
|
+
direction: 'ltr' | 'rtl';
|
|
59
|
+
frameDirection: 'ltr' | 'rtl';
|
|
60
|
+
cache?: MeasurementCache;
|
|
61
|
+
}
|
|
62
|
+
/** Lay a poem out (see the module comment). */
|
|
63
|
+
export declare function measureVerse(input: VerseLayoutInput): MeasuredBlock;
|
|
64
|
+
export {};
|
|
65
|
+
//# sourceMappingURL=verse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verse.d.ts","sourceRoot":"","sources":["../../src/pipeline/verse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAc,MAAM,UAAU,CAAC;AACzD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAGrD,OAAO,KAAK,EAAE,aAAa,EAAE,gBAAgB,EAAuB,MAAM,YAAY,CAAC;AAOvF,OAAO,EAAkC,KAAK,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAU3C,6CAA6C;AAC7C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,2CAA2C;IAC3C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAUD,4EAA4E;AAC5E,wBAAgB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,aAAa,CAUnG;AA6BD,UAAU,gBAAgB;IACxB,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,UAAU,CAAC;IAClB,uBAAuB;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,cAAc,EAAE,MAAM,CAAC;IACvB,yEAAyE;IACzE,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,4CAA4C;IAC5C,SAAS,EAAE,KAAK,GAAG,KAAK,CAAC;IACzB,cAAc,EAAE,KAAK,GAAG,KAAK,CAAC;IAC9B,KAAK,CAAC,EAAE,gBAAgB,CAAC;CAC1B;AAED,+CAA+C;AAC/C,wBAAgB,YAAY,CAAC,KAAK,EAAE,gBAAgB,GAAG,aAAa,CA8JnE"}
|
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Classical Arabic verse (#378, arabic-typography §6.1): a `:::verse` poem,
|
|
3
|
+
* each bayt on one line in two hemistichs — the ṣadr on the start side
|
|
4
|
+
* (the right in Arabic), the ʿajuz on the end side, a gap between them.
|
|
5
|
+
* Every hemistich of a poem is set to one common width, so the hemistichs
|
|
6
|
+
* of every bayt start and end on the same verticals and the rhyme letters
|
|
7
|
+
* of the ʿajuz line up down the poem.
|
|
8
|
+
*
|
|
9
|
+
* - The common width: `width` on the fence, else the widest hemistich of
|
|
10
|
+
* the poem's two-hemistich lines, at most half the measure less the gap.
|
|
11
|
+
* - Each hemistich is brought to it with kashidas first (verse elongates
|
|
12
|
+
* more than prose: twice the body's longest elongation at a join), then
|
|
13
|
+
* its word spaces. A hemistich of one word that cannot fill it leaves the
|
|
14
|
+
* rest to the gap, so its ends still sit on the verticals.
|
|
15
|
+
* - A hemistich wider than the common width tightens its word spaces to
|
|
16
|
+
* `bodyText.minWordSpacing`; if it still does not fit, the bayt is set
|
|
17
|
+
* staggered: the ṣadr flush with the start side on its own line, the
|
|
18
|
+
* ʿajuz flush with the end side on the next. A hemistich wider than the
|
|
19
|
+
* measure is broken over lines there, which only a narrow column calls
|
|
20
|
+
* for.
|
|
21
|
+
* - A line of one hemistich (no `||`) is centred on the poem.
|
|
22
|
+
* - The poem is centred in the measure (`align="start"`: flush with the
|
|
23
|
+
* start side). `gap` sets the gap (default 2 em); `ornament` prints a
|
|
24
|
+
* mark in its middle (٭, ✻), which is no character of the text.
|
|
25
|
+
*
|
|
26
|
+
* The poem is a paragraph whose lines carry final segment widths (the
|
|
27
|
+
* block is set flush left): every renderer paints it as measured, the gap
|
|
28
|
+
* a `space` segment flagged `labelTab`. Lines are in the flow frame, so a
|
|
29
|
+
* mirrored page turns the whole poem. The hemistichs are measured as
|
|
30
|
+
* paragraphs of their own in the poem's direction: each has its own bidi
|
|
31
|
+
* order, joined here in the order of that direction.
|
|
32
|
+
*/
|
|
33
|
+
import { createBoundingBox } from '../vdt';
|
|
34
|
+
import { measureRichBlock } from '../measure';
|
|
35
|
+
import { cachedMeasureRichBlock } from '../measure/cache';
|
|
36
|
+
import { pickSpanFont, textWidth } from '../measure/rich';
|
|
37
|
+
import { normalSpaceWidthFor } from '../measure/canvas';
|
|
38
|
+
import { lineBaselineOffset } from '../measure/vertical';
|
|
39
|
+
import { sliceSpan } from '../parse/links';
|
|
40
|
+
import { distributeKashida, writtenText } from '../measure/kashida';
|
|
41
|
+
import { dimensionToPx } from '../units';
|
|
42
|
+
/** How far a poem's verse elongates a join, against the body's
|
|
43
|
+
* `kashidaMaxLength`: classical prints stretch verse more than prose. */
|
|
44
|
+
const VERSE_KASHIDA_SCALE = 2;
|
|
45
|
+
/** Default gap between the hemistichs, in ems. */
|
|
46
|
+
const DEFAULT_GAP_EM = 2;
|
|
47
|
+
/** Measure a hemistich on one line. */
|
|
48
|
+
const ONE_LINE = 1e7;
|
|
49
|
+
/** `2em`, `12mm`, `1.5` (ems) as px at `fontSizePx`; undefined when it is
|
|
50
|
+
* not a length. */
|
|
51
|
+
function lengthAttr(value, dpi, fontSizePx) {
|
|
52
|
+
const m = /^\s*(\d+(?:\.\d+)?|\.\d+)\s*(cm|mm|in|pt|px|em|rem)?\s*$/.exec(value ?? '');
|
|
53
|
+
if (!m)
|
|
54
|
+
return undefined;
|
|
55
|
+
return dimensionToPx({ value: Number(m[1]), unit: (m[2] ?? 'em') }, dpi, fontSizePx);
|
|
56
|
+
}
|
|
57
|
+
/** The settings of a poem's fence (`gap`, `width`, `align`, `ornament`). */
|
|
58
|
+
export function verseSettings(attrs, dpi, fontSizePx) {
|
|
59
|
+
const gapPx = lengthAttr(attrs.gap, dpi, fontSizePx) ?? DEFAULT_GAP_EM * fontSizePx;
|
|
60
|
+
const widthPx = lengthAttr(attrs.width, dpi, fontSizePx);
|
|
61
|
+
const ornament = attrs.ornament?.trim();
|
|
62
|
+
return {
|
|
63
|
+
gapPx,
|
|
64
|
+
...(widthPx !== undefined && widthPx > 0 ? { widthPx } : {}),
|
|
65
|
+
align: attrs.align?.trim() === 'start' ? 'start' : 'center',
|
|
66
|
+
...(ornament ? { ornament } : {}),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/** The poem's rows: each a list of one or two hemistichs (their spans), cut
|
|
70
|
+
* at the text's line feeds and tabs. */
|
|
71
|
+
function verseRows(spans) {
|
|
72
|
+
const rows = [[[]]];
|
|
73
|
+
for (const span of spans) {
|
|
74
|
+
let from = 0;
|
|
75
|
+
for (let i = 0; i <= span.text.length; i++) {
|
|
76
|
+
const ch = span.text[i];
|
|
77
|
+
if (i < span.text.length && ch !== '\n' && ch !== '\t')
|
|
78
|
+
continue;
|
|
79
|
+
if (i > from)
|
|
80
|
+
rows[rows.length - 1].at(-1).push(sliceSpan(span, from, i));
|
|
81
|
+
if (ch === '\n')
|
|
82
|
+
rows.push([[]]);
|
|
83
|
+
else if (ch === '\t')
|
|
84
|
+
rows[rows.length - 1].push([]);
|
|
85
|
+
from = i + 1;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
return rows.map((row) => row.filter((h) => h.length > 0)).filter((row) => row.length > 0);
|
|
89
|
+
}
|
|
90
|
+
/** Lay a poem out (see the module comment). */
|
|
91
|
+
export function measureVerse(input) {
|
|
92
|
+
const { contentBlock, style, measureMaxWidth: measure, direction } = input;
|
|
93
|
+
const settings = verseSettings(contentBlock.verse?.attrs ?? {}, input.dpi, style.fontSizePx);
|
|
94
|
+
const fonts = {
|
|
95
|
+
normal: style.fontString,
|
|
96
|
+
bold: style.boldFontString ?? style.fontString,
|
|
97
|
+
italic: style.italicFontString ?? style.fontString,
|
|
98
|
+
boldItalic: style.boldItalicFontString ?? style.fontString,
|
|
99
|
+
};
|
|
100
|
+
const fontOf = (seg) => seg.fontString ?? pickSpanFont(!!seg.bold, !!seg.italic, fonts.normal, fonts.bold, fonts.italic, fonts.boldItalic);
|
|
101
|
+
const widthOf = (seg, text) => textWidth(text, fontOf(seg), false);
|
|
102
|
+
const lineHeight = style.lineHeightPx;
|
|
103
|
+
const options = { textAlign: 'left', direction };
|
|
104
|
+
const measureSpans = (spans, width) => (input.cache
|
|
105
|
+
? cachedMeasureRichBlock(spans, fonts.normal, fonts.bold, fonts.italic, fonts.boldItalic, width, lineHeight, options, input.cache)
|
|
106
|
+
: measureRichBlock(spans, fonts.normal, fonts.bold, fonts.italic, fonts.boldItalic, width, lineHeight, options)).lines;
|
|
107
|
+
const hemistichOf = (line) => {
|
|
108
|
+
const segments = line.segments ?? [];
|
|
109
|
+
return {
|
|
110
|
+
segments,
|
|
111
|
+
order: line.order && line.order.length === segments.length ? line.order : segments.map((_, i) => i),
|
|
112
|
+
width: segments.reduce((s, seg) => s + seg.width, 0),
|
|
113
|
+
text: segments.map((seg) => writtenText(seg)).join(''),
|
|
114
|
+
};
|
|
115
|
+
};
|
|
116
|
+
const rows = verseRows(contentBlock.spans).map((row) => row.map((spans) => ({ spans, line: measureSpans(spans, ONE_LINE)[0] })));
|
|
117
|
+
// The common width: the widest hemistich of the two-hemistich lines,
|
|
118
|
+
// within half the measure less the gap.
|
|
119
|
+
const half = Math.max(0, (measure - settings.gapPx) / 2);
|
|
120
|
+
let widest = 0;
|
|
121
|
+
for (const row of rows)
|
|
122
|
+
if (row.length === 2)
|
|
123
|
+
for (const h of row)
|
|
124
|
+
widest = Math.max(widest, h.line ? hemistichOf(h.line).width : 0);
|
|
125
|
+
const w = Math.min(settings.widthPx ?? widest, half);
|
|
126
|
+
const total = 2 * w + settings.gapPx;
|
|
127
|
+
const hasBayts = rows.some((r) => r.length === 2);
|
|
128
|
+
// Flow x of a span `width` wide on a side of `[x0, x1]`. The start side
|
|
129
|
+
// is the frame's start when the poem runs the frame's way, its end when
|
|
130
|
+
// it runs against it (an Arabic poem on a left-to-right page).
|
|
131
|
+
const same = direction === input.frameDirection;
|
|
132
|
+
const place = (width, side, x0, x1) => {
|
|
133
|
+
const x = side === 'center' ? x0 + (x1 - x0 - width) / 2
|
|
134
|
+
: (side === 'start') === same ? x0 : x1 - width;
|
|
135
|
+
return Math.max(0, Math.min(x, Math.max(0, measure - width)));
|
|
136
|
+
};
|
|
137
|
+
const poemX = hasBayts ? (settings.align === 'start' ? place(total, 'start', 0, measure) : Math.max(0, (measure - total) / 2)) : 0;
|
|
138
|
+
const poemEnd = hasBayts ? poemX + total : measure;
|
|
139
|
+
const verseKashida = input.kashida ? { ...input.kashida, maxLengthPx: input.kashida.maxLengthPx * VERSE_KASHIDA_SCALE } : undefined;
|
|
140
|
+
const spaceWidth = normalSpaceWidthFor(fonts.normal);
|
|
141
|
+
/** A hemistich set to `target` px: kashidas first, then its word spaces;
|
|
142
|
+
* what neither can take is returned as `short`. One that is too wide
|
|
143
|
+
* tightens its spaces, down to `minWordSpacing`; `fits` says whether it
|
|
144
|
+
* came to the target. */
|
|
145
|
+
const justify = (h, target) => {
|
|
146
|
+
let segments = h.segments.map((seg) => ({ ...seg }));
|
|
147
|
+
let width = h.width;
|
|
148
|
+
if (width > target + 0.01) {
|
|
149
|
+
const spaces = segments.filter((seg) => seg.kind === 'space' && !seg.autospace);
|
|
150
|
+
const shrinkable = spaces.reduce((s, seg) => s + Math.max(0, seg.width - spaceWidth * input.minWordSpacing), 0);
|
|
151
|
+
if (width - shrinkable > target + 0.01)
|
|
152
|
+
return { h, short: 0, fits: false };
|
|
153
|
+
const ratio = shrinkable > 0 ? (width - target) / shrinkable : 0;
|
|
154
|
+
for (const seg of spaces)
|
|
155
|
+
seg.width -= Math.max(0, seg.width - spaceWidth * input.minWordSpacing) * ratio;
|
|
156
|
+
return { h: { ...h, segments, width: target }, short: 0, fits: true };
|
|
157
|
+
}
|
|
158
|
+
if (verseKashida) {
|
|
159
|
+
const done = distributeKashida(segments, target - width, verseKashida, widthOf);
|
|
160
|
+
if (done) {
|
|
161
|
+
segments = done.segments;
|
|
162
|
+
width += done.added;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
const spaces = segments.filter((seg) => seg.kind === 'space' && !seg.autospace);
|
|
166
|
+
let short = Math.max(0, target - width);
|
|
167
|
+
if (spaces.length > 0 && short > 0) {
|
|
168
|
+
for (const seg of spaces)
|
|
169
|
+
seg.width += short / spaces.length;
|
|
170
|
+
width = target;
|
|
171
|
+
short = 0;
|
|
172
|
+
}
|
|
173
|
+
return { h: { ...h, segments, width }, short, fits: true };
|
|
174
|
+
};
|
|
175
|
+
const baselineOffset = lineBaselineOffset(lineHeight, fonts.normal);
|
|
176
|
+
const lines = [];
|
|
177
|
+
const push = (segments, order, x, text, verse) => {
|
|
178
|
+
const y = lines.length * lineHeight;
|
|
179
|
+
const width = segments.reduce((s, seg) => s + seg.width, 0);
|
|
180
|
+
const kashida = segments.reduce((n, seg) => n + (seg.kashida?.length ?? 0), 0);
|
|
181
|
+
const identity = order.every((v, i) => v === i);
|
|
182
|
+
lines.push({
|
|
183
|
+
text,
|
|
184
|
+
bbox: createBoundingBox(x, y, width, lineHeight),
|
|
185
|
+
baseline: y + baselineOffset,
|
|
186
|
+
hyphenated: false,
|
|
187
|
+
segments,
|
|
188
|
+
isLastLine: false,
|
|
189
|
+
...(identity ? {} : { order }),
|
|
190
|
+
...(kashida > 0 ? { kashida } : {}),
|
|
191
|
+
verse,
|
|
192
|
+
});
|
|
193
|
+
};
|
|
194
|
+
/** The lines of one hemistich set alone: one when it fits the measure,
|
|
195
|
+
* else broken over the measure; each placed on `side`. */
|
|
196
|
+
const alone = (spans, h, side, bayt, part, x0, x1) => {
|
|
197
|
+
const set = h.width <= measure + 0.01 ? [h] : measureSpans(spans, measure).map(hemistichOf);
|
|
198
|
+
for (const piece of set)
|
|
199
|
+
push(piece.segments, piece.order, place(piece.width, side, x0, x1), piece.text, { bayt, part });
|
|
200
|
+
};
|
|
201
|
+
rows.forEach((row, bayt) => {
|
|
202
|
+
const measured = row.map((r) => (r.line ? hemistichOf(r.line) : undefined));
|
|
203
|
+
if (row.length === 1 || !measured[0] || !measured[1]) {
|
|
204
|
+
const r = row.find((x) => x.line);
|
|
205
|
+
if (!r)
|
|
206
|
+
return;
|
|
207
|
+
alone(r.spans, hemistichOf(r.line), 'center', bayt, 'single', hasBayts ? poemX : 0, poemEnd);
|
|
208
|
+
return;
|
|
209
|
+
}
|
|
210
|
+
const sadr = justify(measured[0], w);
|
|
211
|
+
const ajuz = justify(measured[1], w);
|
|
212
|
+
if (!sadr.fits || !ajuz.fits) {
|
|
213
|
+
// Staggered: the ṣadr flush with the start side, the ʿajuz with the
|
|
214
|
+
// end, each at its natural width.
|
|
215
|
+
alone(row[0].spans, measured[0], 'start', bayt, 'sadr', poemX, poemEnd);
|
|
216
|
+
alone(row[1].spans, measured[1], 'end', bayt, 'ajuz', poemX, poemEnd);
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
// The gap takes what the hemistichs could not fill, so the ṣadr starts
|
|
220
|
+
// on the start vertical and the ʿajuz ends on the end one.
|
|
221
|
+
const gapWidth = settings.gapPx + sadr.short + ajuz.short;
|
|
222
|
+
const gap = [];
|
|
223
|
+
if (settings.ornament) {
|
|
224
|
+
const mark = { kind: 'text', text: settings.ornament, width: 0, inserted: true };
|
|
225
|
+
mark.width = widthOf(mark, mark.text);
|
|
226
|
+
// The ornament sits in the middle of the poem, whatever a short
|
|
227
|
+
// hemistich left on its side of the gap.
|
|
228
|
+
const side = Math.max(0, (settings.gapPx - mark.width) / 2);
|
|
229
|
+
gap.push({ kind: 'space', text: '\t', width: sadr.short + side, labelTab: true }, mark, { kind: 'space', text: '', width: side + ajuz.short, labelTab: true });
|
|
230
|
+
}
|
|
231
|
+
else {
|
|
232
|
+
gap.push({ kind: 'space', text: '\t', width: gapWidth, labelTab: true });
|
|
233
|
+
}
|
|
234
|
+
const s = sadr.h;
|
|
235
|
+
const a = ajuz.h;
|
|
236
|
+
const segments = [...s.segments, ...gap, ...a.segments];
|
|
237
|
+
const offA = s.segments.length + gap.length;
|
|
238
|
+
const gapIdx = gap.map((_, i) => s.segments.length + i);
|
|
239
|
+
// Visual order: the ṣadr first in reading order, so on the left in a
|
|
240
|
+
// left-to-right poem and on the right in a right-to-left one.
|
|
241
|
+
const order = direction === 'rtl'
|
|
242
|
+
? [...a.order.map((i) => i + offA), ...gapIdx.slice().reverse(), ...s.order]
|
|
243
|
+
: [...s.order, ...gapIdx, ...a.order.map((i) => i + offA)];
|
|
244
|
+
// The ṣadr runs from the poem's start vertical, the ʿajuz ends on its
|
|
245
|
+
// end vertical: the line spans the poem.
|
|
246
|
+
push(segments, order, poemX, `${s.text}\t${a.text}`, { bayt, part: 'bayt' });
|
|
247
|
+
});
|
|
248
|
+
if (lines.length > 0)
|
|
249
|
+
lines[lines.length - 1].isLastLine = true;
|
|
250
|
+
return { lines, totalHeight: lines.length * lineHeight };
|
|
251
|
+
}
|
|
252
|
+
//# sourceMappingURL=verse.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verse.js","sourceRoot":"","sources":["../../src/pipeline/verse.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* (`VDTFlowFrame.dashAdvances`), for the renderers that have no font
|
|
7
7
|
* metrics of their own.
|
|
8
8
|
*/
|
|
9
|
-
import type
|
|
9
|
+
import { type VDTDocument } from '../vdt';
|
|
10
10
|
/** Measure and store the central baseline of every family set in the flow
|
|
11
11
|
* of each vertical page, and the advance of the dashes it stretches.
|
|
12
12
|
* Horizontal pages are left alone. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verticalMetrics.d.ts","sourceRoot":"","sources":["../../src/pipeline/verticalMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"verticalMetrics.d.ts","sourceRoot":"","sources":["../../src/pipeline/verticalMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAqD,KAAK,WAAW,EAA8B,MAAM,QAAQ,CAAC;AA8GzH;;uCAEuC;AACvC,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAa5D"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* (`VDTFlowFrame.dashAdvances`), for the renderers that have no font
|
|
7
7
|
* metrics of their own.
|
|
8
8
|
*/
|
|
9
|
+
import { verticalFlowOf } from '../vdt';
|
|
9
10
|
import { fontEm, fontFamilyOf, measureCentralBaseline } from '../measure/vertical';
|
|
10
11
|
import { measureTextWidth } from '../measure/canvas';
|
|
11
12
|
import { stretchedDashesOf } from '../writingMode';
|
|
@@ -134,21 +135,22 @@ function dashAdvances(dashes) {
|
|
|
134
135
|
* Horizontal pages are left alone. */
|
|
135
136
|
export function stampCentralBaselines(doc) {
|
|
136
137
|
for (const page of doc.pages) {
|
|
137
|
-
|
|
138
|
+
const flow = verticalFlowOf(page);
|
|
139
|
+
if (!flow)
|
|
138
140
|
continue;
|
|
139
141
|
const found = flowFonts(page);
|
|
140
142
|
const out = {};
|
|
141
143
|
for (const family of familiesOf(found.fonts))
|
|
142
144
|
out[family] = measureCentralBaseline(family);
|
|
143
145
|
if (Object.keys(out).length > 0)
|
|
144
|
-
|
|
146
|
+
flow.centralBaselines = out;
|
|
145
147
|
else
|
|
146
|
-
delete
|
|
148
|
+
delete flow.centralBaselines;
|
|
147
149
|
const dashes = dashAdvances(found.dashes);
|
|
148
150
|
if (dashes)
|
|
149
|
-
|
|
151
|
+
flow.dashAdvances = dashes;
|
|
150
152
|
else
|
|
151
|
-
delete
|
|
153
|
+
delete flow.dashAdvances;
|
|
152
154
|
}
|
|
153
155
|
}
|
|
154
156
|
//# sourceMappingURL=verticalMetrics.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"verticalMetrics.js","sourceRoot":"","sources":["../../src/pipeline/verticalMetrics.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"verticalMetrics.js","sourceRoot":"","sources":["../../src/pipeline/verticalMetrics.ts"],"names":[],"mappings":"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"}
|
package/dist/table/model.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ColorValue,
|
|
1
|
+
import type { ColorValue, TableCellAlignKeyword, TableCellImage, TableCellVerticalAlign, TableCellPos, TableModel } from '../types';
|
|
2
2
|
/** Position of a cell within the grid (zero-based row/column). */
|
|
3
3
|
export type CellPos = TableCellPos;
|
|
4
4
|
/** An inclusive rectangular range of cells, defined by two corners. */
|
|
@@ -6,8 +6,9 @@ export interface CellRange {
|
|
|
6
6
|
start: CellPos;
|
|
7
7
|
end: CellPos;
|
|
8
8
|
}
|
|
9
|
-
/** Horizontal alignment of a cell's content
|
|
10
|
-
|
|
9
|
+
/** Horizontal alignment of a cell's content (`'start'` / `'end'` included,
|
|
10
|
+
* #371). */
|
|
11
|
+
export type Align = TableCellAlignKeyword;
|
|
11
12
|
/** Vertical alignment of a cell's content. */
|
|
12
13
|
export type VAlign = TableCellVerticalAlign;
|
|
13
14
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/table/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../../src/table/model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EAEV,qBAAqB,EACrB,cAAc,EACd,sBAAsB,EACtB,YAAY,EACZ,UAAU,EACX,MAAM,UAAU,CAAC;AAElB,kEAAkE;AAClE,MAAM,MAAM,OAAO,GAAG,YAAY,CAAC;AAEnC,uEAAuE;AACvE,MAAM,WAAW,SAAS;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,OAAO,CAAC;CACd;AAED;aACa;AACb,MAAM,MAAM,KAAK,GAAG,qBAAqB,CAAC;AAE1C,8CAA8C;AAC9C,MAAM,MAAM,MAAM,GAAG,sBAAsB,CAAC;AAuL5C;;;GAGG;AACH,eAAO,MAAM,MAAM,GAAI,GAAG,UAAU,EAAE,IAAI,MAAM,KAAG,UAkBlD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,UAAU,EAAE,IAAI,MAAM,KAAG,UAkBrD,CAAC;AAEF,8EAA8E;AAC9E,eAAO,MAAM,SAAS,GAAI,GAAG,UAAU,EAAE,IAAI,MAAM,KAAG,UAWrD,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,YAAY,GAAI,GAAG,UAAU,EAAE,IAAI,MAAM,KAAG,UAYxD,CAAC;AAMF,uDAAuD;AACvD,eAAO,MAAM,cAAc,GACzB,GAAG,UAAU,EACb,IAAI,OAAO,EACX,SAAS,MAAM,KACd,UAKF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,YAAY,GACvB,GAAG,UAAU,EACb,IAAI,OAAO,EACX,OAAO,cAAc,GAAG,SAAS,KAChC,UAQF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,GAC5B,GAAG,UAAU,EACb,IAAI,OAAO,EACX,YAAY,UAAU,GAAG,SAAS,KACjC,UAQF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,YAAY,GACvB,GAAG,UAAU,EACb,IAAI,OAAO,EACX,QAAQ,KAAK,EACb,SAAS,MAAM,KACd,UAUF,CAAC;AAMF;;;;;GAKG;AACH,eAAO,MAAM,UAAU,GAAI,GAAG,UAAU,EAAE,OAAO,SAAS,KAAG,UAoC5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,WAAW,GAAI,GAAG,UAAU,EAAE,IAAI,OAAO,KAAG,UAkCxD,CAAC;AAMF,mCAAmC;AACnC,MAAM,WAAW,eAAe;IAC9B;;;mBAGe;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,OAAO,MAAM,EAAE,UAAU,eAAe,KAAG,UAuBnE,CAAC;AAMF;6CAC6C;AAC7C,MAAM,WAAW,cAAc;IAC7B;;;;yBAIqB;IACrB,IAAI,EAAE,aAAa,GAAG,cAAc,CAAC;IACrC;yCACqC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,2EAA2E;IAC3E,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,GAAI,GAAG,UAAU,KAAG,cAAc,EA4B7D,CAAC"}
|
package/dist/table/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/table/model.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../src/table/model.ts"],"names":[],"mappings":"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"}
|