@jbrowse/svgcanvas 7.0.0 → 8.0.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/index.d.ts +5 -8
- package/dist/index.js +23 -34
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/index.ts +23 -34
package/dist/index.d.ts
CHANGED
|
@@ -9,11 +9,8 @@
|
|
|
9
9
|
* Copyright (c) 2014 Gliffy Inc.
|
|
10
10
|
* Copyright (c) 2021 Zeno Zeng
|
|
11
11
|
*
|
|
12
|
-
* Vendored
|
|
13
|
-
*
|
|
14
|
-
* alignment needs is rectangles, paths, arcs and a great many glyphs. Gradients,
|
|
15
|
-
* patterns, clipping, rotation, bezier curves, stroked text, shadows and image
|
|
16
|
-
* drawing are gone with the state they carried.
|
|
12
|
+
* Vendored, converted to ESM/TypeScript, and cut down to the calls the
|
|
13
|
+
* renderers make: rectangles, paths, arcs and glyphs.
|
|
17
14
|
*/
|
|
18
15
|
interface ContextOptions {
|
|
19
16
|
document?: Document;
|
|
@@ -51,9 +48,9 @@ export declare class Context {
|
|
|
51
48
|
__applyStyleState(styleState: Record<string, any>): void;
|
|
52
49
|
__getStyleState(): Record<string, any>;
|
|
53
50
|
/**
|
|
54
|
-
* A translation
|
|
55
|
-
*
|
|
56
|
-
*
|
|
51
|
+
* A pure translation folds into the element's x/y, saving ~35 bytes per
|
|
52
|
+
* glyph. Any other transform, such as a sequence-logo letter's scale, is
|
|
53
|
+
* written as a matrix.
|
|
57
54
|
*/
|
|
58
55
|
__applyTransformation(element: SVGElement, matrix?: DOMMatrix): void;
|
|
59
56
|
__applyStyleToCurrentElement(type: string): void;
|
package/dist/index.js
CHANGED
|
@@ -9,11 +9,8 @@
|
|
|
9
9
|
* Copyright (c) 2014 Gliffy Inc.
|
|
10
10
|
* Copyright (c) 2021 Zeno Zeng
|
|
11
11
|
*
|
|
12
|
-
* Vendored
|
|
13
|
-
*
|
|
14
|
-
* alignment needs is rectangles, paths, arcs and a great many glyphs. Gradients,
|
|
15
|
-
* patterns, clipping, rotation, bezier curves, stroked text, shadows and image
|
|
16
|
-
* drawing are gone with the state they carried.
|
|
12
|
+
* Vendored, converted to ESM/TypeScript, and cut down to the calls the
|
|
13
|
+
* renderers make: rectangles, paths, arcs and glyphs.
|
|
17
14
|
*/
|
|
18
15
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
19
16
|
function getTextAnchor(textAlign) {
|
|
@@ -37,9 +34,8 @@ function getDominantBaseline(textBaseline) {
|
|
|
37
34
|
return mapping[textBaseline] || mapping.alphabetic;
|
|
38
35
|
}
|
|
39
36
|
/**
|
|
40
|
-
*
|
|
41
|
-
*
|
|
42
|
-
* dropping the four below takes ~22% off a sequence-logo figure.
|
|
37
|
+
* SVG's initial values for text presentation attributes. Omitting them from
|
|
38
|
+
* every glyph takes ~22% off a sequence-logo figure.
|
|
43
39
|
*/
|
|
44
40
|
const TEXT_ATTR_DEFAULTS = {
|
|
45
41
|
'font-style': 'normal',
|
|
@@ -78,9 +74,8 @@ const STYLES = {
|
|
|
78
74
|
textBaseline: {
|
|
79
75
|
canvas: 'alphabetic',
|
|
80
76
|
},
|
|
81
|
-
// null
|
|
82
|
-
//
|
|
83
|
-
// carries an empty stroke-dasharray
|
|
77
|
+
// null on both sides so the canvas and svg defaults compare equal and strokes
|
|
78
|
+
// carry no empty stroke-dasharray
|
|
84
79
|
lineDash: {
|
|
85
80
|
svgAttr: 'stroke-dasharray',
|
|
86
81
|
canvas: null,
|
|
@@ -104,10 +99,9 @@ export class Context {
|
|
|
104
99
|
__currentPosition;
|
|
105
100
|
__transformMatrix;
|
|
106
101
|
__transformMatrixStack;
|
|
107
|
-
//
|
|
108
|
-
//
|
|
102
|
+
// parsed fonts keyed by `font` string; each parse costs a DOM element and a
|
|
103
|
+
// CSS parse, and exports ask per glyph
|
|
109
104
|
__fontCache = new Map();
|
|
110
|
-
// Style properties
|
|
111
105
|
strokeStyle;
|
|
112
106
|
fillStyle;
|
|
113
107
|
lineWidth;
|
|
@@ -145,17 +139,15 @@ export class Context {
|
|
|
145
139
|
__createElement(elementName, properties = {}, resetFill) {
|
|
146
140
|
const element = this.__document.createElementNS('http://www.w3.org/2000/svg', elementName);
|
|
147
141
|
if (resetFill) {
|
|
148
|
-
//
|
|
149
|
-
//
|
|
150
|
-
// when it is the svg default anyway
|
|
142
|
+
// placeholders: fill()/stroke() overwrite their own attribute, and
|
|
143
|
+
// __applyStyleToCurrentElement drops the other when it is the svg default
|
|
151
144
|
element.setAttribute('fill', 'none');
|
|
152
145
|
element.setAttribute('stroke', 'none');
|
|
153
146
|
}
|
|
154
147
|
for (const key of Object.keys(properties)) {
|
|
155
|
-
//
|
|
156
|
-
// "undefined"
|
|
157
|
-
//
|
|
158
|
-
// text-decoration="undefined" -- invalid, and ~28 wasted bytes per letter
|
|
148
|
+
// __applyText passes optional attributes through unconditionally; skipping
|
|
149
|
+
// unset ones keeps an invalid text-decoration="undefined" (~28 bytes) off
|
|
150
|
+
// every glyph
|
|
159
151
|
const value = properties[key];
|
|
160
152
|
if (value !== undefined && value !== null) {
|
|
161
153
|
element.setAttribute(key, value);
|
|
@@ -183,9 +175,9 @@ export class Context {
|
|
|
183
175
|
return styleState;
|
|
184
176
|
}
|
|
185
177
|
/**
|
|
186
|
-
* A translation
|
|
187
|
-
*
|
|
188
|
-
*
|
|
178
|
+
* A pure translation folds into the element's x/y, saving ~35 bytes per
|
|
179
|
+
* glyph. Any other transform, such as a sequence-logo letter's scale, is
|
|
180
|
+
* written as a matrix.
|
|
189
181
|
*/
|
|
190
182
|
__applyTransformation(element, matrix) {
|
|
191
183
|
const { a, b, c, d, e, f } = matrix || this.getTransform();
|
|
@@ -219,7 +211,7 @@ export class Context {
|
|
|
219
211
|
? rgbaRegex.exec(value)
|
|
220
212
|
: null;
|
|
221
213
|
if (matches) {
|
|
222
|
-
// SVG has no rgba()
|
|
214
|
+
// SVG has no rgba(); the alpha goes in the -opacity attribute
|
|
223
215
|
currentElement.setAttribute(style.svgAttr, `rgb(${matches[1]},${matches[2]},${matches[3]})`);
|
|
224
216
|
currentElement.setAttribute(`${style.svgAttr}-opacity`, matches[4]);
|
|
225
217
|
}
|
|
@@ -231,9 +223,8 @@ export class Context {
|
|
|
231
223
|
currentElement.setAttribute(style.svgAttr, value);
|
|
232
224
|
}
|
|
233
225
|
}
|
|
234
|
-
//
|
|
235
|
-
//
|
|
236
|
-
// black -- so a stroked element keeps its fill="none"
|
|
226
|
+
// svg defaults stroke to none, so a fill drops stroke="none". Fill defaults
|
|
227
|
+
// to black, so a stroked element keeps fill="none".
|
|
237
228
|
if (type === 'fill' && currentElement.getAttribute('stroke') === 'none') {
|
|
238
229
|
currentElement.removeAttribute('stroke');
|
|
239
230
|
}
|
|
@@ -312,8 +303,8 @@ export class Context {
|
|
|
312
303
|
const p = this.__matrixTransform(x, y);
|
|
313
304
|
this.__addPathCommand(`Q ${cp.x} ${cp.y} ${p.x} ${p.y}`);
|
|
314
305
|
}
|
|
315
|
-
// paint-order only
|
|
316
|
-
//
|
|
306
|
+
// paint-order matters only on an element with both fill and stroke: the
|
|
307
|
+
// collapsed-clade triangle
|
|
317
308
|
__applyPaintOrder(order, other) {
|
|
318
309
|
const current = this.__currentElement;
|
|
319
310
|
if (current.nodeName === 'path' &&
|
|
@@ -332,10 +323,8 @@ export class Context {
|
|
|
332
323
|
this.__applyCurrentDefaultPath();
|
|
333
324
|
this.__applyStyleToCurrentElement('fill');
|
|
334
325
|
}
|
|
335
|
-
// A fill
|
|
336
|
-
//
|
|
337
|
-
// the drawing away instead -- a full-width highlight band over an alignment
|
|
338
|
-
// took the export from 124 letters to 4.
|
|
326
|
+
// A fill covering the whole context paints over what is under it, as on a
|
|
327
|
+
// canvas; it does not clear the drawing.
|
|
339
328
|
fillRect(x, y, width, height) {
|
|
340
329
|
const rect = this.__createElement('rect', { x, y, width, height }, true);
|
|
341
330
|
this.__closestGroupOrSvg().appendChild(rect);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -9,11 +9,8 @@
|
|
|
9
9
|
* Copyright (c) 2014 Gliffy Inc.
|
|
10
10
|
* Copyright (c) 2021 Zeno Zeng
|
|
11
11
|
*
|
|
12
|
-
* Vendored
|
|
13
|
-
*
|
|
14
|
-
* alignment needs is rectangles, paths, arcs and a great many glyphs. Gradients,
|
|
15
|
-
* patterns, clipping, rotation, bezier curves, stroked text, shadows and image
|
|
16
|
-
* drawing are gone with the state they carried.
|
|
12
|
+
* Vendored, converted to ESM/TypeScript, and cut down to the calls the
|
|
13
|
+
* renderers make: rectangles, paths, arcs and glyphs.
|
|
17
14
|
*/
|
|
18
15
|
|
|
19
16
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
@@ -41,9 +38,8 @@ function getDominantBaseline(textBaseline: string): string {
|
|
|
41
38
|
}
|
|
42
39
|
|
|
43
40
|
/**
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* dropping the four below takes ~22% off a sequence-logo figure.
|
|
41
|
+
* SVG's initial values for text presentation attributes. Omitting them from
|
|
42
|
+
* every glyph takes ~22% off a sequence-logo figure.
|
|
47
43
|
*/
|
|
48
44
|
const TEXT_ATTR_DEFAULTS: Record<string, string> = {
|
|
49
45
|
'font-style': 'normal',
|
|
@@ -84,9 +80,8 @@ const STYLES: Record<string, any> = {
|
|
|
84
80
|
textBaseline: {
|
|
85
81
|
canvas: 'alphabetic',
|
|
86
82
|
},
|
|
87
|
-
// null
|
|
88
|
-
//
|
|
89
|
-
// carries an empty stroke-dasharray
|
|
83
|
+
// null on both sides so the canvas and svg defaults compare equal and strokes
|
|
84
|
+
// carry no empty stroke-dasharray
|
|
90
85
|
lineDash: {
|
|
91
86
|
svgAttr: 'stroke-dasharray',
|
|
92
87
|
canvas: null,
|
|
@@ -119,11 +114,10 @@ export class Context {
|
|
|
119
114
|
__currentPosition: { x?: number; y?: number }
|
|
120
115
|
__transformMatrix: DOMMatrix
|
|
121
116
|
__transformMatrixStack?: DOMMatrix[]
|
|
122
|
-
//
|
|
123
|
-
//
|
|
117
|
+
// parsed fonts keyed by `font` string; each parse costs a DOM element and a
|
|
118
|
+
// CSS parse, and exports ask per glyph
|
|
124
119
|
__fontCache = new Map<string, CSSStyleDeclaration>()
|
|
125
120
|
|
|
126
|
-
// Style properties
|
|
127
121
|
strokeStyle: any
|
|
128
122
|
fillStyle: any
|
|
129
123
|
lineWidth: any
|
|
@@ -181,17 +175,15 @@ export class Context {
|
|
|
181
175
|
elementName,
|
|
182
176
|
)
|
|
183
177
|
if (resetFill) {
|
|
184
|
-
//
|
|
185
|
-
//
|
|
186
|
-
// when it is the svg default anyway
|
|
178
|
+
// placeholders: fill()/stroke() overwrite their own attribute, and
|
|
179
|
+
// __applyStyleToCurrentElement drops the other when it is the svg default
|
|
187
180
|
element.setAttribute('fill', 'none')
|
|
188
181
|
element.setAttribute('stroke', 'none')
|
|
189
182
|
}
|
|
190
183
|
for (const key of Object.keys(properties)) {
|
|
191
|
-
//
|
|
192
|
-
// "undefined"
|
|
193
|
-
//
|
|
194
|
-
// text-decoration="undefined" -- invalid, and ~28 wasted bytes per letter
|
|
184
|
+
// __applyText passes optional attributes through unconditionally; skipping
|
|
185
|
+
// unset ones keeps an invalid text-decoration="undefined" (~28 bytes) off
|
|
186
|
+
// every glyph
|
|
195
187
|
const value = properties[key]
|
|
196
188
|
if (value !== undefined && value !== null) {
|
|
197
189
|
element.setAttribute(key, value)
|
|
@@ -221,9 +213,9 @@ export class Context {
|
|
|
221
213
|
}
|
|
222
214
|
|
|
223
215
|
/**
|
|
224
|
-
* A translation
|
|
225
|
-
*
|
|
226
|
-
*
|
|
216
|
+
* A pure translation folds into the element's x/y, saving ~35 bytes per
|
|
217
|
+
* glyph. Any other transform, such as a sequence-logo letter's scale, is
|
|
218
|
+
* written as a matrix.
|
|
227
219
|
*/
|
|
228
220
|
__applyTransformation(element: SVGElement, matrix?: DOMMatrix) {
|
|
229
221
|
const { a, b, c, d, e, f } = matrix || this.getTransform()
|
|
@@ -262,7 +254,7 @@ export class Context {
|
|
|
262
254
|
? rgbaRegex.exec(value)
|
|
263
255
|
: null
|
|
264
256
|
if (matches) {
|
|
265
|
-
// SVG has no rgba()
|
|
257
|
+
// SVG has no rgba(); the alpha goes in the -opacity attribute
|
|
266
258
|
currentElement.setAttribute(
|
|
267
259
|
style.svgAttr,
|
|
268
260
|
`rgb(${matches[1]},${matches[2]},${matches[3]})`,
|
|
@@ -279,9 +271,8 @@ export class Context {
|
|
|
279
271
|
}
|
|
280
272
|
}
|
|
281
273
|
|
|
282
|
-
//
|
|
283
|
-
//
|
|
284
|
-
// black -- so a stroked element keeps its fill="none"
|
|
274
|
+
// svg defaults stroke to none, so a fill drops stroke="none". Fill defaults
|
|
275
|
+
// to black, so a stroked element keeps fill="none".
|
|
285
276
|
if (type === 'fill' && currentElement.getAttribute('stroke') === 'none') {
|
|
286
277
|
currentElement.removeAttribute('stroke')
|
|
287
278
|
}
|
|
@@ -374,8 +365,8 @@ export class Context {
|
|
|
374
365
|
this.__addPathCommand(`Q ${cp.x} ${cp.y} ${p.x} ${p.y}`)
|
|
375
366
|
}
|
|
376
367
|
|
|
377
|
-
// paint-order only
|
|
378
|
-
//
|
|
368
|
+
// paint-order matters only on an element with both fill and stroke: the
|
|
369
|
+
// collapsed-clade triangle
|
|
379
370
|
__applyPaintOrder(order: string, other: string) {
|
|
380
371
|
const current = this.__currentElement
|
|
381
372
|
if (
|
|
@@ -399,10 +390,8 @@ export class Context {
|
|
|
399
390
|
this.__applyStyleToCurrentElement('fill')
|
|
400
391
|
}
|
|
401
392
|
|
|
402
|
-
// A fill
|
|
403
|
-
//
|
|
404
|
-
// the drawing away instead -- a full-width highlight band over an alignment
|
|
405
|
-
// took the export from 124 letters to 4.
|
|
393
|
+
// A fill covering the whole context paints over what is under it, as on a
|
|
394
|
+
// canvas; it does not clear the drawing.
|
|
406
395
|
fillRect(x: number, y: number, width: number, height: number) {
|
|
407
396
|
const rect = this.__createElement('rect', { x, y, width, height }, true)
|
|
408
397
|
this.__closestGroupOrSvg().appendChild(rect)
|