@wisemen/quantity 0.10.0 → 0.11.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/quantities/current/current.column.d.ts +1 -1
- package/dist/quantities/current/current.column.js.map +1 -1
- package/dist/quantities/current/current.d.ts +4 -2
- package/dist/quantities/current/current.js +8 -2
- package/dist/quantities/current/current.js.map +1 -1
- package/dist/quantities/current/is-current.validator.d.ts +1 -2
- package/dist/quantities/current/is-current.validator.js.map +1 -1
- package/dist/quantities/distance/distance.column.d.ts +1 -1
- package/dist/quantities/distance/distance.column.js.map +1 -1
- package/dist/quantities/distance/distance.d.ts +4 -2
- package/dist/quantities/distance/distance.js +8 -2
- package/dist/quantities/distance/distance.js.map +1 -1
- package/dist/quantities/distance/is-distance.validator.d.ts +1 -2
- package/dist/quantities/distance/is-distance.validator.js.map +1 -1
- package/dist/quantities/duration/duration.column.d.ts +1 -1
- package/dist/quantities/duration/duration.column.js.map +1 -1
- package/dist/quantities/duration/duration.d.ts +4 -2
- package/dist/quantities/duration/duration.js +8 -2
- package/dist/quantities/duration/duration.js.map +1 -1
- package/dist/quantities/duration/is-duration.validator.d.ts +1 -2
- package/dist/quantities/duration/is-duration.validator.js.map +1 -1
- package/dist/quantities/energy/energy.column.d.ts +1 -1
- package/dist/quantities/energy/energy.column.js.map +1 -1
- package/dist/quantities/energy/energy.d.ts +4 -2
- package/dist/quantities/energy/energy.js +8 -2
- package/dist/quantities/energy/energy.js.map +1 -1
- package/dist/quantities/energy/is-energy.validator.d.ts +1 -2
- package/dist/quantities/energy/is-energy.validator.js.map +1 -1
- package/dist/quantities/mass/is-mass.validator.d.ts +1 -2
- package/dist/quantities/mass/is-mass.validator.js.map +1 -1
- package/dist/quantities/mass/mass.column.d.ts +1 -1
- package/dist/quantities/mass/mass.column.js.map +1 -1
- package/dist/quantities/mass/mass.d.ts +4 -2
- package/dist/quantities/mass/mass.js +8 -2
- package/dist/quantities/mass/mass.js.map +1 -1
- package/dist/quantities/power/is-power.validator.d.ts +1 -2
- package/dist/quantities/power/is-power.validator.js.map +1 -1
- package/dist/quantities/power/power.column.d.ts +1 -1
- package/dist/quantities/power/power.column.js.map +1 -1
- package/dist/quantities/power/power.d.ts +4 -2
- package/dist/quantities/power/power.js +8 -2
- package/dist/quantities/power/power.js.map +1 -1
- package/dist/quantities/speed/is-speed.validator.d.ts +1 -2
- package/dist/quantities/speed/is-speed.validator.js.map +1 -1
- package/dist/quantities/speed/speed.column.d.ts +1 -1
- package/dist/quantities/speed/speed.column.js.map +1 -1
- package/dist/quantities/speed/speed.d.ts +4 -2
- package/dist/quantities/speed/speed.js +8 -2
- package/dist/quantities/speed/speed.js.map +1 -1
- package/dist/quantities/temperature/is-temperature.validator.d.ts +1 -2
- package/dist/quantities/temperature/is-temperature.validator.js.map +1 -1
- package/dist/quantities/temperature/temperature.d.ts +13 -2
- package/dist/quantities/temperature/temperature.js +45 -2
- package/dist/quantities/temperature/temperature.js.map +1 -1
- package/dist/quantities/temperature/tests/temperature.unit.test.js +18 -1
- package/dist/quantities/temperature/tests/temperature.unit.test.js.map +1 -1
- package/dist/quantities/voltage/is-voltage.validator.d.ts +1 -2
- package/dist/quantities/voltage/is-voltage.validator.js.map +1 -1
- package/dist/quantities/voltage/voltage.column.d.ts +1 -1
- package/dist/quantities/voltage/voltage.column.js.map +1 -1
- package/dist/quantities/voltage/voltage.d.ts +4 -2
- package/dist/quantities/voltage/voltage.js +8 -2
- package/dist/quantities/voltage/voltage.js.map +1 -1
- package/dist/quantity.column.d.ts +3 -3
- package/dist/quantity.column.js.map +1 -1
- package/dist/quantity.d.ts +36 -15
- package/dist/quantity.dto.d.ts +1 -1
- package/dist/quantity.js +60 -36
- package/dist/quantity.js.map +1 -1
- package/dist/validators/is-quantity.decorator.d.ts +3 -3
- package/dist/validators/is-quantity.decorator.js.map +1 -1
- package/dist/validators/max-quantity.validator.d.ts +2 -2
- package/dist/validators/min-quantity.validator.d.ts +2 -2
- package/package.json +3 -3
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { CurrentUnit } from './current-unit.enum.js';
|
|
3
3
|
import { Current } from './current.js';
|
|
4
|
-
export declare function CurrentColumn(storeAsUnit: CurrentUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function CurrentColumn(storeAsUnit: CurrentUnit, options?: QuantityColumnOptions<Current>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current.column.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,UAAU,aAAa,CAC3B,WAAwB,EACxB,
|
|
1
|
+
{"version":3,"file":"current.column.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,UAAU,aAAa,CAC3B,WAAwB,EACxB,OAAwC;IAExC,OAAO,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { CurrentUnit } from './current-unit.enum.js';
|
|
3
3
|
export declare const CURRENT_MULTIPLIERS: Record<CurrentUnit, number>;
|
|
4
|
-
export declare class Current extends
|
|
4
|
+
export declare class Current extends ScalableQuantity<CurrentUnit, Current, Current> {
|
|
5
|
+
protected getQuantity(): typeof Current;
|
|
6
|
+
protected getDelta(): typeof Current;
|
|
5
7
|
protected getBaseUnit(): CurrentUnit;
|
|
6
8
|
protected getUnits(): readonly CurrentUnit[];
|
|
7
9
|
protected convertValueToBaseUnit(value: number, unit: CurrentUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { CurrentUnit } from './current-unit.enum.js';
|
|
3
3
|
export const CURRENT_MULTIPLIERS = {
|
|
4
4
|
[CurrentUnit.AMPERE]: 1,
|
|
@@ -27,7 +27,13 @@ export const CURRENT_MULTIPLIERS = {
|
|
|
27
27
|
[CurrentUnit.RONNAAMPERE]: 1e27,
|
|
28
28
|
[CurrentUnit.QUETTAAMPERE]: 1e30
|
|
29
29
|
};
|
|
30
|
-
export class Current extends
|
|
30
|
+
export class Current extends ScalableQuantity {
|
|
31
|
+
getQuantity() {
|
|
32
|
+
return Current;
|
|
33
|
+
}
|
|
34
|
+
getDelta() {
|
|
35
|
+
return Current;
|
|
36
|
+
}
|
|
31
37
|
getBaseUnit() {
|
|
32
38
|
return CurrentUnit.AMPERE;
|
|
33
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"current.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"current.js","sourceRoot":"","sources":["../../../lib/quantities/current/current.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAA+C;IAChE,WAAW;QACnB,OAAO,OAAO,CAAA;IAChB,CAAC;IAES,QAAQ;QAChB,OAAO,OAAO,CAAA;IAChB,CAAC;IAES,WAAW;QACnB,OAAO,WAAW,CAAC,MAAM,CAAA;IAC3B,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACnC,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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { CurrentUnit } from './current-unit.enum.js';
|
|
3
2
|
import { Current } from './current.js';
|
|
4
|
-
export declare function IsCurrent(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsCurrent(options?: IsQuantityOptions<Current>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-current.validator.js","sourceRoot":"","sources":["../../../lib/quantities/current/is-current.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-current.validator.js","sourceRoot":"","sources":["../../../lib/quantities/current/is-current.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAG7C,MAAM,UAAU,SAAS,CACvB,OAAoC;IAEpC,OAAO,eAAe,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;AACzD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { DistanceUnit } from './distance-unit.enum.js';
|
|
3
3
|
import { Distance } from './distance.js';
|
|
4
|
-
export declare function DistanceColumn(storeAsUnit: DistanceUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function DistanceColumn(storeAsUnit: DistanceUnit, options?: QuantityColumnOptions<Distance>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distance.column.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,UAAU,cAAc,CAC5B,WAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"distance.column.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,UAAU,cAAc,CAC5B,WAAyB,EACzB,OAAyC;IAEzC,OAAO,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACvD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { DistanceUnit } from './distance-unit.enum.js';
|
|
3
|
-
export declare class Distance extends
|
|
3
|
+
export declare class Distance extends ScalableQuantity<DistanceUnit, Distance, Distance> {
|
|
4
|
+
protected getQuantity(): typeof Distance;
|
|
5
|
+
protected getDelta(): typeof Distance;
|
|
4
6
|
protected getBaseUnit(): DistanceUnit;
|
|
5
7
|
protected getUnits(): readonly DistanceUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, fromUnit: DistanceUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { DistanceUnit } from './distance-unit.enum.js';
|
|
3
3
|
const DISTANCE_MULTIPLIERS = {
|
|
4
4
|
[DistanceUnit.METER]: 1,
|
|
@@ -15,7 +15,13 @@ const DISTANCE_MULTIPLIERS = {
|
|
|
15
15
|
[DistanceUnit.YARD]: 0.9144,
|
|
16
16
|
[DistanceUnit.MILES]: 1609.34
|
|
17
17
|
};
|
|
18
|
-
export class Distance extends
|
|
18
|
+
export class Distance extends ScalableQuantity {
|
|
19
|
+
getQuantity() {
|
|
20
|
+
return Distance;
|
|
21
|
+
}
|
|
22
|
+
getDelta() {
|
|
23
|
+
return Distance;
|
|
24
|
+
}
|
|
19
25
|
getBaseUnit() {
|
|
20
26
|
return DistanceUnit.METER;
|
|
21
27
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAAkD;IACpE,WAAW;QACnB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAES,QAAQ;QAChB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAES,WAAW;QACnB,OAAO,YAAY,CAAC,KAAK,CAAA;IAC3B,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACpC,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,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { DistanceUnit } from './distance-unit.enum.js';
|
|
3
2
|
import { Distance } from './distance.js';
|
|
4
|
-
export declare function IsDistance(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsDistance(options?: IsQuantityOptions<Distance>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-distance.validator.js","sourceRoot":"","sources":["../../../lib/quantities/distance/is-distance.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-distance.validator.js","sourceRoot":"","sources":["../../../lib/quantities/distance/is-distance.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG/C,MAAM,UAAU,UAAU,CACxB,OAAqC;IAErC,OAAO,eAAe,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;AAC1D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { Duration } from './duration.js';
|
|
3
3
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
4
|
-
export declare function DurationColumn(storeAsUnit: DurationUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function DurationColumn(storeAsUnit: DurationUnit, options?: QuantityColumnOptions<Duration>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.column.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,MAAM,UAAU,cAAc,CAC5B,WAAyB,EACzB,
|
|
1
|
+
{"version":3,"file":"duration.column.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,MAAM,UAAU,cAAc,CAC5B,WAAyB,EACzB,OAAyC;IAEzC,OAAO,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACvD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
3
|
-
export declare class Duration extends
|
|
3
|
+
export declare class Duration extends ScalableQuantity<DurationUnit, Duration, Duration> {
|
|
4
|
+
protected getQuantity(): typeof Duration;
|
|
5
|
+
protected getDelta(): typeof Duration;
|
|
4
6
|
protected getBaseUnit(): DurationUnit;
|
|
5
7
|
protected getUnits(): readonly DurationUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, unit: DurationUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
3
3
|
const DISTANCE_MULTIPLIERS = {
|
|
4
4
|
[DurationUnit.SECONDS]: 1,
|
|
@@ -9,7 +9,13 @@ const DISTANCE_MULTIPLIERS = {
|
|
|
9
9
|
[DurationUnit.HOURS]: 3600,
|
|
10
10
|
[DurationUnit.DAYS]: 3600 * 24
|
|
11
11
|
};
|
|
12
|
-
export class Duration extends
|
|
12
|
+
export class Duration extends ScalableQuantity {
|
|
13
|
+
getQuantity() {
|
|
14
|
+
return Duration;
|
|
15
|
+
}
|
|
16
|
+
getDelta() {
|
|
17
|
+
return Duration;
|
|
18
|
+
}
|
|
13
19
|
getBaseUnit() {
|
|
14
20
|
return DurationUnit.SECONDS;
|
|
15
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAAkD;IACpE,WAAW;QACnB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAES,QAAQ;QAChB,OAAO,QAAQ,CAAA;IACjB,CAAC;IAES,WAAW;QACnB,OAAO,YAAY,CAAC,OAAO,CAAA;IAC7B,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;IACpC,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,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { DurationUnit } from './duration-unit.enum.js';
|
|
3
2
|
import { Duration } from './duration.js';
|
|
4
|
-
export declare function IsDuration(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsDuration(options?: IsQuantityOptions<Duration>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-duration.validator.js","sourceRoot":"","sources":["../../../lib/quantities/duration/is-duration.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-duration.validator.js","sourceRoot":"","sources":["../../../lib/quantities/duration/is-duration.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG/C,MAAM,UAAU,UAAU,CACxB,OAAqC;IAErC,OAAO,eAAe,CAAC,UAAU,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,CAAA;AAC1D,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { Energy } from './energy.js';
|
|
3
3
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
4
|
-
export declare function EnergyColumn(storeAsUnit: EnergyUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function EnergyColumn(storeAsUnit: EnergyUnit, options?: QuantityColumnOptions<Energy>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energy.column.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGpC,MAAM,UAAU,YAAY,CAC1B,WAAuB,EACvB,
|
|
1
|
+
{"version":3,"file":"energy.column.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAChF,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAGpC,MAAM,UAAU,YAAY,CAC1B,WAAuB,EACvB,OAAuC;IAEvC,OAAO,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACrD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
3
|
-
export declare class Energy extends
|
|
3
|
+
export declare class Energy extends ScalableQuantity<EnergyUnit, Energy, Energy> {
|
|
4
|
+
protected getQuantity(): typeof Energy;
|
|
5
|
+
protected getDelta(): typeof Energy;
|
|
4
6
|
protected getBaseUnit(): EnergyUnit;
|
|
5
7
|
protected getUnits(): readonly EnergyUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, unit: EnergyUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
3
3
|
const ENERGY_MULTIPLIERS = {
|
|
4
4
|
[EnergyUnit.JOULE]: 1,
|
|
@@ -41,7 +41,13 @@ const ENERGY_MULTIPLIERS = {
|
|
|
41
41
|
[EnergyUnit.CALORIE]: 4.184,
|
|
42
42
|
[EnergyUnit.KILOCALORIE]: 4184
|
|
43
43
|
};
|
|
44
|
-
export class Energy extends
|
|
44
|
+
export class Energy extends ScalableQuantity {
|
|
45
|
+
getQuantity() {
|
|
46
|
+
return Energy;
|
|
47
|
+
}
|
|
48
|
+
getDelta() {
|
|
49
|
+
return Energy;
|
|
50
|
+
}
|
|
45
51
|
getBaseUnit() {
|
|
46
52
|
return EnergyUnit.JOULE;
|
|
47
53
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { EnergyUnit } from './energy-unit.enum.js';
|
|
3
2
|
import { Energy } from './energy.js';
|
|
4
|
-
export declare function IsEnergy(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsEnergy(options?: IsQuantityOptions<Energy>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-energy.validator.js","sourceRoot":"","sources":["../../../lib/quantities/energy/is-energy.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-energy.validator.js","sourceRoot":"","sources":["../../../lib/quantities/energy/is-energy.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAG3C,MAAM,UAAU,QAAQ,CACtB,OAAmC;IAEnC,OAAO,eAAe,CAAC,UAAU,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAA;AACxD,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { MassUnit } from './mass-unit.enum.js';
|
|
3
2
|
import { Mass } from './mass.js';
|
|
4
|
-
export declare function IsMass(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsMass(options?: IsQuantityOptions<Mass>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-mass.validator.js","sourceRoot":"","sources":["../../../lib/quantities/mass/is-mass.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"is-mass.validator.js","sourceRoot":"","sources":["../../../lib/quantities/mass/is-mass.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAGvC,MAAM,UAAU,MAAM,CACpB,OAAiC;IAEjC,OAAO,eAAe,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { MassUnit } from './mass-unit.enum.js';
|
|
3
3
|
import { Mass } from './mass.js';
|
|
4
|
-
export declare function MassColumn(storeAsUnit: MassUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function MassColumn(storeAsUnit: MassUnit, options?: QuantityColumnOptions<Mass>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mass.column.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,UAAU,UAAU,CACxB,WAAqB,EACrB,
|
|
1
|
+
{"version":3,"file":"mass.column.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAEhC,MAAM,UAAU,UAAU,CACxB,WAAqB,EACrB,OAAqC;IAErC,OAAO,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACnD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { MassUnit } from './mass-unit.enum.js';
|
|
3
|
-
export declare class Mass extends
|
|
3
|
+
export declare class Mass extends ScalableQuantity<MassUnit, Mass, Mass> {
|
|
4
|
+
protected getQuantity(): typeof Mass;
|
|
5
|
+
protected getDelta(): typeof Mass;
|
|
4
6
|
protected getBaseUnit(): MassUnit;
|
|
5
7
|
protected getUnits(): readonly MassUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, fromUnit: MassUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { MassUnit } from './mass-unit.enum.js';
|
|
3
3
|
const MASS_MULTIPLIERS = {
|
|
4
4
|
[MassUnit.KILOGRAM]: 1,
|
|
@@ -14,7 +14,13 @@ const MASS_MULTIPLIERS = {
|
|
|
14
14
|
[MassUnit.POUND]: 0.45359237,
|
|
15
15
|
[MassUnit.OUNCE]: 0.028349523125
|
|
16
16
|
};
|
|
17
|
-
export class Mass extends
|
|
17
|
+
export class Mass extends ScalableQuantity {
|
|
18
|
+
getQuantity() {
|
|
19
|
+
return Mass;
|
|
20
|
+
}
|
|
21
|
+
getDelta() {
|
|
22
|
+
return Mass;
|
|
23
|
+
}
|
|
18
24
|
getBaseUnit() {
|
|
19
25
|
return MassUnit.KILOGRAM;
|
|
20
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAAsC;IACpD,WAAW;QACnB,OAAO,IAAI,CAAA;IACb,CAAC;IAES,QAAQ;QAChB,OAAO,IAAI,CAAA;IACb,CAAC;IAES,WAAW;QACnB,OAAO,QAAQ,CAAC,QAAQ,CAAA;IAC1B,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;IAChC,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,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { PowerUnit } from './power-unit.enum.js';
|
|
3
2
|
import { Power } from './power.js';
|
|
4
|
-
export declare function IsPower(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsPower(options?: IsQuantityOptions<Power>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-power.validator.js","sourceRoot":"","sources":["../../../lib/quantities/power/is-power.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-power.validator.js","sourceRoot":"","sources":["../../../lib/quantities/power/is-power.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,MAAM,UAAU,OAAO,CACrB,OAAkC;IAElC,OAAO,eAAe,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AACvD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { PowerUnit } from './power-unit.enum.js';
|
|
3
3
|
import { Power } from './power.js';
|
|
4
|
-
export declare function PowerColumn(storeAsUnit: PowerUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function PowerColumn(storeAsUnit: PowerUnit, options?: QuantityColumnOptions<Power>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"power.column.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,UAAU,WAAW,CACzB,WAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"power.column.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,UAAU,WAAW,CACzB,WAAsB,EACtB,OAAsC;IAEtC,OAAO,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACpD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { PowerUnit } from './power-unit.enum.js';
|
|
3
|
-
export declare class Power extends
|
|
3
|
+
export declare class Power extends ScalableQuantity<PowerUnit, Power, Power> {
|
|
4
|
+
protected getQuantity(): typeof Power;
|
|
5
|
+
protected getDelta(): typeof Power;
|
|
4
6
|
protected getBaseUnit(): PowerUnit;
|
|
5
7
|
protected getUnits(): readonly PowerUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, unit: PowerUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { PowerUnit } from './power-unit.enum.js';
|
|
3
3
|
const POWER_MULTIPLIERS = {
|
|
4
4
|
[PowerUnit.WATT]: 1,
|
|
@@ -27,7 +27,13 @@ const POWER_MULTIPLIERS = {
|
|
|
27
27
|
[PowerUnit.RONNAWATT]: 1e27,
|
|
28
28
|
[PowerUnit.QUETTAWATT]: 1e30
|
|
29
29
|
};
|
|
30
|
-
export class Power extends
|
|
30
|
+
export class Power extends ScalableQuantity {
|
|
31
|
+
getQuantity() {
|
|
32
|
+
return Power;
|
|
33
|
+
}
|
|
34
|
+
getDelta() {
|
|
35
|
+
return Power;
|
|
36
|
+
}
|
|
31
37
|
getBaseUnit() {
|
|
32
38
|
return PowerUnit.WATT;
|
|
33
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"power.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"power.js","sourceRoot":"","sources":["../../../lib/quantities/power/power.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAAyC;IACxD,WAAW;QACnB,OAAO,KAAK,CAAA;IACd,CAAC;IAES,QAAQ;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAES,WAAW;QACnB,OAAO,SAAS,CAAC,IAAI,CAAA;IACvB,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACjC,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,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { SpeedUnit } from './speed-unit.enum.js';
|
|
3
2
|
import { Speed } from './speed.js';
|
|
4
|
-
export declare function IsSpeed(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsSpeed(options?: IsQuantityOptions<Speed>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-speed.validator.js","sourceRoot":"","sources":["../../../lib/quantities/speed/is-speed.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-speed.validator.js","sourceRoot":"","sources":["../../../lib/quantities/speed/is-speed.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAGzC,MAAM,UAAU,OAAO,CACrB,OAAkC;IAElC,OAAO,eAAe,CAAC,UAAU,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAA;AACvD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { SpeedUnit } from './speed-unit.enum.js';
|
|
3
3
|
import { Speed } from './speed.js';
|
|
4
|
-
export declare function SpeedColumn(storeAsUnit: SpeedUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function SpeedColumn(storeAsUnit: SpeedUnit, options?: QuantityColumnOptions<Speed>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speed.column.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,UAAU,WAAW,CACzB,WAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"speed.column.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAElC,MAAM,UAAU,WAAW,CACzB,WAAsB,EACtB,OAAsC;IAEtC,OAAO,cAAc,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACpD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { SpeedUnit } from './speed-unit.enum.js';
|
|
3
|
-
export declare class Speed extends
|
|
3
|
+
export declare class Speed extends ScalableQuantity<SpeedUnit, Speed, Speed> {
|
|
4
|
+
protected getQuantity(): typeof Speed;
|
|
5
|
+
protected getDelta(): typeof Speed;
|
|
4
6
|
protected getBaseUnit(): SpeedUnit;
|
|
5
7
|
protected getUnits(): readonly SpeedUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, fromUnit: SpeedUnit): number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { SpeedUnit } from './speed-unit.enum.js';
|
|
3
3
|
const SPEED_MULTIPLIERS = {
|
|
4
4
|
[SpeedUnit.METER_PER_SECOND]: 1,
|
|
@@ -12,7 +12,13 @@ const SPEED_MULTIPLIERS = {
|
|
|
12
12
|
[SpeedUnit.MILLIMETER_PER_SECOND]: 0.001,
|
|
13
13
|
[SpeedUnit.MICROMETER_PER_SECOND]: 1e-6
|
|
14
14
|
};
|
|
15
|
-
export class Speed extends
|
|
15
|
+
export class Speed extends ScalableQuantity {
|
|
16
|
+
getQuantity() {
|
|
17
|
+
return Speed;
|
|
18
|
+
}
|
|
19
|
+
getDelta() {
|
|
20
|
+
return Speed;
|
|
21
|
+
}
|
|
16
22
|
getBaseUnit() {
|
|
17
23
|
return SpeedUnit.METER_PER_SECOND;
|
|
18
24
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"speed.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"speed.js","sourceRoot":"","sources":["../../../lib/quantities/speed/speed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAAyC;IACxD,WAAW;QACnB,OAAO,KAAK,CAAA;IACd,CAAC;IAES,QAAQ;QAChB,OAAO,KAAK,CAAA;IACd,CAAC;IAES,WAAW;QACnB,OAAO,SAAS,CAAC,gBAAgB,CAAA;IACnC,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAA;IACjC,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,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { TemperatureUnit } from './temperature-unit.enum.js';
|
|
3
2
|
import { Temperature } from './temperature.js';
|
|
4
|
-
export declare function IsTemperature(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsTemperature(options?: IsQuantityOptions<Temperature>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-temperature.validator.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/is-temperature.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"is-temperature.validator.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/is-temperature.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AACzF,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAGrD,MAAM,UAAU,aAAa,CAC3B,OAAwC;IAExC,OAAO,eAAe,CAAC,UAAU,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAA;AAC7D,CAAC"}
|
|
@@ -1,6 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BaseQuantity, ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { TemperatureUnit } from './temperature-unit.enum.js';
|
|
3
|
-
export declare class
|
|
3
|
+
export declare class TemperatureDelta extends ScalableQuantity<TemperatureUnit, TemperatureDelta, TemperatureDelta> {
|
|
4
|
+
protected getQuantity(): typeof TemperatureDelta;
|
|
5
|
+
protected getDelta(): typeof TemperatureDelta;
|
|
6
|
+
protected getBaseUnit(): TemperatureUnit;
|
|
7
|
+
protected getUnits(): readonly TemperatureUnit[];
|
|
8
|
+
protected convertValueToBaseUnit(value: number, unit: TemperatureUnit): number;
|
|
9
|
+
protected convertBaseUnitValueTo(value: number, unit: TemperatureUnit): number;
|
|
10
|
+
static ZERO: TemperatureDelta;
|
|
11
|
+
}
|
|
12
|
+
export declare class Temperature extends BaseQuantity<TemperatureUnit, Temperature, TemperatureDelta> {
|
|
13
|
+
protected getQuantity(): typeof Temperature;
|
|
14
|
+
protected getDelta(): typeof TemperatureDelta;
|
|
4
15
|
protected getBaseUnit(): TemperatureUnit;
|
|
5
16
|
protected getUnits(): readonly TemperatureUnit[];
|
|
6
17
|
protected convertValueToBaseUnit(value: number, unit: TemperatureUnit): number;
|
|
@@ -1,6 +1,49 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { BaseQuantity, ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { TemperatureUnit } from './temperature-unit.enum.js';
|
|
3
|
-
export class
|
|
3
|
+
export class TemperatureDelta extends ScalableQuantity {
|
|
4
|
+
getQuantity() {
|
|
5
|
+
return TemperatureDelta;
|
|
6
|
+
}
|
|
7
|
+
getDelta() {
|
|
8
|
+
return TemperatureDelta;
|
|
9
|
+
}
|
|
10
|
+
getBaseUnit() {
|
|
11
|
+
return TemperatureUnit.KELVIN;
|
|
12
|
+
}
|
|
13
|
+
getUnits() {
|
|
14
|
+
return Object.values(TemperatureUnit);
|
|
15
|
+
}
|
|
16
|
+
convertValueToBaseUnit(value, unit) {
|
|
17
|
+
switch (unit) {
|
|
18
|
+
case TemperatureUnit.KELVIN:
|
|
19
|
+
case TemperatureUnit.CELSIUS:
|
|
20
|
+
return value;
|
|
21
|
+
case TemperatureUnit.FAHRENHEIT:
|
|
22
|
+
return value * 5 / 9;
|
|
23
|
+
case TemperatureUnit.MILLI_DEGREE_CELSIUS:
|
|
24
|
+
return value / 1000;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
convertBaseUnitValueTo(value, unit) {
|
|
28
|
+
switch (unit) {
|
|
29
|
+
case TemperatureUnit.KELVIN:
|
|
30
|
+
case TemperatureUnit.CELSIUS:
|
|
31
|
+
return value;
|
|
32
|
+
case TemperatureUnit.FAHRENHEIT:
|
|
33
|
+
return value * 9 / 5;
|
|
34
|
+
case TemperatureUnit.MILLI_DEGREE_CELSIUS:
|
|
35
|
+
return value * 1000;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
static ZERO = new TemperatureDelta(0, TemperatureUnit.KELVIN);
|
|
39
|
+
}
|
|
40
|
+
export class Temperature extends BaseQuantity {
|
|
41
|
+
getQuantity() {
|
|
42
|
+
return Temperature;
|
|
43
|
+
}
|
|
44
|
+
getDelta() {
|
|
45
|
+
return TemperatureDelta;
|
|
46
|
+
}
|
|
4
47
|
getBaseUnit() {
|
|
5
48
|
return TemperatureUnit.KELVIN;
|
|
6
49
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temperature.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/temperature.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"temperature.js","sourceRoot":"","sources":["../../../lib/quantities/temperature/temperature.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { describe, it } from 'node:test';
|
|
2
2
|
import { expect } from 'expect';
|
|
3
|
-
import { Temperature } from '../temperature.js';
|
|
3
|
+
import { Temperature, TemperatureDelta } from '../temperature.js';
|
|
4
4
|
import { TemperatureUnit } from '../temperature-unit.enum.js';
|
|
5
5
|
void describe('Temperature class', () => {
|
|
6
6
|
void describe('Temperature parsing', () => {
|
|
@@ -10,5 +10,22 @@ void describe('Temperature class', () => {
|
|
|
10
10
|
expect(temperature.unit).toBe(TemperatureUnit.CELSIUS);
|
|
11
11
|
});
|
|
12
12
|
});
|
|
13
|
+
void describe('Temperature calculations', () => {
|
|
14
|
+
void it('adds temperatures', () => {
|
|
15
|
+
const T1 = new Temperature(20, TemperatureUnit.CELSIUS);
|
|
16
|
+
const T2 = new TemperatureDelta(5, TemperatureUnit.KELVIN);
|
|
17
|
+
const r = T1.add(T2);
|
|
18
|
+
expect(r.isEqualTo(25, TemperatureUnit.CELSIUS)).toBe(true);
|
|
19
|
+
});
|
|
20
|
+
void it('subtracts temperatures', () => {
|
|
21
|
+
const T1 = new Temperature(20, TemperatureUnit.CELSIUS);
|
|
22
|
+
const T2 = new Temperature(5, TemperatureUnit.KELVIN);
|
|
23
|
+
const T3 = new TemperatureDelta(5, TemperatureUnit.KELVIN);
|
|
24
|
+
const r1 = T1.subtract(T2);
|
|
25
|
+
const r2 = T1.subtract(T3);
|
|
26
|
+
expect(r1.isEqualTo(288.15, TemperatureUnit.CELSIUS)).toBe(true);
|
|
27
|
+
expect(r2.isEqualTo(15, TemperatureUnit.CELSIUS)).toBe(true);
|
|
28
|
+
});
|
|
29
|
+
});
|
|
13
30
|
});
|
|
14
31
|
//# sourceMappingURL=temperature.unit.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"temperature.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/temperature/tests/temperature.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,WAAW,EAAE,MAAM,mBAAmB,CAAA;
|
|
1
|
+
{"version":3,"file":"temperature.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/temperature/tests/temperature.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,WAAW,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACjE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAE7D,KAAK,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;IACtC,KAAK,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACxC,KAAK,EAAE,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACzC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,MAAM,CAAC,CAAA;YAE3C,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAA;YACnC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QACxD,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,KAAK,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAC7C,KAAK,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE;YAChC,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;YACvD,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;YAC1D,MAAM,CAAC,GAAgB,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAEjC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC7D,CAAC,CAAC,CAAA;QAEF,KAAK,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;YACrC,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAA;YACvD,MAAM,EAAE,GAAG,IAAI,WAAW,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;YACrD,MAAM,EAAE,GAAG,IAAI,gBAAgB,CAAC,CAAC,EAAE,eAAe,CAAC,MAAM,CAAC,CAAA;YAC1D,MAAM,EAAE,GAAqB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAC5C,MAAM,EAAE,GAAgB,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAEvC,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;YAChE,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC9D,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
1
|
import { IsQuantityOptions } from '../../validators/is-quantity.decorator.js';
|
|
2
|
-
import { VoltageUnit } from './voltage-unit.enum.js';
|
|
3
2
|
import { Voltage } from './voltage.js';
|
|
4
|
-
export declare function IsVoltage(options?: IsQuantityOptions<
|
|
3
|
+
export declare function IsVoltage(options?: IsQuantityOptions<Voltage>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-voltage.validator.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/is-voltage.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;
|
|
1
|
+
{"version":3,"file":"is-voltage.validator.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/is-voltage.validator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,UAAU,EAAqB,MAAM,2CAA2C,CAAA;AAEzF,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAE7C,MAAM,UAAU,SAAS,CACvB,OAAoC;IAEpC,OAAO,eAAe,CAAC,UAAU,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC,CAAA;AACzD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import { QuantityColumnOptions } from '../../quantity.column.js';
|
|
2
2
|
import { VoltageUnit } from './voltage-unit.enum.js';
|
|
3
3
|
import { Voltage } from './voltage.js';
|
|
4
|
-
export declare function VoltageColumn(storeAsUnit: VoltageUnit, options?: QuantityColumnOptions<
|
|
4
|
+
export declare function VoltageColumn(storeAsUnit: VoltageUnit, options?: QuantityColumnOptions<Voltage>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voltage.column.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,UAAU,aAAa,CAC3B,WAAwB,EACxB,
|
|
1
|
+
{"version":3,"file":"voltage.column.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyB,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAEhF,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;AAEtC,MAAM,UAAU,aAAa,CAC3B,WAAwB,EACxB,OAAwC;IAExC,OAAO,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,OAAO,CAAC,CAAA;AACtD,CAAC"}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { VoltageUnit } from './voltage-unit.enum.js';
|
|
3
|
-
export declare class Voltage extends
|
|
3
|
+
export declare class Voltage extends ScalableQuantity<VoltageUnit, Voltage, Voltage> {
|
|
4
|
+
protected getQuantity(): typeof Voltage;
|
|
5
|
+
protected getDelta(): typeof Voltage;
|
|
4
6
|
protected getBaseUnit(): VoltageUnit;
|
|
5
7
|
protected getUnits(): readonly VoltageUnit[];
|
|
6
8
|
protected convertValueToBaseUnit(value: number, fromUnit: VoltageUnit): number;
|
|
@@ -1,11 +1,17 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ScalableQuantity } from '../../quantity.js';
|
|
2
2
|
import { VoltageUnit } from './voltage-unit.enum.js';
|
|
3
3
|
const VOLTAGE_MULTIPLIERS = {
|
|
4
4
|
[VoltageUnit.VOLT]: 1,
|
|
5
5
|
[VoltageUnit.MILLIVOLT]: 1e-3,
|
|
6
6
|
[VoltageUnit.KILOVOLT]: 1e3
|
|
7
7
|
};
|
|
8
|
-
export class Voltage extends
|
|
8
|
+
export class Voltage extends ScalableQuantity {
|
|
9
|
+
getQuantity() {
|
|
10
|
+
return Voltage;
|
|
11
|
+
}
|
|
12
|
+
getDelta() {
|
|
13
|
+
return Voltage;
|
|
14
|
+
}
|
|
9
15
|
getBaseUnit() {
|
|
10
16
|
return VoltageUnit.VOLT;
|
|
11
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"voltage.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"voltage.js","sourceRoot":"","sources":["../../../lib/quantities/voltage/voltage.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAA;AACpD,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,gBAA+C;IAChE,WAAW;QACnB,OAAO,OAAO,CAAA;IAChB,CAAC;IAES,QAAQ;QAChB,OAAO,OAAO,CAAA;IAChB,CAAC;IAES,WAAW;QACnB,OAAO,WAAW,CAAC,IAAI,CAAA;IACzB,CAAC;IAES,QAAQ;QAChB,OAAO,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAA;IACnC,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,10 +1,10 @@
|
|
|
1
1
|
import { ColumnOptions, ValueTransformer } from 'typeorm';
|
|
2
2
|
import { Quantity, QuantityConstructor } from './quantity.js';
|
|
3
|
-
export type QuantityColumnOptions<
|
|
3
|
+
export type QuantityColumnOptions<Q extends Quantity> = Omit<ColumnOptions, 'type' | 'transformer' | 'default'> & {
|
|
4
4
|
default?: Q;
|
|
5
5
|
};
|
|
6
|
-
export declare function QuantityColumn<U extends string, Q extends Quantity<U
|
|
7
|
-
export declare class QuantityTypeOrmTransformer<U extends string, Q extends Quantity<U
|
|
6
|
+
export declare function QuantityColumn<U extends string, Q extends Quantity<U>>(QuantityConstructor: QuantityConstructor<U, Q>, storeAsUnit: U, options?: QuantityColumnOptions<Q>): PropertyDecorator;
|
|
7
|
+
export declare class QuantityTypeOrmTransformer<U extends string, Q extends Quantity<U>> implements ValueTransformer {
|
|
8
8
|
private readonly QuantityConstructor;
|
|
9
9
|
private readonly storedUnit;
|
|
10
10
|
constructor(QuantityConstructor: QuantityConstructor<U, Q>, storedUnit: U);
|
|
@@ -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;AAC5B,gEAAgE;AAChE,mBAA8C,EAC9C,WAAc,EACd,
|
|
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,OAAkC;IAElC,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"}
|
package/dist/quantity.d.ts
CHANGED
|
@@ -1,11 +1,26 @@
|
|
|
1
1
|
import { Rate } from './rate/rate.js';
|
|
2
|
-
export
|
|
2
|
+
export interface Comparable {
|
|
3
|
+
valueOf(): number;
|
|
4
|
+
isEqualTo(other: Comparable): boolean;
|
|
5
|
+
isLessThan(other: Comparable): boolean;
|
|
6
|
+
isLessThanOrEqualTo(other: Comparable): boolean;
|
|
7
|
+
isMoreThan(other: Comparable): boolean;
|
|
8
|
+
isMoreThanOrEqualTo(other: Comparable): boolean;
|
|
9
|
+
}
|
|
10
|
+
export interface Quantity<U extends string = string> {
|
|
11
|
+
value: number;
|
|
12
|
+
unit: U;
|
|
13
|
+
asNumber(unit?: U): number;
|
|
14
|
+
}
|
|
15
|
+
export type QuantityConstructor<U extends string, Q extends Quantity<U>> = {
|
|
3
16
|
new (quantity: Q): Q;
|
|
4
17
|
new (value: number, unit: U): Q;
|
|
5
18
|
new (value: 0): Q;
|
|
6
19
|
new (s: string): Q;
|
|
7
20
|
};
|
|
8
|
-
export declare abstract class
|
|
21
|
+
export declare abstract class BaseQuantity<U extends string, Q extends BaseQuantity<U, Q, D>, D extends BaseQuantity<U, D, D>> implements Quantity<U>, Comparable {
|
|
22
|
+
protected abstract getQuantity(): QuantityConstructor<U, Q>;
|
|
23
|
+
protected abstract getDelta(): QuantityConstructor<U, D>;
|
|
9
24
|
protected abstract getBaseUnit(): U;
|
|
10
25
|
protected abstract getUnits(): readonly U[];
|
|
11
26
|
protected abstract convertValueToBaseUnit(value: number, fromUnit: U): number;
|
|
@@ -16,7 +31,10 @@ export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q
|
|
|
16
31
|
constructor(value: number, unit: U);
|
|
17
32
|
constructor(value: 0);
|
|
18
33
|
constructor(s: string);
|
|
19
|
-
|
|
34
|
+
protected isQuantity(quantityOrValue: unknown): quantityOrValue is Q;
|
|
35
|
+
protected isDelta(quantityOrValue: unknown): quantityOrValue is D;
|
|
36
|
+
protected constructQuantity(quantityOrValue: Q | number, unit?: U): Q;
|
|
37
|
+
protected constructDelta(quantityOrValue: D | number, unit?: U): D;
|
|
20
38
|
/** Converts the quantity to the specified unit */
|
|
21
39
|
to(unit: U): Q;
|
|
22
40
|
/** Returns the numeric value of the quantity in the specified unit */
|
|
@@ -38,18 +56,11 @@ export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q
|
|
|
38
56
|
isMoreThanOrEqualTo(quantity: Q): boolean;
|
|
39
57
|
/** Creates a new quantity by adding the current quantity to another quantity */
|
|
40
58
|
add(value: number, unit: U): Q;
|
|
41
|
-
add(quantity:
|
|
59
|
+
add(quantity: D): Q;
|
|
42
60
|
/** Creates a new quantity by subtracting another quantity from the current quantity */
|
|
43
61
|
subtract(value: number, unit: U): Q;
|
|
44
|
-
subtract(quantity: Q):
|
|
45
|
-
|
|
46
|
-
multiply(factor: number): Q;
|
|
47
|
-
multiply(rate: Rate): Q;
|
|
48
|
-
/** Creates a new quantity by dividing the current quantity by the specified divisor */
|
|
49
|
-
divide(divisor: number): Q;
|
|
50
|
-
divide(rate: Rate): Q;
|
|
51
|
-
divide(value: number, unit: U): number;
|
|
52
|
-
divide(quantity: Q): number;
|
|
62
|
+
subtract(quantity: Q): D;
|
|
63
|
+
subtract(quantity: D): Q;
|
|
53
64
|
/** Creates a new quantity by calculating the modulus of
|
|
54
65
|
* the current quantity and another quantity */
|
|
55
66
|
modulo(value: number, unit: U): Q;
|
|
@@ -71,12 +82,22 @@ export declare abstract class Quantity<U extends string, Q extends Quantity<U, Q
|
|
|
71
82
|
toJSON(): object;
|
|
72
83
|
format(locale?: string, options?: Intl.NumberFormatOptions): string;
|
|
73
84
|
/** Returns the maximum quantity from the provided quantities */
|
|
74
|
-
static max<
|
|
85
|
+
static max<Q extends Comparable>(...quantities: Q[]): Q;
|
|
75
86
|
/** Returns the minimum quantity from the provided quantities */
|
|
76
|
-
static min<
|
|
87
|
+
static min<Q extends Comparable>(...quantities: Q[]): Q;
|
|
77
88
|
protected parseString(s: string, units: readonly U[]): {
|
|
78
89
|
value: number;
|
|
79
90
|
unit: U;
|
|
80
91
|
};
|
|
81
92
|
private static escapeRegex;
|
|
82
93
|
}
|
|
94
|
+
export declare abstract class ScalableQuantity<U extends string, Q extends BaseQuantity<U, Q, D>, D extends BaseQuantity<U, D, D>> extends BaseQuantity<U, Q, D> {
|
|
95
|
+
/** Creates a new quantity by multiplying the current quantity with the specified factor */
|
|
96
|
+
multiply(factor: number): Q;
|
|
97
|
+
multiply(rate: Rate): Q;
|
|
98
|
+
/** Creates a new quantity by dividing the current quantity by the specified divisor */
|
|
99
|
+
divide(divisor: number): Q;
|
|
100
|
+
divide(rate: Rate): Q;
|
|
101
|
+
divide(value: number, unit: U): number;
|
|
102
|
+
divide(quantity: Q): number;
|
|
103
|
+
}
|
package/dist/quantity.dto.d.ts
CHANGED
package/dist/quantity.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import assert from 'assert';
|
|
2
2
|
import { Rate } from './rate/rate.js';
|
|
3
|
-
export class
|
|
3
|
+
export class BaseQuantity {
|
|
4
4
|
value;
|
|
5
5
|
unit;
|
|
6
6
|
constructor(quantityOrValue, unit) {
|
|
7
|
-
if (quantityOrValue
|
|
7
|
+
if (this.isQuantity(quantityOrValue)) {
|
|
8
8
|
this.value = quantityOrValue.value;
|
|
9
9
|
this.unit = quantityOrValue.unit;
|
|
10
10
|
}
|
|
@@ -23,11 +23,26 @@ export class Quantity {
|
|
|
23
23
|
this.unit = unit;
|
|
24
24
|
}
|
|
25
25
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
26
|
+
isQuantity(quantityOrValue) {
|
|
27
|
+
return quantityOrValue instanceof this.getQuantity();
|
|
28
|
+
}
|
|
29
|
+
isDelta(quantityOrValue) {
|
|
30
|
+
return quantityOrValue instanceof this.getDelta();
|
|
31
|
+
}
|
|
32
|
+
constructQuantity(quantityOrValue, unit) {
|
|
33
|
+
const Constructor = this.getQuantity();
|
|
34
|
+
if (this.isQuantity(quantityOrValue)) {
|
|
35
|
+
return quantityOrValue;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
assert(unit !== undefined, 'Unit must be provided when constructing from a numeric value');
|
|
39
|
+
return new Constructor(quantityOrValue, unit);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
constructDelta(quantityOrValue, unit) {
|
|
43
|
+
const Constructor = this.getDelta();
|
|
44
|
+
if (this.isDelta(quantityOrValue)) {
|
|
45
|
+
return quantityOrValue;
|
|
31
46
|
}
|
|
32
47
|
else {
|
|
33
48
|
assert(unit !== undefined, 'Unit must be provided when constructing from a numeric value');
|
|
@@ -37,69 +52,62 @@ export class Quantity {
|
|
|
37
52
|
/** Converts the quantity to the specified unit */
|
|
38
53
|
to(unit) {
|
|
39
54
|
const value = this.convertBaseUnitValueTo(this.valueOf(), unit);
|
|
40
|
-
return this.
|
|
55
|
+
return this.constructQuantity(value, unit);
|
|
41
56
|
}
|
|
42
57
|
/** Returns the numeric value of the quantity in the specified unit */
|
|
43
58
|
asNumber(unit = this.unit) {
|
|
44
59
|
return this.to(unit).value;
|
|
45
60
|
}
|
|
46
61
|
isEqualTo(quantityOrValue, unit) {
|
|
47
|
-
const other = this.
|
|
62
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
48
63
|
return this.valueOf() === other.valueOf();
|
|
49
64
|
}
|
|
50
65
|
isLessThan(quantityOrValue, unit) {
|
|
51
|
-
const other = this.
|
|
66
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
52
67
|
return this.valueOf() < other.valueOf();
|
|
53
68
|
}
|
|
54
69
|
isLessThanOrEqualTo(quantityOrValue, unit) {
|
|
55
|
-
const other = this.
|
|
70
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
56
71
|
return this.valueOf() <= other.valueOf();
|
|
57
72
|
}
|
|
58
73
|
isMoreThan(quantityOrValue, unit) {
|
|
59
|
-
const other = this.
|
|
74
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
60
75
|
return this.valueOf() > other.valueOf();
|
|
61
76
|
}
|
|
62
77
|
isMoreThanOrEqualTo(quantityOrValue, unit) {
|
|
63
|
-
const other = this.
|
|
78
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
64
79
|
return this.valueOf() >= other.valueOf();
|
|
65
80
|
}
|
|
66
81
|
add(quantityOrValue, unit) {
|
|
67
|
-
const other = this.
|
|
68
|
-
return this.
|
|
82
|
+
const other = this.constructDelta(quantityOrValue, unit);
|
|
83
|
+
return this.constructQuantity(this.valueOf() + other.valueOf(), this.getBaseUnit()).to(this.unit);
|
|
69
84
|
}
|
|
70
85
|
subtract(quantityOrValue, unit) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
const factor = factorOrRate instanceof Rate ? factorOrRate.asDecimal() : factorOrRate;
|
|
76
|
-
return this.construct(this.valueOf() * factor, this.getBaseUnit()).to(this.unit);
|
|
77
|
-
}
|
|
78
|
-
divide(divisor, unit) {
|
|
79
|
-
if (divisor instanceof Quantity || (typeof divisor === 'number' && unit !== undefined)) {
|
|
80
|
-
const other = this.construct(divisor, unit);
|
|
81
|
-
return this.valueOf() / other.valueOf();
|
|
86
|
+
let other;
|
|
87
|
+
if (this.isDelta(quantityOrValue)) {
|
|
88
|
+
other = this.constructDelta(quantityOrValue, unit);
|
|
89
|
+
return this.constructQuantity(this.valueOf() - other.valueOf(), this.getBaseUnit()).to(this.unit);
|
|
82
90
|
}
|
|
83
91
|
else {
|
|
84
|
-
|
|
85
|
-
return this.
|
|
92
|
+
other = this.constructQuantity(quantityOrValue, unit);
|
|
93
|
+
return this.constructDelta(this.valueOf() - other.valueOf(), this.getBaseUnit()).to(this.unit);
|
|
86
94
|
}
|
|
87
95
|
}
|
|
88
96
|
modulo(quantityOrValue, unit) {
|
|
89
|
-
const other = this.
|
|
90
|
-
return this.
|
|
97
|
+
const other = this.constructQuantity(quantityOrValue, unit);
|
|
98
|
+
return this.constructQuantity(this.valueOf() % other.valueOf(), this.getBaseUnit()).to(this.unit);
|
|
91
99
|
}
|
|
92
100
|
/** Ceils the value to the nearest integer for the current unit */
|
|
93
101
|
ceil() {
|
|
94
|
-
return this.
|
|
102
|
+
return this.constructQuantity(Math.ceil(this.value), this.unit);
|
|
95
103
|
}
|
|
96
104
|
/** Rounds the value half up to the nearest integer for the current unit */
|
|
97
105
|
round() {
|
|
98
|
-
return this.
|
|
106
|
+
return this.constructQuantity(Math.round(this.value), this.unit);
|
|
99
107
|
}
|
|
100
108
|
/** Floors the value to the nearest integer for the current unit */
|
|
101
109
|
floor() {
|
|
102
|
-
return this.
|
|
110
|
+
return this.constructQuantity(Math.floor(this.value), this.unit);
|
|
103
111
|
}
|
|
104
112
|
/** Checks whether the value is an integer for the current unit */
|
|
105
113
|
isRounded() {
|
|
@@ -129,14 +137,14 @@ export class Quantity {
|
|
|
129
137
|
}
|
|
130
138
|
/** Returns the maximum quantity from the provided quantities */
|
|
131
139
|
static max(...quantities) {
|
|
132
|
-
return quantities.reduce((max, quantity) => quantity.
|
|
140
|
+
return quantities.reduce((max, quantity) => quantity.isMoreThan(max) ? quantity : max);
|
|
133
141
|
}
|
|
134
142
|
/** Returns the minimum quantity from the provided quantities */
|
|
135
143
|
static min(...quantities) {
|
|
136
|
-
return quantities.reduce((min, quantity) => quantity.
|
|
144
|
+
return quantities.reduce((min, quantity) => quantity.isLessThan(min) ? quantity : min);
|
|
137
145
|
}
|
|
138
146
|
parseString(s, units) {
|
|
139
|
-
const unitsPattern = units.map(unit =>
|
|
147
|
+
const unitsPattern = units.map(unit => BaseQuantity.escapeRegex(unit)).join('|');
|
|
140
148
|
const pattern = new RegExp(`^(?<amount>[+-]?(?:\\d+\\.?\\d*|\\.\\d+)(?:e[+-]?\\d+)?)(?<unit>${unitsPattern})$`, 'u');
|
|
141
149
|
const match = pattern.exec(s);
|
|
142
150
|
const amount = match?.groups?.amount;
|
|
@@ -150,4 +158,20 @@ export class Quantity {
|
|
|
150
158
|
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
151
159
|
}
|
|
152
160
|
}
|
|
161
|
+
export class ScalableQuantity extends BaseQuantity {
|
|
162
|
+
multiply(factorOrRate) {
|
|
163
|
+
const factor = factorOrRate instanceof Rate ? factorOrRate.asDecimal() : factorOrRate;
|
|
164
|
+
return this.constructQuantity(this.valueOf() * factor, this.getBaseUnit()).to(this.unit);
|
|
165
|
+
}
|
|
166
|
+
divide(divisor, unit) {
|
|
167
|
+
if (divisor instanceof BaseQuantity || (typeof divisor === 'number' && unit !== undefined)) {
|
|
168
|
+
const other = this.constructQuantity(divisor, unit);
|
|
169
|
+
return this.valueOf() / other.valueOf();
|
|
170
|
+
}
|
|
171
|
+
else {
|
|
172
|
+
const factor = divisor instanceof Rate ? divisor.asDecimal() : divisor;
|
|
173
|
+
return this.constructQuantity(this.valueOf() / factor, this.getBaseUnit()).to(this.unit);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}
|
|
153
177
|
//# sourceMappingURL=quantity.js.map
|
package/dist/quantity.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"quantity.js","sourceRoot":"","sources":["../lib/quantity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;
|
|
1
|
+
{"version":3,"file":"quantity.js","sourceRoot":"","sources":["../lib/quantity.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,QAAQ,CAAA;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAA;AAwBrC,MAAM,OAAgB,YAAY;IAYvB,KAAK,CAAQ;IACb,IAAI,CAAG;IAMhB,YAAa,eAAoC,EAAE,IAAQ;QACzD,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,KAAK,GAAG,eAAe,CAAC,KAAK,CAAA;YAClC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,IAAI,CAAA;QAClC,CAAC;aAAM,IAAI,eAAe,KAAK,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAA;YACd,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAChC,CAAC;aAAM,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAA;YACvE,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,KAAK,CAAA;YAC/B,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC,IAAI,CAAA;QAC/B,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,8DAA8D,CAAC,CAAA;YAC1F,IAAI,CAAC,KAAK,GAAG,eAAe,CAAA;YAC5B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAClB,CAAC;IACH,CAAC;IAES,UAAU,CAAC,eAAwB;QAC3C,OAAO,eAAe,YAAY,IAAI,CAAC,WAAW,EAAE,CAAA;IACtD,CAAC;IAES,OAAO,CAAC,eAAwB;QACxC,OAAO,eAAe,YAAY,IAAI,CAAC,QAAQ,EAAE,CAAA;IACnD,CAAC;IAES,iBAAiB,CAAE,eAA2B,EAAE,IAAQ;QAChE,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;QAEtC,IAAI,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;YACrC,OAAO,eAAe,CAAA;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,8DAA8D,CAAC,CAAA;YAE1F,OAAO,IAAI,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAES,cAAc,CAAE,eAA2B,EAAE,IAAQ;QAC7D,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAA;QAEnC,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;YAClC,OAAO,eAAe,CAAA;QACxB,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,KAAK,SAAS,EAAE,8DAA8D,CAAC,CAAA;YAE1F,OAAO,IAAI,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,EAAE,CAAE,IAAO;QACT,MAAM,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,CAAA;QAE/D,OAAO,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,sEAAsE;IACtE,QAAQ,CAAE,OAAU,IAAI,CAAC,IAAI;QAC3B,OAAO,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAA;IAC5B,CAAC;IAKD,SAAS,CAAE,eAA2B,EAAE,IAAQ;QAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,OAAO,EAAE,KAAK,KAAK,CAAC,OAAO,EAAE,CAAA;IAC3C,CAAC;IAKD,UAAU,CAAE,eAA2B,EAAE,IAAQ;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;IACzC,CAAC;IAKD,mBAAmB,CAAE,eAA2B,EAAE,IAAQ;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAA;IAC1C,CAAC;IAKD,UAAU,CAAE,eAA2B,EAAE,IAAQ;QAC/C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;IACzC,CAAC;IAKD,mBAAmB,CAAE,eAA2B,EAAE,IAAQ;QACxD,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,EAAE,CAAA;IAC1C,CAAC;IAKD,GAAG,CAAE,eAA2B,EAAE,IAAQ;QACxC,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAExD,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnG,CAAC;IAMD,QAAQ,CAAE,eAA+B,EAAE,IAAQ;QACjD,IAAI,KAAY,CAAA;QAEhB,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,EAAC,CAAC;YACjC,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;YAElD,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACnG,CAAC;aACI,CAAC;YACJ,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;YAErD,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAChG,CAAC;IACH,CAAC;IAMD,MAAM,CAAE,eAA2B,EAAE,IAAQ;QAC3C,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,eAAe,EAAE,IAAI,CAAC,CAAA;QAE3D,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACnG,CAAC;IAED,kEAAkE;IAClE,IAAI;QACF,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACjE,CAAC;IAED,2EAA2E;IAC3E,KAAK;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAClE,CAAC;IAED,mEAAmE;IACnE,KAAK;QACH,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAClE,CAAC;IAED,kEAAkE;IAClE,SAAS;QACP,OAAO,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;IACrC,CAAC;IAED,QAAQ;QACN,OAAO,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;IACpC,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC3D,CAAC;IAED,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAA;IACH,CAAC;IAED,MAAM;QACJ,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAA;IACH,CAAC;IAED,MAAM,CAAE,SAAiB,OAAO,EAAE,OAAkC;QAClE,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAExD,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAA;IACvD,CAAC;IAED,gEAAgE;IAChE,MAAM,CAAC,GAAG,CACR,GAAG,UAAe;QAElB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CACzC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAC1C,CAAA;IACH,CAAC;IAED,gEAAgE;IAChE,MAAM,CAAC,GAAG,CACR,GAAG,UAAe;QAElB,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,QAAQ,EAAE,EAAE,CACzC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,CAC1C,CAAA;IACH,CAAC;IAES,WAAW,CAAE,CAAS,EAAE,KAAmB;QACnD,MAAM,YAAY,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChF,MAAM,OAAO,GAAG,IAAI,MAAM,CAAC,mEAAmE,YAAY,IAAI,EAAE,GAAG,CAAC,CAAA;QACpH,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QAC7B,MAAM,MAAM,GAAG,KAAK,EAAE,MAAM,EAAE,MAAM,CAAA;QACpC,MAAM,IAAI,GAAG,KAAK,EAAE,MAAM,EAAE,IAAqB,CAAA;QAEjD,IAAI,MAAM,KAAK,SAAS,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,uBAAuB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;QAC1F,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAA;IACxC,CAAC;IAEO,MAAM,CAAC,WAAW,CAAE,KAAa;QACvC,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAA;IACrD,CAAC;CACF;AAED,MAAM,OAAgB,gBAIpB,SAAQ,YAAqB;IAI7B,QAAQ,CAAE,YAA2B;QACnC,MAAM,MAAM,GAAG,YAAY,YAAY,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,YAAY,CAAA;QACrF,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1F,CAAC;IAOD,MAAM,CAAE,OAA0B,EAAE,IAAQ;QAC1C,IAAI,OAAO,YAAY,YAAY,IAAI,CAAC,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,KAAK,SAAS,CAAC,EAAE,CAAC;YAC3F,MAAM,KAAK,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAA;YAEnD,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,OAAO,EAAE,CAAA;QACzC,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,OAAO,YAAY,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,OAAO,CAAA;YACtE,OAAO,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QAC1F,CAAC;IACH,CAAC;CACF"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ClassConstructor } from 'class-transformer';
|
|
2
2
|
import { ValidationOptions } from 'class-validator';
|
|
3
|
-
import { Quantity } from '../quantity.js';
|
|
3
|
+
import { Comparable, Quantity } from '../quantity.js';
|
|
4
4
|
import { QuantityDto } from '../quantity.dto.js';
|
|
5
|
-
export interface IsQuantityOptions<
|
|
5
|
+
export interface IsQuantityOptions<Q extends Quantity & Comparable> extends ValidationOptions {
|
|
6
6
|
min?: Q;
|
|
7
7
|
max?: Q;
|
|
8
8
|
}
|
|
9
|
-
export declare function IsQuantity<
|
|
9
|
+
export declare function IsQuantity<Q extends Quantity & Comparable>(quantityClass: ClassConstructor<QuantityDto<Q>>, options?: IsQuantityOptions<Q>): PropertyDecorator;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"is-quantity.decorator.js","sourceRoot":"","sources":["../../lib/validators/is-quantity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAqB,MAAM,iBAAiB,CAAA;AAGzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAQlE,MAAM,UAAU,UAAU,CACxB,aAA+C,EAC/C,
|
|
1
|
+
{"version":3,"file":"is-quantity.decorator.js","sourceRoot":"","sources":["../../lib/validators/is-quantity.decorator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAoB,IAAI,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAqB,MAAM,iBAAiB,CAAA;AAGzF,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AAQlE,MAAM,UAAU,UAAU,CACxB,aAA+C,EAC/C,OAA8B;IAE9B,MAAM,UAAU,GAAG;QACjB,IAAI,CAAC,GAAG,EAAE,CAAC,aAAa,CAAC;QACzB,cAAc,CAAC,OAAO,CAAC;QACvB,QAAQ,CAAC,OAAO,CAAC;KAClB,CAAA;IAED,IAAI,OAAO,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAEvD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1E,CAAC;IAED,IAAI,OAAO,EAAE,GAAG,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;QAEvD,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,sBAAsB,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1E,CAAC;IAED,OAAO,eAAe,CAAC,GAAG,UAAU,CAAC,CAAA;AACvC,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
|
|
2
|
-
import { Quantity } from '../quantity.js';
|
|
3
|
-
export declare class MaxQuantityValidator<
|
|
2
|
+
import { Comparable, Quantity } from '../quantity.js';
|
|
3
|
+
export declare class MaxQuantityValidator<Q extends Quantity & Comparable> implements ValidatorConstraintInterface {
|
|
4
4
|
private max;
|
|
5
5
|
constructor(max: Q);
|
|
6
6
|
validate(q: unknown, _args: ValidationArguments): boolean;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ValidatorConstraintInterface, ValidationArguments } from 'class-validator';
|
|
2
|
-
import { Quantity } from '../quantity.js';
|
|
3
|
-
export declare class MinQuantityValidator<
|
|
2
|
+
import { Comparable, Quantity } from '../quantity.js';
|
|
3
|
+
export declare class MinQuantityValidator<Q extends Quantity & Comparable> implements ValidatorConstraintInterface {
|
|
4
4
|
private min;
|
|
5
5
|
constructor(min: Q);
|
|
6
6
|
validate(q: unknown, _args: ValidationArguments): boolean;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wisemen/quantity",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.11.0",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
"@nestjs/swagger": "^11.4.6",
|
|
17
17
|
"class-transformer": "^0.5.1",
|
|
18
18
|
"class-validator": "^0.15.1",
|
|
19
|
-
"typeorm": "^1.
|
|
20
|
-
"@wisemen/nestjs-typeorm": "^1.2.
|
|
19
|
+
"typeorm": "^1.1.0",
|
|
20
|
+
"@wisemen/nestjs-typeorm": "^1.2.4"
|
|
21
21
|
},
|
|
22
22
|
"devDependencies": {
|
|
23
23
|
"eslint": "10.2.1",
|