@bgord/bun 1.24.4 → 1.24.6

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.
@@ -5,13 +5,13 @@ export declare enum InvariantFailureKind {
5
5
  precondition = "precondition",
6
6
  not_found = "not_found"
7
7
  }
8
- export declare abstract class Invariant<T extends Config> {
8
+ export declare abstract class Invariant<T extends Config, N extends T = T> {
9
9
  abstract passes(config: T): boolean;
10
10
  abstract error: Constructor<Error>;
11
11
  abstract message: string;
12
12
  abstract kind: InvariantFailureKind;
13
13
  throw(): void;
14
- enforce(config: T): void;
14
+ enforce<C extends T>(config: C): C & N;
15
15
  }
16
16
  export {};
17
17
  //# sourceMappingURL=invariant.service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"invariant.service.d.ts","sourceRoot":"","sources":["../src/invariant.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEtC,oBAAY,oBAAoB;IAC9B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CACxB;AAED,8BAAsB,SAAS,CAAC,CAAC,SAAS,MAAM;IAC9C,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC;IAEpC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IAEpC,KAAK,SAEJ;IAED,OAAO,CAAC,MAAM,EAAE,CAAC,QAEhB;CACF"}
1
+ {"version":3,"file":"invariant.service.d.ts","sourceRoot":"","sources":["../src/invariant.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,KAAK,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEtC,oBAAY,oBAAoB;IAC9B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;CACxB;AAED,8BAAsB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;IAC/D,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,OAAO,CAAC;IAEpC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;IAEnC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEzB,QAAQ,CAAC,IAAI,EAAE,oBAAoB,CAAC;IAEpC,KAAK,SAEJ;IAED,OAAO,CAAC,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAIrC;CACF"}
@@ -11,6 +11,7 @@ export class Invariant {
11
11
  enforce(config) {
12
12
  if (!this.passes(config))
13
13
  this.throw();
14
+ return config;
14
15
  }
15
16
  }
16
17
  //# sourceMappingURL=invariant.service.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"invariant.service.js","sourceRoot":"","sources":["../src/invariant.service.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,+CAAuB,CAAA;IACvB,qDAA6B,CAAA;IAC7B,+CAAuB,CAAA;AACzB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B;AAED,MAAM,OAAgB,SAAS;IAS7B,KAAK;QACH,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAC,MAAS;QACf,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"invariant.service.js","sourceRoot":"","sources":["../src/invariant.service.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC9B,+CAAuB,CAAA;IACvB,qDAA6B,CAAA;IAC7B,+CAAuB,CAAA;AACzB,CAAC,EAJW,oBAAoB,KAApB,oBAAoB,QAI/B;AAED,MAAM,OAAgB,SAAS;IAS7B,KAAK;QACH,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,OAAO,CAAc,MAAS;QAC5B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;YAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAEvC,OAAO,MAAe,CAAC;IACzB,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bgord/bun",
3
- "version": "1.24.4",
3
+ "version": "1.24.6",
4
4
  "type": "module",
5
5
  "license": "MIT",
6
6
  "author": "Bartosz Gordon",
@@ -8,7 +8,7 @@ export enum InvariantFailureKind {
8
8
  not_found = "not_found",
9
9
  }
10
10
 
11
- export abstract class Invariant<T extends Config> {
11
+ export abstract class Invariant<T extends Config, N extends T = T> {
12
12
  abstract passes(config: T): boolean;
13
13
 
14
14
  abstract error: Constructor<Error>;
@@ -21,7 +21,9 @@ export abstract class Invariant<T extends Config> {
21
21
  throw new this.error(this.message);
22
22
  }
23
23
 
24
- enforce(config: T) {
24
+ enforce<C extends T>(config: C): C & N {
25
25
  if (!this.passes(config)) this.throw();
26
+
27
+ return config as C & N;
26
28
  }
27
29
  }