postext 1.15.0 → 1.16.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__/arabic/harakatProfile.test.d.ts +2 -0
- package/dist/__tests__/arabic/harakatProfile.test.d.ts.map +1 -0
- package/dist/__tests__/arabic/harakatProfile.test.js +105 -0
- package/dist/__tests__/arabic/harakatProfile.test.js.map +1 -0
- package/dist/__tests__/bundleLocaleAndBytes.test.js +9 -9
- package/dist/__tests__/bundleLocaleAndBytes.test.js.map +1 -1
- package/dist/__tests__/chineseLocale.test.js +10 -5
- package/dist/__tests__/chineseLocale.test.js.map +1 -1
- package/dist/__tests__/cjk/annotationsRender.test.js +5 -2
- package/dist/__tests__/cjk/annotationsRender.test.js.map +1 -1
- package/dist/__tests__/cjk/chipTracking.test.d.ts +2 -0
- package/dist/__tests__/cjk/chipTracking.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/chipTracking.test.js +52 -0
- package/dist/__tests__/cjk/chipTracking.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseHtml.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseHtml.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseHtml.test.js +163 -0
- package/dist/__tests__/cjk/japaneseHtml.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseMarks.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseMarks.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseMarks.test.js +289 -0
- package/dist/__tests__/cjk/japaneseMarks.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseMarksRender.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseMarksRender.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseMarksRender.test.js +161 -0
- package/dist/__tests__/cjk/japaneseMarksRender.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseRuby.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseRuby.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseRuby.test.js +457 -0
- package/dist/__tests__/cjk/japaneseRuby.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseSegmentLanguage.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseSegmentLanguage.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js +50 -0
- package/dist/__tests__/cjk/japaneseSegmentLanguage.test.js.map +1 -0
- package/dist/__tests__/cjk/japaneseSpacing.test.d.ts +2 -0
- package/dist/__tests__/cjk/japaneseSpacing.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/japaneseSpacing.test.js +417 -0
- package/dist/__tests__/cjk/japaneseSpacing.test.js.map +1 -0
- package/dist/__tests__/cjk/kanbunKunten.test.d.ts +2 -0
- package/dist/__tests__/cjk/kanbunKunten.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/kanbunKunten.test.js +230 -0
- package/dist/__tests__/cjk/kanbunKunten.test.js.map +1 -0
- package/dist/__tests__/cjk/kanbunKuntenRender.test.d.ts +2 -0
- package/dist/__tests__/cjk/kanbunKuntenRender.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/kanbunKuntenRender.test.js +127 -0
- package/dist/__tests__/cjk/kanbunKuntenRender.test.js.map +1 -0
- package/dist/__tests__/cjk/kinsokuJa.test.d.ts +2 -0
- package/dist/__tests__/cjk/kinsokuJa.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/kinsokuJa.test.js +388 -0
- package/dist/__tests__/cjk/kinsokuJa.test.js.map +1 -0
- package/dist/__tests__/cjk/kinsokuJaBuild.test.d.ts +2 -0
- package/dist/__tests__/cjk/kinsokuJaBuild.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/kinsokuJaBuild.test.js +38 -0
- package/dist/__tests__/cjk/kinsokuJaBuild.test.js.map +1 -0
- package/dist/__tests__/cjk/resourceAnnotations.test.d.ts +2 -0
- package/dist/__tests__/cjk/resourceAnnotations.test.d.ts.map +1 -0
- package/dist/__tests__/cjk/resourceAnnotations.test.js +223 -0
- package/dist/__tests__/cjk/resourceAnnotations.test.js.map +1 -0
- package/dist/__tests__/defaults/cjk.test.js +10 -2
- package/dist/__tests__/defaults/cjk.test.js.map +1 -1
- package/dist/__tests__/exports.test.js +36 -0
- package/dist/__tests__/exports.test.js.map +1 -1
- package/dist/__tests__/headingLetterSpacing.test.js +2 -1
- package/dist/__tests__/headingLetterSpacing.test.js.map +1 -1
- package/dist/__tests__/indexChinese.test.js +1 -1
- package/dist/__tests__/indexJapanese.test.d.ts +2 -0
- package/dist/__tests__/indexJapanese.test.d.ts.map +1 -0
- package/dist/__tests__/indexJapanese.test.js +242 -0
- package/dist/__tests__/indexJapanese.test.js.map +1 -0
- package/dist/__tests__/japaneseHeadings.test.d.ts +2 -0
- package/dist/__tests__/japaneseHeadings.test.d.ts.map +1 -0
- package/dist/__tests__/japaneseHeadings.test.js +319 -0
- package/dist/__tests__/japaneseHeadings.test.js.map +1 -0
- package/dist/__tests__/japaneseLocale.test.d.ts +2 -0
- package/dist/__tests__/japaneseLocale.test.d.ts.map +1 -0
- package/dist/__tests__/japaneseLocale.test.js +201 -0
- package/dist/__tests__/japaneseLocale.test.js.map +1 -0
- package/dist/__tests__/japaneseNotes.test.d.ts +2 -0
- package/dist/__tests__/japaneseNotes.test.d.ts.map +1 -0
- package/dist/__tests__/japaneseNotes.test.js +336 -0
- package/dist/__tests__/japaneseNotes.test.js.map +1 -0
- package/dist/__tests__/japaneseNumbering.test.d.ts +2 -0
- package/dist/__tests__/japaneseNumbering.test.d.ts.map +1 -0
- package/dist/__tests__/japaneseNumbering.test.js +292 -0
- package/dist/__tests__/japaneseNumbering.test.js.map +1 -0
- package/dist/__tests__/parse/anchors.test.js +17 -0
- package/dist/__tests__/parse/anchors.test.js.map +1 -1
- package/dist/__tests__/pipeline/citationsJapanese.test.d.ts +2 -0
- package/dist/__tests__/pipeline/citationsJapanese.test.d.ts.map +1 -0
- package/dist/__tests__/pipeline/citationsJapanese.test.js +110 -0
- package/dist/__tests__/pipeline/citationsJapanese.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__/pipeline/safeArea.test.d.ts +2 -0
- package/dist/__tests__/pipeline/safeArea.test.d.ts.map +1 -0
- package/dist/__tests__/pipeline/safeArea.test.js +207 -0
- package/dist/__tests__/pipeline/safeArea.test.js.map +1 -0
- package/dist/__tests__/vertical/compositionPaint.test.js +6 -5
- package/dist/__tests__/vertical/compositionPaint.test.js.map +1 -1
- package/dist/__tests__/vertical/japaneseVertical.test.d.ts +2 -0
- package/dist/__tests__/vertical/japaneseVertical.test.d.ts.map +1 -0
- package/dist/__tests__/vertical/japaneseVertical.test.js +247 -0
- package/dist/__tests__/vertical/japaneseVertical.test.js.map +1 -0
- package/dist/__tests__/vertical/verticalSpans.d.ts +2 -1
- package/dist/__tests__/vertical/verticalSpans.d.ts.map +1 -1
- package/dist/__tests__/vertical/verticalSpans.js +3 -2
- package/dist/__tests__/vertical/verticalSpans.js.map +1 -1
- package/dist/__tests__/video.test.d.ts +2 -0
- package/dist/__tests__/video.test.d.ts.map +1 -0
- package/dist/__tests__/video.test.js +305 -0
- package/dist/__tests__/video.test.js.map +1 -0
- package/dist/arabicMarks.d.ts +11 -1
- package/dist/arabicMarks.d.ts.map +1 -1
- package/dist/arabicMarks.js +72 -5
- package/dist/arabicMarks.js.map +1 -1
- package/dist/bundle/adapters.d.ts +6 -0
- package/dist/bundle/adapters.d.ts.map +1 -1
- package/dist/bundle/adapters.js +30 -0
- package/dist/bundle/adapters.js.map +1 -1
- package/dist/bundle/codec.d.ts.map +1 -1
- package/dist/bundle/codec.js +67 -3
- package/dist/bundle/codec.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 +2 -2
- package/dist/bundle/index.js.map +1 -1
- package/dist/bundle/manifest.d.ts +8 -0
- package/dist/bundle/manifest.d.ts.map +1 -1
- package/dist/bundle/manifest.js +48 -1
- package/dist/bundle/manifest.js.map +1 -1
- package/dist/bundle/types.d.ts +5 -0
- package/dist/bundle/types.d.ts.map +1 -1
- package/dist/bundle/zip.js +1 -1
- package/dist/bundle/zip.js.map +1 -1
- package/dist/canvas-backend/annotations.d.ts +20 -5
- package/dist/canvas-backend/annotations.d.ts.map +1 -1
- package/dist/canvas-backend/annotations.js +59 -6
- 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 +29 -3
- package/dist/canvas-backend/blockRender.js.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.d.ts +6 -1
- package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
- package/dist/canvas-backend/renderResourceBlock.js +124 -5
- package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
- package/dist/canvas-backend/verticalText.d.ts +9 -4
- package/dist/canvas-backend/verticalText.d.ts.map +1 -1
- package/dist/canvas-backend/verticalText.js +20 -9
- package/dist/canvas-backend/verticalText.js.map +1 -1
- package/dist/chineseNumerals.d.ts +3 -2
- package/dist/chineseNumerals.d.ts.map +1 -1
- package/dist/chineseNumerals.js +11 -8
- package/dist/chineseNumerals.js.map +1 -1
- package/dist/citations/bibtex.d.ts.map +1 -1
- package/dist/citations/bibtex.js +4 -0
- package/dist/citations/bibtex.js.map +1 -1
- package/dist/citations/data.d.ts.map +1 -1
- package/dist/citations/data.js +6 -1
- package/dist/citations/data.js.map +1 -1
- package/dist/citations/types.d.ts +8 -0
- package/dist/citations/types.d.ts.map +1 -1
- package/dist/cjkMarks.d.ts +23 -14
- package/dist/cjkMarks.d.ts.map +1 -1
- package/dist/cjkMarks.js +251 -49
- package/dist/cjkMarks.js.map +1 -1
- package/dist/configWarnings.js +9 -3
- package/dist/configWarnings.js.map +1 -1
- package/dist/defaults/cjk.d.ts +64 -14
- package/dist/defaults/cjk.d.ts.map +1 -1
- package/dist/defaults/cjk.js +203 -29
- package/dist/defaults/cjk.js.map +1 -1
- package/dist/defaults/footnotes.d.ts +27 -4
- package/dist/defaults/footnotes.d.ts.map +1 -1
- package/dist/defaults/footnotes.js +95 -36
- package/dist/defaults/footnotes.js.map +1 -1
- package/dist/defaults/headings.d.ts +5 -0
- package/dist/defaults/headings.d.ts.map +1 -1
- package/dist/defaults/headings.js +46 -1
- package/dist/defaults/headings.js.map +1 -1
- package/dist/defaults/index.d.ts +3 -2
- package/dist/defaults/index.d.ts.map +1 -1
- package/dist/defaults/index.js +12 -3
- package/dist/defaults/index.js.map +1 -1
- package/dist/defaults/indexConfig.d.ts.map +1 -1
- package/dist/defaults/indexConfig.js +7 -4
- package/dist/defaults/indexConfig.js.map +1 -1
- package/dist/defaults/paragraphStyles.d.ts.map +1 -1
- package/dist/defaults/paragraphStyles.js +4 -0
- package/dist/defaults/paragraphStyles.js.map +1 -1
- package/dist/defaults/resourceTypes.d.ts +16 -3
- package/dist/defaults/resourceTypes.d.ts.map +1 -1
- package/dist/defaults/resourceTypes.js +56 -8
- package/dist/defaults/resourceTypes.js.map +1 -1
- package/dist/defaults/shared.d.ts.map +1 -1
- package/dist/defaults/shared.js +21 -0
- package/dist/defaults/shared.js.map +1 -1
- package/dist/defaults/tableStyle.d.ts.map +1 -1
- package/dist/defaults/tableStyle.js +4 -1
- package/dist/defaults/tableStyle.js.map +1 -1
- package/dist/defaults/videoStyle.d.ts +9 -0
- package/dist/defaults/videoStyle.d.ts.map +1 -0
- package/dist/defaults/videoStyle.js +130 -0
- package/dist/defaults/videoStyle.js.map +1 -0
- package/dist/design/placeholders.d.ts.map +1 -1
- package/dist/design/placeholders.js +5 -3
- package/dist/design/placeholders.js.map +1 -1
- package/dist/html-backend.d.ts +13 -0
- package/dist/html-backend.d.ts.map +1 -1
- package/dist/html-backend.js +233 -26
- package/dist/html-backend.js.map +1 -1
- package/dist/htmlAnnotations.d.ts +47 -9
- package/dist/htmlAnnotations.d.ts.map +1 -1
- package/dist/htmlAnnotations.js +89 -17
- package/dist/htmlAnnotations.js.map +1 -1
- package/dist/index.d.ts +13 -7
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -4
- package/dist/index.js.map +1 -1
- package/dist/japaneseNumerals.d.ts +44 -0
- package/dist/japaneseNumerals.d.ts.map +1 -0
- package/dist/japaneseNumerals.js +100 -0
- package/dist/japaneseNumerals.js.map +1 -0
- package/dist/knuthPlass/richAdapter.d.ts +5 -1
- package/dist/knuthPlass/richAdapter.d.ts.map +1 -1
- package/dist/knuthPlass/richAdapter.js +2 -0
- package/dist/knuthPlass/richAdapter.js.map +1 -1
- package/dist/locale.d.ts +19 -12
- package/dist/locale.d.ts.map +1 -1
- package/dist/locale.js +24 -12
- package/dist/locale.js.map +1 -1
- package/dist/measure/cache.d.ts.map +1 -1
- package/dist/measure/cache.js +17 -8
- package/dist/measure/cache.js.map +1 -1
- package/dist/measure/canvas.d.ts +21 -0
- package/dist/measure/canvas.d.ts.map +1 -1
- package/dist/measure/canvas.js +82 -0
- package/dist/measure/canvas.js.map +1 -1
- package/dist/measure/cjk.d.ts +3 -1
- package/dist/measure/cjk.d.ts.map +1 -1
- package/dist/measure/cjk.js +4 -2
- package/dist/measure/cjk.js.map +1 -1
- package/dist/measure/cjkAnnotate.d.ts +62 -3
- package/dist/measure/cjkAnnotate.d.ts.map +1 -1
- package/dist/measure/cjkAnnotate.js +99 -2
- package/dist/measure/cjkAnnotate.js.map +1 -1
- package/dist/measure/cjkClasses.d.ts +93 -13
- package/dist/measure/cjkClasses.d.ts.map +1 -1
- package/dist/measure/cjkClasses.js +204 -14
- package/dist/measure/cjkClasses.js.map +1 -1
- package/dist/measure/cjkCompose.d.ts +10 -4
- package/dist/measure/cjkCompose.d.ts.map +1 -1
- package/dist/measure/cjkCompose.js +715 -75
- package/dist/measure/cjkCompose.js.map +1 -1
- package/dist/measure/cjkPunctuation.d.ts +68 -14
- package/dist/measure/cjkPunctuation.d.ts.map +1 -1
- package/dist/measure/cjkPunctuation.js +96 -21
- package/dist/measure/cjkPunctuation.js.map +1 -1
- package/dist/measure/plain.js +2 -2
- package/dist/measure/plain.js.map +1 -1
- package/dist/measure/rich.d.ts +12 -2
- package/dist/measure/rich.d.ts.map +1 -1
- package/dist/measure/rich.js +46 -8
- package/dist/measure/rich.js.map +1 -1
- package/dist/measure/rubyJis.d.ts +96 -0
- package/dist/measure/rubyJis.d.ts.map +1 -0
- package/dist/measure/rubyJis.js +245 -0
- package/dist/measure/rubyJis.js.map +1 -0
- package/dist/measure/vertical.d.ts +13 -5
- package/dist/measure/vertical.d.ts.map +1 -1
- package/dist/measure/vertical.js +16 -6
- package/dist/measure/vertical.js.map +1 -1
- package/dist/numberWords.d.ts +4 -3
- package/dist/numberWords.d.ts.map +1 -1
- package/dist/numberWords.js +15 -5
- package/dist/numberWords.js.map +1 -1
- package/dist/numbering.d.ts +24 -12
- package/dist/numbering.d.ts.map +1 -1
- package/dist/numbering.js +57 -11
- package/dist/numbering.js.map +1 -1
- package/dist/parse/annotations.d.ts +21 -18
- package/dist/parse/annotations.d.ts.map +1 -1
- package/dist/parse/annotations.js +140 -51
- package/dist/parse/annotations.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 +74 -10
- package/dist/parse/indexMarks.js.map +1 -1
- package/dist/parse/inlineFormatting.d.ts +4 -3
- package/dist/parse/inlineFormatting.d.ts.map +1 -1
- package/dist/parse/inlineFormatting.js +9 -8
- package/dist/parse/inlineFormatting.js.map +1 -1
- package/dist/parse/types.d.ts +93 -5
- package/dist/parse/types.d.ts.map +1 -1
- package/dist/pipeline/annotations.d.ts +25 -15
- package/dist/pipeline/annotations.d.ts.map +1 -1
- package/dist/pipeline/annotations.js +102 -16
- package/dist/pipeline/annotations.js.map +1 -1
- package/dist/pipeline/build.d.ts.map +1 -1
- package/dist/pipeline/build.js +284 -31
- package/dist/pipeline/build.js.map +1 -1
- package/dist/pipeline/buildBlockKind.js +2 -1
- package/dist/pipeline/buildBlockKind.js.map +1 -1
- package/dist/pipeline/buildHelpers.d.ts +2 -0
- package/dist/pipeline/buildHelpers.d.ts.map +1 -1
- package/dist/pipeline/buildHelpers.js +17 -0
- package/dist/pipeline/buildHelpers.js.map +1 -1
- package/dist/pipeline/buildMeasurement.d.ts +3 -0
- package/dist/pipeline/buildMeasurement.d.ts.map +1 -1
- package/dist/pipeline/buildMeasurement.js +1 -0
- package/dist/pipeline/buildMeasurement.js.map +1 -1
- package/dist/pipeline/calloutLayout.d.ts +2 -0
- package/dist/pipeline/calloutLayout.d.ts.map +1 -1
- package/dist/pipeline/calloutLayout.js +5 -5
- package/dist/pipeline/calloutLayout.js.map +1 -1
- package/dist/pipeline/citations.d.ts +1 -1
- package/dist/pipeline/citations.d.ts.map +1 -1
- package/dist/pipeline/citations.js +15 -7
- package/dist/pipeline/citations.js.map +1 -1
- package/dist/pipeline/columnBalancing.d.ts +22 -0
- package/dist/pipeline/columnBalancing.d.ts.map +1 -1
- package/dist/pipeline/columnBalancing.js +80 -3
- package/dist/pipeline/columnBalancing.js.map +1 -1
- package/dist/pipeline/config.d.ts.map +1 -1
- package/dist/pipeline/config.js +3 -2
- package/dist/pipeline/config.js.map +1 -1
- package/dist/pipeline/contentWarnings.d.ts.map +1 -1
- package/dist/pipeline/contentWarnings.js +19 -0
- package/dist/pipeline/contentWarnings.js.map +1 -1
- package/dist/pipeline/continuation.d.ts.map +1 -1
- package/dist/pipeline/continuation.js +3 -3
- package/dist/pipeline/continuation.js.map +1 -1
- package/dist/pipeline/crossRefs.d.ts.map +1 -1
- package/dist/pipeline/crossRefs.js +3 -0
- package/dist/pipeline/crossRefs.js.map +1 -1
- package/dist/pipeline/footnotes.d.ts +20 -12
- package/dist/pipeline/footnotes.d.ts.map +1 -1
- package/dist/pipeline/footnotes.js +62 -16
- package/dist/pipeline/footnotes.js.map +1 -1
- package/dist/pipeline/headingStyles.js +1 -1
- package/dist/pipeline/headingStyles.js.map +1 -1
- package/dist/pipeline/indexDirective.d.ts.map +1 -1
- package/dist/pipeline/indexDirective.js +89 -12
- package/dist/pipeline/indexDirective.js.map +1 -1
- package/dist/pipeline/indexGroups.d.ts +5 -3
- package/dist/pipeline/indexGroups.d.ts.map +1 -1
- package/dist/pipeline/indexGroups.js +9 -4
- package/dist/pipeline/indexGroups.js.map +1 -1
- package/dist/pipeline/indexJapanese.d.ts +75 -0
- package/dist/pipeline/indexJapanese.d.ts.map +1 -0
- package/dist/pipeline/indexJapanese.js +264 -0
- package/dist/pipeline/indexJapanese.js.map +1 -0
- package/dist/pipeline/lineSpan.d.ts +36 -0
- package/dist/pipeline/lineSpan.d.ts.map +1 -0
- package/dist/pipeline/lineSpan.js +36 -0
- package/dist/pipeline/lineSpan.js.map +1 -0
- package/dist/pipeline/lists.js +2 -2
- package/dist/pipeline/lists.js.map +1 -1
- package/dist/pipeline/measureContentBlock.d.ts +4 -0
- package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
- package/dist/pipeline/measureContentBlock.js +54 -5
- package/dist/pipeline/measureContentBlock.js.map +1 -1
- package/dist/pipeline/outline.d.ts.map +1 -1
- package/dist/pipeline/outline.js +3 -1
- package/dist/pipeline/outline.js.map +1 -1
- package/dist/pipeline/paragraphContainers.d.ts +25 -2
- package/dist/pipeline/paragraphContainers.d.ts.map +1 -1
- package/dist/pipeline/paragraphContainers.js +82 -2
- package/dist/pipeline/paragraphContainers.js.map +1 -1
- package/dist/pipeline/parts.d.ts +2 -2
- package/dist/pipeline/parts.js +3 -3
- package/dist/pipeline/parts.js.map +1 -1
- package/dist/pipeline/placement.d.ts.map +1 -1
- package/dist/pipeline/placement.js +2 -2
- package/dist/pipeline/placement.js.map +1 -1
- package/dist/pipeline/resourceLayout.d.ts +6 -0
- package/dist/pipeline/resourceLayout.d.ts.map +1 -1
- package/dist/pipeline/resourceLayout.js +85 -15
- package/dist/pipeline/resourceLayout.js.map +1 -1
- package/dist/pipeline/resourceNumbering.d.ts +5 -2
- package/dist/pipeline/resourceNumbering.d.ts.map +1 -1
- package/dist/pipeline/resourceNumbering.js +12 -7
- package/dist/pipeline/resourceNumbering.js.map +1 -1
- package/dist/pipeline/safeArea.d.ts +29 -0
- package/dist/pipeline/safeArea.d.ts.map +1 -0
- package/dist/pipeline/safeArea.js +89 -0
- package/dist/pipeline/safeArea.js.map +1 -0
- package/dist/pipeline/styles.d.ts +12 -0
- package/dist/pipeline/styles.d.ts.map +1 -1
- package/dist/pipeline/styles.js +7 -1
- package/dist/pipeline/styles.js.map +1 -1
- package/dist/pipeline/verse.d.ts +3 -0
- package/dist/pipeline/verse.d.ts.map +1 -1
- package/dist/pipeline/verse.js +1 -1
- package/dist/pipeline/verse.js.map +1 -1
- package/dist/pipeline/verticalMetrics.d.ts.map +1 -1
- package/dist/pipeline/verticalMetrics.js +4 -0
- package/dist/pipeline/verticalMetrics.js.map +1 -1
- package/dist/pipeline/videoOverlay.d.ts +24 -0
- package/dist/pipeline/videoOverlay.d.ts.map +1 -0
- package/dist/pipeline/videoOverlay.js +134 -0
- package/dist/pipeline/videoOverlay.js.map +1 -0
- package/dist/types.d.ts +567 -50
- package/dist/types.d.ts.map +1 -1
- package/dist/uprightArabic.js +1 -1
- package/dist/uprightArabic.js.map +1 -1
- package/dist/vdt.d.ts +221 -17
- package/dist/vdt.d.ts.map +1 -1
- package/dist/vdt.js.map +1 -1
- package/dist/video/qr.d.ts +21 -0
- package/dist/video/qr.d.ts.map +1 -0
- package/dist/video/qr.js +326 -0
- package/dist/video/qr.js.map +1 -0
- package/dist/video/url.d.ts +62 -0
- package/dist/video/url.d.ts.map +1 -0
- package/dist/video/url.js +206 -0
- package/dist/video/url.js.map +1 -0
- package/dist/writingMode.d.ts +74 -20
- package/dist/writingMode.d.ts.map +1 -1
- package/dist/writingMode.js +146 -27
- package/dist/writingMode.js.map +1 -1
- package/package.json +1 -1
package/dist/writingMode.d.ts
CHANGED
|
@@ -13,27 +13,40 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Classes follow Unicode's `Vertical_Orientation` (UAX #50, data 18.0),
|
|
15
15
|
* with the Chinese rules on top (clreq Appendix A, GB/T 15834—2011 §5.2):
|
|
16
|
-
* - pause and stop marks (、。,.!?)
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
16
|
+
* - pause and stop marks (、。,.!?) are never turned. A Simplified
|
|
17
|
+
* (mainland) font sets them in the upper right of the cell through
|
|
18
|
+
* `vert` (、。,. in the top-right corner, !?:; in the right half);
|
|
19
|
+
* Taiwan and Hong Kong fonts centre them and have no such form (their
|
|
20
|
+
* U+FE10–FE16 are the mainland shapes, so the vertical presentation
|
|
21
|
+
* forms must not be substituted there), and leave :; upright too.
|
|
22
|
+
* Japanese text (the `japan` region) sets 、。,. in the corner as the
|
|
23
|
+
* mainland does, !? upright in the centre of the cell (JLReq §3.1.10;
|
|
24
|
+
* a Japanese font has no vertical form for them) and turns :; (UAX #50
|
|
25
|
+
* `Tr`, the vertical form of JIS X 4051).
|
|
22
26
|
* - brackets and quotes take the vertical form, which is the horizontal
|
|
23
27
|
* glyph turned about the em box's centre when the font gives none;
|
|
24
28
|
* “ ” ‘ ’ in mainland text read as the corner brackets 『』「」
|
|
25
|
-
* (UAX #50 §3.2.4, the Hans vertical convention).
|
|
29
|
+
* (UAX #50 §3.2.4, the Hans vertical convention). Japanese “ ” are
|
|
30
|
+
* horizontal marks: vertical text sets 〝 〟 in their place (JLReq
|
|
31
|
+
* §3.1.1; ja-typography §5), whose vertical forms Japanese fonts have
|
|
32
|
+
* where they have none for “ ”; ‘ ’ keep their own.
|
|
33
|
+
* - small kana (ぁ っ ゃ ァ ッ ㇰ…, UAX #50 `Tu`) take their vertical form in
|
|
34
|
+
* Japanese text, which sits up and to the right of the horizontal one
|
|
35
|
+
* (JLReq §2.1.2), or move there without one; Chinese text leaves every
|
|
36
|
+
* `Tu` character upright as it is.
|
|
26
37
|
* - dashes, ellipses, the wave dash and the interpunct are turned about
|
|
27
38
|
* the em box's centre (Noto CJK gives —— a vertical form only with
|
|
28
39
|
* `fwid`): a dash is stretched to fill its cell. The mainland interpunct
|
|
29
|
-
* takes half a cell (clreq §5.1), the Taiwan
|
|
30
|
-
* a whole cell.
|
|
40
|
+
* takes half a cell (clreq §5.1), the Taiwan, Hong Kong and Japanese
|
|
41
|
+
* one a whole cell (JLReq §3.1.2: ・ is a full em).
|
|
31
42
|
* - an apostrophe or an interpunct inside a Latin word ("don’t", "l·l")
|
|
32
43
|
* runs sideways with the word, as the composer keeps it in the word.
|
|
33
44
|
*
|
|
34
45
|
* The measurer and every renderer read the same runs ({@link
|
|
35
46
|
* verticalRuns}): what stands in a cell advances its cell (one em, half an
|
|
36
47
|
* em for the mainland interpunct), what runs sideways its horizontal width.
|
|
48
|
+
* Japanese text also sets a pair of exclamation and question marks (!! !?
|
|
49
|
+
* ?! ?? and !! !? ?! ??) side by side in one cell (JLReq §3.1.10).
|
|
37
50
|
*/
|
|
38
51
|
import type { CjkRegion } from './types';
|
|
39
52
|
/** How a character is set in a vertical line.
|
|
@@ -53,11 +66,19 @@ export type VerticalOrientationKind = 'upright' | 'sideways' | 'rotate' | 'alter
|
|
|
53
66
|
export interface VerticalGlyph {
|
|
54
67
|
orient: VerticalOrientationKind;
|
|
55
68
|
/** `alternate` only: what a renderer without the font's vertical forms
|
|
56
|
-
* does instead
|
|
69
|
+
* does instead: turn the glyph (`rotate`), or move the upright glyph by
|
|
70
|
+
* `offset` in its cell (`corner`: a mainland pause mark to the top
|
|
71
|
+
* right, a Japanese small kana up and to the right). */
|
|
57
72
|
fallback?: 'rotate' | 'corner';
|
|
58
73
|
/** The character a fallback paints instead of this one (“ → 『 in
|
|
59
74
|
* mainland text: the Hans vertical quote is the corner bracket). */
|
|
60
75
|
substitute?: string;
|
|
76
|
+
/** The text every renderer paints in place of the grapheme (or of the
|
|
77
|
+
* `tcy` cell's text), before it looks for the font's vertical form:
|
|
78
|
+
* Japanese “ ” are set as 〝 〟; a Japanese pair of full-width !? in one
|
|
79
|
+
* cell as the half-width !? that fit it. The text read and copied stays
|
|
80
|
+
* the grapheme. Absent outside the `japan` region. */
|
|
81
|
+
paintAs?: string;
|
|
61
82
|
/** `rotate`: stretch the turned glyph along the line to fill its cell
|
|
62
83
|
* (a dash narrower than its em). */
|
|
63
84
|
stretch?: boolean;
|
|
@@ -81,10 +102,20 @@ export declare function holdsTurnedMark(text: string): boolean;
|
|
|
81
102
|
/** The dashes of `text` a vertical line stretches to fill their cell
|
|
82
103
|
* (`VerticalGlyph.stretch`), each once. */
|
|
83
104
|
export declare function stretchedDashesOf(text: string): string[];
|
|
105
|
+
/** Where a Japanese small kana moves when the font gives no vertical form,
|
|
106
|
+
* in ems of its cell (right and up): the shift of the `vert` glyphs'
|
|
107
|
+
* ink from the horizontal ones in Noto Serif JP and Noto Sans JP, Shippori
|
|
108
|
+
* Mincho, BIZ UDMincho and Zen Old Mincho: 0.09–0.25 em right and
|
|
109
|
+
* 0.06–0.26 em up (0.15 and 0.14 in Noto Serif JP). */
|
|
110
|
+
export declare const SMALL_KANA_OFFSET_EM: {
|
|
111
|
+
x: number;
|
|
112
|
+
y: number;
|
|
113
|
+
};
|
|
84
114
|
/**
|
|
85
|
-
* How a grapheme is set in a vertical line of `region`'s Chinese
|
|
86
|
-
* module comment). Reads the grapheme's first code
|
|
87
|
-
* a combining mark or a variation selector follows
|
|
115
|
+
* How a grapheme is set in a vertical line of `region`'s Chinese or
|
|
116
|
+
* Japanese (see the module comment). Reads the grapheme's first code
|
|
117
|
+
* point; a sequence with a combining mark or a variation selector follows
|
|
118
|
+
* its base.
|
|
88
119
|
*/
|
|
89
120
|
export declare function verticalOrientation(grapheme: string, region?: CjkRegion): VerticalGlyph;
|
|
90
121
|
/** Whether a grapheme stands in a cell of its own in vertical text (every
|
|
@@ -95,14 +126,17 @@ export declare function isVerticalCell(grapheme: string, region?: CjkRegion): bo
|
|
|
95
126
|
* quadrant, the vertical one in the top-right). Measured against the
|
|
96
127
|
* `vert` glyphs of Noto Serif SC: within 0.07 em for 、。,.. !? and :;
|
|
97
128
|
* carry their own `offset` (half an em to the right, 0.08 and 0.22 em up),
|
|
98
|
-
* within 0.02 em of the font's.
|
|
129
|
+
* within 0.02 em of the font's. Japanese 、。,. use it too: the `vert`
|
|
130
|
+
* glyphs of Noto Serif JP move 0.59–0.62 em right and 0.60–0.65 em up,
|
|
131
|
+
* those of Shippori Mincho 0.61–0.65 and 0.62–0.66. */
|
|
99
132
|
export declare const CORNER_OFFSET_EM: {
|
|
100
133
|
x: number;
|
|
101
134
|
y: number;
|
|
102
135
|
};
|
|
103
136
|
/** The size of a character's cell in a vertical line, in ems: half an em
|
|
104
137
|
* for the mainland interpunct (· ・, clreq §5.1), one em for
|
|
105
|
-
* every other character that stands in a cell
|
|
138
|
+
* every other character that stands in a cell (the Japanese ・ too,
|
|
139
|
+
* JLReq §3.1.2). `cls`, when the caller has
|
|
106
140
|
* it, is the grapheme's `cjkClassOf`. */
|
|
107
141
|
export declare function verticalCellEms(grapheme: string, region?: CjkRegion, cls?: import("./measure/cjkClasses").CjkClass): number;
|
|
108
142
|
/** One run of a vertical line: consecutive graphemes set alike. A
|
|
@@ -154,12 +188,29 @@ export declare function latinReader(graphemes: readonly string[], region?: CjkRe
|
|
|
154
188
|
* character, or alone between Chinese text, stands upright.
|
|
155
189
|
*/
|
|
156
190
|
export declare function uprightDigitRuns(graphemes: readonly string[], digits: number, region?: CjkRegion): Map<number, number>;
|
|
191
|
+
/**
|
|
192
|
+
* Whether `graphemes[i, i + 2)` is a pair of exclamation and question marks
|
|
193
|
+
* Japanese vertical text sets side by side in one upright cell (JLReq
|
|
194
|
+
* §3.1.10; ja-typography §8): !! !? ?! ?? or !! !? ?! ??, exactly two
|
|
195
|
+
* (a third mark on either side leaves all of them as they are). Half-width
|
|
196
|
+
* marks pair only outside a Latin run: no letter, digit or other mark set
|
|
197
|
+
* sideways touches them (`Wow!!`, `(!?)` and `12!!` run sideways with their
|
|
198
|
+
* text); a space may. The composer reads its units by the same rule
|
|
199
|
+
* (`cjkCompose.ts`), so a line paints the cells it measured.
|
|
200
|
+
*/
|
|
201
|
+
export declare function isUprightMarkPair(graphemes: readonly string[], i: number, region: CjkRegion): boolean;
|
|
202
|
+
/** The one-cell glyph of a mark pair (see {@link isUprightMarkPair}): a
|
|
203
|
+
* full-width pair is painted with the half-width marks, which fit the
|
|
204
|
+
* cell where the full-width ones would be squeezed to half their width. */
|
|
205
|
+
export declare function markPairGlyph(pair: string): VerticalGlyph;
|
|
157
206
|
/** Cut `text` into the runs a vertical line paints and measures: sideways
|
|
158
207
|
* graphemes joined into runs, every other grapheme a cell of its own. An
|
|
159
208
|
* apostrophe or interpunct between two letters of a Latin word runs
|
|
160
209
|
* sideways with it (see `isWordInnerMark`), as the composer measures it.
|
|
161
210
|
* With `uprightDigits` (`cjk.uprightDigits`), each short number
|
|
162
|
-
* ({@link uprightDigitRuns}) is one `tcy` cell
|
|
211
|
+
* ({@link uprightDigitRuns}) is one `tcy` cell; in Japanese text, so is
|
|
212
|
+
* each pair of exclamation and question marks ({@link
|
|
213
|
+
* isUprightMarkPair}). */
|
|
163
214
|
export declare function verticalRuns(graphemes: readonly string[], region?: CjkRegion, uprightDigits?: number): VerticalRun[];
|
|
164
215
|
/** How the author set a run of vertical text apart (`VDTLineSegment.tcy`,
|
|
165
216
|
* `VDTLineSegment.orientation`): `'tcy'` (`:tcy[…]`), one upright cell;
|
|
@@ -168,8 +219,10 @@ export declare function verticalRuns(graphemes: readonly string[], region?: CjkR
|
|
|
168
219
|
export type ForcedOrientation = 'tcy' | 'upright' | 'sideways';
|
|
169
220
|
/** The runs of a text whose orientation the author forced (see
|
|
170
221
|
* {@link ForcedOrientation}): one `tcy` cell, one upright cell per
|
|
171
|
-
* grapheme, or one sideways run.
|
|
172
|
-
|
|
222
|
+
* grapheme, or one sideways run. A cell of two full-width !? in
|
|
223
|
+
* Japanese text (`region`; the composer sets a pair in one, see {@link
|
|
224
|
+
* isUprightMarkPair}) is painted with the half-width marks. */
|
|
225
|
+
export declare function forcedVerticalRuns(graphemes: readonly string[], orient: ForcedOrientation, region?: CjkRegion): VerticalRun[];
|
|
173
226
|
/** The orientation a segment's author forced, if any. */
|
|
174
227
|
export declare function segmentOrientation(seg: {
|
|
175
228
|
tcy?: boolean;
|
|
@@ -182,6 +235,7 @@ export declare function segmentOrientation(seg: {
|
|
|
182
235
|
* {@link uprightDigitCandidates}, also one that runs with Latin text, so a
|
|
183
236
|
* paragraph holding one is measured by the formatted path, which reads
|
|
184
237
|
* each number with its paragraph (`sidewaysNumberSpans`). ASCII letters
|
|
185
|
-
* never do
|
|
186
|
-
|
|
238
|
+
* never do; in Japanese text (`region`), a pair of half-width marks set
|
|
239
|
+
* in one cell does ({@link isUprightMarkPair}). */
|
|
240
|
+
export declare function holdsVerticalCell(text: string, uprightDigits: number, region?: CjkRegion): boolean;
|
|
187
241
|
//# sourceMappingURL=writingMode.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writingMode.d.ts","sourceRoot":"","sources":["../src/writingMode.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"writingMode.d.ts","sourceRoot":"","sources":["../src/writingMode.ts"],"names":[],"mappings":"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"}
|
package/dist/writingMode.js
CHANGED
|
@@ -13,27 +13,40 @@
|
|
|
13
13
|
*
|
|
14
14
|
* Classes follow Unicode's `Vertical_Orientation` (UAX #50, data 18.0),
|
|
15
15
|
* with the Chinese rules on top (clreq Appendix A, GB/T 15834—2011 §5.2):
|
|
16
|
-
* - pause and stop marks (、。,.!?)
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
16
|
+
* - pause and stop marks (、。,.!?) are never turned. A Simplified
|
|
17
|
+
* (mainland) font sets them in the upper right of the cell through
|
|
18
|
+
* `vert` (、。,. in the top-right corner, !?:; in the right half);
|
|
19
|
+
* Taiwan and Hong Kong fonts centre them and have no such form (their
|
|
20
|
+
* U+FE10–FE16 are the mainland shapes, so the vertical presentation
|
|
21
|
+
* forms must not be substituted there), and leave :; upright too.
|
|
22
|
+
* Japanese text (the `japan` region) sets 、。,. in the corner as the
|
|
23
|
+
* mainland does, !? upright in the centre of the cell (JLReq §3.1.10;
|
|
24
|
+
* a Japanese font has no vertical form for them) and turns :; (UAX #50
|
|
25
|
+
* `Tr`, the vertical form of JIS X 4051).
|
|
22
26
|
* - brackets and quotes take the vertical form, which is the horizontal
|
|
23
27
|
* glyph turned about the em box's centre when the font gives none;
|
|
24
28
|
* “ ” ‘ ’ in mainland text read as the corner brackets 『』「」
|
|
25
|
-
* (UAX #50 §3.2.4, the Hans vertical convention).
|
|
29
|
+
* (UAX #50 §3.2.4, the Hans vertical convention). Japanese “ ” are
|
|
30
|
+
* horizontal marks: vertical text sets 〝 〟 in their place (JLReq
|
|
31
|
+
* §3.1.1; ja-typography §5), whose vertical forms Japanese fonts have
|
|
32
|
+
* where they have none for “ ”; ‘ ’ keep their own.
|
|
33
|
+
* - small kana (ぁ っ ゃ ァ ッ ㇰ…, UAX #50 `Tu`) take their vertical form in
|
|
34
|
+
* Japanese text, which sits up and to the right of the horizontal one
|
|
35
|
+
* (JLReq §2.1.2), or move there without one; Chinese text leaves every
|
|
36
|
+
* `Tu` character upright as it is.
|
|
26
37
|
* - dashes, ellipses, the wave dash and the interpunct are turned about
|
|
27
38
|
* the em box's centre (Noto CJK gives —— a vertical form only with
|
|
28
39
|
* `fwid`): a dash is stretched to fill its cell. The mainland interpunct
|
|
29
|
-
* takes half a cell (clreq §5.1), the Taiwan
|
|
30
|
-
* a whole cell.
|
|
40
|
+
* takes half a cell (clreq §5.1), the Taiwan, Hong Kong and Japanese
|
|
41
|
+
* one a whole cell (JLReq §3.1.2: ・ is a full em).
|
|
31
42
|
* - an apostrophe or an interpunct inside a Latin word ("don’t", "l·l")
|
|
32
43
|
* runs sideways with the word, as the composer keeps it in the word.
|
|
33
44
|
*
|
|
34
45
|
* The measurer and every renderer read the same runs ({@link
|
|
35
46
|
* verticalRuns}): what stands in a cell advances its cell (one em, half an
|
|
36
47
|
* em for the mainland interpunct), what runs sideways its horizontal width.
|
|
48
|
+
* Japanese text also sets a pair of exclamation and question marks (!! !?
|
|
49
|
+
* ?! ?? and !! !? ?! ??) side by side in one cell (JLReq §3.1.10).
|
|
37
50
|
*/
|
|
38
51
|
import { cjkClassOf, isWordInnerMark } from './measure/cjkClasses';
|
|
39
52
|
// VerticalOrientation-18.0.0.txt, the ranges that are not `R`, merged:
|
|
@@ -96,7 +109,7 @@ export function uaxVerticalOrientation(cp) {
|
|
|
96
109
|
const CORNER_MARKS = new Set(['、', '。', ',', '.', '﹐', '﹑', '﹒']);
|
|
97
110
|
const EXCLAIM_MARKS = new Set(['!', '?', '﹖', '﹗']);
|
|
98
111
|
const COLON_MARKS = new Set([':', ';', '﹔', '﹕']);
|
|
99
|
-
/** Marks turned about their em box in every
|
|
112
|
+
/** Marks turned about their em box in every CJK region: dashes,
|
|
100
113
|
* ellipses, the interpunct, connectors and the wave dash. */
|
|
101
114
|
const TURNED = new Set([
|
|
102
115
|
'—', '―', '⸺', '⸻', // — ― ⸺ ⸻
|
|
@@ -139,10 +152,33 @@ const ALT_CORNER = { orient: 'alternate', fallback: 'corner' };
|
|
|
139
152
|
const ALT_EXCLAIM = { orient: 'alternate', fallback: 'corner', offset: { x: 0.5, y: -0.08 } };
|
|
140
153
|
const ALT_COLON = { orient: 'alternate', fallback: 'corner', offset: { x: 0.52, y: -0.22 } };
|
|
141
154
|
const TCY = { orient: 'tcy' };
|
|
155
|
+
/** Japanese small kana: the font's vertical form, else moved by
|
|
156
|
+
* {@link SMALL_KANA_OFFSET_EM}. */
|
|
157
|
+
const ALT_SMALL_KANA = { orient: 'alternate', fallback: 'corner', offset: { x: 0.13, y: -0.13 } };
|
|
158
|
+
/** Another `Tu` character in Japanese text (the squared words ㍻ ㌀, the
|
|
159
|
+
* standalone sound marks ゛゜): the font's vertical form, else upright in
|
|
160
|
+
* the middle of its cell. */
|
|
161
|
+
const ALT_UPRIGHT = { orient: 'alternate', fallback: 'corner', offset: { x: 0, y: 0 } };
|
|
162
|
+
/** Japanese vertical quotes (JLReq §3.1.1): “ ” are set as 〝 〟. */
|
|
163
|
+
const JAPANESE_QUOTES = {
|
|
164
|
+
'“': { orient: 'alternate', fallback: 'rotate', paintAs: '〝' },
|
|
165
|
+
'”': { orient: 'alternate', fallback: 'rotate', paintAs: '〟' },
|
|
166
|
+
};
|
|
167
|
+
/** The small kana of UAX #50 `Tu` (JLReq cl-11 less ゝゞヽヾ々ー, which are
|
|
168
|
+
* `U` / `Tr`): hiragana, katakana, the katakana extensions for Ainu
|
|
169
|
+
* (ㇰ–ㇿ) and the small kana of the Kana Extended blocks. */
|
|
170
|
+
const SMALL_KANA_RE = /^[ぁぃぅぇぉっゃゅょゎゕゖァィゥェォッャュョヮヵヶㇰ-ㇿ\u{1B132}\u{1B150}-\u{1B152}\u{1B155}\u{1B164}-\u{1B167}]/u;
|
|
171
|
+
/** Where a Japanese small kana moves when the font gives no vertical form,
|
|
172
|
+
* in ems of its cell (right and up): the shift of the `vert` glyphs'
|
|
173
|
+
* ink from the horizontal ones in Noto Serif JP and Noto Sans JP, Shippori
|
|
174
|
+
* Mincho, BIZ UDMincho and Zen Old Mincho: 0.09–0.25 em right and
|
|
175
|
+
* 0.06–0.26 em up (0.15 and 0.14 in Noto Serif JP). */
|
|
176
|
+
export const SMALL_KANA_OFFSET_EM = ALT_SMALL_KANA.offset;
|
|
142
177
|
/**
|
|
143
|
-
* How a grapheme is set in a vertical line of `region`'s Chinese
|
|
144
|
-
* module comment). Reads the grapheme's first code
|
|
145
|
-
* a combining mark or a variation selector follows
|
|
178
|
+
* How a grapheme is set in a vertical line of `region`'s Chinese or
|
|
179
|
+
* Japanese (see the module comment). Reads the grapheme's first code
|
|
180
|
+
* point; a sequence with a combining mark or a variation selector follows
|
|
181
|
+
* its base.
|
|
146
182
|
*/
|
|
147
183
|
export function verticalOrientation(grapheme, region = 'mainland') {
|
|
148
184
|
const cp = grapheme.codePointAt(0);
|
|
@@ -151,20 +187,32 @@ export function verticalOrientation(grapheme, region = 'mainland') {
|
|
|
151
187
|
if (cp < 0x80)
|
|
152
188
|
return SIDEWAYS;
|
|
153
189
|
const ch = String.fromCodePoint(cp);
|
|
190
|
+
const japan = region === 'japan';
|
|
191
|
+
// Japan sets 、。,. in the corner too, and !? upright and centred: a
|
|
192
|
+
// Japanese font has no vertical form for them to move to the right.
|
|
154
193
|
if (CORNER_MARKS.has(ch))
|
|
155
|
-
return region === 'mainland' ? ALT_CORNER : UPRIGHT;
|
|
194
|
+
return region === 'mainland' || japan ? ALT_CORNER : UPRIGHT;
|
|
156
195
|
if (EXCLAIM_MARKS.has(ch))
|
|
157
196
|
return region === 'mainland' ? ALT_EXCLAIM : UPRIGHT;
|
|
197
|
+
// Japan turns :; (UAX #50 `Tr`): the font's vertical form, else the
|
|
198
|
+
// colon turned about its em box.
|
|
158
199
|
if (COLON_MARKS.has(ch))
|
|
159
|
-
return region === 'mainland' ? ALT_COLON : UPRIGHT;
|
|
200
|
+
return region === 'mainland' ? ALT_COLON : japan ? ALT_ROTATE : UPRIGHT;
|
|
160
201
|
if (TURNED.has(ch))
|
|
161
202
|
return STRETCHED.has(ch) ? ROTATE_STRETCH : ROTATE;
|
|
162
203
|
const hans = HANS_QUOTES[ch];
|
|
163
|
-
if (hans !== undefined)
|
|
164
|
-
|
|
204
|
+
if (hans !== undefined) {
|
|
205
|
+
if (region === 'mainland')
|
|
206
|
+
return { orient: 'alternate', fallback: 'rotate', substitute: hans };
|
|
207
|
+
return (japan ? JAPANESE_QUOTES[ch] : undefined) ?? ALT_ROTATE;
|
|
208
|
+
}
|
|
165
209
|
switch (uaxVerticalOrientation(cp)) {
|
|
166
210
|
case 'U': return UPRIGHT;
|
|
167
|
-
|
|
211
|
+
// Small kana and the like: in Japanese text the font's vertical form
|
|
212
|
+
// (a small kana up and to the right of the horizontal one), else moved
|
|
213
|
+
// there; Chinese text leaves them upright as they are (the bopomofo ㄧ
|
|
214
|
+
// is `Tu` too).
|
|
215
|
+
case 'Tu': return japan ? (SMALL_KANA_RE.test(ch) ? ALT_SMALL_KANA : ALT_UPRIGHT) : UPRIGHT;
|
|
168
216
|
case 'Tr': return ALT_ROTATE;
|
|
169
217
|
default: return SIDEWAYS;
|
|
170
218
|
}
|
|
@@ -179,11 +227,14 @@ export function isVerticalCell(grapheme, region = 'mainland') {
|
|
|
179
227
|
* quadrant, the vertical one in the top-right). Measured against the
|
|
180
228
|
* `vert` glyphs of Noto Serif SC: within 0.07 em for 、。,.. !? and :;
|
|
181
229
|
* carry their own `offset` (half an em to the right, 0.08 and 0.22 em up),
|
|
182
|
-
* within 0.02 em of the font's.
|
|
230
|
+
* within 0.02 em of the font's. Japanese 、。,. use it too: the `vert`
|
|
231
|
+
* glyphs of Noto Serif JP move 0.59–0.62 em right and 0.60–0.65 em up,
|
|
232
|
+
* those of Shippori Mincho 0.61–0.65 and 0.62–0.66. */
|
|
183
233
|
export const CORNER_OFFSET_EM = { x: 0.6, y: -0.62 };
|
|
184
234
|
/** The size of a character's cell in a vertical line, in ems: half an em
|
|
185
235
|
* for the mainland interpunct (· ・, clreq §5.1), one em for
|
|
186
|
-
* every other character that stands in a cell
|
|
236
|
+
* every other character that stands in a cell (the Japanese ・ too,
|
|
237
|
+
* JLReq §3.1.2). `cls`, when the caller has
|
|
187
238
|
* it, is the grapheme's `cjkClassOf`. */
|
|
188
239
|
export function verticalCellEms(grapheme, region = 'mainland', cls = cjkClassOf(grapheme)) {
|
|
189
240
|
return region === 'mainland' && cls === 'interpunct' ? 0.5 : 1;
|
|
@@ -287,12 +338,58 @@ export function uprightDigitRuns(graphemes, digits, region = 'mainland') {
|
|
|
287
338
|
out.delete(i);
|
|
288
339
|
return out;
|
|
289
340
|
}
|
|
341
|
+
const HALF_MARKS = new Set(['!', '?']);
|
|
342
|
+
const FULL_MARKS = new Set(['!', '?']);
|
|
343
|
+
/** Every exclamation and question mark a pair must not touch. */
|
|
344
|
+
const PAIR_BLOCKERS = new Set(['!', '?', '!', '?', '﹗', '﹖', '‼', '⁇', '⁈', '⁉']);
|
|
345
|
+
/** The half-width marks a full-width pair is painted with in its cell
|
|
346
|
+
* (`VerticalGlyph.paintAs`): !? → !?. */
|
|
347
|
+
function halfWidthPair(pair) {
|
|
348
|
+
return [...pair].map((c) => String.fromCodePoint(c.codePointAt(0) - 0xFEE0)).join('');
|
|
349
|
+
}
|
|
350
|
+
/** Whether `a` and `b` are a pair of exclamation or question marks of one
|
|
351
|
+
* width (!! !? ?! ?? or !! !? ?! ??). */
|
|
352
|
+
function isMarkPair(a, b) {
|
|
353
|
+
if (a === undefined || b === undefined)
|
|
354
|
+
return false;
|
|
355
|
+
return (HALF_MARKS.has(a) && HALF_MARKS.has(b)) || (FULL_MARKS.has(a) && FULL_MARKS.has(b));
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* Whether `graphemes[i, i + 2)` is a pair of exclamation and question marks
|
|
359
|
+
* Japanese vertical text sets side by side in one upright cell (JLReq
|
|
360
|
+
* §3.1.10; ja-typography §8): !! !? ?! ?? or !! !? ?! ??, exactly two
|
|
361
|
+
* (a third mark on either side leaves all of them as they are). Half-width
|
|
362
|
+
* marks pair only outside a Latin run: no letter, digit or other mark set
|
|
363
|
+
* sideways touches them (`Wow!!`, `(!?)` and `12!!` run sideways with their
|
|
364
|
+
* text); a space may. The composer reads its units by the same rule
|
|
365
|
+
* (`cjkCompose.ts`), so a line paints the cells it measured.
|
|
366
|
+
*/
|
|
367
|
+
export function isUprightMarkPair(graphemes, i, region) {
|
|
368
|
+
if (region !== 'japan' || !isMarkPair(graphemes[i], graphemes[i + 1]))
|
|
369
|
+
return false;
|
|
370
|
+
const before = graphemes[i - 1];
|
|
371
|
+
const after = graphemes[i + 2];
|
|
372
|
+
if ((before !== undefined && PAIR_BLOCKERS.has(before)) || (after !== undefined && PAIR_BLOCKERS.has(after)))
|
|
373
|
+
return false;
|
|
374
|
+
if (FULL_MARKS.has(graphemes[i]))
|
|
375
|
+
return true;
|
|
376
|
+
const latin = (g) => g !== undefined && !/^\s+$/.test(g) && verticalOrientation(g, region).orient === 'sideways';
|
|
377
|
+
return !latin(before) && !latin(after);
|
|
378
|
+
}
|
|
379
|
+
/** The one-cell glyph of a mark pair (see {@link isUprightMarkPair}): a
|
|
380
|
+
* full-width pair is painted with the half-width marks, which fit the
|
|
381
|
+
* cell where the full-width ones would be squeezed to half their width. */
|
|
382
|
+
export function markPairGlyph(pair) {
|
|
383
|
+
return FULL_MARKS.has([...pair][0]) ? { orient: 'tcy', paintAs: halfWidthPair(pair) } : TCY;
|
|
384
|
+
}
|
|
290
385
|
/** Cut `text` into the runs a vertical line paints and measures: sideways
|
|
291
386
|
* graphemes joined into runs, every other grapheme a cell of its own. An
|
|
292
387
|
* apostrophe or interpunct between two letters of a Latin word runs
|
|
293
388
|
* sideways with it (see `isWordInnerMark`), as the composer measures it.
|
|
294
389
|
* With `uprightDigits` (`cjk.uprightDigits`), each short number
|
|
295
|
-
* ({@link uprightDigitRuns}) is one `tcy` cell
|
|
390
|
+
* ({@link uprightDigitRuns}) is one `tcy` cell; in Japanese text, so is
|
|
391
|
+
* each pair of exclamation and question marks ({@link
|
|
392
|
+
* isUprightMarkPair}). */
|
|
296
393
|
export function verticalRuns(graphemes, region = 'mainland', uprightDigits = 0) {
|
|
297
394
|
const out = [];
|
|
298
395
|
const tcy = uprightDigitRuns(graphemes, uprightDigits, region);
|
|
@@ -309,6 +406,16 @@ export function verticalRuns(graphemes, region = 'mainland', uprightDigits = 0)
|
|
|
309
406
|
i += combined - 1;
|
|
310
407
|
continue;
|
|
311
408
|
}
|
|
409
|
+
if (region === 'japan' && isUprightMarkPair(graphemes, i, region)) {
|
|
410
|
+
if (side) {
|
|
411
|
+
out.push({ text: side, glyph: SIDEWAYS });
|
|
412
|
+
side = '';
|
|
413
|
+
}
|
|
414
|
+
const pair = g + graphemes[i + 1];
|
|
415
|
+
out.push({ text: pair, glyph: markPairGlyph(pair), cell: 1 });
|
|
416
|
+
i += 1;
|
|
417
|
+
continue;
|
|
418
|
+
}
|
|
312
419
|
const glyph = isWordInnerMark(g, graphemes[i - 1], graphemes[i + 1]) ? SIDEWAYS : verticalOrientation(g, region);
|
|
313
420
|
if (glyph.orient === 'sideways') {
|
|
314
421
|
side += g;
|
|
@@ -326,12 +433,17 @@ export function verticalRuns(graphemes, region = 'mainland', uprightDigits = 0)
|
|
|
326
433
|
}
|
|
327
434
|
/** The runs of a text whose orientation the author forced (see
|
|
328
435
|
* {@link ForcedOrientation}): one `tcy` cell, one upright cell per
|
|
329
|
-
* grapheme, or one sideways run.
|
|
330
|
-
|
|
436
|
+
* grapheme, or one sideways run. A cell of two full-width !? in
|
|
437
|
+
* Japanese text (`region`; the composer sets a pair in one, see {@link
|
|
438
|
+
* isUprightMarkPair}) is painted with the half-width marks. */
|
|
439
|
+
export function forcedVerticalRuns(graphemes, orient, region) {
|
|
331
440
|
if (graphemes.length === 0)
|
|
332
441
|
return [];
|
|
333
|
-
if (orient === 'tcy')
|
|
334
|
-
|
|
442
|
+
if (orient === 'tcy') {
|
|
443
|
+
const text = graphemes.join('');
|
|
444
|
+
const glyph = region === 'japan' && graphemes.length === 2 && isMarkPair(graphemes[0], graphemes[1]) ? markPairGlyph(text) : TCY;
|
|
445
|
+
return [{ text, glyph, cell: 1 }];
|
|
446
|
+
}
|
|
335
447
|
if (orient === 'sideways')
|
|
336
448
|
return [{ text: graphemes.join(''), glyph: SIDEWAYS }];
|
|
337
449
|
return graphemes.map((g) => ({ text: g, glyph: UPRIGHT, cell: 1 }));
|
|
@@ -347,10 +459,17 @@ export function segmentOrientation(seg) {
|
|
|
347
459
|
* {@link uprightDigitCandidates}, also one that runs with Latin text, so a
|
|
348
460
|
* paragraph holding one is measured by the formatted path, which reads
|
|
349
461
|
* each number with its paragraph (`sidewaysNumberSpans`). ASCII letters
|
|
350
|
-
* never do
|
|
351
|
-
|
|
462
|
+
* never do; in Japanese text (`region`), a pair of half-width marks set
|
|
463
|
+
* in one cell does ({@link isUprightMarkPair}). */
|
|
464
|
+
export function holdsVerticalCell(text, uprightDigits, region) {
|
|
352
465
|
if (uprightDigits > 0 && /[0-9]/.test(text) && uprightDigitCandidates([...text], uprightDigits).size > 0)
|
|
353
466
|
return true;
|
|
467
|
+
if (region === 'japan' && /[!?][!?]/.test(text)) {
|
|
468
|
+
const graphemes = [...text];
|
|
469
|
+
for (let i = 0; i + 1 < graphemes.length; i++)
|
|
470
|
+
if (isUprightMarkPair(graphemes, i, region))
|
|
471
|
+
return true;
|
|
472
|
+
}
|
|
354
473
|
if (!/[^\u0000-\u007F]/.test(text))
|
|
355
474
|
return false;
|
|
356
475
|
for (const ch of text) {
|
package/dist/writingMode.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writingMode.js","sourceRoot":"","sources":["../src/writingMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAsCnE,uEAAuE;AACvE,yEAAyE;AACzE,MAAM,SAAS,GAAsB;IACnC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,KAAK,EAAC,KAAK,EAAC,CAAC;IACxG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MA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"}
|
|
1
|
+
{"version":3,"file":"writingMode.js","sourceRoot":"","sources":["../src/writingMode.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiDG;AAGH,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AA8CnE,uEAAuE;AACvE,yEAAyE;AACzE,MAAM,SAAS,GAAsB;IACnC,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,IAAI,EAAC,IAAI,EAAC,CAAC,EAAE,KAAK,EAAC,KAAK,EAAC,CAAC;IACxG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC,CAAC;IACpG,MAAM,EAAC,MAAM,EAAC,CAAC,EAAE,MAAM,EAAC,MAAM,EAAC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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "postext",
|
|
3
3
|
"description": "A programmable typesetter for the web. Layout engine that applies professional editorial rules — columns, orphan/widow prevention, balanced columns, resource placement, running heads — to semantic content. Built on @chenglou/pretext for DOM-free text measurement.",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.16.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://postext.dev/",
|