curvy 1.0.3 → 1.0.4

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 (77) hide show
  1. package/dist/curve/cubic2d.d.mts +2 -2
  2. package/dist/curve/cubic2d.d.ts +2 -2
  3. package/dist/curve/cubic2d.mjs +5 -4
  4. package/dist/curve/linear2d.d.mts +2 -2
  5. package/dist/curve/linear2d.d.ts +2 -2
  6. package/dist/curve/linear2d.mjs +4 -3
  7. package/dist/curve/quadratic2d.d.mts +2 -2
  8. package/dist/curve/quadratic2d.d.ts +2 -2
  9. package/dist/curve/quadratic2d.mjs +5 -4
  10. package/dist/interval.d.mts +1 -1
  11. package/dist/interval.d.ts +1 -1
  12. package/dist/interval.mjs +2 -1
  13. package/dist/matrix/matrix2x2.d.mts +1 -1
  14. package/dist/matrix/matrix2x2.d.ts +1 -1
  15. package/dist/matrix/matrix2x2.mjs +4 -3
  16. package/dist/matrix/matrix3x3.d.mts +2 -2
  17. package/dist/matrix/matrix3x3.d.ts +2 -2
  18. package/dist/matrix/matrix3x3.mjs +6 -5
  19. package/dist/matrix/matrix4x4.d.mts +1 -1
  20. package/dist/matrix/matrix4x4.d.ts +1 -1
  21. package/dist/matrix/matrix4x4.mjs +7 -6
  22. package/dist/path/cubic2d.d.mts +2 -2
  23. package/dist/path/cubic2d.d.ts +2 -2
  24. package/dist/path/cubic2d.mjs +5 -4
  25. package/dist/path/linear2d.d.mts +2 -2
  26. package/dist/path/linear2d.d.ts +2 -2
  27. package/dist/path/linear2d.mjs +4 -3
  28. package/dist/path/quadratic2d.d.mts +2 -2
  29. package/dist/path/quadratic2d.d.ts +2 -2
  30. package/dist/path/quadratic2d.mjs +5 -4
  31. package/dist/{shared/curvy.BN-oFBsc.d.mts → pipe.d.mts} +33 -1
  32. package/dist/{shared/curvy.BN-oFBsc.d.ts → pipe.d.ts} +33 -1
  33. package/dist/{shared/curvy.DLOeble8.mjs → pipe.mjs} +1 -37
  34. package/dist/polynomial/cubic.d.mts +2 -2
  35. package/dist/polynomial/cubic.d.ts +2 -2
  36. package/dist/polynomial/cubic.mjs +4 -3
  37. package/dist/polynomial/linear.d.mts +2 -2
  38. package/dist/polynomial/linear.d.ts +2 -2
  39. package/dist/polynomial/linear.mjs +3 -2
  40. package/dist/polynomial/quadratic.d.mts +2 -2
  41. package/dist/polynomial/quadratic.d.ts +2 -2
  42. package/dist/polynomial/quadratic.mjs +4 -3
  43. package/dist/shared/{curvy.O57gIOmy.mjs → curvy.BDhiZ7He.mjs} +2 -1
  44. package/dist/shared/{curvy.BrrC9QVB.mjs → curvy.BYDuJMHv.mjs} +3 -2
  45. package/dist/shared/{curvy.CkJRVnqj.d.ts → curvy.BsHoYJNv.d.ts} +1 -1
  46. package/dist/shared/{curvy.DTco5vku.mjs → curvy.BvJuXVua.mjs} +4 -3
  47. package/dist/shared/{curvy.ZjG-q57I.mjs → curvy.BzVmUIKm.mjs} +3 -2
  48. package/dist/shared/{curvy.B1zfBfvf.mjs → curvy.C2XGH0R0.mjs} +2 -1
  49. package/dist/shared/{curvy.BZXFCKQe.mjs → curvy.CE4X6_Is.mjs} +2 -1
  50. package/dist/shared/{curvy.DV4S13Cq.mjs → curvy.D7YvJAMV.mjs} +2 -1
  51. package/dist/shared/{curvy.BPOevbwG.mjs → curvy.DSxnsSFS.mjs} +2 -1
  52. package/dist/shared/{curvy.DwHW5Fqt.d.mts → curvy.NsmY7zcr.d.mts} +1 -1
  53. package/dist/splines/basis2d.d.mts +2 -2
  54. package/dist/splines/basis2d.d.ts +2 -2
  55. package/dist/splines/basis2d.mjs +10 -9
  56. package/dist/splines/bezier2d.d.mts +2 -2
  57. package/dist/splines/bezier2d.d.ts +2 -2
  58. package/dist/splines/bezier2d.mjs +10 -9
  59. package/dist/splines/cardinal2d.d.mts +2 -2
  60. package/dist/splines/cardinal2d.d.ts +2 -2
  61. package/dist/splines/cardinal2d.mjs +10 -9
  62. package/dist/splines/hermite2d.d.mts +2 -2
  63. package/dist/splines/hermite2d.d.ts +2 -2
  64. package/dist/splines/hermite2d.mjs +10 -9
  65. package/dist/utils.d.mts +27 -0
  66. package/dist/utils.d.ts +27 -0
  67. package/dist/utils.mjs +47 -0
  68. package/dist/vector/vector2.d.mts +1 -1
  69. package/dist/vector/vector2.d.ts +1 -1
  70. package/dist/vector/vector2.mjs +3 -2
  71. package/dist/vector/vector3.d.mts +1 -1
  72. package/dist/vector/vector3.d.ts +1 -1
  73. package/dist/vector/vector3.mjs +3 -2
  74. package/dist/vector/vector4.d.mts +1 -1
  75. package/dist/vector/vector4.d.ts +1 -1
  76. package/dist/vector/vector4.mjs +3 -2
  77. package/package.json +9 -1
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
3
2
  import { Interval } from '../interval.mjs';
