@synnaxlabs/x 0.32.0 → 0.33.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 (79) hide show
  1. package/.turbo/turbo-build.log +23 -23
  2. package/dist/binary.cjs +1 -1
  3. package/dist/binary.js +1 -1
  4. package/dist/bounds-CCueigU3.js +171 -0
  5. package/dist/bounds-Cudf5M4H.cjs +1 -0
  6. package/dist/bounds.cjs +1 -1
  7. package/dist/bounds.js +1 -1
  8. package/dist/box-CZVdKCOc.cjs +1 -0
  9. package/dist/box-hAkmDC3K.js +201 -0
  10. package/dist/box.cjs +1 -1
  11. package/dist/box.js +1 -1
  12. package/dist/caseconv.cjs +1 -1
  13. package/dist/caseconv.js +1 -1
  14. package/dist/index-By0n2R_b.cjs +1 -0
  15. package/dist/{index-DgaYJC35.cjs → index-DQZfhLnw.cjs} +1 -1
  16. package/dist/{index-Duv1uH08.js → index-q_1Jz5rY.js} +5 -5
  17. package/dist/{index-B5THJ1eb.js → index-zsix_qnl.js} +1 -1
  18. package/dist/index.cjs +2 -2
  19. package/dist/index.js +163 -146
  20. package/dist/{location-DjcaXEps.js → location-B5rSnQP3.js} +1 -1
  21. package/dist/{location-gPB1RtfA.cjs → location-YGxhLPDy.cjs} +1 -1
  22. package/dist/location.cjs +1 -1
  23. package/dist/location.js +1 -1
  24. package/dist/{position-DkON65EZ.js → position-BZOTg74V.js} +2 -2
  25. package/dist/{position-C71OiHiw.cjs → position-CjNCcq8X.cjs} +1 -1
  26. package/dist/position.cjs +1 -1
  27. package/dist/position.js +1 -1
  28. package/dist/{scale-COPgp55a.cjs → scale-BvbW9p2C.cjs} +1 -1
  29. package/dist/{scale-qw6vRO4s.js → scale-C7_4I3pa.js} +3 -3
  30. package/dist/scale.cjs +1 -1
  31. package/dist/scale.js +1 -1
  32. package/dist/series-BId9slhU.cjs +11 -0
  33. package/dist/{series-B5eA90Ci.js → series-CZw97Bq2.js} +619 -456
  34. package/dist/spatial.cjs +1 -1
  35. package/dist/spatial.js +5 -5
  36. package/dist/src/caseconv/caseconv.d.ts.map +1 -1
  37. package/dist/src/deep/path.d.ts +1 -1
  38. package/dist/src/deep/path.d.ts.map +1 -1
  39. package/dist/src/math/math.d.ts +26 -6
  40. package/dist/src/math/math.d.ts.map +1 -1
  41. package/dist/src/math/math.spec.d.ts +2 -0
  42. package/dist/src/math/math.spec.d.ts.map +1 -0
  43. package/dist/src/record.d.ts +4 -0
  44. package/dist/src/record.d.ts.map +1 -1
  45. package/dist/src/spatial/bounds/bounds.d.ts +204 -2
  46. package/dist/src/spatial/bounds/bounds.d.ts.map +1 -1
  47. package/dist/src/spatial/box/box.d.ts +4 -4
  48. package/dist/src/spatial/box/box.d.ts.map +1 -1
  49. package/dist/src/strings/strings.d.ts +14 -0
  50. package/dist/src/strings/strings.d.ts.map +1 -1
  51. package/dist/src/telem/series.d.ts +35 -10
  52. package/dist/src/telem/series.d.ts.map +1 -1
  53. package/dist/src/telem/telem.d.ts +12 -10
  54. package/dist/src/telem/telem.d.ts.map +1 -1
  55. package/dist/telem.cjs +1 -1
  56. package/dist/telem.js +1 -1
  57. package/package.json +9 -9
  58. package/src/caseconv/caseconv.ts +1 -0
  59. package/src/deep/path.ts +1 -1
  60. package/src/math/math.spec.ts +149 -0
  61. package/src/math/math.ts +60 -9
  62. package/src/record.ts +5 -0
  63. package/src/spatial/bounds/bounds.spec.ts +135 -270
  64. package/src/spatial/bounds/bounds.ts +290 -25
  65. package/src/spatial/box/box.ts +9 -5
  66. package/src/strings/strings.spec.ts +33 -1
  67. package/src/strings/strings.ts +52 -0
  68. package/src/telem/series.spec.ts +235 -0
  69. package/src/telem/series.ts +271 -52
  70. package/src/telem/telem.spec.ts +22 -0
  71. package/src/telem/telem.ts +44 -20
  72. package/src/zodutil/zodutil.spec.ts +5 -7
  73. package/tsconfig.tsbuildinfo +1 -1
  74. package/dist/bounds-CpboA0q6.js +0 -127
  75. package/dist/bounds-ZZc1c-_Z.cjs +0 -1
  76. package/dist/box-BQID-0jO.cjs +0 -1
  77. package/dist/box-xRqO6NvI.js +0 -202
  78. package/dist/index-xk130iQA.cjs +0 -1
  79. package/dist/series-CJ65b1Uz.cjs +0 -11
