plotboilerplate 1.20.0 → 1.20.2

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.
Files changed (89) hide show
  1. package/README.md +17 -0
  2. package/dist/index.esm.js +101 -50
  3. package/dist/index.esm.js.map +1 -1
  4. package/dist/index.esm.min.js +1 -1
  5. package/dist/index.esm.min.js.map +1 -1
  6. package/dist/plotboilerplate.browser.min.js +1 -1
  7. package/dist/plotboilerplate.browser.min.js.map +1 -1
  8. package/dist/plotboilerplate.js +102 -50
  9. package/dist/plotboilerplate.min.js +1 -1
  10. package/package.json +2 -1
  11. package/src/cjs/BezierPath.js +2 -3
  12. package/src/cjs/BezierPath.js.map +1 -1
  13. package/src/cjs/PlotBoilerplate.d.ts +7 -1
  14. package/src/cjs/PlotBoilerplate.js +76 -33
  15. package/src/cjs/PlotBoilerplate.js.map +1 -1
  16. package/src/cjs/Triangle.js +1 -0
  17. package/src/cjs/Triangle.js.map +1 -1
  18. package/src/cjs/draw.d.ts +6 -5
  19. package/src/cjs/draw.js +4 -3
  20. package/src/cjs/draw.js.map +1 -1
  21. package/src/cjs/drawgl.d.ts +7 -6
  22. package/src/cjs/drawgl.js +5 -4
  23. package/src/cjs/drawgl.js.map +1 -1
  24. package/src/cjs/drawutilssvg.d.ts +8 -6
  25. package/src/cjs/drawutilssvg.js +14 -7
  26. package/src/cjs/drawutilssvg.js.map +1 -1
  27. package/src/cjs/interfaces/DrawLib.d.ts +4 -3
  28. package/src/cjs/interfaces/DrawLib.js +1 -0
  29. package/src/cjs/interfaces/DrawLib.js.map +1 -1
  30. package/src/cjs/interfaces/core.d.ts +33 -30
  31. package/src/cjs/interfaces/core.js +1 -0
  32. package/src/cjs/interfaces/core.js.map +1 -1
  33. package/src/cjs/utils/datastructures/Color.d.ts +3 -1
  34. package/src/cjs/utils/datastructures/Color.js +12 -1
  35. package/src/cjs/utils/datastructures/Color.js.map +1 -1
  36. package/src/cjs/utils/module.js +4 -2
  37. package/src/cjs/utils/parsers/svg/parseSVGPathData.d.ts +2 -1
  38. package/src/cjs/utils/parsers/svg/parseSVGPathData.js +228 -205
  39. package/src/cjs/utils/parsers/svg/parseSVGPathData.js.map +1 -1
  40. package/src/cjs/utils/parsers/svg/splitSVGPathData.js +6 -2
  41. package/src/cjs/utils/parsers/svg/splitSVGPathData.js.map +1 -1
  42. package/src/cjs/utils/parsers/svg/types.d.ts +29 -9
  43. package/src/cjs/utils/parsers/svg/types.js +4 -3
  44. package/src/cjs/utils/parsers/svg/types.js.map +1 -1
  45. package/src/esm/BezierPath.js +2 -3
  46. package/src/esm/BezierPath.js.map +1 -1
  47. package/src/esm/PlotBoilerplate.d.ts +7 -1
  48. package/src/esm/PlotBoilerplate.js +75 -33
  49. package/src/esm/PlotBoilerplate.js.map +1 -1
  50. package/src/esm/Triangle.js +1 -0
  51. package/src/esm/Triangle.js.map +1 -1
  52. package/src/esm/draw.d.ts +6 -5
  53. package/src/esm/draw.js +4 -3
  54. package/src/esm/draw.js.map +1 -1
  55. package/src/esm/drawgl.d.ts +7 -6
  56. package/src/esm/drawgl.js +5 -4
  57. package/src/esm/drawgl.js.map +1 -1
  58. package/src/esm/drawutilssvg.d.ts +8 -6
  59. package/src/esm/drawutilssvg.js +14 -7
  60. package/src/esm/drawutilssvg.js.map +1 -1
  61. package/src/esm/interfaces/DrawLib.d.ts +4 -3
  62. package/src/esm/interfaces/DrawLib.js +1 -0
  63. package/src/esm/interfaces/DrawLib.js.map +1 -1
  64. package/src/esm/interfaces/core.d.ts +33 -30
  65. package/src/esm/interfaces/core.js +1 -0
  66. package/src/esm/interfaces/core.js.map +1 -1
  67. package/src/esm/utils/datastructures/Color.d.ts +3 -1
  68. package/src/esm/utils/datastructures/Color.js +12 -1
  69. package/src/esm/utils/datastructures/Color.js.map +1 -1
  70. package/src/esm/utils/parsers/svg/parseSVGPathData.d.ts +2 -1
  71. package/src/esm/utils/parsers/svg/parseSVGPathData.js +228 -205
  72. package/src/esm/utils/parsers/svg/parseSVGPathData.js.map +1 -1
  73. package/src/esm/utils/parsers/svg/splitSVGPathData.js +6 -2
  74. package/src/esm/utils/parsers/svg/splitSVGPathData.js.map +1 -1
  75. package/src/esm/utils/parsers/svg/types.d.ts +29 -9
  76. package/src/esm/utils/parsers/svg/types.js +4 -3
  77. package/src/esm/utils/parsers/svg/types.js.map +1 -1
  78. package/src/ts/BezierPath.ts +2 -3
  79. package/src/ts/PlotBoilerplate.ts +75 -32
  80. package/src/ts/Triangle.ts +2 -1
  81. package/src/ts/draw.ts +6 -5
  82. package/src/ts/drawgl.ts +9 -8
  83. package/src/ts/drawutilssvg.ts +23 -16
  84. package/src/ts/interfaces/DrawLib.ts +4 -3
  85. package/src/ts/interfaces/core.ts +33 -30
  86. package/src/ts/utils/datastructures/Color.ts +13 -1
  87. package/src/ts/utils/parsers/svg/parseSVGPathData.ts +271 -212
  88. package/src/ts/utils/parsers/svg/splitSVGPathData.ts +6 -2
  89. package/src/ts/utils/parsers/svg/types.ts +29 -9
