@equinor/videx-math 1.1.10 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -3,7 +3,7 @@
3
3
  * @param value Value to clamp
4
4
  * @param min Minimum value (Default: 0)
5
5
  * @param max Maximum value (Default: 1)
6
- * @return Clamped value
6
+ * @returns Clamped value
7
7
  *
8
8
  * @example
9
9
  * clamp(8, 3, 7); // Returns: 7
@@ -13,7 +13,7 @@ export declare function clamp(value: number, min?: number, max?: number): number
13
13
  * Generate a step function by comparing two values.
14
14
  * @param edge Edge of the step function
15
15
  * @param x Value used to generate the step function
16
- * @return Returns either 0 or 1
16
+ * @returns Returns either 0 or 1
17
17
  */
18
18
  export declare function step(edge: number, x: number): number;
19
19
  /**
@@ -21,7 +21,7 @@ export declare function step(edge: number, x: number): number;
21
21
  * @param edge0 Lower edge of the Hermite function
22
22
  * @param edge1 Upper edge of the Hermite function
23
23
  * @param x Source value for interpolation
24
- * @return Hermite interpolated value
24
+ * @returns Hermite interpolated value
25
25
  */
26
26
  export declare function smoothstep(edge0: number, edge1: number, x: number): number;
27
27
  /**
@@ -29,7 +29,7 @@ export declare function smoothstep(edge0: number, edge1: number, x: number): num
29
29
  * @param a Number to interpolate from
30
30
  * @param b Number to interpolate to
31
31
  * @param t Interpolation parameter, 0 = a and 1 = b
32
- * @return The interpolated value
32
+ * @returns The interpolated value
33
33
  *
34
34
  * @example
35
35
  * lerp(2, 4, 0.5); // Returns 3
@@ -40,7 +40,7 @@ export declare function lerp(a: number, b: number, t: number): number;
40
40
  * @param a Start value
41
41
  * @param b End value
42
42
  * @param value Value between start and end
43
- * @return Percentage of value between start and end
43
+ * @returns Percentage of value between start and end
44
44
  *
45
45
  * @example
46
46
  * inverseLerp(2, 4, 3); // Returns 0.5
@@ -75,9 +75,9 @@ export declare function radians(deg: number): number;
75
75
  */
76
76
  export declare function degrees(rad: number): number;
77
77
  /**
78
- * Normalise an angle to be between and +π.
78
+ * Normalise an angle to be between 0 and 2π.
79
79
  * @param rad Angle in radians
80
- * @return Normalised angle
80
+ * @returns Normalised angle
81
81
  */
82
82
  export declare function nrad(rad: number): number;
83
83
  /**
@@ -128,7 +128,7 @@ export declare function min(...values: number[]): number;
128
128
  * @returns Maximum value
129
129
  *
130
130
  * @example
131
- * min([2, 1, 3]); // Returns 3
131
+ * max([2, 1, 3]); // Returns 3
132
132
  */
133
133
  export declare function max(values: number[]): number;
134
134
  /**
@@ -137,7 +137,7 @@ export declare function max(values: number[]): number;
137
137
  * @returns Maximum value
138
138
  *
139
139
  * @example
140
- * min(2, 1, 3); // Returns 3
140
+ * max(2, 1, 3); // Returns 3
141
141
  */
142
142
  export declare function max(...values: number[]): number;
143
143
  /**
@@ -146,7 +146,7 @@ export declare function max(...values: number[]): number;
146
146
  * @returns Extent on format [min, max]
147
147
  *
148
148
  * @example
149
- * min([2, 1, 3]); // Returns [1, 3]
149
+ * extent([2, 1, 3]); // Returns [1, 3]
150
150
  */
151
151
  export declare function extent(values: number[]): [number, number];
152
152
  /**
@@ -155,7 +155,7 @@ export declare function extent(values: number[]): [number, number];
155
155
  * @returns Extent on format [min, max]
156
156
  *
157
157
  * @example
158
- * min(2, 1, 3); // Returns [1, 3]
158
+ * extent(2, 1, 3); // Returns [1, 3]
159
159
  */
