plotboilerplate 1.19.0 → 1.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/index.esm.js +81 -27
- package/dist/index.esm.js.map +1 -1
- package/dist/index.esm.min.js +1 -1
- package/dist/index.esm.min.js.map +1 -1
- package/dist/plotboilerplate.browser.min.js +1 -1
- package/dist/plotboilerplate.browser.min.js.map +1 -1
- package/dist/plotboilerplate.js +81 -39
- package/dist/plotboilerplate.min.js +1 -1
- package/package.json +1 -1
- package/src/cjs/Bounds.d.ts +4 -5
- package/src/cjs/Bounds.js +6 -8
- package/src/cjs/Bounds.js.map +1 -1
- package/src/cjs/PlotBoilerplate.d.ts +2 -1
- package/src/cjs/PlotBoilerplate.js +9 -3
- package/src/cjs/PlotBoilerplate.js.map +1 -1
- package/src/cjs/VEllipseSector.d.ts +4 -3
- package/src/cjs/VEllipseSector.js +15 -8
- package/src/cjs/VEllipseSector.js.map +1 -1
- package/src/cjs/Vertex.d.ts +33 -1
- package/src/cjs/Vertex.js +43 -1
- package/src/cjs/Vertex.js.map +1 -1
- package/src/cjs/drawutilssvg.d.ts +2 -1
- package/src/cjs/drawutilssvg.js +7 -19
- package/src/cjs/drawutilssvg.js.map +1 -1
- package/src/cjs/entry.js +1 -0
- package/src/cjs/interfaces/core.d.ts +3 -0
- package/src/cjs/interfaces/core.js +1 -0
- package/src/cjs/interfaces/core.js.map +1 -1
- package/src/cjs/utils/algorithms/detectPaths.d.ts +3 -2
- package/src/cjs/utils/creategui.js +7 -0
- package/src/cjs/utils/datastructures/Color.d.ts +1 -1
- package/src/cjs/utils/datastructures/Color.js +4 -2
- package/src/cjs/utils/datastructures/Color.js.map +1 -1
- package/src/cjs/utils/io/FileDrop.d.ts +11 -1
- package/src/cjs/utils/io/FileDrop.js +41 -10
- package/src/cjs/utils/io/FileDrop.js.map +1 -1
- package/src/cjs/utils/parsers/svg/parseSVGPathData.d.ts +27 -0
- package/src/cjs/utils/parsers/svg/parseSVGPathData.js +486 -0
- package/src/cjs/utils/parsers/svg/parseSVGPathData.js.map +1 -0
- package/src/cjs/utils/parsers/svg/splitSVGPathData.d.ts +20 -0
- package/src/cjs/utils/parsers/svg/splitSVGPathData.js +53 -0
- package/src/cjs/utils/parsers/svg/splitSVGPathData.js.map +1 -0
- package/src/cjs/utils/parsers/svg/types.d.ts +63 -0
- package/src/cjs/utils/parsers/svg/types.js +17 -0
- package/src/cjs/utils/parsers/svg/types.js.map +1 -0
- package/src/esm/Bounds.d.ts +4 -5
- package/src/esm/Bounds.js +6 -8
- package/src/esm/Bounds.js.map +1 -1
- package/src/esm/PlotBoilerplate.d.ts +2 -1
- package/src/esm/PlotBoilerplate.js +10 -4
- package/src/esm/PlotBoilerplate.js.map +1 -1
- package/src/esm/VEllipseSector.d.ts +4 -3
- package/src/esm/VEllipseSector.js +15 -8
- package/src/esm/VEllipseSector.js.map +1 -1
- package/src/esm/Vertex.d.ts +33 -1
- package/src/esm/Vertex.js +43 -1
- package/src/esm/Vertex.js.map +1 -1
- package/src/esm/drawutilssvg.d.ts +2 -1
- package/src/esm/drawutilssvg.js +7 -19
- package/src/esm/drawutilssvg.js.map +1 -1
- package/src/esm/entry.js +1 -0
- package/src/esm/interfaces/core.d.ts +3 -0
- package/src/esm/interfaces/core.js +1 -0
- package/src/esm/interfaces/core.js.map +1 -1
- package/src/esm/utils/algorithms/detectPaths.d.ts +3 -2
- package/src/esm/utils/algorithms/detectPaths.js.map +1 -1
- package/src/esm/utils/datastructures/Color.d.ts +1 -1
- package/src/esm/utils/datastructures/Color.js +4 -2
- package/src/esm/utils/datastructures/Color.js.map +1 -1
- package/src/esm/utils/io/FileDrop.d.ts +11 -1
- package/src/esm/utils/io/FileDrop.js +41 -10
- package/src/esm/utils/io/FileDrop.js.map +1 -1
- package/src/esm/utils/parsers/svg/parseSVGPathData.d.ts +27 -0
- package/src/esm/utils/parsers/svg/parseSVGPathData.js +482 -0
- package/src/esm/utils/parsers/svg/parseSVGPathData.js.map +1 -0
- package/src/esm/utils/parsers/svg/splitSVGPathData.d.ts +20 -0
- package/src/esm/utils/parsers/svg/splitSVGPathData.js +49 -0
- package/src/esm/utils/parsers/svg/splitSVGPathData.js.map +1 -0
- package/src/esm/utils/parsers/svg/types.d.ts +63 -0
- package/src/esm/utils/parsers/svg/types.js +16 -0
- package/src/esm/utils/parsers/svg/types.js.map +1 -0
- package/src/ts/Bounds.ts +6 -8
- package/src/ts/PlotBoilerplate.ts +11 -4
- package/src/ts/VEllipseSector.ts +22 -15
- package/src/ts/Vertex.ts +46 -1
- package/src/ts/drawutilssvg.ts +8 -19
- package/src/ts/interfaces/core.ts +3 -0
- package/src/ts/utils/algorithms/detectPaths.ts +1 -1
- package/src/ts/utils/datastructures/Color.ts +8 -4
- package/src/ts/utils/io/FileDrop.ts +51 -10
- package/src/ts/utils/parsers/svg/parseSVGPathData.ts +631 -0
- package/src/ts/utils/parsers/svg/splitSVGPathData.ts +54 -0
- package/src/ts/utils/parsers/svg/types.ts +90 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defining some basic SVG command types.
|
|
3
|
+
*
|
|
4
|
+
* As these types do not define all very possible path data strings they should cover the most daily use-cases.
|
|
5
|
+
*
|
|
6
|
+
* For more insight see
|
|
7
|
+
* https://www.w3.org/TR/SVG/paths.html
|
|
8
|
+
*
|
|
9
|
+
*
|
|
10
|
+
* @author Ikaros Kappler
|
|
11
|
+
* @date 2022-12-21 (winter solstice night – yes the days & nights are dark and I have nothing else to do)
|
|
12
|
+
* @modified 2023-01-17 Added multiple parameter sets.
|
|
13
|
+
* @version 0.0.2-alpha
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
export type NumericString = `${number}`;
|
|
17
|
+
export type BooleanString = "0" | "1" | `${boolean}`;
|
|
18
|
+
|
|
19
|
+
// Example: 'M', -10, -7.5,
|
|
20
|
+
export type SVGPathMoveToCommand = ["M" | "m", NumericString, NumericString];
|
|
21
|
+
// Example: 'L', 0, -10,
|
|
22
|
+
export type SVGPathLineToCommand = ["L" | "l", NumericString, NumericString, ...Array<NumericString>];
|
|
23
|
+
// Example: 'V', -10,
|
|
24
|
+
export type SVGPathVerticalLineToCommand = ["V" | "v", NumericString];
|
|
25
|
+
// Example: 'H', 10,
|
|
26
|
+
export type SVGPathHorizontalLineToCommand = ["H" | "h", NumericString];
|
|
27
|
+
// Example: 'Q', 5, 5, 0, 0,
|
|
28
|
+
// Example2: 'Q', 5, 5, 0, 0, 'T', -10, 0,
|
|
29
|
+
export type SVGPathQuadraticCurveToCommand =
|
|
30
|
+
| ["Q" | "q", NumericString, NumericString, NumericString, NumericString]
|
|
31
|
+
| [
|
|
32
|
+
"Q" | "q",
|
|
33
|
+
NumericString,
|
|
34
|
+
NumericString,
|
|
35
|
+
NumericString,
|
|
36
|
+
NumericString,
|
|
37
|
+
"T" | "t",
|
|
38
|
+
NumericString,
|
|
39
|
+
NumericString,
|
|
40
|
+
...Array<NumericString>
|
|
41
|
+
];
|
|
42
|
+
// Example: 'C', -5, -15, 10, -15, 5, -10,
|
|
43
|
+
export type SVGPathCubicCurveToCommand = [
|
|
44
|
+
"C" | "c",
|
|
45
|
+
NumericString,
|
|
46
|
+
NumericString,
|
|
47
|
+
NumericString,
|
|
48
|
+
NumericString,
|
|
49
|
+
NumericString,
|
|
50
|
+
NumericString,
|
|
51
|
+
...Array<NumericString>
|
|
52
|
+
];
|
|
53
|
+
// Example: 'S', 15, 0, 10, 0,
|
|
54
|
+
export type SVGPathShorthandCubicCurveToCommand = [
|
|
55
|
+
"S" | "s",
|
|
56
|
+
NumericString,
|
|
57
|
+
NumericString,
|
|
58
|
+
NumericString,
|
|
59
|
+
NumericString,
|
|
60
|
+
...Array<NumericString>
|
|
61
|
+
];
|
|
62
|
+
// Example: 'A', 5, 4, 0, 1, 1, -10, -5,
|
|
63
|
+
export type SVGPathArcToCommand = [
|
|
64
|
+
"A" | "a",
|
|
65
|
+
NumericString,
|
|
66
|
+
NumericString,
|
|
67
|
+
NumericString,
|
|
68
|
+
BooleanString,
|
|
69
|
+
BooleanString,
|
|
70
|
+
NumericString,
|
|
71
|
+
NumericString,
|
|
72
|
+
...Array<NumericString>
|
|
73
|
+
];
|
|
74
|
+
// Example: 'Z'
|
|
75
|
+
export type SVGPathCloseCommand = ["Z" | "z"];
|
|
76
|
+
|
|
77
|
+
// NOTE: this is not a standalone command. It is only valid in combination with the Q|q command!
|
|
78
|
+
// Example2: 'T', -10, 0,
|
|
79
|
+
export type SVGPathShorthandQuadraticCurveToCommand = ["T" | "t", NumericString, NumericString, ...Array<NumericString>];
|
|
80
|
+
|
|
81
|
+
export type SVGPathCommand =
|
|
82
|
+
| SVGPathMoveToCommand
|
|
83
|
+
| SVGPathLineToCommand
|
|
84
|
+
| SVGPathVerticalLineToCommand
|
|
85
|
+
| SVGPathHorizontalLineToCommand
|
|
86
|
+
| SVGPathQuadraticCurveToCommand
|
|
87
|
+
| SVGPathCubicCurveToCommand
|
|
88
|
+
| SVGPathShorthandCubicCurveToCommand
|
|
89
|
+
| SVGPathArcToCommand
|
|
90
|
+
| SVGPathCloseCommand;
|