@wisemen/quantity 0.6.1 → 0.8.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.
Files changed (41) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +1 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/quantities/current/current.d.ts +2 -1
  5. package/dist/quantities/current/current.js +4 -1
  6. package/dist/quantities/current/current.js.map +1 -1
  7. package/dist/quantities/current/tests/current.unit.test.js +26 -0
  8. package/dist/quantities/current/tests/current.unit.test.js.map +1 -1
  9. package/dist/quantities/distance/distance.d.ts +2 -1
  10. package/dist/quantities/distance/distance.js +4 -1
  11. package/dist/quantities/distance/distance.js.map +1 -1
  12. package/dist/quantities/duration/duration.d.ts +2 -1
  13. package/dist/quantities/duration/duration.js +4 -1
  14. package/dist/quantities/duration/duration.js.map +1 -1
  15. package/dist/quantities/energy/energy.d.ts +2 -1
  16. package/dist/quantities/energy/energy.js +4 -1
  17. package/dist/quantities/energy/energy.js.map +1 -1
  18. package/dist/quantities/mass/mass.d.ts +2 -1
  19. package/dist/quantities/mass/mass.js +4 -1
  20. package/dist/quantities/mass/mass.js.map +1 -1
  21. package/dist/quantities/power/power.d.ts +2 -1
  22. package/dist/quantities/power/power.js +4 -1
  23. package/dist/quantities/power/power.js.map +1 -1
  24. package/dist/quantities/speed/speed.d.ts +2 -1
  25. package/dist/quantities/speed/speed.js +4 -1
  26. package/dist/quantities/speed/speed.js.map +1 -1
  27. package/dist/quantities/temperature/temperature.d.ts +3 -1
  28. package/dist/quantities/temperature/temperature.js +5 -1
  29. package/dist/quantities/temperature/temperature.js.map +1 -1
  30. package/dist/quantities/voltage/voltage.d.ts +2 -1
  31. package/dist/quantities/voltage/voltage.js +4 -1
  32. package/dist/quantities/voltage/voltage.js.map +1 -1
  33. package/dist/quantity.column.js +6 -2
  34. package/dist/quantity.column.js.map +1 -1
  35. package/dist/quantity.d.ts +6 -1
  36. package/dist/quantity.js +18 -8
  37. package/dist/quantity.js.map +1 -1
  38. package/dist/rate.d.ts +11 -0
  39. package/dist/rate.js +28 -0
  40. package/dist/rate.js.map +1 -0
  41. package/package.json +9 -7
package/dist/index.d.ts CHANGED
@@ -7,3 +7,4 @@ export * from './quantities/energy/index.js';
7
7
  export * from './quantities/power/index.js';
8
8
  export * from './quantities/speed/index.js';
9
9
  export * from './quantities/voltage/index.js';
10
+ export * from './rate.js';
package/dist/index.js CHANGED
@@ -7,4 +7,5 @@ export * from './quantities/energy/index.js';
7
7
  export * from './quantities/power/index.js';
8
8
  export * from './quantities/speed/index.js';
9
9
  export * from './quantities/voltage/index.js';
10
+ export * from './rate.js';
10
11
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mCAAmC,CAAA;AACjD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,+BAA+B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mCAAmC,CAAA;AACjD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,WAAW,CAAA"}
@@ -2,7 +2,8 @@ import { Quantity } from '../../quantity.js';
2
2
  import { CurrentUnit } from './current-unit.enum.js';
3
3
  export declare const CURRENT_MULTIPLIERS: Record<CurrentUnit, number>;
4
4
  export declare class Current extends Quantity<CurrentUnit, Current> {
5
- protected baseUnit: CurrentUnit;
5
+ protected getBaseUnit(): CurrentUnit;
6
6
  protected convertValueToBaseUnit(value: number, unit: CurrentUnit): number;
7
7
  protected convertBaseUnitValueTo(value: number, unit: CurrentUnit): number;
8
+ static ZERO: Current;
8
9
  }
@@ -28,12 +28,15 @@ export const CURRENT_MULTIPLIERS = {
28
28
  [CurrentUnit.QUETTAAMPERE]: 1e30
29
29
  };
30
30
  export class Current extends Quantity {
31
- baseUnit = CurrentUnit.AMPERE;
31
+ getBaseUnit() {
32
+ return CurrentUnit.AMPERE;
33
+ }
32
34
  convertValueToBaseUnit(value, unit) {
33
35
  return value * CURRENT_MULTIPLIERS[unit];
34
36
  }
35
37
  convertBaseUnitValueTo(value, unit) {
36
38
  return value / CURRENT_MULTIPLIERS[unit];
37
39
  }
40
+ static ZERO = new Current(0, CurrentUnit.AMPERE);
38
41
  }
39
42
  //# sourceMappingURL=current.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"current.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,MAAM,CAAC,MAAM,mBAAmB,GAAgC;IAC9D,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IAEvB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,KAAK;IAEjC,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI;IAC7B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,IAAI;CACjC,CAAA;AAED,MAAM,OAAO,OAAQ,SAAQ,QAA8B;IAC/C,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAA;IAE7B,sBAAsB,CAAE,KAAa,EAAE,IAAiB;QAChE,OAAO,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAiB;QAChE,OAAO,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"current.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,MAAM,CAAC,MAAM,mBAAmB,GAAgC;IAC9D,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;IAEvB,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,KAAK;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,KAAK;IAChC,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,KAAK;IAEjC,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,GAAG;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,GAAG;IAC7B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI;IAC9B,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI;IAC7B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,IAAI;IAC/B,CAAC,WAAW,CAAC,YAAY,CAAC,EAAE,IAAI;CACjC,CAAA;AAED,MAAM,OAAO,OAAQ,SAAQ,QAA8B;IAC/C,WAAW;QACnB,OAAO,WAAW,CAAC,MAAM,CAAA;IAC3B,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAiB;QAChE,OAAO,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAiB;QAChE,OAAO,KAAK,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA"}
