extra-utils 5.6.0 → 5.8.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.
package/README.md CHANGED
@@ -72,6 +72,11 @@ function isntNaN(val: number): boolean
72
72
 
73
73
  function isBigInt(val: unknown): val is bigint
74
74
  function isntBigInt<T>(val: T): val is Exclude<T, bigint>
75
+
76
+ function clamp(
77
+ val: number
78
+ , [min, max]: [min: number, max: number]
79
+ ): number
75
80
  ```
76
81
 
77
82
  ### Object
@@ -242,6 +247,13 @@ function isSymbol(val: unknown): val is symbol
242
247
  function isntSymbol<T>(val: T): val is Exclude<T, symbol>
243
248
  ```
244
249
 
250
+ ### Reducers
251
+ ```ts
252
+ function max(result: number, current: number): number
253
+ function min(result: number, current: number): number
254
+ function sum(result: number, current: number): number
255
+ ```
256
+
245
257
  ### pipe
246
258
  ```ts
247
259
  function pipe<A, B, C, D, E, F, G, H>(
package/lib/index.d.ts CHANGED
@@ -11,5 +11,6 @@ export * from './is-regexp.js';
11
11
  export * from './is-symbol.js';
12
12
  export * from './is-date.js';
13
13
  export * from './is-function.js';
14
+ export * from './reducers/index.js';
14
15
  export * from './pipe.js';
15
16
  export * from './pipe-async.js';
package/lib/index.js CHANGED
@@ -11,6 +11,7 @@ export * from './is-regexp.js';
11
11
  export * from './is-symbol.js';
12
12
  export * from './is-date.js';
13
13
  export * from './is-function.js';
14
+ export * from './reducers/index.js';
14
15
  export * from './pipe.js';
15
16
  export * from './pipe-async.js';
16
17
  //# sourceMappingURL=index.js.map
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAA;AACrC,cAAc,kBAAkB,CAAA;AAChC,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,mBAAmB,CAAA;AACjC,cAAc,oBAAoB,CAAA;AAClC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
@@ -0,0 +1 @@
1
+ export declare function clamp(val: number, [min, max]: [min: number, max: number]): number;
@@ -0,0 +1,4 @@
1
+ export function clamp(val, [min, max]) {
2
+ return Math.max(min, Math.min(val, max));
3
+ }
4
+ //# sourceMappingURL=clamp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"clamp.js","sourceRoot":"","sources":["../../src/number/clamp.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,KAAK,CACnB,GAAW,EACX,CAAC,GAAG,EAAE,GAAG,CAA6B;IAEtC,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAA;AAC1C,CAAC"}
@@ -3,3 +3,4 @@ export * from './is-finite.js';
3
3
  export * from './is-infinity.js';
4
4
  export * from './is-nan.js';
5
5
  export * from './is-number.js';
6
+ export * from './clamp.js';
@@ -3,4 +3,5 @@ export * from './is-finite.js';
3
3
  export * from './is-infinity.js';
4
4
  export * from './is-nan.js';
5
5
  export * from './is-number.js';
6
+ export * from './clamp.js';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/number/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/number/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,kBAAkB,CAAA;AAChC,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,YAAY,CAAA"}
@@ -0,0 +1,3 @@
1
+ export * from './max.js';
2
+ export * from './min.js';
3
+ export * from './sum.js';
@@ -0,0 +1,4 @@
1
+ export * from './max.js';
2
+ export * from './min.js';
3
+ export * from './sum.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/reducers/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA"}
@@ -0,0 +1 @@
1
+ export declare function max(result: number, current: number): number;
@@ -0,0 +1,6 @@
1
+ export function max(result, current) {
2
+ return current > result
3
+ ? current
4
+ : result;
5
+ }
6
+ //# sourceMappingURL=max.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"max.js","sourceRoot":"","sources":["../../src/reducers/max.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,OAAe;IACjD,OAAO,OAAO,GAAG,MAAM;QAClB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function min(result: number, current: number): number;
@@ -0,0 +1,6 @@
1
+ export function min(result, current) {
2
+ return current < result
3
+ ? current
4
+ : result;
5
+ }
6
+ //# sourceMappingURL=min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"min.js","sourceRoot":"","sources":["../../src/reducers/min.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,OAAe;IACjD,OAAO,OAAO,GAAG,MAAM;QAClB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,MAAM,CAAA;AACf,CAAC"}
@@ -0,0 +1 @@
1
+ export declare function sum(result: number, current: number): number;
@@ -0,0 +1,4 @@
1
+ export function sum(result, current) {
2
+ return result + current;
3
+ }
4
+ //# sourceMappingURL=sum.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sum.js","sourceRoot":"","sources":["../../src/reducers/sum.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,OAAe;IACjD,OAAO,MAAM,GAAG,OAAO,CAAA;AACzB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "extra-utils",
3
- "version": "5.6.0",
3
+ "version": "5.8.0",
4
4
  "description": "Utilities for JavaScript and Typescript",
5
5
  "files": [
6
6
  "src",
package/src/index.ts CHANGED
@@ -11,5 +11,6 @@ export * from './is-regexp.js'
11
11
  export * from './is-symbol.js'
12
12
  export * from './is-date.js'
13
13
  export * from './is-function.js'
14
+ export * from './reducers/index.js'
14
15
  export * from './pipe.js'
15
16
  export * from './pipe-async.js'
@@ -0,0 +1,6 @@
1
+ export function clamp(
2
+ val: number
3
+ , [min, max]: [min: number, max: number]
4
+ ): number {
5
+ return Math.max(min, Math.min(val, max))
6
+ }
@@ -3,3 +3,4 @@ export * from './is-finite.js'
3
3
  export * from './is-infinity.js'
4
4
  export * from './is-nan.js'
5
5
  export * from './is-number.js'
6
+ export * from './clamp.js'
@@ -0,0 +1,3 @@
1
+ export * from './max.js'
2
+ export * from './min.js'
3
+ export * from './sum.js'
@@ -0,0 +1,5 @@
1
+ export function max(result: number, current: number): number {
2
+ return current > result
3
+ ? current
4
+ : result
5
+ }
@@ -0,0 +1,5 @@
1
+ export function min(result: number, current: number): number {
2
+ return current < result
3
+ ? current
4
+ : result
5
+ }
@@ -0,0 +1,3 @@
1
+ export function sum(result: number, current: number): number {
2
+ return result + current
3
+ }