@@ -1,4 +1,5 @@
1
1
  import { z } from 'zod';
2
+ import { math } from '../math';
2
3
  import { Stringer } from '../primitive';
3
4
  export type TZInfo = "UTC" | "local";
4
5
  export type TimeStampStringFormat = "ISO" | "ISODate" | "ISOTime" | "time" | "preciseTime" | "date" | "preciseDate" | "shortDate" | "dateTime";
@@ -214,6 +215,8 @@ export declare class TimeSpan implements Stringer {
214
215
  private readonly value;
215
216
  readonly encodeValue = true;
216
217
  constructor(value: CrudeTimeSpan);
218
+ static fromSeconds(span: CrudeTimeSpan): TimeSpan;
219
+ static fromMilliseconds(span: CrudeTimeSpan): TimeSpan;
217
220
  encode(): string;
218
221
  valueOf(): bigint;
219
222
  lessThan(other: CrudeTimeSpan): boolean;
@@ -265,7 +268,7 @@ export declare class TimeSpan implements Stringer {
265
268
  * @param value - The number of nanoseconds.
266
269
  * @returns A TimeSpan representing the given number of nanoseconds.
267
270
  */
268
- static nanoseconds(value?: number): TimeSpan;
271
+ static nanoseconds(value?: math.Numeric): TimeSpan;
269
272
  /** A nanosecond. */
270
273
  static readonly NANOSECOND: TimeSpan;
271
274
  /**
@@ -274,7 +277,7 @@ export declare class TimeSpan implements Stringer {
274
277
  * @param value - The number of microseconds.
275
278
  * @returns A TimeSpan representing the given number of microseconds.
276
279
  */
277
- static microseconds(value?: number): TimeSpan;
280
+ static microseconds(value?: math.Numeric): TimeSpan;
278
281
  /** A microsecond. */
279
282
  static readonly MICROSECOND: TimeSpan;
280
283
  /**
@@ -283,7 +286,7 @@ export declare class TimeSpan implements Stringer {
283
286
  * @param value - The number of milliseconds.
284
287
  * @returns A TimeSpan representing the given number of milliseconds.
285
288
  */
286
- static milliseconds(value?: number): TimeSpan;
289
+ static milliseconds(value?: math.Numeric): TimeSpan;
287
290
  /** A millisecond. */
288
291
  static readonly MILLISECOND: TimeSpan;
289
292
  /**
@@ -292,7 +295,7 @@ export declare class TimeSpan implements Stringer {
292
295
  * @param value - The number of seconds.
293
296
  * @returns A TimeSpan representing the given number of seconds.
294
297
  */
295
- static seconds(value?: number): TimeSpan;
298
+ static seconds(value?: math.Numeric): TimeSpan;
296
299
  /** A second. */
297
300
  static readonly SECOND: TimeSpan;
298
301
  /**
@@ -301,7 +304,7 @@ export declare class TimeSpan implements Stringer {
301
304
  * @param value - The number of minutes.
302
305
  * @returns A TimeSpan representing the given number of minutes.
303
306
  */
304
- static minutes(value: number): TimeSpan;
307
+ static minutes(value?: math.Numeric): TimeSpan;
305
308
  /** A minute. */
306
309
  static readonly MINUTE: TimeSpan;
307
310
  /**
@@ -310,7 +313,7 @@ export declare class TimeSpan implements Stringer {
310
313
  * @param value - The number of hours.
311
314
  * @returns A TimeSpan representing the given number of hours.
312
315
  */
313
- static hours(value: number): TimeSpan;
316
+ static hours(value: math.Numeric): TimeSpan;
314
317
  /** Represents an hour. */
315
318
  static readonly HOUR: TimeSpan;
316
319
  /**
@@ -319,7 +322,7 @@ export declare class TimeSpan implements Stringer {
319
322
  * @param value - The number of days.
320
323
  * @returns A TimeSpan representing the given number of days.
321
324
  */
322
- static days(value: number): TimeSpan;
325
+ static days(value: math.Numeric): TimeSpan;
323
326
  /** Represents a day. */
324
327
  static readonly DAY: TimeSpan;
325
328
  /** The maximum possible value for a TimeSpan. */
@@ -700,7 +703,7 @@ export declare class Size extends Number implements Stringer {
700
703
  }
701
704
  export type CrudeTimeStamp = bigint | BigInt | TimeStamp | TimeSpan | number | Date | string | DateComponents | Number;
702
705
  export type TimeStampT = number;
703
- export type CrudeTimeSpan = bigint | BigInt | TimeSpan | TimeStamp | number | Number;
706
+ export type CrudeTimeSpan = bigint | BigInt | TimeSpan | TimeStamp | number | Number | Rate;
704
707
  export type TimeSpanT = number;
705
708
  export type CrudeRate = Rate | number | Number;
706
709
  export type RateT = number;
@@ -725,9 +728,8 @@ export interface NumericTimeRange {
725
728
  export declare const typedArrayZ: z.ZodUnion<[z.ZodType<Uint8Array, z.ZodTypeDef, Uint8Array>, z.ZodType<Uint16Array, z.ZodTypeDef, Uint16Array>, z.ZodType<Uint32Array, z.ZodTypeDef, Uint32Array>, z.ZodType<BigUint64Array, z.ZodTypeDef, BigUint64Array>, z.ZodType<Float32Array, z.ZodTypeDef, Float32Array>, z.ZodType<Float64Array, z.ZodTypeDef, Float64Array>, z.ZodType<Int8Array, z.ZodTypeDef, Int8Array>, z.ZodType<Int16Array, z.ZodTypeDef, Int16Array>, z.ZodType<Int32Array, z.ZodTypeDef, Int32Array>, z.ZodType<BigInt64Array, z.ZodTypeDef, BigInt64Array>]>;
726
729
  export type TypedArray = z.infer<typeof typedArrayZ>;
727
730
  type TypedArrayConstructor = Uint8ArrayConstructor | Uint16ArrayConstructor | Uint32ArrayConstructor | BigUint64ArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor | Int8ArrayConstructor | Int16ArrayConstructor | Int32ArrayConstructor | BigInt64ArrayConstructor;
728
- export type NumericTelemValue = number | bigint;
729
731
  export type TelemValue = number | bigint | string | boolean | Date | TimeStamp | TimeSpan;
730
732
  export declare const isTelemValue: (value: unknown) => value is TelemValue;
731
- export declare const convertDataType: (source: DataType, target: DataType, value: NumericTelemValue, offset?: number | bigint) => NumericTelemValue;
733
+ export declare const convertDataType: (source: DataType, target: DataType, value: math.Numeric, offset?: math.Numeric) => math.PrimitiveNumeric;
732
734
  export {};
733
735
  //# sourceMappingURL=telem.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"telem.d.ts","sourceRoot":"","sources":["../../../src/telem/telem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telem.d.ts","sourceRoot":"","sources":["../../../src/telem/telem.ts"],"names":[],"mappings":"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"}
package/dist/telem.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./series-CJ65b1Uz.cjs");exports.DataType=e.DataType;exports.Density=e.Density;exports.MultiSeries=e.MultiSeries;exports.Rate=e.Rate;exports.Series=e.Series;exports.Size=e.Size;exports.TimeRange=e.TimeRange;exports.TimeSpan=e.TimeSpan;exports.TimeStamp=e.TimeStamp;exports.addSamples=e.addSamples;exports.convertDataType=e.convertDataType;exports.isCrudeSeries=e.isCrudeSeries;exports.isTelemValue=e.isTelemValue;exports.typedArrayZ=e.typedArrayZ;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./series-BId9slhU.cjs");exports.DataType=e.DataType;exports.Density=e.Density;exports.MultiSeries=e.MultiSeries;exports.Rate=e.Rate;exports.Series=e.Series;exports.Size=e.Size;exports.TimeRange=e.TimeRange;exports.TimeSpan=e.TimeSpan;exports.TimeStamp=e.TimeStamp;exports.addSamples=e.addSamples;exports.convertDataType=e.convertDataType;exports.isCrudeSeries=e.isCrudeSeries;exports.isTelemValue=e.isTelemValue;exports.typedArrayZ=e.typedArrayZ;
package/dist/telem.js CHANGED
@@ -1,4 +1,4 @@
1
- import { d as s, D as i, M as t, R as r, S, e as m, c as p, b as T, T as d, a as y, g as l, i as n, f as D, t as o } from "./series-B5eA90Ci.js";
1
+ import { d as s, D as i, M as t, R as r, S, e as m, c as p, b as T, T as d, a as y, g as l, i as n, f as D, t as o } from "./series-CZw97Bq2.js";
2
2
  export {
3
3
  s as DataType,
4
4
  i as Density,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@synnaxlabs/x",
3
- "version": "0.32.0",
3
+ "version": "0.33.0",
4
4
  "type": "module",
5
5
  "description": "Common Utilities for Synnax Labs",
6
6
  "repository": "https://github.com/synnaxlabs/synnax/tree/main/x/go",
@@ -15,17 +15,17 @@
15
15
  "dependencies": {
16
16
  "js-convert-case": "^4.2.0",
17
17
  "nanoid": "^5.0.7",
18
- "zod": "3.23.8"
18
+ "zod": "^3.23.8"
19
19
  },
20
20
  "devDependencies": {
21
- "@types/node": "^22.5.4",
22
- "@vitest/coverage-v8": "^2.1.0",
23
- "typescript": "^5.6.2",
24
- "vite": "5.4.4",
25
- "vitest": "^2.1.0",
21
+ "@types/node": "^22.7.5",
22
+ "@vitest/coverage-v8": "^2.1.2",
23
+ "typescript": "^5.6.3",
24
+ "vite": "^5.4.8",
25
+ "vitest": "^2.1.2",
26
26
  "@synnaxlabs/tsconfig": "0.0.2",
27
- "eslint-config-synnaxlabs": "0.0.1",
28
- "@synnaxlabs/vite-plugin": "0.0.1"
27
+ "@synnaxlabs/vite-plugin": "0.0.1",
28
+ "eslint-config-synnaxlabs": "0.0.1"
29
29
  },
30
30
  "main": "./dist/index.cjs",
31
31
  "module": "./dist/index.js",
@@ -13,6 +13,7 @@ const snakeToCamelStr = (str: string): string => {
13
13
  // if only first character is upper case, convert to lower case
14
14
  if (c.length > 1 && c[0] === c[0].toUpperCase() && c[1] === c[1].toUpperCase())
15
15
  return c;
16
+ if (c.length === 0) return c;
16
17
  return c[0].toLowerCase() + c.slice(1);
17
18
  };
18
19
  /**
package/src/deep/path.ts CHANGED
@@ -81,7 +81,7 @@ export interface Get {
81
81
  ): V | null;
82
82
  }
83
83
 
84
- /** A strongly typed version of the @see Get function. */
84
+ /** A strongly typed version of the @link Get function. */
85
85
  export interface TypedGet<V = unknown, T = UnknownRecord> {
86
86
  (obj: T, path: string, options?: GetOptions<false>): V;
87
87
  (obj: T, path: string, options?: GetOptions<boolean | undefined>): V | null;
@@ -0,0 +1,149 @@
1
+ // Copyright 2024 Synnax Labs, Inc.
2
+ //
3
+ // Use of this software is governed by the Business Source License included in the file
4
+ // licenses/BSL.txt.
5
+ //
6
+ // As of the Change Date specified in that file, in accordance with the Business Source
7
+ // License, use of this software will be governed by the Apache License, Version 2.0,
8
+ // included in the file licenses/APL.txt.
9
+
10
+ import { describe, expect, it } from "vitest";
11
+
12
+ import { math } from "@/math";
13
+
14
+ describe("math", () => {
15
+ describe("sub", () => {
16
+ it("should subtract two numbers", () => {
17
+ expect(math.sub(1, 2)).toBe(-1);
18
+ });
19
+ it("should subtract two bigints", () => {
20
+ expect(math.sub(1n, 2n)).toBe(-1n);
21
+ });
22
+ it("should subtract a number and a bigint", () => {
23
+ expect(math.sub(1, 2n)).toBe(-1);
24
+ });
25
+ it("should subtract a bigint and a number", () => {
26
+ expect(math.sub(1n, 2)).toBe(-1n);
27
+ });
28
+ });
29
+ describe("add", () => {
30
+ it("should add two numbers", () => {
31
+ expect(math.add(1, 2)).toBe(3);
32
+ });
33
+ it("should add two bigints", () => {
34
+ expect(math.add(1n, 2n)).toBe(3n);
35
+ });
36
+ it("should add a number and a bigint", () => {
37
+ expect(math.add(1, 2n)).toBe(3);
38
+ });
39
+ it("should add a bigint and a number", () => {
40
+ expect(math.add(1n, 2)).toBe(3n);
41
+ });
42
+ });
43
+ describe("closeTo", () => {
44
+ it("should return true if two numbers are close", () => {
45
+ expect(math.closeTo(1, 1.0001)).toBe(true);
46
+ });
47
+ it("should return false if two numbers are not close", () => {
48
+ expect(math.closeTo(1, 1.1)).toBe(false);
49
+ });
50
+ });
51
+ describe("equal", () => {
52
+ it("should return true if two numbers are equal", () => {
53
+ expect(math.equal(1, 1)).toBe(true);
54
+ });
55
+ it("should return false if two numbers are not equal", () => {
56
+ expect(math.equal(1, 2)).toBe(false);
57
+ });
58
+ it("should return true if two bigints are equal", () => {
59
+ expect(math.equal(1n, 1n)).toBe(true);
60
+ });
61
+ it("should return false if two bigints are not equal", () => {
62
+ expect(math.equal(1n, 2n)).toBe(false);
63
+ });
64
+ it("should return true if a number and a bigint are equal", () => {
65
+ expect(math.equal(1, 1n)).toBe(true);
66
+ });
67
+ it("should return false if a number and a bigint are not equal", () => {
68
+ expect(math.equal(1, 2n)).toBe(false);
69
+ });
70
+ it("should return true if a bigint and a number are equal", () => {
71
+ expect(math.equal(1n, 1)).toBe(true);
72
+ });
73
+ it("should return false if a bigint and a number are not equal", () => {
74
+ expect(math.equal(1n, 2)).toBe(false);
75
+ });
76
+ });
77
+ describe("roundToNearestMagnitude", () => {
78
+ it("should round to the nearest magnitude of 10", () => {
79
+ expect(math.roundToNearestMagnitude(1234)).toBe(1000);
80
+ expect(math.roundToNearestMagnitude(12345)).toBe(10000);
81
+ expect(math.roundToNearestMagnitude(123456)).toBe(100000);
82
+ });
83
+ });
84
+ describe("min", () => {
85
+ it("should return the minimum of two numbers", () => {
86
+ expect(math.min(1, 2)).toBe(1);
87
+ });
88
+ it("should return the minimum of two bigints", () => {
89
+ expect(math.min(1n, 2n)).toBe(1n);
90
+ });
91
+ it("should return the minimum of a number and a bigint", () => {
92
+ expect(math.min(1, 2n)).toBe(1);
93
+ });
94
+ it("should return the minimum of a bigint and a number", () => {
95
+ expect(math.min(1n, 2)).toBe(1n);
96
+ });
97
+ });
98
+ describe("max", () => {
99
+ it("should return the maximum of two numbers", () => {
100
+ expect(math.max(1, 2)).toBe(2);
101
+ });
102
+ it("should return the maximum of two bigints", () => {
103
+ expect(math.max(1n, 2n)).toBe(2n);
104
+ });
105
+ it("should return the maximum of a number and a bigint", () => {
106
+ expect(math.max(1, 2n)).toBe(2);
107
+ });
108
+ it("should return the maximum of a bigint and a number", () => {
109
+ expect(math.max(1n, 2)).toBe(2n);
110
+ });
111
+ });
112
+ describe("abs", () => {
113
+ it("should return the absolute value of a number", () => {
114
+ expect(math.abs(-1)).toBe(1);
115
+ });
116
+ it("should return the absolute value of a bigint", () => {
117
+ expect(math.abs(-1n)).toBe(1n);
118
+ });
119
+ });
120
+ describe("mult", () => {
121
+ it("should multiply two numbers", () => {
122
+ expect(math.mult(1, 2)).toBe(2);
123
+ });
124
+ it("should multiply two bigints", () => {
125
+ expect(math.mult(1n, 2n)).toBe(2n);
126
+ });
127
+ it("should multiply a number and a bigint", () => {
128
+ expect(math.mult(1, 2n)).toBe(2);
129
+ });
130
+ it("should multiply a bigint and a number", () => {
131
+ expect(math.mult(1n, 2)).toBe(2n);
132
+ });
133
+ });
134
+
135
+ describe("div", () => {
136
+ it("should divide two numbers", () => {
137
+ expect(math.div(2, 1)).toBe(2);
138
+ });
139
+ it("should divide two bigints", () => {
140
+ expect(math.div(2n, 1n)).toBe(2n);
141
+ });
142
+ it("should divide a number and a bigint", () => {
143
+ expect(math.div(2, 1n)).toBe(2);
144
+ });
145
+ it("should divide a bigint and a number", () => {
146
+ expect(math.div(2n, 1)).toBe(2n);
147
+ });
148
+ });
149
+ });
package/src/math/math.ts CHANGED
@@ -7,27 +7,78 @@
7
7
  // License, use of this software will be governed by the Apache License, Version 2.0,
8
8
  // included in the file licenses/APL.txt.
9
9
 
10
- type Value = number | bigint;
10
+ /** A primitive numeric value is either a number or a bigint. */
11
+ export type PrimitiveNumeric = number | bigint;
11
12
 
12
- /** @returns the product of a and b, coercing b to the type of a if necessary. */
13
- export const sub = <V extends Value>(a: V, b: Value): V => {
14
- if (typeof a === "bigint") return (a - BigInt(b)) as V;
15
- return (a - Number(b)) as V;
13
+ /** An extension of {@link PrimitiveNumeric} that includes the {@link BigInt} and {@link Number} classes. */
14
+ export type Numeric = PrimitiveNumeric | Number | BigInt;
15
+
16
+ const isBigInt = (n: Numeric): n is bigint | BigInt =>
17
+ typeof n === "bigint" || n instanceof BigInt;
18
+
19
+ /**
20
+ * @returns the product of a and b, coercing b to the type of a if necessary. */
21
+ export const sub = <V extends Numeric>(a: V, b: Numeric): V => {
22
+ if (isBigInt(a)) return (a.valueOf() - BigInt(b.valueOf().valueOf())) as V;
23
+ return (a.valueOf() - Number(b.valueOf())) as V;
16
24
  };
17
25
 
18
26
  /** @returns the sum of a and b, coercing b to the type of a if necessary. */
19
- export const add = <V extends Value>(a: V, b: Value): V => {
20
- if (typeof a === "bigint") return (a + BigInt(b)) as V;
27
+ export const add = <V extends Numeric>(a: V, b: Numeric): V => {
28
+ if (isBigInt(a)) return (a.valueOf() + BigInt(b.valueOf().valueOf())) as V;
21
29
  // @ts-expect-error - a is a number but typescript doesn't recognize that.
22
- return (a + Number(b)) as V;
30
+ return (a + Number(b.valueOf())) as V;
23
31
  };
24
32
 
25
33
  /** @returns true if a is close to b within epsilon. */
26
34
  export const closeTo = (a: number, b: number, epsilon = 0.0001): boolean =>
27
35
  Math.abs(a - b) < epsilon;
28
36
 
29
- /** @returns the nearest number to num with 1 significant digit. */
37
+ /** @returns true if a is equal to b, coercing b to the type of a if necessary. */
38
+ export const equal = <V extends Numeric>(a: V, b: Numeric): boolean => {
39
+ if (isBigInt(a)) return a === BigInt(b.valueOf().valueOf());
40
+ return a === Number(b.valueOf());
41
+ };
42
+
43
+ /**
44
+ * @returns the number rounded to the nearest magnitude of 10.
45
+ * @example roundToNearestMagnitude(1234) => 1000
46
+ * @example roundToNearestMagnitude(12345) => 10000
47
+ * @example roundToNearestMagnitude(123456) => 100000
48
+ */
30
49
  export const roundToNearestMagnitude = (num: number): number => {
31
50
  const magnitude = Math.pow(10, Math.floor(Math.log10(num)));
32
51
  return Math.round(num / magnitude) * magnitude;
33
52
  };
53
+
54
+ /** @returns the minimum of a and b, coercing b to the type of a if necessary. */
55
+ export const min = <V extends Numeric>(a: V, b: Numeric): V => {
56
+ if (isBigInt(a))
57
+ return (a.valueOf() < BigInt(b.valueOf()) ? a : BigInt(b.valueOf())) as V;
58
+ return (a.valueOf() < Number(b.valueOf()) ? a : Number(b.valueOf())) as V;
59
+ };
60
+
61
+ /** @returns the maximum of a and b, coercing b to the type of a if necessary. */
62
+ export const max = <V extends Numeric>(a: V, b: Numeric): V => {
63
+ if (isBigInt(a))
64
+ return (a.valueOf() > BigInt(b.valueOf()) ? a : BigInt(b.valueOf())) as V;
65
+ return (a.valueOf() > Number(b.valueOf()) ? a : Number(b.valueOf())) as V;
66
+ };
67
+
68
+ /** @returns the absolute value of a. */
69
+ export const abs = <V extends Numeric>(a: V): V => {
70
+ if (isBigInt(a) || a instanceof BigInt) return (a.valueOf() < 0n ? -a : a) as V;
71
+ return (a.valueOf() < 0 ? -a : a) as V;
72
+ };
73
+
74
+ /** @returns the multiplication of a and b, coercing b to the type of a if necessary. */
75
+ export const mult = <V extends Numeric>(a: V, b: Numeric): V => {
76
+ if (isBigInt(a)) return (a.valueOf() * BigInt(b.valueOf())) as V;
77
+ return (a.valueOf() * Number(b.valueOf())) as V;
78
+ };
79
+
80
+ /** @returns the division of a and b, coercing b to the type of a if necessary. */
81
+ export const div = <V extends Numeric>(a: V, b: Numeric): V => {
82
+ if (isBigInt(a)) return (a.valueOf() / BigInt(b.valueOf())) as V;
83
+ return (a.valueOf() / Number(b.valueOf())) as V;
84
+ };
package/src/record.ts CHANGED
@@ -17,6 +17,11 @@ export interface Keyed<K extends Key> {
17
17
  key: K;
18
18
  }
19
19
 
20
+ export interface KeyedNamed<K extends Key = string> {
21
+ key: K;
22
+ name: string;
23
+ }
24
+
20
25
  export const unknownRecordZ = z.record(
21
26
  z.union([z.number(), z.string(), z.symbol()]),
22
27
  z.unknown(),