Launch Week Day 4: Introducing Data Exports.Learn More
Socket
Book a DemoSign in
Socket

@dao-xyz/borsh

Package Overview
Dependencies
Maintainers
1
Versions
54
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@dao-xyz/borsh - npm Package Compare versions

Comparing version
5.1.2
to
5.1.3
+4
-6
lib/cjs/bigint.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.checkInt = exports.readUInt16LE = exports.readUInt32LE = exports.readUIntLE = exports.readBigUInt64LE = exports.writeBigUint64Le = exports.writeUInt16LE = exports.writeUInt32LE = exports.writeBufferLEBigInt = exports.toBigIntLE = void 0;
function arrayToHex(arr) {
return [...new Uint8Array(arr)]
function arrayToHex(arr, reverse = false) {
return [...(reverse ? new Uint8Array(arr).reverse() : new Uint8Array(arr))]
.map(b => b.toString(16).padStart(2, "0"))

@@ -10,4 +10,3 @@ .join("");

function toBigIntLE(buf) {
const reversed = buf.reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf, true);
if (hex.length === 0) {

@@ -92,4 +91,3 @@ return BigInt(0);

function readUIntLE(buf, offset, width) {
const reversed = buf.slice(offset, offset + width).reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf.subarray(offset, offset + width), true);
if (hex.length === 0) {

@@ -96,0 +94,0 @@ return BigInt(0);

+1
-1

@@ -1,1 +0,1 @@

{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/bigint.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/bigint.ts"],"names":[],"mappings":"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"}

@@ -1,3 +0,3 @@

function arrayToHex(arr) {
return [...new Uint8Array(arr)]
function arrayToHex(arr, reverse = false) {
return [...(reverse ? new Uint8Array(arr).reverse() : new Uint8Array(arr))]
.map(b => b.toString(16).padStart(2, "0"))

@@ -7,4 +7,3 @@ .join("");

export function toBigIntLE(buf) {
const reversed = buf.reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf, true);
if (hex.length === 0) {

@@ -83,4 +82,3 @@ return BigInt(0);

export function readUIntLE(buf, offset, width) {
const reversed = buf.slice(offset, offset + width).reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf.subarray(offset, offset + width), true);
if (hex.length === 0) {

@@ -87,0 +85,0 @@ return BigInt(0);

@@ -1,1 +0,1 @@

{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/bigint.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"bigint.js","sourceRoot":"","sources":["../../src/bigint.ts"],"names":[],"mappings":"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"}
{
"name": "@dao-xyz/borsh",
"version": "5.1.2",
"version": "5.1.3",
"readme": "README.md",

@@ -5,0 +5,0 @@ "homepage": "https://github.com/dao-xyz/borsh-ts#README",

@@ -254,2 +254,42 @@ import { BinaryReader, BinaryWriter } from "../binary.js";

test("byte array should deserialize zero-copy from Uint8array", () => {
class TestStruct {
@field({ type: fixedArray("u8", 3) })
public a: Uint8Array | number[];
constructor(properties?: { a: number[] }) {
if (properties) {
this.a = properties.a;
}
}
}
validate(TestStruct);
const buf = new Uint8Array(serialize(new TestStruct({ a: [1, 2, 3] })));
expect(new Uint8Array(buf)).toEqual(new Uint8Array([1, 2, 3]));
const deserialized = deserialize(buf, TestStruct);
deserialized.a[0] = 123;
expect(buf[0]).toEqual(123);
});
test("byte array should deserialize zero-copy from Buffer", () => {
class TestStruct {
@field({ type: fixedArray("u8", 3) })
public a: Uint8Array | number[];
constructor(properties?: { a: number[] }) {
if (properties) {
this.a = properties.a;
}
}
}
validate(TestStruct);
const buf = serialize(new TestStruct({ a: [1, 2, 3] }));
expect(new Uint8Array(buf)).toEqual(new Uint8Array([1, 2, 3]));
const deserialized = deserialize(buf, TestStruct);
deserialized.a[0] = 123;
expect(buf[0]).toEqual(123);
});
test("fixed array wrong length serialize", () => {

@@ -544,9 +584,35 @@ class TestStruct {

const buf = serialize(instance);
expect(new Uint8Array(buf)).toEqual(
new Uint8Array([123, ...new Array(31).fill(0)])
);
const serializedExpected = new Uint8Array([123, ...new Array(31).fill(0)]);
expect(new Uint8Array(buf)).toEqual(serializedExpected);
const deserialized = deserialize(buf, Struct);
expect(deserialized.a).toEqual(n);
// check that the original array has not been modified
expect(new Uint8Array(buf)).toEqual(serializedExpected);
});
test("u256 with Uin8array", () => {
class Struct {
@field({ type: "u256" })
public a: bigint;
constructor(a: bigint) {
this.a = a;
}
}
const n = BigInt(123);
const instance = new Struct(n);
const buf = new Uint8Array(serialize(instance));
const serializedExpected = new Uint8Array([123, ...new Array(31).fill(0)]);
expect(new Uint8Array(buf)).toEqual(serializedExpected);
const deserialized = deserialize(buf, Struct);
expect(deserialized.a).toEqual(n);
// check that the original array has not been modified
expect(new Uint8Array(buf)).toEqual(serializedExpected);
});
test("u512 is le", () => {

@@ -563,9 +629,31 @@ class Struct {

const buf = serialize(instance);
expect(new Uint8Array(buf)).toEqual(
new Uint8Array([3, ...new Array(63).fill(0)])
);
const serializedExpected = new Uint8Array([3, ...new Array(63).fill(0)]);
expect(new Uint8Array(buf)).toEqual(serializedExpected);
const deserialized = deserialize(buf, Struct);
expect(deserialized.a).toEqual(BigInt(3));
// check that the original array has not been modified
expect(new Uint8Array(buf)).toEqual(serializedExpected);
});
test("u512 with 8int8array", () => {
class Struct {
@field({ type: "u512" })
public a: bigint;
constructor(a: bigint) {
this.a = a;
}
}
const instance = new Struct(BigInt(3));
const buf = new Uint8Array(serialize(instance));
const serializedExpected = new Uint8Array([3, ...new Array(63).fill(0)]);
expect(new Uint8Array(buf)).toEqual(serializedExpected);
const deserialized = deserialize(buf, Struct);
expect(deserialized.a).toEqual(BigInt(3));
// check that the original array has not been modified
expect(new Uint8Array(buf)).toEqual(serializedExpected);
});
test("u512 max", () => {

@@ -572,0 +660,0 @@ class Struct {

@@ -1,3 +0,3 @@

function arrayToHex(arr: Uint8Array): string {
return [...new Uint8Array(arr)]
function arrayToHex(arr: Uint8Array, reverse: boolean = false): string {
return [...(reverse ? new Uint8Array(arr).reverse() : new Uint8Array(arr))]
.map(b => b.toString(16).padStart(2, "0"))

@@ -8,4 +8,3 @@ .join("");

export function toBigIntLE(buf: Uint8Array): bigint {
const reversed = buf.reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf, true);
if (hex.length === 0) {

@@ -95,4 +94,3 @@ return BigInt(0);

export function readUIntLE(buf: Uint8Array, offset: number, width: number): bigint {
const reversed = buf.slice(offset, offset + width).reverse();
const hex = arrayToHex(reversed);
const hex = arrayToHex(buf.subarray(offset, offset + width), true);
if (hex.length === 0) {

@@ -99,0 +97,0 @@ return BigInt(0);