@driveflux/result 4.2.2 → 4.2.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@driveflux/result",
3
- "version": "4.2.2",
3
+ "version": "4.2.3",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./package.json": "./package.json",
@@ -13,16 +13,16 @@
13
13
  "dist"
14
14
  ],
15
15
  "dependencies": {
16
- "@driveflux/problem": "4.2.1"
16
+ "@driveflux/problem": "4.2.2"
17
17
  },
18
18
  "devDependencies": {
19
- "@driveflux/fab": "2.2.1",
20
- "@driveflux/tsconfig": "1.2.1",
19
+ "@driveflux/fab": "2.2.2",
20
+ "@driveflux/tsconfig": "1.2.2",
21
21
  "@swc/cli": "0.4.1-nightly.20240914",
22
- "@swc/core": "1.7.26",
23
- "@types/node": "^22.5.5",
24
- "del-cli": "^5.1.0",
25
- "typescript": "^5.6.2"
22
+ "@swc/core": "1.7.36",
23
+ "@types/node": "^22.7.7",
24
+ "del-cli": "^6.0.0",
25
+ "typescript": "^5.6.3"
26
26
  },
27
27
  "scripts": {
28
28
  "build": "fab",
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["import type { Problem } from '@driveflux/problem'\nexport class Err<E, M = unknown> {\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 = unknown> {\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 = unknown, 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<unknown, unknown> => {\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<unknown> => {\n return response.result && isResult(response.result)\n}\n\nexport class ErrorWithResult<E = any> extends Error {\n result: Err<E>\n\n constructor(result: Err<E>) {\n super('')\n this.result = result\n }\n}\n\nexport type StandardResult<R = unknown, MS = unknown, ME = MS> = Result<R, Problem, MS, ME>\nexport type PromisedResult<R = unknown, MS = unknown, ME = MS> = Promise<StandardResult<R, MS, ME>>\n\n"],
5
- "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACO,IAAM,MAAN,MAAM,KAAoB;AAAA,EAM/B,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,IAAmB;AAAA,EAM9B,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,aAAwD;AAC/E,SACE,OAAO,aAAa,YACpB,YACA,OAAO,SAAS,OAAO,eACvB,OAAO,SAAS,QAAQ;AAE5B;AAEO,IAAM,oBAAoB,CAAC,aAAwD;AACxF,SAAO,SAAS,UAAU,SAAS,SAAS,MAAM;AACpD;AAEO,IAAM,kBAAN,cAAuC,MAAM;AAAA,EAClD;AAAA,EAEA,YAAY,QAAgB;AAC1B,UAAM,EAAE;AACR,SAAK,SAAS;AAAA,EAChB;AACF;",
6
- "names": []
7
- }
@@ -1,3 +0,0 @@
1
- {
2
- "type": "commonjs"
3
- }
package/dist/index.js.map DELETED
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../src/index.ts"],
4
- "sourcesContent": ["import type { Problem } from '@driveflux/problem'\nexport class Err<E, M = unknown> {\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 = unknown> {\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 = unknown, 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<unknown, unknown> => {\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<unknown> => {\n return response.result && isResult(response.result)\n}\n\nexport class ErrorWithResult<E = any> extends Error {\n result: Err<E>\n\n constructor(result: Err<E>) {\n super('')\n this.result = result\n }\n}\n\nexport type StandardResult<R = unknown, MS = unknown, ME = MS> = Result<R, Problem, MS, ME>\nexport type PromisedResult<R = unknown, MS = unknown, ME = MS> = Promise<StandardResult<R, MS, ME>>\n\n"],
5
- "mappings": ";AACO,IAAM,MAAN,MAAM,KAAoB;AAAA,EAM/B,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,IAAmB;AAAA,EAM9B,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,aAAwD;AAC/E,SACE,OAAO,aAAa,YACpB,YACA,OAAO,SAAS,OAAO,eACvB,OAAO,SAAS,QAAQ;AAE5B;AAEO,IAAM,oBAAoB,CAAC,aAAwD;AACxF,SAAO,SAAS,UAAU,SAAS,SAAS,MAAM;AACpD;AAEO,IAAM,kBAAN,cAAuC,MAAM;AAAA,EAClD;AAAA,EAEA,YAAY,QAAgB;AAC1B,UAAM,EAAE;AACR,SAAK,SAAS;AAAA,EAChB;AACF;",
6
- "names": []
7
- }