@wisemen/quantity 0.11.1 → 0.12.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/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/quantities/area/area-unit.enum.d.ts +15 -0
- package/dist/quantities/area/area-unit.enum.js +24 -0
- package/dist/quantities/area/area-unit.enum.js.map +1 -0
- package/dist/quantities/area/area.column.d.ts +4 -0
- package/dist/quantities/area/area.column.js +6 -0
- package/dist/quantities/area/area.column.js.map +1 -0
- package/dist/quantities/area/area.d.ts +24 -0
- package/dist/quantities/area/area.dto.d.ts +22 -0
- package/dist/quantities/area/area.dto.js +63 -0
- package/dist/quantities/area/area.dto.js.map +1 -0
- package/dist/quantities/area/area.js +59 -0
- package/dist/quantities/area/area.js.map +1 -0
- package/dist/quantities/area/index.d.ts +5 -0
- package/dist/quantities/area/index.js +6 -0
- package/dist/quantities/area/index.js.map +1 -0
- package/dist/quantities/area/is-area.validator.d.ts +3 -0
- package/dist/quantities/area/is-area.validator.js +7 -0
- package/dist/quantities/area/is-area.validator.js.map +1 -0
- package/dist/quantities/area/tests/area.unit.test.d.ts +1 -0
- package/dist/quantities/area/tests/area.unit.test.js +37 -0
- package/dist/quantities/area/tests/area.unit.test.js.map +1 -0
- package/dist/quantities/current/current.column.d.ts +1 -1
- package/dist/quantities/current/current.column.js +1 -1
- package/dist/quantities/current/current.column.js.map +1 -1
- package/dist/quantities/current/current.d.ts +1 -1
- package/dist/quantities/current/current.dto.d.ts +1 -1
- package/dist/quantities/current/current.dto.js +1 -1
- package/dist/quantities/current/current.dto.js.map +1 -1
- package/dist/quantities/current/current.js +1 -1
- package/dist/quantities/current/current.js.map +1 -1
- package/dist/quantities/current/is-current.validator.d.ts +1 -1
- package/dist/quantities/current/is-current.validator.js +1 -1
- package/dist/quantities/current/is-current.validator.js.map +1 -1
- package/dist/quantities/current/tests/current.unit.test.js +3 -3
- package/dist/quantities/current/tests/current.unit.test.js.map +1 -1
- package/dist/quantities/distance/distance.column.d.ts +1 -1
- package/dist/quantities/distance/distance.column.js +1 -1
- package/dist/quantities/distance/distance.column.js.map +1 -1
- package/dist/quantities/distance/distance.d.ts +16 -7
- package/dist/quantities/distance/distance.dto.d.ts +1 -1
- package/dist/quantities/distance/distance.dto.js +1 -1
- package/dist/quantities/distance/distance.dto.js.map +1 -1
- package/dist/quantities/distance/distance.js +27 -4
- package/dist/quantities/distance/distance.js.map +1 -1
- package/dist/quantities/distance/is-distance.validator.d.ts +1 -1
- package/dist/quantities/distance/is-distance.validator.js +1 -1
- package/dist/quantities/distance/is-distance.validator.js.map +1 -1
- package/dist/quantities/distance/tests/distance.unit.test.js +30 -5
- package/dist/quantities/distance/tests/distance.unit.test.js.map +1 -1
- package/dist/quantities/duration/duration.column.d.ts +1 -1
- package/dist/quantities/duration/duration.column.js +1 -1
- package/dist/quantities/duration/duration.column.js.map +1 -1
- package/dist/quantities/duration/duration.d.ts +7 -4
- package/dist/quantities/duration/duration.dto.d.ts +1 -1
- package/dist/quantities/duration/duration.dto.js +1 -1
- package/dist/quantities/duration/duration.dto.js.map +1 -1
- package/dist/quantities/duration/duration.js +10 -4
- package/dist/quantities/duration/duration.js.map +1 -1
- package/dist/quantities/duration/is-duration.validator.d.ts +1 -1
- package/dist/quantities/duration/is-duration.validator.js +1 -1
- package/dist/quantities/duration/is-duration.validator.js.map +1 -1
- package/dist/quantities/duration/tests/duration.unit.test.js +5 -5
- package/dist/quantities/duration/tests/duration.unit.test.js.map +1 -1
- package/dist/quantities/energy/energy.column.d.ts +1 -1
- package/dist/quantities/energy/energy.column.js +1 -1
- package/dist/quantities/energy/energy.column.js.map +1 -1
- package/dist/quantities/energy/energy.d.ts +8 -7
- package/dist/quantities/energy/energy.dto.d.ts +1 -1
- package/dist/quantities/energy/energy.dto.js +1 -1
- package/dist/quantities/energy/energy.dto.js.map +1 -1
- package/dist/quantities/energy/energy.js +8 -4
- package/dist/quantities/energy/energy.js.map +1 -1
- package/dist/quantities/energy/is-energy.validator.d.ts +1 -1
- package/dist/quantities/energy/is-energy.validator.js +1 -1
- package/dist/quantities/energy/is-energy.validator.js.map +1 -1
- package/dist/quantities/energy/tests/energy.unit.test.js +5 -5
- package/dist/quantities/energy/tests/energy.unit.test.js.map +1 -1
- package/dist/quantities/mass/is-mass.validator.d.ts +1 -1
- package/dist/quantities/mass/is-mass.validator.js +1 -1
- 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 +1 -1
- package/dist/quantities/mass/mass.column.js.map +1 -1
- package/dist/quantities/mass/mass.d.ts +1 -1
- package/dist/quantities/mass/mass.dto.d.ts +1 -1
- package/dist/quantities/mass/mass.dto.js +1 -1
- package/dist/quantities/mass/mass.dto.js.map +1 -1
- package/dist/quantities/mass/mass.js +1 -1
- package/dist/quantities/mass/mass.js.map +1 -1
- package/dist/quantities/mass/tests/mass.unit.test.js +2 -2
- package/dist/quantities/mass/tests/mass.unit.test.js.map +1 -1
- package/dist/quantities/power/is-power.validator.d.ts +1 -1
- package/dist/quantities/power/is-power.validator.js +1 -1
- 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 +1 -1
- package/dist/quantities/power/power.column.js.map +1 -1
- package/dist/quantities/power/power.d.ts +4 -4
- package/dist/quantities/power/power.dto.d.ts +1 -1
- package/dist/quantities/power/power.dto.js +1 -1
- package/dist/quantities/power/power.dto.js.map +1 -1
- package/dist/quantities/power/power.js +4 -4
- package/dist/quantities/power/power.js.map +1 -1
- package/dist/quantities/power/tests/power.unit.test.js +5 -5
- package/dist/quantities/power/tests/power.unit.test.js.map +1 -1
- package/dist/quantities/speed/is-speed.validator.d.ts +1 -1
- package/dist/quantities/speed/is-speed.validator.js +1 -1
- 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 +1 -1
- package/dist/quantities/speed/speed.column.js.map +1 -1
- package/dist/quantities/speed/speed.d.ts +4 -4
- package/dist/quantities/speed/speed.dto.d.ts +1 -1
- package/dist/quantities/speed/speed.dto.js +1 -1
- package/dist/quantities/speed/speed.dto.js.map +1 -1
- package/dist/quantities/speed/speed.js +4 -4
- package/dist/quantities/speed/speed.js.map +1 -1
- package/dist/quantities/speed/tests/speed.unit.test.js +5 -5
- package/dist/quantities/speed/tests/speed.unit.test.js.map +1 -1
- package/dist/quantities/temperature/is-temperature.validator.d.ts +1 -1
- package/dist/quantities/temperature/is-temperature.validator.js +1 -1
- package/dist/quantities/temperature/is-temperature.validator.js.map +1 -1
- package/dist/quantities/temperature/temperature.column.js +1 -1
- package/dist/quantities/temperature/temperature.column.js.map +1 -1
- package/dist/quantities/temperature/temperature.d.ts +1 -1
- package/dist/quantities/temperature/temperature.dto.d.ts +1 -1
- package/dist/quantities/temperature/temperature.dto.js +1 -1
- package/dist/quantities/temperature/temperature.dto.js.map +1 -1
- package/dist/quantities/temperature/temperature.js +1 -1
- package/dist/quantities/temperature/temperature.js.map +1 -1
- package/dist/quantities/temperature/tests/temperature.unit.test.js +2 -2
- package/dist/quantities/temperature/tests/temperature.unit.test.js.map +1 -1
- package/dist/quantities/voltage/is-voltage.validator.d.ts +1 -1
- package/dist/quantities/voltage/is-voltage.validator.js +1 -1
- package/dist/quantities/voltage/is-voltage.validator.js.map +1 -1
- package/dist/quantities/voltage/tests/voltage.unit.test.js +2 -2
- package/dist/quantities/voltage/tests/voltage.unit.test.js.map +1 -1
- package/dist/quantities/voltage/voltage.column.d.ts +1 -1
- package/dist/quantities/voltage/voltage.column.js +1 -1
- package/dist/quantities/voltage/voltage.column.js.map +1 -1
- package/dist/quantities/voltage/voltage.d.ts +1 -1
- package/dist/quantities/voltage/voltage.dto.d.ts +1 -1
- package/dist/quantities/voltage/voltage.dto.js +1 -1
- package/dist/quantities/voltage/voltage.dto.js.map +1 -1
- package/dist/quantities/voltage/voltage.js +1 -1
- package/dist/quantities/voltage/voltage.js.map +1 -1
- package/dist/quantities/volume/index.d.ts +5 -0
- package/dist/quantities/volume/index.js +6 -0
- package/dist/quantities/volume/index.js.map +1 -0
- package/dist/quantities/volume/is-volume.validator.d.ts +3 -0
- package/dist/quantities/volume/is-volume.validator.js +7 -0
- package/dist/quantities/volume/is-volume.validator.js.map +1 -0
- package/dist/quantities/volume/tests/volume.unit.test.d.ts +1 -0
- package/dist/quantities/volume/tests/volume.unit.test.js +38 -0
- package/dist/quantities/volume/tests/volume.unit.test.js.map +1 -0
- package/dist/quantities/volume/volume-unit.enum.d.ts +16 -0
- package/dist/quantities/volume/volume-unit.enum.js +25 -0
- package/dist/quantities/volume/volume-unit.enum.js.map +1 -0
- package/dist/quantities/volume/volume.column.d.ts +4 -0
- package/dist/quantities/volume/volume.column.js +6 -0
- package/dist/quantities/volume/volume.column.js.map +1 -0
- package/dist/quantities/volume/volume.d.ts +22 -0
- package/dist/quantities/volume/volume.dto.d.ts +22 -0
- package/dist/quantities/volume/volume.dto.js +63 -0
- package/dist/quantities/volume/volume.dto.js.map +1 -0
- package/dist/quantities/volume/volume.js +57 -0
- package/dist/quantities/volume/volume.js.map +1 -0
- package/dist/rate/rate.dto.js +1 -1
- package/dist/rate/rate.dto.js.map +1 -1
- package/dist/rate/rate.js +1 -1
- package/dist/rate/rate.js.map +1 -1
- package/dist/rate/validators/is-rate.validator.js +1 -1
- package/dist/rate/validators/is-rate.validator.js.map +1 -1
- package/dist/validators/is-quantity.decorator.d.ts +2 -2
- package/dist/validators/max-quantity.validator.d.ts +1 -1
- package/dist/validators/max-quantity.validator.js +1 -1
- package/dist/validators/max-quantity.validator.js.map +1 -1
- package/dist/validators/min-quantity.validator.d.ts +1 -1
- package/dist/validators/min-quantity.validator.js +1 -1
- package/dist/validators/min-quantity.validator.js.map +1 -1
- package/dist/validators/tests/is-quantity.decorator.unit.test.js +4 -4
- package/dist/validators/tests/is-quantity.decorator.unit.test.js.map +1 -1
- package/package.json +5 -2
|
@@ -1,8 +1,13 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { Area } from '#lib/quantities/area/area.js';
|
|
2
|
+
import { AreaUnit } from '#lib/quantities/area/area-unit.enum.js';
|
|
3
|
+
import { Volume } from '#lib/quantities/volume/volume.js';
|
|
4
|
+
import { VolumeUnit } from '#lib/quantities/volume/volume-unit.enum.js';
|
|
5
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
6
|
+
import { SpeedUnit } from '#lib/quantities/speed/speed-unit.enum.js';
|
|
7
|
+
import { Speed } from '#lib/quantities/speed/speed.js';
|
|
8
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
5
9
|
import { DistanceUnit } from './distance-unit.enum.js';
|
|
10
|
+
import { DurationUnit } from '#lib/quantities/duration/duration-unit.enum.js';
|
|
6
11
|
const DISTANCE_MULTIPLIERS = {
|
|
7
12
|
[DistanceUnit.METER]: 1,
|
|
8
13
|
[DistanceUnit.DECIMETER]: 1e-1,
|
|
@@ -43,11 +48,29 @@ export class Distance extends ScalableQuantity {
|
|
|
43
48
|
get kilometers() {
|
|
44
49
|
return this.asNumber(DistanceUnit.KILOMETER);
|
|
45
50
|
}
|
|
51
|
+
square() {
|
|
52
|
+
return this.multiply(this);
|
|
53
|
+
}
|
|
54
|
+
cube() {
|
|
55
|
+
return this.square().multiply(this);
|
|
56
|
+
}
|
|
46
57
|
static ZERO = new Distance(0, DistanceUnit.METER);
|
|
58
|
+
multiply(multiplier) {
|
|
59
|
+
if (multiplier instanceof Distance) {
|
|
60
|
+
return new Area(this.valueOf() * multiplier.valueOf(), AreaUnit.SQUARE_METER);
|
|
61
|
+
}
|
|
62
|
+
if (multiplier instanceof Area) {
|
|
63
|
+
return new Volume(this.valueOf() * multiplier.valueOf(), VolumeUnit.CUBIC_METER);
|
|
64
|
+
}
|
|
65
|
+
return super.multiply(multiplier);
|
|
66
|
+
}
|
|
47
67
|
divide(divisor, unit) {
|
|
48
68
|
if (divisor instanceof Duration) {
|
|
49
69
|
return new Speed(this.valueOf() / divisor.valueOf(), SpeedUnit.METER_PER_SECOND);
|
|
50
70
|
}
|
|
71
|
+
if (divisor instanceof Speed) {
|
|
72
|
+
return new Duration(this.valueOf() / divisor.valueOf(), DurationUnit.SECONDS);
|
|
73
|
+
}
|
|
51
74
|
return super.divide(divisor, unit);
|
|
52
75
|
}
|
|
53
76
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"distance.js","sourceRoot":"","sources":["../../../lib/quantities/distance/distance.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IsQuantityOptions } from '
|
|
1
|
+
import { IsQuantityOptions } from '#lib/validators/is-quantity.decorator.js';
|
|
2
2
|
import { Distance } from './distance.js';
|
|
3
3
|
export declare function IsDistance(options?: IsQuantityOptions<Distance>): PropertyDecorator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { applyDecorators } from '@nestjs/common';
|
|
2
|
-
import { IsQuantity } from '
|
|
2
|
+
import { IsQuantity } from '#lib/validators/is-quantity.decorator.js';
|
|
3
3
|
import { DistanceDto } from './distance.dto.js';
|
|
4
4
|
export function IsDistance(options) {
|
|
5
5
|
return applyDecorators(IsQuantity(DistanceDto, options));
|
|
@@ -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,
|
|
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,0CAA0C,CAAA;AACxF,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,10 +1,13 @@
|
|
|
1
1
|
import { describe, it } from 'node:test';
|
|
2
2
|
import { expect } from 'expect';
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
3
|
+
import { Area } from '#lib/quantities/area/area.js';
|
|
4
|
+
import { AreaUnit } from '#lib/quantities/area/area-unit.enum.js';
|
|
5
|
+
import { Distance } from '#lib/quantities/distance/distance.js';
|
|
6
|
+
import { DistanceUnit } from '#lib/quantities/distance/distance-unit.enum.js';
|
|
7
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
8
|
+
import { DurationUnit } from '#lib/quantities/duration/duration-unit.enum.js';
|
|
9
|
+
import { SpeedUnit } from '#lib/quantities/speed/speed-unit.enum.js';
|
|
10
|
+
import { VolumeUnit } from '#lib/quantities/volume/volume-unit.enum.js';
|
|
8
11
|
void describe('Distance class', () => {
|
|
9
12
|
void describe('Distance calculations', () => {
|
|
10
13
|
void it('adds distances', () => {
|
|
@@ -29,6 +32,28 @@ void describe('Distance class', () => {
|
|
|
29
32
|
expect(r2).toBe(4);
|
|
30
33
|
expect(r3).toBe(2);
|
|
31
34
|
});
|
|
35
|
+
void it('multiplies distances into areas', () => {
|
|
36
|
+
const width = new Distance(5, DistanceUnit.METER);
|
|
37
|
+
const height = new Distance(200, DistanceUnit.CENTIMETER);
|
|
38
|
+
const area = width.multiply(height);
|
|
39
|
+
expect(area.isEqualTo(10, AreaUnit.SQUARE_METER)).toBe(true);
|
|
40
|
+
});
|
|
41
|
+
void it('multiplies distances by areas into volumes', () => {
|
|
42
|
+
const distance = new Distance(2, DistanceUnit.METER);
|
|
43
|
+
const area = new Area(5000, AreaUnit.SQUARE_CENTIMETER);
|
|
44
|
+
const result = distance.multiply(area);
|
|
45
|
+
expect(result.isEqualTo(1, VolumeUnit.CUBIC_METER)).toBe(true);
|
|
46
|
+
});
|
|
47
|
+
void it('squares distances into areas', () => {
|
|
48
|
+
const distance = new Distance(50, DistanceUnit.CENTIMETER);
|
|
49
|
+
const result = distance.square();
|
|
50
|
+
expect(result.isEqualTo(0.25, AreaUnit.SQUARE_METER)).toBe(true);
|
|
51
|
+
});
|
|
52
|
+
void it('cubes distances into volumes', () => {
|
|
53
|
+
const distance = new Distance(2, DistanceUnit.METER);
|
|
54
|
+
const result = distance.cube();
|
|
55
|
+
expect(result.isEqualTo(8, VolumeUnit.CUBIC_METER)).toBe(true);
|
|
56
|
+
});
|
|
32
57
|
void describe('cross quantity calculations', () => {
|
|
33
58
|
void it('divides distances by durations into speeds with converted units', () => {
|
|
34
59
|
const distance = new Distance(10, DistanceUnit.KILOMETER);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"distance.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/distance/tests/distance.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,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"distance.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/distance/tests/distance.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QuantityColumnOptions } from '
|
|
1
|
+
import { QuantityColumnOptions } from '#lib/quantity.column.js';
|
|
2
2
|
import { Duration } from './duration.js';
|
|
3
3
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
4
4
|
export declare function DurationColumn(storeAsUnit: DurationUnit, options?: QuantityColumnOptions<Duration>): PropertyDecorator;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QuantityColumn } from '
|
|
1
|
+
import { QuantityColumn } from '#lib/quantity.column.js';
|
|
2
2
|
import { Duration } from './duration.js';
|
|
3
3
|
export function DurationColumn(storeAsUnit, options) {
|
|
4
4
|
return QuantityColumn(Duration, storeAsUnit, options);
|
|
@@ -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,
|
|
1
|
+
{"version":3,"file":"duration.column.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,yBAAyB,CAAA;AAC/E,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,8 +1,10 @@
|
|
|
1
|
-
import { Distance } from '
|
|
2
|
-
import { Speed } from '
|
|
3
|
-
import { Rate } from '
|
|
4
|
-
import { ScalableQuantity } from '
|
|
1
|
+
import { Distance } from '#lib/quantities/distance/distance.js';
|
|
2
|
+
import { Speed } from '#lib/quantities/speed/speed.js';
|
|
3
|
+
import { Rate } from '#lib/rate/rate.js';
|
|
4
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
5
5
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
6
|
+
import { Power } from '#lib/quantities/power/power.js';
|
|
7
|
+
import { Energy } from '#lib/quantities/energy/energy.js';
|
|
6
8
|
export declare class Duration extends ScalableQuantity<DurationUnit, Duration, Duration> {
|
|
7
9
|
protected getQuantity(): typeof Duration;
|
|
8
10
|
protected getDelta(): typeof Duration;
|
|
@@ -21,4 +23,5 @@ export declare class Duration extends ScalableQuantity<DurationUnit, Duration, D
|
|
|
21
23
|
multiply(factor: number): Duration;
|
|
22
24
|
multiply(rate: Rate): Duration;
|
|
23
25
|
multiply(speed: Speed): Distance;
|
|
26
|
+
multiply(power: Power): Energy;
|
|
24
27
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QuantityDto } from '
|
|
1
|
+
import { QuantityDto } from '#lib/quantity.dto.js';
|
|
2
2
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
3
3
|
import { Duration } from './duration.js';
|
|
4
4
|
export declare class DurationDto extends QuantityDto<Duration> {
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { ApiProperty } from '@nestjs/swagger';
|
|
11
11
|
import { IsEnum, IsNumber } from 'class-validator';
|
|
12
12
|
import { Type } from 'class-transformer';
|
|
13
|
-
import { QuantityDto } from '
|
|
13
|
+
import { QuantityDto } from '#lib/quantity.dto.js';
|
|
14
14
|
import { DurationUnit, DurationUnitApiProperty } from './duration-unit.enum.js';
|
|
15
15
|
import { Duration } from './duration.js';
|
|
16
16
|
export class DurationDto extends QuantityDto {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.dto.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"duration.dto.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAA;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,MAAM,OAAO,WAAY,SAAQ,WAAqB;IAIpD,KAAK,CAAQ;IAIb,IAAI,CAAc;IASlB,MAAM,CAAC,IAAI,CAAE,QAAqC;QAChD,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAClC,IAAI,QAAQ,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAE5C,OAAO,IAAI,kBAAkB,EAAE;aAC5B,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC;aACzB,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC;aACvB,KAAK,EAAE,CAAA;IACZ,CAAC;IAED,KAAK;QACH,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC5C,CAAC;CACF;AA1BC;IAHC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,QAAQ,EAAE;;0CACE;AAIb;IAFC,uBAAuB,EAAE;IACzB,MAAM,CAAC,YAAY,CAAC;;yCACH;AAwBpB,MAAM,OAAO,kBAAkB;IACZ,GAAG,CAAa;IAEjC;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,WAAW,EAAE,CAAA;QAC5B,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,YAAY,CAAC,OAAO,CAAA;IACtC,CAAC;IAED,SAAS,CAAE,KAAa;QACtB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;QAEtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ,CAAE,IAAkB;QAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;QAEpB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;CACF"}
|
|
@@ -1,8 +1,11 @@
|
|
|
1
|
-
import { DistanceUnit } from '
|
|
2
|
-
import { Distance } from '
|
|
3
|
-
import { Speed } from '
|
|
4
|
-
import { ScalableQuantity } from '
|
|
1
|
+
import { DistanceUnit } from '#lib/quantities/distance/distance-unit.enum.js';
|
|
2
|
+
import { Distance } from '#lib/quantities/distance/distance.js';
|
|
3
|
+
import { Speed } from '#lib/quantities/speed/speed.js';
|
|
4
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
5
5
|
import { DurationUnit } from './duration-unit.enum.js';
|
|
6
|
+
import { Power } from '#lib/quantities/power/power.js';
|
|
7
|
+
import { Energy } from '#lib/quantities/energy/energy.js';
|
|
8
|
+
import { EnergyUnit } from '#lib/quantities/energy/energy-unit.enum.js';
|
|
6
9
|
const DISTANCE_MULTIPLIERS = {
|
|
7
10
|
[DurationUnit.SECONDS]: 1,
|
|
8
11
|
[DurationUnit.MILLISECONDS]: 1e-3,
|
|
@@ -55,6 +58,9 @@ export class Duration extends ScalableQuantity {
|
|
|
55
58
|
if (multiplier instanceof Speed) {
|
|
56
59
|
return new Distance(this.valueOf() * multiplier.valueOf(), DistanceUnit.METER);
|
|
57
60
|
}
|
|
61
|
+
if (multiplier instanceof Power) {
|
|
62
|
+
return new Energy(this.valueOf() * multiplier.valueOf(), EnergyUnit.JOULE);
|
|
63
|
+
}
|
|
58
64
|
return super.multiply(multiplier);
|
|
59
65
|
}
|
|
60
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"duration.js","sourceRoot":"","sources":["../../../lib/quantities/duration/duration.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IsQuantityOptions } from '
|
|
1
|
+
import { IsQuantityOptions } from '#lib/validators/is-quantity.decorator.js';
|
|
2
2
|
import { Duration } from './duration.js';
|
|
3
3
|
export declare function IsDuration(options?: IsQuantityOptions<Duration>): PropertyDecorator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { applyDecorators } from '@nestjs/common';
|
|
2
|
-
import { IsQuantity } from '
|
|
2
|
+
import { IsQuantity } from '#lib/validators/is-quantity.decorator.js';
|
|
3
3
|
import { DurationDto } from './duration.dto.js';
|
|
4
4
|
export function IsDuration(options) {
|
|
5
5
|
return applyDecorators(IsQuantity(DurationDto, options));
|
|
@@ -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,
|
|
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,0CAA0C,CAAA;AACxF,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,10 +1,10 @@
|
|
|
1
1
|
import { describe, it } from 'node:test';
|
|
2
2
|
import { expect } from 'expect';
|
|
3
|
-
import { Duration } from '
|
|
4
|
-
import { DurationUnit } from '
|
|
5
|
-
import { DistanceUnit } from '
|
|
6
|
-
import { Speed } from '
|
|
7
|
-
import { SpeedUnit } from '
|
|
3
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
4
|
+
import { DurationUnit } from '#lib/quantities/duration/duration-unit.enum.js';
|
|
5
|
+
import { DistanceUnit } from '#lib/quantities/distance/distance-unit.enum.js';
|
|
6
|
+
import { Speed } from '#lib/quantities/speed/speed.js';
|
|
7
|
+
import { SpeedUnit } from '#lib/quantities/speed/speed-unit.enum.js';
|
|
8
8
|
describe('Duration unit tests', () => {
|
|
9
9
|
describe('milliseconds', () => {
|
|
10
10
|
it('reports the correct amount of seconds', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"duration.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/duration/tests/duration.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,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"duration.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/duration/tests/duration.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { QuantityColumnOptions } from '
|
|
1
|
+
import { QuantityColumnOptions } from '#lib/quantity.column.js';
|
|
2
2
|
import { Energy } from './energy.js';
|
|
3
3
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
4
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,
|
|
1
|
+
{"version":3,"file":"energy.column.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,yBAAyB,CAAA;AAC/E,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,7 +1,7 @@
|
|
|
1
|
-
import { Duration } from '
|
|
2
|
-
import { Power } from '
|
|
3
|
-
import { Rate } from '
|
|
4
|
-
import { ScalableQuantity } from '
|
|
1
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
2
|
+
import { Power } from '#lib/quantities/power/power.js';
|
|
3
|
+
import { Rate } from '#lib/rate/rate.js';
|
|
4
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
5
5
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
6
6
|
export declare class Energy extends ScalableQuantity<EnergyUnit, Energy, Energy> {
|
|
7
7
|
protected getQuantity(): typeof Energy;
|
|
@@ -11,9 +11,10 @@ export declare class Energy extends ScalableQuantity<EnergyUnit, Energy, Energy>
|
|
|
11
11
|
protected convertValueToBaseUnit(value: number, unit: EnergyUnit): number;
|
|
12
12
|
protected convertBaseUnitValueTo(value: number, unit: EnergyUnit): number;
|
|
13
13
|
static ZERO: Energy;
|
|
14
|
-
divide(
|
|
14
|
+
divide(scalar: number): Energy;
|
|
15
15
|
divide(rate: Rate): Energy;
|
|
16
16
|
divide(value: number, unit: EnergyUnit): number;
|
|
17
|
-
divide(
|
|
18
|
-
divide(
|
|
17
|
+
divide(energy: Energy): number;
|
|
18
|
+
divide(duration: Duration): Power;
|
|
19
|
+
divide(power: Power): Duration;
|
|
19
20
|
}
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { ApiProperty } from '@nestjs/swagger';
|
|
11
11
|
import { IsEnum, IsNumber } from 'class-validator';
|
|
12
12
|
import { Type } from 'class-transformer';
|
|
13
|
-
import { QuantityDto } from '
|
|
13
|
+
import { QuantityDto } from '#lib/quantity.dto.js';
|
|
14
14
|
import { Energy } from './energy.js';
|
|
15
15
|
import { EnergyUnit, EnergyUnitApiProperty } from './energy-unit.enum.js';
|
|
16
16
|
export class EnergyDto extends QuantityDto {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energy.dto.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"energy.dto.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAEzE,MAAM,OAAO,SAAU,SAAQ,WAAmB;IAIhD,KAAK,CAAQ;IAIb,IAAI,CAAY;IAShB,MAAM,CAAC,IAAI,CAAE,MAAiC;QAC5C,IAAI,MAAM,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAChC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAE1C,OAAO,IAAI,gBAAgB,EAAE;aAC1B,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC;aACvB,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;aACrB,KAAK,EAAE,CAAA;IACZ,CAAC;IAED,KAAK;QACH,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC;CACF;AA1BC;IAHC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,QAAQ,EAAE;;wCACE;AAIb;IAFC,qBAAqB,EAAE;IACvB,MAAM,CAAC,UAAU,CAAC;;uCACH;AAwBlB,MAAM,OAAO,gBAAgB;IACV,GAAG,CAAW;IAE/B;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,SAAS,EAAE,CAAA;QAC1B,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,KAAK,CAAA;IAClC,CAAC;IAED,SAAS,CAAE,KAAa;QACtB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;QAEtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ,CAAE,IAAgB;QACxB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;QAEpB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;CACF"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import { Duration } from '
|
|
2
|
-
import { PowerUnit } from '
|
|
3
|
-
import { Power } from '
|
|
4
|
-
import { ScalableQuantity } from '
|
|
1
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
2
|
+
import { PowerUnit } from '#lib/quantities/power/power-unit.enum.js';
|
|
3
|
+
import { Power } from '#lib/quantities/power/power.js';
|
|
4
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
5
5
|
import { EnergyUnit } from './energy-unit.enum.js';
|
|
6
|
+
import { DurationUnit } from '#lib/quantities/duration/duration-unit.enum.js';
|
|
6
7
|
const ENERGY_MULTIPLIERS = {
|
|
7
8
|
[EnergyUnit.JOULE]: 1,
|
|
8
9
|
[EnergyUnit.DECIJOULE]: 1e-1,
|
|
@@ -68,6 +69,9 @@ export class Energy extends ScalableQuantity {
|
|
|
68
69
|
if (divisor instanceof Duration) {
|
|
69
70
|
return new Power(this.valueOf() / divisor.valueOf(), PowerUnit.WATT);
|
|
70
71
|
}
|
|
72
|
+
if (divisor instanceof Power) {
|
|
73
|
+
return new Duration(this.valueOf() / divisor.valueOf(), DurationUnit.SECONDS);
|
|
74
|
+
}
|
|
71
75
|
return super.divide(divisor, unit);
|
|
72
76
|
}
|
|
73
77
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"energy.js","sourceRoot":"","sources":["../../../lib/quantities/energy/energy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IsQuantityOptions } from '
|
|
1
|
+
import { IsQuantityOptions } from '#lib/validators/is-quantity.decorator.js';
|
|
2
2
|
import { Energy } from './energy.js';
|
|
3
3
|
export declare function IsEnergy(options?: IsQuantityOptions<Energy>): PropertyDecorator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { applyDecorators } from '@nestjs/common';
|
|
2
|
-
import { IsQuantity } from '
|
|
2
|
+
import { IsQuantity } from '#lib/validators/is-quantity.decorator.js';
|
|
3
3
|
import { EnergyDto } from './energy.dto.js';
|
|
4
4
|
export function IsEnergy(options) {
|
|
5
5
|
return applyDecorators(IsQuantity(EnergyDto, options));
|
|
@@ -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,
|
|
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,0CAA0C,CAAA;AACxF,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,10 +1,10 @@
|
|
|
1
1
|
import { describe, it } from 'node:test';
|
|
2
2
|
import { expect } from 'expect';
|
|
3
|
-
import { Energy } from '
|
|
4
|
-
import { EnergyUnit } from '
|
|
5
|
-
import { Duration } from '
|
|
6
|
-
import { DurationUnit } from '
|
|
7
|
-
import { PowerUnit } from '
|
|
3
|
+
import { Energy } from '#lib/quantities/energy/energy.js';
|
|
4
|
+
import { EnergyUnit } from '#lib/quantities/energy/energy-unit.enum.js';
|
|
5
|
+
import { Duration } from '#lib/quantities/duration/duration.js';
|
|
6
|
+
import { DurationUnit } from '#lib/quantities/duration/duration-unit.enum.js';
|
|
7
|
+
import { PowerUnit } from '#lib/quantities/power/power-unit.enum.js';
|
|
8
8
|
void describe('Energy class', () => {
|
|
9
9
|
void describe('Energy parsing', () => {
|
|
10
10
|
void it('parses energy strings', () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"energy.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/energy/tests/energy.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,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"energy.unit.test.js","sourceRoot":"","sources":["../../../../lib/quantities/energy/tests/energy.unit.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { IsQuantityOptions } from '
|
|
1
|
+
import { IsQuantityOptions } from '#lib/validators/is-quantity.decorator.js';
|
|
2
2
|
import { Mass } from './mass.js';
|
|
3
3
|
export declare function IsMass(options?: IsQuantityOptions<Mass>): PropertyDecorator;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { applyDecorators } from '@nestjs/common';
|
|
2
|
-
import { IsQuantity } from '
|
|
2
|
+
import { IsQuantity } from '#lib/validators/is-quantity.decorator.js';
|
|
3
3
|
import { MassDto } from './mass.dto.js';
|
|
4
4
|
export function IsMass(options) {
|
|
5
5
|
return applyDecorators(IsQuantity(MassDto, options));
|
|
@@ -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,
|
|
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,0CAA0C,CAAA;AACxF,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
|
-
import { QuantityColumnOptions } from '
|
|
1
|
+
import { QuantityColumnOptions } from '#lib/quantity.column.js';
|
|
2
2
|
import { MassUnit } from './mass-unit.enum.js';
|
|
3
3
|
import { Mass } from './mass.js';
|
|
4
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,
|
|
1
|
+
{"version":3,"file":"mass.column.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.column.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAyB,MAAM,yBAAyB,CAAA;AAE/E,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,4 +1,4 @@
|
|
|
1
|
-
import { ScalableQuantity } from '
|
|
1
|
+
import { ScalableQuantity } from '#lib/quantity.js';
|
|
2
2
|
import { MassUnit } from './mass-unit.enum.js';
|
|
3
3
|
export declare class Mass extends ScalableQuantity<MassUnit, Mass, Mass> {
|
|
4
4
|
protected getQuantity(): typeof Mass;
|
|
@@ -10,7 +10,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { ApiProperty } from '@nestjs/swagger';
|
|
11
11
|
import { IsEnum, IsNumber } from 'class-validator';
|
|
12
12
|
import { Type } from 'class-transformer';
|
|
13
|
-
import { QuantityDto } from '
|
|
13
|
+
import { QuantityDto } from '#lib/quantity.dto.js';
|
|
14
14
|
import { Mass } from './mass.js';
|
|
15
15
|
import { MassUnit, MassUnitApiProperty } from './mass-unit.enum.js';
|
|
16
16
|
export class MassDto extends QuantityDto {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mass.dto.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mass.dto.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.dto.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC7C,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAA;AAEnE,MAAM,OAAO,OAAQ,SAAQ,WAAiB;IAI5C,KAAK,CAAQ;IAIb,IAAI,CAAU;IASd,MAAM,CAAC,IAAI,CAAE,IAA6B;QACxC,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,IAAI,CAAA;QAC9B,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,SAAS,CAAA;QAExC,OAAO,IAAI,cAAc,EAAE;aACxB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;aACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;aACnB,KAAK,EAAE,CAAA;IACZ,CAAC;IAED,KAAK;QACH,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,CAAA;IACxC,CAAC;CACF;AA1BC;IAHC,WAAW,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAClB,QAAQ,EAAE;;sCACE;AAIb;IAFC,mBAAmB,EAAE;IACrB,MAAM,CAAC,QAAQ,CAAC;;qCACH;AAwBhB,MAAM,OAAO,cAAc;IACR,GAAG,CAAS;IAE7B;QACE,IAAI,CAAC,GAAG,GAAG,IAAI,OAAO,EAAE,CAAA;QACxB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAA;QAClB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,QAAQ,CAAC,QAAQ,CAAA;IACnC,CAAC;IAED,SAAS,CAAE,KAAa;QACtB,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,KAAK,CAAA;QAEtB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,QAAQ,CAAE,IAAc;QACtB,IAAI,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,CAAA;QAEpB,OAAO,IAAI,CAAA;IACb,CAAC;IAED,KAAK;QACH,OAAO,IAAI,CAAC,GAAG,CAAA;IACjB,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mass.js","sourceRoot":"","sources":["../../../lib/quantities/mass/mass.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAA;AACnD,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"}
|