@thi.ng/units 0.1.1 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/CHANGELOG.md +17 -1
  2. package/README.md +86 -14
  3. package/api.d.ts +4 -0
  4. package/api.js +9 -0
  5. package/constants/din-sizes.d.ts +10 -0
  6. package/constants/din-sizes.js +11 -0
  7. package/constants/din.d.ts +10 -0
  8. package/constants/din.js +11 -0
  9. package/constants/velocities.d.ts +10 -0
  10. package/constants/velocities.js +11 -0
  11. package/index.d.ts +22 -19
  12. package/index.js +22 -19
  13. package/package.json +64 -45
  14. package/unit.d.ts +103 -21
  15. package/unit.js +113 -58
  16. package/units/accel.d.ts +5 -0
  17. package/{accel.js → units/accel.js} +1 -1
  18. package/units/angle.d.ts +8 -0
  19. package/{angle.js → units/angle.js} +1 -1
  20. package/units/area.d.ts +10 -0
  21. package/{area.js → units/area.js} +1 -1
  22. package/units/data.d.ts +25 -0
  23. package/{data.js → units/data.js} +1 -1
  24. package/units/density.d.ts +3 -0
  25. package/units/density.js +6 -0
  26. package/units/electric.d.ts +24 -0
  27. package/{electric.js → units/electric.js} +1 -1
  28. package/units/energy.d.ts +7 -0
  29. package/{energy.js → units/energy.js} +1 -1
  30. package/units/force.d.ts +2 -0
  31. package/{force.js → units/force.js} +1 -1
  32. package/units/frequency.d.ts +9 -0
  33. package/{frequency.js → units/frequency.js} +1 -1
  34. package/units/length.d.ts +20 -0
  35. package/{length.js → units/length.js} +1 -1
  36. package/units/luminous.d.ts +4 -0
  37. package/{luminous.js → units/luminous.js} +1 -1
  38. package/units/mass.d.ts +11 -0
  39. package/{mass.js → units/mass.js} +1 -1
  40. package/units/parts.d.ts +8 -0
  41. package/{parts.js → units/parts.js} +1 -1
  42. package/units/power.d.ts +9 -0
  43. package/{power.js → units/power.js} +1 -1
  44. package/units/pressure.d.ts +9 -0
  45. package/{pressure.js → units/pressure.js} +1 -1
  46. package/units/speed.d.ts +6 -0
  47. package/{speed.js → units/speed.js} +1 -1
  48. package/units/substance.d.ts +2 -0
  49. package/{substance.js → units/substance.js} +1 -1
  50. package/units/temperature.d.ts +4 -0
  51. package/{temperature.js → units/temperature.js} +1 -1
  52. package/units/time.d.ts +11 -0
  53. package/{time.js → units/time.js} +1 -1
  54. package/units/velocity.d.ts +6 -0
  55. package/units/velocity.js +8 -0
  56. package/units/volume.d.ts +15 -0
  57. package/{volume.js → units/volume.js} +1 -1
  58. package/accel.d.ts +0 -5
  59. package/angle.d.ts +0 -8
  60. package/area.d.ts +0 -10
  61. package/data.d.ts +0 -25
  62. package/electric.d.ts +0 -24
  63. package/energy.d.ts +0 -7
  64. package/force.d.ts +0 -2
  65. package/frequency.d.ts +0 -9
  66. package/length.d.ts +0 -20
  67. package/luminous.d.ts +0 -4
  68. package/mass.d.ts +0 -11
  69. package/parts.d.ts +0 -8
  70. package/power.d.ts +0 -9
  71. package/pressure.d.ts +0 -9
  72. package/speed.d.ts +0 -6
  73. package/substance.d.ts +0 -2
  74. package/temperature.d.ts +0 -4
  75. package/time.d.ts +0 -11
  76. package/volume.d.ts +0 -15
package/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Change Log
2
2
 
