uom-types 4.1.1 → 4.1.2

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/CHANGELOG.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file. Dates are displayed in UTC.
3
3
 
4
+ ## [4.1.2](https://github.com/RebeccaStevens/uom-types/compare/v4.1.1...v4.1.2) (2024-10-18)
5
+
6
+
7
+ ### Bug Fixes
8
+
9
+ * extend branding interface to unit-keys-value ([165603c](https://github.com/RebeccaStevens/uom-types/commit/165603c1fe9beaf2c523218e78778ee152fc7c87))
10
+
4
11
  ## [4.1.1](https://github.com/RebeccaStevens/uom-types/compare/v4.1.0...v4.1.1) (2024-10-18)
5
12
 
6
13
 
package/dist/index.d.cts CHANGED
@@ -70,6 +70,15 @@ export type BrandUnitClassType = Brand & {
70
70
  unitClassType: true;
71
71
  };
72
72
  };
73
+ /**
74
+ * Brand with the unit keys and value.
75
+ */
76
+ export type BrandUnitKeyValues<K, V> = Brand & Readonly<{
77
+ __uom_types: {
78
+ keys: K;
79
+ value: V;
80
+ };
81
+ }>;
73
82
  /**
74
83
  * Remove all key from the object that are `never`.
75
84
  */
@@ -192,14 +201,8 @@ export type UnknownUnitClass = UnknownUnitKeyValues & BrandUnitClassType;
192
201
  export type UnknownUnitMeta = UnknownUnitKeyValues & Readonly<{
193
202
  __uno_types__unit_meta_type: true;
194
203
  }>;
195
- export type UnitKeyValues<T extends UnitSubvalues> = Readonly<{
196
- __uom_types__keys: keyof ExcludeUnitZeroSubvalues<T> extends string ? keyof ExcludeUnitZeroSubvalues<T> : never;
197
- __uom_types__value: RemoveNeverValues<T>;
198
- }>;
199
- export type UnknownUnitKeyValues = Readonly<{
200
- __uom_types__keys: string;
201
- __uom_types__value: {};
202
- }>;
204
+ export type UnitKeyValues<T extends UnitSubvalues> = BrandUnitKeyValues<keyof ExcludeUnitZeroSubvalues<T> extends string ? keyof ExcludeUnitZeroSubvalues<T> : never, RemoveNeverValues<T>>;
205
+ export type UnknownUnitKeyValues = BrandUnitKeyValues<string, {}>;
203
206
  /**
204
207
  * A mapping of subvalue of a unit its magnitude.
205
208
  *
@@ -1231,7 +1234,7 @@ export type HenryPerMeter = MagneticPermeabilityUnit<{}>;
1231
1234
  * @see {@link Pow}
1232
1235
  * @see {@link Cubic}
1233
1236
  */
1234
- export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 2> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types__value"], 2>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types__value"], 2>> : never;
1237
+ export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 2> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types"]["value"], 2>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types"]["value"], 2>> : never;
1235
1238
  /**
1236
1239
  * Put the given {@link Unit} to the power of 3.
1237
1240
  *
@@ -1240,7 +1243,7 @@ export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConv
1240
1243
  * @see {@link Pow}
1241
1244
  * @see {@link Square}
1242
1245
  */
1243
- export type Cubic<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 3> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types__value"], 3>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types__value"], 3>> : never;
1246
+ export type Cubic<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 3> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types"]["value"], 3>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types"]["value"], 3>> : never;
1244
1247
  /**
1245
1248
  * Binary prefix denoting an order of magnitude of 10^1.
1246
1249
  *
@@ -1355,7 +1358,7 @@ export type Pico<T extends UnknownUnit> = Multiply<T, UnitConversionRate<{
1355
1358
  * @group Modifiers
1356
1359
  * @category General
1357
1360
  */
1358
- export type Reciprocal<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Inverse<T> : T extends UnknownUnitClass ? UnitClass<InverseUnitSubvalues<T["__uom_types__value"]>> : T extends UnknownUnitMeta ? UnitMeta<InverseUnitSubvalues<T["__uom_types__value"]>> : never;
1361
+ export type Reciprocal<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Inverse<T> : T extends UnknownUnitClass ? UnitClass<InverseUnitSubvalues<T["__uom_types"]["value"]>> : T extends UnknownUnitMeta ? UnitMeta<InverseUnitSubvalues<T["__uom_types"]["value"]>> : never;
1359
1362
  /**
1360
1363
  * @group Unit Classes
1361
1364
  * @category Electromagnetic
package/dist/index.d.mts CHANGED
@@ -70,6 +70,15 @@ export type BrandUnitClassType = Brand & {
70
70
  unitClassType: true;
71
71
  };
72
72
  };
73
+ /**
74
+ * Brand with the unit keys and value.
75
+ */
76
+ export type BrandUnitKeyValues<K, V> = Brand & Readonly<{
77
+ __uom_types: {
78
+ keys: K;
79
+ value: V;
80
+ };
81
+ }>;
73
82
  /**
74
83
  * Remove all key from the object that are `never`.
75
84
  */
