html2canvas-pro 1.5.13 → 1.6.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/README.md +20 -0
- package/dist/html2canvas-pro.esm.js +151 -18
- package/dist/html2canvas-pro.esm.js.map +1 -1
- package/dist/html2canvas-pro.js +151 -18
- package/dist/html2canvas-pro.js.map +1 -1
- package/dist/html2canvas-pro.min.js +2 -2
- package/dist/lib/css/layout/bounds.js +13 -1
- package/dist/lib/css/layout/bounds.js.map +1 -1
- package/dist/lib/css/property-descriptors/background-position.js +14 -1
- package/dist/lib/css/property-descriptors/background-position.js.map +1 -1
- package/dist/lib/css/types/length-percentage.js +91 -1
- package/dist/lib/css/types/length-percentage.js.map +1 -1
- package/dist/lib/dom/node-parser.js +14 -1
- package/dist/lib/dom/node-parser.js.map +1 -1
- package/dist/lib/render/canvas/canvas-renderer.js +16 -10
- package/dist/lib/render/canvas/canvas-renderer.js.map +1 -1
- package/dist/lib/render/stacking-context.js +7 -4
- package/dist/lib/render/stacking-context.js.map +1 -1
- package/dist/types/css/types/length-percentage.d.ts +11 -1
- package/package.json +1 -1
- package/test-punctuation.html +0 -77
|
@@ -15,7 +15,19 @@ var Bounds = /** @class */ (function () {
|
|
|
15
15
|
return new Bounds(clientRect.left + context.windowBounds.left, clientRect.top + context.windowBounds.top, clientRect.width, clientRect.height);
|
|
16
16
|
};
|
|
17
17
|
Bounds.fromDOMRectList = function (context, domRectList) {
|
|
18
|
-
var
|
|
18
|
+
var rects = Array.from(domRectList);
|
|
19
|
+
// First try to find a rect with non-zero width
|
|
20
|
+
var domRect = rects.find(function (rect) { return rect.width !== 0; });
|
|
21
|
+
// If not found, try to find a rect with non-zero height
|
|
22
|
+
// This handles cases like inline-flex with single child where width might be 0
|
|
23
|
+
if (!domRect) {
|
|
24
|
+
domRect = rects.find(function (rect) { return rect.height !== 0; });
|
|
25
|
+
}
|
|
26
|
+
// If still not found but rects exist, use the first rect
|
|
27
|
+
// Position info (left, top) might still be valid even if dimensions are 0
|
|
28
|
+
if (!domRect && rects.length > 0) {
|
|
29
|
+
domRect = rects[0];
|
|
30
|
+
}
|
|
19
31
|
return domRect
|
|
20
32
|
? new Bounds(domRect.left + context.windowBounds.left, domRect.top + context.windowBounds.top, domRect.width, domRect.height)
|
|
21
33
|
: Bounds.EMPTY;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bounds.js","sourceRoot":"","sources":["../../../../src/css/layout/bounds.ts"],"names":[],"mappings":";;;AAEA;IACI,gBAAqB,IAAY,EAAW,GAAW,EAAW,KAAa,EAAW,MAAc;QAAnF,SAAI,GAAJ,IAAI,CAAQ;QAAW,QAAG,GAAH,GAAG,CAAQ;QAAW,UAAK,GAAL,KAAK,CAAQ;QAAW,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE5G,oBAAG,GAAH,UAAI,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS;QAC1C,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,KAAK,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACpF,CAAC;IAEM,qBAAc,GAArB,UAAsB,OAAgB,EAAE,UAAsB;QAC1D,OAAO,IAAI,MAAM,CACb,UAAU,CAAC,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,EAC3C,UAAU,CAAC,GAAG,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,EACzC,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,MAAM,CACpB,CAAC;IACN,CAAC;IAEM,sBAAe,GAAtB,UAAuB,OAAgB,EAAE,WAAwB;QAC7D,IAAM,
|
|
1
|
+
{"version":3,"file":"bounds.js","sourceRoot":"","sources":["../../../../src/css/layout/bounds.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,20 @@ exports.backgroundPosition = {
|
|
|
10
10
|
prefix: false,
|
|
11
11
|
parse: function (_context, tokens) {
|
|
12
12
|
return (0, parser_1.parseFunctionArgs)(tokens)
|
|
13
|
-
.map(function (values) {
|
|
13
|
+
.map(function (values) {
|
|
14
|
+
// Convert calc() to length-percentage tokens, keep other length-percentage as is
|
|
15
|
+
return values
|
|
16
|
+
.map(function (value) {
|
|
17
|
+
if ((0, length_percentage_1.isCalcFunction)(value)) {
|
|
18
|
+
// For calc() at parse time, we can't know the container size
|
|
19
|
+
// So we evaluate with 0 context which will work for px-only calc()
|
|
20
|
+
// Percentage-based calc() will need special handling
|
|
21
|
+
return (0, length_percentage_1.evaluateCalcToLengthPercentage)(value, 0);
|
|
22
|
+
}
|
|
23
|
+
return (0, length_percentage_1.isLengthPercentage)(value) ? value : null;
|
|
24
|
+
})
|
|
25
|
+
.filter(function (v) { return v !== null; });
|
|
26
|
+
})
|
|
14
27
|
.map(length_percentage_1.parseLengthPercentageTuple);
|
|
15
28
|
}
|
|
16
29
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"background-position.js","sourceRoot":"","sources":["../../../../src/css/property-descriptors/background-position.ts"],"names":[],"mappings":";;;AACA,2CAA+D;AAC/D,
|
|
1
|
+
{"version":3,"file":"background-position.js","sourceRoot":"","sources":["../../../../src/css/property-descriptors/background-position.ts"],"names":[],"mappings":";;;AACA,2CAA+D;AAC/D,gEAMoC;AAMvB,QAAA,kBAAkB,GAAgD;IAC3E,IAAI,EAAE,qBAAqB;IAC3B,YAAY,EAAE,OAAO;IACrB,IAAI,4CAAoC;IACxC,MAAM,EAAE,KAAK;IACb,KAAK,EAAE,UAAC,QAAiB,EAAE,MAAkB;QACzC,OAAO,IAAA,0BAAiB,EAAC,MAAM,CAAC;aAC3B,GAAG,CAAC,UAAC,MAAkB;YACpB,iFAAiF;YACjF,OAAO,MAAM;iBACR,GAAG,CAAC,UAAC,KAAK;gBACP,IAAI,IAAA,kCAAc,EAAC,KAAK,CAAC,EAAE,CAAC;oBACxB,6DAA6D;oBAC7D,mEAAmE;oBACnE,qDAAqD;oBACrD,OAAO,IAAA,kDAA8B,EAAC,KAAK,EAAE,CAAC,CAAC,CAAC;gBACpD,CAAC;gBACD,OAAO,IAAA,sCAAkB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;YACpD,CAAC,CAAC;iBACD,MAAM,CAAC,UAAC,CAAC,IAAiC,OAAA,CAAC,KAAK,IAAI,EAAV,CAAU,CAAC,CAAC;QAC/D,CAAC,CAAC;aACD,GAAG,CAAC,8CAA0B,CAAC,CAAC;IACzC,CAAC;CACJ,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getAbsoluteValue = exports.getAbsoluteValueForTuple = exports.HUNDRED_PERCENT = exports.FIFTY_PERCENT = exports.ZERO_LENGTH = exports.parseLengthPercentageTuple = exports.isLengthPercentage = void 0;
|
|
3
|
+
exports.getAbsoluteValue = exports.getAbsoluteValueForTuple = exports.HUNDRED_PERCENT = exports.FIFTY_PERCENT = exports.ZERO_LENGTH = exports.parseLengthPercentageTuple = exports.evaluateCalcToLengthPercentage = exports.isCalcFunction = exports.isLengthPercentage = void 0;
|
|
4
4
|
var tokenizer_1 = require("../syntax/tokenizer");
|
|
5
5
|
var parser_1 = require("../syntax/parser");
|
|
6
6
|
var length_1 = require("./length");
|
|
@@ -8,6 +8,96 @@ var isLengthPercentage = function (token) {
|
|
|
8
8
|
return token.type === 16 /* TokenType.PERCENTAGE_TOKEN */ || (0, length_1.isLength)(token);
|
|
9
9
|
};
|
|
10
10
|
exports.isLengthPercentage = isLengthPercentage;
|
|
11
|
+
/**
|
|
12
|
+
* Check if a token is a calc() function
|
|
13
|
+
*/
|
|
14
|
+
var isCalcFunction = function (token) {
|
|
15
|
+
return token.type === 18 /* TokenType.FUNCTION */ && token.name === 'calc';
|
|
16
|
+
};
|
|
17
|
+
exports.isCalcFunction = isCalcFunction;
|
|
18
|
+
/**
|
|
19
|
+
* Evaluate a calc() expression and convert to LengthPercentage token
|
|
20
|
+
* Supports basic arithmetic: +, -, *, /
|
|
21
|
+
* Note: Percentages in calc() are converted based on a context value
|
|
22
|
+
*/
|
|
23
|
+
var evaluateCalcToLengthPercentage = function (calcToken, contextValue) {
|
|
24
|
+
if (contextValue === void 0) { contextValue = 0; }
|
|
25
|
+
// Build expression string from tokens
|
|
26
|
+
var buildExpression = function (values) {
|
|
27
|
+
var expression = '';
|
|
28
|
+
for (var _i = 0, values_1 = values; _i < values_1.length; _i++) {
|
|
29
|
+
var value = values_1[_i];
|
|
30
|
+
if (value.type === 31 /* TokenType.WHITESPACE_TOKEN */) {
|
|
31
|
+
continue;
|
|
32
|
+
}
|
|
33
|
+
if (value.type === 18 /* TokenType.FUNCTION */) {
|
|
34
|
+
if (value.name === 'calc') {
|
|
35
|
+
var nested = buildExpression(value.values);
|
|
36
|
+
if (nested === null)
|
|
37
|
+
return null;
|
|
38
|
+
expression += "(".concat(nested, ")");
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
return null;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
else if (value.type === 17 /* TokenType.NUMBER_TOKEN */) {
|
|
45
|
+
expression += value.number.toString();
|
|
46
|
+
}
|
|
47
|
+
else if (value.type === 15 /* TokenType.DIMENSION_TOKEN */) {
|
|
48
|
+
// Convert units to px
|
|
49
|
+
if (value.unit === 'px') {
|
|
50
|
+
expression += value.number.toString();
|
|
51
|
+
}
|
|
52
|
+
else if (value.unit === 'rem' || value.unit === 'em') {
|
|
53
|
+
expression += (value.number * 16).toString();
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
expression += value.number.toString();
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
else if (value.type === 16 /* TokenType.PERCENTAGE_TOKEN */) {
|
|
60
|
+
// Convert percentage to absolute value based on context
|
|
61
|
+
expression += ((value.number / 100) * contextValue).toString();
|
|
62
|
+
}
|
|
63
|
+
else if (value.type === 6 /* TokenType.DELIM_TOKEN */) {
|
|
64
|
+
var op = value.value;
|
|
65
|
+
if (op === '+' || op === '-' || op === '*' || op === '/') {
|
|
66
|
+
expression += " ".concat(op, " ");
|
|
67
|
+
}
|
|
68
|
+
else if (op === '(') {
|
|
69
|
+
expression += '(';
|
|
70
|
+
}
|
|
71
|
+
else if (op === ')') {
|
|
72
|
+
expression += ')';
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
return expression;
|
|
77
|
+
};
|
|
78
|
+
try {
|
|
79
|
+
var expression = buildExpression(calcToken.values);
|
|
80
|
+
if (expression === null || expression.trim() === '') {
|
|
81
|
+
return null;
|
|
82
|
+
}
|
|
83
|
+
// Evaluate the expression
|
|
84
|
+
// Note: Using Function constructor (similar to color.ts line 185)
|
|
85
|
+
var result = new Function('return ' + expression)();
|
|
86
|
+
if (typeof result === 'number' && !isNaN(result)) {
|
|
87
|
+
// Return as a number token in px
|
|
88
|
+
return {
|
|
89
|
+
type: 17 /* TokenType.NUMBER_TOKEN */,
|
|
90
|
+
number: result,
|
|
91
|
+
flags: tokenizer_1.FLAG_INTEGER
|
|
92
|
+
};
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
return null;
|
|
99
|
+
};
|
|
100
|
+
exports.evaluateCalcToLengthPercentage = evaluateCalcToLengthPercentage;
|
|
11
101
|
var parseLengthPercentageTuple = function (tokens) {
|
|
12
102
|
return tokens.length > 1 ? [tokens[0], tokens[1]] : [tokens[0]];
|
|
13
103
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"length-percentage.js","sourceRoot":"","sources":["../../../../src/css/types/length-percentage.ts"],"names":[],"mappings":";;;AAAA,iDAAgG;AAChG,
|
|
1
|
+
{"version":3,"file":"length-percentage.js","sourceRoot":"","sources":["../../../../src/css/types/length-percentage.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ var input_element_container_1 = require("./replaced-elements/input-element-conta
|
|
|
12
12
|
var select_element_container_1 = require("./elements/select-element-container");
|
|
13
13
|
var textarea_element_container_1 = require("./elements/textarea-element-container");
|
|
14
14
|
var iframe_element_container_1 = require("./replaced-elements/iframe-element-container");
|
|
15
|
+
var bitwise_1 = require("../core/bitwise");
|
|
15
16
|
var LIST_OWNERS = ['OL', 'UL', 'MENU'];
|
|
16
17
|
var parseNodeTree = function (context, node, parent, root) {
|
|
17
18
|
for (var childNode = node.firstChild, nextNode = void 0; childNode; childNode = nextNode) {
|
|
@@ -94,7 +95,19 @@ var createsRealStackingContext = function (node, container, root) {
|
|
|
94
95
|
container.styles.isTransformed() ||
|
|
95
96
|
((0, exports.isBodyElement)(node) && root.styles.isTransparent()));
|
|
96
97
|
};
|
|
97
|
-
var createsStackingContext = function (styles) {
|
|
98
|
+
var createsStackingContext = function (styles) {
|
|
99
|
+
// Positioned and floating elements create stacking contexts
|
|
100
|
+
if (styles.isPositioned() || styles.isFloating()) {
|
|
101
|
+
return true;
|
|
102
|
+
}
|
|
103
|
+
// Fix for Issue #137: Inline-level containers (inline-flex, inline-block, etc.)
|
|
104
|
+
// should create stacking contexts to prevent their children from being added
|
|
105
|
+
// to the parent's stacking context, which causes rendering order issues
|
|
106
|
+
return ((0, bitwise_1.contains)(styles.display, 268435456 /* DISPLAY.INLINE_FLEX */) ||
|
|
107
|
+
(0, bitwise_1.contains)(styles.display, 33554432 /* DISPLAY.INLINE_BLOCK */) ||
|
|
108
|
+
(0, bitwise_1.contains)(styles.display, 536870912 /* DISPLAY.INLINE_GRID */) ||
|
|
109
|
+
(0, bitwise_1.contains)(styles.display, 134217728 /* DISPLAY.INLINE_TABLE */));
|
|
110
|
+
};
|
|
98
111
|
var isTextNode = function (node) { return node.nodeType === Node.TEXT_NODE; };
|
|
99
112
|
exports.isTextNode = isTextNode;
|
|
100
113
|
var isElementNode = function (node) { return node.nodeType === Node.ELEMENT_NODE; };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-parser.js","sourceRoot":"","sources":["../../../src/dom/node-parser.ts"],"names":[],"mappings":";;;AACA,yDAA8D;AAC9D,mDAAiD;AACjD,uFAAoF;AACpF,yFAAsF;AACtF,mFAAgF;AAChF,wEAAqE;AACrE,wEAAqE;AACrE,uFAAoF;AACpF,gFAA6E;AAC7E,oFAAiF;AACjF,yFAAsF;
|
|
1
|
+
{"version":3,"file":"node-parser.js","sourceRoot":"","sources":["../../../src/dom/node-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -169,15 +169,9 @@ var CanvasRenderer = /** @class */ (function (_super) {
|
|
|
169
169
|
CanvasRenderer.prototype.renderTextWithLetterSpacing = function (text, letterSpacing, baseline) {
|
|
170
170
|
var _this = this;
|
|
171
171
|
if (letterSpacing === 0) {
|
|
172
|
-
//
|
|
173
|
-
//
|
|
174
|
-
|
|
175
|
-
this.ctx.textBaseline = 'ideographic';
|
|
176
|
-
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top + text.bounds.height);
|
|
177
|
-
}
|
|
178
|
-
else {
|
|
179
|
-
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top + baseline);
|
|
180
|
-
}
|
|
172
|
+
// Use alphabetic baseline for consistent text positioning across browsers
|
|
173
|
+
// Issue #129: text.bounds.top + text.bounds.height causes text to render too low
|
|
174
|
+
this.ctx.fillText(text.text, text.bounds.left, text.bounds.top + baseline);
|
|
181
175
|
}
|
|
182
176
|
else {
|
|
183
177
|
var letters = (0, text_1.segmentGraphemes)(text.text);
|
|
@@ -260,7 +254,19 @@ var CanvasRenderer = /** @class */ (function (_super) {
|
|
|
260
254
|
_this.ctx.lineWidth = styles.webkitTextStrokeWidth;
|
|
261
255
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
262
256
|
_this.ctx.lineJoin = !!window.chrome ? 'miter' : 'round';
|
|
263
|
-
|
|
257
|
+
// Issue #110: Use baseline (fontSize) for consistent positioning with fill
|
|
258
|
+
// Previously used text.bounds.height which caused stroke to render too low
|
|
259
|
+
var baseline_1 = styles.fontSize.number;
|
|
260
|
+
if (styles.letterSpacing === 0) {
|
|
261
|
+
_this.ctx.strokeText(text.text, text.bounds.left, text.bounds.top + baseline_1);
|
|
262
|
+
}
|
|
263
|
+
else {
|
|
264
|
+
var letters = (0, text_1.segmentGraphemes)(text.text);
|
|
265
|
+
letters.reduce(function (left, letter) {
|
|
266
|
+
_this.ctx.strokeText(letter, left, text.bounds.top + baseline_1);
|
|
267
|
+
return left + _this.ctx.measureText(letter).width;
|
|
268
|
+
}, text.bounds.left);
|
|
269
|
+
}
|
|
264
270
|
}
|
|
265
271
|
_this.ctx.strokeStyle = '';
|
|
266
272
|
_this.ctx.lineWidth = 0;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../../../../src/render/canvas/canvas-renderer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"canvas-renderer.js","sourceRoot":"","sources":["../../../../src/render/canvas/canvas-renderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,6 +8,7 @@ var path_1 = require("./path");
|
|
|
8
8
|
var ol_element_container_1 = require("../dom/elements/ol-element-container");
|
|
9
9
|
var li_element_container_1 = require("../dom/elements/li-element-container");
|
|
10
10
|
var counter_1 = require("../css/types/functions/counter");
|
|
11
|
+
var length_percentage_1 = require("../css/types/length-percentage");
|
|
11
12
|
var StackingContext = /** @class */ (function () {
|
|
12
13
|
function StackingContext(container) {
|
|
13
14
|
this.element = container;
|
|
@@ -32,8 +33,9 @@ var ElementPaint = /** @class */ (function () {
|
|
|
32
33
|
this.effects.push(new effects_1.OpacityEffect(this.container.styles.opacity));
|
|
33
34
|
}
|
|
34
35
|
if (this.container.styles.rotate !== null) {
|
|
35
|
-
var
|
|
36
|
-
var
|
|
36
|
+
var origin_1 = this.container.styles.transformOrigin;
|
|
37
|
+
var offsetX = this.container.bounds.left + (0, length_percentage_1.getAbsoluteValue)(origin_1[0], this.container.bounds.width);
|
|
38
|
+
var offsetY = this.container.bounds.top + (0, length_percentage_1.getAbsoluteValue)(origin_1[1], this.container.bounds.height);
|
|
37
39
|
// Apply rotate property if present
|
|
38
40
|
var angle = this.container.styles.rotate;
|
|
39
41
|
var rad = (angle * Math.PI) / 180;
|
|
@@ -43,8 +45,9 @@ var ElementPaint = /** @class */ (function () {
|
|
|
43
45
|
this.effects.push(new effects_1.TransformEffect(offsetX, offsetY, rotateMatrix));
|
|
44
46
|
}
|
|
45
47
|
if (this.container.styles.transform !== null) {
|
|
46
|
-
var
|
|
47
|
-
var
|
|
48
|
+
var origin_2 = this.container.styles.transformOrigin;
|
|
49
|
+
var offsetX = this.container.bounds.left + (0, length_percentage_1.getAbsoluteValue)(origin_2[0], this.container.bounds.width);
|
|
50
|
+
var offsetY = this.container.bounds.top + (0, length_percentage_1.getAbsoluteValue)(origin_2[1], this.container.bounds.height);
|
|
48
51
|
var matrix = this.container.styles.transform;
|
|
49
52
|
this.effects.push(new effects_1.TransformEffect(offsetX, offsetY, matrix));
|
|
50
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stacking-context.js","sourceRoot":"","sources":["../../../src/render/stacking-context.ts"],"names":[],"mappings":";;;AACA,2CAA2C;AAC3C,+CAA8F;AAC9F,qCAAmH;AAGnH,+BAAmC;AAEnC,6EAA0E;AAC1E,6EAA0E;AAC1E,0DAAmE;
|
|
1
|
+
{"version":3,"file":"stacking-context.js","sourceRoot":"","sources":["../../../src/render/stacking-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,18 @@
|
|
|
1
1
|
import { DimensionToken, NumberValueToken } from '../syntax/tokenizer';
|
|
2
|
-
import { CSSValue } from '../syntax/parser';
|
|
2
|
+
import { CSSValue, CSSFunction } from '../syntax/parser';
|
|
3
3
|
export type LengthPercentage = DimensionToken | NumberValueToken;
|
|
4
4
|
export type LengthPercentageTuple = [LengthPercentage] | [LengthPercentage, LengthPercentage];
|
|
5
5
|
export declare const isLengthPercentage: (token: CSSValue) => token is LengthPercentage;
|
|
6
|
+
/**
|
|
7
|
+
* Check if a token is a calc() function
|
|
8
|
+
*/
|
|
9
|
+
export declare const isCalcFunction: (token: CSSValue) => token is CSSFunction;
|
|
10
|
+
/**
|
|
11
|
+
* Evaluate a calc() expression and convert to LengthPercentage token
|
|
12
|
+
* Supports basic arithmetic: +, -, *, /
|
|
13
|
+
* Note: Percentages in calc() are converted based on a context value
|
|
14
|
+
*/
|
|
15
|
+
export declare const evaluateCalcToLengthPercentage: (calcToken: CSSFunction, contextValue?: number) => LengthPercentage | null;
|
|
6
16
|
export declare const parseLengthPercentageTuple: (tokens: LengthPercentage[]) => LengthPercentageTuple;
|
|
7
17
|
export declare const ZERO_LENGTH: NumberValueToken;
|
|
8
18
|
export declare const FIFTY_PERCENT: NumberValueToken;
|
package/package.json
CHANGED