synstate 0.1.1 → 0.1.2
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 +184 -218
- package/dist/core/combine/combine.d.mts +1 -1
- package/dist/core/combine/combine.mjs +2 -2
- package/dist/core/combine/combine.mjs.map +1 -1
- package/dist/core/create/source.d.mts +1 -1
- package/dist/core/create/source.mjs +2 -2
- package/dist/core/create/source.mjs.map +1 -1
- package/dist/core/index.d.mts +1 -0
- package/dist/core/index.d.mts.map +1 -1
- package/dist/core/index.mjs +15 -3
- package/dist/core/index.mjs.map +1 -1
- package/dist/core/operators/index.mjs +3 -3
- package/dist/core/operators/map-with-index.d.mts +0 -13
- package/dist/core/operators/map-with-index.d.mts.map +1 -1
- package/dist/core/operators/map-with-index.mjs +2 -19
- package/dist/core/operators/map-with-index.mjs.map +1 -1
- package/dist/core/operators/merge-map.d.mts +1 -1
- package/dist/core/operators/merge-map.mjs +1 -1
- package/dist/core/operators/skip-if-no-change.d.mts +1 -1
- package/dist/core/operators/skip-if-no-change.mjs +2 -2
- package/dist/core/operators/skip-if-no-change.mjs.map +1 -1
- package/dist/core/operators/skip-while.d.mts +0 -1
- package/dist/core/operators/skip-while.d.mts.map +1 -1
- package/dist/core/operators/skip-while.mjs +2 -5
- package/dist/core/operators/skip-while.mjs.map +1 -1
- package/dist/core/operators/take-while.d.mts +0 -1
- package/dist/core/operators/take-while.d.mts.map +1 -1
- package/dist/core/operators/take-while.mjs +1 -3
- package/dist/core/operators/take-while.mjs.map +1 -1
- package/dist/core/operators/with-buffered-from.d.mts +4 -0
- package/dist/core/operators/with-buffered-from.d.mts.map +1 -1
- package/dist/core/operators/with-buffered-from.mjs +5 -1
- package/dist/core/operators/with-buffered-from.mjs.map +1 -1
- package/dist/core/operators/with-current-value-from.d.mts +4 -0
- package/dist/core/operators/with-current-value-from.d.mts.map +1 -1
- package/dist/core/operators/with-current-value-from.mjs +5 -1
- package/dist/core/operators/with-current-value-from.mjs.map +1 -1
- package/dist/core/predefined/index.d.mts +2 -0
- package/dist/core/predefined/index.d.mts.map +1 -0
- package/dist/core/predefined/index.mjs +13 -0
- package/dist/core/predefined/index.mjs.map +1 -0
- package/dist/core/predefined/operators/attach-index.d.mts +8 -0
- package/dist/core/predefined/operators/attach-index.d.mts.map +1 -0
- package/dist/core/predefined/operators/attach-index.mjs +13 -0
- package/dist/core/predefined/operators/attach-index.mjs.map +1 -0
- package/dist/core/predefined/operators/index.d.mts +13 -0
- package/dist/core/predefined/operators/index.d.mts.map +1 -0
- package/dist/core/predefined/operators/index.mjs +13 -0
- package/dist/core/predefined/operators/index.mjs.map +1 -0
- package/dist/core/predefined/operators/map-optional.d.mts +4 -0
- package/dist/core/predefined/operators/map-optional.d.mts.map +1 -0
- package/dist/core/predefined/operators/map-optional.mjs +7 -0
- package/dist/core/predefined/operators/map-optional.mjs.map +1 -0
- package/dist/core/predefined/operators/map-result-err.d.mts +4 -0
- package/dist/core/predefined/operators/map-result-err.d.mts.map +1 -0
- package/dist/core/predefined/operators/map-result-err.mjs +7 -0
- package/dist/core/predefined/operators/map-result-err.mjs.map +1 -0
- package/dist/core/predefined/operators/map-result-ok.d.mts +4 -0
- package/dist/core/predefined/operators/map-result-ok.d.mts.map +1 -0
- package/dist/core/predefined/operators/map-result-ok.mjs +7 -0
- package/dist/core/predefined/operators/map-result-ok.mjs.map +1 -0
- package/dist/core/predefined/operators/map-to.d.mts +3 -0
- package/dist/core/predefined/operators/map-to.d.mts.map +1 -0
- package/dist/core/predefined/operators/map-to.mjs +6 -0
- package/dist/core/predefined/operators/map-to.mjs.map +1 -0
- package/dist/core/predefined/operators/map.d.mts +3 -0
- package/dist/core/predefined/operators/map.d.mts.map +1 -0
- package/dist/core/predefined/operators/map.mjs +8 -0
- package/dist/core/predefined/operators/map.mjs.map +1 -0
- package/dist/core/predefined/operators/pluck.d.mts +8 -0
- package/dist/core/predefined/operators/pluck.d.mts.map +1 -0
- package/dist/core/predefined/operators/pluck.mjs +11 -0
- package/dist/core/predefined/operators/pluck.mjs.map +1 -0
- package/dist/core/predefined/operators/skip.d.mts +3 -0
- package/dist/core/predefined/operators/skip.d.mts.map +1 -0
- package/dist/core/predefined/operators/skip.mjs +9 -0
- package/dist/core/predefined/operators/skip.mjs.map +1 -0
- package/dist/core/predefined/operators/take.d.mts +3 -0
- package/dist/core/predefined/operators/take.d.mts.map +1 -0
- package/dist/core/predefined/operators/take.mjs +8 -0
- package/dist/core/predefined/operators/take.mjs.map +1 -0
- package/dist/core/predefined/operators/unwrap-optional.d.mts +4 -0
- package/dist/core/predefined/operators/unwrap-optional.d.mts.map +1 -0
- package/dist/core/predefined/operators/unwrap-optional.mjs +9 -0
- package/dist/core/predefined/operators/unwrap-optional.mjs.map +1 -0
- package/dist/core/predefined/operators/unwrap-result-err.d.mts +4 -0
- package/dist/core/predefined/operators/unwrap-result-err.d.mts.map +1 -0
- package/dist/core/predefined/operators/unwrap-result-err.mjs +7 -0
- package/dist/core/predefined/operators/unwrap-result-err.mjs.map +1 -0
- package/dist/core/predefined/operators/unwrap-result-ok.d.mts +4 -0
- package/dist/core/predefined/operators/unwrap-result-ok.d.mts.map +1 -0
- package/dist/core/predefined/operators/unwrap-result-ok.mjs +9 -0
- package/dist/core/predefined/operators/unwrap-result-ok.mjs.map +1 -0
- package/dist/entry-point.mjs +15 -3
- package/dist/entry-point.mjs.map +1 -1
- package/dist/index.mjs +15 -3
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
- package/src/core/combine/combine.mts +2 -2
- package/src/core/create/source.mts +2 -2
- package/src/core/index.mts +1 -0
- package/src/core/operators/map-with-index.mts +3 -62
- package/src/core/operators/merge-map.mts +1 -1
- package/src/core/operators/skip-if-no-change.mts +2 -2
- package/src/core/operators/skip-while.mts +1 -16
- package/src/core/operators/take-while.mts +2 -8
- package/src/core/operators/with-buffered-from.mts +5 -1
- package/src/core/operators/with-current-value-from.mts +5 -1
- package/src/core/predefined/index.mts +1 -0
- package/src/core/predefined/operators/attach-index.mts +13 -0
- package/src/core/predefined/operators/index.mts +12 -0
- package/src/core/predefined/operators/map-optional.mts +8 -0
- package/src/core/predefined/operators/map-result-err.mts +8 -0
- package/src/core/predefined/operators/map-result-ok.mts +8 -0
- package/src/core/predefined/operators/map-to.mts +5 -0
- package/src/core/predefined/operators/map.mts +5 -0
- package/src/core/predefined/operators/pluck.mts +12 -0
- package/src/core/predefined/operators/skip.mts +10 -0
- package/src/core/predefined/operators/take.mts +6 -0
- package/src/core/predefined/operators/unwrap-optional.mts +9 -0
- package/src/core/predefined/operators/unwrap-result-err.mts +8 -0
- package/src/core/predefined/operators/unwrap-result-ok.mts +9 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map-to.mjs","sources":["../../../../src/core/predefined/operators/map-to.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAGO,MAAM,KAAK,GAAG,CAAO,KAAQ,KAClC,GAAG,CAAC,MAAM,KAAK;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/map.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,eAAO,MAAM,GAAG,GAAI,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAG,wBAAwB,CAAC,CAAC,EAAE,CAAC,CACvD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"map.mjs","sources":["../../../../src/core/predefined/operators/map.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAGO,MAAM,GAAG,GAAG,CAAO,KAAkB,KAC1C,YAAY,CAAC,KAAK;;;;"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
2
|
+
export declare const pluck: <A, K extends keyof A>(key: K) => KeepInitialValueOperator<A, A[K]>;
|
|
3
|
+
/**
|
|
4
|
+
* Alias for `pluck`.
|
|
5
|
+
* @see pluck
|
|
6
|
+
*/
|
|
7
|
+
export declare const getKey: <A, K extends keyof A>(key: K) => KeepInitialValueOperator<A, A[K]>;
|
|
8
|
+
//# sourceMappingURL=pluck.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluck.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/pluck.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,eAAO,MAAM,KAAK,GAAI,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,EACxC,KAAK,CAAC,KACL,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAuB,CAAC;AAE3D;;;GAGG;AACH,eAAO,MAAM,MAAM,GARG,CAAC,EAAE,CAAC,SAAS,MAAM,CAAC,OACnC,CAAC,KACL,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAMR,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pluck.mjs","sources":["../../../../src/core/predefined/operators/pluck.mts"],"sourcesContent":[null],"names":[],"mappings":";;MAGa,KAAK,GAAG,CACnB,GAAM,KACgC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC;AAEzD;;;AAGG;AACI,MAAM,MAAM,GAAG;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skip.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/skip.mts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,eAAO,MAAM,IAAI,GAAI,CAAC,EACpB,GAAG,2BAA2B,KAC7B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CACyC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { PositiveSafeInt } from 'ts-data-forge';
|
|
2
|
+
import '../../utils/id-maker.mjs';
|
|
3
|
+
import { skipWhile } from '../../operators/skip-while.mjs';
|
|
4
|
+
|
|
5
|
+
const skip = (n) => !PositiveSafeInt.is(n) ? idFn : skipWhile((_, index) => index + 1 <= n);
|
|
6
|
+
const idFn = (value) => value;
|
|
7
|
+
|
|
8
|
+
export { skip };
|
|
9
|
+
//# sourceMappingURL=skip.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"skip.mjs","sources":["../../../../src/core/predefined/operators/skip.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIO,MAAM,IAAI,GAAG,CAClB,CAA8B,KAE9B,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC;AAExE,MAAM,IAAI,GAAG,CAAK,KAAQ,KAAQ,KAAK;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"take.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/take.mts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAEtE,eAAO,MAAM,IAAI,GAAI,CAAC,EACpB,GAAG,2BAA2B,KAC7B,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAA4C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"take.mjs","sources":["../../../../src/core/predefined/operators/take.mts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAGO,MAAM,IAAI,GAAG,CAClB,CAA8B,KACK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,KAAK,GAAG,CAAC,IAAI,CAAC;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Optional } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
export declare const unwrapOptional: <O extends UnknownOptional>() => KeepInitialValueOperator<O, Optional.Unwrap<O> | undefined>;
|
|
4
|
+
//# sourceMappingURL=unwrap-optional.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-optional.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/unwrap-optional.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,eAAO,MAAM,cAAc,GACzB,CAAC,SAAS,eAAe,OACtB,wBAAwB,CAAC,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,CAEA,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Optional } from 'ts-data-forge';
|
|
2
|
+
import { map } from './map.mjs';
|
|
3
|
+
|
|
4
|
+
const unwrapOptional = () =>
|
|
5
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
6
|
+
map(Optional.unwrap);
|
|
7
|
+
|
|
8
|
+
export { unwrapOptional };
|
|
9
|
+
//# sourceMappingURL=unwrap-optional.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-optional.mjs","sources":["../../../../src/core/predefined/operators/unwrap-optional.mts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIO,MAAM,cAAc,GAAG;AAG5B;AACA,GAAG,CAAC,QAAQ,CAAC,MAA+C;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Result } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
export declare const unwrapResultErr: <R extends UnknownResult>() => KeepInitialValueOperator<R, Result.UnwrapErr<R> | undefined>;
|
|
4
|
+
//# sourceMappingURL=unwrap-result-err.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-result-err.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/unwrap-result-err.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,eAAO,MAAM,eAAe,GAC1B,CAAC,SAAS,aAAa,OACpB,wBAAwB,CAAC,CAAC,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,SAAS,CACC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-result-err.mjs","sources":["../../../../src/core/predefined/operators/unwrap-result-err.mts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIO,MAAM,eAAe,GAAG,MAG7B,GAAG,CAAC,MAAM,CAAC,SAAmD;;;;"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { Result } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
export declare const unwrapResultOk: <R extends UnknownResult>() => KeepInitialValueOperator<R, Result.UnwrapOk<R> | undefined>;
|
|
4
|
+
//# sourceMappingURL=unwrap-result-ok.d.mts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-result-ok.d.mts","sourceRoot":"","sources":["../../../../src/core/predefined/operators/unwrap-result-ok.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,KAAK,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AAGtE,eAAO,MAAM,cAAc,GACzB,CAAC,SAAS,aAAa,OACpB,wBAAwB,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,SAAS,CAEA,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Result } from 'ts-data-forge';
|
|
2
|
+
import { map } from './map.mjs';
|
|
3
|
+
|
|
4
|
+
const unwrapResultOk = () =>
|
|
5
|
+
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
6
|
+
map(Result.unwrapOk);
|
|
7
|
+
|
|
8
|
+
export { unwrapResultOk };
|
|
9
|
+
//# sourceMappingURL=unwrap-result-ok.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"unwrap-result-ok.mjs","sources":["../../../../src/core/predefined/operators/unwrap-result-ok.mts"],"sourcesContent":[null],"names":[],"mappings":";;;AAIO,MAAM,cAAc,GAAG;AAG5B;AACA,GAAG,CAAC,MAAM,CAAC,QAAiD;;;;"}
|
package/dist/entry-point.mjs
CHANGED
|
@@ -14,20 +14,32 @@ export { timer } from './core/create/timer.mjs';
|
|
|
14
14
|
export { auditTime } from './core/operators/audit-time.mjs';
|
|
15
15
|
export { debounceTime } from './core/operators/debounce-time.mjs';
|
|
16
16
|
export { filter } from './core/operators/filter.mjs';
|
|
17
|
-
export {
|
|
17
|
+
export { mapWithIndex } from './core/operators/map-with-index.mjs';
|
|
18
18
|
export { flatMap, mergeMap } from './core/operators/merge-map.mjs';
|
|
19
19
|
export { pairwise } from './core/operators/pairwise.mjs';
|
|
20
20
|
export { scan } from './core/operators/scan.mjs';
|
|
21
21
|
export { distinctUntilChanged, skipIfNoChange } from './core/operators/skip-if-no-change.mjs';
|
|
22
22
|
export { skipUntil } from './core/operators/skip-until.mjs';
|
|
23
|
-
export {
|
|
23
|
+
export { skipWhile } from './core/operators/skip-while.mjs';
|
|
24
24
|
export { switchMap } from './core/operators/switch-map.mjs';
|
|
25
25
|
export { takeUntil } from './core/operators/take-until.mjs';
|
|
26
|
-
export {
|
|
26
|
+
export { takeWhile } from './core/operators/take-while.mjs';
|
|
27
27
|
export { throttleTime } from './core/operators/throttle-time.mjs';
|
|
28
28
|
export { withBuffered, withBufferedFrom } from './core/operators/with-buffered-from.mjs';
|
|
29
29
|
export { withCurrentValueFrom, withLatestFrom } from './core/operators/with-current-value-from.mjs';
|
|
30
30
|
export { withInitialValue } from './core/operators/with-initial-value.mjs';
|
|
31
|
+
export { attachIndex, withIndex } from './core/predefined/operators/attach-index.mjs';
|
|
32
|
+
export { mapOptional } from './core/predefined/operators/map-optional.mjs';
|
|
33
|
+
export { mapResultErr } from './core/predefined/operators/map-result-err.mjs';
|
|
34
|
+
export { mapResultOk } from './core/predefined/operators/map-result-ok.mjs';
|
|
35
|
+
export { mapTo } from './core/predefined/operators/map-to.mjs';
|
|
36
|
+
export { map } from './core/predefined/operators/map.mjs';
|
|
37
|
+
export { getKey, pluck } from './core/predefined/operators/pluck.mjs';
|
|
38
|
+
export { skip } from './core/predefined/operators/skip.mjs';
|
|
39
|
+
export { take } from './core/predefined/operators/take.mjs';
|
|
40
|
+
export { unwrapOptional } from './core/predefined/operators/unwrap-optional.mjs';
|
|
41
|
+
export { unwrapResultErr } from './core/predefined/operators/unwrap-result-err.mjs';
|
|
42
|
+
export { unwrapResultOk } from './core/predefined/operators/unwrap-result-ok.mjs';
|
|
31
43
|
import 'ts-data-forge';
|
|
32
44
|
export { isChildObservable, isManagerObservable, isRootObservable } from './core/types/observable.mjs';
|
|
33
45
|
export { issueObservableId, issueSubscriberId, issueUpdaterSymbol } from './core/utils/id-maker.mjs';
|
package/dist/entry-point.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entry-point.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"entry-point.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/dist/index.mjs
CHANGED
|
@@ -14,20 +14,32 @@ export { timer } from './core/create/timer.mjs';
|
|
|
14
14
|
export { auditTime } from './core/operators/audit-time.mjs';
|
|
15
15
|
export { debounceTime } from './core/operators/debounce-time.mjs';
|
|
16
16
|
export { filter } from './core/operators/filter.mjs';
|
|
17
|
-
export {
|
|
17
|
+
export { mapWithIndex } from './core/operators/map-with-index.mjs';
|
|
18
18
|
export { flatMap, mergeMap } from './core/operators/merge-map.mjs';
|
|
19
19
|
export { pairwise } from './core/operators/pairwise.mjs';
|
|
20
20
|
export { scan } from './core/operators/scan.mjs';
|
|
21
21
|
export { distinctUntilChanged, skipIfNoChange } from './core/operators/skip-if-no-change.mjs';
|
|
22
22
|
export { skipUntil } from './core/operators/skip-until.mjs';
|
|
23
|
-
export {
|
|
23
|
+
export { skipWhile } from './core/operators/skip-while.mjs';
|
|
24
24
|
export { switchMap } from './core/operators/switch-map.mjs';
|
|
25
25
|
export { takeUntil } from './core/operators/take-until.mjs';
|
|
26
|
-
export {
|
|
26
|
+
export { takeWhile } from './core/operators/take-while.mjs';
|
|
27
27
|
export { throttleTime } from './core/operators/throttle-time.mjs';
|
|
28
28
|
export { withBuffered, withBufferedFrom } from './core/operators/with-buffered-from.mjs';
|
|
29
29
|
export { withCurrentValueFrom, withLatestFrom } from './core/operators/with-current-value-from.mjs';
|
|
30
30
|
export { withInitialValue } from './core/operators/with-initial-value.mjs';
|
|
31
|
+
export { attachIndex, withIndex } from './core/predefined/operators/attach-index.mjs';
|
|
32
|
+
export { mapOptional } from './core/predefined/operators/map-optional.mjs';
|
|
33
|
+
export { mapResultErr } from './core/predefined/operators/map-result-err.mjs';
|
|
34
|
+
export { mapResultOk } from './core/predefined/operators/map-result-ok.mjs';
|
|
35
|
+
export { mapTo } from './core/predefined/operators/map-to.mjs';
|
|
36
|
+
export { map } from './core/predefined/operators/map.mjs';
|
|
37
|
+
export { getKey, pluck } from './core/predefined/operators/pluck.mjs';
|
|
38
|
+
export { skip } from './core/predefined/operators/skip.mjs';
|
|
39
|
+
export { take } from './core/predefined/operators/take.mjs';
|
|
40
|
+
export { unwrapOptional } from './core/predefined/operators/unwrap-optional.mjs';
|
|
41
|
+
export { unwrapResultErr } from './core/predefined/operators/unwrap-result-err.mjs';
|
|
42
|
+
export { unwrapResultOk } from './core/predefined/operators/unwrap-result-ok.mjs';
|
|
31
43
|
import 'ts-data-forge';
|
|
32
44
|
export { isChildObservable, isManagerObservable, isRootObservable } from './core/types/observable.mjs';
|
|
33
45
|
export { issueObservableId, issueSubscriberId, issueUpdaterSymbol } from './core/utils/id-maker.mjs';
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
package/package.json
CHANGED
|
@@ -80,10 +80,10 @@ export const combine = <const OS extends NonEmptyArray<Observable<unknown>>>(
|
|
|
80
80
|
) as unknown as CombineObservableRefined<OS>;
|
|
81
81
|
|
|
82
82
|
/**
|
|
83
|
-
* Alias for `combine
|
|
83
|
+
* Alias for `combine`.
|
|
84
84
|
* @see combine
|
|
85
85
|
*/
|
|
86
|
-
export const combineLatest = combine;
|
|
86
|
+
export const combineLatest = combine;
|
|
87
87
|
|
|
88
88
|
class CombineObservableClass<const A extends NonEmptyUnknownList>
|
|
89
89
|
extends SyncChildObservableClass<A, A>
|
|
@@ -53,10 +53,10 @@ export function source<A>(...args: readonly A[]): SourceObservable<A> {
|
|
|
53
53
|
}
|
|
54
54
|
|
|
55
55
|
/**
|
|
56
|
-
* Alias for `source
|
|
56
|
+
* Alias for `source`. Creates a new Observable source.
|
|
57
57
|
* @see source
|
|
58
58
|
*/
|
|
59
|
-
export const subject = source;
|
|
59
|
+
export const subject = source;
|
|
60
60
|
|
|
61
61
|
class SourceObservableClass<A>
|
|
62
62
|
extends RootObservableClass<A>
|
package/src/core/index.mts
CHANGED
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Optional,
|
|
3
|
-
Result,
|
|
4
|
-
SafeUint,
|
|
5
|
-
asSafeUint,
|
|
6
|
-
expectType,
|
|
7
|
-
} from 'ts-data-forge';
|
|
1
|
+
import { Optional, SafeUint, asSafeUint, expectType } from 'ts-data-forge';
|
|
8
2
|
import { SyncChildObservableClass } from '../class/index.mjs';
|
|
9
3
|
import { source } from '../create/index.mjs';
|
|
10
4
|
import {
|
|
@@ -64,59 +58,6 @@ export const mapWithIndex = <A, B>(
|
|
|
64
58
|
mapFn,
|
|
65
59
|
)) as KeepInitialValueOperator<A, B>;
|
|
66
60
|
|
|
67
|
-
/* Specialized operators */
|
|
68
|
-
|
|
69
|
-
export const map = <A, B>(mapFn: (x: A) => B): KeepInitialValueOperator<A, B> =>
|
|
70
|
-
mapWithIndex(mapFn);
|
|
71
|
-
|
|
72
|
-
export const mapTo = <A, B>(value: B): KeepInitialValueOperator<A, B> =>
|
|
73
|
-
map(() => value);
|
|
74
|
-
|
|
75
|
-
export const pluck = <A, K extends keyof A>(
|
|
76
|
-
key: K,
|
|
77
|
-
): KeepInitialValueOperator<A, A[K]> => map((a) => a[key]);
|
|
78
|
-
|
|
79
|
-
export const getKey = pluck; // alias
|
|
80
|
-
|
|
81
|
-
export const attachIndex = <A,>(): KeepInitialValueOperator<
|
|
82
|
-
A,
|
|
83
|
-
readonly [SafeUint | -1, A]
|
|
84
|
-
> => mapWithIndex((a, i) => [i, a] as const);
|
|
85
|
-
|
|
86
|
-
export const withIndex = attachIndex; // alias
|
|
87
|
-
|
|
88
|
-
export const unwrapOptional = <
|
|
89
|
-
O extends UnknownOptional,
|
|
90
|
-
>(): KeepInitialValueOperator<O, Optional.Unwrap<O> | undefined> =>
|
|
91
|
-
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
92
|
-
map(Optional.unwrap as Fn<O, Optional.Unwrap<O> | undefined>);
|
|
93
|
-
|
|
94
|
-
export const unwrapResultOk = <
|
|
95
|
-
R extends UnknownResult,
|
|
96
|
-
>(): KeepInitialValueOperator<R, Result.UnwrapOk<R> | undefined> =>
|
|
97
|
-
// eslint-disable-next-line total-functions/no-unsafe-type-assertion
|
|
98
|
-
map(Result.unwrapOk as Fn<R, Result.UnwrapOk<R> | undefined>);
|
|
99
|
-
|
|
100
|
-
export const unwrapResultErr = <
|
|
101
|
-
R extends UnknownResult,
|
|
102
|
-
>(): KeepInitialValueOperator<R, Result.UnwrapErr<R> | undefined> =>
|
|
103
|
-
map(Result.unwrapErr as Fn<R, Result.UnwrapErr<R> | undefined>);
|
|
104
|
-
|
|
105
|
-
export const mapOptional = <O extends UnknownOptional, B>(
|
|
106
|
-
mapFn: (x: Optional.Unwrap<O>) => B,
|
|
107
|
-
): KeepInitialValueOperator<O, Optional<B>> =>
|
|
108
|
-
map((a) => Optional.map(a, mapFn));
|
|
109
|
-
|
|
110
|
-
export const mapResultOk = <R extends UnknownResult, S2>(
|
|
111
|
-
mapFn: (x: Result.UnwrapOk<R>) => S2,
|
|
112
|
-
): KeepInitialValueOperator<R, Result<S2, Result.UnwrapErr<R>>> =>
|
|
113
|
-
map((a) => Result.map(a, mapFn));
|
|
114
|
-
|
|
115
|
-
export const mapResultErr = <R extends UnknownResult, E2>(
|
|
116
|
-
mapFn: (x: Result.UnwrapErr<R>) => E2,
|
|
117
|
-
): KeepInitialValueOperator<R, Result<Result.UnwrapOk<R>, E2>> =>
|
|
118
|
-
map((a) => Result.mapErr(a, mapFn));
|
|
119
|
-
|
|
120
61
|
/* implementation */
|
|
121
62
|
|
|
122
63
|
class MapWithIndexObservableClass<A, B>
|
|
@@ -166,7 +107,7 @@ if (import.meta.vitest !== undefined) {
|
|
|
166
107
|
{
|
|
167
108
|
const s: Observable<number> = source<number>();
|
|
168
109
|
|
|
169
|
-
const _d1 = s.pipe(
|
|
110
|
+
const _d1 = s.pipe(mapWithIndex((x, i) => x + i));
|
|
170
111
|
|
|
171
112
|
expectType<typeof _d1, Observable<number>>('=');
|
|
172
113
|
}
|
|
@@ -176,7 +117,7 @@ if (import.meta.vitest !== undefined) {
|
|
|
176
117
|
|
|
177
118
|
const m: InitializedObservable<number> = s.pipe(withInitialValue(0));
|
|
178
119
|
|
|
179
|
-
const _d = m.pipe(
|
|
120
|
+
const _d = m.pipe(mapWithIndex((x, i) => x + i));
|
|
180
121
|
|
|
181
122
|
expectType<typeof _d, InitializedObservable<number>>('=');
|
|
182
123
|
}
|
|
@@ -67,10 +67,10 @@ export const skipIfNoChange = <A,>(
|
|
|
67
67
|
)) as KeepInitialValueOperator<A, A>;
|
|
68
68
|
|
|
69
69
|
/**
|
|
70
|
-
* Alias for `skipIfNoChange
|
|
70
|
+
* Alias for `skipIfNoChange`.
|
|
71
71
|
* @see skipIfNoChange
|
|
72
72
|
*/
|
|
73
|
-
export const distinctUntilChanged = skipIfNoChange;
|
|
73
|
+
export const distinctUntilChanged = skipIfNoChange;
|
|
74
74
|
|
|
75
75
|
class SkipIfNoChangeObservableClass<A>
|
|
76
76
|
extends SyncChildObservableClass<A, readonly [A]>
|
|
@@ -1,10 +1,4 @@
|
|
|
1
|
-
import {
|
|
2
|
-
Optional,
|
|
3
|
-
PositiveSafeInt,
|
|
4
|
-
SafeUint,
|
|
5
|
-
asSafeUint,
|
|
6
|
-
pipe,
|
|
7
|
-
} from 'ts-data-forge';
|
|
1
|
+
import { Optional, SafeUint, asSafeUint, pipe } from 'ts-data-forge';
|
|
8
2
|
import { SyncChildObservableClass } from '../class/index.mjs';
|
|
9
3
|
import {
|
|
10
4
|
type DropInitialValueOperator,
|
|
@@ -68,15 +62,6 @@ export const skipWhile =
|
|
|
68
62
|
(parentObservable) =>
|
|
69
63
|
new SkipWhileObservableClass(parentObservable, predicate);
|
|
70
64
|
|
|
71
|
-
/* Specialized operators */
|
|
72
|
-
|
|
73
|
-
export const skip = <A,>(
|
|
74
|
-
n: PositiveSafeIntWithSmallInt,
|
|
75
|
-
): DropInitialValueOperator<A, A> =>
|
|
76
|
-
!PositiveSafeInt.is(n) ? idFn : skipWhile((_, index) => index + 1 <= n);
|
|
77
|
-
|
|
78
|
-
const idFn = <T,>(value: T): T => value;
|
|
79
|
-
|
|
80
65
|
/* implementation */
|
|
81
66
|
|
|
82
67
|
class SkipWhileObservableClass<A>
|
|
@@ -70,12 +70,6 @@ export const takeWhile =
|
|
|
70
70
|
(parentObservable) =>
|
|
71
71
|
new TakeWhileObservableClass(parentObservable, predicate);
|
|
72
72
|
|
|
73
|
-
/* Specialized operators */
|
|
74
|
-
|
|
75
|
-
export const take = <A,>(
|
|
76
|
-
n: PositiveSafeIntWithSmallInt,
|
|
77
|
-
): DropInitialValueOperator<A, A> => takeWhile((_, index) => index + 1 <= n);
|
|
78
|
-
|
|
79
73
|
/* implementation */
|
|
80
74
|
|
|
81
75
|
class TakeWhileObservableClass<A>
|
|
@@ -133,7 +127,7 @@ if (import.meta.vitest !== undefined) {
|
|
|
133
127
|
{
|
|
134
128
|
const s: Observable<number> = source<number>();
|
|
135
129
|
|
|
136
|
-
const _d1 = s.pipe(
|
|
130
|
+
const _d1 = s.pipe(takeWhile((_, index) => index + 1 <= 3));
|
|
137
131
|
|
|
138
132
|
expectType<typeof _d1, Observable<number>>('=');
|
|
139
133
|
}
|
|
@@ -143,7 +137,7 @@ if (import.meta.vitest !== undefined) {
|
|
|
143
137
|
|
|
144
138
|
const m: InitializedObservable<number> = s.pipe(withInitialValue(0));
|
|
145
139
|
|
|
146
|
-
const _d = m.pipe(
|
|
140
|
+
const _d = m.pipe(takeWhile((_, index) => index + 1 <= 3));
|
|
147
141
|
|
|
148
142
|
expectType<typeof _d, Observable<number>>('=');
|
|
149
143
|
}
|
|
@@ -71,7 +71,11 @@ export const withBufferedFrom = <A, B>(
|
|
|
71
71
|
observable,
|
|
72
72
|
)) as KeepInitialValueOperator<A, readonly [A, readonly B[]]>;
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Alias for `withBufferedFrom`.
|
|
76
|
+
* @see withBufferedFrom
|
|
77
|
+
*/
|
|
78
|
+
export const withBuffered = withBufferedFrom;
|
|
75
79
|
|
|
76
80
|
class WithBufferedFromObservableClass<A, B>
|
|
77
81
|
extends SyncChildObservableClass<readonly [A, readonly B[]], readonly [A]>
|
|
@@ -70,7 +70,11 @@ export const withCurrentValueFrom =
|
|
|
70
70
|
(parentObservable) =>
|
|
71
71
|
new WithCurrentValueFromObservableClass(parentObservable, observable);
|
|
72
72
|
|
|
73
|
-
|
|
73
|
+
/**
|
|
74
|
+
* Alias for `withCurrentValueFrom`.
|
|
75
|
+
* @see withCurrentValueFrom
|
|
76
|
+
*/
|
|
77
|
+
export const withLatestFrom = withCurrentValueFrom;
|
|
74
78
|
|
|
75
79
|
class WithCurrentValueFromObservableClass<A, B>
|
|
76
80
|
extends SyncChildObservableClass<readonly [A, B], readonly [A]>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './operators/index.mjs';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { mapWithIndex } from '../../operators/index.mjs';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
|
|
4
|
+
export const withIndex = <A,>(): KeepInitialValueOperator<
|
|
5
|
+
A,
|
|
6
|
+
readonly [SafeUint | -1, A]
|
|
7
|
+
> => mapWithIndex((a, i) => [i, a] as const);
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Alias for `withIndex`.
|
|
11
|
+
* @see withIndex
|
|
12
|
+
*/
|
|
13
|
+
export const attachIndex = withIndex;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export * from './attach-index.mjs';
|
|
2
|
+
export * from './map-optional.mjs';
|
|
3
|
+
export * from './map-result-err.mjs';
|
|
4
|
+
export * from './map-result-ok.mjs';
|
|
5
|
+
export * from './map-to.mjs';
|
|
6
|
+
export * from './map.mjs';
|
|
7
|
+
export * from './pluck.mjs';
|
|
8
|
+
export * from './skip.mjs';
|
|
9
|
+
export * from './take.mjs';
|
|
10
|
+
export * from './unwrap-optional.mjs';
|
|
11
|
+
export * from './unwrap-result-err.mjs';
|
|
12
|
+
export * from './unwrap-result-ok.mjs';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Optional } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
import { map } from './map.mjs';
|
|
4
|
+
|
|
5
|
+
export const mapOptional = <O extends UnknownOptional, B>(
|
|
6
|
+
mapFn: (x: Optional.Unwrap<O>) => B,
|
|
7
|
+
): KeepInitialValueOperator<O, Optional<B>> =>
|
|
8
|
+
map((a) => Optional.map(a, mapFn));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Result } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
import { map } from './map.mjs';
|
|
4
|
+
|
|
5
|
+
export const mapResultErr = <R extends UnknownResult, E2>(
|
|
6
|
+
mapFn: (x: Result.UnwrapErr<R>) => E2,
|
|
7
|
+
): KeepInitialValueOperator<R, Result<Result.UnwrapOk<R>, E2>> =>
|
|
8
|
+
map((a) => Result.mapErr(a, mapFn));
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Result } from 'ts-data-forge';
|
|
2
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
import { map } from './map.mjs';
|
|
4
|
+
|
|
5
|
+
export const mapResultOk = <R extends UnknownResult, S2>(
|
|
6
|
+
mapFn: (x: Result.UnwrapOk<R>) => S2,
|
|
7
|
+
): KeepInitialValueOperator<R, Result<S2, Result.UnwrapErr<R>>> =>
|
|
8
|
+
map((a) => Result.map(a, mapFn));
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { type KeepInitialValueOperator } from '../../types/index.mjs';
|
|
2
|
+
import { map } from './map.mjs';
|
|
3
|
+
|
|
4
|
+
export const pluck = <A, K extends keyof A>(
|
|
5
|
+
key: K,
|
|
6
|
+
): KeepInitialValueOperator<A, A[K]> => map((a) => a[key]);
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Alias for `pluck`.
|
|
10
|
+
* @see pluck
|
|
11
|
+
*/
|
|
12
|
+
export const getKey = pluck;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { PositiveSafeInt } from 'ts-data-forge';
|
|
2
|
+
import { skipWhile } from '../../operators/index.mjs';
|
|
3
|
+
import { type DropInitialValueOperator } from '../../types/index.mjs';
|
|
4
|
+
|
|
5
|
+
export const skip = <A,>(
|
|
6
|
+
n: PositiveSafeIntWithSmallInt,
|
|
7
|
+
): DropInitialValueOperator<A, A> =>
|
|
8
|
+
!PositiveSafeInt.is(n) ? idFn : skipWhile((_, index) => index + 1 <= n);
|
|
9
|
+
|
|
10
|
+
const idFn = <T,>(value: T): T => value;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { takeWhile } from '../../operators/index.mjs';
|
|
2
|
+
import { type DropInitialValueOperator } from '../../types/index.mjs';
|
|
3
|
+
|
|
4
|
+
export const take = <A,>(
|
|
5
|
+
n: PositiveSafeIntWithSmallInt,
|
|
6
|
+
): DropInitialValueOperator<A, A> => takeWhile((_, index) => index + 1 <= n);
|