4
- import { C as CubicPolynomial } from '../shared/curvy.DwHW5Fqt.mjs';
3
+ import { Pipeable } from '../pipe.mjs';
4
+ import { C as CubicPolynomial } from '../shared/curvy.NsmY7zcr.mjs';
5
5
  import { Vector2 } from '../vector/vector2.mjs';
6
6
  import '../vector/vector3.mjs';
7
7
  import '../vector/vector4.mjs';
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
3
2
  import { Interval } from '../interval.js';
4
- import { C as CubicPolynomial } from '../shared/curvy.CkJRVnqj.js';
3
+ import { Pipeable } from '../pipe.js';
4
+ import { C as CubicPolynomial } from '../shared/curvy.BsHoYJNv.js';
5
5
  import { Vector2 } from '../vector/vector2.js';
6
6
  import '../vector/vector3.js';
7
7
  import '../vector/vector4.js';
@@ -1,14 +1,15 @@
1
- import { d as dual, r as round, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
2
1
  import { size, scaleShift, biunit } from '../interval.mjs';
3
2
  import { G as GL32_W0, a as GL32_X0, b as GL32_W1, c as GL32_X1, d as GL32_W2, e as GL32_X2, f as GL32_W3, g as GL32_X3, h as GL32_W4, i as GL32_X4, j as GL32_W5, k as GL32_X5, l as GL32_W6, m as GL32_X6, n as GL32_W7, o as GL32_X7, p as GL32_W8, q as GL32_X8, r as GL32_W9, s as GL32_X9, t as GL32_W10, u as GL32_X10, v as GL32_W11, w as GL32_X11, x as GL32_W12, y as GL32_X12, z as GL32_W13, A as GL32_X13, B as GL32_W14, C as GL32_X14, D as GL32_W15, E as GL32_X15 } from '../shared/curvy.DmVFTi0N.mjs';
3
+ import { dual, Pipeable } from '../pipe.mjs';
4
4
  import { make, solve as solve$2, derivative as derivative$2 } from '../polynomial/cubic.mjs';
5
5
  import { make as make$2 } from '../polynomial/quadratic.mjs';
6
+ import { round } from '../utils.mjs';
6
7
  import { make as make$1, magnitude, cross } from '../vector/vector2.mjs';
7
8
  import { solve as solve$4 } from './linear2d.mjs';
8
9
  import { length as length$2, fromPolynomials as fromPolynomials$2, solve as solve$3, derivative as derivative$1 } from './quadratic2d.mjs';
9
- import '../shared/curvy.ZjG-q57I.mjs';
10
- import '../shared/curvy.O57gIOmy.mjs';
11
- import '../shared/curvy.BPOevbwG.mjs';
10
+ import '../shared/curvy.BzVmUIKm.mjs';
11
+ import '../shared/curvy.BDhiZ7He.mjs';
12
+ import '../shared/curvy.DSxnsSFS.mjs';
12
13
  import '../polynomial/linear.mjs';
13
14
 
14
15
  const CubicCurve2dTypeId = Symbol("curvy/curve/cubic2d");
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
3
2
  import { Interval } from '../interval.mjs';
4
- import { L as LinearPolynomial } from '../shared/curvy.DwHW5Fqt.mjs';
3
+ import { Pipeable } from '../pipe.mjs';
4
+ import { L as LinearPolynomial } from '../shared/curvy.NsmY7zcr.mjs';
5
5
  import { Vector2 } from '../vector/vector2.mjs';
6
6
  import '../vector/vector3.mjs';
7
7
  import '../vector/vector4.mjs';
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
3
2
  import { Interval } from '../interval.js';
4
- import { L as LinearPolynomial } from '../shared/curvy.CkJRVnqj.js';
3
+ import { Pipeable } from '../pipe.js';
4
+ import { L as LinearPolynomial } from '../shared/curvy.BsHoYJNv.js';
5
5
  import { Vector2 } from '../vector/vector2.js';
6
6
  import '../vector/vector3.js';
7
7
  import '../vector/vector4.js';
@@ -1,9 +1,10 @@
1
- import { d as dual, r as round, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
1
+ import { dual, Pipeable } from '../pipe.mjs';
2
2
  import { make, solve as solve$2 } from '../polynomial/linear.mjs';
3
+ import { round } from '../utils.mjs';
3
4
  import { make as make$1 } from '../vector/vector2.mjs';
4
- import '../shared/curvy.O57gIOmy.mjs';
5
+ import '../shared/curvy.BDhiZ7He.mjs';
5
6
  import '../interval.mjs';
6
- import '../shared/curvy.BPOevbwG.mjs';
7
+ import '../shared/curvy.DSxnsSFS.mjs';
7
8
 
8
9
  const LinearCurve2dTypeId = Symbol("curvy/curve/linear2d");
9
10
  class LinearCurve2dImpl extends Pipeable {
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
3
2
  import { Interval } from '../interval.mjs';
4
- import { Q as QuadraticPolynomial } from '../shared/curvy.DwHW5Fqt.mjs';
3
+ import { Pipeable } from '../pipe.mjs';
4
+ import { Q as QuadraticPolynomial } from '../shared/curvy.NsmY7zcr.mjs';
5
5
  import { Vector2 } from '../vector/vector2.mjs';
6
6
  import { LinearCurve2d } from './linear2d.mjs';
7
7
  import '../vector/vector3.mjs';
@@ -1,7 +1,7 @@
1
1
  import { T as TwoDimensional } from '../shared/curvy.Bf5TIk31.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
3
2
  import { Interval } from '../interval.js';
4
- import { Q as QuadraticPolynomial } from '../shared/curvy.CkJRVnqj.js';
3
+ import { Pipeable } from '../pipe.js';
4
+ import { Q as QuadraticPolynomial } from '../shared/curvy.BsHoYJNv.js';
5
5
  import { Vector2 } from '../vector/vector2.js';
6
6
  import { LinearCurve2d } from './linear2d.js';
7
7
  import '../vector/vector3.js';
@@ -1,13 +1,14 @@
1
- import { d as dual, r as round, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
2
1
  import { size, scaleShift, biunit } from '../interval.mjs';
3
2
  import { G as GL32_W0, a as GL32_X0, b as GL32_W1, c as GL32_X1, d as GL32_W2, e as GL32_X2, f as GL32_W3, g as GL32_X3, h as GL32_W4, i as GL32_X4, j as GL32_W5, k as GL32_X5, l as GL32_W6, m as GL32_X6, n as GL32_W7, o as GL32_X7, p as GL32_W8, q as GL32_X8, r as GL32_W9, s as GL32_X9, t as GL32_W10, u as GL32_X10, v as GL32_W11, w as GL32_X11, x as GL32_W12, y as GL32_X12, z as GL32_W13, A as GL32_X13, B as GL32_W14, C as GL32_X14, D as GL32_W15, E as GL32_X15 } from '../shared/curvy.DmVFTi0N.mjs';
3
+ import { dual, Pipeable } from '../pipe.mjs';
4
4
  import { make as make$2 } from '../polynomial/linear.mjs';
5
5
  import { make, solve as solve$2, derivative as derivative$2 } from '../polynomial/quadratic.mjs';
6
+ import { round } from '../utils.mjs';
6
7
  import { make as make$1, magnitude, cross } from '../vector/vector2.mjs';
7
8
  import { fromPolynomials as fromPolynomials$2, length as length$2, solve as solve$3, derivative as derivative$3 } from './linear2d.mjs';
8
- import '../shared/curvy.O57gIOmy.mjs';
9
- import '../shared/curvy.ZjG-q57I.mjs';
10
- import '../shared/curvy.BPOevbwG.mjs';
9
+ import '../shared/curvy.BDhiZ7He.mjs';
10
+ import '../shared/curvy.BzVmUIKm.mjs';
11
+ import '../shared/curvy.DSxnsSFS.mjs';
11
12
 
12
13
  const QuadraticCurve2dTypeId = Symbol(
13
14
  "curvy/curve/quadratic2d"
@@ -1,4 +1,4 @@
1
- import { P as Pipeable } from './shared/curvy.BN-oFBsc.mjs';
1
+ import { Pipeable } from './pipe.mjs';
2
2
 
3
3
  interface Interval extends Pipeable {
4
4
  readonly start: number;
@@ -1,4 +1,4 @@
1
- import { P as Pipeable } from './shared/curvy.BN-oFBsc.js';
1
+ import { Pipeable } from './pipe.js';
2
2
 
3
3
  interface Interval extends Pipeable {
4
4
  readonly start: number;
package/dist/interval.mjs CHANGED
@@ -1,4 +1,5 @@
1
- import { d as dual, P as Pipeable, r as round } from './shared/curvy.DLOeble8.mjs';
1
+ import { dual, Pipeable } from './pipe.mjs';
2
+ import { round } from './utils.mjs';
2
3
 
3
4
  const TypeId = Symbol.for("curvy/interval");
4
5
  class IntervalImpl extends Pipeable {
@@ -1,5 +1,5 @@
1
1
  import { d as TwoDimensionalIndex, e as TwoDimensionalComponent } from '../shared/curvy.Bf5TIk31.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
3
3
  import { Vector2 } from '../vector/vector2.mjs';
4
4
 
5
5
  declare const Matrix2x2TypeId: unique symbol;
@@ -1,5 +1,5 @@
1
1
  import { d as TwoDimensionalIndex, e as TwoDimensionalComponent } from '../shared/curvy.Bf5TIk31.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
2
+ import { Pipeable } from '../pipe.js';
3
3
  import { Vector2 } from '../vector/vector2.js';
4
4
 
5
5
  declare const Matrix2x2TypeId: unique symbol;
@@ -1,6 +1,7 @@
1
- import { i as isMatrix2x2$1, m as make, f as fromRows$1, a as fromColumns$1, s as setRow$1, b as setColumn$1, d as determinant$1, v as vectorProductLeft$1, c as vectorProductRight$1, e as solveSystem$1, t as toRows$1, g as toColumns$1, r as rowVector$1, h as columnVector$1, j as transpose$1, k as reverseRows$1, l as reverseColumns$1 } from '../shared/curvy.BrrC9QVB.mjs';
2
- import '../shared/curvy.DLOeble8.mjs';
3
- import '../shared/curvy.BPOevbwG.mjs';
1
+ import { i as isMatrix2x2$1, m as make, f as fromRows$1, a as fromColumns$1, s as setRow$1, b as setColumn$1, d as determinant$1, v as vectorProductLeft$1, c as vectorProductRight$1, e as solveSystem$1, t as toRows$1, g as toColumns$1, r as rowVector$1, h as columnVector$1, j as transpose$1, k as reverseRows$1, l as reverseColumns$1 } from '../shared/curvy.BYDuJMHv.mjs';
2
+ import '../utils.mjs';
3
+ import '../pipe.mjs';
4
+ import '../shared/curvy.DSxnsSFS.mjs';
4
5
 
5
6
  const isMatrix2x2 = isMatrix2x2$1;
6
7
  const matrix2x2 = make;
@@ -1,14 +1,14 @@
1
1
  import { b as ThreeDimensionalIndex, c as ThreeDimensionalComponent } from '../shared/curvy.Bf5TIk31.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
2
3
  import { Vector3 } from '../vector/vector3.mjs';
3
4
  import { Matrix2x2 } from './matrix2x2.mjs';
4
- import '../shared/curvy.BN-oFBsc.mjs';
5
5
  import '../vector/vector2.mjs';
6
6
 
7
7
  declare const Matrix3x3TypeId: unique symbol;
8
8
  type Matrix3x3TypeId = typeof Matrix3x3TypeId;
9
9
 
10
10
  type Matrix3x3Coordinate = ThreeDimensionalIndex | ThreeDimensionalComponent;
11
- interface Matrix3x3 {
11
+ interface Matrix3x3 extends Pipeable {
12
12
  readonly [Matrix3x3TypeId]: Matrix3x3TypeId;
13
13
  readonly m00: number;
14
14
  readonly m01: number;
@@ -1,14 +1,14 @@
1
1
  import { b as ThreeDimensionalIndex, c as ThreeDimensionalComponent } from '../shared/curvy.Bf5TIk31.js';
2
+ import { Pipeable } from '../pipe.js';
2
3
  import { Vector3 } from '../vector/vector3.js';
3
4
  import { Matrix2x2 } from './matrix2x2.js';
4
- import '../shared/curvy.BN-oFBsc.js';
5
5
  import '../vector/vector2.js';
6
6
 
7
7
  declare const Matrix3x3TypeId: unique symbol;
8
8
  type Matrix3x3TypeId = typeof Matrix3x3TypeId;
9
9
 
10
10
  type Matrix3x3Coordinate = ThreeDimensionalIndex | ThreeDimensionalComponent;
11
- interface Matrix3x3 {
11
+ interface Matrix3x3 extends Pipeable {
12
12
  readonly [Matrix3x3TypeId]: Matrix3x3TypeId;
13
13
  readonly m00: number;
14
14
  readonly m01: number;
@@ -1,8 +1,9 @@
1
- import { i as isMatrix3x3$1, m as make, f as fromRows$1, a as fromColumns$1, s as setRow$1, b as setColumn$1, d as determinant$1, c as minor$1, v as vectorProductLeft$1, e as vectorProductRight$1, g as solveSystem$1, t as toRows$1, h as toColumns$1, r as rowVector$1, j as columnVector$1, k as transpose$1, l as reverseRows$1, n as reverseColumns$1 } from '../shared/curvy.DTco5vku.mjs';
2
- import '../shared/curvy.BrrC9QVB.mjs';
3
- import '../shared/curvy.DLOeble8.mjs';
4
- import '../shared/curvy.BPOevbwG.mjs';
5
- import '../shared/curvy.DV4S13Cq.mjs';
1
+ import { i as isMatrix3x3$1, m as make, f as fromRows$1, a as fromColumns$1, s as setRow$1, b as setColumn$1, d as determinant$1, c as minor$1, v as vectorProductLeft$1, e as vectorProductRight$1, g as solveSystem$1, t as toRows$1, h as toColumns$1, r as rowVector$1, j as columnVector$1, k as transpose$1, l as reverseRows$1, n as reverseColumns$1 } from '../shared/curvy.BvJuXVua.mjs';
2
+ import '../shared/curvy.BYDuJMHv.mjs';
3
+ import '../utils.mjs';
4
+ import '../pipe.mjs';
5
+ import '../shared/curvy.DSxnsSFS.mjs';
6
+ import '../shared/curvy.D7YvJAMV.mjs';
6
7
 
7
8
  const isMatrix3x3 = isMatrix3x3$1;
8
9
  const matrix3x3 = make;
@@ -1,5 +1,5 @@
1
1
  import { F as FourDimensionalIndex, a as FourDimensionalComponent } from '../shared/curvy.Bf5TIk31.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
3
3
  import { Vector4 } from '../vector/vector4.mjs';
4
4
  import { Matrix3x3 } from './matrix3x3.mjs';
5
5
  import '../vector/vector3.mjs';
@@ -1,5 +1,5 @@
1
1
  import { F as FourDimensionalIndex, a as FourDimensionalComponent } from '../shared/curvy.Bf5TIk31.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
2
+ import { Pipeable } from '../pipe.js';
3
3
  import { Vector4 } from '../vector/vector4.js';
4
4
  import { Matrix3x3 } from './matrix3x3.js';
5
5
  import '../vector/vector3.js';
@@ -1,9 +1,10 @@
1
- import { n as toFourDimensionalIndex } from '../shared/curvy.BrrC9QVB.mjs';
2
- import { d as dual, r as round, i as invariant, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
3
- import { c as components, m as make$3, d as dot } from '../shared/curvy.B1zfBfvf.mjs';
4
- import { d as determinant$2, m as make$2 } from '../shared/curvy.DTco5vku.mjs';
5
- import '../shared/curvy.BPOevbwG.mjs';
6
- import '../shared/curvy.DV4S13Cq.mjs';
1
+ import { n as toFourDimensionalIndex } from '../shared/curvy.BYDuJMHv.mjs';
2
+ import { dual, Pipeable } from '../pipe.mjs';
3
+ import { round, invariant } from '../utils.mjs';
4
+ import { c as components, m as make$3, d as dot } from '../shared/curvy.C2XGH0R0.mjs';
5
+ import { d as determinant$2, m as make$2 } from '../shared/curvy.BvJuXVua.mjs';
6
+ import '../shared/curvy.DSxnsSFS.mjs';
7
+ import '../shared/curvy.D7YvJAMV.mjs';
7
8
 
8
9
  const Matrix4x4TypeId = Symbol.for("curvy/matrix4x4");
9
10
  class Matrix4x4Impl extends Pipeable {
@@ -1,9 +1,9 @@
1
1
  import { CubicCurve2d } from '../curve/cubic2d.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
3
3
  import { Vector2 } from '../vector/vector2.mjs';
4
4
  import '../shared/curvy.Bf5TIk31.mjs';
5
5
  import '../interval.mjs';
6
- import '../shared/curvy.DwHW5Fqt.mjs';
6
+ import '../shared/curvy.NsmY7zcr.mjs';
7
7
  import '../vector/vector3.mjs';
8
8
  import '../vector/vector4.mjs';
9
9
 
@@ -1,9 +1,9 @@
1
1
  import { CubicCurve2d } from '../curve/cubic2d.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
2
+ import { Pipeable } from '../pipe.js';
3
3
  import { Vector2 } from '../vector/vector2.js';
4
4
  import '../shared/curvy.Bf5TIk31.js';
5
5
  import '../interval.js';
6
- import '../shared/curvy.CkJRVnqj.js';
6
+ import '../shared/curvy.BsHoYJNv.js';
7
7
  import '../vector/vector3.js';
8
8
  import '../vector/vector4.js';
9
9
 
@@ -1,13 +1,14 @@
1
1
  import { length as length$2, solve as solve$2 } from '../curve/cubic2d.mjs';
2
- import { d as dual, r as round, P as Pipeable, i as invariant } from '../shared/curvy.DLOeble8.mjs';
3
2
  import { unit } from '../interval.mjs';
3
+ import { dual, Pipeable } from '../pipe.mjs';
4
+ import { round, invariant } from '../utils.mjs';
4
5
  import '../shared/curvy.DmVFTi0N.mjs';
5
6
  import '../polynomial/cubic.mjs';
6
- import '../shared/curvy.ZjG-q57I.mjs';
7
- import '../shared/curvy.O57gIOmy.mjs';
7
+ import '../shared/curvy.BzVmUIKm.mjs';
8
+ import '../shared/curvy.BDhiZ7He.mjs';
8
9
  import '../polynomial/quadratic.mjs';
9
10
  import '../vector/vector2.mjs';
10
- import '../shared/curvy.BPOevbwG.mjs';
11
+ import '../shared/curvy.DSxnsSFS.mjs';
11
12
  import '../curve/linear2d.mjs';
12
13
  import '../polynomial/linear.mjs';
13
14
  import '../curve/quadratic2d.mjs';
@@ -1,9 +1,9 @@
1
1
  import { LinearCurve2d } from '../curve/linear2d.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
3
3
  import { Vector2 } from '../vector/vector2.mjs';
4
4
  import '../shared/curvy.Bf5TIk31.mjs';
5
5
  import '../interval.mjs';
6
- import '../shared/curvy.DwHW5Fqt.mjs';
6
+ import '../shared/curvy.NsmY7zcr.mjs';
7
7
  import '../vector/vector3.mjs';
8
8
  import '../vector/vector4.mjs';
9
9
 
@@ -1,9 +1,9 @@
1
1
  import { LinearCurve2d } from '../curve/linear2d.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
2
+ import { Pipeable } from '../pipe.js';
3
3
  import { Vector2 } from '../vector/vector2.js';
4
4
  import '../shared/curvy.Bf5TIk31.js';
5
5
  import '../interval.js';
6
- import '../shared/curvy.CkJRVnqj.js';
6
+ import '../shared/curvy.BsHoYJNv.js';
7
7
  import '../vector/vector3.js';
8
8
  import '../vector/vector4.js';
9
9
 
@@ -1,10 +1,11 @@
1
1
  import { length as length$2, solve as solve$2 } from '../curve/linear2d.mjs';
2
- import { d as dual, r as round, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
3
2
  import { unit } from '../interval.mjs';
3
+ import { dual, Pipeable } from '../pipe.mjs';
4
+ import { round } from '../utils.mjs';
4
5
  import '../polynomial/linear.mjs';
5
- import '../shared/curvy.O57gIOmy.mjs';
6
+ import '../shared/curvy.BDhiZ7He.mjs';
6
7
  import '../vector/vector2.mjs';
7
- import '../shared/curvy.BPOevbwG.mjs';
8
+ import '../shared/curvy.DSxnsSFS.mjs';
8
9
 
9
10
  const LinearPath2dTypeId = Symbol("curvy/path/linear2d");
10
11
  class LinearPath2dImpl extends Pipeable {
@@ -1,9 +1,9 @@
1
1
  import { QuadraticCurve2d } from '../curve/quadratic2d.mjs';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.mjs';
2
+ import { Pipeable } from '../pipe.mjs';
3
3
  import { Vector2 } from '../vector/vector2.mjs';
4
4
  import '../shared/curvy.Bf5TIk31.mjs';
5
5
  import '../interval.mjs';
6
- import '../shared/curvy.DwHW5Fqt.mjs';
6
+ import '../shared/curvy.NsmY7zcr.mjs';
7
7
  import '../vector/vector3.mjs';
8
8
  import '../vector/vector4.mjs';
9
9
  import '../curve/linear2d.mjs';
@@ -1,9 +1,9 @@
1
1
  import { QuadraticCurve2d } from '../curve/quadratic2d.js';
2
- import { P as Pipeable } from '../shared/curvy.BN-oFBsc.js';
2
+ import { Pipeable } from '../pipe.js';
3
3
  import { Vector2 } from '../vector/vector2.js';
4
4
  import '../shared/curvy.Bf5TIk31.js';
5
5
  import '../interval.js';
6
- import '../shared/curvy.CkJRVnqj.js';
6
+ import '../shared/curvy.BsHoYJNv.js';
7
7
  import '../vector/vector3.js';
8
8
  import '../vector/vector4.js';
9
9
  import '../curve/linear2d.js';
@@ -1,13 +1,14 @@
1
1
  import { length as length$2, solve as solve$2 } from '../curve/quadratic2d.mjs';
2
- import { d as dual, r as round, P as Pipeable } from '../shared/curvy.DLOeble8.mjs';
3
2
  import { unit } from '../interval.mjs';
3
+ import { dual, Pipeable } from '../pipe.mjs';
4
+ import { round } from '../utils.mjs';
4
5
  import '../shared/curvy.DmVFTi0N.mjs';
5
6
  import '../polynomial/linear.mjs';
6
- import '../shared/curvy.O57gIOmy.mjs';
7
+ import '../shared/curvy.BDhiZ7He.mjs';
7
8
  import '../polynomial/quadratic.mjs';
8
- import '../shared/curvy.ZjG-q57I.mjs';
9
+ import '../shared/curvy.BzVmUIKm.mjs';
9
10
  import '../vector/vector2.mjs';
10
- import '../shared/curvy.BPOevbwG.mjs';
11
+ import '../shared/curvy.DSxnsSFS.mjs';
11
12
  import '../curve/linear2d.mjs';
12
13
 
13
14
  const QuadraticPath2dTypeId = Symbol(
@@ -1,3 +1,35 @@
1
+ /**
2
+ * pipe() and dual() are slightly modified versions of Effect-TS's pipe() and dual() functions.
3
+ * https://github.com/effect-ts/core/blob/main/src/function.ts
4
+ *
5
+ * The original versions are licensed under the MIT license.
6
+ * This version is licensed under the MIT license.
7
+ */
8
+ type AnyFunction = (...args: Array<any>) => any;
9
+ declare const dual: {
10
+ <DataLast extends AnyFunction, DataFirst extends AnyFunction>(arity: Parameters<DataFirst>['length'], body: DataFirst): DataLast & DataFirst;
11
+ <DataLast extends AnyFunction, DataFirst extends AnyFunction>(isDataFirst: (args: IArguments) => boolean, body: DataFirst): DataLast & DataFirst;
12
+ };
13
+ declare function pipe<A>(a: A): A;
14
+ declare function pipe<A, B = never>(a: A, ab: (a: A) => B): B;
15
+ declare function pipe<A, B = never, C = never>(a: A, ab: (a: A) => B, bc: (b: B) => C): C;
16
+ declare function pipe<A, B = never, C = never, D = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D): D;
17
+ declare function pipe<A, B = never, C = never, D = never, E = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E): E;
18
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F): F;
19
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G): G;
20
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H): H;
21
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I): I;
22
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J): J;
23
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K): K;
24
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L): L;
25
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M): M;
26
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N): N;
27
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O): O;
28
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P): P;
29
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q): Q;
30
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R): R;
31
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S): S;
32
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => T): T;
1
33
  declare class Pipeable {
2
34
  pipe<A>(this: A): A;
3
35
  pipe<A, B = never>(this: A, ab: (_: A) => B): B;
@@ -23,4 +55,4 @@ declare class Pipeable {
23
55
  pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never, U = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D, de: (_: D) => E, ef: (_: E) => F, fg: (_: F) => G, gh: (_: G) => H, hi: (_: H) => I, ij: (_: I) => J, jk: (_: J) => K, kl: (_: K) => L, lm: (_: L) => M, mn: (_: M) => N, no: (_: N) => O, op: (_: O) => P, pq: (_: P) => Q, qr: (_: Q) => R, rs: (_: R) => S, st: (_: S) => T, tu: (_: T) => U): U;
24
56
  }
