extra-utils 5.15.0 → 5.17.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 +37 -7
- package/lib/fp/index.d.ts +4 -0
- package/lib/fp/index.js +5 -0
- package/lib/fp/index.js.map +1 -0
- package/lib/fp/not.d.ts +1 -0
- package/lib/fp/not.js +4 -0
- package/lib/fp/not.js.map +1 -0
- package/lib/fp/pipe-async.js.map +1 -0
- package/lib/fp/pipe.js.map +1 -0
- package/lib/fp/reducers/index.js.map +1 -0
- package/lib/fp/reducers/max.js.map +1 -0
- package/lib/fp/reducers/min.js.map +1 -0
- package/lib/fp/reducers/product.js.map +1 -0
- package/lib/fp/reducers/sum.js.map +1 -0
- package/lib/index.d.ts +1 -3
- package/lib/index.js +1 -3
- package/lib/index.js.map +1 -1
- package/lib/number/index.d.ts +2 -0
- package/lib/number/index.js +2 -0
- package/lib/number/index.js.map +1 -1
- package/lib/number/remap-to-item.d.ts +2 -0
- package/lib/number/remap-to-item.js +6 -0
- package/lib/number/remap-to-item.js.map +1 -0
- package/lib/number/remap-to-weighted-item.d.ts +6 -0
- package/lib/number/remap-to-weighted-item.js +17 -0
- package/lib/number/remap-to-weighted-item.js.map +1 -0
- package/package.json +1 -1
- package/src/fp/index.ts +4 -0
- package/src/fp/not.ts +5 -0
- package/src/index.ts +1 -3
- package/src/number/index.ts +2 -0
- package/src/number/remap-to-item.ts +11 -0
- package/src/number/remap-to-weighted-item.ts +46 -0
- package/lib/pipe-async.js.map +0 -1
- package/lib/pipe.js.map +0 -1
- package/lib/reducers/index.js.map +0 -1
- package/lib/reducers/max.js.map +0 -1
- package/lib/reducers/min.js.map +0 -1
- package/lib/reducers/product.js.map +0 -1
- package/lib/reducers/sum.js.map +0 -1
- /package/lib/{pipe-async.d.ts → fp/pipe-async.d.ts} +0 -0
- /package/lib/{pipe-async.js → fp/pipe-async.js} +0 -0
- /package/lib/{pipe.d.ts → fp/pipe.d.ts} +0 -0
- /package/lib/{pipe.js → fp/pipe.js} +0 -0
- /package/lib/{reducers → fp/reducers}/index.d.ts +0 -0
- /package/lib/{reducers → fp/reducers}/index.js +0 -0
- /package/lib/{reducers → fp/reducers}/max.d.ts +0 -0
- /package/lib/{reducers → fp/reducers}/max.js +0 -0
- /package/lib/{reducers → fp/reducers}/min.d.ts +0 -0
- /package/lib/{reducers → fp/reducers}/min.js +0 -0
- /package/lib/{reducers → fp/reducers}/product.d.ts +0 -0
- /package/lib/{reducers → fp/reducers}/product.js +0 -0
- /package/lib/{reducers → fp/reducers}/sum.d.ts +0 -0
- /package/lib/{reducers → fp/reducers}/sum.js +0 -0
- /package/src/{pipe-async.ts → fp/pipe-async.ts} +0 -0
- /package/src/{pipe.ts → fp/pipe.ts} +0 -0
- /package/src/{reducers → fp/reducers}/index.ts +0 -0
- /package/src/{reducers → fp/reducers}/max.ts +0 -0
- /package/src/{reducers → fp/reducers}/min.ts +0 -0
- /package/src/{reducers → fp/reducers}/product.ts +0 -0
- /package/src/{reducers → fp/reducers}/sum.ts +0 -0
package/README.md
CHANGED
|
@@ -87,6 +87,28 @@ function remap(
|
|
|
87
87
|
, [newMin, newMax]: readonly [newMin: number, newMax: number]
|
|
88
88
|
): number
|
|
89
89
|
|
|
90
|
+
function remapToItem<T>(
|
|
91
|
+
value: number
|
|
92
|
+
, range: readonly [min: number, max: number]
|
|
93
|
+
, items: NonEmptyArray<T>
|
|
94
|
+
): T
|
|
95
|
+
|
|
96
|
+
interface IWeightedItem {
|
|
97
|
+
weight: number
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
function remapToWeightedItem<T>(
|
|
101
|
+
value: number
|
|
102
|
+
, range: readonly [min: number, max: number]
|
|
103
|
+
, items: NonEmptyArray<T>
|
|
104
|
+
, weights: NonEmptyArray<number>
|
|
105
|
+
): T
|
|
106
|
+
function remapToWeightedItem<T extends IWeightedItem>(
|
|
107
|
+
value: number
|
|
108
|
+
, range: readonly [min: number, max: number]
|
|
109
|
+
, items: NonEmptyArray<T>
|
|
110
|
+
): T
|
|
111
|
+
|
|
90
112
|
function remapToIndex(
|
|
91
113
|
value: number
|
|
92
114
|
, range: readonly [min: number, max: number]
|
|
@@ -277,15 +299,15 @@ function isSymbol(val: unknown): val is symbol
|
|
|
277
299
|
function isntSymbol<T>(val: T): val is Exclude<T, symbol>
|
|
278
300
|
```
|
|
279
301
|
|
|
280
|
-
###
|
|
302
|
+
### Functional programming
|
|
303
|
+
#### not
|
|
281
304
|
```ts
|
|
282
|
-
function
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
function product(result: number, current: number): number
|
|
305
|
+
function not<Args extends unknown[]>(
|
|
306
|
+
predicate: (...args: Args) => boolean
|
|
307
|
+
): (...args: Args) => boolean
|
|
286
308
|
```
|
|
287
309
|
|
|
288
|
-
|
|
310
|
+
#### pipe
|
|
289
311
|
```ts
|
|
290
312
|
function pipe<A, B, C, D, E, F, G, H>(
|
|
291
313
|
value: A
|
|
@@ -356,7 +378,7 @@ function pipe<T, U>(
|
|
|
356
378
|
): U
|
|
357
379
|
```
|
|
358
380
|
|
|
359
|
-
|
|
381
|
+
#### pipeAsync
|
|
360
382
|
```ts
|
|
361
383
|
function pipeAsync<A, B, C, D, E, F, G, H>(
|
|
362
384
|
value: Awaitable<A>
|
|
@@ -426,3 +448,11 @@ function pipeAsync<T, U>(
|
|
|
426
448
|
, ...operators: Array<(value: any) => Awaitable<unknown>>
|
|
427
449
|
): Promise<U>
|
|
428
450
|
```
|
|
451
|
+
|
|
452
|
+
#### Reducers
|
|
453
|
+
```ts
|
|
454
|
+
function max(result: number, current: number): number
|
|
455
|
+
function min(result: number, current: number): number
|
|
456
|
+
function sum(result: number, current: number): number
|
|
457
|
+
function product(result: number, current: number): number
|
|
458
|
+
```
|
package/lib/fp/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fp/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAA;AACnC,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA"}
|
package/lib/fp/not.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function not<Args extends unknown[]>(predicate: (...args: Args) => boolean): (...args: Args) => boolean;
|
package/lib/fp/not.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"not.js","sourceRoot":"","sources":["../../src/fp/not.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,CACjB,SAAqC;IAErC,OAAO,CAAC,GAAG,IAAU,EAAE,EAAE,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAA;AAC/C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipe-async.js","sourceRoot":"","sources":["../../src/fp/pipe-async.ts"],"names":[],"mappings":"AAqEA,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,KAAmB,EACnB,GAAG,SAAyC;IAE5C,IAAI,MAAM,GAAU,MAAM,KAAK,CAAA;IAC/B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAA;KAChC;IACD,OAAO,MAAW,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../src/fp/pipe.ts"],"names":[],"mappings":"AAmEA,MAAM,UAAU,IAAI,CAClB,KAAQ,EACR,GAAG,SAAyC;IAE5C,IAAI,MAAM,GAAU,KAAK,CAAA;IACzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;KAC1B;IACD,OAAO,MAAW,CAAA;AACpB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/fp/reducers/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"max.js","sourceRoot":"","sources":["../../../src/fp/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
|
+
{"version":3,"file":"min.js","sourceRoot":"","sources":["../../../src/fp/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
|
+
{"version":3,"file":"product.js","sourceRoot":"","sources":["../../../src/fp/reducers/product.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,OAAe;IACrD,OAAO,MAAM,GAAG,OAAO,CAAA;AACzB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sum.js","sourceRoot":"","sources":["../../../src/fp/reducers/sum.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,GAAG,CAAC,MAAc,EAAE,OAAe;IACjD,OAAO,MAAM,GAAG,OAAO,CAAA;AACzB,CAAC"}
|
package/lib/index.d.ts
CHANGED
|
@@ -11,6 +11,4 @@ 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 './
|
|
15
|
-
export * from './pipe.js';
|
|
16
|
-
export * from './pipe-async.js';
|
|
14
|
+
export * from './fp/index.js';
|
package/lib/index.js
CHANGED
|
@@ -11,7 +11,5 @@ 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 './
|
|
15
|
-
export * from './pipe.js';
|
|
16
|
-
export * from './pipe-async.js';
|
|
14
|
+
export * from './fp/index.js';
|
|
17
15
|
//# 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,
|
|
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,eAAe,CAAA"}
|
package/lib/number/index.d.ts
CHANGED
|
@@ -5,6 +5,8 @@ export * from './is-nan.js';
|
|
|
5
5
|
export * from './is-number.js';
|
|
6
6
|
export * from './clamp.js';
|
|
7
7
|
export * from './remap.js';
|
|
8
|
+
export * from './remap-to-item.js';
|
|
9
|
+
export * from './remap-to-weighted-item.js';
|
|
8
10
|
export * from './remap-to-index.js';
|
|
9
11
|
export * from './remap-to-weighted-index.js';
|
|
10
12
|
export * from './lerp.js';
|
package/lib/number/index.js
CHANGED
|
@@ -5,6 +5,8 @@ export * from './is-nan.js';
|
|
|
5
5
|
export * from './is-number.js';
|
|
6
6
|
export * from './clamp.js';
|
|
7
7
|
export * from './remap.js';
|
|
8
|
+
export * from './remap-to-item.js';
|
|
9
|
+
export * from './remap-to-weighted-item.js';
|
|
8
10
|
export * from './remap-to-index.js';
|
|
9
11
|
export * from './remap-to-weighted-index.js';
|
|
10
12
|
export * from './lerp.js';
|
package/lib/number/index.js.map
CHANGED
|
@@ -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;AAC9B,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,WAAW,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;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,WAAW,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remap-to-item.js","sourceRoot":"","sources":["../../src/number/remap-to-item.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAElD,MAAM,UAAU,WAAW,CACzB,KAAa,EACb,KAA0C,EAC1C,KAAuB;IAEvB,MAAM,KAAK,GAAG,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;IAC/C,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;AACrB,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { NonEmptyArray } from 'justypes';
|
|
2
|
+
export interface IWeightedItem {
|
|
3
|
+
weight: number;
|
|
4
|
+
}
|
|
5
|
+
export declare function remapToWeightedItem<T>(value: number, range: readonly [min: number, max: number], items: NonEmptyArray<T>, weights: NonEmptyArray<number>): T;
|
|
6
|
+
export declare function remapToWeightedItem<T extends IWeightedItem>(value: number, range: readonly [min: number, max: number], items: NonEmptyArray<T>): T;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { remapToWeightedIndex } from './remap-to-weighted-index.js';
|
|
2
|
+
export function remapToWeightedItem(...args) {
|
|
3
|
+
let value;
|
|
4
|
+
let range;
|
|
5
|
+
let items;
|
|
6
|
+
let weights;
|
|
7
|
+
if (args.length === 3) {
|
|
8
|
+
[value, range, items] = args;
|
|
9
|
+
weights = items.map(item => item.weight);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
[value, range, items, weights] = args;
|
|
13
|
+
}
|
|
14
|
+
const index = remapToWeightedIndex(value, range, weights);
|
|
15
|
+
return items[index];
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=remap-to-weighted-item.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"remap-to-weighted-item.js","sourceRoot":"","sources":["../../src/number/remap-to-weighted-item.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAiBnE,MAAM,UAAU,mBAAmB,CAA0B,GAAG,IAW7D;IAED,IAAI,KAAa,CAAA;IACjB,IAAI,KAA0C,CAAA;IAC9C,IAAI,KAAuB,CAAA;IAC3B,IAAI,OAA8B,CAAA;IAElC,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;QACrB,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,GAAG,IAAI,CAAA;QAC5B,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAA0B,CAAA;KAClE;SAAM;QACL,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,GAAG,IAAI,CAAA;KACtC;IAED,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,CAAA;IACzD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAA;AACrB,CAAC"}
|
package/package.json
CHANGED
package/src/fp/index.ts
ADDED
package/src/fp/not.ts
ADDED
package/src/index.ts
CHANGED
|
@@ -11,6 +11,4 @@ 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 './
|
|
15
|
-
export * from './pipe.js'
|
|
16
|
-
export * from './pipe-async.js'
|
|
14
|
+
export * from './fp/index.js'
|
package/src/number/index.ts
CHANGED
|
@@ -5,6 +5,8 @@ export * from './is-nan.js'
|
|
|
5
5
|
export * from './is-number.js'
|
|
6
6
|
export * from './clamp.js'
|
|
7
7
|
export * from './remap.js'
|
|
8
|
+
export * from './remap-to-item.js'
|
|
9
|
+
export * from './remap-to-weighted-item.js'
|
|
8
10
|
export * from './remap-to-index.js'
|
|
9
11
|
export * from './remap-to-weighted-index.js'
|
|
10
12
|
export * from './lerp.js'
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { NonEmptyArray } from 'justypes'
|
|
2
|
+
import { remapToIndex } from './remap-to-index.js'
|
|
3
|
+
|
|
4
|
+
export function remapToItem<T>(
|
|
5
|
+
value: number
|
|
6
|
+
, range: readonly [min: number, max: number]
|
|
7
|
+
, items: NonEmptyArray<T>
|
|
8
|
+
): T {
|
|
9
|
+
const index = remapToIndex(value, range, items)
|
|
10
|
+
return items[index]
|
|
11
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { NonEmptyArray } from 'justypes'
|
|
2
|
+
import { remapToWeightedIndex } from './remap-to-weighted-index.js'
|
|
3
|
+
|
|
4
|
+
export interface IWeightedItem {
|
|
5
|
+
weight: number
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
export function remapToWeightedItem<T>(
|
|
9
|
+
value: number
|
|
10
|
+
, range: readonly [min: number, max: number]
|
|
11
|
+
, items: NonEmptyArray<T>
|
|
12
|
+
, weights: NonEmptyArray<number>
|
|
13
|
+
): T
|
|
14
|
+
export function remapToWeightedItem<T extends IWeightedItem>(
|
|
15
|
+
value: number
|
|
16
|
+
, range: readonly [min: number, max: number]
|
|
17
|
+
, items: NonEmptyArray<T>
|
|
18
|
+
): T
|
|
19
|
+
export function remapToWeightedItem<T extends IWeightedItem>(...args:
|
|
20
|
+
| [
|
|
21
|
+
value: number
|
|
22
|
+
, range: readonly [min: number, max: number]
|
|
23
|
+
, items: NonEmptyArray<T>
|
|
24
|
+
, weights: NonEmptyArray<number>
|
|
25
|
+
]
|
|
26
|
+
| [
|
|
27
|
+
value: number
|
|
28
|
+
, range: readonly [min: number, max: number]
|
|
29
|
+
, items: NonEmptyArray<T>
|
|
30
|
+
]
|
|
31
|
+
): T {
|
|
32
|
+
let value: number
|
|
33
|
+
let range: readonly [min: number, max: number]
|
|
34
|
+
let items: NonEmptyArray<T>
|
|
35
|
+
let weights: NonEmptyArray<number>
|
|
36
|
+
|
|
37
|
+
if (args.length === 3) {
|
|
38
|
+
[value, range, items] = args
|
|
39
|
+
weights = items.map(item => item.weight) as NonEmptyArray<number>
|
|
40
|
+
} else {
|
|
41
|
+
[value, range, items, weights] = args
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
const index = remapToWeightedIndex(value, range, weights)
|
|
45
|
+
return items[index]
|
|
46
|
+
}
|
package/lib/pipe-async.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pipe-async.js","sourceRoot":"","sources":["../src/pipe-async.ts"],"names":[],"mappings":"AAqEA,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,KAAmB,EACnB,GAAG,SAAyC;IAE5C,IAAI,MAAM,GAAU,MAAM,KAAK,CAAA;IAC/B,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC,CAAA;KAChC;IACD,OAAO,MAAW,CAAA;AACpB,CAAC"}
|
package/lib/pipe.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../src/pipe.ts"],"names":[],"mappings":"AAmEA,MAAM,UAAU,IAAI,CAClB,KAAQ,EACR,GAAG,SAAyC;IAE5C,IAAI,MAAM,GAAU,KAAK,CAAA;IACzB,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE;QAChC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAA;KAC1B;IACD,OAAO,MAAW,CAAA;AACpB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
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;AACxB,cAAc,cAAc,CAAA"}
|
package/lib/reducers/max.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
package/lib/reducers/min.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"product.js","sourceRoot":"","sources":["../../src/reducers/product.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,OAAO,CAAC,MAAc,EAAE,OAAe;IACrD,OAAO,MAAM,GAAG,OAAO,CAAA;AACzB,CAAC"}
|
package/lib/reducers/sum.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
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"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|