mirror of
https://github.com/zoriya/typebox.git
synced 2026-06-01 10:35:14 +00:00
Use BigInt Constructor (#287)
This commit is contained in:
+1
-1
@@ -15,4 +15,4 @@ const T = Type.Object({
|
||||
|
||||
type T = Static<typeof T>
|
||||
|
||||
console.log(T)
|
||||
console.log(T)
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@sinclair/typebox",
|
||||
"version": "0.25.11",
|
||||
"version": "0.25.12",
|
||||
"description": "JSONSchema Type Builder with Static Type Resolution for TypeScript",
|
||||
"keywords": [
|
||||
"typescript",
|
||||
|
||||
+3
-3
@@ -49,8 +49,8 @@ export namespace ValueHash {
|
||||
// State
|
||||
// ----------------------------------------------------
|
||||
|
||||
let Hash = 14695981039346656037n
|
||||
const [Prime, Size] = [1099511628211n, 2n ** 64n]
|
||||
let Hash = globalThis.BigInt('14695981039346656037')
|
||||
const [Prime, Size] = [globalThis.BigInt('1099511628211'), globalThis.BigInt('2') ** globalThis.BigInt('64')]
|
||||
const Bytes = globalThis.Array.from({ length: 256 }).map((_, i) => globalThis.BigInt(i))
|
||||
const F64 = new globalThis.Float64Array(1)
|
||||
const F64In = new globalThis.DataView(F64.buffer)
|
||||
@@ -186,7 +186,7 @@ export namespace ValueHash {
|
||||
|
||||
/** Creates a FNV1A-64 non cryptographic hash of the given value */
|
||||
export function Create(value: unknown) {
|
||||
Hash = 14695981039346656037n
|
||||
Hash = globalThis.BigInt('14695981039346656037')
|
||||
Visit(value)
|
||||
return Hash
|
||||
}
|
||||
|
||||
+2
-2
@@ -146,11 +146,11 @@ export namespace ValueCast {
|
||||
}
|
||||
|
||||
function IsValueTrue(value: unknown): value is true {
|
||||
return value === true || (IsNumber(value) && value === 1) || (IsBigInt(value) && value === 1n) || (IsString(value) && (value.toLowerCase() === 'true' || value === '1'))
|
||||
return value === true || (IsNumber(value) && value === 1) || (IsBigInt(value) && value === globalThis.BigInt('1')) || (IsString(value) && (value.toLowerCase() === 'true' || value === '1'))
|
||||
}
|
||||
|
||||
function IsValueFalse(value: unknown): value is true {
|
||||
return value === false || (IsNumber(value) && value === 0) || (IsBigInt(value) && value === 0n) || (IsString(value) && (value.toLowerCase() === 'false' || value === '0'))
|
||||
return value === false || (IsNumber(value) && value === 0) || (IsBigInt(value) && value === globalThis.BigInt('0')) || (IsString(value) && (value.toLowerCase() === 'false' || value === '0'))
|
||||
}
|
||||
|
||||
// ----------------------------------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user