@@ -2,6 +2,7 @@ import { describe, it } from 'node:test';
2
2
  import { expect } from 'expect';
3
3
  import { Current } from '../current.js';
4
4
  import { CurrentUnit } from '../current-unit.enum.js';
5
+ import { Rate } from '../../../rate.js';
5
6
  void describe('Current class', () => {
6
7
  void describe('Current calculations', () => {
7
8
  void it('adds currents', () => {
@@ -26,6 +27,31 @@ void describe('Current class', () => {
26
27
  expect(r2).toBe(4);
27
28
  expect(r3).toBe(2);
28
29
  });
30
+ void it('takes a rate of a current', () => {
31
+ const c1 = new Current(100, CurrentUnit.AMPERE);
32
+ const p1 = Rate.fromPercent(10);
33
+ const p2 = Rate.fromPermille(3);
34
+ const p3 = Rate.fromDecimal(0.25);
35
+ const r1 = c1.multiply(p1);
36
+ const r2 = c1.multiply(p2);
37
+ const r3 = c1.multiply(p3);
38
+ expect(r1.isEqualTo(10, CurrentUnit.AMPERE)).toBe(true);
39
+ expect(r2.isEqualTo(300, CurrentUnit.MILLIAMPERE)).toBe(true);
40
+ expect(r3.isEqualTo(25, CurrentUnit.AMPERE)).toBe(true);
41
+ });
42
+ void it('formats a current as a string', () => {
43
+ const c1 = new Current(10, CurrentUnit.AMPERE);
44
+ const c2 = new Current(500, CurrentUnit.MILLIAMPERE);
45
+ const c3 = new Current(0.5, CurrentUnit.AMPERE);
46
+ expect(c1.format('nl-BE')).toBe('10 A');
47
+ expect(c2.format('nl-BE')).toBe('500 mA');
48
+ expect(c3.format('nl-BE')).toBe('0,5 A');
49
+ expect(c3.format('nl-BE', { minimumFractionDigits: 3, maximumFractionDigits: 3 })).toBe('0,500 A');
50
+ expect(c1.format('en-US')).toBe('10 A');
51
+ expect(c2.format('en-US')).toBe('500 mA');
52
+ expect(c3.format('en-US')).toBe('0.5 A');
53
+ expect(c3.format('en-US', { minimumFractionDigits: 3, maximumFractionDigits: 3 })).toBe('0.500 A');
54
+ });
29
55
  });
30
56
  });
31
57
  //# sourceMappingURL=current.unit.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"current.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/current/tests/current.unit.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,WAAW,CAAA;AACxC,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAC/B,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAErD,KAAK,QAAQ,CAAC,eAAe,EAAE,GAAG,EAAE;IAClC,KAAK,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACzC,KAAK,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;YAC5B,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;YACpD,MAAM,CAAC,GAAY,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAE7B,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1D,CAAC,CAAC,CAAA;QAEF,KAAK,EAAE,CAAC,oBAAoB,EAAE,GAAG,EAAE;YACjC,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,EAAE,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;YAC9C,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;YACpD,MAAM,CAAC,GAAY,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAElC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC/D,CAAC,CAAC,CAAA;QAEF,KAAK,EAAE,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAC/B,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;YAC7C,MAAM,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAA;YAEpD,MAAM,EAAE,GAAY,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAA;YAChC,MAAM,EAAE,GAAW,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAChC,MAAM,EAAE,GAAW,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;YAErD,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,WAAW,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAC7D,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YAClB,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACpB,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"current.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/current/tests/current.unit.test.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { DistanceUnit } from './distance-unit.enum.js';
3
3
  export declare class Distance extends Quantity<DistanceUnit, Distance> {
4
- protected baseUnit: DistanceUnit;
4
+ protected getBaseUnit(): DistanceUnit;
5
5
  protected convertValueToBaseUnit(value: number, fromUnit: DistanceUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, toUnit: DistanceUnit): number;
7
7
  get meters(): number;
8
8
  get kilometers(): number;
9
+ static ZERO: Distance;
9
10
  }
@@ -16,7 +16,9 @@ const DISTANCE_MULTIPLIERS = {
16
16
  [DistanceUnit.MILES]: 1609.34
17
17
  };
18
18
  export class Distance extends Quantity {
19
- baseUnit = DistanceUnit.METER;
19
+ getBaseUnit() {
20
+ return DistanceUnit.METER;
21
+ }
20
22
  convertValueToBaseUnit(value, fromUnit) {
21
23
  return value * DISTANCE_MULTIPLIERS[fromUnit];
22
24
  }
@@ -29,5 +31,6 @@ export class Distance extends Quantity {
29
31
  get kilometers() {
30
32
  return this.asNumber(DistanceUnit.KILOMETER);
31
33
  }
34
+ static ZERO = new Distance(0, DistanceUnit.METER);
32
35
  }
33
36
  //# sourceMappingURL=distance.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,MAAM,oBAAoB,GAAiC;IACzD,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IAEvB,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI;IAC9B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI;IAE9B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,GAAG;IAC7B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,GAAG;IAC9B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,GAAG;IAE7B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO;CAC9B,CAAA;AAED,MAAM,OAAO,QAAS,SAAQ,QAAgC;IAClD,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAA;IAE7B,sBAAsB,CAAE,KAAa,EAAE,QAAsB;QACrE,OAAO,KAAK,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAoB;QACnE,OAAO,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC;CACF"}
1
+ {"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,MAAM,oBAAoB,GAAiC;IACzD,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;IAEvB,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI;IAC9B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI;IAC/B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,IAAI;IAE9B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,GAAG;IAC7B,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,GAAG;IAC9B,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,GAAG;IAE7B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,MAAM;IAC3B,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,OAAO;CAC9B,CAAA;AAED,MAAM,OAAO,QAAS,SAAQ,QAAgC;IAClD,WAAW;QACnB,OAAO,YAAY,CAAC,KAAK,CAAA;IAC3B,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,QAAsB;QACrE,OAAO,KAAK,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAA;IAC/C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAoB;QACnE,OAAO,KAAK,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,IAAI,UAAU;QACZ,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,CAAA;IAC9C,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,CAAC,EAAE,YAAY,CAAC,KAAK,CAAC,CAAA"}
@@ -1,7 +1,7 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { DurationUnit } from './duration-unit.enum.js';
3
3
  export declare class Duration extends Quantity<DurationUnit, Duration> {
4
- protected baseUnit: DurationUnit;
4
+ protected getBaseUnit(): DurationUnit;
5
5
  protected convertValueToBaseUnit(value: number, unit: DurationUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, unit: DurationUnit): number;
7
7
  get nanoseconds(): number;
@@ -11,4 +11,5 @@ export declare class Duration extends Quantity<DurationUnit, Duration> {
11
11
  get hours(): number;
12
12
  /** @returns number of 24hr days */
13
13
  get days(): number;
14
+ static ZERO: Duration;
14
15
  }
@@ -10,7 +10,9 @@ const DISTANCE_MULTIPLIERS = {
10
10
  [DurationUnit.DAYS]: 3600 * 24
11
11
  };
12
12
  export class Duration extends Quantity {
13
- baseUnit = DurationUnit.SECONDS;
13
+ getBaseUnit() {
14
+ return DurationUnit.SECONDS;
15
+ }
14
16
  convertValueToBaseUnit(value, unit) {
15
17
  return value * DISTANCE_MULTIPLIERS[unit];
16
18
  }
@@ -36,5 +38,6 @@ export class Duration extends Quantity {
36
38
  get days() {
37
39
  return this.asNumber(DurationUnit.DAYS);
38
40
  }
41
+ static ZERO = new Duration(0, DurationUnit.SECONDS);
39
42
  }
40
43
  //# sourceMappingURL=duration.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,MAAM,oBAAoB,GAAiC;IACzD,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI;IACjC,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI;IACjC,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,IAAI;IAChC,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE;IAC1B,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI;IAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE;CAC/B,CAAA;AAED,MAAM,OAAO,QAAS,SAAQ,QAAgC;IAClD,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAA;IAE/B,sBAAsB,CAAE,KAAa,EAAE,IAAkB;QACjE,OAAO,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAkB;QACjE,OAAO,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,mCAAmC;IACnC,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAA;AAEtD,MAAM,oBAAoB,GAAiC;IACzD,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;IACzB,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI;IACjC,CAAC,YAAY,CAAC,YAAY,CAAC,EAAE,IAAI;IACjC,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,IAAI;IAChC,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE;IAC1B,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,IAAI;IAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,IAAI,GAAG,EAAE;CAC/B,CAAA;AAED,MAAM,OAAO,QAAS,SAAQ,QAAgC;IAClD,WAAW;QACnB,OAAO,YAAY,CAAC,OAAO,CAAA;IAC7B,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAkB;QACjE,OAAO,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAkB;QACjE,OAAO,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAA;IAC3C,CAAC;IAED,IAAI,WAAW;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,WAAW,CAAC,CAAA;IAChD,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,YAAY,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,CAAC,CAAA;IAC1C,CAAC;IAED,mCAAmC;IACnC,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,QAAQ,CAAC,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,CAAA"}
@@ -1,7 +1,8 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { EnergyUnit } from './energy-unit.enum.js';
3
3
  export declare class Energy extends Quantity<EnergyUnit, Energy> {
4
- protected baseUnit: EnergyUnit;
4
+ protected getBaseUnit(): EnergyUnit;
5
5
  protected convertValueToBaseUnit(value: number, unit: EnergyUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, unit: EnergyUnit): number;
7
+ static ZERO: Energy;
7
8
  }
@@ -39,12 +39,15 @@ const ENERGY_MULTIPLIERS = {
39
39
  [EnergyUnit.QUETTAWATT_HOUR]: 3600 * 1e30
40
40
  };
41
41
  export class Energy extends Quantity {
42
- baseUnit = EnergyUnit.JOULE;
42
+ getBaseUnit() {
43
+ return EnergyUnit.JOULE;
44
+ }
43
45
  convertValueToBaseUnit(value, unit) {
44
46
  return value * ENERGY_MULTIPLIERS[unit];
45
47
  }
46
48
  convertBaseUnitValueTo(value, unit) {
47
49
  return value / ENERGY_MULTIPLIERS[unit];
48
50
  }
51
+ static ZERO = new Energy(0, EnergyUnit.JOULE);
49
52
  }
50
53
  //# sourceMappingURL=energy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAElD,MAAM,kBAAkB,GAA+B;IACrD,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;IAErB,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI;IAC5B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI;IAC5B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,KAAK;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK;IAC9B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,KAAK;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK;IAC9B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK;IAC9B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,KAAK;IAC9B,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,KAAK;IAE/B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG;IAC3B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,GAAG;IAC5B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG;IAC3B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG;IAC3B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG;IAC3B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI;IAC5B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI;IAC5B,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC3B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAC7B,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,IAAI;IAE7B,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,IAAI;IAC5B,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,GAAG,GAAG;IACtC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,GAAG,GAAG;IACtC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,GAAG,GAAG;IACtC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI;IACvC,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,IAAI,GAAG,IAAI;IACvC,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,IAAI,GAAG,IAAI;IACtC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,IAAI,GAAG,IAAI;IACxC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,IAAI,GAAG,IAAI;IACxC,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,IAAI,GAAG,IAAI;IACxC,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,IAAI,GAAG,IAAI;CAC1C,CAAA;AAED,MAAM,OAAO,MAAO,SAAQ,QAA4B;IAC5C,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAA;IAE3B,sBAAsB,CAAE,KAAa,EAAE,IAAgB;QAC/D,OAAO,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAgB;QAC/D,OAAO,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC;CACF"}
1
+ {"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { MassUnit } from './mass-unit.enum.js';
3
3
  export declare class Mass extends Quantity<MassUnit, Mass> {
4
- protected baseUnit: MassUnit;
4
+ protected getBaseUnit(): MassUnit;
5
5
  protected convertValueToBaseUnit(value: number, fromUnit: MassUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, toUnit: MassUnit): number;
7
7
  get kilograms(): number;
8
8
  get grams(): number;
9
+ static ZERO: Mass;
9
10
  }
@@ -15,7 +15,9 @@ const MASS_MULTIPLIERS = {
15
15
  [MassUnit.OUNCE]: 0.028349523125
16
16
  };
17
17
  export class Mass extends Quantity {
18
- baseUnit = MassUnit.KILOGRAM;
18
+ getBaseUnit() {
19
+ return MassUnit.KILOGRAM;
20
+ }
19
21
  convertValueToBaseUnit(value, fromUnit) {
20
22
  return value * MASS_MULTIPLIERS[fromUnit];
21
23
  }
@@ -28,5 +30,6 @@ export class Mass extends Quantity {
28
30
  get grams() {
29
31
  return this.asNumber(MassUnit.GRAM);
30
32
  }
33
+ static ZERO = new Mass(0, MassUnit.KILOGRAM);
31
34
  }
32
35
  //# sourceMappingURL=mass.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,gBAAgB,GAA6B;IACjD,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEtB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI;IACrB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI;IACzB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK;IAE1B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI;IACzB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAE1B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG;IAErB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU;IAC5B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc;CACjC,CAAA;AAED,MAAM,OAAO,IAAK,SAAQ,QAAwB;IACtC,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAA;IAE5B,sBAAsB,CAAE,KAAa,EAAE,QAAkB;QACjE,OAAO,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAgB;QAC/D,OAAO,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;CACF"}
1
+ {"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAE9C,MAAM,gBAAgB,GAA6B;IACjD,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;IAEtB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI;IACrB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI;IACzB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAC1B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK;IAE1B,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI;IACzB,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,IAAI;IAE1B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,GAAG;IAErB,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,UAAU;IAC5B,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,cAAc;CACjC,CAAA;AAED,MAAM,OAAO,IAAK,SAAQ,QAAwB;IACtC,WAAW;QACnB,OAAO,QAAQ,CAAC,QAAQ,CAAA;IAC1B,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,QAAkB;QACjE,OAAO,KAAK,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAA;IAC3C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAgB;QAC/D,OAAO,KAAK,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,SAAS;QACX,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;IACzC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACrC,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA"}
@@ -1,7 +1,8 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { PowerUnit } from './power-unit.enum.js';
3
3
  export declare class Power extends Quantity<PowerUnit, Power> {
4
- protected baseUnit: PowerUnit;
4
+ protected getBaseUnit(): PowerUnit;
5
5
  protected convertValueToBaseUnit(value: number, unit: PowerUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, unit: PowerUnit): number;
7
+ static ZERO: Power;
7
8
  }
@@ -28,12 +28,15 @@ const POWER_MULTIPLIERS = {
28
28
  [PowerUnit.QUETTAWATT]: 1e30
29
29
  };
30
30
  export class Power extends Quantity {
31
- baseUnit = PowerUnit.WATT;
31
+ getBaseUnit() {
32
+ return PowerUnit.WATT;
33
+ }
32
34
  convertValueToBaseUnit(value, unit) {
33
35
  return value * POWER_MULTIPLIERS[unit];
34
36
  }
35
37
  convertBaseUnitValueTo(value, unit) {
36
38
  return value / POWER_MULTIPLIERS[unit];
37
39
  }
40
+ static ZERO = new Power(0, PowerUnit.WATT);
38
41
  }
39
42
  //# sourceMappingURL=power.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"power.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,iBAAiB,GAA8B;IACnD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IAEnB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK;IAE7B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI;IACzB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,IAAI;CAC7B,CAAA;AAED,MAAM,OAAO,KAAM,SAAQ,QAA0B;IACzC,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAA;IAEzB,sBAAsB,CAAE,KAAa,EAAE,IAAe;QAC9D,OAAO,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAe;QAC9D,OAAO,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"power.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,iBAAiB,GAA8B;IACnD,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;IAEnB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,KAAK;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,KAAK;IAC5B,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,KAAK;IAE7B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG;IACzB,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,IAAI;IAC1B,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,IAAI;IACzB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,IAAI;IAC3B,CAAC,SAAS,CAAC,UAAU,CAAC,EAAE,IAAI;CAC7B,CAAA;AAED,MAAM,OAAO,KAAM,SAAQ,QAA0B;IACzC,WAAW;QACnB,OAAO,SAAS,CAAC,IAAI,CAAA;IACvB,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAe;QAC9D,OAAO,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAe;QAC9D,OAAO,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAA"}
@@ -1,7 +1,8 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { SpeedUnit } from './speed-unit.enum.js';
3
3
  export declare class Speed extends Quantity<SpeedUnit, Speed> {
4
- protected baseUnit: SpeedUnit;
4
+ protected getBaseUnit(): SpeedUnit;
5
5
  protected convertValueToBaseUnit(value: number, fromUnit: SpeedUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, toUnit: SpeedUnit): number;
7
+ static ZERO: Speed;
7
8
  }
@@ -13,12 +13,15 @@ const SPEED_MULTIPLIERS = {
13
13
  [SpeedUnit.MICROMETER_PER_SECOND]: 1e-6
14
14
  };
15
15
  export class Speed extends Quantity {
16
- baseUnit = SpeedUnit.METER_PER_SECOND;
16
+ getBaseUnit() {
17
+ return SpeedUnit.METER_PER_SECOND;
18
+ }
17
19
  convertValueToBaseUnit(value, fromUnit) {
18
20
  return value * SPEED_MULTIPLIERS[fromUnit];
19
21
  }
20
22
  convertBaseUnitValueTo(value, toUnit) {
21
23
  return value / SPEED_MULTIPLIERS[toUnit];
22
24
  }
25
+ static ZERO = new Speed(0, SpeedUnit.METER_PER_SECOND);
23
26
  }
24
27
  //# sourceMappingURL=speed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"speed.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,iBAAiB,GAA8B;IACnD,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAE/B,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,GAAG,GAAG;IACvC,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO;IACnC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ;IAC1B,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,IAAI;IACvC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,KAAK;IACxC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,IAAI;CACxC,CAAA;AAED,MAAM,OAAO,KAAM,SAAQ,QAA0B;IACzC,QAAQ,GAAG,SAAS,CAAC,gBAAgB,CAAA;IAErC,sBAAsB,CAAE,KAAa,EAAE,QAAmB;QAClE,OAAO,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAiB;QAChE,OAAO,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC;CACF"}
1
+ {"version":3,"file":"speed.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AAEhD,MAAM,iBAAiB,GAA8B;IACnD,CAAC,SAAS,CAAC,gBAAgB,CAAC,EAAE,CAAC;IAE/B,CAAC,SAAS,CAAC,kBAAkB,CAAC,EAAE,CAAC,GAAG,GAAG;IACvC,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE,OAAO;IACnC,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,QAAQ;IAC1B,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,eAAe,CAAC,EAAE,MAAM;IACnC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,IAAI;IACvC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,KAAK;IACxC,CAAC,SAAS,CAAC,qBAAqB,CAAC,EAAE,IAAI;CACxC,CAAA;AAED,MAAM,OAAO,KAAM,SAAQ,QAA0B;IACzC,WAAW;QACnB,OAAO,SAAS,CAAC,gBAAgB,CAAA;IACnC,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,QAAmB;QAClE,OAAO,KAAK,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAA;IAC5C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAiB;QAChE,OAAO,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;IAC1C,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,gBAAgB,CAAC,CAAA"}
@@ -1,7 +1,9 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { TemperatureUnit } from './temperature-unit.enum.js';
3
3
  export declare class Temperature extends Quantity<TemperatureUnit, Temperature> {
4
- protected baseUnit: TemperatureUnit;
4
+ protected getBaseUnit(): TemperatureUnit;
5
5
  protected convertValueToBaseUnit(value: number, unit: TemperatureUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, unit: TemperatureUnit): number;
7
+ /** Absolute zero = 0 Kelvin. NOTE: this does NOT represent 0° Celsius or Fahrenheit */
8
+ static ZERO: Temperature;
7
9
  }
@@ -1,7 +1,9 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { TemperatureUnit } from './temperature-unit.enum.js';
3
3
  export class Temperature extends Quantity {
4
- baseUnit = TemperatureUnit.KELVIN;
4
+ getBaseUnit() {
5
+ return TemperatureUnit.KELVIN;
6
+ }
5
7
  convertValueToBaseUnit(value, unit) {
6
8
  switch (unit) {
7
9
  case TemperatureUnit.KELVIN:
@@ -26,5 +28,7 @@ export class Temperature extends Quantity {
26
28
  return (value - 273.15) * 1000;
27
29
  }
28
30
  }
31
+ /** Absolute zero = 0 Kelvin. NOTE: this does NOT represent 0° Celsius or Fahrenheit */
32
+ static ZERO = new Temperature(0, TemperatureUnit.KELVIN);
29
33
  }
30
34
  //# sourceMappingURL=temperature.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"temperature.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/temperature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,MAAM,OAAO,WAAY,SAAQ,QAAsC;IAC3D,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAA;IAEjC,sBAAsB,CAAE,KAAa,EAAE,IAAqB;QACpE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,MAAM;gBACzB,OAAO,KAAK,CAAA;YACd,KAAK,eAAe,CAAC,OAAO;gBAC1B,OAAO,KAAK,GAAG,MAAM,CAAA;YACvB,KAAK,eAAe,CAAC,UAAU;gBAC7B,OAAO,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA;YACxC,KAAK,eAAe,CAAC,oBAAoB;gBACvC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,MAAM,CAAA;QAClC,CAAC;IACH,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAqB;QACpE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,MAAM;gBACzB,OAAO,KAAK,CAAA;YACd,KAAK,eAAe,CAAC,OAAO;gBAC1B,OAAO,KAAK,GAAG,MAAM,CAAA;YACvB,KAAK,eAAe,CAAC,UAAU;gBAC7B,OAAO,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;YACxC,KAAK,eAAe,CAAC,oBAAoB;gBACvC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,CAAA;QAClC,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"temperature.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/temperature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,MAAM,OAAO,WAAY,SAAQ,QAAsC;IAC3D,WAAW;QACnB,OAAO,eAAe,CAAC,MAAM,CAAA;IAC/B,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAqB;QACpE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,MAAM;gBACzB,OAAO,KAAK,CAAA;YACd,KAAK,eAAe,CAAC,OAAO;gBAC1B,OAAO,KAAK,GAAG,MAAM,CAAA;YACvB,KAAK,eAAe,CAAC,UAAU;gBAC7B,OAAO,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAA;YACxC,KAAK,eAAe,CAAC,oBAAoB;gBACvC,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,MAAM,CAAA;QAClC,CAAC;IACH,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,IAAqB;QACpE,QAAQ,IAAI,EAAE,CAAC;YACb,KAAK,eAAe,CAAC,MAAM;gBACzB,OAAO,KAAK,CAAA;YACd,KAAK,eAAe,CAAC,OAAO;gBAC1B,OAAO,KAAK,GAAG,MAAM,CAAA;YACvB,KAAK,eAAe,CAAC,UAAU;gBAC7B,OAAO,CAAC,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAA;YACxC,KAAK,eAAe,CAAC,oBAAoB;gBACvC,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,GAAG,IAAI,CAAA;QAClC,CAAC;IACH,CAAC;IAED,uFAAuF;IACvF,MAAM,CAAC,IAAI,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA"}
@@ -1,8 +1,9 @@
1
1
  import { Quantity } from '../../quantity.js';
2
2
  import { VoltageUnit } from './voltage-unit.enum.js';
3
3
  export declare class Voltage extends Quantity<VoltageUnit, Voltage> {
4
- protected baseUnit: VoltageUnit;
4
+ protected getBaseUnit(): VoltageUnit;
5
5
  protected convertValueToBaseUnit(value: number, fromUnit: VoltageUnit): number;
6
6
  protected convertBaseUnitValueTo(value: number, toUnit: VoltageUnit): number;
7
7
  get volts(): number;
8
+ static ZERO: Voltage;
8
9
  }
@@ -6,7 +6,9 @@ const VOLTAGE_MULTIPLIERS = {
6
6
  [VoltageUnit.KILOVOLT]: 1e3
7
7
  };
8
8
  export class Voltage extends Quantity {
9
- baseUnit = VoltageUnit.VOLT;
9
+ getBaseUnit() {
10
+ return VoltageUnit.VOLT;
11
+ }
10
12
  convertValueToBaseUnit(value, fromUnit) {
11
13
  return value * VOLTAGE_MULTIPLIERS[fromUnit];
12
14
  }
@@ -16,5 +18,6 @@ export class Voltage extends Quantity {
16
18
  get volts() {
17
19
  return this.asNumber(VoltageUnit.VOLT);
18
20
  }
21
+ static ZERO = new Voltage(0, VoltageUnit.VOLT);
19
22
  }
20
23
  //# sourceMappingURL=voltage.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"voltage.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,MAAM,mBAAmB,GAAgC;IACvD,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;IACrB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI;IAC7B,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,GAAG;CAC5B,CAAA;AAED,MAAM,OAAO,OAAQ,SAAQ,QAA8B;IAC/C,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAA;IAE3B,sBAAsB,CAAE,KAAa,EAAE,QAAqB;QACpE,OAAO,KAAK,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAmB;QAClE,OAAO,KAAK,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;CACF"}
1
+ {"version":3,"file":"voltage.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAA;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAA;AAEpD,MAAM,mBAAmB,GAAgC;IACvD,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;IACrB,CAAC,WAAW,CAAC,SAAS,CAAC,EAAE,IAAI;IAC7B,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,GAAG;CAC5B,CAAA;AAED,MAAM,OAAO,OAAQ,SAAQ,QAA8B;IAC/C,WAAW;QACnB,OAAO,WAAW,CAAC,IAAI,CAAA;IACzB,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,QAAqB;QACpE,OAAO,KAAK,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAA;IAC9C,CAAC;IAES,sBAAsB,CAAE,KAAa,EAAE,MAAmB;QAClE,OAAO,KAAK,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAA;IAC5C,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;IAED,MAAM,CAAC,IAAI,GAAG,IAAI,OAAO,CAAC,CAAC,EAAE,WAAW,CAAC,IAAI,CAAC,CAAA"}
@@ -1,5 +1,7 @@
1
1
  import { Column } from 'typeorm';
2
- export function QuantityColumn(QuantityConstructor, storeAsUnit, options) {
2
+ export function QuantityColumn(
3
+ // eslint-disable-next-line @typescript-eslint/naming-convention
4
+ QuantityConstructor, storeAsUnit, options) {
3
5
  const transformer = new QuantityTypeOrmTransformer(QuantityConstructor, storeAsUnit);
4
6
  return Column({
5
7
  ...options,
@@ -11,7 +13,9 @@ export function QuantityColumn(QuantityConstructor, storeAsUnit, options) {
11
13
  export class QuantityTypeOrmTransformer {
12
14
  QuantityConstructor;
13
15
  storedUnit;
14
- constructor(QuantityConstructor, storedUnit) {
16
+ constructor(
17
+ // eslint-disable-next-line @typescript-eslint/naming-convention
18
+ QuantityConstructor, storedUnit) {
15
19
  this.QuantityConstructor = QuantityConstructor;
16
20
  this.storedUnit = storedUnit;
17
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"quantity.column.js","sourceRoot":"","sources":["../lib/quantity.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAA;AAMjE,MAAM,UAAU,cAAc,CAC5B,mBAA8C,EAC9C,WAAc,EACd,OAAqC;IAErC,MAAM,WAAW,GAAG,IAAI,0BAA0B,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAA;IAEpF,OAAO,MAAM,CAAC;QACZ,GAAG,OAAO;QACV,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACzC,IAAI,EAAE,OAAO;QACb,WAAW;KACZ,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,OAAO,0BAA0B;IAGlB;IACA;IAFnB,YACmB,mBAA8C,EAC9C,UAAa;QADb,wBAAmB,GAAnB,mBAAmB,CAA2B;QAC9C,eAAU,GAAV,UAAU,CAAG;IAC7B,CAAC;IAIJ,IAAI,CAAE,KAAoB;QACxB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAC7D,CAAC;IAKD,EAAE,CAAE,QAA8B;QAChC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAChD,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3C,CAAC;CACF"}
1
+ {"version":3,"file":"quantity.column.js","sourceRoot":"","sources":["../lib/quantity.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAmC,MAAM,SAAS,CAAA;AAMjE,MAAM,UAAU,cAAc;AAC5B,gEAAgE;AAChE,mBAA8C,EAC9C,WAAc,EACd,OAAqC;IAErC,MAAM,WAAW,GAAG,IAAI,0BAA0B,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAA;IAEpF,OAAO,MAAM,CAAC;QACZ,GAAG,OAAO;QACV,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC;QACzC,IAAI,EAAE,OAAO;QACb,WAAW;KACZ,CAAC,CAAA;AACJ,CAAC;AAED,MAAM,OAAO,0BAA0B;IAIlB;IACA;IAHnB;IACE,gEAAgE;IAC/C,mBAA8C,EAC9C,UAAa;QADb,wBAAmB,GAAnB,mBAAmB,CAA2B;QAC9C,eAAU,GAAV,UAAU,CAAG;IAC7B,CAAC;IAIJ,IAAI,CAAE,KAAoB;QACxB,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACnB,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,IAAI,IAAI,CAAC,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAA;IAC7D,CAAC;IAKD,EAAE,CAAE,QAA8B;QAChC,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAChD,OAAO,QAAQ,CAAA;QACjB,CAAC;QAED,OAAO,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAA;IAC3C,CAAC;CACF"}
@@ -1,14 +1,16 @@
1
+ import { Rate } from './rate.js';
1
2
  export type QuantityConstructor<U extends string, Q extends Quantity<U, Q>> = {
2
3
  new (quantityOrValue: Q | number, unit?: U): Q;
3
4
  };
4
5
  export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q>> {
5
- protected abstract baseUnit: U;
6
+ protected abstract getBaseUnit(): U;
6
7
  protected abstract convertValueToBaseUnit(value: number, fromUnit: U): number;
7
8
  protected abstract convertBaseUnitValueTo(value: number, toUnit: U): number;
8
9
  readonly value: number;
9
10
  readonly unit: U;
10
11
  constructor(quantity: Q);
11
12
  constructor(value: number, unit: U);
13
+ constructor(value: 0);
12
14
  private construct;
13
15
  /** Converts the quantity to the specified unit */
14
16
  to(unit: U): Q;
@@ -37,8 +39,10 @@ export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q
37
39
  subtract(quantity: Q): Q;
38
40
  /** Creates a new quantity by multiplying the current quantity with the specified factor */
39
41
  multiply(factor: number): Q;
42
+ multiply(rate: Rate): Q;
40
43
  /** Creates a new quantity by dividing the current quantity by the specified divisor */
41
44
  divide(divisor: number): Q;
45
+ divide(rate: Rate): Q;
42
46
  divide(value: number, unit: U): number;
43
47
  divide(quantity: Q): number;
44
48
  /** Creates a new quantity by calculating the modulus of
@@ -60,6 +64,7 @@ export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q
60
64
  unit: U;
61
65
  };
62
66
  toJSON(): object;
67
+ format(locale?: string, options?: Intl.NumberFormatOptions): string;
63
68
  /** Returns the maximum quantity from the provided quantities */
64
69
  static max<U extends string, Q extends Quantity<U, Q>>(...quantities: Q[]): Q;
65
70
  /** Returns the minimum quantity from the provided quantities */
package/dist/quantity.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import assert from 'assert';
2
+ import { Rate } from './rate.js';
2
3
  export class Quantity {
3
4
  value;
4
5
  unit;
@@ -7,6 +8,10 @@ export class Quantity {
7
8
  this.value = quantityOrValue.value;
8
9
  this.unit = quantityOrValue.unit;
9
10
  }
11
+ else if (quantityOrValue === 0) {
12
+ this.value = 0;
13
+ this.unit = this.getBaseUnit();
14
+ }
10
15
  else {
11
16
  assert(unit !== undefined, 'Unit must be provided when constructing from a numeric value');
12
17
  this.value = quantityOrValue;
@@ -55,28 +60,29 @@ export class Quantity {
55
60
  }
56
61
  add(quantityOrValue, unit) {
57
62
  const other = this.construct(quantityOrValue, unit);
58
- return this.construct(this.valueOf() + other.valueOf(), this.baseUnit).to(this.unit);
63
+ return this.construct(this.valueOf() + other.valueOf(), this.getBaseUnit()).to(this.unit);
59
64
  }
60
65
  subtract(quantityOrValue, unit) {
61
66
  const other = this.construct(quantityOrValue, unit);
62
- return this.construct(this.valueOf() - other.valueOf(), this.baseUnit).to(this.unit);
67
+ return this.construct(this.valueOf() - other.valueOf(), this.getBaseUnit()).to(this.unit);
63
68
  }
64
- /** Creates a new quantity by multiplying the current quantity with the specified factor */
65
- multiply(factor) {
66
- return this.construct(this.valueOf() * factor, this.baseUnit).to(this.unit);
69
+ multiply(factorOrRate) {
70
+ const factor = factorOrRate instanceof Rate ? factorOrRate.asDecimal() : factorOrRate;
71
+ return this.construct(this.valueOf() * factor, this.getBaseUnit()).to(this.unit);
67
72
  }
68
73
  divide(divisor, unit) {
69
- if (divisor instanceof Quantity || unit !== undefined) {
74
+ if (divisor instanceof Quantity || (typeof divisor === 'number' && unit !== undefined)) {
70
75
  const other = this.construct(divisor, unit);
71
76
  return this.valueOf() / other.valueOf();
72
77
  }
73
78
  else {
74
- return this.construct(this.valueOf() / divisor, this.baseUnit).to(this.unit);
79
+ const factor = divisor instanceof Rate ? divisor.asDecimal() : divisor;
80
+ return this.construct(this.valueOf() / factor, this.getBaseUnit()).to(this.unit);
75
81
  }
76
82
  }
77
83
  modulo(quantityOrValue, unit) {
78
84
  const other = this.construct(quantityOrValue, unit);
79
- return this.construct(this.valueOf() % other.valueOf(), this.baseUnit).to(this.unit);
85
+ return this.construct(this.valueOf() % other.valueOf(), this.getBaseUnit()).to(this.unit);
80
86
  }
81
87
  /** Ceils the value to the nearest integer for the current unit */
82
88
  ceil() {
@@ -112,6 +118,10 @@ export class Quantity {
112
118
  unit: this.unit
113
119
  };
114
120
  }
121
+ format(locale = 'en-US', options) {
122
+ const formatter = new Intl.NumberFormat(locale, options);
123
+ return `${formatter.format(this.value)} ${this.unit}`;
124
+ }
115
125
  /** Returns the maximum quantity from the provided quantities */
116
126
  static max(...quantities) {
117
127
  return quantities.reduce((max, quantity) => quantity.valueOf() > max.valueOf() ? quantity : max);
@@ -1 +1 @@
1
- {"version":3,"file":"quantity.js","sourceRoot":"","sources":["../lib/quantity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"quantity.js","sourceRoot":"","sources":["../lib/quantity.ts"],"names":[],"mappings":"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"}
package/dist/rate.d.ts ADDED
@@ -0,0 +1,11 @@
1
+ export declare class Rate {
2
+ private value;
3
+ private constructor();
4
+ static fromDecimal(decimal: number): Rate;
5
+ static fromPercent(percent: number): Rate;
6
+ static fromPermille(permille: number): Rate;
7
+ asDecimal(): number;
8
+ asPercent(): number;
9
+ asPermille(): number;
10
+ toString(): string;
11
+ }
package/dist/rate.js ADDED
@@ -0,0 +1,28 @@
1
+ export class Rate {
2
+ value;
3
+ constructor(value) {
4
+ this.value = value;
5
+ }
6
+ static fromDecimal(decimal) {
7
+ return new Rate(decimal);
8
+ }
9
+ static fromPercent(percent) {
10
+ return new Rate(percent / 100);
11
+ }
12
+ static fromPermille(permille) {
13
+ return new Rate(permille / 1000);
14
+ }
15
+ asDecimal() {
16
+ return this.value;
17
+ }
18
+ asPercent() {
19
+ return this.value * 100;
20
+ }
21
+ asPermille() {
22
+ return this.value * 1000;
23
+ }
24
+ toString() {
25
+ return `${this.asPercent()}%`;
26
+ }
27
+ }
28
+ //# sourceMappingURL=rate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rate.js","sourceRoot":"","sources":["../lib/rate.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,IAAI;IACc;IAA7B,YAA6B,KAAa;QAAb,UAAK,GAAL,KAAK,CAAQ;IAAG,CAAC;IAE9C,MAAM,CAAC,WAAW,CAAE,OAAe;QACjC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,CAAA;IAC1B,CAAC;IAED,MAAM,CAAC,WAAW,CAAE,OAAe;QACjC,OAAO,IAAI,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,CAAA;IAChC,CAAC;IAED,MAAM,CAAC,YAAY,CAAE,QAAgB;QACnC,OAAO,IAAI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAA;IAClC,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,KAAK,CAAA;IACnB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,KAAK,GAAG,GAAG,CAAA;IACzB,CAAC;IAED,UAAU;QACR,OAAO,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA;IAC1B,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,CAAA;IAC/B,CAAC;CACF"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wisemen/quantity",
3
- "version": "0.6.1",
3
+ "version": "0.8.0",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -15,30 +15,32 @@
15
15
  "@nestjs/swagger": ">=11.2.6",
16
16
  "class-transformer": ">=0.5.1",
17
17
  "class-validator": ">=0.15.1",
18
- "typeorm": ">=0.3.28"
18
+ "typeorm": ">=1.0.0"
19
19
  },
20
20
  "devDependencies": {
21
- "eslint": "9.39.4",
21
+ "eslint": "10.2.1",
22
22
  "expect": "30.2.0",
23
23
  "typescript": ">=4.8.4 <=5.9.3",
24
- "@wisemen/eslint-config-nestjs": "0.2.13"
24
+ "@wisemen/eslint-config-nestjs": "1.1.1"
25
25
  },
26
26
  "author": "Maarten Sijmkens",
27
- "license": "GPL",
27
+ "license": "SEE LICENSE IN LICENSE.md",
28
28
  "repository": {
29
29
  "type": "git",
30
30
  "url": "https://github.com/wisemen-digital/wisemen-core",
31
31
  "directory": "packages/quantity"
32
32
  },
33
33
  "dependencies": {
34
- "@wisemen/nestjs-typeorm": "0.2.1"
34
+ "@wisemen/nestjs-typeorm": "1.0.0"
35
35
  },
36
36
  "scripts": {
37
37
  "clean": "rm -rf ./dist",
38
38
  "build": "tsc",
39
39
  "pretest": "pnpm run build",
40
40
  "test": "node --test './dist/**/*.test.js'",
41
- "lint": "eslint --cache",
41
+ "lint:oxlint": "oxlint --type-aware",
42
+ "lint:eslint": "eslint --cache",
43
+ "lint": "pnpm run lint:oxlint && pnpm run lint:eslint",
42
44
  "prerelease": "npm run build",
43
45
  "release": "pnpx release-it"
44
46
  }