25
57
 
26
- export { Pipeable as P };
58
+ export { Pipeable, dual, pipe };
@@ -1,3 +1,35 @@
1
+ /**
2
+ * pipe() and dual() are slightly modified versions of Effect-TS's pipe() and dual() functions.
3
+ * https://github.com/effect-ts/core/blob/main/src/function.ts
4
+ *
5
+ * The original versions are licensed under the MIT license.
6
+ * This version is licensed under the MIT license.
7
+ */
8
+ type AnyFunction = (...args: Array<any>) => any;
9
+ declare const dual: {
10
+ <DataLast extends AnyFunction, DataFirst extends AnyFunction>(arity: Parameters<DataFirst>['length'], body: DataFirst): DataLast & DataFirst;
11
+ <DataLast extends AnyFunction, DataFirst extends AnyFunction>(isDataFirst: (args: IArguments) => boolean, body: DataFirst): DataLast & DataFirst;
12
+ };
13
+ declare function pipe<A>(a: A): A;
14
+ declare function pipe<A, B = never>(a: A, ab: (a: A) => B): B;
15
+ declare function pipe<A, B = never, C = never>(a: A, ab: (a: A) => B, bc: (b: B) => C): C;
16
+ declare function pipe<A, B = never, C = never, D = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D): D;
17
+ declare function pipe<A, B = never, C = never, D = never, E = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E): E;
18
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F): F;
19
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G): G;
20
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H): H;
21
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I): I;
22
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J): J;
23
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K): K;
24
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L): L;
25
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M): M;
26
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N): N;
27
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O): O;
28
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P): P;
29
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q): Q;
30
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R): R;
31
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S): S;
32
+ declare function pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => T): T;
1
33
  declare class Pipeable {
2
34
  pipe<A>(this: A): A;
3
35
  pipe<A, B = never>(this: A, ab: (_: A) => B): B;
@@ -23,4 +55,4 @@ declare class Pipeable {
23
55
  pipe<A, B = never, C = never, D = never, E = never, F = never, G = never, H = never, I = never, J = never, K = never, L = never, M = never, N = never, O = never, P = never, Q = never, R = never, S = never, T = never, U = never>(this: A, ab: (_: A) => B, bc: (_: B) => C, cd: (_: C) => D, de: (_: D) => E, ef: (_: E) => F, fg: (_: F) => G, gh: (_: G) => H, hi: (_: H) => I, ij: (_: I) => J, jk: (_: J) => K, kl: (_: K) => L, lm: (_: L) => M, mn: (_: M) => N, no: (_: N) => O, op: (_: O) => P, pq: (_: P) => Q, qr: (_: Q) => R, rs: (_: R) => S, st: (_: S) => T, tu: (_: T) => U): U;
24
56
  }
25
57
 
26
- export { Pipeable as P };
58
+ export { Pipeable, dual, pipe };
@@ -82,46 +82,10 @@ function pipe(...args) {
82
82
  }
83
83
  }
