toosoon-utils 4.0.3 → 4.0.5
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 +198 -15
- package/lib/geometry.d.ts +52 -8
- package/lib/geometry.js +105 -8
- package/lib/maths.d.ts +8 -8
- package/lib/maths.js +11 -11
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
Utility functions & classes.
|
|
4
4
|
|
|
5
|
+
[](https://nodei.co/npm/toosoon-utils/)
|
|
6
|
+
|
|
5
7
|
## Installation
|
|
6
8
|
|
|
7
9
|
Yarn:
|
|
@@ -411,15 +413,194 @@ diagonal(width: number, height: number): number;
|
|
|
411
413
|
|
|
412
414
|
Convert radians to a 3D point on the surface of a unit sphere.
|
|
413
415
|
|
|
414
|
-
- `radius`: Radius of the sphere
|
|
415
|
-
- `phi`: Polar angle from the y (up) axis [0, PI]
|
|
416
|
-
- `theta`: Equator angle around the y (up) axis [0, 2*PI]
|
|
417
|
-
- `[target]`: Target vector
|
|
416
|
+
- `radius`: Radius of the sphere.
|
|
417
|
+
- `phi`: Polar angle from the y (up) axis [0, PI].
|
|
418
|
+
- `theta`: Equator angle around the y (up) axis [0, 2*PI].
|
|
419
|
+
- `[target]`: Target vector.
|
|
418
420
|
|
|
419
421
|
```ts
|
|
420
422
|
radToSphere(radius: number, phi: number, theta: number, target?: Vector3): Vector3;
|
|
421
423
|
```
|
|
422
424
|
|
|
425
|
+
#### Curves
|
|
426
|
+
|
|
427
|
+
##### cubicBezier(t, x1, y1, cpx1, cpy1, cpx2, cpy2, x2, y2)
|
|
428
|
+
|
|
429
|
+
Interpolate a point on an elliptical arc Cubic Bézier curve.
|
|
430
|
+
|
|
431
|
+
- `t`: Normalized time value to interpolate.
|
|
432
|
+
- `x1`: X-axis coordinate of the start point.
|
|
433
|
+
- `y1`: Y-axis coordinate of the start point.
|
|
434
|
+
- `cpx1`: X-axis coordinate of the first control point.
|
|
435
|
+
- `cpy1`: Y-axis coordinate of the first control point.
|
|
436
|
+
- `cpx2`: X-axis coordinate of the second control point.
|
|
437
|
+
- `cpy2`: Y-axis coordinate of the second control point.
|
|
438
|
+
- `x2`: X-axis coordinate of the end point.
|
|
439
|
+
- `y2`: Y-axis coordinate of the end point.
|
|
440
|
+
|
|
441
|
+
```ts
|
|
442
|
+
cubicBezier(
|
|
443
|
+
t: number,
|
|
444
|
+
x1: number,
|
|
445
|
+
y1: number,
|
|
446
|
+
cpx1: number,
|
|
447
|
+
cpy1: number,
|
|
448
|
+
cpx2: number,
|
|
449
|
+
cpy2: number,
|
|
450
|
+
x2: number,
|
|
451
|
+
y2: number
|
|
452
|
+
): [number, number];
|
|
453
|
+
```
|
|
454
|
+
|
|
455
|
+
##### computeCubicBezierCurvature(x1, y1, cpx, cpy, x2, y2)
|
|
456
|
+
|
|
457
|
+
Compute the curvature of a Cubic Bézier curve.
|
|
458
|
+
|
|
459
|
+
- `x1`: X-axis coordinate of the start point.
|
|
460
|
+
- `y1`: Y-axis coordinate of the start point.
|
|
461
|
+
- `cpx1`: X-axis coordinate of the first control point.
|
|
462
|
+
- `cpy1`: Y-axis coordinate of the first control point.
|
|
463
|
+
- `cpx2`: X-axis coordinate of the second control point.
|
|
464
|
+
- `cpy2`: Y-axis coordinate of the second control point.
|
|
465
|
+
- `x2`: X-axis coordinate of the end point.
|
|
466
|
+
- `y2`: Y-axis coordinate of the end point.
|
|
467
|
+
|
|
468
|
+
```ts
|
|
469
|
+
computeCubicBezierCurvature(
|
|
470
|
+
x1: number,
|
|
471
|
+
y1: number,
|
|
472
|
+
cpx1: number,
|
|
473
|
+
cpy1: number,
|
|
474
|
+
cpx2: number,
|
|
475
|
+
cpy2: number,
|
|
476
|
+
x2: number,
|
|
477
|
+
y2: number
|
|
478
|
+
): number;
|
|
479
|
+
```
|
|
480
|
+
|
|
481
|
+
##### quadraticBezier(t, x1, y1, cpx, cpy, x2, y2)
|
|
482
|
+
|
|
483
|
+
Interpolate a point on an elliptical arc Quadratic Bézier curve.
|
|
484
|
+
|
|
485
|
+
- `t`: Normalized time value to interpolate.
|
|
486
|
+
- `x1`: X-axis coordinate of the start point.
|
|
487
|
+
- `y1`: Y-axis coordinate of the start point.
|
|
488
|
+
- `cpx`: X-axis coordinate of the control point.
|
|
489
|
+
- `cpy`: Y-axis coordinate of the control point.
|
|
490
|
+
- `x2`: X-axis coordinate of the end point.
|
|
491
|
+
- `y2`: Y-axis coordinate of the end point.
|
|
492
|
+
|
|
493
|
+
```ts
|
|
494
|
+
quadraticBezier(
|
|
495
|
+
t: number,
|
|
496
|
+
x1: number,
|
|
497
|
+
y1: number,
|
|
498
|
+
cpx: number,
|
|
499
|
+
cpy: number,
|
|
500
|
+
x2: number,
|
|
501
|
+
y2: number
|
|
502
|
+
): [number, number];
|
|
503
|
+
```
|
|
504
|
+
|
|
505
|
+
##### computeQuadraticBezierCurvature(x1, y1, cpx, cpy, x2, y2)
|
|
506
|
+
|
|
507
|
+
Compute the curvature of a Quadratic Bézier curve.
|
|
508
|
+
|
|
509
|
+
- `x1`: X-axis coordinate of the start point.
|
|
510
|
+
- `y1`: Y-axis coordinate of the start point.
|
|
511
|
+
- `cpx`: X-axis coordinate of the control point.
|
|
512
|
+
- `cpy`: Y-axis coordinate of the control point.
|
|
513
|
+
- `x2`: X-axis coordinate of the end point.
|
|
514
|
+
- `y2`: Y-axis coordinate of the end point.
|
|
515
|
+
|
|
516
|
+
```ts
|
|
517
|
+
computeQuadraticBezierCurvature(
|
|
518
|
+
x1: number,
|
|
519
|
+
y1: number,
|
|
520
|
+
cpx: number,
|
|
521
|
+
cpy: number,
|
|
522
|
+
x2: number,
|
|
523
|
+
y2: number
|
|
524
|
+
): number;
|
|
525
|
+
```
|
|
526
|
+
|
|
527
|
+
##### arc(t, x1, y1, x2, y2, rx, ry, angle, largeArc, clockwise)
|
|
528
|
+
|
|
529
|
+
Interpolate a point on an elliptical arc.
|
|
530
|
+
|
|
531
|
+
- `t`: Normalized time value to interpolate.
|
|
532
|
+
- `x1`: X-axis coordinate of the starting point of the arc.
|
|
533
|
+
- `y1`: Y-axis coordinate of the starting point of the arc.
|
|
534
|
+
- `x2`: X-axis coordinate of the ending point of the arc.
|
|
535
|
+
- `y2`: Y-axis coordinate of the ending point of the arc.
|
|
536
|
+
- `rx`: X-radius of the ellipse.
|
|
537
|
+
- `ry`: Y-radius of the ellipse.
|
|
538
|
+
- `angle`: Rotation angle of the ellipse (in radians).
|
|
539
|
+
- `[largeArc]`: Flag indicating whether to draw the larger of the two possible arcs.
|
|
540
|
+
- `[clockwise]`: Flag indicating the direction of the arc.
|
|
541
|
+
|
|
542
|
+
```ts
|
|
543
|
+
arc(
|
|
544
|
+
t: number,
|
|
545
|
+
x1: number,
|
|
546
|
+
y1: number,
|
|
547
|
+
x2: number,
|
|
548
|
+
y2: number,
|
|
549
|
+
rx: number,
|
|
550
|
+
ry: number,
|
|
551
|
+
angle: number,
|
|
552
|
+
largeArc?: boolean,
|
|
553
|
+
clockwise?: boolean
|
|
554
|
+
): [number, number];
|
|
555
|
+
```
|
|
556
|
+
|
|
557
|
+
##### computeArcCurvature(x1, y1, x2, y2, rx, ry, angle, largeArc, clockwise)
|
|
558
|
+
|
|
559
|
+
Compute the curvature of an elliptical arc.
|
|
560
|
+
|
|
561
|
+
- `x1`: X-axis coordinate of the starting point of the arc.
|
|
562
|
+
- `y1`: Y-axis coordinate of the starting point of the arc.
|
|
563
|
+
- `x2`: X-axis coordinate of the ending point of the arc.
|
|
564
|
+
- `y2`: Y-axis coordinate of the ending point of the arc.
|
|
565
|
+
- `rx`: X-radius of the ellipse.
|
|
566
|
+
- `ry`: Y-radius of the ellipse.
|
|
567
|
+
- `angle`: Rotation angle of the ellipse (in radians).
|
|
568
|
+
- `[largeArc]`: Flag indicating whether to draw the larger of the two possible arcs.
|
|
569
|
+
- `[clockwise]`: Flag indicating the direction of the arc.
|
|
570
|
+
|
|
571
|
+
```ts
|
|
572
|
+
computeArcCurvature(
|
|
573
|
+
x1: number,
|
|
574
|
+
y1: number,
|
|
575
|
+
x2: number,
|
|
576
|
+
y2: number,
|
|
577
|
+
rx: number,
|
|
578
|
+
ry: number,
|
|
579
|
+
angle: number,
|
|
580
|
+
largeArc?: boolean,
|
|
581
|
+
clockwise?: boolean
|
|
582
|
+
): number;
|
|
583
|
+
```
|
|
584
|
+
|
|
585
|
+
#### Fit
|
|
586
|
+
|
|
587
|
+
<!-- -->
|
|
588
|
+
|
|
589
|
+
```ts
|
|
590
|
+
type FitInput = {
|
|
591
|
+
width: number;
|
|
592
|
+
height: number;
|
|
593
|
+
};
|
|
594
|
+
|
|
595
|
+
type FitOutput = {
|
|
596
|
+
left: number;
|
|
597
|
+
top: number;
|
|
598
|
+
width: number;
|
|
599
|
+
height: number;
|
|
600
|
+
scale: number;
|
|
601
|
+
};
|
|
602
|
+
```
|
|
603
|
+
|
|
423
604
|
##### cover(target, container)
|
|
424
605
|
|
|
425
606
|
Make a target fit a container (cover mode).
|
|
@@ -428,7 +609,7 @@ Make a target fit a container (cover mode).
|
|
|
428
609
|
- `container`: Dimension of the container.
|
|
429
610
|
|
|
430
611
|
```ts
|
|
431
|
-
cover(target:
|
|
612
|
+
cover(target: FitInput, container: FitInput): FitOutput;
|
|
432
613
|
```
|
|
433
614
|
|
|
434
615
|
##### contain(target, container)
|
|
@@ -439,7 +620,7 @@ Make a target fit a container (contain mode).
|
|
|
439
620
|
- `container`: Dimension of the container.
|
|
440
621
|
|
|
441
622
|
```ts
|
|
442
|
-
contain(target:
|
|
623
|
+
contain(target: FitInput, container: FitInput): FitOutput;
|
|
443
624
|
```
|
|
444
625
|
|
|
445
626
|
### Maths
|
|
@@ -507,43 +688,43 @@ Clamp a value between two bounds.
|
|
|
507
688
|
clamp(value: number, min?: number, max?: number): number;
|
|
508
689
|
```
|
|
509
690
|
|
|
510
|
-
##### lerp(
|
|
691
|
+
##### lerp(t, min, max)
|
|
511
692
|
|
|
512
693
|
Linear interpolation between two values (lerping).
|
|
513
694
|
|
|
514
|
-
- `
|
|
695
|
+
- `t`: Normalized time value to interpolate.
|
|
515
696
|
- `min`: Minimum value.
|
|
516
697
|
- `max`: Maximum value.
|
|
517
698
|
|
|
518
699
|
```ts
|
|
519
|
-
lerp(
|
|
700
|
+
lerp(t: number, min: number, max: number): number;
|
|
520
701
|
```
|
|
521
702
|
|
|
522
|
-
##### triLerp(
|
|
703
|
+
##### triLerp(t, min, max, target)
|
|
523
704
|
|
|
524
705
|
Triangular interpolation between two values.
|
|
525
706
|
|
|
526
|
-
- `
|
|
707
|
+
- `t`: Normalized time value to interpolate.
|
|
527
708
|
- `min`: Minimum value.
|
|
528
709
|
- `max`: Maximum value.
|
|
529
710
|
- `target`: Triangle target value.
|
|
530
711
|
|
|
531
712
|
```ts
|
|
532
|
-
triLerp(
|
|
713
|
+
triLerp(t: number, min: number, max: number, target: number): number;
|
|
533
714
|
```
|
|
534
715
|
|
|
535
|
-
##### expLerp(
|
|
716
|
+
##### expLerp(t, currentMin, currentMax, targetMin, targetMax)
|
|
536
717
|
|
|
537
718
|
Exponential interpolation between two values.
|
|
538
719
|
|
|
539
|
-
- `
|
|
720
|
+
- `t`: Normalized time value to interpolate.
|
|
540
721
|
- `currentMin`: Lower bound of the value's current range.
|
|
541
722
|
- `currentMax`: Upper bound of the value's current range.
|
|
542
723
|
- `targetMin`: Lower bound of the value's target range.
|
|
543
724
|
- `targetMax`: Upper bound of the value's target range.
|
|
544
725
|
|
|
545
726
|
```ts
|
|
546
|
-
expLerp(
|
|
727
|
+
expLerp(t: number, currentMin: number, currentMax: number, targetMin: number, targetMax: number): number;
|
|
547
728
|
```
|
|
548
729
|
|
|
549
730
|
##### normalize(value, min, max)
|
|
@@ -1271,3 +1452,5 @@ FrameRate.update(): boolean;
|
|
|
1271
1452
|
## License
|
|
1272
1453
|
|
|
1273
1454
|
MIT License, see [LICENSE](https://github.com/toosoon-dev/toosoon-utils/tree/master/LICENSE) for details.
|
|
1455
|
+
|
|
1456
|
+
[](https://nodei.co/npm/toosoon-utils/)
|
package/lib/geometry.d.ts
CHANGED
|
@@ -16,10 +16,10 @@ export declare function toRadians(degrees: number): number;
|
|
|
16
16
|
/**
|
|
17
17
|
* Calculate the angle from a point to another
|
|
18
18
|
*
|
|
19
|
-
* @param {number} x1 X
|
|
20
|
-
* @param {number} y1 Y
|
|
21
|
-
* @param {number} x2 X
|
|
22
|
-
* @param {number} y2 Y
|
|
19
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
20
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
21
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
22
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
23
23
|
* @returns {number} Angle
|
|
24
24
|
*/
|
|
25
25
|
export declare function angle(x1: number, y1: number, x2: number, y2: number): number;
|
|
@@ -34,10 +34,10 @@ export declare function closestAngle(source: number, target: number): number;
|
|
|
34
34
|
/**
|
|
35
35
|
* Calculate the distance between two points
|
|
36
36
|
*
|
|
37
|
-
* @param {number} x1 X
|
|
38
|
-
* @param {number} y1 Y
|
|
39
|
-
* @param {number} x2 X
|
|
40
|
-
* @param {number} y2 Y
|
|
37
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
38
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
39
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
40
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
41
41
|
* @returns {number} Computed distance
|
|
42
42
|
*/
|
|
43
43
|
export declare function distance(x1: number, y1: number, x2: number, y2: number): number;
|
|
@@ -59,6 +59,50 @@ export declare function diagonal(width: number, height: number): number;
|
|
|
59
59
|
* @returns {Vector3}
|
|
60
60
|
*/
|
|
61
61
|
export declare function radToSphere(radius: number, phi: number, theta: number, target?: Vector3): Vector3;
|
|
62
|
+
/**
|
|
63
|
+
* Interpolate a point on an elliptical arc Cubic Bézier curve
|
|
64
|
+
*
|
|
65
|
+
* @param {number} t Normalized time value to interpolate
|
|
66
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
67
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
68
|
+
* @param {number} cpx1 X-axis coordinate of the first control point
|
|
69
|
+
* @param {number} cpy1 Y-axis coordinate of the first control point
|
|
70
|
+
* @param {number} cpx2 X-axis coordinate of the second control point
|
|
71
|
+
* @param {number} cpy2 Y-axis coordinate of the second control point
|
|
72
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
73
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
74
|
+
* @returns {[number, number]} Interpolated coordinates on the curve
|
|
75
|
+
*/
|
|
76
|
+
export declare function cubicBezier(t: number, x1: number, y1: number, cpx1: number, cpy1: number, cpx2: number, cpy2: number, x2: number, y2: number): [number, number];
|
|
77
|
+
/**
|
|
78
|
+
* Interpolate a point on an elliptical arc Quadratic Bézier curve
|
|
79
|
+
*
|
|
80
|
+
* @param {number} t Normalized time value to interpolate
|
|
81
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
82
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
83
|
+
* @param {number} cpx X-axis coordinate of the control point
|
|
84
|
+
* @param {number} cpy Y-axis coordinate of the control point
|
|
85
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
86
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
87
|
+
* @returns {[number, number]} Interpolated coordinates on the curve
|
|
88
|
+
*/
|
|
89
|
+
export declare function quadraticBesier(t: number, x1: number, y1: number, cpx: number, cpy: number, x2: number, y2: number): [number, number];
|
|
90
|
+
/**
|
|
91
|
+
* Interpolate a point on an elliptical arc
|
|
92
|
+
*
|
|
93
|
+
* @param {number} t Normalized time value to interpolate
|
|
94
|
+
* @param {number} x1 X-axis coordinate of the starting point of the arc
|
|
95
|
+
* @param {number} y1 Y-axis coordinate of the starting point of the arc
|
|
96
|
+
* @param {number} x2 X-axis coordinate of the ending point of the arc
|
|
97
|
+
* @param {number} y2 Y-axis coordinate of the ending point of the arc
|
|
98
|
+
* @param {number} rx X-radius of the ellipse
|
|
99
|
+
* @param {number} ry Y-radius of the ellipse
|
|
100
|
+
* @param {number} angle Rotation angle of the ellipse (in radians)
|
|
101
|
+
* @param {boolean} [largeArc=true] Flag indicating whether to draw the larger of the two possible arcs
|
|
102
|
+
* @param {boolean} [clockwise=true] Flag indicating the direction of the arc
|
|
103
|
+
* @returns {[number, number]} Interpolated coordinates on the arc
|
|
104
|
+
*/
|
|
105
|
+
export declare function arc(t: number, x1: number, y1: number, x2: number, y2: number, rx: number, ry: number, angle: number, largeArc?: boolean, clockwise?: boolean): [number, number];
|
|
62
106
|
export type FitInput = {
|
|
63
107
|
width: number;
|
|
64
108
|
height: number;
|
package/lib/geometry.js
CHANGED
|
@@ -20,10 +20,10 @@ export function toRadians(degrees) {
|
|
|
20
20
|
/**
|
|
21
21
|
* Calculate the angle from a point to another
|
|
22
22
|
*
|
|
23
|
-
* @param {number} x1 X
|
|
24
|
-
* @param {number} y1 Y
|
|
25
|
-
* @param {number} x2 X
|
|
26
|
-
* @param {number} y2 Y
|
|
23
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
24
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
25
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
26
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
27
27
|
* @returns {number} Angle
|
|
28
28
|
*/
|
|
29
29
|
export function angle(x1, y1, x2, y2) {
|
|
@@ -43,10 +43,10 @@ export function closestAngle(source, target) {
|
|
|
43
43
|
/**
|
|
44
44
|
* Calculate the distance between two points
|
|
45
45
|
*
|
|
46
|
-
* @param {number} x1 X
|
|
47
|
-
* @param {number} y1 Y
|
|
48
|
-
* @param {number} x2 X
|
|
49
|
-
* @param {number} y2 Y
|
|
46
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
47
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
48
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
49
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
50
50
|
* @returns {number} Computed distance
|
|
51
51
|
*/
|
|
52
52
|
export function distance(x1, y1, x2, y2) {
|
|
@@ -79,6 +79,103 @@ export function radToSphere(radius, phi, theta, target = { x: 0, y: 0, z: 0 }) {
|
|
|
79
79
|
target.z = radius * Math.sin(phi) * Math.cos(theta);
|
|
80
80
|
return target;
|
|
81
81
|
}
|
|
82
|
+
// *********************
|
|
83
|
+
// Curves
|
|
84
|
+
// *********************
|
|
85
|
+
/**
|
|
86
|
+
* Interpolate a point on an elliptical arc Cubic Bézier curve
|
|
87
|
+
*
|
|
88
|
+
* @param {number} t Normalized time value to interpolate
|
|
89
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
90
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
91
|
+
* @param {number} cpx1 X-axis coordinate of the first control point
|
|
92
|
+
* @param {number} cpy1 Y-axis coordinate of the first control point
|
|
93
|
+
* @param {number} cpx2 X-axis coordinate of the second control point
|
|
94
|
+
* @param {number} cpy2 Y-axis coordinate of the second control point
|
|
95
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
96
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
97
|
+
* @returns {[number, number]} Interpolated coordinates on the curve
|
|
98
|
+
*/
|
|
99
|
+
export function cubicBezier(t, x1, y1, cpx1, cpy1, cpx2, cpy2, x2, y2) {
|
|
100
|
+
const t2 = t * t;
|
|
101
|
+
const t3 = t2 * t;
|
|
102
|
+
const T = 1 - t;
|
|
103
|
+
const T2 = T * T;
|
|
104
|
+
const T3 = T2 * T;
|
|
105
|
+
const x = T3 * x1 + 3 * T2 * t * cpx1 + 3 * T * t2 * cpx2 + t3 * x2;
|
|
106
|
+
const y = T3 * y1 + 3 * T2 * t * cpy1 + 3 * T * t2 * cpy2 + t3 * y2;
|
|
107
|
+
return [x, y];
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Interpolate a point on an elliptical arc Quadratic Bézier curve
|
|
111
|
+
*
|
|
112
|
+
* @param {number} t Normalized time value to interpolate
|
|
113
|
+
* @param {number} x1 X-axis coordinate of the start point
|
|
114
|
+
* @param {number} y1 Y-axis coordinate of the start point
|
|
115
|
+
* @param {number} cpx X-axis coordinate of the control point
|
|
116
|
+
* @param {number} cpy Y-axis coordinate of the control point
|
|
117
|
+
* @param {number} x2 X-axis coordinate of the end point
|
|
118
|
+
* @param {number} y2 Y-axis coordinate of the end point
|
|
119
|
+
* @returns {[number, number]} Interpolated coordinates on the curve
|
|
120
|
+
*/
|
|
121
|
+
export function quadraticBesier(t, x1, y1, cpx, cpy, x2, y2) {
|
|
122
|
+
const t2 = t * t;
|
|
123
|
+
const T = 1 - t;
|
|
124
|
+
const T2 = T * T;
|
|
125
|
+
const x = T2 * x1 + 2 * T * t * cpx + t2 * x2;
|
|
126
|
+
const y = T2 * y1 + 2 * T * t * cpy + t2 * y2;
|
|
127
|
+
return [x, y];
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Interpolate a point on an elliptical arc
|
|
131
|
+
*
|
|
132
|
+
* @param {number} t Normalized time value to interpolate
|
|
133
|
+
* @param {number} x1 X-axis coordinate of the starting point of the arc
|
|
134
|
+
* @param {number} y1 Y-axis coordinate of the starting point of the arc
|
|
135
|
+
* @param {number} x2 X-axis coordinate of the ending point of the arc
|
|
136
|
+
* @param {number} y2 Y-axis coordinate of the ending point of the arc
|
|
137
|
+
* @param {number} rx X-radius of the ellipse
|
|
138
|
+
* @param {number} ry Y-radius of the ellipse
|
|
139
|
+
* @param {number} angle Rotation angle of the ellipse (in radians)
|
|
140
|
+
* @param {boolean} [largeArc=true] Flag indicating whether to draw the larger of the two possible arcs
|
|
141
|
+
* @param {boolean} [clockwise=true] Flag indicating the direction of the arc
|
|
142
|
+
* @returns {[number, number]} Interpolated coordinates on the arc
|
|
143
|
+
*/
|
|
144
|
+
export function arc(t, x1, y1, x2, y2, rx, ry, angle, largeArc = true, clockwise = true) {
|
|
145
|
+
const centerX = (x1 - x2) / 2;
|
|
146
|
+
const centerY = (y1 - y2) / 2;
|
|
147
|
+
const cosAngle = Math.cos(angle);
|
|
148
|
+
const sinAngle = Math.sin(angle);
|
|
149
|
+
const x1p = cosAngle * centerX + sinAngle * centerY;
|
|
150
|
+
const y1p = -sinAngle * centerX + cosAngle * centerY;
|
|
151
|
+
rx = Math.abs(rx);
|
|
152
|
+
ry = Math.abs(ry);
|
|
153
|
+
const lambda = x1p ** 2 / rx ** 2 + y1p ** 2 / ry ** 2;
|
|
154
|
+
if (lambda > 1) {
|
|
155
|
+
rx *= Math.sqrt(lambda);
|
|
156
|
+
ry *= Math.sqrt(lambda);
|
|
157
|
+
}
|
|
158
|
+
const sign = largeArc !== clockwise ? 1 : -1;
|
|
159
|
+
const factor = sign *
|
|
160
|
+
Math.sqrt(Math.max(0, (rx ** 2 * ry ** 2 - rx ** 2 * y1p ** 2 - ry ** 2 * x1p ** 2) / (rx ** 2 * y1p ** 2 + ry ** 2 * x1p ** 2)));
|
|
161
|
+
const cxp = (factor * rx * y1p) / ry;
|
|
162
|
+
const cyp = (-factor * ry * x1p) / rx;
|
|
163
|
+
const cx = cosAngle * cxp - sinAngle * cyp + (x1 + x2) / 2;
|
|
164
|
+
const cy = sinAngle * cxp + cosAngle * cyp + (y1 + y2) / 2;
|
|
165
|
+
const startAngle = Math.atan2((y1p - cyp) / ry, (x1p - cxp) / rx);
|
|
166
|
+
const endAngle = Math.atan2((-y1p - cyp) / ry, (-x1p - cxp) / rx);
|
|
167
|
+
let deltaAngle = endAngle - startAngle;
|
|
168
|
+
if (clockwise === false && deltaAngle > 0) {
|
|
169
|
+
deltaAngle -= 2 * PI;
|
|
170
|
+
}
|
|
171
|
+
else if (clockwise === true && deltaAngle < 0) {
|
|
172
|
+
deltaAngle += 2 * PI;
|
|
173
|
+
}
|
|
174
|
+
const theta = startAngle + t * deltaAngle;
|
|
175
|
+
const x = cx + rx * Math.cos(theta) * cosAngle - ry * Math.sin(theta) * sinAngle;
|
|
176
|
+
const y = cy + rx * Math.cos(theta) * sinAngle + ry * Math.sin(theta) * cosAngle;
|
|
177
|
+
return [x, y];
|
|
178
|
+
}
|
|
82
179
|
/**
|
|
83
180
|
* Make a target fit a container
|
|
84
181
|
*
|
package/lib/maths.d.ts
CHANGED
|
@@ -46,33 +46,33 @@ export declare function clamp(value: number, min?: number, max?: number): number
|
|
|
46
46
|
/**
|
|
47
47
|
* Linear interpolation between two values (lerping)
|
|
48
48
|
*
|
|
49
|
-
* @param {number}
|
|
50
|
-
* @param {number} min
|
|
51
|
-
* @param {number} max
|
|
49
|
+
* @param {number} t Normalized time value to interpolate
|
|
50
|
+
* @param {number} min Minimum value
|
|
51
|
+
* @param {number} max Maximum value
|
|
52
52
|
* @returns {number} Lerped value
|
|
53
53
|
*/
|
|
54
|
-
export declare function lerp(
|
|
54
|
+
export declare function lerp(t: number, min: number, max: number): number;
|
|
55
55
|
/**
|
|
56
56
|
* Triangular interpolation between two values
|
|
57
57
|
*
|
|
58
|
-
* @param {number}
|
|
58
|
+
* @param {number} t Normalized time value to interpolate
|
|
59
59
|
* @param {number} min Minimum value
|
|
60
60
|
* @param {number} max Maximum value
|
|
61
61
|
* @param {number} target Triangle target value
|
|
62
62
|
* @returns {number} Interpolated value
|
|
63
63
|
*/
|
|
64
|
-
export declare function triLerp(
|
|
64
|
+
export declare function triLerp(t: number, min: number, max: number, target: number): number;
|
|
65
65
|
/**
|
|
66
66
|
* Exponential interpolation between two values
|
|
67
67
|
*
|
|
68
|
-
* @param {number} value
|
|
68
|
+
* @param {number} t Normalized time value to interpolate
|
|
69
69
|
* @param {number} currentMin Lower bound of the value's current range
|
|
70
70
|
* @param {number} currentMax Upper bound of the value's current range
|
|
71
71
|
* @param {number} targetMin Lower bound of the value's target range
|
|
72
72
|
* @param {number} targetMax Upper bound of the value's target range
|
|
73
73
|
* @returns {number} Interpolated value
|
|
74
74
|
*/
|
|
75
|
-
export declare function expLerp(
|
|
75
|
+
export declare function expLerp(t: number, currentMin: number, currentMax: number, targetMin: number, targetMax: number): number;
|
|
76
76
|
/**
|
|
77
77
|
* Normalize a value between two bounds
|
|
78
78
|
*
|
package/lib/maths.js
CHANGED
|
@@ -62,40 +62,40 @@ export function clamp(value, min = 0, max = 1) {
|
|
|
62
62
|
/**
|
|
63
63
|
* Linear interpolation between two values (lerping)
|
|
64
64
|
*
|
|
65
|
-
* @param {number}
|
|
66
|
-
* @param {number} min
|
|
67
|
-
* @param {number} max
|
|
65
|
+
* @param {number} t Normalized time value to interpolate
|
|
66
|
+
* @param {number} min Minimum value
|
|
67
|
+
* @param {number} max Maximum value
|
|
68
68
|
* @returns {number} Lerped value
|
|
69
69
|
*/
|
|
70
|
-
export function lerp(
|
|
71
|
-
return min + (max - min) *
|
|
70
|
+
export function lerp(t, min, max) {
|
|
71
|
+
return min + (max - min) * t;
|
|
72
72
|
}
|
|
73
73
|
/**
|
|
74
74
|
* Triangular interpolation between two values
|
|
75
75
|
*
|
|
76
|
-
* @param {number}
|
|
76
|
+
* @param {number} t Normalized time value to interpolate
|
|
77
77
|
* @param {number} min Minimum value
|
|
78
78
|
* @param {number} max Maximum value
|
|
79
79
|
* @param {number} target Triangle target value
|
|
80
80
|
* @returns {number} Interpolated value
|
|
81
81
|
*/
|
|
82
|
-
export function triLerp(
|
|
82
|
+
export function triLerp(t, min, max, target) {
|
|
83
83
|
const x = Math.pow(1 + Math.abs(target - max) / Math.abs(target - min), -1);
|
|
84
|
-
return
|
|
84
|
+
return t <= x ? min - (min - target) * (t / x) : target - (target - max) * ((t - x) / (1 - x));
|
|
85
85
|
}
|
|
86
86
|
/**
|
|
87
87
|
* Exponential interpolation between two values
|
|
88
88
|
*
|
|
89
|
-
* @param {number} value
|
|
89
|
+
* @param {number} t Normalized time value to interpolate
|
|
90
90
|
* @param {number} currentMin Lower bound of the value's current range
|
|
91
91
|
* @param {number} currentMax Upper bound of the value's current range
|
|
92
92
|
* @param {number} targetMin Lower bound of the value's target range
|
|
93
93
|
* @param {number} targetMax Upper bound of the value's target range
|
|
94
94
|
* @returns {number} Interpolated value
|
|
95
95
|
*/
|
|
96
|
-
export function expLerp(
|
|
96
|
+
export function expLerp(t, currentMin, currentMax, targetMin, targetMax) {
|
|
97
97
|
return (targetMin *
|
|
98
|
-
Math.pow(targetMax / targetMin, (clamp(
|
|
98
|
+
Math.pow(targetMax / targetMin, (clamp(t, currentMin, currentMax) - currentMin) / (currentMax - currentMin)));
|
|
99
99
|
}
|
|
100
100
|
/**
|
|
101
101
|
* Normalize a value between two bounds
|
package/lib/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.promise.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.esnext.object.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/constants.ts","../src/types.ts","../src/geometry.ts","../src/maths.ts","../src/colors.ts","../src/dom.ts","../src/files.ts","../src/functions.ts","../src/prng.ts","../src/query.ts","../src/random.ts","../src/strings.ts","../src/classes/_pool.ts","../src/classes/color-scale.ts","../src/classes/frame-rate.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","886e50ef125efb7878f744e86908884c0133e7a6d9d80013f421b0cd8fb2af94",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"76f838d5d49b65de83bc345c04aa54c62a3cfdb72a477dc0c0fce89a30596c30","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"45cf2eb6cd6d7189ff80c87564aaa4fea53eb4c3da65d5e641127373de571cd9","signature":"0b4eec0a8599d6713095e0af18ab7e6204b675cd9fe8b2d02d04d66746e586e1"},{"version":"4081f0b74378ad72b7d0437cc085790616e863a2237409408b4ebfefb1dcb565","signature":"b10a0e63e1d8780944a62d94f79acf7b71b07bccd70934be176a31bb44328e16"},{"version":"fa1ce8e107edcf5402efb7d84813129eb9ae73a96b23bf11598a5eef79a3d3f9","signature":"85cbbc943748ffbd0c7170ba038c9c651fdce4dfbb127755b42e59f5a8e9edf2"},{"version":"5f0fcfcbcc870dcdeb52d296b5bd1901a9cd04a1616cd7f1bcf8e47bf3a8cc47","signature":"a0ff24ef84faa00948def16d69f7a1604e4f52088597b022145265391b5561ab"},{"version":"72cb034a46d7ab7bc377e5492915bd65baceac0fa3f960861c52e5a166818f7d","signature":"f050bc3aefd3841cd01f8ae29fa09bf78246975c5983da82a5d34a35bc342e84"},{"version":"2319a6f113ef4cc739b0144f40434149fc6b681af1c7a0868c347c167cf21285","signature":"309de51e4d0b348939ba9d776c0ba208b4d4b8347de072a8af7ea43d6339233a"},{"version":"d52ff004bb7cd1c00d0a179f4b0893ddf84cdafc6830b2ceafc814804dfff9a5","signature":"4d71e33886aa72fef5fe425d76a3557f6553ee0b08863733656d58b91b8a6e77"},{"version":"c7b93e1b93c8a738763ad4faa9c78302ccd8a06641037582bd935b8eb1aacce3","signature":"d2951601eea48e682032e8c5bd5e7a70c64abe03a57a0573abdea62100e38f82"},{"version":"abf157af4c9f3385a2f62d2fd751d67e868bd66bde489ca17d8bea83bfe0e9e5","signature":"3244739232ed0f77eb4aa4cd9af4feddcf5c3eabdf4f6c3388a5a75569935adb"},{"version":"10264fe1de3f0382802714f56b647344e758d682320b9605b0cd133a5322b7eb","signature":"027a0b75ecc4aca51f293dab58d070cd0d844e64c1557fcefa3581617f0b9733"},{"version":"3f4f97806466e0c4f906c8acbdd8f272362a2f6ccd18bbfdbb0886b4f44a9015","signature":"fb0ac8ea5e50c65d0a51af06faa24b82ce90fdbd2ef6ce6db5d773433e4c1b1a"},{"version":"fb82dc4ee7474b17ee18f8f486c72dc08d4a4a58de1fa5bd848f605dc35aea56","signature":"4dfc999d370f6f4e1172db031360eb34235ed377f9556010e0abba18df13a4be"},{"version":"7bc4d01db2f1ddfa2e7df8296e45b5f4403acb4acc46b8fd9a558308c58ede73","signature":"ed5b0fb47fcfa158461fd0d3dad57a8c0ddc976112798b8cfbfcf68e43550a35"},{"version":"1595db0c3abc543ff883ee0aa1b929aa8e86c03a5f19c5448a54f179064cc239","signature":"261ef4a665f5a6e9e28dfee9c2937d46b3b4958aad127d1d21b22b38a5a21449"},{"version":"1bb614fee833c30ffdc7ccac0743f50bc58ad8da274759973b1f8ee223a5f482","signature":"658f275e39f25ec9655c143d4604e7aca92cbd4725466976160f1b1d82e22096"},"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba",{"version":"41fb2a1c108fbf46609ce5a451b7ec78eb9b5ada95fd5b94643e4b26397de0b3","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"a1d2988ad9d2aef7b9915a22b5e52c165c83a878f2851c35621409046bbe3c05","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","8806ae97308ef26363bd7ec8071bca4d07fb575f905ee3d8a91aff226df6d618","af5bf1db6f1804fb0069039ae77a05d60133c77a2158d9635ea27b6bb2828a8f","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"674168aa3db414ea0a19b2a31d901b2d49705c7a495e43ffdc96928543010f8c","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","313a0b063f5188037db113509de1b934a0e286f14e9479af24fada241435e707","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","87ef1a23caa071b07157c72077fa42b86d30568f9dc9e31eed24d5d14fc30ba8","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"0666f4c99b8688c7be5956df8fecf5d1779d3b22f8f2a88258ae7072c7b6026f","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7424817d5eb498771e6d1808d726ec38f75d2eaf3fa359edd5c0c540c52725c1","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","37dc027f781c75f0f546e329cfac7cf92a6b289f42458f47a9adc25e516b6839",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447"],"root":[[70,84]],"options":{"allowJs":true,"checkJs":true,"declaration":true,"module":99,"outDir":"./","skipLibCheck":true,"strict":true,"target":99},"fileIdsList":[[85],[120],[121,126,154],[122,133,134,141,151,162],[122,123,133,141],[124,163],[125,126,134,142],[126,151,159],[127,129,133,141],[120,128],[129,130],[133],[131,133],[120,133],[133,134,135,151,162],[133,134,135,148,151,154],[118,121,167],[129,133,136,141,151,162],[133,134,136,137,141,151,159,162],[136,138,151,159,162],[85,86,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[133,139],[140,162,167],[129,133,141,151],[142],[143],[120,144],[145,161,167],[146],[147],[133,148,149],[148,150,163,165],[121,133,151,152,153,154],[121,151,153],[151,152],[154],[155],[120,151],[133,157,158],[157,158],[126,141,151,159],[160],[141,161],[121,136,147,162],[126,163],[151,164],[140,165],[166],[121,126,133,135,144,151,162,165,167],[151,168],[95,99,162],[95,151,162],[90],[92,95,159,162],[141,159],[170],[90,170],[92,95,141,162],[87,88,91,94,121,133,151,162],[87,93],[91,95,121,154,162,170],[121,170],[111,121,170],[89,90,170],[95],[89,90,91,92,93,94,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,112,113,114,115,116,117],[95,102,103],[93,95,103,104],[94],[87,90,95],[95,99,103,104],[99],[93,95,98,162],[87,92,93,95,99,102],[121,151],[90,95,111,121,167,170],[71,73,74],[77],[70,71,72,73],[71],[70,71],[71,72],[70]],"referencedMap":[[85,1],[86,1],[120,2],[121,3],[122,4],[123,5],[124,6],[125,7],[126,8],[127,9],[128,10],[129,11],[130,11],[132,12],[131,13],[133,14],[134,15],[135,16],[119,17],[136,18],[137,19],[138,20],[170,21],[139,22],[140,23],[141,24],[142,25],[143,26],[144,27],[145,28],[146,29],[147,30],[148,31],[149,31],[150,32],[151,33],[153,34],[152,35],[154,36],[155,37],[156,38],[157,39],[158,40],[159,41],[160,42],[161,43],[162,44],[163,45],[164,46],[165,47],[166,48],[167,49],[168,50],[102,51],[109,52],[101,51],[116,53],[93,54],[92,55],[115,56],[110,57],[113,58],[95,59],[94,60],[90,61],[89,62],[112,63],[91,64],[96,65],[100,65],[118,66],[117,65],[104,67],[105,68],[107,69],[103,70],[106,71],[111,56],[98,72],[99,73],[108,74],[88,75],[114,76],[83,77],[84,78],[74,79],[77,80],[72,81],[80,82],[71,83]],"exportedModulesMap":[[85,1],[86,1],[120,2],[121,3],[122,4],[123,5],[124,6],[125,7],[126,8],[127,9],[128,10],[129,11],[130,11],[132,12],[131,13],[133,14],[134,15],[135,16],[119,17],[136,18],[137,19],[138,20],[170,21],[139,22],[140,23],[141,24],[142,25],[143,26],[144,27],[145,28],[146,29],[147,30],[148,31],[149,31],[150,32],[151,33],[153,34],[152,35],[154,36],[155,37],[156,38],[157,39],[158,40],[159,41],[160,42],[161,43],[162,44],[163,45],[164,46],[165,47],[166,48],[167,49],[168,50],[102,51],[109,52],[101,51],[116,53],[93,54],[92,55],[115,56],[110,57],[113,58],[95,59],[94,60],[90,61],[89,62],[112,63],[91,64],[96,65],[100,65],[118,66],[117,65],[104,67],[105,68],[107,69],[103,70],[106,71],[111,56],[98,72],[99,73],[108,74],[88,75],[114,76],[83,80],[74,80],[77,80],[72,80],[80,80],[71,83]],"semanticDiagnosticsPerFile":[85,86,120,121,122,123,124,125,126,127,128,129,130,132,131,133,134,135,119,169,136,137,138,170,139,140,141,142,143,144,145,146,147,148,149,150,151,153,152,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,68,69,12,13,15,14,2,16,17,18,19,20,21,22,23,3,24,4,25,29,26,27,28,30,31,32,5,33,34,35,36,6,40,37,38,39,41,7,42,47,48,43,44,45,46,8,52,49,50,51,53,9,54,55,56,59,57,58,60,61,10,1,62,11,66,64,63,67,65,102,109,101,116,93,92,115,110,113,95,94,90,89,112,91,96,97,100,87,118,117,104,105,107,103,106,111,98,99,108,88,114,82,83,84,74,70,75,76,77,72,73,78,79,80,81,71]},"version":"5.4.2"}
|
|
1
|
+
{"program":{"fileNames":["../node_modules/typescript/lib/lib.es5.d.ts","../node_modules/typescript/lib/lib.es2015.d.ts","../node_modules/typescript/lib/lib.es2016.d.ts","../node_modules/typescript/lib/lib.es2017.d.ts","../node_modules/typescript/lib/lib.es2018.d.ts","../node_modules/typescript/lib/lib.es2019.d.ts","../node_modules/typescript/lib/lib.es2020.d.ts","../node_modules/typescript/lib/lib.es2021.d.ts","../node_modules/typescript/lib/lib.es2022.d.ts","../node_modules/typescript/lib/lib.es2023.d.ts","../node_modules/typescript/lib/lib.esnext.d.ts","../node_modules/typescript/lib/lib.dom.d.ts","../node_modules/typescript/lib/lib.dom.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.core.d.ts","../node_modules/typescript/lib/lib.es2015.collection.d.ts","../node_modules/typescript/lib/lib.es2015.generator.d.ts","../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../node_modules/typescript/lib/lib.es2015.promise.d.ts","../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../node_modules/typescript/lib/lib.es2016.intl.d.ts","../node_modules/typescript/lib/lib.es2017.date.d.ts","../node_modules/typescript/lib/lib.es2017.object.d.ts","../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2017.string.d.ts","../node_modules/typescript/lib/lib.es2017.intl.d.ts","../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../node_modules/typescript/lib/lib.es2018.intl.d.ts","../node_modules/typescript/lib/lib.es2018.promise.d.ts","../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../node_modules/typescript/lib/lib.es2019.array.d.ts","../node_modules/typescript/lib/lib.es2019.object.d.ts","../node_modules/typescript/lib/lib.es2019.string.d.ts","../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../node_modules/typescript/lib/lib.es2019.intl.d.ts","../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../node_modules/typescript/lib/lib.es2020.date.d.ts","../node_modules/typescript/lib/lib.es2020.promise.d.ts","../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2020.string.d.ts","../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../node_modules/typescript/lib/lib.es2020.intl.d.ts","../node_modules/typescript/lib/lib.es2020.number.d.ts","../node_modules/typescript/lib/lib.es2021.promise.d.ts","../node_modules/typescript/lib/lib.es2021.string.d.ts","../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../node_modules/typescript/lib/lib.es2021.intl.d.ts","../node_modules/typescript/lib/lib.es2022.array.d.ts","../node_modules/typescript/lib/lib.es2022.error.d.ts","../node_modules/typescript/lib/lib.es2022.intl.d.ts","../node_modules/typescript/lib/lib.es2022.object.d.ts","../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../node_modules/typescript/lib/lib.es2022.string.d.ts","../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../node_modules/typescript/lib/lib.es2023.array.d.ts","../node_modules/typescript/lib/lib.es2023.collection.d.ts","../node_modules/typescript/lib/lib.esnext.collection.d.ts","../node_modules/typescript/lib/lib.esnext.intl.d.ts","../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../node_modules/typescript/lib/lib.esnext.promise.d.ts","../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../node_modules/typescript/lib/lib.esnext.object.d.ts","../node_modules/typescript/lib/lib.decorators.d.ts","../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../src/constants.ts","../src/types.ts","../src/geometry.ts","../src/maths.ts","../src/colors.ts","../src/dom.ts","../src/files.ts","../src/functions.ts","../src/prng.ts","../src/query.ts","../src/random.ts","../src/strings.ts","../src/classes/_pool.ts","../src/classes/color-scale.ts","../src/classes/frame-rate.ts","../node_modules/@types/node/assert.d.ts","../node_modules/@types/node/assert/strict.d.ts","../node_modules/undici-types/header.d.ts","../node_modules/undici-types/readable.d.ts","../node_modules/undici-types/file.d.ts","../node_modules/undici-types/fetch.d.ts","../node_modules/undici-types/formdata.d.ts","../node_modules/undici-types/connector.d.ts","../node_modules/undici-types/client.d.ts","../node_modules/undici-types/errors.d.ts","../node_modules/undici-types/dispatcher.d.ts","../node_modules/undici-types/global-dispatcher.d.ts","../node_modules/undici-types/global-origin.d.ts","../node_modules/undici-types/pool-stats.d.ts","../node_modules/undici-types/pool.d.ts","../node_modules/undici-types/handlers.d.ts","../node_modules/undici-types/balanced-pool.d.ts","../node_modules/undici-types/agent.d.ts","../node_modules/undici-types/mock-interceptor.d.ts","../node_modules/undici-types/mock-agent.d.ts","../node_modules/undici-types/mock-client.d.ts","../node_modules/undici-types/mock-pool.d.ts","../node_modules/undici-types/mock-errors.d.ts","../node_modules/undici-types/proxy-agent.d.ts","../node_modules/undici-types/api.d.ts","../node_modules/undici-types/cookies.d.ts","../node_modules/undici-types/patch.d.ts","../node_modules/undici-types/filereader.d.ts","../node_modules/undici-types/diagnostics-channel.d.ts","../node_modules/undici-types/websocket.d.ts","../node_modules/undici-types/content-type.d.ts","../node_modules/undici-types/cache.d.ts","../node_modules/undici-types/interceptors.d.ts","../node_modules/undici-types/index.d.ts","../node_modules/@types/node/globals.d.ts","../node_modules/@types/node/async_hooks.d.ts","../node_modules/@types/node/buffer.d.ts","../node_modules/@types/node/child_process.d.ts","../node_modules/@types/node/cluster.d.ts","../node_modules/@types/node/console.d.ts","../node_modules/@types/node/constants.d.ts","../node_modules/@types/node/crypto.d.ts","../node_modules/@types/node/dgram.d.ts","../node_modules/@types/node/diagnostics_channel.d.ts","../node_modules/@types/node/dns.d.ts","../node_modules/@types/node/dns/promises.d.ts","../node_modules/@types/node/domain.d.ts","../node_modules/@types/node/dom-events.d.ts","../node_modules/@types/node/events.d.ts","../node_modules/@types/node/fs.d.ts","../node_modules/@types/node/fs/promises.d.ts","../node_modules/@types/node/http.d.ts","../node_modules/@types/node/http2.d.ts","../node_modules/@types/node/https.d.ts","../node_modules/@types/node/inspector.d.ts","../node_modules/@types/node/module.d.ts","../node_modules/@types/node/net.d.ts","../node_modules/@types/node/os.d.ts","../node_modules/@types/node/path.d.ts","../node_modules/@types/node/perf_hooks.d.ts","../node_modules/@types/node/process.d.ts","../node_modules/@types/node/punycode.d.ts","../node_modules/@types/node/querystring.d.ts","../node_modules/@types/node/readline.d.ts","../node_modules/@types/node/readline/promises.d.ts","../node_modules/@types/node/repl.d.ts","../node_modules/@types/node/stream.d.ts","../node_modules/@types/node/stream/promises.d.ts","../node_modules/@types/node/stream/consumers.d.ts","../node_modules/@types/node/stream/web.d.ts","../node_modules/@types/node/string_decoder.d.ts","../node_modules/@types/node/test.d.ts","../node_modules/@types/node/timers.d.ts","../node_modules/@types/node/timers/promises.d.ts","../node_modules/@types/node/tls.d.ts","../node_modules/@types/node/trace_events.d.ts","../node_modules/@types/node/tty.d.ts","../node_modules/@types/node/url.d.ts","../node_modules/@types/node/util.d.ts","../node_modules/@types/node/v8.d.ts","../node_modules/@types/node/vm.d.ts","../node_modules/@types/node/wasi.d.ts","../node_modules/@types/node/worker_threads.d.ts","../node_modules/@types/node/zlib.d.ts","../node_modules/@types/node/globals.global.d.ts","../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"824cb491a40f7e8fdeb56f1df5edf91b23f3e3ee6b4cde84d4a99be32338faee","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","886e50ef125efb7878f744e86908884c0133e7a6d9d80013f421b0cd8fb2af94",{"version":"87d693a4920d794a73384b3c779cadcb8548ac6945aa7a925832fe2418c9527a","affectsGlobalScope":true},{"version":"76f838d5d49b65de83bc345c04aa54c62a3cfdb72a477dc0c0fce89a30596c30","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"ea011c76963fb15ef1cdd7ce6a6808b46322c527de2077b6cfdf23ae6f5f9ec7","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"b20fe0eca9a4e405f1a5ae24a2b3290b37cf7f21eba6cbe4fc3fab979237d4f3","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"5e07ed3809d48205d5b985642a59f2eba47c402374a7cf8006b686f79efadcbd","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"8073890e29d2f46fdbc19b8d6d2eb9ea58db9a2052f8640af20baff9afbc8640","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true},{"version":"956d27abdea9652e8368ce029bb1e0b9174e9678a273529f426df4b3d90abd60","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"d8670852241d4c6e03f2b89d67497a4bbefe29ecaa5a444e2c11a9b05e6fccc6","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"b1cb28af0c891c8c96b2d6b7be76bd394fddcfdb4709a20ba05a7c1605eea0f9","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"15b98a533864d324e5f57cd3cfc0579b231df58c1c0f6063ea0fcb13c3c74ff9","affectsGlobalScope":true},{"version":"ac77cb3e8c6d3565793eb90a8373ee8033146315a3dbead3bde8db5eaf5e5ec6","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"2fef54945a13095fdb9b84f705f2b5994597640c46afeb2ce78352fab4cb3279","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"45cf2eb6cd6d7189ff80c87564aaa4fea53eb4c3da65d5e641127373de571cd9","signature":"0b4eec0a8599d6713095e0af18ab7e6204b675cd9fe8b2d02d04d66746e586e1"},{"version":"4081f0b74378ad72b7d0437cc085790616e863a2237409408b4ebfefb1dcb565","signature":"b10a0e63e1d8780944a62d94f79acf7b71b07bccd70934be176a31bb44328e16"},{"version":"6b72071c318f9d58e578adb9b1fc7e8efbcd97ac06d7a5ebe664aaeb7203ea89","signature":"8ca64610bb38e31a24b92d1cbaa1fed6150bc3ea77a43b1bbda8478a356eaf8b"},{"version":"df8f01a1ba4f3369c8b15d38fb6a9f0fd839e34ef76904deab2aaf996740aac8","signature":"b91d086d99300009fd42a09c07971ccbdc42d8ad2f92e6991fe16dc6a59a20f5"},{"version":"72cb034a46d7ab7bc377e5492915bd65baceac0fa3f960861c52e5a166818f7d","signature":"f050bc3aefd3841cd01f8ae29fa09bf78246975c5983da82a5d34a35bc342e84"},{"version":"2319a6f113ef4cc739b0144f40434149fc6b681af1c7a0868c347c167cf21285","signature":"309de51e4d0b348939ba9d776c0ba208b4d4b8347de072a8af7ea43d6339233a"},{"version":"d52ff004bb7cd1c00d0a179f4b0893ddf84cdafc6830b2ceafc814804dfff9a5","signature":"4d71e33886aa72fef5fe425d76a3557f6553ee0b08863733656d58b91b8a6e77"},{"version":"c7b93e1b93c8a738763ad4faa9c78302ccd8a06641037582bd935b8eb1aacce3","signature":"d2951601eea48e682032e8c5bd5e7a70c64abe03a57a0573abdea62100e38f82"},{"version":"abf157af4c9f3385a2f62d2fd751d67e868bd66bde489ca17d8bea83bfe0e9e5","signature":"3244739232ed0f77eb4aa4cd9af4feddcf5c3eabdf4f6c3388a5a75569935adb"},{"version":"10264fe1de3f0382802714f56b647344e758d682320b9605b0cd133a5322b7eb","signature":"027a0b75ecc4aca51f293dab58d070cd0d844e64c1557fcefa3581617f0b9733"},{"version":"3f4f97806466e0c4f906c8acbdd8f272362a2f6ccd18bbfdbb0886b4f44a9015","signature":"fb0ac8ea5e50c65d0a51af06faa24b82ce90fdbd2ef6ce6db5d773433e4c1b1a"},{"version":"fb82dc4ee7474b17ee18f8f486c72dc08d4a4a58de1fa5bd848f605dc35aea56","signature":"4dfc999d370f6f4e1172db031360eb34235ed377f9556010e0abba18df13a4be"},{"version":"7bc4d01db2f1ddfa2e7df8296e45b5f4403acb4acc46b8fd9a558308c58ede73","signature":"ed5b0fb47fcfa158461fd0d3dad57a8c0ddc976112798b8cfbfcf68e43550a35"},{"version":"1595db0c3abc543ff883ee0aa1b929aa8e86c03a5f19c5448a54f179064cc239","signature":"261ef4a665f5a6e9e28dfee9c2937d46b3b4958aad127d1d21b22b38a5a21449"},{"version":"1bb614fee833c30ffdc7ccac0743f50bc58ad8da274759973b1f8ee223a5f482","signature":"658f275e39f25ec9655c143d4604e7aca92cbd4725466976160f1b1d82e22096"},"efc7d584a33fe3422847783d228f315c4cd1afe74bd7cf8e3f0e4c1125129fef","7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","7180c03fd3cb6e22f911ce9ba0f8a7008b1a6ddbe88ccf16a9c8140ef9ac1686","25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","54cb85a47d760da1c13c00add10d26b5118280d44d58e6908d8e89abbd9d7725","3e4825171442666d31c845aeb47fcd34b62e14041bb353ae2b874285d78482aa","c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","a967bfe3ad4e62243eb604bf956101e4c740f5921277c60debaf325c1320bf88","e9775e97ac4877aebf963a0289c81abe76d1ec9a2a7778dbe637e5151f25c5f3","471e1da5a78350bc55ef8cef24eb3aca6174143c281b8b214ca2beda51f5e04a","cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","db3435f3525cd785bf21ec6769bf8da7e8a776be1a99e2e7efb5f244a2ef5fee","c3b170c45fc031db31f782e612adf7314b167e60439d304b49e704010e7bafe5","40383ebef22b943d503c6ce2cb2e060282936b952a01bea5f9f493d5fb487cc7","4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","3a84b7cb891141824bd00ef8a50b6a44596aded4075da937f180c90e362fe5f6","13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","33203609eba548914dc83ddf6cadbc0bcb6e8ef89f6d648ca0908ae887f9fcc5","0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","9f0a92164925aa37d4a5d9dd3e0134cff8177208dba55fd2310cd74beea40ee2","8bfdb79bf1a9d435ec48d9372dc93291161f152c0865b81fc0b2694aedb4578d","2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","d32275be3546f252e3ad33976caf8c5e842c09cb87d468cb40d5f4cf092d1acc","4a0c3504813a3289f7fb1115db13967c8e004aa8e4f8a9021b95285502221bd1",{"version":"a14ed46fa3f5ffc7a8336b497cd07b45c2084213aaca933a22443fcb2eef0d07","affectsGlobalScope":true},"cce1f5f86974c1e916ec4a8cab6eec9aa8e31e8148845bf07fbaa8e1d97b1a2c",{"version":"7fd7fcbf021a5845bdd9397d4649fcf2fe17152d2098140fc723099a215d19ad","affectsGlobalScope":true},"df3389f71a71a38bc931aaf1ef97a65fada98f0a27f19dd12f8b8de2b0f4e461","7b43160a49cf2c6082da0465876c4a0b164e160b81187caeb0a6ca7a281e85ba",{"version":"41fb2a1c108fbf46609ce5a451b7ec78eb9b5ada95fd5b94643e4b26397de0b3","affectsGlobalScope":true},"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb",{"version":"a1d2988ad9d2aef7b9915a22b5e52c165c83a878f2851c35621409046bbe3c05","affectsGlobalScope":true},"bd3f5d05b6b5e4bfcea7739a45f3ffb4a7f4a3442ba7baf93e0200799285b8f1","4c775c2fccabf49483c03cd5e3673f87c1ffb6079d98e7b81089c3def79e29c6","8806ae97308ef26363bd7ec8071bca4d07fb575f905ee3d8a91aff226df6d618","af5bf1db6f1804fb0069039ae77a05d60133c77a2158d9635ea27b6bb2828a8f","b7fe70be794e13d1b7940e318b8770cd1fb3eced7707805318a2e3aaac2c3e9e",{"version":"2c71199d1fc83bf17636ad5bf63a945633406b7b94887612bba4ef027c662b3e","affectsGlobalScope":true},{"version":"674168aa3db414ea0a19b2a31d901b2d49705c7a495e43ffdc96928543010f8c","affectsGlobalScope":true},"fe1fd6afdfe77976d4c702f3746c05fb05a7e566845c890e0e970fe9376d6a90","313a0b063f5188037db113509de1b934a0e286f14e9479af24fada241435e707","afb1701fd4be413a8a5a88df6befdd4510c30a31372c07a4138facf61594c66d","87ef1a23caa071b07157c72077fa42b86d30568f9dc9e31eed24d5d14fc30ba8","396a8939b5e177542bdf9b5262b4eee85d29851b2d57681fa9d7eae30e225830","21773f5ac69ddf5a05636ba1f50b5239f4f2d27e4420db147fc2f76a5ae598ac",{"version":"ea455cc68871b049bcecd9f56d4cf27b852d6dafd5e3b54468ca87cc11604e4d","affectsGlobalScope":true},"c07146dbbbd8b347241b5df250a51e48f2d7bef19b1e187b1a3f20c849988ff1","45b1053e691c5af9bfe85060a3e1542835f8d84a7e6e2e77ca305251eda0cb3c","0f05c06ff6196958d76b865ae17245b52d8fe01773626ac3c43214a2458ea7b7",{"version":"ae5507fc333d637dec9f37c6b3f4d423105421ea2820a64818de55db85214d66","affectsGlobalScope":true},{"version":"0666f4c99b8688c7be5956df8fecf5d1779d3b22f8f2a88258ae7072c7b6026f","affectsGlobalScope":true},"8abd0566d2854c4bd1c5e48e05df5c74927187f1541e6770001d9637ac41542e","54e854615c4eafbdd3fd7688bd02a3aafd0ccf0e87c98f79d3e9109f047ce6b8","d8dba11dc34d50cb4202de5effa9a1b296d7a2f4a029eec871f894bddfb6430d","8b71dd18e7e63b6f991b511a201fad7c3bf8d1e0dd98acb5e3d844f335a73634","01d8e1419c84affad359cc240b2b551fb9812b450b4d3d456b64cda8102d4f60","8221b00f271cf7f535a8eeec03b0f80f0929c7a16116e2d2df089b41066de69b","269929a24b2816343a178008ac9ae9248304d92a8ba8e233055e0ed6dbe6ef71","93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","7424817d5eb498771e6d1808d726ec38f75d2eaf3fa359edd5c0c540c52725c1","9a9634296cca836c3308923ba7aa094fa6ed76bb1e366d8ddcf5c65888ab1024",{"version":"bddce945d552a963c9733db106b17a25474eefcab7fc990157a2134ef55d4954","affectsGlobalScope":true},{"version":"7052b7b0c3829df3b4985bab2fd74531074b4835d5a7b263b75c82f0916ad62f","affectsGlobalScope":true},"aa34c3aa493d1c699601027c441b9664547c3024f9dbab1639df7701d63d18fa","4b55240c2a03b2c71e98a7fc528b16136faa762211c92e781a01c37821915ea6","7c651f8dce91a927ab62925e73f190763574c46098f2b11fb8ddc1b147a6709a","7440ab60f4cb031812940cc38166b8bb6fbf2540cfe599f87c41c08011f0c1df",{"version":"94c086dff8dbc5998749326bc69b520e8e4273fb5b7b58b50e0210e0885dfcde","affectsGlobalScope":true},{"version":"f5b5dc128973498b75f52b1b8c2d5f8629869104899733ae485100c2309b4c12","affectsGlobalScope":true},"ebe5facd12fd7745cda5f4bc3319f91fb29dc1f96e57e9c6f8b260a7cc5b67ee","79bad8541d5779c85e82a9fb119c1fe06af77a71cc40f869d62ad379473d4b75","37dc027f781c75f0f546e329cfac7cf92a6b289f42458f47a9adc25e516b6839",{"version":"629d20681ca284d9e38c0a019f647108f5fe02f9c59ac164d56f5694fc3faf4d","affectsGlobalScope":true},"e7dbf5716d76846c7522e910896c5747b6df1abd538fee8f5291bdc843461795",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"b510d0a18e3db42ac9765d26711083ec1e8b4e21caaca6dc4d25ae6e8623f447"],"root":[[70,84]],"options":{"allowJs":true,"checkJs":true,"declaration":true,"module":99,"outDir":"./","skipLibCheck":true,"strict":true,"target":99},"fileIdsList":[[85],[120],[121,126,154],[122,133,134,141,151,162],[122,123,133,141],[124,163],[125,126,134,142],[126,151,159],[127,129,133,141],[120,128],[129,130],[133],[131,133],[120,133],[133,134,135,151,162],[133,134,135,148,151,154],[118,121,167],[129,133,136,141,151,162],[133,134,136,137,141,151,159,162],[136,138,151,159,162],[85,86,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[133,139],[140,162,167],[129,133,141,151],[142],[143],[120,144],[145,161,167],[146],[147],[133,148,149],[148,150,163,165],[121,133,151,152,153,154],[121,151,153],[151,152],[154],[155],[120,151],[133,157,158],[157,158],[126,141,151,159],[160],[141,161],[121,136,147,162],[126,163],[151,164],[140,165],[166],[121,126,133,135,144,151,162,165,167],[151,168],[95,99,162],[95,151,162],[90],[92,95,159,162],[141,159],[170],[90,170],[92,95,141,162],[87,88,91,94,121,133,151,162],[87,93],[91,95,121,154,162,170],[121,170],[111,121,170],[89,90,170],[95],[89,90,91,92,93,94,95,96,97,99,100,101,102,103,104,105,106,107,108,109,110,112,113,114,115,116,117],[95,102,103],[93,95,103,104],[94],[87,90,95],[95,99,103,104],[99],[93,95,98,162],[87,92,93,95,99,102],[121,151],[90,95,111,121,167,170],[71,73,74],[77],[70,71,72,73],[71],[70,71],[71,72],[70]],"referencedMap":[[85,1],[86,1],[120,2],[121,3],[122,4],[123,5],[124,6],[125,7],[126,8],[127,9],[128,10],[129,11],[130,11],[132,12],[131,13],[133,14],[134,15],[135,16],[119,17],[136,18],[137,19],[138,20],[170,21],[139,22],[140,23],[141,24],[142,25],[143,26],[144,27],[145,28],[146,29],[147,30],[148,31],[149,31],[150,32],[151,33],[153,34],[152,35],[154,36],[155,37],[156,38],[157,39],[158,40],[159,41],[160,42],[161,43],[162,44],[163,45],[164,46],[165,47],[166,48],[167,49],[168,50],[102,51],[109,52],[101,51],[116,53],[93,54],[92,55],[115,56],[110,57],[113,58],[95,59],[94,60],[90,61],[89,62],[112,63],[91,64],[96,65],[100,65],[118,66],[117,65],[104,67],[105,68],[107,69],[103,70],[106,71],[111,56],[98,72],[99,73],[108,74],[88,75],[114,76],[83,77],[84,78],[74,79],[77,80],[72,81],[80,82],[71,83]],"exportedModulesMap":[[85,1],[86,1],[120,2],[121,3],[122,4],[123,5],[124,6],[125,7],[126,8],[127,9],[128,10],[129,11],[130,11],[132,12],[131,13],[133,14],[134,15],[135,16],[119,17],[136,18],[137,19],[138,20],[170,21],[139,22],[140,23],[141,24],[142,25],[143,26],[144,27],[145,28],[146,29],[147,30],[148,31],[149,31],[150,32],[151,33],[153,34],[152,35],[154,36],[155,37],[156,38],[157,39],[158,40],[159,41],[160,42],[161,43],[162,44],[163,45],[164,46],[165,47],[166,48],[167,49],[168,50],[102,51],[109,52],[101,51],[116,53],[93,54],[92,55],[115,56],[110,57],[113,58],[95,59],[94,60],[90,61],[89,62],[112,63],[91,64],[96,65],[100,65],[118,66],[117,65],[104,67],[105,68],[107,69],[103,70],[106,71],[111,56],[98,72],[99,73],[108,74],[88,75],[114,76],[83,80],[74,80],[77,80],[72,80],[80,80],[71,83]],"semanticDiagnosticsPerFile":[85,86,120,121,122,123,124,125,126,127,128,129,130,132,131,133,134,135,119,169,136,137,138,170,139,140,141,142,143,144,145,146,147,148,149,150,151,153,152,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,68,69,12,13,15,14,2,16,17,18,19,20,21,22,23,3,24,4,25,29,26,27,28,30,31,32,5,33,34,35,36,6,40,37,38,39,41,7,42,47,48,43,44,45,46,8,52,49,50,51,53,9,54,55,56,59,57,58,60,61,10,1,62,11,66,64,63,67,65,102,109,101,116,93,92,115,110,113,95,94,90,89,112,91,96,97,100,87,118,117,104,105,107,103,106,111,98,99,108,88,114,82,83,84,74,70,75,76,77,72,73,78,79,80,81,71]},"version":"5.4.2"}
|