@@ -7,9 +7,10 @@
7
7
  * https://www.w3.org/TR/SVG/paths.html
8
8
  *
9
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
- * @version 0.0.1-alpha
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
13
14
  */
14
15
 
15
16
  export type NumericString = `${number}`;
@@ -18,7 +19,7 @@ export type BooleanString = "0" | "1" | `${boolean}`;
18
19
  // Example: 'M', -10, -7.5,
19
20
  export type SVGPathMoveToCommand = ["M" | "m", NumericString, NumericString];
20
21
  // Example: 'L', 0, -10,
21
- export type SVGPathLineToCommand = ["L" | "l", NumericString, NumericString];
22
+ export type SVGPathLineToCommand = ["L" | "l", NumericString, NumericString, ...Array<NumericString>];
22
23
  // Example: 'V', -10,
23
24
  export type SVGPathVerticalLineToCommand = ["V" | "v", NumericString];
24
25
  // Example: 'H', 10,
@@ -27,7 +28,17 @@ export type SVGPathHorizontalLineToCommand = ["H" | "h", NumericString];
27
28
  // Example2: 'Q', 5, 5, 0, 0, 'T', -10, 0,
28
29
  export type SVGPathQuadraticCurveToCommand =
29
30
  | ["Q" | "q", NumericString, NumericString, NumericString, NumericString]
30
- | ["Q" | "q", NumericString, NumericString, NumericString, NumericString, "T" | "t", 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
+ ];
31
42
  // Example: 'C', -5, -15, 10, -15, 5, -10,
32
43
  export type SVGPathCubicCurveToCommand = [
33
44
  "C" | "c",
@@ -36,10 +47,18 @@ export type SVGPathCubicCurveToCommand = [
36
47
  NumericString,
37
48
  NumericString,
38
49
  NumericString,
39
- NumericString
50
+ NumericString,
51
+ ...Array<NumericString>
40
52
  ];
41
53
  // Example: 'S', 15, 0, 10, 0,
42
- export type SVGPathShorthandCubicCurveToCommand = ["S" | "s", NumericString, NumericString, NumericString, NumericString];
54
+ export type SVGPathShorthandCubicCurveToCommand = [
55
+ "S" | "s",
56
+ NumericString,
57
+ NumericString,
58
+ NumericString,
59
+ NumericString,
60
+ ...Array<NumericString>
61
+ ];
43
62
  // Example: 'A', 5, 4, 0, 1, 1, -10, -5,
44
63
  export type SVGPathArcToCommand = [
45
64
  "A" | "a",
@@ -49,14 +68,15 @@ export type SVGPathArcToCommand = [
49
68
  BooleanString,
50
69
  BooleanString,
51
70
  NumericString,
52
- NumericString
71
+ NumericString,
72
+ ...Array<NumericString>
53
73
  ];
54
74
  // Example: 'Z'
55
75
  export type SVGPathCloseCommand = ["Z" | "z"];
56
76
 
57
77
  // NOTE: this is not a standalone command. It is only valid in combination with the Q|q command!
58
78
  // Example2: 'T', -10, 0,
59
- export type SVGPathShorthandQuadraticCurveToCommand = ["T" | "t", NumericString, NumericString];
79
+ export type SVGPathShorthandQuadraticCurveToCommand = ["T" | "t", NumericString, NumericString, ...Array<NumericString>];
60
80
 
61
81
  export type SVGPathCommand =
62
82
  | SVGPathMoveToCommand