84
84
  }
85
-
86
85
  class Pipeable {
87
86
  pipe(...args) {
88
87
  return pipe(this, ...args);
89
88
  }
90
89
  }
91
90
 
92
- const PRECISION = 8;
93
- function round(value, precision = PRECISION) {
94
- const scale = 10 ** precision;
95
- const result = Math.round(value * scale) / scale;
96
- if (result === 0) {
97
- return 0;
98
- }
99
- return result;
100
- }
101
- function roundDown(value, precision = PRECISION) {
102
- const scale = 10 ** precision;
103
- const result = Math.floor(value * scale) / scale;
104
- if (result === 0) {
105
- return 0;
106
- }
107
- return result;
108
- }
109
- dual(
110
- 5,
111
- (x, x1, x2, y1, y2) => {
112
- return y1 + (x - x1) / (x2 - x1) * (y2 - y1);
113
- }
114
- );
115
- dual(3, (value, min, max) => {
116
- return value < min ? min : value > max ? max : value;
117
- });
118
- dual(4, (value, min, max, onClip) => {
119
- return value < min ? onClip : value > max ? onClip : value;
120
- });
121
- function invariant(condition, message) {
122
- if (!condition) {
123
- throw new Error(message);
124
- }
125
- }
126
-
127
- export { Pipeable as P, roundDown as a, dual as d, invariant as i, round as r };
91
+ export { Pipeable, dual, pipe };
@@ -1,7 +1,7 @@
1
- import '../shared/curvy.BN-oFBsc.mjs';
2
1
  import '../interval.mjs';