3
- - **Last updated**: 2023-03-14T13:41:35Z
3
+ - **Last updated**: 2023-03-15T14:55:07Z
4
4
  - **Generator**: [thi.ng/monopub](https://thi.ng/monopub)
5
5
 
6
6
  All notable changes to this project will be documented in this file.
@@ -9,6 +9,22 @@ See [Conventional Commits](https://conventionalcommits.org/) for commit guidelin
9
9
  **Note:** Unlisted _patch_ versions only involve non-code or otherwise excluded changes
10
10
  and/or version bumps of transitive dependencies.
11
11
 
12
+ ## [0.2.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/units@0.2.0) (2023-03-15)
13
+
14
+ #### 🚀 Features
15
+
16
+ - add support for quantities ([94ded3e](https://github.com/thi-ng/umbrella/commit/94ded3e))
17
+ - add quantity()
18
+ - update various ops & predicates as polymorphic fns
19
+ - fix asUnit()
20
+ - update docs
21
+ - restructure /src, add quantities/constants ([1374162](https://github.com/thi-ng/umbrella/commit/1374162))
22
+ - add /src/constants:
23
+ - velocities
24
+ - DIN paper sizes
25
+ - move all unit presets to /src/units
26
+ - update pkg exports
27
+
12
28
  ## [0.1.0](https://github.com/thi-ng/umbrella/tree/@thi.ng/units@0.1.0) (2023-03-14)
13
29
 
14
30
  #### 🚀 Features
package/README.md CHANGED
@@ -35,6 +35,8 @@ This project is part of the
35
35
  - [Using standard metric prefixes](#using-standard-metric-prefixes)
36
36
  - [Unit combinators](#unit-combinators)
37
37
  - [Unit conversions](#unit-conversions)
38
+ - [Quantities](#quantities)
39
+ - [Constants](#constants)
38
40
  - [Status](#status)
39
41
  - [Installation](#installation)
40
42
  - [Dependencies](#dependencies)
@@ -44,10 +46,10 @@ This project is part of the
44
46
 
45
47
  ## About
46
48
 
47
- Extensible SI unit creation, conversions & calculations (~150 units predefined).
49
+ Extensible SI unit creation, conversions, quantities & calculations (incl. ~170 predefined units & constants).
48
50
 
49
- All unit definitions & conversions are based on the SI unit system & concepts
50
- described here:
51
+ All unit definitions, quantities & conversions are based on the SI unit system &
52
+ concepts described here:
51
53
 
52
54
  - https://en.wikipedia.org/wiki/International_System_of_Units
53
55
  - https://en.wikipedia.org/wiki/SI_base_unit
@@ -55,7 +57,10 @@ described here:
55
57
  - https://en.wikipedia.org/wiki/Coherence_(units_of_measurement)
56
58
  - https://en.wikipedia.org/wiki/Metric_prefix
57
59
 
58
- The overall conversion approach is based on [@g7s/unit](https://github.com/g7s/unit).
60
+ The overall conversion approach is inspired & partially based on:
61
+
62
+ - [Frink](https://frinklang.org/)
63
+ - [@g7s/unit](https://github.com/g7s/unit)
59
64
 
60
65
  ### Unit definitions
61
66
 
@@ -113,8 +118,9 @@ units](https://en.wikipedia.org/wiki/SI_derived_unit)):
113
118
 
114
119
  > Ω = kg⋅m<sup>2</sup>⋅s<sup>−3</sup>⋅A<sup>−2</sup>
115
120
 
116
- Btw. The [`formatSI()`]() function can be used to format a unit's dimension
117
- vector:
121
+ Btw. The
122
+ [`formatSI()`](https://docs.thi.ng/umbrella/units/functions/formatSI.html)
123
+ function can be used to format a unit's dimension vector:
118
124
 
119
125
  ```ts
120
126
  formatSI(div(V, A));
@@ -387,9 +393,9 @@ https://en.wikipedia.org/wiki/Parts-per_notation
387
393
 
388
394
  #### Using standard metric prefixes
389
395
 
390
- Existing [coherent units]() can be
391
- [prefixed](https://docs.thi.ng/umbrella/units/functions/prefix-1.html) to produce
392
- derived versions:
396
+ Existing coherent units can be
397
+ [prefixed](https://docs.thi.ng/umbrella/units/functions/prefix-1.html) to
398
+ produce derived versions:
393
399
 
394
400
  ```ts
395
401
  // define micrometer (also available as preset)
@@ -404,7 +410,7 @@ prefix("k", Hz);
404
410
  #### Unit combinators
405
411
 
406
412
  The following combinators can be used to derive scaled and/or more complex units
407
- in multiple SI dimensions:
413
+ (or [quantities](#quantities)) in multiple SI dimensions:
408
414
 
409
415
  - [`div(a, b)`](https://docs.thi.ng/umbrella/units/functions/div.html): derives
410
416
  a new unit via the division of the given units
@@ -435,9 +441,12 @@ const Hz = reciprocal(s);
435
441
 
436
442
  ### Unit conversions
437
443
 
438
- Only units with compatible (incl. reciprocal) dimensions can be converted,
439
- otherwise an error will be thrown. All dimensionless units can be converted
440
- to other dimensionless units (even if it would be semantic nonsense).
444
+ Units (and [quantities](#quantities)) can be converted using
445
+ [`convert()`](https://docs.thi.ng/umbrella/units/functions/convert.html). Only
446
+ units with compatible (incl. reciprocal) dimensions can be converted, otherwise
447
+ an error will be thrown. On the other hand, all _dimensionless_ units can be
448
+ converted to other _dimensionless_ units (even if it would be semantic
449
+ nonsense).
441
450
 
442
451
  Units can be specified in various ways:
443
452
 
@@ -469,6 +478,68 @@ convert(10, "arcsec", "rad") * R;
469
478
  // 308.87479623488537
470
479
  ```
471
480
 
481
+ ### Quantities
482
+
483
+ The library also supports defining quantities, i.e. certain finite amounts of a
484
+ given unit. These can be a number or vector-based and can be used for
485
+ calculations & conversions using the above mentioned polymorphic functions:
486
+ `div()`, `mul()`, `reciprocal()` and `convert()`.
487
+
488
+ Quantities are created via
489
+ [`quantity()`](https://docs.thi.ng/umbrella/units/functions/quantity-1.html)
490
+ which acts a factory function for a thin `Quantity` class wrapper. The latter
491
+ also implements the standard
492
+ [`IDeref`](https://docs.thi.ng/umbrella/api/interfaces/IDeref.html) interface
493
+ to obtain the unwrapped amount (though it only should be used for dimensionless
494
+ quantities). Use [`convert()`](#unit-conversions) otherwise!
495
+
496
+ ```ts
497
+ // (also available as preset)
498
+ const speedOfLight = quantity(299792458, "m/s");
499
+
500
+ // compute wavelength of a WiFi signal in millimeters
501
+ convert(div(speedOfLight, quantity(2.4,"GHz")), "mm");
502
+ // 124.9135
503
+ ```
504
+
505
+ ```ts
506
+ // DIN A4 paper size (also available as preset)
507
+ const A4 = quantity([210, 297], "mm");
508
+
509
+ // convert paper size to inches
510
+ convert(A4, "in");
511
+ // [ 8.2677, 11.6929 ]
512
+
513
+ // or calculate pixel dimensions @ 300 dpi
514
+ // the result of the product is dimensionless
515
+ // so we use the NONE preset as target unit...
516
+ convert(mul(A4, quantity(300, "dpi")), NONE)
517
+ // [ 2480.314960629921, 3507.8740157480315 ]
518
+
519
+ // alternatively dimensionless units can be deref'd directly
520
+ mul(A4, quantity(300, "dpi")).deref()
521
+ // [ 2480.314960629921, 3507.8740157480315 ]
522
+ ```
523
+
524
+ When combining different quantities, their units do not need to be the same:
525
+
526
+ ```ts
527
+ // compute 10 mm x 2 inch and convert to square centimeter
528
+ convert(mul(quantity(10, "mm"), quantity(2, "in")), "cm2")
529
+ // 5.08
530
+ ```
531
+
532
+ #### Constants
533
+
534
+ The following constants are provided (more to come):
535
+
536
+ | Var name | Unit |
537
+ |---------------------------|----------------|
538
+ | `DIN_A0` ... `DIN_A8` | `["mm", "mm"]` |
539
+ | `SPEED_OF_LIGHT` | `"m/s"` |
540
+ | `SPEED_OF_SOUND_IN_AIR` | `"m/s"` |
541
+ | `SPEED_OF_SOUND_IN_WATER` | `"m/s"` |
542
+
472
543
  ## Status
473
544
 
474
545
  **BETA** - possibly breaking changes forthcoming
@@ -495,10 +566,11 @@ For Node.js REPL:
495
566
  const units = await import("@thi.ng/units");
496
567
  ```
497
568
 
498
- Package sizes (brotli'd, pre-treeshake): ESM: 3.57 KB
569
+ Package sizes (brotli'd, pre-treeshake): ESM: 4.05 KB
499
570
 
500
571
  ## Dependencies
501
572
 
573
+ - [@thi.ng/api](https://github.com/thi-ng/umbrella/tree/develop/packages/api)
502
574
  - [@thi.ng/checks](https://github.com/thi-ng/umbrella/tree/develop/packages/checks)
503
575
  - [@thi.ng/equiv](https://github.com/thi-ng/umbrella/tree/develop/packages/equiv)
504
576
  - [@thi.ng/errors](https://github.com/thi-ng/umbrella/tree/develop/packages/errors)
package/api.d.ts CHANGED
@@ -94,4 +94,8 @@ export declare const PREFIXES: {
94
94
  r: number;
95
95
  q: number;
96
96
  };
97
+ /**
98
+ * Dimensionless unit preset.
99
+ */
100
+ export declare const NONE: Unit;
97
101
  //# sourceMappingURL=api.d.ts.map
package/api.js CHANGED
@@ -28,3 +28,12 @@ export const PREFIXES = {
28
28
  r: 1e-27,
29
29
  q: 1e-30,
30
30
  };
31
+ /**
32
+ * Dimensionless unit preset.
33
+ */
34
+ export const NONE = {
35
+ dim: [0, 0, 0, 0, 0, 0, 0],
36
+ scale: 1,
37
+ offset: 0,
38
+ coherent: false,
39
+ };
@@ -0,0 +1,10 @@
1
+ export declare const DIN_A0: import("../unit.js").Quantity<number[]>;
2
+ export declare const DIN_A1: import("../unit.js").Quantity<number[]>;
3
+ export declare const DIN_A2: import("../unit.js").Quantity<number[]>;
4
+ export declare const DIN_A3: import("../unit.js").Quantity<number[]>;
5
+ export declare const DIN_A4: import("../unit.js").Quantity<number[]>;
6
+ export declare const DIN_A5: import("../unit.js").Quantity<number[]>;
7
+ export declare const DIN_A6: import("../unit.js").Quantity<number[]>;
8
+ export declare const DIN_A7: import("../unit.js").Quantity<number[]>;
9
+ export declare const DIN_A8: import("../unit.js").Quantity<number[]>;
10
+ //# sourceMappingURL=din-sizes.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { mm } from "../units/length.js";
2
+ import { quantity } from "../unit.js";
3
+ export const DIN_A0 = quantity([841, 1189], mm);
4
+ export const DIN_A1 = quantity([594, 841], mm);
5
+ export const DIN_A2 = quantity([420, 594], mm);
6
+ export const DIN_A3 = quantity([297, 420], mm);
7
+ export const DIN_A4 = quantity([210, 297], mm);
8
+ export const DIN_A5 = quantity([148, 210], mm);
9
+ export const DIN_A6 = quantity([105, 148], mm);
10
+ export const DIN_A7 = quantity([74, 105], mm);
11
+ export const DIN_A8 = quantity([52, 74], mm);
@@ -0,0 +1,10 @@
1
+ export declare const DIN_A0: import("../unit.js").Value<number[]>;
2
+ export declare const DIN_A1: import("../unit.js").Value<number[]>;
3
+ export declare const DIN_A2: import("../unit.js").Value<number[]>;
4
+ export declare const DIN_A3: import("../unit.js").Value<number[]>;
5
+ export declare const DIN_A4: import("../unit.js").Value<number[]>;
6
+ export declare const DIN_A5: import("../unit.js").Value<number[]>;
7
+ export declare const DIN_A6: import("../unit.js").Value<number[]>;
8
+ export declare const DIN_A7: import("../unit.js").Value<number[]>;
9
+ export declare const DIN_A8: import("../unit.js").Value<number[]>;
10
+ //# sourceMappingURL=din.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { mm } from "../length.js";
2
+ import { value } from "../unit.js";
3
+ export const DIN_A0 = value([841, 1189], mm);
4
+ export const DIN_A1 = value([594, 841], mm);
5
+ export const DIN_A2 = value([420, 594], mm);
6
+ export const DIN_A3 = value([297, 420], mm);
7
+ export const DIN_A4 = value([210, 297], mm);
8
+ export const DIN_A5 = value([148, 210], mm);
9
+ export const DIN_A6 = value([105, 148], mm);
10
+ export const DIN_A7 = value([74, 105], mm);
11
+ export const DIN_A8 = value([52, 74], mm);
@@ -0,0 +1,10 @@
1
+ export declare const SPEED_OF_LIGHT: import("../unit.js").Quantity<299792458>;
2
+ /**
3
+ * At 20 degree celsius
4
+ */
5
+ export declare const SPEED_OF_SOUND_IN_AIR: import("../unit.js").Quantity<343.14>;
6
+ /**
7
+ * At 20 degree celsius
8
+ */
9
+ export declare const SPEED_OF_SOUND_IN_WATER: import("../unit.js").Quantity<1482>;
10
+ //# sourceMappingURL=velocities.d.ts.map
@@ -0,0 +1,11 @@
1
+ import { quantity } from "../unit.js";
2
+ import { m_s } from "../units/velocity.js";
3
+ export const SPEED_OF_LIGHT = quantity(299792458, m_s);
4
+ /**
5
+ * At 20 degree celsius
6
+ */
7
+ export const SPEED_OF_SOUND_IN_AIR = quantity(343.14, m_s);
8
+ /**
9
+ * At 20 degree celsius
10
+ */
11
+ export const SPEED_OF_SOUND_IN_WATER = quantity(1482, m_s);
package/index.d.ts CHANGED
@@ -1,22 +1,25 @@
1
1
  export * from "./api.js";
2
2
  export * from "./unit.js";
3
- export * from "./accel.js";
4
- export * from "./angle.js";
5
- export * from "./area.js";
6
- export * from "./data.js";
7
- export * from "./electric.js";
8
- export * from "./energy.js";
9
- export * from "./force.js";
10
- export * from "./frequency.js";
11
- export * from "./length.js";
12
- export * from "./luminous.js";
13
- export * from "./mass.js";
14
- export * from "./parts.js";
15
- export * from "./power.js";
16
- export * from "./pressure.js";
17
- export * from "./speed.js";
18
- export * from "./substance.js";
19
- export * from "./temperature.js";
20
- export * from "./time.js";
21
- export * from "./volume.js";
3
+ export * from "./units/accel.js";
4
+ export * from "./units/angle.js";
5
+ export * from "./units/area.js";
6
+ export * from "./units/data.js";
7
+ export * from "./units/density.js";
8
+ export * from "./units/electric.js";
9
+ export * from "./units/energy.js";
10
+ export * from "./units/force.js";
11
+ export * from "./units/frequency.js";
12
+ export * from "./units/length.js";
13
+ export * from "./units/luminous.js";
14
+ export * from "./units/mass.js";
15
+ export * from "./units/parts.js";
16
+ export * from "./units/power.js";
17
+ export * from "./units/pressure.js";
18
+ export * from "./units/substance.js";
19
+ export * from "./units/temperature.js";
20
+ export * from "./units/time.js";
21
+ export * from "./units/velocity.js";
22
+ export * from "./units/volume.js";
23
+ export * from "./constants/din-sizes.js";
24
+ export * from "./constants/velocities.js";
22
25
  //# sourceMappingURL=index.d.ts.map
package/index.js CHANGED
@@ -1,21 +1,24 @@
1
1
  export * from "./api.js";
2
2
  export * from "./unit.js";
3
- export * from "./accel.js";
4
- export * from "./angle.js";
5
- export * from "./area.js";
6
- export * from "./data.js";
7
- export * from "./electric.js";
8
- export * from "./energy.js";
9
- export * from "./force.js";
10
- export * from "./frequency.js";
11
- export * from "./length.js";
12
- export * from "./luminous.js";
13
- export * from "./mass.js";
14
- export * from "./parts.js";
15
- export * from "./power.js";
16
- export * from "./pressure.js";
17
- export * from "./speed.js";
18
- export * from "./substance.js";
19
- export * from "./temperature.js";
20
- export * from "./time.js";
21
- export * from "./volume.js";
3
+ export * from "./units/accel.js";
4
+ export * from "./units/angle.js";
5
+ export * from "./units/area.js";
6
+ export * from "./units/data.js";
7
+ export * from "./units/density.js";
8
+ export * from "./units/electric.js";
9
+ export * from "./units/energy.js";
10
+ export * from "./units/force.js";
11
+ export * from "./units/frequency.js";
12
+ export * from "./units/length.js";
13
+ export * from "./units/luminous.js";
14
+ export * from "./units/mass.js";
15
+ export * from "./units/parts.js";
16
+ export * from "./units/power.js";
17
+ export * from "./units/pressure.js";
18
+ export * from "./units/substance.js";
19
+ export * from "./units/temperature.js";
20
+ export * from "./units/time.js";
21
+ export * from "./units/velocity.js";
22
+ export * from "./units/volume.js";
23
+ export * from "./constants/din-sizes.js";
24
+ export * from "./constants/velocities.js";
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@thi.ng/units",
3
- "version": "0.1.1",
4
- "description": "Extensible SI unit creation, conversions & calculations (~150 units predefined)",
3
+ "version": "0.2.0",
4
+ "description": "Extensible SI unit creation, conversions, quantities & calculations (incl. ~170 predefined units & constants)",
5
5
  "type": "module",
6
6
  "module": "./index.js",
7
7
  "typings": "./index.d.ts",
@@ -34,6 +34,7 @@
34
34
  "test": "testament test"
35
35
  },
36
36
  "dependencies": {
37
+ "@thi.ng/api": "^8.7.4",
37
38
  "@thi.ng/checks": "^3.3.10",
38
39
  "@thi.ng/equiv": "^2.1.20",
39
40
  "@thi.ng/errors": "^2.2.13"
@@ -52,23 +53,27 @@
52
53
  "area",
53
54
  "bits",
54
55
  "bytes",
56
+ "calculation",
55
57
  "capacitance",
56
58
  "current",
57
59
  "voltage",
58
60
  "resistance",
59
- "converter",
61
+ "conversion",
60
62
  "energy",
61
63
  "force",
62
64
  "frequency",
63
65
  "length",
64
66
  "mass",
67
+ "math",
65
68
  "power",
66
69
  "si",
67
70
  "speed",
71
+ "symbolic",
68
72
  "temperature",
69
73
  "time",
70
74
  "typescript",
71
75
  "units",
76
+ "velocity",
72
77
  "volume"
73
78
  ],
74
79
  "publishConfig": {
@@ -83,76 +88,90 @@
83
88
  },
84
89
  "files": [
85
90
  "./*.js",
86
- "./*.d.ts"
91
+ "./*.d.ts",
92
+ "constants",
93
+ "units"
87
94
  ],
88
95
  "exports": {
89
96
  ".": {
90
97
  "default": "./index.js"
91
98
  },
92
- "./accel": {
93
- "default": "./accel.js"
94
- },
95
- "./angle": {
96
- "default": "./angle.js"
97
- },
98
99
  "./api": {
99
100
  "default": "./api.js"
100
101
  },
101
- "./area": {
102
- "default": "./area.js"
102
+ "./constants/din-sizes": {
103
+ "default": "./constants/din-sizes.js"
103
104
  },
104
- "./data": {
105
- "default": "./data.js"
105
+ "./constants/velocities": {
106
+ "default": "./constants/velocities.js"
106
107
  },
107
- "./electric": {
108
- "default": "./electric.js"
108
+ "./unit": {
109
+ "default": "./unit.js"
109
110
  },
110
- "./energy": {
111
- "default": "./energy.js"
111
+ "./units/accel": {
112
+ "default": "./units/accel.js"
112
113
  },
113
- "./force": {
114
- "default": "./force.js"
114
+ "./units/angle": {
115
+ "default": "./units/angle.js"
115
116
  },
116
- "./frequency": {
117
- "default": "./frequency.js"
117
+ "./units/area": {
118
+ "default": "./units/area.js"
118
119
  },
119
- "./length": {
120
- "default": "./length.js"
120
+ "./units/data": {
121
+ "default": "./units/data.js"
121
122
  },
122
- "./luminous": {
123
- "default": "./luminous.js"
123
+ "./units/density": {
124
+ "default": "./units/density.js"
124
125
  },
125
- "./mass": {
126
- "default": "./mass.js"
126
+ "./units/electric": {
127
+ "default": "./units/electric.js"
127
128
  },
128
- "./power": {
129
- "default": "./power.js"
129
+ "./units/energy": {
130
+ "default": "./units/energy.js"
130
131
  },
131
- "./pressure": {
132
- "default": "./pressure.js"
132
+ "./units/force": {
133
+ "default": "./units/force.js"
133
134
  },
134
- "./speed": {
135
- "default": "./speed.js"
135
+ "./units/frequency": {
136
+ "default": "./units/frequency.js"
136
137
  },
137
- "./substance": {
138
- "default": "./substance.js"
138
+ "./units/length": {
139
+ "default": "./units/length.js"
139
140
  },
140
- "./temperature": {
141
- "default": "./temperature.js"
141
+ "./units/luminous": {
142
+ "default": "./units/luminous.js"
142
143
  },
143
- "./time": {
144
- "default": "./time.js"
144
+ "./units/mass": {
145
+ "default": "./units/mass.js"
145
146
  },
146
- "./unit": {
147
- "default": "./unit.js"
147
+ "./units/parts": {
148
+ "default": "./units/parts.js"
149
+ },
150
+ "./units/power": {
151
+ "default": "./units/power.js"
152
+ },
153
+ "./units/pressure": {
154
+ "default": "./units/pressure.js"
155
+ },
156
+ "./units/substance": {
157
+ "default": "./units/substance.js"
158
+ },
159
+ "./units/temperature": {
160
+ "default": "./units/temperature.js"
161
+ },
162
+ "./units/time": {
163
+ "default": "./units/time.js"
164
+ },
165
+ "./units/velocity": {
166
+ "default": "./units/velocity.js"
148
167
  },
149
- "./volume": {
150
- "default": "./volume.js"
168
+ "./units/volume": {
169
+ "default": "./units/volume.js"
151
170
  }
152
171
  },
153
172
  "thi.ng": {
154
173
  "status": "beta",
155
174
  "year": 2021
156
175
  },
157
- "gitHead": "ed05ea133992d4eb3a64fa02af0e85ac6ef07381\n"
176
+ "gitHead": "ded6c346ccabc8bf647b848738878bdae8e05d55\n"
158
177
  }