@bessemer/cornerstone 0.5.106 → 0.5.108
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/dist/async.d.ts.map +1 -1
- package/dist/async.js +2 -12
- package/dist/async.js.map +1 -1
- package/dist/either.d.ts +4 -4
- package/dist/either.d.ts.map +1 -1
- package/dist/either.js +13 -2
- package/dist/either.js.map +1 -1
- package/dist/internal.d.ts +2 -0
- package/dist/internal.d.ts.map +1 -0
- package/dist/internal.js +17 -0
- package/dist/internal.js.map +1 -0
- package/dist/result.d.ts +2 -2
- package/dist/result.d.ts.map +1 -1
- package/dist/result.js +13 -2
- package/dist/result.js.map +1 -1
- package/package.json +2 -2
package/dist/async.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,yCAAyC,CAAA;
|
|
1
|
+
{"version":3,"file":"async.d.ts","sourceRoot":"","sources":["../src/async.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAkB,MAAM,yCAAyC,CAAA;AAGlF,eAAO,MAAM,OAAO,+CAAe,CAAA;AAEnC,eAAO,MAAM,KAAK,GAAI,UAAU,QAAQ,KAAG,OAAO,CAAC,IAAI,CAItD,CAAA"}
|
package/dist/async.js
CHANGED
|
@@ -1,17 +1,7 @@
|
|
|
1
1
|
// src/async.ts
|
|
2
2
|
import { toMilliseconds } from "@bessemer/cornerstone/temporal/duration";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
setTimeout(async () => {
|
|
6
|
-
try {
|
|
7
|
-
const value = await runnable();
|
|
8
|
-
resolve(value);
|
|
9
|
-
} catch (e) {
|
|
10
|
-
reject(e);
|
|
11
|
-
}
|
|
12
|
-
}, 0);
|
|
13
|
-
});
|
|
14
|
-
};
|
|
3
|
+
import { executeAsync } from "@bessemer/cornerstone/internal";
|
|
4
|
+
var execute = executeAsync;
|
|
15
5
|
var sleep = (duration) => {
|
|
16
6
|
return new Promise((resolve) => {
|
|
17
7
|
setTimeout(resolve, toMilliseconds(duration));
|
package/dist/async.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/async.ts"],"sourcesContent":["import { Duration, toMilliseconds } from '@bessemer/cornerstone/temporal/duration'\
|
|
1
|
+
{"version":3,"sources":["../src/async.ts"],"sourcesContent":["import { Duration, toMilliseconds } from '@bessemer/cornerstone/temporal/duration'\nimport { executeAsync } from '@bessemer/cornerstone/internal'\n\nexport const execute = executeAsync\n\nexport const sleep = (duration: Duration): Promise<void> => {\n return new Promise((resolve) => {\n setTimeout(resolve, toMilliseconds(duration))\n })\n}\n"],"mappings":";AAAA,SAAmB,sBAAsB;AACzC,SAAS,oBAAoB;AAEtB,IAAM,UAAU;AAEhB,IAAM,QAAQ,CAAC,aAAsC;AAC1D,SAAO,IAAI,QAAQ,CAAC,YAAY;AAC9B,eAAW,SAAS,eAAe,QAAQ,CAAC;AAAA,EAC9C,CAAC;AACH;","names":[]}
|
package/dist/either.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ export type Right<RightType> = {
|
|
|
7
7
|
value: RightType;
|
|
8
8
|
isRight: true;
|
|
9
9
|
isLeft: false;
|
|
10
|
-
map: <T>(mapper: (element: RightType) => T) => Right<T>;
|
|
10
|
+
map: <T>(mapper: (element: RightType) => T) => T extends Promise<infer U> ? Promise<Right<U>> : Right<T>;
|
|
11
11
|
mapLeft: () => Right<RightType>;
|
|
12
12
|
[Symbol.iterator](): Generator<Either<RightType, never>, RightType>;
|
|
13
13
|
};
|
|
@@ -17,7 +17,7 @@ export type Left<LeftType> = {
|
|
|
17
17
|
isRight: false;
|
|
18
18
|
isLeft: true;
|
|
19
19
|
map: () => Left<LeftType>;
|
|
20
|
-
mapLeft: <T>(mapper: (element: LeftType) => T) => Left<T>;
|
|
20
|
+
mapLeft: <T>(mapper: (element: LeftType) => T) => T extends Promise<infer U> ? Promise<Left<U>> : Left<T>;
|
|
21
21
|
[Symbol.iterator](): Generator<Either<never, LeftType>, never>;
|
|
22
22
|
};
|
|
23
23
|
export type Either<RightType, LeftType> = Left<LeftType> | Right<RightType>;
|
|
@@ -27,7 +27,7 @@ export declare class RightImpl<RightType> implements Right<RightType> {
|
|
|
27
27
|
readonly isRight = true;
|
|
28
28
|
readonly isLeft = false;
|
|
29
29
|
constructor(value: RightType);
|
|
30
|
-
map: <T>(mapper: (element: RightType) => T) => Right<T>;
|
|
30
|
+
map: <T>(mapper: (element: RightType) => T) => T extends Promise<infer U> ? Promise<Right<U>> : Right<T>;
|
|
31
31
|
mapLeft: () => Right<RightType>;
|
|
32
32
|
[Symbol.iterator](): Generator<Either<RightType, never>, RightType>;
|
|
33
33
|
}
|
|
@@ -38,7 +38,7 @@ export declare class LeftImpl<LeftType> implements Left<LeftType> {
|
|
|
38
38
|
readonly isLeft = true;
|
|
39
39
|
constructor(value: LeftType);
|
|
40
40
|
map: () => Left<LeftType>;
|
|
41
|
-
mapLeft: <T>(mapper: (element: LeftType) => T) => Left<T>;
|
|
41
|
+
mapLeft: <T>(mapper: (element: LeftType) => T) => T extends Promise<infer U> ? Promise<Left<U>> : Left<T>;
|
|
42
42
|
[Symbol.iterator](): Generator<Either<never, LeftType>, never>;
|
|
43
43
|
}
|
|
44
44
|
export declare const left: <LeftType>(value: LeftType) => Left<LeftType>;
|
package/dist/either.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"either.d.ts","sourceRoot":"","sources":["../src/either.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"either.d.ts","sourceRoot":"","sources":["../src/either.ts"],"names":[],"mappings":"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"}
|
package/dist/either.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
// src/either.ts
|
|
2
2
|
import { isPromise } from "@bessemer/cornerstone/promise";
|
|
3
|
+
import { executeAsync } from "@bessemer/cornerstone/internal";
|
|
3
4
|
var EitherType = /* @__PURE__ */ ((EitherType2) => {
|
|
4
5
|
EitherType2["Left"] = "Left";
|
|
5
6
|
EitherType2["Right"] = "Right";
|
|
@@ -13,7 +14,12 @@ var RightImpl = class {
|
|
|
13
14
|
isRight = true;
|
|
14
15
|
isLeft = false;
|
|
15
16
|
map = (mapper) => {
|
|
16
|
-
|
|
17
|
+
const mappedValue = mapper(this.value);
|
|
18
|
+
if (isPromise(mappedValue)) {
|
|
19
|
+
return executeAsync(async () => right(await mappedValue));
|
|
20
|
+
} else {
|
|
21
|
+
return right(mappedValue);
|
|
22
|
+
}
|
|
17
23
|
};
|
|
18
24
|
mapLeft = () => {
|
|
19
25
|
return this;
|
|
@@ -35,7 +41,12 @@ var LeftImpl = class {
|
|
|
35
41
|
return this;
|
|
36
42
|
};
|
|
37
43
|
mapLeft = (mapper) => {
|
|
38
|
-
|
|
44
|
+
const mappedValue = mapper(this.value);
|
|
45
|
+
if (isPromise(mappedValue)) {
|
|
46
|
+
return executeAsync(async () => left(await mappedValue));
|
|
47
|
+
} else {
|
|
48
|
+
return left(mappedValue);
|
|
49
|
+
}
|
|
39
50
|
};
|
|
40
51
|
[Symbol.iterator]() {
|
|
41
52
|
return function* () {
|
package/dist/either.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/either.ts"],"sourcesContent":["import { isPromise } from '@bessemer/cornerstone/promise'\n\nexport enum EitherType {\n Left = 'Left',\n Right = 'Right',\n}\n\nexport type Right<RightType> = {\n type: EitherType.Right\n value: RightType\n isRight: true\n isLeft: false\n map: <T>(mapper: (element: RightType) => T) => Right<T>\n mapLeft: () => Right<RightType>\n [Symbol.iterator](): Generator<Either<RightType, never>, RightType>\n}\n\nexport type Left<LeftType> = {\n type: EitherType.Left\n value: LeftType\n isRight: false\n isLeft: true\n map: () => Left<LeftType>\n mapLeft: <T>(mapper: (element: LeftType) => T) => Left<T>\n [Symbol.iterator](): Generator<Either<never, LeftType>, never>\n}\n\nexport type Either<RightType, LeftType> = Left<LeftType> | Right<RightType>\n\nexport class RightImpl<RightType> implements Right<RightType> {\n public readonly type: EitherType.Right = EitherType.Right\n public readonly isRight = true\n public readonly isLeft = false\n\n constructor(public readonly value: RightType) {}\n\n map = <T>(mapper: (element: RightType) => T): Right<T> => {\n
|
|
1
|
+
{"version":3,"sources":["../src/either.ts"],"sourcesContent":["import { isPromise } from '@bessemer/cornerstone/promise'\nimport { executeAsync } from '@bessemer/cornerstone/internal'\n\nexport enum EitherType {\n Left = 'Left',\n Right = 'Right',\n}\n\nexport type Right<RightType> = {\n type: EitherType.Right\n value: RightType\n isRight: true\n isLeft: false\n map: <T>(mapper: (element: RightType) => T) => T extends Promise<infer U> ? Promise<Right<U>> : Right<T>\n mapLeft: () => Right<RightType>\n [Symbol.iterator](): Generator<Either<RightType, never>, RightType>\n}\n\nexport type Left<LeftType> = {\n type: EitherType.Left\n value: LeftType\n isRight: false\n isLeft: true\n map: () => Left<LeftType>\n mapLeft: <T>(mapper: (element: LeftType) => T) => T extends Promise<infer U> ? Promise<Left<U>> : Left<T>\n [Symbol.iterator](): Generator<Either<never, LeftType>, never>\n}\n\nexport type Either<RightType, LeftType> = Left<LeftType> | Right<RightType>\n\nexport class RightImpl<RightType> implements Right<RightType> {\n public readonly type: EitherType.Right = EitherType.Right\n public readonly isRight = true\n public readonly isLeft = false\n\n constructor(public readonly value: RightType) {}\n\n map = <T>(mapper: (element: RightType) => T): T extends Promise<infer U> ? Promise<Right<U>> : Right<T> => {\n const mappedValue = mapper(this.value)\n if (isPromise(mappedValue)) {\n return executeAsync(async () => right(await mappedValue)) as any\n } else {\n return right(mappedValue) as any\n }\n }\n\n mapLeft = (): Right<RightType> => {\n return this\n };\n\n [Symbol.iterator](): Generator<Either<RightType, never>, RightType> {\n return function* (this: Right<RightType>) {\n return this.value\n }.call(this)\n }\n}\n\nexport class LeftImpl<LeftType> implements Left<LeftType> {\n public readonly type = EitherType.Left\n public readonly isRight = false\n public readonly isLeft = true\n\n constructor(public readonly value: LeftType) {}\n\n map = (): Left<LeftType> => {\n return this\n }\n\n mapLeft = <T>(mapper: (element: LeftType) => T): T extends Promise<infer U> ? Promise<Left<U>> : Left<T> => {\n const mappedValue = mapper(this.value)\n if (isPromise(mappedValue)) {\n return executeAsync(async () => left(await mappedValue)) as any\n } else {\n return left(mappedValue) as any\n }\n };\n\n [Symbol.iterator](): Generator<Either<never, LeftType>, never> {\n return function* (this: Left<LeftType>) {\n yield this as any\n throw new Error('Illegal State')\n }.call(this)\n }\n}\n\nexport const left = <LeftType>(value: LeftType): Left<LeftType> => new LeftImpl(value)\nexport const right = <RightType>(value: RightType): Right<RightType> => new RightImpl(value)\n\nexport const split = <RightType, LeftType>(array: Array<Either<RightType, LeftType>>): [Array<LeftType>, Array<RightType>] => {\n const lefts = array.filter((it) => it.isLeft).map((it) => it.value)\n const rights = array.filter((it) => it.isRight).map((it) => it.value)\n return [lefts, rights]\n}\n\nexport const buildGenerator = <EitherType extends Either<any, any>, TGen extends () => Generator<EitherType> | AsyncGenerator<EitherType>>(\n lift: (val: any) => EitherType\n): ((\n generatorFn: TGen\n) => TGen extends () => Generator<EitherType, infer R>\n ? EitherType\n : TGen extends () => AsyncGenerator<EitherType, infer R>\n ? Promise<EitherType>\n : never) => {\n return (generatorFn) => {\n const generator = generatorFn()\n const firstNext = generator.next()\n if (isPromise(firstNext)) {\n return (async () => {\n let current = await firstNext\n while (!current.done) {\n const result = current.value\n if (result.isLeft) {\n return result\n }\n current = await generator.next(result.value)\n }\n return lift(current.value)\n })() as any\n } else {\n let current = firstNext\n while (!current.done) {\n const result = current.value\n if (result.isLeft) {\n return result\n }\n\n current = generator.next(result.value) as IteratorResult<EitherType>\n }\n\n return lift(current.value)\n }\n }\n}\n\nconst generator = buildGenerator((it) => right(it) as Either<any, any>)\n\nexport function gen<TGen extends () => Generator<Either<any, any>>>(\n generatorFn: TGen\n): TGen extends () => Generator<Either<any, infer L>, infer R> ? Either<R, L> : never\nexport function gen<TGen extends () => AsyncGenerator<Either<any, any>>>(\n generatorFn: TGen\n): Promise<TGen extends () => AsyncGenerator<Either<any, infer L>, infer R> ? Either<R, L> : never>\nexport function gen<TGen extends () => Generator<Either<any, any>> | AsyncGenerator<Either<any, any>>>(\n generatorFn: TGen\n): TGen extends () => Generator<Either<any, infer L>, infer R>\n ? Either<R, L>\n : TGen extends () => AsyncGenerator<Either<any, infer L>, infer R>\n ? Promise<Either<R, L>>\n : never {\n return generator(generatorFn)\n}\n"],"mappings":";AAAA,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAEtB,IAAK,aAAL,kBAAKA,gBAAL;AACL,EAAAA,YAAA,UAAO;AACP,EAAAA,YAAA,WAAQ;AAFE,SAAAA;AAAA,GAAA;AA2BL,IAAM,YAAN,MAAuD;AAAA,EAK5D,YAA4B,OAAkB;AAAlB;AAAA,EAAmB;AAAA,EAJ/B,OAAyB;AAAA,EACzB,UAAU;AAAA,EACV,SAAS;AAAA,EAIzB,MAAM,CAAI,WAAiG;AACzG,UAAM,cAAc,OAAO,KAAK,KAAK;AACrC,QAAI,UAAU,WAAW,GAAG;AAC1B,aAAO,aAAa,YAAY,MAAM,MAAM,WAAW,CAAC;AAAA,IAC1D,OAAO;AACL,aAAO,MAAM,WAAW;AAAA,IAC1B;AAAA,EACF;AAAA,EAEA,UAAU,MAAwB;AAChC,WAAO;AAAA,EACT;AAAA,EAEA,CAAC,OAAO,QAAQ,IAAoD;AAClE,WAAO,aAAmC;AACxC,aAAO,KAAK;AAAA,IACd,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAEO,IAAM,WAAN,MAAmD;AAAA,EAKxD,YAA4B,OAAiB;AAAjB;AAAA,EAAkB;AAAA,EAJ9B,OAAO;AAAA,EACP,UAAU;AAAA,EACV,SAAS;AAAA,EAIzB,MAAM,MAAsB;AAC1B,WAAO;AAAA,EACT;AAAA,EAEA,UAAU,CAAI,WAA8F;AAC1G,UAAM,cAAc,OAAO,KAAK,KAAK;AACrC,QAAI,UAAU,WAAW,GAAG;AAC1B,aAAO,aAAa,YAAY,KAAK,MAAM,WAAW,CAAC;AAAA,IACzD,OAAO;AACL,aAAO,KAAK,WAAW;AAAA,IACzB;AAAA,EACF;AAAA,EAEA,CAAC,OAAO,QAAQ,IAA+C;AAC7D,WAAO,aAAiC;AACtC,YAAM;AACN,YAAM,IAAI,MAAM,eAAe;AAAA,IACjC,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAEO,IAAM,OAAO,CAAW,UAAoC,IAAI,SAAS,KAAK;AAC9E,IAAM,QAAQ,CAAY,UAAuC,IAAI,UAAU,KAAK;AAEpF,IAAM,QAAQ,CAAsB,UAAmF;AAC5H,QAAM,QAAQ,MAAM,OAAO,CAAC,OAAO,GAAG,MAAM,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK;AAClE,QAAM,SAAS,MAAM,OAAO,CAAC,OAAO,GAAG,OAAO,EAAE,IAAI,CAAC,OAAO,GAAG,KAAK;AACpE,SAAO,CAAC,OAAO,MAAM;AACvB;AAEO,IAAM,iBAAiB,CAC5B,SAOY;AACZ,SAAO,CAAC,gBAAgB;AACtB,UAAMC,aAAY,YAAY;AAC9B,UAAM,YAAYA,WAAU,KAAK;AACjC,QAAI,UAAU,SAAS,GAAG;AACxB,cAAQ,YAAY;AAClB,YAAI,UAAU,MAAM;AACpB,eAAO,CAAC,QAAQ,MAAM;AACpB,gBAAM,SAAS,QAAQ;AACvB,cAAI,OAAO,QAAQ;AACjB,mBAAO;AAAA,UACT;AACA,oBAAU,MAAMA,WAAU,KAAK,OAAO,KAAK;AAAA,QAC7C;AACA,eAAO,KAAK,QAAQ,KAAK;AAAA,MAC3B,GAAG;AAAA,IACL,OAAO;AACL,UAAI,UAAU;AACd,aAAO,CAAC,QAAQ,MAAM;AACpB,cAAM,SAAS,QAAQ;AACvB,YAAI,OAAO,QAAQ;AACjB,iBAAO;AAAA,QACT;AAEA,kBAAUA,WAAU,KAAK,OAAO,KAAK;AAAA,MACvC;AAEA,aAAO,KAAK,QAAQ,KAAK;AAAA,IAC3B;AAAA,EACF;AACF;AAEA,IAAM,YAAY,eAAe,CAAC,OAAO,MAAM,EAAE,CAAqB;AAQ/D,SAAS,IACd,aAKQ;AACR,SAAO,UAAU,WAAW;AAC9B;","names":["EitherType","generator"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../src/internal.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,GAAI,CAAC,EAAE,UAAU,MAAM,OAAO,CAAC,CAAC,CAAC,KAAG,OAAO,CAAC,CAAC,CAWrE,CAAA"}
|
package/dist/internal.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// src/internal.ts
|
|
2
|
+
var executeAsync = (runnable) => {
|
|
3
|
+
return new Promise(async (resolve, reject) => {
|
|
4
|
+
setTimeout(async () => {
|
|
5
|
+
try {
|
|
6
|
+
const value = await runnable();
|
|
7
|
+
resolve(value);
|
|
8
|
+
} catch (e) {
|
|
9
|
+
reject(e);
|
|
10
|
+
}
|
|
11
|
+
}, 0);
|
|
12
|
+
});
|
|
13
|
+
};
|
|
14
|
+
export {
|
|
15
|
+
executeAsync
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=internal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/internal.ts"],"sourcesContent":["export const executeAsync = <T>(runnable: () => Promise<T>): Promise<T> => {\n return new Promise(async (resolve, reject) => {\n setTimeout(async () => {\n try {\n const value = await runnable()\n resolve(value)\n } catch (e) {\n reject(e)\n }\n }, 0)\n })\n}\n"],"mappings":";AAAO,IAAM,eAAe,CAAI,aAA2C;AACzE,SAAO,IAAI,QAAQ,OAAO,SAAS,WAAW;AAC5C,eAAW,YAAY;AACrB,UAAI;AACF,cAAM,QAAQ,MAAM,SAAS;AAC7B,gBAAQ,KAAK;AAAA,MACf,SAAS,GAAG;AACV,eAAO,CAAC;AAAA,MACV;AAAA,IACF,GAAG,CAAC;AAAA,EACN,CAAC;AACH;","names":[]}
|
package/dist/result.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ import { Throwable } from '@bessemer/cornerstone/types';
|
|
|
3
3
|
export type Success<SuccessType> = Omit<Right<SuccessType>, 'map' | 'mapLeft'> & {
|
|
4
4
|
isSuccess: true;
|
|
5
5
|
getOrThrow: () => SuccessType;
|
|
6
|
-
map: <T>(mapper: (element: SuccessType) => T) => Success<T>;
|
|
6
|
+
map: <T>(mapper: (element: SuccessType) => T) => T extends Promise<infer U> ? Promise<Success<U>> : Success<T>;
|
|
7
7
|
mapLeft: () => Success<SuccessType>;
|
|
8
8
|
[Symbol.iterator](): Generator<Result<SuccessType, never>, SuccessType>;
|
|
9
9
|
};
|
|
@@ -11,7 +11,7 @@ export type Failure<FailureType = unknown> = Omit<Left<FailureType>, 'map' | 'ma
|
|
|
11
11
|
isSuccess: false;
|
|
12
12
|
getOrThrow: () => never;
|
|
13
13
|
map: () => Failure<FailureType>;
|
|
14
|
-
mapLeft: <T>(mapper: (element: FailureType) => T) => Failure<T>;
|
|
14
|
+
mapLeft: <T>(mapper: (element: FailureType) => T) => T extends Promise<infer U> ? Promise<Failure<U>> : Failure<T>;
|
|
15
15
|
[Symbol.iterator](): Generator<Result<never, FailureType>, never>;
|
|
16
16
|
};
|
|
17
17
|
export type Result<SuccessType, FailureType = unknown> = Failure<FailureType> | Success<SuccessType>;
|
package/dist/result.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,IAAI,EAAY,KAAK,EAAa,MAAM,8BAA8B,CAAA;AAC/F,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAA;
|
|
1
|
+
{"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../src/result.ts"],"names":[],"mappings":"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"}
|
package/dist/result.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// src/result.ts
|
|
2
2
|
import { buildGenerator, LeftImpl, RightImpl } from "@bessemer/cornerstone/either";
|
|
3
3
|
import { isPromise } from "@bessemer/cornerstone/promise";
|
|
4
|
+
import { executeAsync } from "@bessemer/cornerstone/internal";
|
|
4
5
|
var SuccessImpl = class extends RightImpl {
|
|
5
6
|
isSuccess = true;
|
|
6
7
|
constructor(value) {
|
|
@@ -10,7 +11,12 @@ var SuccessImpl = class extends RightImpl {
|
|
|
10
11
|
return this.value;
|
|
11
12
|
}
|
|
12
13
|
map = (mapper) => {
|
|
13
|
-
|
|
14
|
+
const mappedValue = mapper(this.value);
|
|
15
|
+
if (isPromise(mappedValue)) {
|
|
16
|
+
return executeAsync(async () => success(await mappedValue));
|
|
17
|
+
} else {
|
|
18
|
+
return success(mappedValue);
|
|
19
|
+
}
|
|
14
20
|
};
|
|
15
21
|
mapLeft = () => {
|
|
16
22
|
return this;
|
|
@@ -33,7 +39,12 @@ var FailureImpl = class extends LeftImpl {
|
|
|
33
39
|
return this;
|
|
34
40
|
};
|
|
35
41
|
mapLeft = (mapper) => {
|
|
36
|
-
|
|
42
|
+
const mappedValue = mapper(this.value);
|
|
43
|
+
if (isPromise(mappedValue)) {
|
|
44
|
+
return executeAsync(async () => failure(await mappedValue));
|
|
45
|
+
} else {
|
|
46
|
+
return failure(mappedValue);
|
|
47
|
+
}
|
|
37
48
|
};
|
|
38
49
|
[Symbol.iterator]() {
|
|
39
50
|
return function* () {
|
package/dist/result.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/result.ts"],"sourcesContent":["import { buildGenerator, Left, LeftImpl, Right, RightImpl } from '@bessemer/cornerstone/either'\nimport { Throwable } from '@bessemer/cornerstone/types'\nimport { isPromise } from '@bessemer/cornerstone/promise'\n\nexport type Success<SuccessType> = Omit<Right<SuccessType>, 'map' | 'mapLeft'> & {\n isSuccess: true\n getOrThrow: () => SuccessType\n map: <T>(mapper: (element: SuccessType) => T) => Success<T>\n mapLeft: () => Success<SuccessType>\n [Symbol.iterator](): Generator<Result<SuccessType, never>, SuccessType>\n}\n\nexport type Failure<FailureType = unknown> = Omit<Left<FailureType>, 'map' | 'mapLeft'> & {\n isSuccess: false\n getOrThrow: () => never\n map: () => Failure<FailureType>\n mapLeft: <T>(mapper: (element: FailureType) => T) => Failure<T>\n [Symbol.iterator](): Generator<Result<never, FailureType>, never>\n}\n\nexport type Result<SuccessType, FailureType = unknown> = Failure<FailureType> | Success<SuccessType>\n\nclass SuccessImpl<SuccessType> extends RightImpl<SuccessType> implements Success<SuccessType> {\n public readonly isSuccess = true\n\n constructor(value: SuccessType) {\n super(value)\n }\n\n getOrThrow(): SuccessType {\n return this.value\n }\n\n override map = <T>(mapper: (element: SuccessType) => T): Success<T> => {\n
|
|
1
|
+
{"version":3,"sources":["../src/result.ts"],"sourcesContent":["import { buildGenerator, Left, LeftImpl, Right, RightImpl } from '@bessemer/cornerstone/either'\nimport { Throwable } from '@bessemer/cornerstone/types'\nimport { isPromise } from '@bessemer/cornerstone/promise'\nimport { executeAsync } from '@bessemer/cornerstone/internal'\n\nexport type Success<SuccessType> = Omit<Right<SuccessType>, 'map' | 'mapLeft'> & {\n isSuccess: true\n getOrThrow: () => SuccessType\n map: <T>(mapper: (element: SuccessType) => T) => T extends Promise<infer U> ? Promise<Success<U>> : Success<T>\n mapLeft: () => Success<SuccessType>\n [Symbol.iterator](): Generator<Result<SuccessType, never>, SuccessType>\n}\n\nexport type Failure<FailureType = unknown> = Omit<Left<FailureType>, 'map' | 'mapLeft'> & {\n isSuccess: false\n getOrThrow: () => never\n map: () => Failure<FailureType>\n mapLeft: <T>(mapper: (element: FailureType) => T) => T extends Promise<infer U> ? Promise<Failure<U>> : Failure<T>\n [Symbol.iterator](): Generator<Result<never, FailureType>, never>\n}\n\nexport type Result<SuccessType, FailureType = unknown> = Failure<FailureType> | Success<SuccessType>\n\nclass SuccessImpl<SuccessType> extends RightImpl<SuccessType> implements Success<SuccessType> {\n public readonly isSuccess = true\n\n constructor(value: SuccessType) {\n super(value)\n }\n\n getOrThrow(): SuccessType {\n return this.value\n }\n\n override map = <T>(mapper: (element: SuccessType) => T): T extends Promise<infer U> ? Promise<Success<U>> : Success<T> => {\n const mappedValue = mapper(this.value)\n if (isPromise(mappedValue)) {\n return executeAsync(async () => success(await mappedValue)) as any\n } else {\n return success(mappedValue) as any\n }\n }\n\n override mapLeft = (): Success<SuccessType> => {\n return this\n };\n\n override [Symbol.iterator](): Generator<Result<SuccessType, never>, SuccessType> {\n return function* (this: Success<SuccessType>) {\n return this.value\n }.call(this)\n }\n}\n\nclass FailureImpl<FailureType> extends LeftImpl<FailureType> implements Failure<FailureType> {\n public readonly isSuccess = false\n\n constructor(value: FailureType) {\n super(value)\n }\n\n getOrThrow(): never {\n throw this.value\n }\n\n override map = (): Failure<FailureType> => {\n return this\n }\n\n override mapLeft = <T>(mapper: (element: FailureType) => T): T extends Promise<infer U> ? Promise<Failure<U>> : Failure<T> => {\n const mappedValue = mapper(this.value)\n if (isPromise(mappedValue)) {\n return executeAsync(async () => failure(await mappedValue)) as any\n } else {\n return failure(mappedValue) as any\n }\n };\n\n override [Symbol.iterator](): Generator<Result<never, FailureType>, never> {\n return function* (this: Failure<FailureType>) {\n yield this as any\n throw new Error('Illegal State')\n }.call(this)\n }\n}\n\nexport type AsyncResult<T, N = Throwable> = Promise<Result<T, N>>\n\nexport const success = <T>(value: T): Success<T> => {\n return new SuccessImpl<T>(value)\n}\n\nexport function failure(): Failure<never>\nexport function failure<N>(failure: N): Failure<N>\nexport function failure(failure?: unknown): Failure {\n return new FailureImpl<unknown>(failure)\n}\n\nexport function tryValue<SOURCE_VALUE>(resolver: () => Promise<SOURCE_VALUE>): AsyncResult<SOURCE_VALUE>\nexport function tryValue<SOURCE_VALUE>(resolver: () => SOURCE_VALUE): Result<SOURCE_VALUE>\nexport function tryValue<SOURCE_VALUE>(resolver: () => SOURCE_VALUE | Promise<SOURCE_VALUE>): Result<SOURCE_VALUE> | Promise<Result<SOURCE_VALUE>> {\n try {\n let result = resolver()\n if (isPromise(result)) {\n return result.then((it) => success(it)).catch((it) => failure(it))\n } else {\n return success(result)\n }\n } catch (e: any) {\n return failure(e)\n }\n}\n\nexport function tryResult<SOURCE_VALUE>(resolver: () => Result<SOURCE_VALUE>): Result<SOURCE_VALUE>\nexport function tryResult<SOURCE_VALUE>(resolver: () => AsyncResult<SOURCE_VALUE>): AsyncResult<SOURCE_VALUE>\nexport function tryResult<SOURCE_VALUE>(resolver: () => Result<SOURCE_VALUE> | AsyncResult<SOURCE_VALUE>): ReturnType<typeof resolver> {\n try {\n let result = resolver()\n if (isPromise(result)) {\n return result.catch((it) => failure(it))\n } else {\n return result\n }\n } catch (e: any) {\n return failure(e)\n }\n}\n\nconst generator = buildGenerator((it) => success(it) as Result<any, any>)\n\nexport function gen<TGen extends () => Generator<Result<any, any>>>(\n generatorFn: TGen\n): TGen extends () => Generator<Result<any, infer L>, infer R> ? Result<R, L> : never\nexport function gen<TGen extends () => AsyncGenerator<Result<any, any>>>(\n generatorFn: TGen\n): Promise<TGen extends () => AsyncGenerator<Result<any, infer L>, infer R> ? Result<R, L> : never>\nexport function gen<TGen extends () => Generator<Result<any, any>> | AsyncGenerator<Result<any, any>>>(\n generatorFn: TGen\n): TGen extends () => Generator<Result<any, infer L>, infer R>\n ? Result<R, L>\n : TGen extends () => AsyncGenerator<Result<any, infer L>, infer R>\n ? Promise<Result<R, L>>\n : never {\n return generator(generatorFn)\n}\n"],"mappings":";AAAA,SAAS,gBAAsB,UAAiB,iBAAiB;AAEjE,SAAS,iBAAiB;AAC1B,SAAS,oBAAoB;AAoB7B,IAAM,cAAN,cAAuC,UAAuD;AAAA,EAC5E,YAAY;AAAA,EAE5B,YAAY,OAAoB;AAC9B,UAAM,KAAK;AAAA,EACb;AAAA,EAEA,aAA0B;AACxB,WAAO,KAAK;AAAA,EACd;AAAA,EAES,MAAM,CAAI,WAAuG;AACxH,UAAM,cAAc,OAAO,KAAK,KAAK;AACrC,QAAI,UAAU,WAAW,GAAG;AAC1B,aAAO,aAAa,YAAY,QAAQ,MAAM,WAAW,CAAC;AAAA,IAC5D,OAAO;AACL,aAAO,QAAQ,WAAW;AAAA,IAC5B;AAAA,EACF;AAAA,EAES,UAAU,MAA4B;AAC7C,WAAO;AAAA,EACT;AAAA,EAEA,CAAU,OAAO,QAAQ,IAAwD;AAC/E,WAAO,aAAuC;AAC5C,aAAO,KAAK;AAAA,IACd,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAEA,IAAM,cAAN,cAAuC,SAAsD;AAAA,EAC3E,YAAY;AAAA,EAE5B,YAAY,OAAoB;AAC9B,UAAM,KAAK;AAAA,EACb;AAAA,EAEA,aAAoB;AAClB,UAAM,KAAK;AAAA,EACb;AAAA,EAES,MAAM,MAA4B;AACzC,WAAO;AAAA,EACT;AAAA,EAES,UAAU,CAAI,WAAuG;AAC5H,UAAM,cAAc,OAAO,KAAK,KAAK;AACrC,QAAI,UAAU,WAAW,GAAG;AAC1B,aAAO,aAAa,YAAY,QAAQ,MAAM,WAAW,CAAC;AAAA,IAC5D,OAAO;AACL,aAAO,QAAQ,WAAW;AAAA,IAC5B;AAAA,EACF;AAAA,EAEA,CAAU,OAAO,QAAQ,IAAkD;AACzE,WAAO,aAAuC;AAC5C,YAAM;AACN,YAAM,IAAI,MAAM,eAAe;AAAA,IACjC,EAAE,KAAK,IAAI;AAAA,EACb;AACF;AAIO,IAAM,UAAU,CAAI,UAAyB;AAClD,SAAO,IAAI,YAAe,KAAK;AACjC;AAIO,SAAS,QAAQA,UAA4B;AAClD,SAAO,IAAI,YAAqBA,QAAO;AACzC;AAIO,SAAS,SAAuB,UAA4G;AACjJ,MAAI;AACF,QAAI,SAAS,SAAS;AACtB,QAAI,UAAU,MAAM,GAAG;AACrB,aAAO,OAAO,KAAK,CAAC,OAAO,QAAQ,EAAE,CAAC,EAAE,MAAM,CAAC,OAAO,QAAQ,EAAE,CAAC;AAAA,IACnE,OAAO;AACL,aAAO,QAAQ,MAAM;AAAA,IACvB;AAAA,EACF,SAAS,GAAQ;AACf,WAAO,QAAQ,CAAC;AAAA,EAClB;AACF;AAIO,SAAS,UAAwB,UAA+F;AACrI,MAAI;AACF,QAAI,SAAS,SAAS;AACtB,QAAI,UAAU,MAAM,GAAG;AACrB,aAAO,OAAO,MAAM,CAAC,OAAO,QAAQ,EAAE,CAAC;AAAA,IACzC,OAAO;AACL,aAAO;AAAA,IACT;AAAA,EACF,SAAS,GAAQ;AACf,WAAO,QAAQ,CAAC;AAAA,EAClB;AACF;AAEA,IAAM,YAAY,eAAe,CAAC,OAAO,QAAQ,EAAE,CAAqB;AAQjE,SAAS,IACd,aAKQ;AACR,SAAO,UAAU,WAAW;AAC9B;","names":["failure"]}
|
package/package.json
CHANGED