2
+ import '../pipe.mjs';
3
3
  import '../vector/vector4.mjs';
4
- export { C as CubicPolynomial, j as curvature, d as derivative, g as domain, e as extrema, f as fromVector, i as isCubicPolynomial, l as length, m as make, c as monotonicity, h as range, r as roots, s as solve, a as solveInverse, b as toInverseSolver, t as toSolver } from '../shared/curvy.DwHW5Fqt.mjs';
4
+ export { C as CubicPolynomial, j as curvature, d as derivative, g as domain, e as extrema, f as fromVector, i as isCubicPolynomial, l as length, m as make, c as monotonicity, h as range, r as roots, s as solve, a as solveInverse, b as toInverseSolver, t as toSolver } from '../shared/curvy.NsmY7zcr.mjs';
5
5
  import '../shared/curvy.Bf5TIk31.mjs';
6
6
  import '../vector/vector2.mjs';
7
7
  import '../vector/vector3.mjs';
@@ -1,7 +1,7 @@
1
- import '../shared/curvy.BN-oFBsc.js';
2
1
  import '../interval.js';
2
+ import '../pipe.js';
3
3
  import '../vector/vector4.js';
4
- export { C as CubicPolynomial, j as curvature, d as derivative, g as domain, e as extrema, f as fromVector, i as isCubicPolynomial, l as length, m as make, c as monotonicity, h as range, r as roots, s as solve, a as solveInverse, b as toInverseSolver, t as toSolver } from '../shared/curvy.CkJRVnqj.js';
4
+ export { C as CubicPolynomial, j as curvature, d as derivative, g as domain, e as extrema, f as fromVector, i as isCubicPolynomial, l as length, m as make, c as monotonicity, h as range, r as roots, s as solve, a as solveInverse, b as toInverseSolver, t as toSolver } from '../shared/curvy.BsHoYJNv.js';
5
5
  import '../shared/curvy.Bf5TIk31.js';
