js.documents 14.4.46 → 14.4.47
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/convert/composition.cjs +9 -4
- package/dist/convert/composition.js +9 -4
- package/dist/convert/variant-bridges.cjs +2 -1
- package/dist/convert/variant-bridges.js +2 -1
- package/dist/csv/records.cjs +2 -1
- package/dist/csv/records.js +2 -1
- package/dist/edit/geometry.cjs +2 -1
- package/dist/edit/geometry.js +2 -1
- package/dist/edit/odg/svg-path.cjs +2 -1
- package/dist/edit/odg/svg-path.js +2 -1
- package/dist/edit/ods/cell.cjs +2 -1
- package/dist/edit/ods/cell.js +2 -1
- package/dist/edit/pdf/util.cjs +2 -1
- package/dist/edit/pdf/util.js +2 -1
- package/dist/firebird/data.cjs +2 -1
- package/dist/firebird/data.js +2 -1
- package/dist/firebird/date.cjs +40 -21
- package/dist/firebird/date.js +40 -21
- package/dist/firebird/reader.cjs +30 -19
- package/dist/firebird/reader.js +30 -19
- package/dist/hsqldb/binary-script.cjs +5 -4
- package/dist/hsqldb/binary-script.js +5 -4
- package/dist/hsqldb/cache.cjs +4 -2
- package/dist/hsqldb/cache.js +4 -2
- package/dist/hsqldb/rowformat.cjs +93 -57
- package/dist/hsqldb/rowformat.js +93 -57
- package/dist/hsqldb/script.cjs +2 -1
- package/dist/hsqldb/script.js +2 -1
- package/dist/latex/lower.cjs +2 -1
- package/dist/latex/lower.js +2 -1
- package/dist/latex/rational.cjs +6 -3
- package/dist/latex/rational.js +6 -3
- package/dist/layout/cell-typing.cjs +7 -3
- package/dist/layout/cell-typing.js +7 -3
- package/dist/layout/reconstruct.cjs +17 -15
- package/dist/layout/reconstruct.js +17 -15
- package/dist/layout/shared.cjs +2 -1
- package/dist/layout/shared.js +2 -1
- package/dist/layout/sheets.cjs +2 -1
- package/dist/layout/sheets.js +2 -1
- package/dist/mathml/layout.cjs +11 -5
- package/dist/mathml/layout.js +11 -5
- package/dist/mathml/length.cjs +12 -10
- package/dist/mathml/length.js +12 -10
- package/dist/mathml/operators.cjs +7 -3
- package/dist/mathml/operators.js +7 -3
- package/dist/mathml/variant.cjs +116 -1142
- package/dist/mathml/variant.js +116 -1142
- package/dist/model/bytes.cjs +9 -16
- package/dist/model/bytes.js +9 -16
- package/dist/model/geometry.cjs +2 -1
- package/dist/model/geometry.js +2 -1
- package/dist/odb/read.cjs +10 -2
- package/dist/odb/read.js +10 -2
- package/dist/svg/paint.cjs +177 -749
- package/dist/svg/paint.js +177 -749
- package/dist/svg/path.cjs +11 -6
- package/dist/svg/path.js +11 -6
- package/dist/svg/read.cjs +7 -3
- package/dist/svg/read.js +8 -4
- package/dist/svg/transform.cjs +11 -7
- package/dist/svg/transform.js +11 -7
- package/dist/svg/units.cjs +9 -5
- package/dist/svg/units.d.cts +2 -1
- package/dist/svg/units.d.ts +2 -1
- package/dist/svg/units.js +9 -6
- package/package.json +2 -2
package/dist/layout/sheets.js
CHANGED
|
@@ -5,6 +5,7 @@ import { alignmentOffsetPt, formulaSizePtForFrame, justifyLineGapsPt, layoutDocu
|
|
|
5
5
|
import { throwIfAborted } from "../ports/abort.js";
|
|
6
6
|
import { COLOR_BLACK, DEFAULT_LAYOUT_FONT, columnIndexToLetters, resolveCellFillColor, rgbHexToColor } from "document-schema.js";
|
|
7
7
|
//#region src/layout/sheets.ts
|
|
8
|
+
const PERCENT_SCALE = 100;
|
|
8
9
|
function anchoredFormulas(sheet) {
|
|
9
10
|
const resolved = [];
|
|
10
11
|
for (const object of sheet.embeddedObjects ?? []) {
|
|
@@ -101,7 +102,7 @@ function computeHeaderGutter(printSettings, range, measurer) {
|
|
|
101
102
|
};
|
|
102
103
|
}
|
|
103
104
|
function resolveScale(printSettings, availableWidthPt, availableHeightPt, totalContentWidthPt, totalContentHeightPt) {
|
|
104
|
-
if (printSettings.scalePercent !== void 0) return Math.max(printSettings.scalePercent /
|
|
105
|
+
if (printSettings.scalePercent !== void 0) return Math.max(printSettings.scalePercent / PERCENT_SCALE, MINIMUM_SCALE);
|
|
105
106
|
if (printSettings.fitToPages !== void 0) {
|
|
106
107
|
const budgetWidthPt = availableWidthPt * printSettings.fitToPages.width;
|
|
107
108
|
const budgetHeightPt = availableHeightPt * printSettings.fitToPages.height;
|
package/dist/mathml/layout.cjs
CHANGED
|
@@ -6,6 +6,12 @@ const require_mathml_variant = require("./variant.cjs");
|
|
|
6
6
|
const require_mathml_compose = require("./compose.cjs");
|
|
7
7
|
const require_mathml_radical = require("./radical.cjs");
|
|
8
8
|
//#region src/mathml/layout.ts
|
|
9
|
+
const HEX_RADIX = 16;
|
|
10
|
+
const UNICODE_HEX_DIGITS = 4;
|
|
11
|
+
const PERCENT_SCALE = 100;
|
|
12
|
+
const RADICAL_SIGN = 8730;
|
|
13
|
+
const TABLE_COLUMN_GAP_EM = .8;
|
|
14
|
+
const TABLE_ROW_GAP_EM = .5;
|
|
9
15
|
function rootContext(options, diagnostics) {
|
|
10
16
|
return {
|
|
11
17
|
metrics: options.metrics,
|
|
@@ -50,7 +56,7 @@ function layoutToken(rawText, variant, ctx) {
|
|
|
50
56
|
if (glyph === void 0) {
|
|
51
57
|
ctx.diagnostics.push({
|
|
52
58
|
kind: "missing-glyph",
|
|
53
|
-
detail: `U+${codePoint.toString(
|
|
59
|
+
detail: `U+${codePoint.toString(HEX_RADIX).toUpperCase().padStart(UNICODE_HEX_DIGITS, "0")}`
|
|
54
60
|
});
|
|
55
61
|
continue;
|
|
56
62
|
}
|
|
@@ -372,7 +378,7 @@ function wrapRadical(radicand, index, ctx) {
|
|
|
372
378
|
const ascentPt = metrics.radicalExtraAscenderPt + ruleThicknessPt + gapPt + radicand.ascentPt;
|
|
373
379
|
const descentPt = radicand.descentPt;
|
|
374
380
|
const items = [];
|
|
375
|
-
const stretched = ctx.metrics.stretch(
|
|
381
|
+
const stretched = ctx.metrics.stretch(RADICAL_SIGN, "vertical", signHeightPt - metrics.radicalExtraAscenderPt, ctx.sizePt);
|
|
376
382
|
let signWidthPt;
|
|
377
383
|
if (stretched !== void 0) {
|
|
378
384
|
const placements = stretched.placements.map((placement) => ({
|
|
@@ -403,7 +409,7 @@ function wrapRadical(radicand, index, ctx) {
|
|
|
403
409
|
}
|
|
404
410
|
items.push(...require_mathml_compose.placeChild(radicand, signOriginXPt + signWidthPt, 0, ascentPt));
|
|
405
411
|
if (index !== void 0) {
|
|
406
|
-
const raisePt = (ascentPt + descentPt) * metrics.radicalDegreeBottomRaisePercent /
|
|
412
|
+
const raisePt = (ascentPt + descentPt) * metrics.radicalDegreeBottomRaisePercent / PERCENT_SCALE;
|
|
407
413
|
const degreeBaselineFromTopPt = ascentPt + descentPt - raisePt - index.descentPt;
|
|
408
414
|
items.push(...require_mathml_compose.shiftItems(index.items, metrics.radicalKernBeforeDegreePt, degreeBaselineFromTopPt - index.ascentPt));
|
|
409
415
|
}
|
|
@@ -423,8 +429,8 @@ function layoutTable(element, ctx) {
|
|
|
423
429
|
const columnCount = rowCells.reduce((max, row) => Math.max(max, row.length), 0);
|
|
424
430
|
if (columnCount === 0) return require_mathml_compose.EMPTY_BOX;
|
|
425
431
|
const columnWidthsPt = Array.from({ length: columnCount }, (_, column) => rowCells.reduce((max, row) => Math.max(max, row[column]?.widthPt ?? 0), 0));
|
|
426
|
-
const columnGapPt =
|
|
427
|
-
const rowGapPt =
|
|
432
|
+
const columnGapPt = TABLE_COLUMN_GAP_EM * ctx.sizePt;
|
|
433
|
+
const rowGapPt = TABLE_ROW_GAP_EM * ctx.sizePt;
|
|
428
434
|
const items = [];
|
|
429
435
|
let cursorYTopPt = 0;
|
|
430
436
|
rowCells.forEach((row, rowIndex) => {
|
package/dist/mathml/layout.js
CHANGED
|
@@ -5,6 +5,12 @@ import { applyMathVariant, isMathVariant } from "./variant.js";
|
|
|
5
5
|
import { EMPTY_BOX, concatBoxesHorizontally, placeChild, shiftItems } from "./compose.js";
|
|
6
6
|
import { buildRadicalSign } from "./radical.js";
|
|
7
7
|
//#region src/mathml/layout.ts
|
|
8
|
+
const HEX_RADIX = 16;
|
|
9
|
+
const UNICODE_HEX_DIGITS = 4;
|
|
10
|
+
const PERCENT_SCALE = 100;
|
|
11
|
+
const RADICAL_SIGN = 8730;
|
|
12
|
+
const TABLE_COLUMN_GAP_EM = .8;
|
|
13
|
+
const TABLE_ROW_GAP_EM = .5;
|
|
8
14
|
function rootContext(options, diagnostics) {
|
|
9
15
|
return {
|
|
10
16
|
metrics: options.metrics,
|
|
@@ -49,7 +55,7 @@ function layoutToken(rawText, variant, ctx) {
|
|
|
49
55
|
if (glyph === void 0) {
|
|
50
56
|
ctx.diagnostics.push({
|
|
51
57
|
kind: "missing-glyph",
|
|
52
|
-
detail: `U+${codePoint.toString(
|
|
58
|
+
detail: `U+${codePoint.toString(HEX_RADIX).toUpperCase().padStart(UNICODE_HEX_DIGITS, "0")}`
|
|
53
59
|
});
|
|
54
60
|
continue;
|
|
55
61
|
}
|
|
@@ -371,7 +377,7 @@ function wrapRadical(radicand, index, ctx) {
|
|
|
371
377
|
const ascentPt = metrics.radicalExtraAscenderPt + ruleThicknessPt + gapPt + radicand.ascentPt;
|
|
372
378
|
const descentPt = radicand.descentPt;
|
|
373
379
|
const items = [];
|
|
374
|
-
const stretched = ctx.metrics.stretch(
|
|
380
|
+
const stretched = ctx.metrics.stretch(RADICAL_SIGN, "vertical", signHeightPt - metrics.radicalExtraAscenderPt, ctx.sizePt);
|
|
375
381
|
let signWidthPt;
|
|
376
382
|
if (stretched !== void 0) {
|
|
377
383
|
const placements = stretched.placements.map((placement) => ({
|
|
@@ -402,7 +408,7 @@ function wrapRadical(radicand, index, ctx) {
|
|
|
402
408
|
}
|
|
403
409
|
items.push(...placeChild(radicand, signOriginXPt + signWidthPt, 0, ascentPt));
|
|
404
410
|
if (index !== void 0) {
|
|
405
|
-
const raisePt = (ascentPt + descentPt) * metrics.radicalDegreeBottomRaisePercent /
|
|
411
|
+
const raisePt = (ascentPt + descentPt) * metrics.radicalDegreeBottomRaisePercent / PERCENT_SCALE;
|
|
406
412
|
const degreeBaselineFromTopPt = ascentPt + descentPt - raisePt - index.descentPt;
|
|
407
413
|
items.push(...shiftItems(index.items, metrics.radicalKernBeforeDegreePt, degreeBaselineFromTopPt - index.ascentPt));
|
|
408
414
|
}
|
|
@@ -422,8 +428,8 @@ function layoutTable(element, ctx) {
|
|
|
422
428
|
const columnCount = rowCells.reduce((max, row) => Math.max(max, row.length), 0);
|
|
423
429
|
if (columnCount === 0) return EMPTY_BOX;
|
|
424
430
|
const columnWidthsPt = Array.from({ length: columnCount }, (_, column) => rowCells.reduce((max, row) => Math.max(max, row[column]?.widthPt ?? 0), 0));
|
|
425
|
-
const columnGapPt =
|
|
426
|
-
const rowGapPt =
|
|
431
|
+
const columnGapPt = TABLE_COLUMN_GAP_EM * ctx.sizePt;
|
|
432
|
+
const rowGapPt = TABLE_ROW_GAP_EM * ctx.sizePt;
|
|
427
433
|
const items = [];
|
|
428
434
|
let cursorYTopPt = 0;
|
|
429
435
|
rowCells.forEach((row, rowIndex) => {
|
package/dist/mathml/length.cjs
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
//#region src/mathml/length.ts
|
|
3
|
-
const
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
3
|
+
const EM_DENOMINATOR = 18;
|
|
4
|
+
const NAMED_MATH_SPACES = new Map([
|
|
5
|
+
"veryverythinmathspace",
|
|
6
|
+
"verythinmathspace",
|
|
7
|
+
"thinmathspace",
|
|
8
|
+
"mediummathspace",
|
|
9
|
+
"thickmathspace",
|
|
10
|
+
"verythickmathspace",
|
|
11
|
+
"veryverythickmathspace"
|
|
12
|
+
].map((name, index) => [name, (index + 1) / EM_DENOMINATOR]));
|
|
13
|
+
const PERCENT_SCALE = 100;
|
|
12
14
|
const EX_APPROXIMATION_OF_EM = .5;
|
|
13
15
|
const LENGTH_PATTERN = /^([+-]?[0-9]*\.?[0-9]+)\s*(em|ex|px|in|cm|mm|pt|pc|%)?$/;
|
|
14
16
|
const PX_PER_INCH = 96;
|
|
@@ -27,7 +29,7 @@ function parseMathLength(value, fontSizePt) {
|
|
|
27
29
|
switch (match[2] ?? "em") {
|
|
28
30
|
case "em": return amount * fontSizePt;
|
|
29
31
|
case "ex": return amount * fontSizePt * EX_APPROXIMATION_OF_EM;
|
|
30
|
-
case "%": return amount /
|
|
32
|
+
case "%": return amount / PERCENT_SCALE * fontSizePt;
|
|
31
33
|
case "pt": return amount;
|
|
32
34
|
case "px": return amount / PX_PER_INCH * PT_PER_INCH;
|
|
33
35
|
case "in": return amount * PT_PER_INCH;
|
package/dist/mathml/length.js
CHANGED
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
//#region src/mathml/length.ts
|
|
2
|
-
const
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
2
|
+
const EM_DENOMINATOR = 18;
|
|
3
|
+
const NAMED_MATH_SPACES = new Map([
|
|
4
|
+
"veryverythinmathspace",
|
|
5
|
+
"verythinmathspace",
|
|
6
|
+
"thinmathspace",
|
|
7
|
+
"mediummathspace",
|
|
8
|
+
"thickmathspace",
|
|
9
|
+
"verythickmathspace",
|
|
10
|
+
"veryverythickmathspace"
|
|
11
|
+
].map((name, index) => [name, (index + 1) / EM_DENOMINATOR]));
|
|
12
|
+
const PERCENT_SCALE = 100;
|
|
11
13
|
const EX_APPROXIMATION_OF_EM = .5;
|
|
12
14
|
const LENGTH_PATTERN = /^([+-]?[0-9]*\.?[0-9]+)\s*(em|ex|px|in|cm|mm|pt|pc|%)?$/;
|
|
13
15
|
const PX_PER_INCH = 96;
|
|
@@ -26,7 +28,7 @@ function parseMathLength(value, fontSizePt) {
|
|
|
26
28
|
switch (match[2] ?? "em") {
|
|
27
29
|
case "em": return amount * fontSizePt;
|
|
28
30
|
case "ex": return amount * fontSizePt * EX_APPROXIMATION_OF_EM;
|
|
29
|
-
case "%": return amount /
|
|
31
|
+
case "%": return amount / PERCENT_SCALE * fontSizePt;
|
|
30
32
|
case "pt": return amount;
|
|
31
33
|
case "px": return amount / PX_PER_INCH * PT_PER_INCH;
|
|
32
34
|
case "in": return amount * PT_PER_INCH;
|
|
@@ -1,9 +1,13 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
//#region src/mathml/operators.ts
|
|
3
3
|
const ZERO_SPACE = 0;
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
const
|
|
4
|
+
const SPACE_EM_DENOMINATOR = 18;
|
|
5
|
+
const THIN_SPACE_NUMERATOR = 3;
|
|
6
|
+
const MEDIUM_SPACE_NUMERATOR = 4;
|
|
7
|
+
const THICK_SPACE_NUMERATOR = 5;
|
|
8
|
+
const THIN_SPACE = THIN_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
9
|
+
const MEDIUM_SPACE = MEDIUM_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
10
|
+
const THICK_SPACE = THICK_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
7
11
|
const DEFAULT_OPERATOR = {
|
|
8
12
|
lspaceEm: THICK_SPACE,
|
|
9
13
|
rspaceEm: THICK_SPACE,
|
package/dist/mathml/operators.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
//#region src/mathml/operators.ts
|
|
2
2
|
const ZERO_SPACE = 0;
|
|
3
|
-
const
|
|
4
|
-
const
|
|
5
|
-
const
|
|
3
|
+
const SPACE_EM_DENOMINATOR = 18;
|
|
4
|
+
const THIN_SPACE_NUMERATOR = 3;
|
|
5
|
+
const MEDIUM_SPACE_NUMERATOR = 4;
|
|
6
|
+
const THICK_SPACE_NUMERATOR = 5;
|
|
7
|
+
const THIN_SPACE = THIN_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
8
|
+
const MEDIUM_SPACE = MEDIUM_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
9
|
+
const THICK_SPACE = THICK_SPACE_NUMERATOR / SPACE_EM_DENOMINATOR;
|
|
6
10
|
const DEFAULT_OPERATOR = {
|
|
7
11
|
lspaceEm: THICK_SPACE,
|
|
8
12
|
rspaceEm: THICK_SPACE,
|