160
160
  export declare function extent(...values: number[]): [number, number];
161
161
  /**
package/dist/index.esm.js CHANGED
@@ -1 +1 @@
1
- const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}function step(edge,x){return x>=edge?1:0}function smoothstep(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)}function lerp(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m}function inverseLerp(a,b,value){return clamp((value-a)/(b-a),0,1)}function round(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f}function radians(deg){return deg*DEG2RAD}function degrees(rad){return rad*RAD2DEG}function nrad(rad){const v=rad%TAU;return v<0?v+TAU:v}function seq(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target}function seqI(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target}function min(a,...b){let min;if(Array.isArray(a)){min=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i])}else{min=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i])}return min}function max(a,...b){let max;if(Array.isArray(a)){max=a[0];for(let i=1;i<a.length;i++)a[i]>max&&(max=a[i])}else{max=a;for(let i=0;i<b.length;i++)b[i]>max&&(max=b[i])}return max}function extent(a,...b){let min,max;if(Array.isArray(a)){min=max=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i]),a[i]>max&&(max=a[i])}else{min=max=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i]),b[i]>max&&(max=b[i])}return[min,max]}function mean(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)}export{clamp,degrees,extent,inverseLerp,lerp,max,mean,min,nrad,radians,round,seq,seqI,smoothstep,step};
1
+ const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}function step(edge,x){return x>=edge?1:0}function smoothstep(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)}function lerp(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m}function inverseLerp(a,b,value){return clamp((value-a)/(b-a),0,1)}function round(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f}function radians(deg){return deg*DEG2RAD}function degrees(rad){return rad*RAD2DEG}function nrad(rad){const v=rad%TAU;return v<0?v+TAU:v}function seq(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target}function seqI(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target}function min(a,...b){let minimum;if(Array.isArray(a)){minimum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i])}else{minimum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i])}return minimum}function max(a,...b){let maximum;if(Array.isArray(a)){maximum=a[0];for(let i=1;i<a.length;i++)a[i]>maximum&&(maximum=a[i])}else{maximum=a;for(let i=0;i<b.length;i++)b[i]>maximum&&(maximum=b[i])}return maximum}function extent(a,...b){let minimum,maximum;if(Array.isArray(a)){minimum=maximum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i]),a[i]>maximum&&(maximum=a[i])}else{minimum=maximum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i]),b[i]>maximum&&(maximum=b[i])}return[minimum,maximum]}function mean(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)}export{clamp,degrees,extent,inverseLerp,lerp,max,mean,min,nrad,radians,round,seq,seqI,smoothstep,step};
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- "use strict";const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}exports.clamp=clamp,exports.degrees=function(rad){return rad*RAD2DEG},exports.extent=function(a,...b){let min,max;if(Array.isArray(a)){min=max=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i]),a[i]>max&&(max=a[i])}else{min=max=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i]),b[i]>max&&(max=b[i])}return[min,max]},exports.inverseLerp=function(a,b,value){return clamp((value-a)/(b-a),0,1)},exports.lerp=function(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m},exports.max=function(a,...b){let max;if(Array.isArray(a)){max=a[0];for(let i=1;i<a.length;i++)a[i]>max&&(max=a[i])}else{max=a;for(let i=0;i<b.length;i++)b[i]>max&&(max=b[i])}return max},exports.mean=function(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)},exports.min=function(a,...b){let min;if(Array.isArray(a)){min=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i])}else{min=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i])}return min},exports.nrad=function(rad){const v=rad%TAU;return v<0?v+TAU:v},exports.radians=function(deg){return deg*DEG2RAD},exports.round=function(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f},exports.seq=function(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target},exports.seqI=function(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target},exports.smoothstep=function(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)},exports.step=function(edge,x){return x>=edge?1:0};
1
+ "use strict";const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}exports.clamp=clamp,exports.degrees=function(rad){return rad*RAD2DEG},exports.extent=function(a,...b){let minimum,maximum;if(Array.isArray(a)){minimum=maximum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i]),a[i]>maximum&&(maximum=a[i])}else{minimum=maximum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i]),b[i]>maximum&&(maximum=b[i])}return[minimum,maximum]},exports.inverseLerp=function(a,b,value){return clamp((value-a)/(b-a),0,1)},exports.lerp=function(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m},exports.max=function(a,...b){let maximum;if(Array.isArray(a)){maximum=a[0];for(let i=1;i<a.length;i++)a[i]>maximum&&(maximum=a[i])}else{maximum=a;for(let i=0;i<b.length;i++)b[i]>maximum&&(maximum=b[i])}return maximum},exports.mean=function(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)},exports.min=function(a,...b){let minimum;if(Array.isArray(a)){minimum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i])}else{minimum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i])}return minimum},exports.nrad=function(rad){const v=rad%TAU;return v<0?v+TAU:v},exports.radians=function(deg){return deg*DEG2RAD},exports.round=function(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f},exports.seq=function(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target},exports.seqI=function(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target},exports.smoothstep=function(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)},exports.step=function(edge,x){return x>=edge?1:0};
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- !function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports):"function"==typeof define&&define.amd?define(["exports"],factory):factory((global="undefined"!=typeof globalThis?globalThis:global||self)["videx-math"]={})}(this,(function(exports){"use strict";const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}exports.clamp=clamp,exports.degrees=function(rad){return rad*RAD2DEG},exports.extent=function(a,...b){let min,max;if(Array.isArray(a)){min=max=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i]),a[i]>max&&(max=a[i])}else{min=max=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i]),b[i]>max&&(max=b[i])}return[min,max]},exports.inverseLerp=function(a,b,value){return clamp((value-a)/(b-a),0,1)},exports.lerp=function(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m},exports.max=function(a,...b){let max;if(Array.isArray(a)){max=a[0];for(let i=1;i<a.length;i++)a[i]>max&&(max=a[i])}else{max=a;for(let i=0;i<b.length;i++)b[i]>max&&(max=b[i])}return max},exports.mean=function(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)},exports.min=function(a,...b){let min;if(Array.isArray(a)){min=a[0];for(let i=1;i<a.length;i++)a[i]<min&&(min=a[i])}else{min=a;for(let i=0;i<b.length;i++)b[i]<min&&(min=b[i])}return min},exports.nrad=function(rad){const v=rad%TAU;return v<0?v+TAU:v},exports.radians=function(deg){return deg*DEG2RAD},exports.round=function(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f},exports.seq=function(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target},exports.seqI=function(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target},exports.smoothstep=function(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)},exports.step=function(edge,x){return x>=edge?1:0}}));
1
+ !function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports):"function"==typeof define&&define.amd?define(["exports"],factory):factory((global="undefined"!=typeof globalThis?globalThis:global||self)["videx-math"]={})}(this,(function(exports){"use strict";const RAD2DEG=180/Math.PI,DEG2RAD=Math.PI/180,TAU=2*Math.PI;function clamp(value,min=0,max=1){return value<min?min:value>max?max:value}exports.clamp=clamp,exports.degrees=function(rad){return rad*RAD2DEG},exports.extent=function(a,...b){let minimum,maximum;if(Array.isArray(a)){minimum=maximum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i]),a[i]>maximum&&(maximum=a[i])}else{minimum=maximum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i]),b[i]>maximum&&(maximum=b[i])}return[minimum,maximum]},exports.inverseLerp=function(a,b,value){return clamp((value-a)/(b-a),0,1)},exports.lerp=function(a,b,t){const m=clamp(t,0,1);return a*(1-m)+b*m},exports.max=function(a,...b){let maximum;if(Array.isArray(a)){maximum=a[0];for(let i=1;i<a.length;i++)a[i]>maximum&&(maximum=a[i])}else{maximum=a;for(let i=0;i<b.length;i++)b[i]>maximum&&(maximum=b[i])}return maximum},exports.mean=function(a,...b){let sum=0;if(Array.isArray(a)){for(let i=0;i<a.length;i++)sum+=a[i];return sum/a.length}for(let i=0;i<b.length;i++)sum+=b[i];return(sum+a)/(b.length+1)},exports.min=function(a,...b){let minimum;if(Array.isArray(a)){minimum=a[0];for(let i=1;i<a.length;i++)a[i]<minimum&&(minimum=a[i])}else{minimum=a;for(let i=0;i<b.length;i++)b[i]<minimum&&(minimum=b[i])}return minimum},exports.nrad=function(rad){const v=rad%TAU;return v<0?v+TAU:v},exports.radians=function(deg){return deg*DEG2RAD},exports.round=function(value,digits=1){const f=Math.pow(10,digits);return Math.round(value*f)/f},exports.seq=function(start,end,steps){const target=new Array(steps),incr=(end-start)/(steps-1);target[0]=start;for(let i=1;i<steps-1;i++)target[i]=start+i*incr;return target[steps-1]=end,target},exports.seqI=function(steps){const target=new Array(steps),incr=1/(steps-1);target[0]=0;for(let i=1;i<steps-1;i++)target[i]=i*incr;return target[steps-1]=1,target},exports.smoothstep=function(edge0,edge1,x){const t=clamp((x-edge0)/(edge1-edge0));return t*t*(3-2*t)},exports.step=function(edge,x){return x>=edge?1:0}}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@equinor/videx-math",
3
- "version": "1.1.10",
3
+ "version": "1.2.0",
4
4
  "description": "A library with math used by Videx.",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.esm.js",
@@ -19,16 +19,18 @@
19
19
  "./package.json": "./package.json"
20
20
  },
21
21
  "scripts": {
22
- "prebuild": "rimraf dist",
22
+ "prebuild": "node scripts/remove.mjs dist",
23
23
  "build": "rollup -c",
24
24
  "prepub": "npm run build",
25
25
  "pub": "npm publish --access=public",
26
26
  "test": "vitest run",
27
27
  "test:watch": "vitest",
28
- "lint": "eslint src --color",
29
- "predocs": "rimraf docs",
28
+ "coverage": "vitest run --coverage",
29
+ "coverage:ci": "vitest run --coverage",
30
+ "lint": "oxlint",
31
+ "predocs": "node scripts/remove.mjs docs",
30
32
  "docs": "typedoc --out docs src",
31
- "postdocs": "node postdocs.copyfiles.mjs",
33
+ "postdocs": "node scripts/copy_docs_assets.mjs",
32
34
  "prettier": "prettier . --write"
33
35
  },
34
36
  "repository": {
@@ -45,19 +47,15 @@
45
47
  },
46
48
  "homepage": "https://github.com/equinor/videx-math#readme",
47
49
  "devDependencies": {
48
- "@eslint/js": "^9.39.4",
49
- "@rollup/plugin-node-resolve": "^16.0.3",
50
50
  "@rollup/plugin-terser": "^1.0.0",
51
51
  "@rollup/plugin-typescript": "^12.3.0",
52
- "eslint": "^9.39.4",
53
- "eslint-plugin-import": "^2.32.0",
52
+ "@vitest/coverage-v8": "4.1.10",
53
+ "oxlint": "^1.82.0",
54
54
  "prettier": "^3.9.6",
55
- "rimraf": "^6.1.3",
56
55
  "rollup": "^4.60.0",
57
56
  "tslib": "^2.8.1",
58
57
  "typedoc": "^0.28.18",
59
58
  "typescript": "^5.9.3",
60
- "typescript-eslint": "^8.57.2",
61
59
  "vitest": "^4.1.10"
62
60
  }
63
61
  }
@@ -1 +0,0 @@
1
- export {};
File without changes