6
6
  import '../vector/vector2.js';
7
7
  import '../vector/vector3.js';
@@ -1,8 +1,9 @@
1
- import { d as dual, r as round } from '../shared/curvy.DLOeble8.mjs';
2
1
  import { size, filter, fromMinMax, scaleShift, biunit } from '../interval.mjs';
3
2
  import { G as GL32_W0, a as GL32_X0, b as GL32_W1, c as GL32_X1, d as GL32_W2, e as GL32_X2, f as GL32_W3, g as GL32_X3, h as GL32_W4, i as GL32_X4, j as GL32_W5, k as GL32_X5, l as GL32_W6, m as GL32_X6, n as GL32_W7, o as GL32_X7, p as GL32_W8, q as GL32_X8, r as GL32_W9, s as GL32_X9, t as GL32_W10, u as GL32_X10, v as GL32_W11, w as GL32_X11, x as GL32_W12, y as GL32_X12, z as GL32_W13, A as GL32_X13, B as GL32_W14, C as GL32_X14, D as GL32_W15, E as GL32_X15 } from '../shared/curvy.DmVFTi0N.mjs';
4
- import { C as CubicPolynomialImpl, a as CubicPolynomialTypeId, s as solveInverse$2, m as make$2, r as roots$2, b as monotonicity$3, g as guaranteedMonotonicityFromComparison, l as length$3, c as solve$2, d as derivative$2 } from '../shared/curvy.ZjG-q57I.mjs';
5
- import { m as monotonicity$2, a as make$3, l as length$2, s as solve$3 } from '../shared/curvy.O57gIOmy.mjs';
3
+ import { dual } from '../pipe.mjs';
4
+ import { round } from '../utils.mjs';
5
+ import { C as CubicPolynomialImpl, a as CubicPolynomialTypeId, s as solveInverse$2, m as make$2, r as roots$2, b as monotonicity$3, g as guaranteedMonotonicityFromComparison, l as length$3, c as solve$2, d as derivative$2 } from '../shared/curvy.BzVmUIKm.mjs';
6
+ import { m as monotonicity$2, a as make$3, l as length$2, s as solve$3 } from '../shared/curvy.BDhiZ7He.mjs';
6
7
 
