@driveflux/result 3.0.5 → 3.1.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/dist/cjs/index.js CHANGED
@@ -29,8 +29,9 @@ __export(src_exports, {
29
29
  });
30
30
  module.exports = __toCommonJS(src_exports);
31
31
  var Err = class _Err {
32
- constructor(val) {
32
+ constructor(val, metadata) {
33
33
  this.val = val;
34
+ this.metadata = metadata;
34
35
  }
35
36
  static EMPTY = new _Err(void 0);
36
37
  ok = false;
@@ -56,8 +57,9 @@ var Err = class _Err {
56
57
  }
57
58
  };
58
59
  var Ok = class _Ok {
59
- constructor(val) {
60
+ constructor(val, metadata) {
60
61
  this.val = val;
62
+ this.metadata = metadata;
61
63
  }
62
64
  static EMPTY = new _Ok(void 0);
63
65
  ok = true;
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["import type { Problem } from '@driveflux/problem'\nexport class Err<E> {\n static readonly EMPTY = new Err<void>(undefined)\n\n readonly ok = false\n readonly err = true\n\n constructor(public readonly val: E) {}\n\n /**\n * If the result has a value returns that value. Otherwise returns the passed in value.\n * @param val the value to replace the error with\n */\n else<T2>(val: T2): T2 {\n return val\n }\n\n expect(msg: string): never {\n throw new Error(`${msg} - Error: ${JSON.stringify(this.val)}`)\n }\n\n unwrap(): never {\n throw new Error(`Tried to unwrap Error: ${JSON.stringify(this.val)}`)\n }\n\n map<T2>(_mapper: (val: never) => T2): Err<E> {\n return this\n }\n\n mapErr<E2>(mapper: (err: E) => E2): Err<E2> {\n return new Err(mapper(this.val))\n }\n}\n\nexport class Ok<T> {\n static readonly EMPTY = new Ok<void>(undefined)\n\n readonly ok = true\n readonly err = false\n\n constructor(public readonly val: T) {}\n\n /**\n * If the result has a value returns that value. Otherwise returns the passed in value.\n * @param val the value to replace the error with\n */\n else<T2>(_val: T2): T {\n return this.val\n }\n\n expect(_msg: string): T {\n return this.val\n }\n\n unwrap(): T {\n return this.val\n }\n\n map<T2>(mapper: (val: T) => T2): Ok<T2> {\n return new Ok(mapper(this.val))\n }\n\n mapErr<E2>(_mapper: (err: never) => E2): Ok<T> {\n return this\n }\n}\n\nexport type Result<T, E> = (Ok<T> | Err<E>) & {\n map<T2>(mapper: (val: T) => T2): Result<T2, E>\n\n mapErr<E2>(mapper: (val: E) => E2): Result<T, E2>\n}\n\nexport type ResultOkType<T extends Result<any, any>> = T extends Result<infer U, any> ? U : never\nexport type ResultErrType<T extends Result<any, any>> = T extends Result<any, infer U> ? U : never\n\nexport function Results<T1, E1, T2, E2>(result1: Result<T1, E1>, result2: Result<T2, E2>): Result<[T1, T2], E1 | E2>\nexport function Results<T1, E1, T2, E2, T3, E3>(\n result1: Result<T1, E1>,\n result2: Result<T2, E2>,\n result3: Result<T3, E3>\n): Result<[T1, T2, T3], E1 | E2 | E3>\nexport function Results<T1, E1, T2, E2, T3, E3, T4, E4>(\n result1: Result<T1, E1>,\n result2: Result<T2, E2>,\n result3: Result<T3, E3>,\n result4: Result<T4, E4>\n): Result<[T1, T2, T3, T4], E1 | E2 | E3 | E4>\nexport function Results(...results: Result<any, any>[]): Result<any[], any>\nexport function Results(...results: Result<any, any>[]): Result<any[], any> {\n const okResult = []\n for (let result of results) {\n if (result.ok) {\n okResult.push(result.val)\n } else {\n return new Err(result.val)\n }\n }\n return new Ok(okResult)\n}\n\nexport const isResult = (response: any): response is Result<any, any> => {\n return (\n typeof response === 'object' &&\n response &&\n typeof response.ok !== 'undefined' &&\n typeof response.err !== 'undefined'\n )\n}\n\nexport const isErrorWithResult = (response: any): response is ErrorWithResult<any, any> => {\n return response.result && isResult(response.result)\n}\n\nexport class ErrorWithResult<S = any, E = any> extends Error {\n result: Result<S, E>\n\n constructor(result: Result<S, E>) {\n super('')\n this.result = result\n }\n}\n\nexport type PromisedResult<R = any> = Promise<Result<R, Problem>>\nexport type StandardResult<R = any> = Result<R, Problem>\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,IAAM,MAAN,MAAM,KAAO;AAAA,EAMlB,YAA4B,KAAQ;AAAR;AAAA,EAAS;AAAA,EALrC,OAAgB,QAAQ,IAAI,KAAU,MAAS;AAAA,EAEtC,KAAK;AAAA,EACL,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,EAQf,KAAS,KAAa;AACpB,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,KAAoB;AACzB,UAAM,IAAI,MAAM,GAAG,GAAG,aAAa,KAAK,UAAU,KAAK,GAAG,CAAC,EAAE;AAAA,EAC/D;AAAA,EAEA,SAAgB;AACd,UAAM,IAAI,MAAM,0BAA0B,KAAK,UAAU,KAAK,GAAG,CAAC,EAAE;AAAA,EACtE;AAAA,EAEA,IAAQ,SAAqC;AAC3C,WAAO;AAAA,EACT;AAAA,EAEA,OAAW,QAAiC;AAC1C,WAAO,IAAI,KAAI,OAAO,KAAK,GAAG,CAAC;AAAA,EACjC;AACF;AAEO,IAAM,KAAN,MAAM,IAAM;AAAA,EAMjB,YAA4B,KAAQ;AAAR;AAAA,EAAS;AAAA,EALrC,OAAgB,QAAQ,IAAI,IAAS,MAAS;AAAA,EAErC,KAAK;AAAA,EACL,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,EAQf,KAAS,MAAa;AACpB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,OAAO,MAAiB;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,SAAY;AACV,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAQ,QAAgC;AACtC,WAAO,IAAI,IAAG,OAAO,KAAK,GAAG,CAAC;AAAA,EAChC;AAAA,EAEA,OAAW,SAAoC;AAC7C,WAAO;AAAA,EACT;AACF;AAwBO,SAAS,WAAW,SAAiD;AAC1E,QAAM,WAAW,CAAC;AAClB,WAAS,UAAU,SAAS;AAC1B,QAAI,OAAO,IAAI;AACb,eAAS,KAAK,OAAO,GAAG;AAAA,IAC1B,OAAO;AACL,aAAO,IAAI,IAAI,OAAO,GAAG;AAAA,IAC3B;AAAA,EACF;AACA,SAAO,IAAI,GAAG,QAAQ;AACxB;AAEO,IAAM,WAAW,CAAC,aAAgD;AACvE,SACE,OAAO,aAAa,YACpB,YACA,OAAO,SAAS,OAAO,eACvB,OAAO,SAAS,QAAQ;AAE5B;AAEO,IAAM,oBAAoB,CAAC,aAAyD;AACzF,SAAO,SAAS,UAAU,SAAS,SAAS,MAAM;AACpD;AAEO,IAAM,kBAAN,cAAgD,MAAM;AAAA,EAC3D;AAAA,EAEA,YAAY,QAAsB;AAChC,UAAM,EAAE;AACR,SAAK,SAAS;AAAA,EAChB;AACF;",
4
+ "sourcesContent": ["import type { Problem } from '@driveflux/problem'\nexport class Err<E, M = any> {\n static readonly EMPTY = new Err<void>(undefined)\n\n readonly ok = false\n readonly err = true\n\n constructor(public readonly val: E, public readonly metadata?: M) {}\n\n /**\n * If the result has a value returns that value. Otherwise returns the passed in value.\n * @param val the value to replace the error with\n */\n else<T2>(val: T2): T2 {\n return val\n }\n\n expect(msg: string): never {\n throw new Error(`${msg} - Error: ${JSON.stringify(this.val)}`)\n }\n\n unwrap(): never {\n throw new Error(`Tried to unwrap Error: ${JSON.stringify(this.val)}`)\n }\n\n map<T2>(_mapper: (val: never) => T2): Err<E> {\n return this\n }\n\n mapErr<E2>(mapper: (err: E) => E2): Err<E2> {\n return new Err(mapper(this.val))\n }\n}\n\nexport class Ok<T, M = any> {\n static readonly EMPTY = new Ok<void>(undefined)\n\n readonly ok = true\n readonly err = false\n\n constructor(public readonly val: T, public readonly metadata?: M) {}\n\n /**\n * If the result has a value returns that value. Otherwise returns the passed in value.\n * @param val the value to replace the error with\n */\n else<T2>(_val: T2): T {\n return this.val\n }\n\n expect(_msg: string): T {\n return this.val\n }\n\n unwrap(): T {\n return this.val\n }\n\n map<T2>(mapper: (val: T) => T2): Ok<T2> {\n return new Ok(mapper(this.val))\n }\n\n mapErr<E2>(_mapper: (err: never) => E2): Ok<T> {\n return this\n }\n}\n\nexport type Result<T, E, MS = any, ME = MS> = (Ok<T, MS> | Err<E, ME>) & {\n map<T2>(mapper: (val: T) => T2): Result<T2, E>\n\n mapErr<E2>(mapper: (val: E) => E2): Result<T, E2>\n}\n\nexport type ResultOkType<T extends Result<any, any>> = T extends Result<infer U, any> ? U : never\nexport type ResultErrType<T extends Result<any, any>> = T extends Result<any, infer U> ? U : never\n\nexport function Results<T1, E1, T2, E2>(result1: Result<T1, E1>, result2: Result<T2, E2>): Result<[T1, T2], E1 | E2>\nexport function Results<T1, E1, T2, E2, T3, E3>(\n result1: Result<T1, E1>,\n result2: Result<T2, E2>,\n result3: Result<T3, E3>\n): Result<[T1, T2, T3], E1 | E2 | E3>\nexport function Results<T1, E1, T2, E2, T3, E3, T4, E4>(\n result1: Result<T1, E1>,\n result2: Result<T2, E2>,\n result3: Result<T3, E3>,\n result4: Result<T4, E4>\n): Result<[T1, T2, T3, T4], E1 | E2 | E3 | E4>\nexport function Results(...results: Result<any, any>[]): Result<any[], any>\nexport function Results(...results: Result<any, any>[]): Result<any[], any> {\n const okResult = []\n for (let result of results) {\n if (result.ok) {\n okResult.push(result.val)\n } else {\n return new Err(result.val)\n }\n }\n return new Ok(okResult)\n}\n\nexport const isResult = (response: any): response is Result<any, any> => {\n return (\n typeof response === 'object' &&\n response &&\n typeof response.ok !== 'undefined' &&\n typeof response.err !== 'undefined'\n )\n}\n\nexport const isErrorWithResult = (response: any): response is ErrorWithResult<any, any> => {\n return response.result && isResult(response.result)\n}\n\nexport class ErrorWithResult<S = any, E = any> extends Error {\n result: Result<S, E>\n\n constructor(result: Result<S, E>) {\n super('')\n this.result = result\n }\n}\n\nexport type StandardResult<R = any, M = any> = Result<R, Problem, M>\nexport type PromisedResult<R = any, M = any> = Promise<StandardResult<R, M>>\n\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,IAAM,MAAN,MAAM,KAAgB;AAAA,EAM3B,YAA4B,KAAwB,UAAc;AAAtC;AAAwB;AAAA,EAAe;AAAA,EALnE,OAAgB,QAAQ,IAAI,KAAU,MAAS;AAAA,EAEtC,KAAK;AAAA,EACL,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,EAQf,KAAS,KAAa;AACpB,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,KAAoB;AACzB,UAAM,IAAI,MAAM,GAAG,GAAG,aAAa,KAAK,UAAU,KAAK,GAAG,CAAC,EAAE;AAAA,EAC/D;AAAA,EAEA,SAAgB;AACd,UAAM,IAAI,MAAM,0BAA0B,KAAK,UAAU,KAAK,GAAG,CAAC,EAAE;AAAA,EACtE;AAAA,EAEA,IAAQ,SAAqC;AAC3C,WAAO;AAAA,EACT;AAAA,EAEA,OAAW,QAAiC;AAC1C,WAAO,IAAI,KAAI,OAAO,KAAK,GAAG,CAAC;AAAA,EACjC;AACF;AAEO,IAAM,KAAN,MAAM,IAAe;AAAA,EAM1B,YAA4B,KAAwB,UAAc;AAAtC;AAAwB;AAAA,EAAe;AAAA,EALnE,OAAgB,QAAQ,IAAI,IAAS,MAAS;AAAA,EAErC,KAAK;AAAA,EACL,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA,EAQf,KAAS,MAAa;AACpB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,OAAO,MAAiB;AACtB,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,SAAY;AACV,WAAO,KAAK;AAAA,EACd;AAAA,EAEA,IAAQ,QAAgC;AACtC,WAAO,IAAI,IAAG,OAAO,KAAK,GAAG,CAAC;AAAA,EAChC;AAAA,EAEA,OAAW,SAAoC;AAC7C,WAAO;AAAA,EACT;AACF;AAwBO,SAAS,WAAW,SAAiD;AAC1E,QAAM,WAAW,CAAC;AAClB,WAAS,UAAU,SAAS;AAC1B,QAAI,OAAO,IAAI;AACb,eAAS,KAAK,OAAO,GAAG;AAAA,IAC1B,OAAO;AACL,aAAO,IAAI,IAAI,OAAO,GAAG;AAAA,IAC3B;AAAA,EACF;AACA,SAAO,IAAI,GAAG,QAAQ;AACxB;AAEO,IAAM,WAAW,CAAC,aAAgD;AACvE,SACE,OAAO,aAAa,YACpB,YACA,OAAO,SAAS,OAAO,eACvB,OAAO,SAAS,QAAQ;AAE5B;AAEO,IAAM,oBAAoB,CAAC,aAAyD;AACzF,SAAO,SAAS,UAAU,SAAS,SAAS,MAAM;AACpD;AAEO,IAAM,kBAAN,cAAgD,MAAM;AAAA,EAC3D;AAAA,EAEA,YAAY,QAAsB;AAChC,UAAM,EAAE;AACR,SAAK,SAAS;AAAA,EAChB;AACF;",
6
6
  "names": []
7
7
  }
package/dist/index.d.ts CHANGED
@@ -1,10 +1,11 @@
1
1
  import type { Problem } from '@driveflux/problem';
2
- export declare class Err<E> {
2
+ export declare class Err<E, M = any> {
3
3
  readonly val: E;
4
- static readonly EMPTY: Err<void>;
4
+ readonly metadata?: M | undefined;
5
+ static readonly EMPTY: Err<void, any>;
5
6
  readonly ok = false;
6
7
  readonly err = true;
7
- constructor(val: E);
8
+ constructor(val: E, metadata?: M | undefined);
8
9
  /**
9
10
  * If the result has a value returns that value. Otherwise returns the passed in value.
10
11
  * @param val the value to replace the error with
@@ -15,12 +16,13 @@ export declare class Err<E> {
15
16
  map<T2>(_mapper: (val: never) => T2): Err<E>;
16
17
  mapErr<E2>(mapper: (err: E) => E2): Err<E2>;
17
18
  }
18
- export declare class Ok<T> {
19
+ export declare class Ok<T, M = any> {
19
20
  readonly val: T;
20
- static readonly EMPTY: Ok<void>;
21
+ readonly metadata?: M | undefined;
22
+ static readonly EMPTY: Ok<void, any>;
21
23
  readonly ok = true;
22
24
  readonly err = false;
23
- constructor(val: T);
25
+ constructor(val: T, metadata?: M | undefined);
24
26
  /**
25
27
  * If the result has a value returns that value. Otherwise returns the passed in value.
26
28
  * @param val the value to replace the error with
@@ -31,7 +33,7 @@ export declare class Ok<T> {
31
33
  map<T2>(mapper: (val: T) => T2): Ok<T2>;
32
34
  mapErr<E2>(_mapper: (err: never) => E2): Ok<T>;
33
35
  }
34
- export type Result<T, E> = (Ok<T> | Err<E>) & {
36
+ export type Result<T, E, MS = any, ME = MS> = (Ok<T, MS> | Err<E, ME>) & {
35
37
  map<T2>(mapper: (val: T) => T2): Result<T2, E>;
36
38
  mapErr<E2>(mapper: (val: E) => E2): Result<T, E2>;
37
39
  };
@@ -41,12 +43,12 @@ export declare function Results<T1, E1, T2, E2>(result1: Result<T1, E1>, result2
41
43
  export declare function Results<T1, E1, T2, E2, T3, E3>(result1: Result<T1, E1>, result2: Result<T2, E2>, result3: Result<T3, E3>): Result<[T1, T2, T3], E1 | E2 | E3>;
42
44
  export declare function Results<T1, E1, T2, E2, T3, E3, T4, E4>(result1: Result<T1, E1>, result2: Result<T2, E2>, result3: Result<T3, E3>, result4: Result<T4, E4>): Result<[T1, T2, T3, T4], E1 | E2 | E3 | E4>;
43
45
  export declare function Results(...results: Result<any, any>[]): Result<any[], any>;
44
- export declare const isResult: (response: any) => response is Result<any, any>;
46
+ export declare const isResult: (response: any) => response is Result<any, any, any, any>;
45
47
  export declare const isErrorWithResult: (response: any) => response is ErrorWithResult<any, any>;
46
48
  export declare class ErrorWithResult<S = any, E = any> extends Error {
47
49
  result: Result<S, E>;
48
50
  constructor(result: Result<S, E>);
49
51
  }
50
- export type PromisedResult<R = any> = Promise<Result<R, Problem>>;
51
- export type StandardResult<R = any> = Result<R, Problem>;
52
+ export type StandardResult<R = any, M = any> = Result<R, Problem, M>;
53
+ export type PromisedResult<R = any, M = any> = Promise<StandardResult<R, M>>;
52
54
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AACjD,qBAAa,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;aAMG,GAAG,EAAE,CAAC;aAAkB,QAAQ,CAAC;IAL7D,MAAM,CAAC,QAAQ,CAAC,KAAK,iBAA2B;IAEhD,QAAQ,CAAC,EAAE,SAAQ;IACnB,QAAQ,CAAC,GAAG,QAAO;gBAES,GAAG,EAAE,CAAC,EAAkB,QAAQ,CAAC,eAAG;IAEhE;;;OAGG;IACH,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE;IAIrB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK;IAI1B,MAAM,IAAI,KAAK;IAIf,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IAI5C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,EAAE,CAAC;CAG5C;AAED,qBAAa,EAAE,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG;aAMI,GAAG,EAAE,CAAC;aAAkB,QAAQ,CAAC;IAL7D,MAAM,CAAC,QAAQ,CAAC,KAAK,gBAA0B;IAE/C,QAAQ,CAAC,EAAE,QAAO;IAClB,QAAQ,CAAC,GAAG,SAAQ;gBAEQ,GAAG,EAAE,CAAC,EAAkB,QAAQ,CAAC,eAAG;IAEhE;;;OAGG;IACH,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,GAAG,CAAC;IAIrB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,CAAC;IAIvB,MAAM,IAAI,CAAC;IAIX,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;IAIvC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,CAAC,GAAG,EAAE,KAAK,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;CAG/C;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG;IACvE,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAA;IAE9C,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,GAAG,MAAM,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;CAClD,CAAA;AAED,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AACjG,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,SAAS,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;AAElG,wBAAgB,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;AACpH,wBAAgB,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAC5C,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GACtB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;AACrC,wBAAgB,OAAO,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EACpD,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,EACvB,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GACtB,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;AAC9C,wBAAgB,OAAO,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,EAAE,EAAE,GAAG,CAAC,CAAA;AAa3E,eAAO,MAAM,QAAQ,aAAc,GAAG,2CAOrC,CAAA;AAED,eAAO,MAAM,iBAAiB,aAAc,GAAG,0CAE9C,CAAA;AAED,qBAAa,eAAe,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,CAAE,SAAQ,KAAK;IAC1D,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;gBAER,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC;CAIjC;AAED,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAA;AACpE,MAAM,MAAM,cAAc,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA"}
package/dist/index.js CHANGED
@@ -30,11 +30,13 @@ export class Err {
30
30
  mapErr(mapper) {
31
31
  return new Err(mapper(this.val));
32
32
  }
33
- constructor(val){
33
+ constructor(val, metadata){
34
34
  _define_property(this, "val", void 0);
35
+ _define_property(this, "metadata", void 0);
35
36
  _define_property(this, "ok", void 0);
36
37
  _define_property(this, "err", void 0);
37
38
  this.val = val;
39
+ this.metadata = metadata;
38
40
  this.ok = false;
39
41
  this.err = true;
40
42
  }
@@ -59,11 +61,13 @@ export class Ok {
59
61
  mapErr(_mapper) {
60
62
  return this;
61
63
  }
62
- constructor(val){
64
+ constructor(val, metadata){
63
65
  _define_property(this, "val", void 0);
66
+ _define_property(this, "metadata", void 0);
64
67
  _define_property(this, "ok", void 0);
65
68
  _define_property(this, "err", void 0);
66
69
  this.val = val;
70
+ this.metadata = metadata;
67
71
  this.ok = true;
68
72
  this.err = false;
69
73
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@driveflux/result",
3
- "version": "3.0.5",
3
+ "version": "3.1.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./package.json": "./package.json",
@@ -17,7 +17,7 @@
17
17
  ],
18
18
  "types": "dist/index.d.ts",
19
19
  "dependencies": {
20
- "@driveflux/problem": "3.0.3"
20
+ "@driveflux/problem": "3.1.0"
21
21
  },
22
22
  "devDependencies": {
23
23
  "@swc/cli": "^0.1.62",