@@ -192,14 +201,8 @@ export type UnknownUnitClass = UnknownUnitKeyValues & BrandUnitClassType;
192
201
  export type UnknownUnitMeta = UnknownUnitKeyValues & Readonly<{
193
202
  __uno_types__unit_meta_type: true;
194
203
  }>;
195
- export type UnitKeyValues<T extends UnitSubvalues> = Readonly<{
196
- __uom_types__keys: keyof ExcludeUnitZeroSubvalues<T> extends string ? keyof ExcludeUnitZeroSubvalues<T> : never;
197
- __uom_types__value: RemoveNeverValues<T>;
198
- }>;
199
- export type UnknownUnitKeyValues = Readonly<{
200
- __uom_types__keys: string;
201
- __uom_types__value: {};
202
- }>;
204
+ export type UnitKeyValues<T extends UnitSubvalues> = BrandUnitKeyValues<keyof ExcludeUnitZeroSubvalues<T> extends string ? keyof ExcludeUnitZeroSubvalues<T> : never, RemoveNeverValues<T>>;
205
+ export type UnknownUnitKeyValues = BrandUnitKeyValues<string, {}>;
203
206
  /**
204
207
  * A mapping of subvalue of a unit its magnitude.
205
208
  *
@@ -1231,7 +1234,7 @@ export type HenryPerMeter = MagneticPermeabilityUnit<{}>;
1231
1234
  * @see {@link Pow}
1232
1235
  * @see {@link Cubic}
1233
1236
  */
1234
- export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 2> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types__value"], 2>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types__value"], 2>> : never;
1237
+ export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 2> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types"]["value"], 2>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types"]["value"], 2>> : never;
1235
1238
  /**
1236
1239
  * Put the given {@link Unit} to the power of 3.
1237
1240
  *
@@ -1240,7 +1243,7 @@ export type Square<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConv
1240
1243
  * @see {@link Pow}
1241
1244
  * @see {@link Square}
1242
1245
  */
1243
- export type Cubic<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 3> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types__value"], 3>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types__value"], 3>> : never;
1246
+ export type Cubic<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Pow<T, 3> : T extends UnknownUnitClass ? UnitClass<PowUnitSubvalues<T["__uom_types"]["value"], 3>> : T extends UnknownUnitMeta ? UnitMeta<PowUnitSubvalues<T["__uom_types"]["value"], 3>> : never;
1244
1247
  /**
1245
1248
  * Binary prefix denoting an order of magnitude of 10^1.
1246
1249
  *
@@ -1355,7 +1358,7 @@ export type Pico<T extends UnknownUnit> = Multiply<T, UnitConversionRate<{
1355
1358
  * @group Modifiers
1356
1359
  * @category General
1357
1360
  */
1358
- export type Reciprocal<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Inverse<T> : T extends UnknownUnitClass ? UnitClass<InverseUnitSubvalues<T["__uom_types__value"]>> : T extends UnknownUnitMeta ? UnitMeta<InverseUnitSubvalues<T["__uom_types__value"]>> : never;
1361
+ export type Reciprocal<T extends UnknownUnit | UnknownAbstractUnit | UnknownUnitConversionRate | UnknownUnitClass | UnknownUnitMeta> = T extends number ? Inverse<T> : T extends UnknownUnitClass ? UnitClass<InverseUnitSubvalues<T["__uom_types"]["value"]>> : T extends UnknownUnitMeta ? UnitMeta<InverseUnitSubvalues<T["__uom_types"]["value"]>> : never;
1359
1362
  /**
1360
1363
  * @group Unit Classes
1361
1364
  * @category Electromagnetic
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uom-types",
3
- "version": "4.1.1",
3
+ "version": "4.1.2",
4
4
  "description": "Typesafe units with no runtime overhead.",
5
5
  "keywords": [
6
6
  "uom",