7
8
  const make$1 = (c0 = 0, c1 = 0, c2 = 0, c3 = 0) => new CubicPolynomialImpl(c0, c1, c2, c3);
8
9
  const isCubicPolynomial$1 = (v) => typeof v === "object" && v !== null && CubicPolynomialTypeId in v;
@@ -1,7 +1,7 @@
1
- import '../shared/curvy.BN-oFBsc.mjs';
2
1
  import '../interval.mjs';
2
+ import '../pipe.mjs';
3
3
  import '../vector/vector2.mjs';
4
- export { L as LinearPolynomial, U as antiderivative, T as derivative, V as domain, J as fromPointSlope, K as fromPoints, I as fromVector, G as isLinearPolynomial, X as length, H as make, S as monotonicity, W as range, R as root, M as solve, O as solveInverse, P as toInverseSolver, N as toSolver } from '../shared/curvy.DwHW5Fqt.mjs';
4
+ export { L as LinearPolynomial, U as antiderivative, T as derivative, V as domain, J as fromPointSlope, K as fromPoints, I as fromVector, G as isLinearPolynomial, X as length, H as make, S as monotonicity, W as range, R as root, M as solve, O as solveInverse, P as toInverseSolver, N as toSolver } from '../shared/curvy.NsmY7zcr.mjs';
5
5
  import '../shared/curvy.Bf5TIk31.mjs';
6
6
  import '../vector/vector3.mjs';
7
7
  import '../vector/vector4.mjs';