From 99857bb35499da884579ed138e5baa6fe0600d27 Mon Sep 17 00:00:00 2001 From: Justin Enerio Date: Fri, 10 Jan 2025 23:52:28 +0800 Subject: [PATCH] feat: add support for commonJS (#13) --- README.md | 2 +- dist/index.cjs | 2092 ++++++++++++++++++++++++++++++++++++++++++++ dist/index.cjs.map | 1 + dist/index.d.ts | 34 +- dist/index.js | 1713 +++++++++++++++++++++++++++++++++++- dist/index.js.map | 2 +- package-lock.json | 764 +++++++++++++++- package.json | 25 +- rollup.config.js | 56 ++ test/cjs-test.cjs | 17 + test/esm-test.js | 17 + tsconfig.json | 4 +- 12 files changed, 4679 insertions(+), 48 deletions(-) create mode 100644 dist/index.cjs create mode 100644 dist/index.cjs.map create mode 100644 rollup.config.js create mode 100644 test/cjs-test.cjs create mode 100644 test/esm-test.js diff --git a/README.md b/README.md index a627147..0dcf569 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ ## Install SDK ``` -npm install https://github.com/espresso-cash/brij-partner-sdk-js +npm install brij-partner-sdk ``` ## Register your Partner's Public Key diff --git a/dist/index.cjs b/dist/index.cjs new file mode 100644 index 0000000..378f4fb --- /dev/null +++ b/dist/index.cjs @@ -0,0 +1,2092 @@ +'use strict'; + +var crypto = require('crypto'); +var jose = require('jose'); +var axios = require('axios'); +var nacl = require('tweetnacl'); +var base58 = require('bs58'); +var naclUtil = require('tweetnacl-util'); +var ed2curve = require('ed2curve'); + +// Copyright 2008 Google Inc. All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +// +// Code generated by the Protocol Buffer compiler is owned by the owner +// of the input file used when generating it. This code is not +// standalone and requires a support library to be linked with it. This +// support library is itself covered by the above license. +/* eslint-disable prefer-const,@typescript-eslint/restrict-plus-operands */ +/** + * Read a 64 bit varint as two JS numbers. + * + * Returns tuple: + * [0]: low bits + * [1]: high bits + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L175 + */ +function varint64read() { + let lowBits = 0; + let highBits = 0; + for (let shift = 0; shift < 28; shift += 7) { + let b = this.buf[this.pos++]; + lowBits |= (b & 0x7f) << shift; + if ((b & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + } + let middleByte = this.buf[this.pos++]; + // last four bits of the first 32 bit number + lowBits |= (middleByte & 0x0f) << 28; + // 3 upper bits are part of the next 32 bit number + highBits = (middleByte & 0x70) >> 4; + if ((middleByte & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + for (let shift = 3; shift <= 31; shift += 7) { + let b = this.buf[this.pos++]; + highBits |= (b & 0x7f) << shift; + if ((b & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + } + throw new Error("invalid varint"); +} +/** + * Write a 64 bit varint, given as two JS numbers, to the given bytes array. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/writer.js#L344 + */ +function varint64write(lo, hi, bytes) { + for (let i = 0; i < 28; i = i + 7) { + const shift = lo >>> i; + const hasNext = !(shift >>> 7 == 0 && hi == 0); + const byte = (hasNext ? shift | 0x80 : shift) & 0xff; + bytes.push(byte); + if (!hasNext) { + return; + } + } + const splitBits = ((lo >>> 28) & 0x0f) | ((hi & 0x07) << 4); + const hasMoreBits = !(hi >> 3 == 0); + bytes.push((hasMoreBits ? splitBits | 0x80 : splitBits) & 0xff); + if (!hasMoreBits) { + return; + } + for (let i = 3; i < 31; i = i + 7) { + const shift = hi >>> i; + const hasNext = !(shift >>> 7 == 0); + const byte = (hasNext ? shift | 0x80 : shift) & 0xff; + bytes.push(byte); + if (!hasNext) { + return; + } + } + bytes.push((hi >>> 31) & 0x01); +} +// constants for binary math +const TWO_PWR_32_DBL = 0x100000000; +/** + * Parse decimal string of 64 bit integer value as two JS numbers. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function int64FromString(dec) { + // Check for minus sign. + const minus = dec[0] === "-"; + if (minus) { + dec = dec.slice(1); + } + // Work 6 decimal digits at a time, acting like we're converting base 1e6 + // digits to binary. This is safe to do with floating point math because + // Number.isSafeInteger(ALL_32_BITS * 1e6) == true. + const base = 1e6; + let lowBits = 0; + let highBits = 0; + function add1e6digit(begin, end) { + // Note: Number('') is 0. + const digit1e6 = Number(dec.slice(begin, end)); + highBits *= base; + lowBits = lowBits * base + digit1e6; + // Carry bits from lowBits to + if (lowBits >= TWO_PWR_32_DBL) { + highBits = highBits + ((lowBits / TWO_PWR_32_DBL) | 0); + lowBits = lowBits % TWO_PWR_32_DBL; + } + } + add1e6digit(-24, -18); + add1e6digit(-18, -12); + add1e6digit(-12, -6); + add1e6digit(-6); + return minus ? negate(lowBits, highBits) : newBits(lowBits, highBits); +} +/** + * Losslessly converts a 64-bit signed integer in 32:32 split representation + * into a decimal string. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function int64ToString(lo, hi) { + let bits = newBits(lo, hi); + // If we're treating the input as a signed value and the high bit is set, do + // a manual two's complement conversion before the decimal conversion. + const negative = bits.hi & 0x80000000; + if (negative) { + bits = negate(bits.lo, bits.hi); + } + const result = uInt64ToString(bits.lo, bits.hi); + return negative ? "-" + result : result; +} +/** + * Losslessly converts a 64-bit unsigned integer in 32:32 split representation + * into a decimal string. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function uInt64ToString(lo, hi) { + ({ lo, hi } = toUnsigned(lo, hi)); + // Skip the expensive conversion if the number is small enough to use the + // built-in conversions. + // Number.MAX_SAFE_INTEGER = 0x001FFFFF FFFFFFFF, thus any number with + // highBits <= 0x1FFFFF can be safely expressed with a double and retain + // integer precision. + // Proven by: Number.isSafeInteger(0x1FFFFF * 2**32 + 0xFFFFFFFF) == true. + if (hi <= 0x1fffff) { + return String(TWO_PWR_32_DBL * hi + lo); + } + // What this code is doing is essentially converting the input number from + // base-2 to base-1e7, which allows us to represent the 64-bit range with + // only 3 (very large) digits. Those digits are then trivial to convert to + // a base-10 string. + // The magic numbers used here are - + // 2^24 = 16777216 = (1,6777216) in base-1e7. + // 2^48 = 281474976710656 = (2,8147497,6710656) in base-1e7. + // Split 32:32 representation into 16:24:24 representation so our + // intermediate digits don't overflow. + const low = lo & 0xffffff; + const mid = ((lo >>> 24) | (hi << 8)) & 0xffffff; + const high = (hi >> 16) & 0xffff; + // Assemble our three base-1e7 digits, ignoring carries. The maximum + // value in a digit at this step is representable as a 48-bit integer, which + // can be stored in a 64-bit floating point number. + let digitA = low + mid * 6777216 + high * 6710656; + let digitB = mid + high * 8147497; + let digitC = high * 2; + // Apply carries from A to B and from B to C. + const base = 10000000; + if (digitA >= base) { + digitB += Math.floor(digitA / base); + digitA %= base; + } + if (digitB >= base) { + digitC += Math.floor(digitB / base); + digitB %= base; + } + // If digitC is 0, then we should have returned in the trivial code path + // at the top for non-safe integers. Given this, we can assume both digitB + // and digitA need leading zeros. + return (digitC.toString() + + decimalFrom1e7WithLeadingZeros(digitB) + + decimalFrom1e7WithLeadingZeros(digitA)); +} +function toUnsigned(lo, hi) { + return { lo: lo >>> 0, hi: hi >>> 0 }; +} +function newBits(lo, hi) { + return { lo: lo | 0, hi: hi | 0 }; +} +/** + * Returns two's compliment negation of input. + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators#Signed_32-bit_integers + */ +function negate(lowBits, highBits) { + highBits = ~highBits; + if (lowBits) { + lowBits = ~lowBits + 1; + } + else { + // If lowBits is 0, then bitwise-not is 0xFFFFFFFF, + // adding 1 to that, results in 0x100000000, which leaves + // the low bits 0x0 and simply adds one to the high bits. + highBits += 1; + } + return newBits(lowBits, highBits); +} +/** + * Returns decimal representation of digit1e7 with leading zeros. + */ +const decimalFrom1e7WithLeadingZeros = (digit1e7) => { + const partial = String(digit1e7); + return "0000000".slice(partial.length) + partial; +}; +/** + * Write a 32 bit varint, signed or unsigned. Same as `varint64write(0, value, bytes)` + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/1b18833f4f2a2f681f4e4a25cdf3b0a43115ec26/js/binary/encoder.js#L144 + */ +function varint32write(value, bytes) { + if (value >= 0) { + // write value as varint 32 + while (value > 0x7f) { + bytes.push((value & 0x7f) | 0x80); + value = value >>> 7; + } + bytes.push(value); + } + else { + for (let i = 0; i < 9; i++) { + bytes.push((value & 127) | 128); + value = value >> 7; + } + bytes.push(1); + } +} +/** + * Read an unsigned 32 bit varint. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L220 + */ +function varint32read() { + let b = this.buf[this.pos++]; + let result = b & 0x7f; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 7; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 14; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 21; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + // Extract only last 4 bits + b = this.buf[this.pos++]; + result |= (b & 0x0f) << 28; + for (let readBytes = 5; (b & 0x80) !== 0 && readBytes < 10; readBytes++) + b = this.buf[this.pos++]; + if ((b & 0x80) != 0) + throw new Error("invalid varint"); + this.assertBounds(); + // Result can have 32 bits, convert it to unsigned + return result >>> 0; +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +/** + * Int64Support for the current environment. + */ +const protoInt64 = /*@__PURE__*/ makeInt64Support(); +function makeInt64Support() { + const dv = new DataView(new ArrayBuffer(8)); + // note that Safari 14 implements BigInt, but not the DataView methods + const ok = typeof BigInt === "function" && + typeof dv.getBigInt64 === "function" && + typeof dv.getBigUint64 === "function" && + typeof dv.setBigInt64 === "function" && + typeof dv.setBigUint64 === "function" && + (typeof process != "object" || + typeof process.env != "object" || + process.env.BUF_BIGINT_DISABLE !== "1"); + if (ok) { + const MIN = BigInt("-9223372036854775808"), MAX = BigInt("9223372036854775807"), UMIN = BigInt("0"), UMAX = BigInt("18446744073709551615"); + return { + zero: BigInt(0), + supported: true, + parse(value) { + const bi = typeof value == "bigint" ? value : BigInt(value); + if (bi > MAX || bi < MIN) { + throw new Error(`invalid int64: ${value}`); + } + return bi; + }, + uParse(value) { + const bi = typeof value == "bigint" ? value : BigInt(value); + if (bi > UMAX || bi < UMIN) { + throw new Error(`invalid uint64: ${value}`); + } + return bi; + }, + enc(value) { + dv.setBigInt64(0, this.parse(value), true); + return { + lo: dv.getInt32(0, true), + hi: dv.getInt32(4, true), + }; + }, + uEnc(value) { + dv.setBigInt64(0, this.uParse(value), true); + return { + lo: dv.getInt32(0, true), + hi: dv.getInt32(4, true), + }; + }, + dec(lo, hi) { + dv.setInt32(0, lo, true); + dv.setInt32(4, hi, true); + return dv.getBigInt64(0, true); + }, + uDec(lo, hi) { + dv.setInt32(0, lo, true); + dv.setInt32(4, hi, true); + return dv.getBigUint64(0, true); + }, + }; + } + return { + zero: "0", + supported: false, + parse(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertInt64String(value); + return value; + }, + uParse(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertUInt64String(value); + return value; + }, + enc(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertInt64String(value); + return int64FromString(value); + }, + uEnc(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertUInt64String(value); + return int64FromString(value); + }, + dec(lo, hi) { + return int64ToString(lo, hi); + }, + uDec(lo, hi) { + return uInt64ToString(lo, hi); + }, + }; +} +function assertInt64String(value) { + if (!/^-?[0-9]+$/.test(value)) { + throw new Error("invalid int64: " + value); + } +} +function assertUInt64String(value) { + if (!/^[0-9]+$/.test(value)) { + throw new Error("invalid uint64: " + value); + } +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +const symbol = Symbol.for("@bufbuild/protobuf/text-encoding"); +function getTextEncoding() { + if (globalThis[symbol] == undefined) { + const te = new globalThis.TextEncoder(); + const td = new globalThis.TextDecoder(); + globalThis[symbol] = { + encodeUtf8(text) { + return te.encode(text); + }, + decodeUtf8(bytes) { + return td.decode(bytes); + }, + checkUtf8(text) { + try { + encodeURIComponent(text); + return true; + } + catch (e) { + return false; + } + }, + }; + } + return globalThis[symbol]; +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +/* eslint-disable prefer-const,no-case-declarations,@typescript-eslint/restrict-plus-operands */ +/** + * Protobuf binary format wire types. + * + * A wire type provides just enough information to find the length of the + * following value. + * + * See https://developers.google.com/protocol-buffers/docs/encoding#structure + */ +var WireType; +(function (WireType) { + /** + * Used for int32, int64, uint32, uint64, sint32, sint64, bool, enum + */ + WireType[WireType["Varint"] = 0] = "Varint"; + /** + * Used for fixed64, sfixed64, double. + * Always 8 bytes with little-endian byte order. + */ + WireType[WireType["Bit64"] = 1] = "Bit64"; + /** + * Used for string, bytes, embedded messages, packed repeated fields + * + * Only repeated numeric types (types which use the varint, 32-bit, + * or 64-bit wire types) can be packed. In proto3, such fields are + * packed by default. + */ + WireType[WireType["LengthDelimited"] = 2] = "LengthDelimited"; + /** + * Start of a tag-delimited aggregate, such as a proto2 group, or a message + * in editions with message_encoding = DELIMITED. + */ + WireType[WireType["StartGroup"] = 3] = "StartGroup"; + /** + * End of a tag-delimited aggregate. + */ + WireType[WireType["EndGroup"] = 4] = "EndGroup"; + /** + * Used for fixed32, sfixed32, float. + * Always 4 bytes with little-endian byte order. + */ + WireType[WireType["Bit32"] = 5] = "Bit32"; +})(WireType || (WireType = {})); +/** + * Maximum value for a 32-bit floating point value (Protobuf FLOAT). + */ +const FLOAT32_MAX = 3.4028234663852886e38; +/** + * Minimum value for a 32-bit floating point value (Protobuf FLOAT). + */ +const FLOAT32_MIN = -34028234663852886e22; +/** + * Maximum value for an unsigned 32-bit integer (Protobuf UINT32, FIXED32). + */ +const UINT32_MAX = 0xffffffff; +/** + * Maximum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32). + */ +const INT32_MAX = 0x7fffffff; +/** + * Minimum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32). + */ +const INT32_MIN = -2147483648; +class BinaryWriter { + constructor(encodeUtf8 = getTextEncoding().encodeUtf8) { + this.encodeUtf8 = encodeUtf8; + /** + * Previous fork states. + */ + this.stack = []; + this.chunks = []; + this.buf = []; + } + /** + * Return all bytes written and reset this writer. + */ + finish() { + if (this.buf.length) { + this.chunks.push(new Uint8Array(this.buf)); // flush the buffer + this.buf = []; + } + let len = 0; + for (let i = 0; i < this.chunks.length; i++) + len += this.chunks[i].length; + let bytes = new Uint8Array(len); + let offset = 0; + for (let i = 0; i < this.chunks.length; i++) { + bytes.set(this.chunks[i], offset); + offset += this.chunks[i].length; + } + this.chunks = []; + return bytes; + } + /** + * Start a new fork for length-delimited data like a message + * or a packed repeated field. + * + * Must be joined later with `join()`. + */ + fork() { + this.stack.push({ chunks: this.chunks, buf: this.buf }); + this.chunks = []; + this.buf = []; + return this; + } + /** + * Join the last fork. Write its length and bytes, then + * return to the previous state. + */ + join() { + // get chunk of fork + let chunk = this.finish(); + // restore previous state + let prev = this.stack.pop(); + if (!prev) + throw new Error("invalid state, fork stack empty"); + this.chunks = prev.chunks; + this.buf = prev.buf; + // write length of chunk as varint + this.uint32(chunk.byteLength); + return this.raw(chunk); + } + /** + * Writes a tag (field number and wire type). + * + * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`. + * + * Generated code should compute the tag ahead of time and call `uint32()`. + */ + tag(fieldNo, type) { + return this.uint32(((fieldNo << 3) | type) >>> 0); + } + /** + * Write a chunk of raw bytes. + */ + raw(chunk) { + if (this.buf.length) { + this.chunks.push(new Uint8Array(this.buf)); + this.buf = []; + } + this.chunks.push(chunk); + return this; + } + /** + * Write a `uint32` value, an unsigned 32 bit varint. + */ + uint32(value) { + assertUInt32(value); + // write value as varint 32, inlined for speed + while (value > 0x7f) { + this.buf.push((value & 0x7f) | 0x80); + value = value >>> 7; + } + this.buf.push(value); + return this; + } + /** + * Write a `int32` value, a signed 32 bit varint. + */ + int32(value) { + assertInt32(value); + varint32write(value, this.buf); + return this; + } + /** + * Write a `bool` value, a variant. + */ + bool(value) { + this.buf.push(value ? 1 : 0); + return this; + } + /** + * Write a `bytes` value, length-delimited arbitrary data. + */ + bytes(value) { + this.uint32(value.byteLength); // write length of chunk as varint + return this.raw(value); + } + /** + * Write a `string` value, length-delimited data converted to UTF-8 text. + */ + string(value) { + let chunk = this.encodeUtf8(value); + this.uint32(chunk.byteLength); // write length of chunk as varint + return this.raw(chunk); + } + /** + * Write a `float` value, 32-bit floating point number. + */ + float(value) { + assertFloat32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setFloat32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `double` value, a 64-bit floating point number. + */ + double(value) { + let chunk = new Uint8Array(8); + new DataView(chunk.buffer).setFloat64(0, value, true); + return this.raw(chunk); + } + /** + * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer. + */ + fixed32(value) { + assertUInt32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setUint32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `sfixed32` value, a signed, fixed-length 32-bit integer. + */ + sfixed32(value) { + assertInt32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setInt32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint. + */ + sint32(value) { + assertInt32(value); + // zigzag encode + value = ((value << 1) ^ (value >> 31)) >>> 0; + varint32write(value, this.buf); + return this; + } + /** + * Write a `fixed64` value, a signed, fixed-length 64-bit integer. + */ + sfixed64(value) { + let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.enc(value); + view.setInt32(0, tc.lo, true); + view.setInt32(4, tc.hi, true); + return this.raw(chunk); + } + /** + * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer. + */ + fixed64(value) { + let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.uEnc(value); + view.setInt32(0, tc.lo, true); + view.setInt32(4, tc.hi, true); + return this.raw(chunk); + } + /** + * Write a `int64` value, a signed 64-bit varint. + */ + int64(value) { + let tc = protoInt64.enc(value); + varint64write(tc.lo, tc.hi, this.buf); + return this; + } + /** + * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint. + */ + sint64(value) { + let tc = protoInt64.enc(value), + // zigzag encode + sign = tc.hi >> 31, lo = (tc.lo << 1) ^ sign, hi = ((tc.hi << 1) | (tc.lo >>> 31)) ^ sign; + varint64write(lo, hi, this.buf); + return this; + } + /** + * Write a `uint64` value, an unsigned 64-bit varint. + */ + uint64(value) { + let tc = protoInt64.uEnc(value); + varint64write(tc.lo, tc.hi, this.buf); + return this; + } +} +class BinaryReader { + constructor(buf, decodeUtf8 = getTextEncoding().decodeUtf8) { + this.decodeUtf8 = decodeUtf8; + this.varint64 = varint64read; // dirty cast for `this` + /** + * Read a `uint32` field, an unsigned 32 bit varint. + */ + this.uint32 = varint32read; + this.buf = buf; + this.len = buf.length; + this.pos = 0; + this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength); + } + /** + * Reads a tag - field number and wire type. + */ + tag() { + let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7; + if (fieldNo <= 0 || wireType < 0 || wireType > 5) + throw new Error("illegal tag: field no " + fieldNo + " wire type " + wireType); + return [fieldNo, wireType]; + } + /** + * Skip one element and return the skipped data. + * + * When skipping StartGroup, provide the tags field number to check for + * matching field number in the EndGroup tag. + */ + skip(wireType, fieldNo) { + let start = this.pos; + switch (wireType) { + case WireType.Varint: + while (this.buf[this.pos++] & 0x80) { + // ignore + } + break; + // eslint-disable-next-line + // @ts-expect-error TS7029: Fallthrough case in switch + case WireType.Bit64: + this.pos += 4; + // eslint-disable-next-line no-fallthrough + case WireType.Bit32: + this.pos += 4; + break; + case WireType.LengthDelimited: + let len = this.uint32(); + this.pos += len; + break; + case WireType.StartGroup: + for (;;) { + const [fn, wt] = this.tag(); + if (wt === WireType.EndGroup) { + if (fieldNo !== undefined && fn !== fieldNo) { + throw new Error("invalid end group tag"); + } + break; + } + this.skip(wt, fn); + } + break; + default: + throw new Error("cant skip wire type " + wireType); + } + this.assertBounds(); + return this.buf.subarray(start, this.pos); + } + /** + * Throws error if position in byte array is out of range. + */ + assertBounds() { + if (this.pos > this.len) + throw new RangeError("premature EOF"); + } + /** + * Read a `int32` field, a signed 32 bit varint. + */ + int32() { + return this.uint32() | 0; + } + /** + * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint. + */ + sint32() { + let zze = this.uint32(); + // decode zigzag + return (zze >>> 1) ^ -(zze & 1); + } + /** + * Read a `int64` field, a signed 64-bit varint. + */ + int64() { + return protoInt64.dec(...this.varint64()); + } + /** + * Read a `uint64` field, an unsigned 64-bit varint. + */ + uint64() { + return protoInt64.uDec(...this.varint64()); + } + /** + * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint. + */ + sint64() { + let [lo, hi] = this.varint64(); + // decode zig zag + let s = -(lo & 1); + lo = ((lo >>> 1) | ((hi & 1) << 31)) ^ s; + hi = (hi >>> 1) ^ s; + return protoInt64.dec(lo, hi); + } + /** + * Read a `bool` field, a variant. + */ + bool() { + let [lo, hi] = this.varint64(); + return lo !== 0 || hi !== 0; + } + /** + * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer. + */ + fixed32() { + return this.view.getUint32((this.pos += 4) - 4, true); + } + /** + * Read a `sfixed32` field, a signed, fixed-length 32-bit integer. + */ + sfixed32() { + return this.view.getInt32((this.pos += 4) - 4, true); + } + /** + * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer. + */ + fixed64() { + return protoInt64.uDec(this.sfixed32(), this.sfixed32()); + } + /** + * Read a `fixed64` field, a signed, fixed-length 64-bit integer. + */ + sfixed64() { + return protoInt64.dec(this.sfixed32(), this.sfixed32()); + } + /** + * Read a `float` field, 32-bit floating point number. + */ + float() { + return this.view.getFloat32((this.pos += 4) - 4, true); + } + /** + * Read a `double` field, a 64-bit floating point number. + */ + double() { + return this.view.getFloat64((this.pos += 8) - 8, true); + } + /** + * Read a `bytes` field, length-delimited arbitrary data. + */ + bytes() { + let len = this.uint32(), start = this.pos; + this.pos += len; + this.assertBounds(); + return this.buf.subarray(start, start + len); + } + /** + * Read a `string` field, length-delimited data converted to UTF-8 text. + */ + string() { + return this.decodeUtf8(this.bytes()); + } +} +/** + * Assert a valid signed protobuf 32-bit integer as a number or string. + */ +function assertInt32(arg) { + if (typeof arg == "string") { + arg = Number(arg); + } + else if (typeof arg != "number") { + throw new Error("invalid int32: " + typeof arg); + } + if (!Number.isInteger(arg) || + arg > INT32_MAX || + arg < INT32_MIN) + throw new Error("invalid int32: " + arg); +} +/** + * Assert a valid unsigned protobuf 32-bit integer as a number or string. + */ +function assertUInt32(arg) { + if (typeof arg == "string") { + arg = Number(arg); + } + else if (typeof arg != "number") { + throw new Error("invalid uint32: " + typeof arg); + } + if (!Number.isInteger(arg) || + arg > UINT32_MAX || + arg < 0) + throw new Error("invalid uint32: " + arg); +} +/** + * Assert a valid protobuf float value as a number or string. + */ +function assertFloat32(arg) { + if (typeof arg == "string") { + const o = arg; + arg = Number(arg); + if (isNaN(arg) && o !== "NaN") { + throw new Error("invalid float32: " + o); + } + } + else if (typeof arg != "number") { + throw new Error("invalid float32: " + typeof arg); + } + if (Number.isFinite(arg) && + (arg > FLOAT32_MAX || arg < FLOAT32_MIN)) + throw new Error("invalid float32: " + arg); +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: google/protobuf/timestamp.proto +/* eslint-disable */ +function createBaseTimestamp() { + return { seconds: 0, nanos: 0 }; +} +const Timestamp = { + encode(message, writer = new BinaryWriter()) { + if (message.seconds !== 0) { + writer.uint32(8).int64(message.seconds); + } + if (message.nanos !== 0) { + writer.uint32(16).int32(message.nanos); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTimestamp(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; + } + message.seconds = longToNumber(reader.int64()); + continue; + } + case 2: { + if (tag !== 16) { + break; + } + message.nanos = reader.int32(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + seconds: isSet$1(object.seconds) ? globalThis.Number(object.seconds) : 0, + nanos: isSet$1(object.nanos) ? globalThis.Number(object.nanos) : 0, + }; + }, + toJSON(message) { + const obj = {}; + if (message.seconds !== 0) { + obj.seconds = Math.round(message.seconds); + } + if (message.nanos !== 0) { + obj.nanos = Math.round(message.nanos); + } + return obj; + }, + create(base) { + return Timestamp.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseTimestamp(); + message.seconds = object.seconds ?? 0; + message.nanos = object.nanos ?? 0; + return message; + }, +}; +function longToNumber(int64) { + const num = globalThis.Number(int64.toString()); + if (num > globalThis.Number.MAX_SAFE_INTEGER) { + throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); + } + if (num < globalThis.Number.MIN_SAFE_INTEGER) { + throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); + } + return num; +} +function isSet$1(value) { + return value !== null && value !== undefined; +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: protos/data.proto +/* eslint-disable */ +var DataType; +(function (DataType) { + DataType[DataType["DATA_TYPE_UNSPECIFIED"] = 0] = "DATA_TYPE_UNSPECIFIED"; + DataType[DataType["DATA_TYPE_PHONE"] = 1] = "DATA_TYPE_PHONE"; + DataType[DataType["DATA_TYPE_EMAIL"] = 2] = "DATA_TYPE_EMAIL"; + DataType[DataType["DATA_TYPE_NAME"] = 3] = "DATA_TYPE_NAME"; + DataType[DataType["DATA_TYPE_BIRTH_DATE"] = 4] = "DATA_TYPE_BIRTH_DATE"; + DataType[DataType["DATA_TYPE_DOCUMENT"] = 5] = "DATA_TYPE_DOCUMENT"; + DataType[DataType["DATA_TYPE_BANK_INFO"] = 6] = "DATA_TYPE_BANK_INFO"; + DataType[DataType["DATA_TYPE_SELFIE_IMAGE"] = 7] = "DATA_TYPE_SELFIE_IMAGE"; + DataType[DataType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(DataType || (DataType = {})); +function dataTypeFromJSON(object) { + switch (object) { + case 0: + case "DATA_TYPE_UNSPECIFIED": + return DataType.DATA_TYPE_UNSPECIFIED; + case 1: + case "DATA_TYPE_PHONE": + return DataType.DATA_TYPE_PHONE; + case 2: + case "DATA_TYPE_EMAIL": + return DataType.DATA_TYPE_EMAIL; + case 3: + case "DATA_TYPE_NAME": + return DataType.DATA_TYPE_NAME; + case 4: + case "DATA_TYPE_BIRTH_DATE": + return DataType.DATA_TYPE_BIRTH_DATE; + case 5: + case "DATA_TYPE_DOCUMENT": + return DataType.DATA_TYPE_DOCUMENT; + case 6: + case "DATA_TYPE_BANK_INFO": + return DataType.DATA_TYPE_BANK_INFO; + case 7: + case "DATA_TYPE_SELFIE_IMAGE": + return DataType.DATA_TYPE_SELFIE_IMAGE; + case -1: + case "UNRECOGNIZED": + default: + return DataType.UNRECOGNIZED; + } +} +var DocumentType; +(function (DocumentType) { + DocumentType[DocumentType["DOCUMENT_TYPE_UNSPECIFIED"] = 0] = "DOCUMENT_TYPE_UNSPECIFIED"; + DocumentType[DocumentType["DOCUMENT_TYPE_VOTER_ID"] = 1] = "DOCUMENT_TYPE_VOTER_ID"; + DocumentType[DocumentType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(DocumentType || (DocumentType = {})); +function documentTypeFromJSON(object) { + switch (object) { + case 0: + case "DOCUMENT_TYPE_UNSPECIFIED": + return DocumentType.DOCUMENT_TYPE_UNSPECIFIED; + case 1: + case "DOCUMENT_TYPE_VOTER_ID": + return DocumentType.DOCUMENT_TYPE_VOTER_ID; + case -1: + case "UNRECOGNIZED": + default: + return DocumentType.UNRECOGNIZED; + } +} +function documentTypeToJSON(object) { + switch (object) { + case DocumentType.DOCUMENT_TYPE_UNSPECIFIED: + return "DOCUMENT_TYPE_UNSPECIFIED"; + case DocumentType.DOCUMENT_TYPE_VOTER_ID: + return "DOCUMENT_TYPE_VOTER_ID"; + case DocumentType.UNRECOGNIZED: + default: + return "UNRECOGNIZED"; + } +} +function createBaseName() { + return { firstName: "", lastName: "" }; +} +const Name = { + encode(message, writer = new BinaryWriter()) { + if (message.firstName !== "") { + writer.uint32(10).string(message.firstName); + } + if (message.lastName !== "") { + writer.uint32(18).string(message.lastName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseName(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.firstName = reader.string(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.lastName = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + firstName: isSet(object.firstName) ? globalThis.String(object.firstName) : "", + lastName: isSet(object.lastName) ? globalThis.String(object.lastName) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.firstName !== "") { + obj.firstName = message.firstName; + } + if (message.lastName !== "") { + obj.lastName = message.lastName; + } + return obj; + }, + create(base) { + return Name.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseName(); + message.firstName = object.firstName ?? ""; + message.lastName = object.lastName ?? ""; + return message; + }, +}; +function createBaseBirthDate() { + return { value: undefined }; +} +const BirthDate = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== undefined) { + Timestamp.encode(toTimestamp(message.value), writer.uint32(10).fork()).join(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBirthDate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = fromTimestamp(Timestamp.decode(reader, reader.uint32())); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? fromJsonTimestamp(object.value) : undefined }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== undefined) { + obj.value = message.value.toISOString(); + } + return obj; + }, + create(base) { + return BirthDate.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseBirthDate(); + message.value = object.value ?? undefined; + return message; + }, +}; +function createBaseDocument() { + return { type: 0, number: "", countryCode: "" }; +} +const Document = { + encode(message, writer = new BinaryWriter()) { + if (message.type !== 0) { + writer.uint32(8).int32(message.type); + } + if (message.number !== "") { + writer.uint32(18).string(message.number); + } + if (message.countryCode !== "") { + writer.uint32(26).string(message.countryCode); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDocument(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; + } + message.type = reader.int32(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.number = reader.string(); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + message.countryCode = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + type: isSet(object.type) ? documentTypeFromJSON(object.type) : 0, + number: isSet(object.number) ? globalThis.String(object.number) : "", + countryCode: isSet(object.countryCode) ? globalThis.String(object.countryCode) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.type !== 0) { + obj.type = documentTypeToJSON(message.type); + } + if (message.number !== "") { + obj.number = message.number; + } + if (message.countryCode !== "") { + obj.countryCode = message.countryCode; + } + return obj; + }, + create(base) { + return Document.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseDocument(); + message.type = object.type ?? 0; + message.number = object.number ?? ""; + message.countryCode = object.countryCode ?? ""; + return message; + }, +}; +function createBaseBankInfo() { + return { accountNumber: "", bankCode: "", bankName: "" }; +} +const BankInfo = { + encode(message, writer = new BinaryWriter()) { + if (message.accountNumber !== "") { + writer.uint32(10).string(message.accountNumber); + } + if (message.bankCode !== "") { + writer.uint32(18).string(message.bankCode); + } + if (message.bankName !== "") { + writer.uint32(26).string(message.bankName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBankInfo(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.accountNumber = reader.string(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.bankCode = reader.string(); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + message.bankName = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + accountNumber: isSet(object.accountNumber) ? globalThis.String(object.accountNumber) : "", + bankCode: isSet(object.bankCode) ? globalThis.String(object.bankCode) : "", + bankName: isSet(object.bankName) ? globalThis.String(object.bankName) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.accountNumber !== "") { + obj.accountNumber = message.accountNumber; + } + if (message.bankCode !== "") { + obj.bankCode = message.bankCode; + } + if (message.bankName !== "") { + obj.bankName = message.bankName; + } + return obj; + }, + create(base) { + return BankInfo.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseBankInfo(); + message.accountNumber = object.accountNumber ?? ""; + message.bankCode = object.bankCode ?? ""; + message.bankName = object.bankName ?? ""; + return message; + }, +}; +function createBaseEmail() { + return { value: "" }; +} +const Email = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== "") { + writer.uint32(10).string(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseEmail(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? globalThis.String(object.value) : "" }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== "") { + obj.value = message.value; + } + return obj; + }, + create(base) { + return Email.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseEmail(); + message.value = object.value ?? ""; + return message; + }, +}; +function createBaseSelfieImage() { + return { value: new Uint8Array(0) }; +} +const SelfieImage = { + encode(message, writer = new BinaryWriter()) { + if (message.value.length !== 0) { + writer.uint32(10).bytes(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSelfieImage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.bytes(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? bytesFromBase64(object.value) : new Uint8Array(0) }; + }, + toJSON(message) { + const obj = {}; + if (message.value.length !== 0) { + obj.value = base64FromBytes(message.value); + } + return obj; + }, + create(base) { + return SelfieImage.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseSelfieImage(); + message.value = object.value ?? new Uint8Array(0); + return message; + }, +}; +function createBasePhone() { + return { value: "" }; +} +const Phone = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== "") { + writer.uint32(10).string(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBasePhone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? globalThis.String(object.value) : "" }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== "") { + obj.value = message.value; + } + return obj; + }, + create(base) { + return Phone.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBasePhone(); + message.value = object.value ?? ""; + return message; + }, +}; +function bytesFromBase64(b64) { + if (globalThis.Buffer) { + return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); + } + else { + const bin = globalThis.atob(b64); + const arr = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; ++i) { + arr[i] = bin.charCodeAt(i); + } + return arr; + } +} +function base64FromBytes(arr) { + if (globalThis.Buffer) { + return globalThis.Buffer.from(arr).toString("base64"); + } + else { + const bin = []; + arr.forEach((byte) => { + bin.push(globalThis.String.fromCharCode(byte)); + }); + return globalThis.btoa(bin.join("")); + } +} +function toTimestamp(date) { + const seconds = Math.trunc(date.getTime() / 1_000); + const nanos = (date.getTime() % 1_000) * 1_000_000; + return { seconds, nanos }; +} +function fromTimestamp(t) { + let millis = (t.seconds || 0) * 1_000; + millis += (t.nanos || 0) / 1_000_000; + return new globalThis.Date(millis); +} +function fromJsonTimestamp(o) { + if (o instanceof globalThis.Date) { + return o; + } + else if (typeof o === "string") { + return new globalThis.Date(o); + } + else { + return fromTimestamp(Timestamp.fromJSON(o)); + } +} +function isSet(value) { + return value !== null && value !== undefined; +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: protos/validation_status.proto +/* eslint-disable */ +var ValidationStatus; +(function (ValidationStatus) { + ValidationStatus[ValidationStatus["VALIDATION_STATUS_UNSPECIFIED"] = 0] = "VALIDATION_STATUS_UNSPECIFIED"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_PENDING"] = 1] = "VALIDATION_STATUS_PENDING"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_APPROVED"] = 2] = "VALIDATION_STATUS_APPROVED"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_REJECTED"] = 3] = "VALIDATION_STATUS_REJECTED"; + ValidationStatus[ValidationStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(ValidationStatus || (ValidationStatus = {})); +function validationStatusFromJSON(object) { + switch (object) { + case 0: + case "VALIDATION_STATUS_UNSPECIFIED": + return ValidationStatus.VALIDATION_STATUS_UNSPECIFIED; + case 1: + case "VALIDATION_STATUS_PENDING": + return ValidationStatus.VALIDATION_STATUS_PENDING; + case 2: + case "VALIDATION_STATUS_APPROVED": + return ValidationStatus.VALIDATION_STATUS_APPROVED; + case 3: + case "VALIDATION_STATUS_REJECTED": + return ValidationStatus.VALIDATION_STATUS_REJECTED; + case -1: + case "UNRECOGNIZED": + default: + return ValidationStatus.UNRECOGNIZED; + } +} + +class AppConfig { + storageBaseUrl; + orderBaseUrl; + constructor(storageBaseUrl, orderBaseUrl) { + this.storageBaseUrl = storageBaseUrl; + this.orderBaseUrl = orderBaseUrl; + } + static demo() { + return new AppConfig("https://storage-demo.brij.fi/", "https://orders-demo.brij.fi/"); + } + static production() { + return new AppConfig("https://storage.brij.fi/", "https://orders.brij.fi/"); + } + static custom(storageBaseUrl, orderBaseUrl) { + return new AppConfig(storageBaseUrl, orderBaseUrl); + } +} +exports.ValidationStatus = void 0; +(function (ValidationStatus) { + ValidationStatus["Unspecified"] = "UNSPECIFIED"; + ValidationStatus["Pending"] = "PENDING"; + ValidationStatus["Approved"] = "APPROVED"; + ValidationStatus["Rejected"] = "REJECTED"; + ValidationStatus["Unverified"] = "UNVERIFIED"; +})(exports.ValidationStatus || (exports.ValidationStatus = {})); +function toValidationStatus(protoStatus) { + switch (protoStatus) { + case ValidationStatus.VALIDATION_STATUS_UNSPECIFIED: + return exports.ValidationStatus.Unspecified; + case ValidationStatus.VALIDATION_STATUS_PENDING: + return exports.ValidationStatus.Pending; + case ValidationStatus.VALIDATION_STATUS_APPROVED: + return exports.ValidationStatus.Approved; + case ValidationStatus.VALIDATION_STATUS_REJECTED: + return exports.ValidationStatus.Rejected; + default: + return exports.ValidationStatus.Unspecified; + } +} +class BrijPartnerClient { + authKeyPair; + storageBaseUrl; + orderBaseUrl; + _authPublicKey; + _storageClient; + _orderClient; + constructor({ authKeyPair, appConfig = AppConfig.demo() }) { + this.authKeyPair = authKeyPair; + this.storageBaseUrl = appConfig.storageBaseUrl; + this.orderBaseUrl = appConfig.orderBaseUrl; + this._authPublicKey = ""; + this._storageClient = null; + this._orderClient = null; + } + static async generateKeyPair() { + const keyPair = nacl.sign.keyPair(); + return { + publicKey: base58.encode(keyPair.publicKey), + privateKey: base58.encode(keyPair.secretKey), + secretKey: base58.encode(keyPair.secretKey), + seed: base58.encode(keyPair.secretKey.slice(0, 32)), + getPublicKeyBytes: async () => keyPair.publicKey, + getPrivateKeyBytes: async () => keyPair.secretKey, + }; + } + static async fromSeed(seed, appConfig) { + const decoded = base58.decode(seed); + const authKeyPair = nacl.sign.keyPair.fromSeed(decoded); + const client = new BrijPartnerClient({ + authKeyPair: { + async getPrivateKeyBytes() { + return authKeyPair.secretKey; + }, + async getPublicKeyBytes() { + return authKeyPair.publicKey; + }, + }, + appConfig, + }); + await client.init(); + return client; + } + async init() { + await Promise.all([this.generateAuthToken()]); + } + async generateAuthToken() { + const [publicKeyBytes, privateKeyBytes] = await Promise.all([ + this.authKeyPair.getPublicKeyBytes(), + this.authKeyPair.getPrivateKeyBytes(), + ]); + this._authPublicKey = base58.encode(publicKeyBytes); + const storageToken = await this.createToken(privateKeyBytes, "storage.brij.fi"); + this._storageClient = axios.create({ + baseURL: this.storageBaseUrl, + headers: { Authorization: `Bearer ${storageToken}` }, + }); + const orderToken = await this.createToken(privateKeyBytes, "orders.espressocash.com"); + this._orderClient = axios.create({ + baseURL: this.orderBaseUrl, + headers: { Authorization: `Bearer ${orderToken}` }, + }); + } + async createToken(privateKeyBytes, audience) { + const header = { alg: "EdDSA", typ: "JWT" }; + const payload = { + iss: this._authPublicKey, + iat: Math.floor(Date.now() / 1000), + aud: audience, + }; + const encodedHeader = jose.base64url.encode(JSON.stringify(header)); + const encodedPayload = jose.base64url.encode(JSON.stringify(payload)); + const dataToSign = `${encodedHeader}.${encodedPayload}`; + const signature = nacl.sign.detached(new TextEncoder().encode(dataToSign), privateKeyBytes); + return `${dataToSign}.${jose.base64url.encode(signature)}`; + } + async getUserData({ userPK, secretKey, includeValues = true }) { + const response = await this._storageClient.post("/v1/getUserData", { + userPublicKey: userPK, + includeValues, + }); + const responseData = response.data; + const validationMap = new Map(responseData.validationData.map((data) => [ + data.dataId, + { + dataId: data.dataId, + hash: data.hash, + status: data.status, + }, + ])); + const userData = {}; + const secret = base58.decode(secretKey); + for (const encrypted of responseData.userData) { + const decryptedData = encrypted.encryptedValue?.trim() + ? await this.decryptData(naclUtil.decodeBase64(encrypted.encryptedValue), secret) + : new Uint8Array(0); + const dataId = encrypted.id; + const verificationData = validationMap.get(dataId); + const status = verificationData?.status ?? ValidationStatus.UNRECOGNIZED; + const commonFields = { dataId, status: toValidationStatus(validationStatusFromJSON(status)) }; + switch (dataTypeFromJSON(encrypted.type)) { + case DataType.DATA_TYPE_EMAIL: { + const data = Email.decode(decryptedData); + userData.email = { value: data.value, ...commonFields }; + break; + } + case DataType.DATA_TYPE_NAME: { + const data = Name.decode(decryptedData); + userData.name = { + firstName: data.firstName, + lastName: data.lastName, + ...commonFields, + }; + break; + } + case DataType.DATA_TYPE_BIRTH_DATE: { + const data = BirthDate.decode(decryptedData); + userData.birthDate = { value: new Date(data.value), ...commonFields }; + break; + } + case DataType.DATA_TYPE_PHONE: { + const data = Phone.decode(decryptedData); + userData.phone = { value: data.value, ...commonFields }; + break; + } + case DataType.DATA_TYPE_DOCUMENT: { + const data = Document.decode(decryptedData); + userData.document = { + type: documentTypeToJSON(data.type), + number: data.number, + countryCode: data.countryCode, + ...commonFields, + }; + break; + } + case DataType.DATA_TYPE_BANK_INFO: { + const data = BankInfo.decode(decryptedData); + userData.bankInfo = { + bankName: data.bankName, + accountNumber: data.accountNumber, + bankCode: data.bankCode, + ...commonFields, + }; + break; + } + case DataType.DATA_TYPE_SELFIE_IMAGE: { + const data = SelfieImage.decode(decryptedData); + userData.selfie = { value: data.value, ...commonFields }; + break; + } + } + } + userData.custom = Object.fromEntries(await Promise.all(responseData.customValidationData.map(async (data) => { + if (!data.encryptedValue) { + return [data.id, ""]; + } + const decryptedValue = await this.decryptData(naclUtil.decodeBase64(data.encryptedValue), secret); + return [data.id, new TextDecoder().decode(decryptedValue)]; + }))); + return userData; + } + async decryptOrderFields(order, secretKey) { + const decryptField = async (field) => { + if (!field) + return ""; + try { + const encryptedData = naclUtil.decodeBase64(field); + return new TextDecoder().decode(await this.decryptData(encryptedData, secretKey)); + } + catch { + return field; + } + }; + return { + ...order, + bankAccount: await decryptField(order.bankAccount), + bankName: await decryptField(order.bankName), + }; + } + async processOrder(order, secretKey) { + const decryptedOrder = await this.decryptOrderFields(order, secretKey); + if (order.userSignature) { + const userVerifyKey = base58.decode(order.userPublicKey); + const userMessage = order.type === "ON_RAMP" + ? this.createUserOnRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + }) + : this.createUserOffRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + bankName: decryptedOrder.bankName, + bankAccount: decryptedOrder.bankAccount, + }); + const isValidUserSig = nacl.sign.detached.verify(new TextEncoder().encode(userMessage), base58.decode(order.userSignature), userVerifyKey); + if (!isValidUserSig) { + throw new Error("Invalid user signature"); + } + } + if (order.partnerSignature) { + const partnerVerifyKey = base58.decode(order.partnerPublicKey); + const partnerMessage = order.type === "ON_RAMP" + ? this.createPartnerOnRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + bankName: decryptedOrder.bankName, + bankAccount: decryptedOrder.bankAccount, + }) + : this.createPartnerOffRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + cryptoWalletAddress: order.cryptoWalletAddress, + }); + const isValidPartnerSig = nacl.sign.detached.verify(new TextEncoder().encode(partnerMessage), base58.decode(order.partnerSignature), partnerVerifyKey); + if (!isValidPartnerSig) { + throw new Error("Invalid partner signature"); + } + } + return decryptedOrder; + } + async getOrder({ externalId, orderId }) { + const response = await this._orderClient.post("/v1/getOrder", { + orderId, + externalId, + }); + const secretKey = await this.getUserSecretKey(response.data.userPublicKey); + return this.processOrder(response.data, base58.decode(secretKey)); + } + async getPartnerOrders() { + const response = await this._orderClient.post("/v1/getPartnerOrders"); + return Promise.all(response.data.orders.map(async (order) => { + const secretKey = await this.getUserSecretKey(order.userPublicKey); + return this.processOrder(order, base58.decode(secretKey)); + })); + } + async acceptOnRampOrder({ orderId, bankName, bankAccount, externalId, userSecretKey, }) { + const key = base58.decode(userSecretKey); + const order = await this.getOrder({ orderId }); + const encryptField = (value) => { + const nonce = nacl.randomBytes(nacl.secretbox.nonceLength); + const ciphertext = nacl.secretbox(naclUtil.decodeUTF8(value), nonce, key); + return naclUtil.encodeBase64(new Uint8Array([...nonce, ...ciphertext])); + }; + const signatureMessage = this.createPartnerOnRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + bankName, + bankAccount, + }); + const privateKeyBytes = await this.authKeyPair.getPrivateKeyBytes(); + const signature = nacl.sign.detached(new TextEncoder().encode(signatureMessage), privateKeyBytes); + await this._orderClient.post("/v1/acceptOrder", { + orderId, + bankName: encryptField(bankName), + bankAccount: encryptField(bankAccount), + externalId, + partnerSignature: base58.encode(signature), + }); + } + async acceptOffRampOrder({ orderId, cryptoWalletAddress, externalId }) { + const order = await this.getOrder({ orderId }); + const signatureMessage = this.createPartnerOffRampMessage({ + cryptoAmount: order.cryptoAmount, + cryptoCurrency: order.cryptoCurrency, + fiatAmount: order.fiatAmount, + fiatCurrency: order.fiatCurrency, + cryptoWalletAddress, + }); + const privateKeyBytes = await this.authKeyPair.getPrivateKeyBytes(); + const signature = nacl.sign.detached(new TextEncoder().encode(signatureMessage), privateKeyBytes); + await this._orderClient.post("/v1/acceptOrder", { + orderId, + cryptoWalletAddress, + externalId, + partnerSignature: base58.encode(signature), + }); + } + async completeOnRampOrder({ orderId, transactionId, externalId }) { + await this._orderClient.post("/v1/completeOrder", { + orderId: orderId, + transactionId: transactionId, + externalId: externalId, + }); + } + async completeOffRampOrder({ orderId, externalId }) { + await this._orderClient.post("/v1/completeOrder", { + orderId: orderId, + externalId: externalId, + }); + } + async failOrder({ orderId, reason, externalId }) { + await this._orderClient.post("/v1/failOrder", { + orderId: orderId, + reason: reason, + externalId: externalId, + }); + } + async rejectOrder({ orderId, reason }) { + await this._orderClient.post("/v1/rejectOrder", { + orderId: orderId, + reason: reason, + }); + } + async getUserInfo(publicKey) { + const response = await this._storageClient.post("/v1/getInfo", { + publicKey: publicKey, + }); + return response.data; + } + async getUserSecretKey(publicKey) { + const info = await this.getUserInfo(publicKey); + const encryptedData = naclUtil.decodeBase64(info.encryptedSecretKey); + const privateKeyBytes = await this.authKeyPair.getPrivateKeyBytes(); + const x25519PrivateKey = ed2curve.convertSecretKey(privateKeyBytes); + const userPk = base58.decode(publicKey); + const x25519PublicKey = ed2curve.convertPublicKey(userPk); + const nonce = encryptedData.slice(0, nacl.box.nonceLength); + const ciphertext = encryptedData.slice(nacl.box.nonceLength); + const decryptedSecretKey = nacl.box.open(ciphertext, nonce, x25519PublicKey, x25519PrivateKey); + if (!decryptedSecretKey) { + throw new Error("Decryption failed"); + } + return base58.encode(decryptedSecretKey); + } + async decryptData(encryptedMessage, key) { + if (encryptedMessage.length < nacl.secretbox.nonceLength) { + throw new Error(`Encrypted message too short: ${encryptedMessage.length} bytes`); + } + const nonce = encryptedMessage.slice(0, nacl.secretbox.nonceLength); + const ciphertext = encryptedMessage.slice(nacl.secretbox.nonceLength); + const decrypted = nacl.secretbox.open(ciphertext, nonce, key); + if (!decrypted) { + throw new Error("Unable to decrypt data"); + } + return decrypted; + } + async generateHash(value) { + const serializedData = value.encode(value).finish(); //TODO double check + return crypto.createHash("sha256").update(Buffer.from(serializedData)).digest("hex"); + } + createUserOnRampMessage({ cryptoAmount, cryptoCurrency, fiatAmount, fiatCurrency, }) { + return `${cryptoAmount}|${cryptoCurrency}|${fiatAmount}|${fiatCurrency}`; + } + createUserOffRampMessage({ cryptoAmount, cryptoCurrency, fiatAmount, fiatCurrency, bankName, bankAccount, }) { + return `${cryptoAmount}|${cryptoCurrency}|${fiatAmount}|${fiatCurrency}|${bankName}|${bankAccount}`; + } + createPartnerOnRampMessage({ cryptoAmount, cryptoCurrency, fiatAmount, fiatCurrency, bankName, bankAccount, }) { + return `${cryptoAmount}|${cryptoCurrency}|${fiatAmount}|${fiatCurrency}|${bankName}|${bankAccount}`; + } + createPartnerOffRampMessage({ cryptoAmount, cryptoCurrency, fiatAmount, fiatCurrency, cryptoWalletAddress, }) { + return `${cryptoAmount}|${cryptoCurrency}|${fiatAmount}|${fiatCurrency}|${cryptoWalletAddress}`; + } +} + +exports.AppConfig = AppConfig; +exports.BrijPartnerClient = BrijPartnerClient; +//# sourceMappingURL=index.cjs.map diff --git a/dist/index.cjs.map b/dist/index.cjs.map new file mode 100644 index 0000000..2027b07 --- /dev/null +++ b/dist/index.cjs.map @@ -0,0 +1 @@ +{"version":3,"file":"index.cjs","sources":["../node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js","../node_modules/@bufbuild/protobuf/dist/esm/proto-int64.js","../node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js","../node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js","../src/generated/google/protobuf/timestamp.ts","../src/generated/protos/data.ts","../src/generated/protos/validation_status.ts","../src/index.ts"],"sourcesContent":["// Copyright 2008 Google Inc. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n// Code generated by the Protocol Buffer compiler is owned by the owner\n// of the input file used when generating it. This code is not\n// standalone and requires a support library to be linked with it. This\n// support library is itself covered by the above license.\n/* eslint-disable prefer-const,@typescript-eslint/restrict-plus-operands */\n/**\n * Read a 64 bit varint as two JS numbers.\n *\n * Returns tuple:\n * [0]: low bits\n * [1]: high bits\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L175\n */\nexport function varint64read() {\n let lowBits = 0;\n let highBits = 0;\n for (let shift = 0; shift < 28; shift += 7) {\n let b = this.buf[this.pos++];\n lowBits |= (b & 0x7f) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n let middleByte = this.buf[this.pos++];\n // last four bits of the first 32 bit number\n lowBits |= (middleByte & 0x0f) << 28;\n // 3 upper bits are part of the next 32 bit number\n highBits = (middleByte & 0x70) >> 4;\n if ((middleByte & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n for (let shift = 3; shift <= 31; shift += 7) {\n let b = this.buf[this.pos++];\n highBits |= (b & 0x7f) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n throw new Error(\"invalid varint\");\n}\n/**\n * Write a 64 bit varint, given as two JS numbers, to the given bytes array.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/writer.js#L344\n */\nexport function varint64write(lo, hi, bytes) {\n for (let i = 0; i < 28; i = i + 7) {\n const shift = lo >>> i;\n const hasNext = !(shift >>> 7 == 0 && hi == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xff;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n const splitBits = ((lo >>> 28) & 0x0f) | ((hi & 0x07) << 4);\n const hasMoreBits = !(hi >> 3 == 0);\n bytes.push((hasMoreBits ? splitBits | 0x80 : splitBits) & 0xff);\n if (!hasMoreBits) {\n return;\n }\n for (let i = 3; i < 31; i = i + 7) {\n const shift = hi >>> i;\n const hasNext = !(shift >>> 7 == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xff;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n bytes.push((hi >>> 31) & 0x01);\n}\n// constants for binary math\nconst TWO_PWR_32_DBL = 0x100000000;\n/**\n * Parse decimal string of 64 bit integer value as two JS numbers.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function int64FromString(dec) {\n // Check for minus sign.\n const minus = dec[0] === \"-\";\n if (minus) {\n dec = dec.slice(1);\n }\n // Work 6 decimal digits at a time, acting like we're converting base 1e6\n // digits to binary. This is safe to do with floating point math because\n // Number.isSafeInteger(ALL_32_BITS * 1e6) == true.\n const base = 1e6;\n let lowBits = 0;\n let highBits = 0;\n function add1e6digit(begin, end) {\n // Note: Number('') is 0.\n const digit1e6 = Number(dec.slice(begin, end));\n highBits *= base;\n lowBits = lowBits * base + digit1e6;\n // Carry bits from lowBits to\n if (lowBits >= TWO_PWR_32_DBL) {\n highBits = highBits + ((lowBits / TWO_PWR_32_DBL) | 0);\n lowBits = lowBits % TWO_PWR_32_DBL;\n }\n }\n add1e6digit(-24, -18);\n add1e6digit(-18, -12);\n add1e6digit(-12, -6);\n add1e6digit(-6);\n return minus ? negate(lowBits, highBits) : newBits(lowBits, highBits);\n}\n/**\n * Losslessly converts a 64-bit signed integer in 32:32 split representation\n * into a decimal string.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function int64ToString(lo, hi) {\n let bits = newBits(lo, hi);\n // If we're treating the input as a signed value and the high bit is set, do\n // a manual two's complement conversion before the decimal conversion.\n const negative = bits.hi & 0x80000000;\n if (negative) {\n bits = negate(bits.lo, bits.hi);\n }\n const result = uInt64ToString(bits.lo, bits.hi);\n return negative ? \"-\" + result : result;\n}\n/**\n * Losslessly converts a 64-bit unsigned integer in 32:32 split representation\n * into a decimal string.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function uInt64ToString(lo, hi) {\n ({ lo, hi } = toUnsigned(lo, hi));\n // Skip the expensive conversion if the number is small enough to use the\n // built-in conversions.\n // Number.MAX_SAFE_INTEGER = 0x001FFFFF FFFFFFFF, thus any number with\n // highBits <= 0x1FFFFF can be safely expressed with a double and retain\n // integer precision.\n // Proven by: Number.isSafeInteger(0x1FFFFF * 2**32 + 0xFFFFFFFF) == true.\n if (hi <= 0x1fffff) {\n return String(TWO_PWR_32_DBL * hi + lo);\n }\n // What this code is doing is essentially converting the input number from\n // base-2 to base-1e7, which allows us to represent the 64-bit range with\n // only 3 (very large) digits. Those digits are then trivial to convert to\n // a base-10 string.\n // The magic numbers used here are -\n // 2^24 = 16777216 = (1,6777216) in base-1e7.\n // 2^48 = 281474976710656 = (2,8147497,6710656) in base-1e7.\n // Split 32:32 representation into 16:24:24 representation so our\n // intermediate digits don't overflow.\n const low = lo & 0xffffff;\n const mid = ((lo >>> 24) | (hi << 8)) & 0xffffff;\n const high = (hi >> 16) & 0xffff;\n // Assemble our three base-1e7 digits, ignoring carries. The maximum\n // value in a digit at this step is representable as a 48-bit integer, which\n // can be stored in a 64-bit floating point number.\n let digitA = low + mid * 6777216 + high * 6710656;\n let digitB = mid + high * 8147497;\n let digitC = high * 2;\n // Apply carries from A to B and from B to C.\n const base = 10000000;\n if (digitA >= base) {\n digitB += Math.floor(digitA / base);\n digitA %= base;\n }\n if (digitB >= base) {\n digitC += Math.floor(digitB / base);\n digitB %= base;\n }\n // If digitC is 0, then we should have returned in the trivial code path\n // at the top for non-safe integers. Given this, we can assume both digitB\n // and digitA need leading zeros.\n return (digitC.toString() +\n decimalFrom1e7WithLeadingZeros(digitB) +\n decimalFrom1e7WithLeadingZeros(digitA));\n}\nfunction toUnsigned(lo, hi) {\n return { lo: lo >>> 0, hi: hi >>> 0 };\n}\nfunction newBits(lo, hi) {\n return { lo: lo | 0, hi: hi | 0 };\n}\n/**\n * Returns two's compliment negation of input.\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators#Signed_32-bit_integers\n */\nfunction negate(lowBits, highBits) {\n highBits = ~highBits;\n if (lowBits) {\n lowBits = ~lowBits + 1;\n }\n else {\n // If lowBits is 0, then bitwise-not is 0xFFFFFFFF,\n // adding 1 to that, results in 0x100000000, which leaves\n // the low bits 0x0 and simply adds one to the high bits.\n highBits += 1;\n }\n return newBits(lowBits, highBits);\n}\n/**\n * Returns decimal representation of digit1e7 with leading zeros.\n */\nconst decimalFrom1e7WithLeadingZeros = (digit1e7) => {\n const partial = String(digit1e7);\n return \"0000000\".slice(partial.length) + partial;\n};\n/**\n * Write a 32 bit varint, signed or unsigned. Same as `varint64write(0, value, bytes)`\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/1b18833f4f2a2f681f4e4a25cdf3b0a43115ec26/js/binary/encoder.js#L144\n */\nexport function varint32write(value, bytes) {\n if (value >= 0) {\n // write value as varint 32\n while (value > 0x7f) {\n bytes.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n bytes.push(value);\n }\n else {\n for (let i = 0; i < 9; i++) {\n bytes.push((value & 127) | 128);\n value = value >> 7;\n }\n bytes.push(1);\n }\n}\n/**\n * Read an unsigned 32 bit varint.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L220\n */\nexport function varint32read() {\n let b = this.buf[this.pos++];\n let result = b & 0x7f;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 7;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 14;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 21;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n // Extract only last 4 bits\n b = this.buf[this.pos++];\n result |= (b & 0x0f) << 28;\n for (let readBytes = 5; (b & 0x80) !== 0 && readBytes < 10; readBytes++)\n b = this.buf[this.pos++];\n if ((b & 0x80) != 0)\n throw new Error(\"invalid varint\");\n this.assertBounds();\n // Result can have 32 bits, convert it to unsigned\n return result >>> 0;\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { int64FromString, int64ToString, uInt64ToString, } from \"./wire/varint.js\";\n/**\n * Int64Support for the current environment.\n */\nexport const protoInt64 = /*@__PURE__*/ makeInt64Support();\nfunction makeInt64Support() {\n const dv = new DataView(new ArrayBuffer(8));\n // note that Safari 14 implements BigInt, but not the DataView methods\n const ok = typeof BigInt === \"function\" &&\n typeof dv.getBigInt64 === \"function\" &&\n typeof dv.getBigUint64 === \"function\" &&\n typeof dv.setBigInt64 === \"function\" &&\n typeof dv.setBigUint64 === \"function\" &&\n (typeof process != \"object\" ||\n typeof process.env != \"object\" ||\n process.env.BUF_BIGINT_DISABLE !== \"1\");\n if (ok) {\n const MIN = BigInt(\"-9223372036854775808\"), MAX = BigInt(\"9223372036854775807\"), UMIN = BigInt(\"0\"), UMAX = BigInt(\"18446744073709551615\");\n return {\n zero: BigInt(0),\n supported: true,\n parse(value) {\n const bi = typeof value == \"bigint\" ? value : BigInt(value);\n if (bi > MAX || bi < MIN) {\n throw new Error(`invalid int64: ${value}`);\n }\n return bi;\n },\n uParse(value) {\n const bi = typeof value == \"bigint\" ? value : BigInt(value);\n if (bi > UMAX || bi < UMIN) {\n throw new Error(`invalid uint64: ${value}`);\n }\n return bi;\n },\n enc(value) {\n dv.setBigInt64(0, this.parse(value), true);\n return {\n lo: dv.getInt32(0, true),\n hi: dv.getInt32(4, true),\n };\n },\n uEnc(value) {\n dv.setBigInt64(0, this.uParse(value), true);\n return {\n lo: dv.getInt32(0, true),\n hi: dv.getInt32(4, true),\n };\n },\n dec(lo, hi) {\n dv.setInt32(0, lo, true);\n dv.setInt32(4, hi, true);\n return dv.getBigInt64(0, true);\n },\n uDec(lo, hi) {\n dv.setInt32(0, lo, true);\n dv.setInt32(4, hi, true);\n return dv.getBigUint64(0, true);\n },\n };\n }\n return {\n zero: \"0\",\n supported: false,\n parse(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertInt64String(value);\n return value;\n },\n uParse(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertUInt64String(value);\n return value;\n },\n enc(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertInt64String(value);\n return int64FromString(value);\n },\n uEnc(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertUInt64String(value);\n return int64FromString(value);\n },\n dec(lo, hi) {\n return int64ToString(lo, hi);\n },\n uDec(lo, hi) {\n return uInt64ToString(lo, hi);\n },\n };\n}\nfunction assertInt64String(value) {\n if (!/^-?[0-9]+$/.test(value)) {\n throw new Error(\"invalid int64: \" + value);\n }\n}\nfunction assertUInt64String(value) {\n if (!/^[0-9]+$/.test(value)) {\n throw new Error(\"invalid uint64: \" + value);\n }\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nconst symbol = Symbol.for(\"@bufbuild/protobuf/text-encoding\");\n/**\n * Protobuf-ES requires the Text Encoding API to convert UTF-8 from and to\n * binary. This WHATWG API is widely available, but it is not part of the\n * ECMAScript standard. On runtimes where it is not available, use this\n * function to provide your own implementation.\n *\n * Note that the Text Encoding API does not provide a way to validate UTF-8.\n * Our implementation falls back to use encodeURIComponent().\n */\nexport function configureTextEncoding(textEncoding) {\n globalThis[symbol] = textEncoding;\n}\nexport function getTextEncoding() {\n if (globalThis[symbol] == undefined) {\n const te = new globalThis.TextEncoder();\n const td = new globalThis.TextDecoder();\n globalThis[symbol] = {\n encodeUtf8(text) {\n return te.encode(text);\n },\n decodeUtf8(bytes) {\n return td.decode(bytes);\n },\n checkUtf8(text) {\n try {\n encodeURIComponent(text);\n return true;\n }\n catch (e) {\n return false;\n }\n },\n };\n }\n return globalThis[symbol];\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { varint32read, varint32write, varint64read, varint64write, } from \"./varint.js\";\nimport { protoInt64 } from \"../proto-int64.js\";\nimport { getTextEncoding } from \"./text-encoding.js\";\n/* eslint-disable prefer-const,no-case-declarations,@typescript-eslint/restrict-plus-operands */\n/**\n * Protobuf binary format wire types.\n *\n * A wire type provides just enough information to find the length of the\n * following value.\n *\n * See https://developers.google.com/protocol-buffers/docs/encoding#structure\n */\nexport var WireType;\n(function (WireType) {\n /**\n * Used for int32, int64, uint32, uint64, sint32, sint64, bool, enum\n */\n WireType[WireType[\"Varint\"] = 0] = \"Varint\";\n /**\n * Used for fixed64, sfixed64, double.\n * Always 8 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit64\"] = 1] = \"Bit64\";\n /**\n * Used for string, bytes, embedded messages, packed repeated fields\n *\n * Only repeated numeric types (types which use the varint, 32-bit,\n * or 64-bit wire types) can be packed. In proto3, such fields are\n * packed by default.\n */\n WireType[WireType[\"LengthDelimited\"] = 2] = \"LengthDelimited\";\n /**\n * Start of a tag-delimited aggregate, such as a proto2 group, or a message\n * in editions with message_encoding = DELIMITED.\n */\n WireType[WireType[\"StartGroup\"] = 3] = \"StartGroup\";\n /**\n * End of a tag-delimited aggregate.\n */\n WireType[WireType[\"EndGroup\"] = 4] = \"EndGroup\";\n /**\n * Used for fixed32, sfixed32, float.\n * Always 4 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit32\"] = 5] = \"Bit32\";\n})(WireType || (WireType = {}));\n/**\n * Maximum value for a 32-bit floating point value (Protobuf FLOAT).\n */\nexport const FLOAT32_MAX = 3.4028234663852886e38;\n/**\n * Minimum value for a 32-bit floating point value (Protobuf FLOAT).\n */\nexport const FLOAT32_MIN = -3.4028234663852886e38;\n/**\n * Maximum value for an unsigned 32-bit integer (Protobuf UINT32, FIXED32).\n */\nexport const UINT32_MAX = 0xffffffff;\n/**\n * Maximum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32).\n */\nexport const INT32_MAX = 0x7fffffff;\n/**\n * Minimum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32).\n */\nexport const INT32_MIN = -0x80000000;\nexport class BinaryWriter {\n constructor(encodeUtf8 = getTextEncoding().encodeUtf8) {\n this.encodeUtf8 = encodeUtf8;\n /**\n * Previous fork states.\n */\n this.stack = [];\n this.chunks = [];\n this.buf = [];\n }\n /**\n * Return all bytes written and reset this writer.\n */\n finish() {\n if (this.buf.length) {\n this.chunks.push(new Uint8Array(this.buf)); // flush the buffer\n this.buf = [];\n }\n let len = 0;\n for (let i = 0; i < this.chunks.length; i++)\n len += this.chunks[i].length;\n let bytes = new Uint8Array(len);\n let offset = 0;\n for (let i = 0; i < this.chunks.length; i++) {\n bytes.set(this.chunks[i], offset);\n offset += this.chunks[i].length;\n }\n this.chunks = [];\n return bytes;\n }\n /**\n * Start a new fork for length-delimited data like a message\n * or a packed repeated field.\n *\n * Must be joined later with `join()`.\n */\n fork() {\n this.stack.push({ chunks: this.chunks, buf: this.buf });\n this.chunks = [];\n this.buf = [];\n return this;\n }\n /**\n * Join the last fork. Write its length and bytes, then\n * return to the previous state.\n */\n join() {\n // get chunk of fork\n let chunk = this.finish();\n // restore previous state\n let prev = this.stack.pop();\n if (!prev)\n throw new Error(\"invalid state, fork stack empty\");\n this.chunks = prev.chunks;\n this.buf = prev.buf;\n // write length of chunk as varint\n this.uint32(chunk.byteLength);\n return this.raw(chunk);\n }\n /**\n * Writes a tag (field number and wire type).\n *\n * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`.\n *\n * Generated code should compute the tag ahead of time and call `uint32()`.\n */\n tag(fieldNo, type) {\n return this.uint32(((fieldNo << 3) | type) >>> 0);\n }\n /**\n * Write a chunk of raw bytes.\n */\n raw(chunk) {\n if (this.buf.length) {\n this.chunks.push(new Uint8Array(this.buf));\n this.buf = [];\n }\n this.chunks.push(chunk);\n return this;\n }\n /**\n * Write a `uint32` value, an unsigned 32 bit varint.\n */\n uint32(value) {\n assertUInt32(value);\n // write value as varint 32, inlined for speed\n while (value > 0x7f) {\n this.buf.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n this.buf.push(value);\n return this;\n }\n /**\n * Write a `int32` value, a signed 32 bit varint.\n */\n int32(value) {\n assertInt32(value);\n varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `bool` value, a variant.\n */\n bool(value) {\n this.buf.push(value ? 1 : 0);\n return this;\n }\n /**\n * Write a `bytes` value, length-delimited arbitrary data.\n */\n bytes(value) {\n this.uint32(value.byteLength); // write length of chunk as varint\n return this.raw(value);\n }\n /**\n * Write a `string` value, length-delimited data converted to UTF-8 text.\n */\n string(value) {\n let chunk = this.encodeUtf8(value);\n this.uint32(chunk.byteLength); // write length of chunk as varint\n return this.raw(chunk);\n }\n /**\n * Write a `float` value, 32-bit floating point number.\n */\n float(value) {\n assertFloat32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setFloat32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `double` value, a 64-bit floating point number.\n */\n double(value) {\n let chunk = new Uint8Array(8);\n new DataView(chunk.buffer).setFloat64(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer.\n */\n fixed32(value) {\n assertUInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setUint32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sfixed32` value, a signed, fixed-length 32-bit integer.\n */\n sfixed32(value) {\n assertInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setInt32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint.\n */\n sint32(value) {\n assertInt32(value);\n // zigzag encode\n value = ((value << 1) ^ (value >> 31)) >>> 0;\n varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `fixed64` value, a signed, fixed-length 64-bit integer.\n */\n sfixed64(value) {\n let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.enc(value);\n view.setInt32(0, tc.lo, true);\n view.setInt32(4, tc.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer.\n */\n fixed64(value) {\n let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.uEnc(value);\n view.setInt32(0, tc.lo, true);\n view.setInt32(4, tc.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `int64` value, a signed 64-bit varint.\n */\n int64(value) {\n let tc = protoInt64.enc(value);\n varint64write(tc.lo, tc.hi, this.buf);\n return this;\n }\n /**\n * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64(value) {\n let tc = protoInt64.enc(value), \n // zigzag encode\n sign = tc.hi >> 31, lo = (tc.lo << 1) ^ sign, hi = ((tc.hi << 1) | (tc.lo >>> 31)) ^ sign;\n varint64write(lo, hi, this.buf);\n return this;\n }\n /**\n * Write a `uint64` value, an unsigned 64-bit varint.\n */\n uint64(value) {\n let tc = protoInt64.uEnc(value);\n varint64write(tc.lo, tc.hi, this.buf);\n return this;\n }\n}\nexport class BinaryReader {\n constructor(buf, decodeUtf8 = getTextEncoding().decodeUtf8) {\n this.decodeUtf8 = decodeUtf8;\n this.varint64 = varint64read; // dirty cast for `this`\n /**\n * Read a `uint32` field, an unsigned 32 bit varint.\n */\n this.uint32 = varint32read;\n this.buf = buf;\n this.len = buf.length;\n this.pos = 0;\n this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);\n }\n /**\n * Reads a tag - field number and wire type.\n */\n tag() {\n let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7;\n if (fieldNo <= 0 || wireType < 0 || wireType > 5)\n throw new Error(\"illegal tag: field no \" + fieldNo + \" wire type \" + wireType);\n return [fieldNo, wireType];\n }\n /**\n * Skip one element and return the skipped data.\n *\n * When skipping StartGroup, provide the tags field number to check for\n * matching field number in the EndGroup tag.\n */\n skip(wireType, fieldNo) {\n let start = this.pos;\n switch (wireType) {\n case WireType.Varint:\n while (this.buf[this.pos++] & 0x80) {\n // ignore\n }\n break;\n // eslint-disable-next-line\n // @ts-expect-error TS7029: Fallthrough case in switch\n case WireType.Bit64:\n this.pos += 4;\n // eslint-disable-next-line no-fallthrough\n case WireType.Bit32:\n this.pos += 4;\n break;\n case WireType.LengthDelimited:\n let len = this.uint32();\n this.pos += len;\n break;\n case WireType.StartGroup:\n for (;;) {\n const [fn, wt] = this.tag();\n if (wt === WireType.EndGroup) {\n if (fieldNo !== undefined && fn !== fieldNo) {\n throw new Error(\"invalid end group tag\");\n }\n break;\n }\n this.skip(wt, fn);\n }\n break;\n default:\n throw new Error(\"cant skip wire type \" + wireType);\n }\n this.assertBounds();\n return this.buf.subarray(start, this.pos);\n }\n /**\n * Throws error if position in byte array is out of range.\n */\n assertBounds() {\n if (this.pos > this.len)\n throw new RangeError(\"premature EOF\");\n }\n /**\n * Read a `int32` field, a signed 32 bit varint.\n */\n int32() {\n return this.uint32() | 0;\n }\n /**\n * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint.\n */\n sint32() {\n let zze = this.uint32();\n // decode zigzag\n return (zze >>> 1) ^ -(zze & 1);\n }\n /**\n * Read a `int64` field, a signed 64-bit varint.\n */\n int64() {\n return protoInt64.dec(...this.varint64());\n }\n /**\n * Read a `uint64` field, an unsigned 64-bit varint.\n */\n uint64() {\n return protoInt64.uDec(...this.varint64());\n }\n /**\n * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64() {\n let [lo, hi] = this.varint64();\n // decode zig zag\n let s = -(lo & 1);\n lo = ((lo >>> 1) | ((hi & 1) << 31)) ^ s;\n hi = (hi >>> 1) ^ s;\n return protoInt64.dec(lo, hi);\n }\n /**\n * Read a `bool` field, a variant.\n */\n bool() {\n let [lo, hi] = this.varint64();\n return lo !== 0 || hi !== 0;\n }\n /**\n * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer.\n */\n fixed32() {\n return this.view.getUint32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `sfixed32` field, a signed, fixed-length 32-bit integer.\n */\n sfixed32() {\n return this.view.getInt32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer.\n */\n fixed64() {\n return protoInt64.uDec(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `fixed64` field, a signed, fixed-length 64-bit integer.\n */\n sfixed64() {\n return protoInt64.dec(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `float` field, 32-bit floating point number.\n */\n float() {\n return this.view.getFloat32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `double` field, a 64-bit floating point number.\n */\n double() {\n return this.view.getFloat64((this.pos += 8) - 8, true);\n }\n /**\n * Read a `bytes` field, length-delimited arbitrary data.\n */\n bytes() {\n let len = this.uint32(), start = this.pos;\n this.pos += len;\n this.assertBounds();\n return this.buf.subarray(start, start + len);\n }\n /**\n * Read a `string` field, length-delimited data converted to UTF-8 text.\n */\n string() {\n return this.decodeUtf8(this.bytes());\n }\n}\n/**\n * Assert a valid signed protobuf 32-bit integer as a number or string.\n */\nfunction assertInt32(arg) {\n if (typeof arg == \"string\") {\n arg = Number(arg);\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid int32: \" + typeof arg);\n }\n if (!Number.isInteger(arg) ||\n arg > INT32_MAX ||\n arg < INT32_MIN)\n throw new Error(\"invalid int32: \" + arg);\n}\n/**\n * Assert a valid unsigned protobuf 32-bit integer as a number or string.\n */\nfunction assertUInt32(arg) {\n if (typeof arg == \"string\") {\n arg = Number(arg);\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid uint32: \" + typeof arg);\n }\n if (!Number.isInteger(arg) ||\n arg > UINT32_MAX ||\n arg < 0)\n throw new Error(\"invalid uint32: \" + arg);\n}\n/**\n * Assert a valid protobuf float value as a number or string.\n */\nfunction assertFloat32(arg) {\n if (typeof arg == \"string\") {\n const o = arg;\n arg = Number(arg);\n if (isNaN(arg) && o !== \"NaN\") {\n throw new Error(\"invalid float32: \" + o);\n }\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid float32: \" + typeof arg);\n }\n if (Number.isFinite(arg) &&\n (arg > FLOAT32_MAX || arg < FLOAT32_MIN))\n throw new Error(\"invalid float32: \" + arg);\n}\n",null,null,null,null],"names":["isSet","ValidationStatus","ProtoValidationStatus","base64url","createHash"],"mappings":"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","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file diff --git a/dist/index.d.ts b/dist/index.d.ts index d55e172..f41f234 100644 --- a/dist/index.d.ts +++ b/dist/index.d.ts @@ -1,4 +1,4 @@ -export declare class AppConfig { +declare class AppConfig { readonly storageBaseUrl: string; readonly orderBaseUrl: string; private constructor(); @@ -6,47 +6,47 @@ export declare class AppConfig { static production(): AppConfig; static custom(storageBaseUrl: string, orderBaseUrl: string): AppConfig; } -export type OrderIds = { +type OrderIds = { orderId: string; externalId?: ""; } | { orderId?: ""; externalId: string; }; -export type CompleteOnRampOrderParams = OrderIds & { +type CompleteOnRampOrderParams = OrderIds & { transactionId: string; }; -export type FailOrderParams = OrderIds & { +type FailOrderParams = OrderIds & { reason: string; }; -export type AcceptOnRampOrderParams = { +type AcceptOnRampOrderParams = { orderId: string; bankName: string; bankAccount: string; externalId?: string; }; -export type AcceptOffRampOrderParams = { +type AcceptOffRampOrderParams = { orderId: string; cryptoWalletAddress: string; externalId?: string; }; -export type RejectOrderParams = { +type RejectOrderParams = { orderId: string; reason: string; }; -export type DataAccessParams = { +type DataAccessParams = { userPK: string; secretKey: string; includeValues?: boolean; }; -export type UserDataField = { +type UserDataField = { dataId: string; status: ValidationStatus; }; -export type UserDataValueField = { +type UserDataValueField = { value: T; } & UserDataField; -export type UserData = { +type UserData = { email?: UserDataValueField; phone?: UserDataValueField; name?: { @@ -67,14 +67,14 @@ export type UserData = { selfie?: UserDataValueField; custom?: Record; }; -export declare enum ValidationStatus { +declare enum ValidationStatus { Unspecified = "UNSPECIFIED", Pending = "PENDING", Approved = "APPROVED", Rejected = "REJECTED", Unverified = "UNVERIFIED" } -export type Order = { +type Order = { orderId: string; externalId?: string; created: string; @@ -95,7 +95,7 @@ export type Order = { userSignature?: string; partnerSignature?: string; }; -export declare class BrijPartnerClient { +declare class BrijPartnerClient { private authKeyPair; private readonly storageBaseUrl; private readonly orderBaseUrl; @@ -108,8 +108,8 @@ export declare class BrijPartnerClient { privateKey: string; secretKey: string; seed: string; - getPublicKeyBytes: () => Promise; - getPrivateKeyBytes: () => Promise; + getPublicKeyBytes: () => Promise>; + getPrivateKeyBytes: () => Promise>; }>; static fromSeed(seed: string, appConfig?: AppConfig): Promise; private init; @@ -137,3 +137,5 @@ export declare class BrijPartnerClient { private createPartnerOnRampMessage; private createPartnerOffRampMessage; } + +export { type AcceptOffRampOrderParams, type AcceptOnRampOrderParams, AppConfig, BrijPartnerClient, type CompleteOnRampOrderParams, type DataAccessParams, type FailOrderParams, type Order, type OrderIds, type RejectOrderParams, type UserData, type UserDataField, type UserDataValueField, ValidationStatus }; diff --git a/dist/index.js b/dist/index.js index 7eab66f..1dd978e 100644 --- a/dist/index.js +++ b/dist/index.js @@ -1,13 +1,1688 @@ -import { createHash } from "crypto"; -import { base64url } from "jose"; -import axios from "axios"; -import nacl from "tweetnacl"; -import base58 from "bs58"; -import naclUtil from "tweetnacl-util"; -import ed2curve from "ed2curve"; -import { documentTypeToJSON, dataTypeFromJSON, DataType, Email, Phone, Name, BirthDate, Document, BankInfo, SelfieImage, } from "./generated/protos/data.js"; -import { ValidationStatus as ProtoValidationStatus, validationStatusFromJSON } from "./generated/protos/validation_status.js"; -export class AppConfig { +import { createHash } from 'crypto'; +import { base64url } from 'jose'; +import axios from 'axios'; +import nacl from 'tweetnacl'; +import base58 from 'bs58'; +import naclUtil from 'tweetnacl-util'; +import ed2curve from 'ed2curve'; + +// Copyright 2008 Google Inc. All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +// +// Code generated by the Protocol Buffer compiler is owned by the owner +// of the input file used when generating it. This code is not +// standalone and requires a support library to be linked with it. This +// support library is itself covered by the above license. +/* eslint-disable prefer-const,@typescript-eslint/restrict-plus-operands */ +/** + * Read a 64 bit varint as two JS numbers. + * + * Returns tuple: + * [0]: low bits + * [1]: high bits + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L175 + */ +function varint64read() { + let lowBits = 0; + let highBits = 0; + for (let shift = 0; shift < 28; shift += 7) { + let b = this.buf[this.pos++]; + lowBits |= (b & 0x7f) << shift; + if ((b & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + } + let middleByte = this.buf[this.pos++]; + // last four bits of the first 32 bit number + lowBits |= (middleByte & 0x0f) << 28; + // 3 upper bits are part of the next 32 bit number + highBits = (middleByte & 0x70) >> 4; + if ((middleByte & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + for (let shift = 3; shift <= 31; shift += 7) { + let b = this.buf[this.pos++]; + highBits |= (b & 0x7f) << shift; + if ((b & 0x80) == 0) { + this.assertBounds(); + return [lowBits, highBits]; + } + } + throw new Error("invalid varint"); +} +/** + * Write a 64 bit varint, given as two JS numbers, to the given bytes array. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/writer.js#L344 + */ +function varint64write(lo, hi, bytes) { + for (let i = 0; i < 28; i = i + 7) { + const shift = lo >>> i; + const hasNext = !(shift >>> 7 == 0 && hi == 0); + const byte = (hasNext ? shift | 0x80 : shift) & 0xff; + bytes.push(byte); + if (!hasNext) { + return; + } + } + const splitBits = ((lo >>> 28) & 0x0f) | ((hi & 0x07) << 4); + const hasMoreBits = !(hi >> 3 == 0); + bytes.push((hasMoreBits ? splitBits | 0x80 : splitBits) & 0xff); + if (!hasMoreBits) { + return; + } + for (let i = 3; i < 31; i = i + 7) { + const shift = hi >>> i; + const hasNext = !(shift >>> 7 == 0); + const byte = (hasNext ? shift | 0x80 : shift) & 0xff; + bytes.push(byte); + if (!hasNext) { + return; + } + } + bytes.push((hi >>> 31) & 0x01); +} +// constants for binary math +const TWO_PWR_32_DBL = 0x100000000; +/** + * Parse decimal string of 64 bit integer value as two JS numbers. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function int64FromString(dec) { + // Check for minus sign. + const minus = dec[0] === "-"; + if (minus) { + dec = dec.slice(1); + } + // Work 6 decimal digits at a time, acting like we're converting base 1e6 + // digits to binary. This is safe to do with floating point math because + // Number.isSafeInteger(ALL_32_BITS * 1e6) == true. + const base = 1e6; + let lowBits = 0; + let highBits = 0; + function add1e6digit(begin, end) { + // Note: Number('') is 0. + const digit1e6 = Number(dec.slice(begin, end)); + highBits *= base; + lowBits = lowBits * base + digit1e6; + // Carry bits from lowBits to + if (lowBits >= TWO_PWR_32_DBL) { + highBits = highBits + ((lowBits / TWO_PWR_32_DBL) | 0); + lowBits = lowBits % TWO_PWR_32_DBL; + } + } + add1e6digit(-24, -18); + add1e6digit(-18, -12); + add1e6digit(-12, -6); + add1e6digit(-6); + return minus ? negate(lowBits, highBits) : newBits(lowBits, highBits); +} +/** + * Losslessly converts a 64-bit signed integer in 32:32 split representation + * into a decimal string. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function int64ToString(lo, hi) { + let bits = newBits(lo, hi); + // If we're treating the input as a signed value and the high bit is set, do + // a manual two's complement conversion before the decimal conversion. + const negative = bits.hi & 0x80000000; + if (negative) { + bits = negate(bits.lo, bits.hi); + } + const result = uInt64ToString(bits.lo, bits.hi); + return negative ? "-" + result : result; +} +/** + * Losslessly converts a 64-bit unsigned integer in 32:32 split representation + * into a decimal string. + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10 + */ +function uInt64ToString(lo, hi) { + ({ lo, hi } = toUnsigned(lo, hi)); + // Skip the expensive conversion if the number is small enough to use the + // built-in conversions. + // Number.MAX_SAFE_INTEGER = 0x001FFFFF FFFFFFFF, thus any number with + // highBits <= 0x1FFFFF can be safely expressed with a double and retain + // integer precision. + // Proven by: Number.isSafeInteger(0x1FFFFF * 2**32 + 0xFFFFFFFF) == true. + if (hi <= 0x1fffff) { + return String(TWO_PWR_32_DBL * hi + lo); + } + // What this code is doing is essentially converting the input number from + // base-2 to base-1e7, which allows us to represent the 64-bit range with + // only 3 (very large) digits. Those digits are then trivial to convert to + // a base-10 string. + // The magic numbers used here are - + // 2^24 = 16777216 = (1,6777216) in base-1e7. + // 2^48 = 281474976710656 = (2,8147497,6710656) in base-1e7. + // Split 32:32 representation into 16:24:24 representation so our + // intermediate digits don't overflow. + const low = lo & 0xffffff; + const mid = ((lo >>> 24) | (hi << 8)) & 0xffffff; + const high = (hi >> 16) & 0xffff; + // Assemble our three base-1e7 digits, ignoring carries. The maximum + // value in a digit at this step is representable as a 48-bit integer, which + // can be stored in a 64-bit floating point number. + let digitA = low + mid * 6777216 + high * 6710656; + let digitB = mid + high * 8147497; + let digitC = high * 2; + // Apply carries from A to B and from B to C. + const base = 10000000; + if (digitA >= base) { + digitB += Math.floor(digitA / base); + digitA %= base; + } + if (digitB >= base) { + digitC += Math.floor(digitB / base); + digitB %= base; + } + // If digitC is 0, then we should have returned in the trivial code path + // at the top for non-safe integers. Given this, we can assume both digitB + // and digitA need leading zeros. + return (digitC.toString() + + decimalFrom1e7WithLeadingZeros(digitB) + + decimalFrom1e7WithLeadingZeros(digitA)); +} +function toUnsigned(lo, hi) { + return { lo: lo >>> 0, hi: hi >>> 0 }; +} +function newBits(lo, hi) { + return { lo: lo | 0, hi: hi | 0 }; +} +/** + * Returns two's compliment negation of input. + * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators#Signed_32-bit_integers + */ +function negate(lowBits, highBits) { + highBits = ~highBits; + if (lowBits) { + lowBits = ~lowBits + 1; + } + else { + // If lowBits is 0, then bitwise-not is 0xFFFFFFFF, + // adding 1 to that, results in 0x100000000, which leaves + // the low bits 0x0 and simply adds one to the high bits. + highBits += 1; + } + return newBits(lowBits, highBits); +} +/** + * Returns decimal representation of digit1e7 with leading zeros. + */ +const decimalFrom1e7WithLeadingZeros = (digit1e7) => { + const partial = String(digit1e7); + return "0000000".slice(partial.length) + partial; +}; +/** + * Write a 32 bit varint, signed or unsigned. Same as `varint64write(0, value, bytes)` + * + * Copyright 2008 Google Inc. All rights reserved. + * + * See https://github.com/protocolbuffers/protobuf/blob/1b18833f4f2a2f681f4e4a25cdf3b0a43115ec26/js/binary/encoder.js#L144 + */ +function varint32write(value, bytes) { + if (value >= 0) { + // write value as varint 32 + while (value > 0x7f) { + bytes.push((value & 0x7f) | 0x80); + value = value >>> 7; + } + bytes.push(value); + } + else { + for (let i = 0; i < 9; i++) { + bytes.push((value & 127) | 128); + value = value >> 7; + } + bytes.push(1); + } +} +/** + * Read an unsigned 32 bit varint. + * + * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L220 + */ +function varint32read() { + let b = this.buf[this.pos++]; + let result = b & 0x7f; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 7; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 14; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + b = this.buf[this.pos++]; + result |= (b & 0x7f) << 21; + if ((b & 0x80) == 0) { + this.assertBounds(); + return result; + } + // Extract only last 4 bits + b = this.buf[this.pos++]; + result |= (b & 0x0f) << 28; + for (let readBytes = 5; (b & 0x80) !== 0 && readBytes < 10; readBytes++) + b = this.buf[this.pos++]; + if ((b & 0x80) != 0) + throw new Error("invalid varint"); + this.assertBounds(); + // Result can have 32 bits, convert it to unsigned + return result >>> 0; +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +/** + * Int64Support for the current environment. + */ +const protoInt64 = /*@__PURE__*/ makeInt64Support(); +function makeInt64Support() { + const dv = new DataView(new ArrayBuffer(8)); + // note that Safari 14 implements BigInt, but not the DataView methods + const ok = typeof BigInt === "function" && + typeof dv.getBigInt64 === "function" && + typeof dv.getBigUint64 === "function" && + typeof dv.setBigInt64 === "function" && + typeof dv.setBigUint64 === "function" && + (typeof process != "object" || + typeof process.env != "object" || + process.env.BUF_BIGINT_DISABLE !== "1"); + if (ok) { + const MIN = BigInt("-9223372036854775808"), MAX = BigInt("9223372036854775807"), UMIN = BigInt("0"), UMAX = BigInt("18446744073709551615"); + return { + zero: BigInt(0), + supported: true, + parse(value) { + const bi = typeof value == "bigint" ? value : BigInt(value); + if (bi > MAX || bi < MIN) { + throw new Error(`invalid int64: ${value}`); + } + return bi; + }, + uParse(value) { + const bi = typeof value == "bigint" ? value : BigInt(value); + if (bi > UMAX || bi < UMIN) { + throw new Error(`invalid uint64: ${value}`); + } + return bi; + }, + enc(value) { + dv.setBigInt64(0, this.parse(value), true); + return { + lo: dv.getInt32(0, true), + hi: dv.getInt32(4, true), + }; + }, + uEnc(value) { + dv.setBigInt64(0, this.uParse(value), true); + return { + lo: dv.getInt32(0, true), + hi: dv.getInt32(4, true), + }; + }, + dec(lo, hi) { + dv.setInt32(0, lo, true); + dv.setInt32(4, hi, true); + return dv.getBigInt64(0, true); + }, + uDec(lo, hi) { + dv.setInt32(0, lo, true); + dv.setInt32(4, hi, true); + return dv.getBigUint64(0, true); + }, + }; + } + return { + zero: "0", + supported: false, + parse(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertInt64String(value); + return value; + }, + uParse(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertUInt64String(value); + return value; + }, + enc(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertInt64String(value); + return int64FromString(value); + }, + uEnc(value) { + if (typeof value != "string") { + value = value.toString(); + } + assertUInt64String(value); + return int64FromString(value); + }, + dec(lo, hi) { + return int64ToString(lo, hi); + }, + uDec(lo, hi) { + return uInt64ToString(lo, hi); + }, + }; +} +function assertInt64String(value) { + if (!/^-?[0-9]+$/.test(value)) { + throw new Error("invalid int64: " + value); + } +} +function assertUInt64String(value) { + if (!/^[0-9]+$/.test(value)) { + throw new Error("invalid uint64: " + value); + } +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +const symbol = Symbol.for("@bufbuild/protobuf/text-encoding"); +function getTextEncoding() { + if (globalThis[symbol] == undefined) { + const te = new globalThis.TextEncoder(); + const td = new globalThis.TextDecoder(); + globalThis[symbol] = { + encodeUtf8(text) { + return te.encode(text); + }, + decodeUtf8(bytes) { + return td.decode(bytes); + }, + checkUtf8(text) { + try { + encodeURIComponent(text); + return true; + } + catch (e) { + return false; + } + }, + }; + } + return globalThis[symbol]; +} + +// Copyright 2021-2024 Buf Technologies, Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +/* eslint-disable prefer-const,no-case-declarations,@typescript-eslint/restrict-plus-operands */ +/** + * Protobuf binary format wire types. + * + * A wire type provides just enough information to find the length of the + * following value. + * + * See https://developers.google.com/protocol-buffers/docs/encoding#structure + */ +var WireType; +(function (WireType) { + /** + * Used for int32, int64, uint32, uint64, sint32, sint64, bool, enum + */ + WireType[WireType["Varint"] = 0] = "Varint"; + /** + * Used for fixed64, sfixed64, double. + * Always 8 bytes with little-endian byte order. + */ + WireType[WireType["Bit64"] = 1] = "Bit64"; + /** + * Used for string, bytes, embedded messages, packed repeated fields + * + * Only repeated numeric types (types which use the varint, 32-bit, + * or 64-bit wire types) can be packed. In proto3, such fields are + * packed by default. + */ + WireType[WireType["LengthDelimited"] = 2] = "LengthDelimited"; + /** + * Start of a tag-delimited aggregate, such as a proto2 group, or a message + * in editions with message_encoding = DELIMITED. + */ + WireType[WireType["StartGroup"] = 3] = "StartGroup"; + /** + * End of a tag-delimited aggregate. + */ + WireType[WireType["EndGroup"] = 4] = "EndGroup"; + /** + * Used for fixed32, sfixed32, float. + * Always 4 bytes with little-endian byte order. + */ + WireType[WireType["Bit32"] = 5] = "Bit32"; +})(WireType || (WireType = {})); +/** + * Maximum value for a 32-bit floating point value (Protobuf FLOAT). + */ +const FLOAT32_MAX = 3.4028234663852886e38; +/** + * Minimum value for a 32-bit floating point value (Protobuf FLOAT). + */ +const FLOAT32_MIN = -34028234663852886e22; +/** + * Maximum value for an unsigned 32-bit integer (Protobuf UINT32, FIXED32). + */ +const UINT32_MAX = 0xffffffff; +/** + * Maximum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32). + */ +const INT32_MAX = 0x7fffffff; +/** + * Minimum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32). + */ +const INT32_MIN = -2147483648; +class BinaryWriter { + constructor(encodeUtf8 = getTextEncoding().encodeUtf8) { + this.encodeUtf8 = encodeUtf8; + /** + * Previous fork states. + */ + this.stack = []; + this.chunks = []; + this.buf = []; + } + /** + * Return all bytes written and reset this writer. + */ + finish() { + if (this.buf.length) { + this.chunks.push(new Uint8Array(this.buf)); // flush the buffer + this.buf = []; + } + let len = 0; + for (let i = 0; i < this.chunks.length; i++) + len += this.chunks[i].length; + let bytes = new Uint8Array(len); + let offset = 0; + for (let i = 0; i < this.chunks.length; i++) { + bytes.set(this.chunks[i], offset); + offset += this.chunks[i].length; + } + this.chunks = []; + return bytes; + } + /** + * Start a new fork for length-delimited data like a message + * or a packed repeated field. + * + * Must be joined later with `join()`. + */ + fork() { + this.stack.push({ chunks: this.chunks, buf: this.buf }); + this.chunks = []; + this.buf = []; + return this; + } + /** + * Join the last fork. Write its length and bytes, then + * return to the previous state. + */ + join() { + // get chunk of fork + let chunk = this.finish(); + // restore previous state + let prev = this.stack.pop(); + if (!prev) + throw new Error("invalid state, fork stack empty"); + this.chunks = prev.chunks; + this.buf = prev.buf; + // write length of chunk as varint + this.uint32(chunk.byteLength); + return this.raw(chunk); + } + /** + * Writes a tag (field number and wire type). + * + * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`. + * + * Generated code should compute the tag ahead of time and call `uint32()`. + */ + tag(fieldNo, type) { + return this.uint32(((fieldNo << 3) | type) >>> 0); + } + /** + * Write a chunk of raw bytes. + */ + raw(chunk) { + if (this.buf.length) { + this.chunks.push(new Uint8Array(this.buf)); + this.buf = []; + } + this.chunks.push(chunk); + return this; + } + /** + * Write a `uint32` value, an unsigned 32 bit varint. + */ + uint32(value) { + assertUInt32(value); + // write value as varint 32, inlined for speed + while (value > 0x7f) { + this.buf.push((value & 0x7f) | 0x80); + value = value >>> 7; + } + this.buf.push(value); + return this; + } + /** + * Write a `int32` value, a signed 32 bit varint. + */ + int32(value) { + assertInt32(value); + varint32write(value, this.buf); + return this; + } + /** + * Write a `bool` value, a variant. + */ + bool(value) { + this.buf.push(value ? 1 : 0); + return this; + } + /** + * Write a `bytes` value, length-delimited arbitrary data. + */ + bytes(value) { + this.uint32(value.byteLength); // write length of chunk as varint + return this.raw(value); + } + /** + * Write a `string` value, length-delimited data converted to UTF-8 text. + */ + string(value) { + let chunk = this.encodeUtf8(value); + this.uint32(chunk.byteLength); // write length of chunk as varint + return this.raw(chunk); + } + /** + * Write a `float` value, 32-bit floating point number. + */ + float(value) { + assertFloat32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setFloat32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `double` value, a 64-bit floating point number. + */ + double(value) { + let chunk = new Uint8Array(8); + new DataView(chunk.buffer).setFloat64(0, value, true); + return this.raw(chunk); + } + /** + * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer. + */ + fixed32(value) { + assertUInt32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setUint32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `sfixed32` value, a signed, fixed-length 32-bit integer. + */ + sfixed32(value) { + assertInt32(value); + let chunk = new Uint8Array(4); + new DataView(chunk.buffer).setInt32(0, value, true); + return this.raw(chunk); + } + /** + * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint. + */ + sint32(value) { + assertInt32(value); + // zigzag encode + value = ((value << 1) ^ (value >> 31)) >>> 0; + varint32write(value, this.buf); + return this; + } + /** + * Write a `fixed64` value, a signed, fixed-length 64-bit integer. + */ + sfixed64(value) { + let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.enc(value); + view.setInt32(0, tc.lo, true); + view.setInt32(4, tc.hi, true); + return this.raw(chunk); + } + /** + * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer. + */ + fixed64(value) { + let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.uEnc(value); + view.setInt32(0, tc.lo, true); + view.setInt32(4, tc.hi, true); + return this.raw(chunk); + } + /** + * Write a `int64` value, a signed 64-bit varint. + */ + int64(value) { + let tc = protoInt64.enc(value); + varint64write(tc.lo, tc.hi, this.buf); + return this; + } + /** + * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint. + */ + sint64(value) { + let tc = protoInt64.enc(value), + // zigzag encode + sign = tc.hi >> 31, lo = (tc.lo << 1) ^ sign, hi = ((tc.hi << 1) | (tc.lo >>> 31)) ^ sign; + varint64write(lo, hi, this.buf); + return this; + } + /** + * Write a `uint64` value, an unsigned 64-bit varint. + */ + uint64(value) { + let tc = protoInt64.uEnc(value); + varint64write(tc.lo, tc.hi, this.buf); + return this; + } +} +class BinaryReader { + constructor(buf, decodeUtf8 = getTextEncoding().decodeUtf8) { + this.decodeUtf8 = decodeUtf8; + this.varint64 = varint64read; // dirty cast for `this` + /** + * Read a `uint32` field, an unsigned 32 bit varint. + */ + this.uint32 = varint32read; + this.buf = buf; + this.len = buf.length; + this.pos = 0; + this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength); + } + /** + * Reads a tag - field number and wire type. + */ + tag() { + let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7; + if (fieldNo <= 0 || wireType < 0 || wireType > 5) + throw new Error("illegal tag: field no " + fieldNo + " wire type " + wireType); + return [fieldNo, wireType]; + } + /** + * Skip one element and return the skipped data. + * + * When skipping StartGroup, provide the tags field number to check for + * matching field number in the EndGroup tag. + */ + skip(wireType, fieldNo) { + let start = this.pos; + switch (wireType) { + case WireType.Varint: + while (this.buf[this.pos++] & 0x80) { + // ignore + } + break; + // eslint-disable-next-line + // @ts-expect-error TS7029: Fallthrough case in switch + case WireType.Bit64: + this.pos += 4; + // eslint-disable-next-line no-fallthrough + case WireType.Bit32: + this.pos += 4; + break; + case WireType.LengthDelimited: + let len = this.uint32(); + this.pos += len; + break; + case WireType.StartGroup: + for (;;) { + const [fn, wt] = this.tag(); + if (wt === WireType.EndGroup) { + if (fieldNo !== undefined && fn !== fieldNo) { + throw new Error("invalid end group tag"); + } + break; + } + this.skip(wt, fn); + } + break; + default: + throw new Error("cant skip wire type " + wireType); + } + this.assertBounds(); + return this.buf.subarray(start, this.pos); + } + /** + * Throws error if position in byte array is out of range. + */ + assertBounds() { + if (this.pos > this.len) + throw new RangeError("premature EOF"); + } + /** + * Read a `int32` field, a signed 32 bit varint. + */ + int32() { + return this.uint32() | 0; + } + /** + * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint. + */ + sint32() { + let zze = this.uint32(); + // decode zigzag + return (zze >>> 1) ^ -(zze & 1); + } + /** + * Read a `int64` field, a signed 64-bit varint. + */ + int64() { + return protoInt64.dec(...this.varint64()); + } + /** + * Read a `uint64` field, an unsigned 64-bit varint. + */ + uint64() { + return protoInt64.uDec(...this.varint64()); + } + /** + * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint. + */ + sint64() { + let [lo, hi] = this.varint64(); + // decode zig zag + let s = -(lo & 1); + lo = ((lo >>> 1) | ((hi & 1) << 31)) ^ s; + hi = (hi >>> 1) ^ s; + return protoInt64.dec(lo, hi); + } + /** + * Read a `bool` field, a variant. + */ + bool() { + let [lo, hi] = this.varint64(); + return lo !== 0 || hi !== 0; + } + /** + * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer. + */ + fixed32() { + return this.view.getUint32((this.pos += 4) - 4, true); + } + /** + * Read a `sfixed32` field, a signed, fixed-length 32-bit integer. + */ + sfixed32() { + return this.view.getInt32((this.pos += 4) - 4, true); + } + /** + * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer. + */ + fixed64() { + return protoInt64.uDec(this.sfixed32(), this.sfixed32()); + } + /** + * Read a `fixed64` field, a signed, fixed-length 64-bit integer. + */ + sfixed64() { + return protoInt64.dec(this.sfixed32(), this.sfixed32()); + } + /** + * Read a `float` field, 32-bit floating point number. + */ + float() { + return this.view.getFloat32((this.pos += 4) - 4, true); + } + /** + * Read a `double` field, a 64-bit floating point number. + */ + double() { + return this.view.getFloat64((this.pos += 8) - 8, true); + } + /** + * Read a `bytes` field, length-delimited arbitrary data. + */ + bytes() { + let len = this.uint32(), start = this.pos; + this.pos += len; + this.assertBounds(); + return this.buf.subarray(start, start + len); + } + /** + * Read a `string` field, length-delimited data converted to UTF-8 text. + */ + string() { + return this.decodeUtf8(this.bytes()); + } +} +/** + * Assert a valid signed protobuf 32-bit integer as a number or string. + */ +function assertInt32(arg) { + if (typeof arg == "string") { + arg = Number(arg); + } + else if (typeof arg != "number") { + throw new Error("invalid int32: " + typeof arg); + } + if (!Number.isInteger(arg) || + arg > INT32_MAX || + arg < INT32_MIN) + throw new Error("invalid int32: " + arg); +} +/** + * Assert a valid unsigned protobuf 32-bit integer as a number or string. + */ +function assertUInt32(arg) { + if (typeof arg == "string") { + arg = Number(arg); + } + else if (typeof arg != "number") { + throw new Error("invalid uint32: " + typeof arg); + } + if (!Number.isInteger(arg) || + arg > UINT32_MAX || + arg < 0) + throw new Error("invalid uint32: " + arg); +} +/** + * Assert a valid protobuf float value as a number or string. + */ +function assertFloat32(arg) { + if (typeof arg == "string") { + const o = arg; + arg = Number(arg); + if (isNaN(arg) && o !== "NaN") { + throw new Error("invalid float32: " + o); + } + } + else if (typeof arg != "number") { + throw new Error("invalid float32: " + typeof arg); + } + if (Number.isFinite(arg) && + (arg > FLOAT32_MAX || arg < FLOAT32_MIN)) + throw new Error("invalid float32: " + arg); +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: google/protobuf/timestamp.proto +/* eslint-disable */ +function createBaseTimestamp() { + return { seconds: 0, nanos: 0 }; +} +const Timestamp = { + encode(message, writer = new BinaryWriter()) { + if (message.seconds !== 0) { + writer.uint32(8).int64(message.seconds); + } + if (message.nanos !== 0) { + writer.uint32(16).int32(message.nanos); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseTimestamp(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; + } + message.seconds = longToNumber(reader.int64()); + continue; + } + case 2: { + if (tag !== 16) { + break; + } + message.nanos = reader.int32(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + seconds: isSet$1(object.seconds) ? globalThis.Number(object.seconds) : 0, + nanos: isSet$1(object.nanos) ? globalThis.Number(object.nanos) : 0, + }; + }, + toJSON(message) { + const obj = {}; + if (message.seconds !== 0) { + obj.seconds = Math.round(message.seconds); + } + if (message.nanos !== 0) { + obj.nanos = Math.round(message.nanos); + } + return obj; + }, + create(base) { + return Timestamp.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseTimestamp(); + message.seconds = object.seconds ?? 0; + message.nanos = object.nanos ?? 0; + return message; + }, +}; +function longToNumber(int64) { + const num = globalThis.Number(int64.toString()); + if (num > globalThis.Number.MAX_SAFE_INTEGER) { + throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); + } + if (num < globalThis.Number.MIN_SAFE_INTEGER) { + throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); + } + return num; +} +function isSet$1(value) { + return value !== null && value !== undefined; +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: protos/data.proto +/* eslint-disable */ +var DataType; +(function (DataType) { + DataType[DataType["DATA_TYPE_UNSPECIFIED"] = 0] = "DATA_TYPE_UNSPECIFIED"; + DataType[DataType["DATA_TYPE_PHONE"] = 1] = "DATA_TYPE_PHONE"; + DataType[DataType["DATA_TYPE_EMAIL"] = 2] = "DATA_TYPE_EMAIL"; + DataType[DataType["DATA_TYPE_NAME"] = 3] = "DATA_TYPE_NAME"; + DataType[DataType["DATA_TYPE_BIRTH_DATE"] = 4] = "DATA_TYPE_BIRTH_DATE"; + DataType[DataType["DATA_TYPE_DOCUMENT"] = 5] = "DATA_TYPE_DOCUMENT"; + DataType[DataType["DATA_TYPE_BANK_INFO"] = 6] = "DATA_TYPE_BANK_INFO"; + DataType[DataType["DATA_TYPE_SELFIE_IMAGE"] = 7] = "DATA_TYPE_SELFIE_IMAGE"; + DataType[DataType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(DataType || (DataType = {})); +function dataTypeFromJSON(object) { + switch (object) { + case 0: + case "DATA_TYPE_UNSPECIFIED": + return DataType.DATA_TYPE_UNSPECIFIED; + case 1: + case "DATA_TYPE_PHONE": + return DataType.DATA_TYPE_PHONE; + case 2: + case "DATA_TYPE_EMAIL": + return DataType.DATA_TYPE_EMAIL; + case 3: + case "DATA_TYPE_NAME": + return DataType.DATA_TYPE_NAME; + case 4: + case "DATA_TYPE_BIRTH_DATE": + return DataType.DATA_TYPE_BIRTH_DATE; + case 5: + case "DATA_TYPE_DOCUMENT": + return DataType.DATA_TYPE_DOCUMENT; + case 6: + case "DATA_TYPE_BANK_INFO": + return DataType.DATA_TYPE_BANK_INFO; + case 7: + case "DATA_TYPE_SELFIE_IMAGE": + return DataType.DATA_TYPE_SELFIE_IMAGE; + case -1: + case "UNRECOGNIZED": + default: + return DataType.UNRECOGNIZED; + } +} +var DocumentType; +(function (DocumentType) { + DocumentType[DocumentType["DOCUMENT_TYPE_UNSPECIFIED"] = 0] = "DOCUMENT_TYPE_UNSPECIFIED"; + DocumentType[DocumentType["DOCUMENT_TYPE_VOTER_ID"] = 1] = "DOCUMENT_TYPE_VOTER_ID"; + DocumentType[DocumentType["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(DocumentType || (DocumentType = {})); +function documentTypeFromJSON(object) { + switch (object) { + case 0: + case "DOCUMENT_TYPE_UNSPECIFIED": + return DocumentType.DOCUMENT_TYPE_UNSPECIFIED; + case 1: + case "DOCUMENT_TYPE_VOTER_ID": + return DocumentType.DOCUMENT_TYPE_VOTER_ID; + case -1: + case "UNRECOGNIZED": + default: + return DocumentType.UNRECOGNIZED; + } +} +function documentTypeToJSON(object) { + switch (object) { + case DocumentType.DOCUMENT_TYPE_UNSPECIFIED: + return "DOCUMENT_TYPE_UNSPECIFIED"; + case DocumentType.DOCUMENT_TYPE_VOTER_ID: + return "DOCUMENT_TYPE_VOTER_ID"; + case DocumentType.UNRECOGNIZED: + default: + return "UNRECOGNIZED"; + } +} +function createBaseName() { + return { firstName: "", lastName: "" }; +} +const Name = { + encode(message, writer = new BinaryWriter()) { + if (message.firstName !== "") { + writer.uint32(10).string(message.firstName); + } + if (message.lastName !== "") { + writer.uint32(18).string(message.lastName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseName(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.firstName = reader.string(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.lastName = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + firstName: isSet(object.firstName) ? globalThis.String(object.firstName) : "", + lastName: isSet(object.lastName) ? globalThis.String(object.lastName) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.firstName !== "") { + obj.firstName = message.firstName; + } + if (message.lastName !== "") { + obj.lastName = message.lastName; + } + return obj; + }, + create(base) { + return Name.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseName(); + message.firstName = object.firstName ?? ""; + message.lastName = object.lastName ?? ""; + return message; + }, +}; +function createBaseBirthDate() { + return { value: undefined }; +} +const BirthDate = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== undefined) { + Timestamp.encode(toTimestamp(message.value), writer.uint32(10).fork()).join(); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBirthDate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = fromTimestamp(Timestamp.decode(reader, reader.uint32())); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? fromJsonTimestamp(object.value) : undefined }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== undefined) { + obj.value = message.value.toISOString(); + } + return obj; + }, + create(base) { + return BirthDate.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseBirthDate(); + message.value = object.value ?? undefined; + return message; + }, +}; +function createBaseDocument() { + return { type: 0, number: "", countryCode: "" }; +} +const Document = { + encode(message, writer = new BinaryWriter()) { + if (message.type !== 0) { + writer.uint32(8).int32(message.type); + } + if (message.number !== "") { + writer.uint32(18).string(message.number); + } + if (message.countryCode !== "") { + writer.uint32(26).string(message.countryCode); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseDocument(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 8) { + break; + } + message.type = reader.int32(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.number = reader.string(); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + message.countryCode = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + type: isSet(object.type) ? documentTypeFromJSON(object.type) : 0, + number: isSet(object.number) ? globalThis.String(object.number) : "", + countryCode: isSet(object.countryCode) ? globalThis.String(object.countryCode) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.type !== 0) { + obj.type = documentTypeToJSON(message.type); + } + if (message.number !== "") { + obj.number = message.number; + } + if (message.countryCode !== "") { + obj.countryCode = message.countryCode; + } + return obj; + }, + create(base) { + return Document.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseDocument(); + message.type = object.type ?? 0; + message.number = object.number ?? ""; + message.countryCode = object.countryCode ?? ""; + return message; + }, +}; +function createBaseBankInfo() { + return { accountNumber: "", bankCode: "", bankName: "" }; +} +const BankInfo = { + encode(message, writer = new BinaryWriter()) { + if (message.accountNumber !== "") { + writer.uint32(10).string(message.accountNumber); + } + if (message.bankCode !== "") { + writer.uint32(18).string(message.bankCode); + } + if (message.bankName !== "") { + writer.uint32(26).string(message.bankName); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseBankInfo(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.accountNumber = reader.string(); + continue; + } + case 2: { + if (tag !== 18) { + break; + } + message.bankCode = reader.string(); + continue; + } + case 3: { + if (tag !== 26) { + break; + } + message.bankName = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { + accountNumber: isSet(object.accountNumber) ? globalThis.String(object.accountNumber) : "", + bankCode: isSet(object.bankCode) ? globalThis.String(object.bankCode) : "", + bankName: isSet(object.bankName) ? globalThis.String(object.bankName) : "", + }; + }, + toJSON(message) { + const obj = {}; + if (message.accountNumber !== "") { + obj.accountNumber = message.accountNumber; + } + if (message.bankCode !== "") { + obj.bankCode = message.bankCode; + } + if (message.bankName !== "") { + obj.bankName = message.bankName; + } + return obj; + }, + create(base) { + return BankInfo.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseBankInfo(); + message.accountNumber = object.accountNumber ?? ""; + message.bankCode = object.bankCode ?? ""; + message.bankName = object.bankName ?? ""; + return message; + }, +}; +function createBaseEmail() { + return { value: "" }; +} +const Email = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== "") { + writer.uint32(10).string(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseEmail(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? globalThis.String(object.value) : "" }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== "") { + obj.value = message.value; + } + return obj; + }, + create(base) { + return Email.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseEmail(); + message.value = object.value ?? ""; + return message; + }, +}; +function createBaseSelfieImage() { + return { value: new Uint8Array(0) }; +} +const SelfieImage = { + encode(message, writer = new BinaryWriter()) { + if (message.value.length !== 0) { + writer.uint32(10).bytes(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseSelfieImage(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.bytes(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? bytesFromBase64(object.value) : new Uint8Array(0) }; + }, + toJSON(message) { + const obj = {}; + if (message.value.length !== 0) { + obj.value = base64FromBytes(message.value); + } + return obj; + }, + create(base) { + return SelfieImage.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBaseSelfieImage(); + message.value = object.value ?? new Uint8Array(0); + return message; + }, +}; +function createBasePhone() { + return { value: "" }; +} +const Phone = { + encode(message, writer = new BinaryWriter()) { + if (message.value !== "") { + writer.uint32(10).string(message.value); + } + return writer; + }, + decode(input, length) { + const reader = input instanceof BinaryReader ? input : new BinaryReader(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBasePhone(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: { + if (tag !== 10) { + break; + } + message.value = reader.string(); + continue; + } + } + if ((tag & 7) === 4 || tag === 0) { + break; + } + reader.skip(tag & 7); + } + return message; + }, + fromJSON(object) { + return { value: isSet(object.value) ? globalThis.String(object.value) : "" }; + }, + toJSON(message) { + const obj = {}; + if (message.value !== "") { + obj.value = message.value; + } + return obj; + }, + create(base) { + return Phone.fromPartial(base ?? {}); + }, + fromPartial(object) { + const message = createBasePhone(); + message.value = object.value ?? ""; + return message; + }, +}; +function bytesFromBase64(b64) { + if (globalThis.Buffer) { + return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); + } + else { + const bin = globalThis.atob(b64); + const arr = new Uint8Array(bin.length); + for (let i = 0; i < bin.length; ++i) { + arr[i] = bin.charCodeAt(i); + } + return arr; + } +} +function base64FromBytes(arr) { + if (globalThis.Buffer) { + return globalThis.Buffer.from(arr).toString("base64"); + } + else { + const bin = []; + arr.forEach((byte) => { + bin.push(globalThis.String.fromCharCode(byte)); + }); + return globalThis.btoa(bin.join("")); + } +} +function toTimestamp(date) { + const seconds = Math.trunc(date.getTime() / 1_000); + const nanos = (date.getTime() % 1_000) * 1_000_000; + return { seconds, nanos }; +} +function fromTimestamp(t) { + let millis = (t.seconds || 0) * 1_000; + millis += (t.nanos || 0) / 1_000_000; + return new globalThis.Date(millis); +} +function fromJsonTimestamp(o) { + if (o instanceof globalThis.Date) { + return o; + } + else if (typeof o === "string") { + return new globalThis.Date(o); + } + else { + return fromTimestamp(Timestamp.fromJSON(o)); + } +} +function isSet(value) { + return value !== null && value !== undefined; +} + +// Code generated by protoc-gen-ts_proto. DO NOT EDIT. +// versions: +// protoc-gen-ts_proto v2.2.4 +// protoc v5.26.1 +// source: protos/validation_status.proto +/* eslint-disable */ +var ValidationStatus$1; +(function (ValidationStatus) { + ValidationStatus[ValidationStatus["VALIDATION_STATUS_UNSPECIFIED"] = 0] = "VALIDATION_STATUS_UNSPECIFIED"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_PENDING"] = 1] = "VALIDATION_STATUS_PENDING"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_APPROVED"] = 2] = "VALIDATION_STATUS_APPROVED"; + ValidationStatus[ValidationStatus["VALIDATION_STATUS_REJECTED"] = 3] = "VALIDATION_STATUS_REJECTED"; + ValidationStatus[ValidationStatus["UNRECOGNIZED"] = -1] = "UNRECOGNIZED"; +})(ValidationStatus$1 || (ValidationStatus$1 = {})); +function validationStatusFromJSON(object) { + switch (object) { + case 0: + case "VALIDATION_STATUS_UNSPECIFIED": + return ValidationStatus$1.VALIDATION_STATUS_UNSPECIFIED; + case 1: + case "VALIDATION_STATUS_PENDING": + return ValidationStatus$1.VALIDATION_STATUS_PENDING; + case 2: + case "VALIDATION_STATUS_APPROVED": + return ValidationStatus$1.VALIDATION_STATUS_APPROVED; + case 3: + case "VALIDATION_STATUS_REJECTED": + return ValidationStatus$1.VALIDATION_STATUS_REJECTED; + case -1: + case "UNRECOGNIZED": + default: + return ValidationStatus$1.UNRECOGNIZED; + } +} + +class AppConfig { storageBaseUrl; orderBaseUrl; constructor(storageBaseUrl, orderBaseUrl) { @@ -24,7 +1699,7 @@ export class AppConfig { return new AppConfig(storageBaseUrl, orderBaseUrl); } } -export var ValidationStatus; +var ValidationStatus; (function (ValidationStatus) { ValidationStatus["Unspecified"] = "UNSPECIFIED"; ValidationStatus["Pending"] = "PENDING"; @@ -34,19 +1709,19 @@ export var ValidationStatus; })(ValidationStatus || (ValidationStatus = {})); function toValidationStatus(protoStatus) { switch (protoStatus) { - case ProtoValidationStatus.VALIDATION_STATUS_UNSPECIFIED: + case ValidationStatus$1.VALIDATION_STATUS_UNSPECIFIED: return ValidationStatus.Unspecified; - case ProtoValidationStatus.VALIDATION_STATUS_PENDING: + case ValidationStatus$1.VALIDATION_STATUS_PENDING: return ValidationStatus.Pending; - case ProtoValidationStatus.VALIDATION_STATUS_APPROVED: + case ValidationStatus$1.VALIDATION_STATUS_APPROVED: return ValidationStatus.Approved; - case ProtoValidationStatus.VALIDATION_STATUS_REJECTED: + case ValidationStatus$1.VALIDATION_STATUS_REJECTED: return ValidationStatus.Rejected; default: return ValidationStatus.Unspecified; } } -export class BrijPartnerClient { +class BrijPartnerClient { authKeyPair; storageBaseUrl; orderBaseUrl; @@ -144,7 +1819,7 @@ export class BrijPartnerClient { : new Uint8Array(0); const dataId = encrypted.id; const verificationData = validationMap.get(dataId); - const status = verificationData?.status ?? ProtoValidationStatus.UNRECOGNIZED; + const status = verificationData?.status ?? ValidationStatus$1.UNRECOGNIZED; const commonFields = { dataId, status: toValidationStatus(validationStatusFromJSON(status)) }; switch (dataTypeFromJSON(encrypted.type)) { case DataType.DATA_TYPE_EMAIL: { @@ -409,4 +2084,6 @@ export class BrijPartnerClient { return `${cryptoAmount}|${cryptoCurrency}|${fiatAmount}|${fiatCurrency}|${cryptoWalletAddress}`; } } -//# sourceMappingURL=index.js.map \ No newline at end of file + +export { AppConfig, BrijPartnerClient, ValidationStatus }; +//# sourceMappingURL=index.js.map diff --git a/dist/index.js.map b/dist/index.js.map index e288331..c915038 100644 --- a/dist/index.js.map +++ b/dist/index.js.map @@ -1 +1 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"index.js","sources":["../node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js","../node_modules/@bufbuild/protobuf/dist/esm/proto-int64.js","../node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js","../node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js","../src/generated/google/protobuf/timestamp.ts","../src/generated/protos/data.ts","../src/generated/protos/validation_status.ts","../src/index.ts"],"sourcesContent":["// Copyright 2008 Google Inc. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n// Code generated by the Protocol Buffer compiler is owned by the owner\n// of the input file used when generating it. This code is not\n// standalone and requires a support library to be linked with it. This\n// support library is itself covered by the above license.\n/* eslint-disable prefer-const,@typescript-eslint/restrict-plus-operands */\n/**\n * Read a 64 bit varint as two JS numbers.\n *\n * Returns tuple:\n * [0]: low bits\n * [1]: high bits\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L175\n */\nexport function varint64read() {\n let lowBits = 0;\n let highBits = 0;\n for (let shift = 0; shift < 28; shift += 7) {\n let b = this.buf[this.pos++];\n lowBits |= (b & 0x7f) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n let middleByte = this.buf[this.pos++];\n // last four bits of the first 32 bit number\n lowBits |= (middleByte & 0x0f) << 28;\n // 3 upper bits are part of the next 32 bit number\n highBits = (middleByte & 0x70) >> 4;\n if ((middleByte & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n for (let shift = 3; shift <= 31; shift += 7) {\n let b = this.buf[this.pos++];\n highBits |= (b & 0x7f) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n throw new Error(\"invalid varint\");\n}\n/**\n * Write a 64 bit varint, given as two JS numbers, to the given bytes array.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/writer.js#L344\n */\nexport function varint64write(lo, hi, bytes) {\n for (let i = 0; i < 28; i = i + 7) {\n const shift = lo >>> i;\n const hasNext = !(shift >>> 7 == 0 && hi == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xff;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n const splitBits = ((lo >>> 28) & 0x0f) | ((hi & 0x07) << 4);\n const hasMoreBits = !(hi >> 3 == 0);\n bytes.push((hasMoreBits ? splitBits | 0x80 : splitBits) & 0xff);\n if (!hasMoreBits) {\n return;\n }\n for (let i = 3; i < 31; i = i + 7) {\n const shift = hi >>> i;\n const hasNext = !(shift >>> 7 == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xff;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n bytes.push((hi >>> 31) & 0x01);\n}\n// constants for binary math\nconst TWO_PWR_32_DBL = 0x100000000;\n/**\n * Parse decimal string of 64 bit integer value as two JS numbers.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function int64FromString(dec) {\n // Check for minus sign.\n const minus = dec[0] === \"-\";\n if (minus) {\n dec = dec.slice(1);\n }\n // Work 6 decimal digits at a time, acting like we're converting base 1e6\n // digits to binary. This is safe to do with floating point math because\n // Number.isSafeInteger(ALL_32_BITS * 1e6) == true.\n const base = 1e6;\n let lowBits = 0;\n let highBits = 0;\n function add1e6digit(begin, end) {\n // Note: Number('') is 0.\n const digit1e6 = Number(dec.slice(begin, end));\n highBits *= base;\n lowBits = lowBits * base + digit1e6;\n // Carry bits from lowBits to\n if (lowBits >= TWO_PWR_32_DBL) {\n highBits = highBits + ((lowBits / TWO_PWR_32_DBL) | 0);\n lowBits = lowBits % TWO_PWR_32_DBL;\n }\n }\n add1e6digit(-24, -18);\n add1e6digit(-18, -12);\n add1e6digit(-12, -6);\n add1e6digit(-6);\n return minus ? negate(lowBits, highBits) : newBits(lowBits, highBits);\n}\n/**\n * Losslessly converts a 64-bit signed integer in 32:32 split representation\n * into a decimal string.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function int64ToString(lo, hi) {\n let bits = newBits(lo, hi);\n // If we're treating the input as a signed value and the high bit is set, do\n // a manual two's complement conversion before the decimal conversion.\n const negative = bits.hi & 0x80000000;\n if (negative) {\n bits = negate(bits.lo, bits.hi);\n }\n const result = uInt64ToString(bits.lo, bits.hi);\n return negative ? \"-\" + result : result;\n}\n/**\n * Losslessly converts a 64-bit unsigned integer in 32:32 split representation\n * into a decimal string.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf-javascript/blob/a428c58273abad07c66071d9753bc4d1289de426/experimental/runtime/int64.js#L10\n */\nexport function uInt64ToString(lo, hi) {\n ({ lo, hi } = toUnsigned(lo, hi));\n // Skip the expensive conversion if the number is small enough to use the\n // built-in conversions.\n // Number.MAX_SAFE_INTEGER = 0x001FFFFF FFFFFFFF, thus any number with\n // highBits <= 0x1FFFFF can be safely expressed with a double and retain\n // integer precision.\n // Proven by: Number.isSafeInteger(0x1FFFFF * 2**32 + 0xFFFFFFFF) == true.\n if (hi <= 0x1fffff) {\n return String(TWO_PWR_32_DBL * hi + lo);\n }\n // What this code is doing is essentially converting the input number from\n // base-2 to base-1e7, which allows us to represent the 64-bit range with\n // only 3 (very large) digits. Those digits are then trivial to convert to\n // a base-10 string.\n // The magic numbers used here are -\n // 2^24 = 16777216 = (1,6777216) in base-1e7.\n // 2^48 = 281474976710656 = (2,8147497,6710656) in base-1e7.\n // Split 32:32 representation into 16:24:24 representation so our\n // intermediate digits don't overflow.\n const low = lo & 0xffffff;\n const mid = ((lo >>> 24) | (hi << 8)) & 0xffffff;\n const high = (hi >> 16) & 0xffff;\n // Assemble our three base-1e7 digits, ignoring carries. The maximum\n // value in a digit at this step is representable as a 48-bit integer, which\n // can be stored in a 64-bit floating point number.\n let digitA = low + mid * 6777216 + high * 6710656;\n let digitB = mid + high * 8147497;\n let digitC = high * 2;\n // Apply carries from A to B and from B to C.\n const base = 10000000;\n if (digitA >= base) {\n digitB += Math.floor(digitA / base);\n digitA %= base;\n }\n if (digitB >= base) {\n digitC += Math.floor(digitB / base);\n digitB %= base;\n }\n // If digitC is 0, then we should have returned in the trivial code path\n // at the top for non-safe integers. Given this, we can assume both digitB\n // and digitA need leading zeros.\n return (digitC.toString() +\n decimalFrom1e7WithLeadingZeros(digitB) +\n decimalFrom1e7WithLeadingZeros(digitA));\n}\nfunction toUnsigned(lo, hi) {\n return { lo: lo >>> 0, hi: hi >>> 0 };\n}\nfunction newBits(lo, hi) {\n return { lo: lo | 0, hi: hi | 0 };\n}\n/**\n * Returns two's compliment negation of input.\n * @see https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Bitwise_Operators#Signed_32-bit_integers\n */\nfunction negate(lowBits, highBits) {\n highBits = ~highBits;\n if (lowBits) {\n lowBits = ~lowBits + 1;\n }\n else {\n // If lowBits is 0, then bitwise-not is 0xFFFFFFFF,\n // adding 1 to that, results in 0x100000000, which leaves\n // the low bits 0x0 and simply adds one to the high bits.\n highBits += 1;\n }\n return newBits(lowBits, highBits);\n}\n/**\n * Returns decimal representation of digit1e7 with leading zeros.\n */\nconst decimalFrom1e7WithLeadingZeros = (digit1e7) => {\n const partial = String(digit1e7);\n return \"0000000\".slice(partial.length) + partial;\n};\n/**\n * Write a 32 bit varint, signed or unsigned. Same as `varint64write(0, value, bytes)`\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/1b18833f4f2a2f681f4e4a25cdf3b0a43115ec26/js/binary/encoder.js#L144\n */\nexport function varint32write(value, bytes) {\n if (value >= 0) {\n // write value as varint 32\n while (value > 0x7f) {\n bytes.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n bytes.push(value);\n }\n else {\n for (let i = 0; i < 9; i++) {\n bytes.push((value & 127) | 128);\n value = value >> 7;\n }\n bytes.push(1);\n }\n}\n/**\n * Read an unsigned 32 bit varint.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L220\n */\nexport function varint32read() {\n let b = this.buf[this.pos++];\n let result = b & 0x7f;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 7;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 14;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7f) << 21;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n // Extract only last 4 bits\n b = this.buf[this.pos++];\n result |= (b & 0x0f) << 28;\n for (let readBytes = 5; (b & 0x80) !== 0 && readBytes < 10; readBytes++)\n b = this.buf[this.pos++];\n if ((b & 0x80) != 0)\n throw new Error(\"invalid varint\");\n this.assertBounds();\n // Result can have 32 bits, convert it to unsigned\n return result >>> 0;\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { int64FromString, int64ToString, uInt64ToString, } from \"./wire/varint.js\";\n/**\n * Int64Support for the current environment.\n */\nexport const protoInt64 = /*@__PURE__*/ makeInt64Support();\nfunction makeInt64Support() {\n const dv = new DataView(new ArrayBuffer(8));\n // note that Safari 14 implements BigInt, but not the DataView methods\n const ok = typeof BigInt === \"function\" &&\n typeof dv.getBigInt64 === \"function\" &&\n typeof dv.getBigUint64 === \"function\" &&\n typeof dv.setBigInt64 === \"function\" &&\n typeof dv.setBigUint64 === \"function\" &&\n (typeof process != \"object\" ||\n typeof process.env != \"object\" ||\n process.env.BUF_BIGINT_DISABLE !== \"1\");\n if (ok) {\n const MIN = BigInt(\"-9223372036854775808\"), MAX = BigInt(\"9223372036854775807\"), UMIN = BigInt(\"0\"), UMAX = BigInt(\"18446744073709551615\");\n return {\n zero: BigInt(0),\n supported: true,\n parse(value) {\n const bi = typeof value == \"bigint\" ? value : BigInt(value);\n if (bi > MAX || bi < MIN) {\n throw new Error(`invalid int64: ${value}`);\n }\n return bi;\n },\n uParse(value) {\n const bi = typeof value == \"bigint\" ? value : BigInt(value);\n if (bi > UMAX || bi < UMIN) {\n throw new Error(`invalid uint64: ${value}`);\n }\n return bi;\n },\n enc(value) {\n dv.setBigInt64(0, this.parse(value), true);\n return {\n lo: dv.getInt32(0, true),\n hi: dv.getInt32(4, true),\n };\n },\n uEnc(value) {\n dv.setBigInt64(0, this.uParse(value), true);\n return {\n lo: dv.getInt32(0, true),\n hi: dv.getInt32(4, true),\n };\n },\n dec(lo, hi) {\n dv.setInt32(0, lo, true);\n dv.setInt32(4, hi, true);\n return dv.getBigInt64(0, true);\n },\n uDec(lo, hi) {\n dv.setInt32(0, lo, true);\n dv.setInt32(4, hi, true);\n return dv.getBigUint64(0, true);\n },\n };\n }\n return {\n zero: \"0\",\n supported: false,\n parse(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertInt64String(value);\n return value;\n },\n uParse(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertUInt64String(value);\n return value;\n },\n enc(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertInt64String(value);\n return int64FromString(value);\n },\n uEnc(value) {\n if (typeof value != \"string\") {\n value = value.toString();\n }\n assertUInt64String(value);\n return int64FromString(value);\n },\n dec(lo, hi) {\n return int64ToString(lo, hi);\n },\n uDec(lo, hi) {\n return uInt64ToString(lo, hi);\n },\n };\n}\nfunction assertInt64String(value) {\n if (!/^-?[0-9]+$/.test(value)) {\n throw new Error(\"invalid int64: \" + value);\n }\n}\nfunction assertUInt64String(value) {\n if (!/^[0-9]+$/.test(value)) {\n throw new Error(\"invalid uint64: \" + value);\n }\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nconst symbol = Symbol.for(\"@bufbuild/protobuf/text-encoding\");\n/**\n * Protobuf-ES requires the Text Encoding API to convert UTF-8 from and to\n * binary. This WHATWG API is widely available, but it is not part of the\n * ECMAScript standard. On runtimes where it is not available, use this\n * function to provide your own implementation.\n *\n * Note that the Text Encoding API does not provide a way to validate UTF-8.\n * Our implementation falls back to use encodeURIComponent().\n */\nexport function configureTextEncoding(textEncoding) {\n globalThis[symbol] = textEncoding;\n}\nexport function getTextEncoding() {\n if (globalThis[symbol] == undefined) {\n const te = new globalThis.TextEncoder();\n const td = new globalThis.TextDecoder();\n globalThis[symbol] = {\n encodeUtf8(text) {\n return te.encode(text);\n },\n decodeUtf8(bytes) {\n return td.decode(bytes);\n },\n checkUtf8(text) {\n try {\n encodeURIComponent(text);\n return true;\n }\n catch (e) {\n return false;\n }\n },\n };\n }\n return globalThis[symbol];\n}\n","// Copyright 2021-2024 Buf Technologies, Inc.\n//\n// Licensed under the Apache License, Version 2.0 (the \"License\");\n// you may not use this file except in compliance with the License.\n// You may obtain a copy of the License at\n//\n// http://www.apache.org/licenses/LICENSE-2.0\n//\n// Unless required by applicable law or agreed to in writing, software\n// distributed under the License is distributed on an \"AS IS\" BASIS,\n// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n// See the License for the specific language governing permissions and\n// limitations under the License.\nimport { varint32read, varint32write, varint64read, varint64write, } from \"./varint.js\";\nimport { protoInt64 } from \"../proto-int64.js\";\nimport { getTextEncoding } from \"./text-encoding.js\";\n/* eslint-disable prefer-const,no-case-declarations,@typescript-eslint/restrict-plus-operands */\n/**\n * Protobuf binary format wire types.\n *\n * A wire type provides just enough information to find the length of the\n * following value.\n *\n * See https://developers.google.com/protocol-buffers/docs/encoding#structure\n */\nexport var WireType;\n(function (WireType) {\n /**\n * Used for int32, int64, uint32, uint64, sint32, sint64, bool, enum\n */\n WireType[WireType[\"Varint\"] = 0] = \"Varint\";\n /**\n * Used for fixed64, sfixed64, double.\n * Always 8 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit64\"] = 1] = \"Bit64\";\n /**\n * Used for string, bytes, embedded messages, packed repeated fields\n *\n * Only repeated numeric types (types which use the varint, 32-bit,\n * or 64-bit wire types) can be packed. In proto3, such fields are\n * packed by default.\n */\n WireType[WireType[\"LengthDelimited\"] = 2] = \"LengthDelimited\";\n /**\n * Start of a tag-delimited aggregate, such as a proto2 group, or a message\n * in editions with message_encoding = DELIMITED.\n */\n WireType[WireType[\"StartGroup\"] = 3] = \"StartGroup\";\n /**\n * End of a tag-delimited aggregate.\n */\n WireType[WireType[\"EndGroup\"] = 4] = \"EndGroup\";\n /**\n * Used for fixed32, sfixed32, float.\n * Always 4 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit32\"] = 5] = \"Bit32\";\n})(WireType || (WireType = {}));\n/**\n * Maximum value for a 32-bit floating point value (Protobuf FLOAT).\n */\nexport const FLOAT32_MAX = 3.4028234663852886e38;\n/**\n * Minimum value for a 32-bit floating point value (Protobuf FLOAT).\n */\nexport const FLOAT32_MIN = -3.4028234663852886e38;\n/**\n * Maximum value for an unsigned 32-bit integer (Protobuf UINT32, FIXED32).\n */\nexport const UINT32_MAX = 0xffffffff;\n/**\n * Maximum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32).\n */\nexport const INT32_MAX = 0x7fffffff;\n/**\n * Minimum value for a signed 32-bit integer (Protobuf INT32, SFIXED32, SINT32).\n */\nexport const INT32_MIN = -0x80000000;\nexport class BinaryWriter {\n constructor(encodeUtf8 = getTextEncoding().encodeUtf8) {\n this.encodeUtf8 = encodeUtf8;\n /**\n * Previous fork states.\n */\n this.stack = [];\n this.chunks = [];\n this.buf = [];\n }\n /**\n * Return all bytes written and reset this writer.\n */\n finish() {\n if (this.buf.length) {\n this.chunks.push(new Uint8Array(this.buf)); // flush the buffer\n this.buf = [];\n }\n let len = 0;\n for (let i = 0; i < this.chunks.length; i++)\n len += this.chunks[i].length;\n let bytes = new Uint8Array(len);\n let offset = 0;\n for (let i = 0; i < this.chunks.length; i++) {\n bytes.set(this.chunks[i], offset);\n offset += this.chunks[i].length;\n }\n this.chunks = [];\n return bytes;\n }\n /**\n * Start a new fork for length-delimited data like a message\n * or a packed repeated field.\n *\n * Must be joined later with `join()`.\n */\n fork() {\n this.stack.push({ chunks: this.chunks, buf: this.buf });\n this.chunks = [];\n this.buf = [];\n return this;\n }\n /**\n * Join the last fork. Write its length and bytes, then\n * return to the previous state.\n */\n join() {\n // get chunk of fork\n let chunk = this.finish();\n // restore previous state\n let prev = this.stack.pop();\n if (!prev)\n throw new Error(\"invalid state, fork stack empty\");\n this.chunks = prev.chunks;\n this.buf = prev.buf;\n // write length of chunk as varint\n this.uint32(chunk.byteLength);\n return this.raw(chunk);\n }\n /**\n * Writes a tag (field number and wire type).\n *\n * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`.\n *\n * Generated code should compute the tag ahead of time and call `uint32()`.\n */\n tag(fieldNo, type) {\n return this.uint32(((fieldNo << 3) | type) >>> 0);\n }\n /**\n * Write a chunk of raw bytes.\n */\n raw(chunk) {\n if (this.buf.length) {\n this.chunks.push(new Uint8Array(this.buf));\n this.buf = [];\n }\n this.chunks.push(chunk);\n return this;\n }\n /**\n * Write a `uint32` value, an unsigned 32 bit varint.\n */\n uint32(value) {\n assertUInt32(value);\n // write value as varint 32, inlined for speed\n while (value > 0x7f) {\n this.buf.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n this.buf.push(value);\n return this;\n }\n /**\n * Write a `int32` value, a signed 32 bit varint.\n */\n int32(value) {\n assertInt32(value);\n varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `bool` value, a variant.\n */\n bool(value) {\n this.buf.push(value ? 1 : 0);\n return this;\n }\n /**\n * Write a `bytes` value, length-delimited arbitrary data.\n */\n bytes(value) {\n this.uint32(value.byteLength); // write length of chunk as varint\n return this.raw(value);\n }\n /**\n * Write a `string` value, length-delimited data converted to UTF-8 text.\n */\n string(value) {\n let chunk = this.encodeUtf8(value);\n this.uint32(chunk.byteLength); // write length of chunk as varint\n return this.raw(chunk);\n }\n /**\n * Write a `float` value, 32-bit floating point number.\n */\n float(value) {\n assertFloat32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setFloat32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `double` value, a 64-bit floating point number.\n */\n double(value) {\n let chunk = new Uint8Array(8);\n new DataView(chunk.buffer).setFloat64(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer.\n */\n fixed32(value) {\n assertUInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setUint32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sfixed32` value, a signed, fixed-length 32-bit integer.\n */\n sfixed32(value) {\n assertInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setInt32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint.\n */\n sint32(value) {\n assertInt32(value);\n // zigzag encode\n value = ((value << 1) ^ (value >> 31)) >>> 0;\n varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `fixed64` value, a signed, fixed-length 64-bit integer.\n */\n sfixed64(value) {\n let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.enc(value);\n view.setInt32(0, tc.lo, true);\n view.setInt32(4, tc.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer.\n */\n fixed64(value) {\n let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.uEnc(value);\n view.setInt32(0, tc.lo, true);\n view.setInt32(4, tc.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `int64` value, a signed 64-bit varint.\n */\n int64(value) {\n let tc = protoInt64.enc(value);\n varint64write(tc.lo, tc.hi, this.buf);\n return this;\n }\n /**\n * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64(value) {\n let tc = protoInt64.enc(value), \n // zigzag encode\n sign = tc.hi >> 31, lo = (tc.lo << 1) ^ sign, hi = ((tc.hi << 1) | (tc.lo >>> 31)) ^ sign;\n varint64write(lo, hi, this.buf);\n return this;\n }\n /**\n * Write a `uint64` value, an unsigned 64-bit varint.\n */\n uint64(value) {\n let tc = protoInt64.uEnc(value);\n varint64write(tc.lo, tc.hi, this.buf);\n return this;\n }\n}\nexport class BinaryReader {\n constructor(buf, decodeUtf8 = getTextEncoding().decodeUtf8) {\n this.decodeUtf8 = decodeUtf8;\n this.varint64 = varint64read; // dirty cast for `this`\n /**\n * Read a `uint32` field, an unsigned 32 bit varint.\n */\n this.uint32 = varint32read;\n this.buf = buf;\n this.len = buf.length;\n this.pos = 0;\n this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);\n }\n /**\n * Reads a tag - field number and wire type.\n */\n tag() {\n let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7;\n if (fieldNo <= 0 || wireType < 0 || wireType > 5)\n throw new Error(\"illegal tag: field no \" + fieldNo + \" wire type \" + wireType);\n return [fieldNo, wireType];\n }\n /**\n * Skip one element and return the skipped data.\n *\n * When skipping StartGroup, provide the tags field number to check for\n * matching field number in the EndGroup tag.\n */\n skip(wireType, fieldNo) {\n let start = this.pos;\n switch (wireType) {\n case WireType.Varint:\n while (this.buf[this.pos++] & 0x80) {\n // ignore\n }\n break;\n // eslint-disable-next-line\n // @ts-expect-error TS7029: Fallthrough case in switch\n case WireType.Bit64:\n this.pos += 4;\n // eslint-disable-next-line no-fallthrough\n case WireType.Bit32:\n this.pos += 4;\n break;\n case WireType.LengthDelimited:\n let len = this.uint32();\n this.pos += len;\n break;\n case WireType.StartGroup:\n for (;;) {\n const [fn, wt] = this.tag();\n if (wt === WireType.EndGroup) {\n if (fieldNo !== undefined && fn !== fieldNo) {\n throw new Error(\"invalid end group tag\");\n }\n break;\n }\n this.skip(wt, fn);\n }\n break;\n default:\n throw new Error(\"cant skip wire type \" + wireType);\n }\n this.assertBounds();\n return this.buf.subarray(start, this.pos);\n }\n /**\n * Throws error if position in byte array is out of range.\n */\n assertBounds() {\n if (this.pos > this.len)\n throw new RangeError(\"premature EOF\");\n }\n /**\n * Read a `int32` field, a signed 32 bit varint.\n */\n int32() {\n return this.uint32() | 0;\n }\n /**\n * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint.\n */\n sint32() {\n let zze = this.uint32();\n // decode zigzag\n return (zze >>> 1) ^ -(zze & 1);\n }\n /**\n * Read a `int64` field, a signed 64-bit varint.\n */\n int64() {\n return protoInt64.dec(...this.varint64());\n }\n /**\n * Read a `uint64` field, an unsigned 64-bit varint.\n */\n uint64() {\n return protoInt64.uDec(...this.varint64());\n }\n /**\n * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64() {\n let [lo, hi] = this.varint64();\n // decode zig zag\n let s = -(lo & 1);\n lo = ((lo >>> 1) | ((hi & 1) << 31)) ^ s;\n hi = (hi >>> 1) ^ s;\n return protoInt64.dec(lo, hi);\n }\n /**\n * Read a `bool` field, a variant.\n */\n bool() {\n let [lo, hi] = this.varint64();\n return lo !== 0 || hi !== 0;\n }\n /**\n * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer.\n */\n fixed32() {\n return this.view.getUint32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `sfixed32` field, a signed, fixed-length 32-bit integer.\n */\n sfixed32() {\n return this.view.getInt32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer.\n */\n fixed64() {\n return protoInt64.uDec(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `fixed64` field, a signed, fixed-length 64-bit integer.\n */\n sfixed64() {\n return protoInt64.dec(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `float` field, 32-bit floating point number.\n */\n float() {\n return this.view.getFloat32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `double` field, a 64-bit floating point number.\n */\n double() {\n return this.view.getFloat64((this.pos += 8) - 8, true);\n }\n /**\n * Read a `bytes` field, length-delimited arbitrary data.\n */\n bytes() {\n let len = this.uint32(), start = this.pos;\n this.pos += len;\n this.assertBounds();\n return this.buf.subarray(start, start + len);\n }\n /**\n * Read a `string` field, length-delimited data converted to UTF-8 text.\n */\n string() {\n return this.decodeUtf8(this.bytes());\n }\n}\n/**\n * Assert a valid signed protobuf 32-bit integer as a number or string.\n */\nfunction assertInt32(arg) {\n if (typeof arg == \"string\") {\n arg = Number(arg);\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid int32: \" + typeof arg);\n }\n if (!Number.isInteger(arg) ||\n arg > INT32_MAX ||\n arg < INT32_MIN)\n throw new Error(\"invalid int32: \" + arg);\n}\n/**\n * Assert a valid unsigned protobuf 32-bit integer as a number or string.\n */\nfunction assertUInt32(arg) {\n if (typeof arg == \"string\") {\n arg = Number(arg);\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid uint32: \" + typeof arg);\n }\n if (!Number.isInteger(arg) ||\n arg > UINT32_MAX ||\n arg < 0)\n throw new Error(\"invalid uint32: \" + arg);\n}\n/**\n * Assert a valid protobuf float value as a number or string.\n */\nfunction assertFloat32(arg) {\n if (typeof arg == \"string\") {\n const o = arg;\n arg = Number(arg);\n if (isNaN(arg) && o !== \"NaN\") {\n throw new Error(\"invalid float32: \" + o);\n }\n }\n else if (typeof arg != \"number\") {\n throw new Error(\"invalid float32: \" + typeof arg);\n }\n if (Number.isFinite(arg) &&\n (arg > FLOAT32_MAX || arg < FLOAT32_MIN))\n throw new Error(\"invalid float32: \" + arg);\n}\n",null,null,null,null],"names":["isSet","ValidationStatus","ProtoValidationStatus"],"mappings":"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","x_google_ignoreList":[0,1,2,3]} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 0dec0d4..1285593 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "brij-partner-sdk", - "version": "0.4.0", + "version": "0.5.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "brij-partner-sdk", - "version": "0.4.0", + "version": "0.5.0", "license": "ISC", "dependencies": { "@bufbuild/protobuf": "^2.2.0", @@ -19,13 +19,47 @@ }, "devDependencies": { "@eslint/js": "^9.9.1", + "@rollup/plugin-commonjs": "^25.0.0", + "@rollup/plugin-node-resolve": "^15.0.0", + "@rollup/plugin-typescript": "^11.0.0", "@types/ed2curve": "^0.2.4", "@types/node": "^22.7.4", "eslint": "^9.9.1", + "rollup": "^4.9.0", + "rollup-plugin-dts": "^6.0.0", "ts-proto": "^2.2.4", + "tslib": "^2.8.1", + "typescript": "^5.7.3", "typescript-eslint": "^8.3.0" } }, + "node_modules/@babel/code-frame": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.26.2.tgz", + "integrity": "sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "@babel/helper-validator-identifier": "^7.25.9", + "js-tokens": "^4.0.0", + "picocolors": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": ">=6.9.0" + } + }, "node_modules/@bufbuild/protobuf": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.2.0.tgz", @@ -171,6 +205,13 @@ "url": "https://github.com/sponsors/nzakas" } }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", @@ -209,6 +250,386 @@ "node": ">= 8" } }, + "node_modules/@rollup/plugin-commonjs": { + "version": "25.0.8", + "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.8.tgz", + "integrity": "sha512-ZEZWTK5n6Qde0to4vS9Mr5x/0UZoqCxPVR9KRUjU4kA2sO7GEUn1fop0DAwpO6z0Nw/kJON9bDmSxdWxO/TT1A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "commondir": "^1.0.1", + "estree-walker": "^2.0.2", + "glob": "^8.0.3", + "is-reference": "1.2.1", + "magic-string": "^0.30.3" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.68.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-node-resolve": { + "version": "15.3.1", + "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.3.1.tgz", + "integrity": "sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.0.1", + "@types/resolve": "1.20.2", + "deepmerge": "^4.2.2", + "is-module": "^1.0.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.78.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/plugin-typescript": { + "version": "11.1.6", + "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-11.1.6.tgz", + "integrity": "sha512-R92yOmIACgYdJ7dJ97p4K69I8gg6IEHt8M7dUBxN3W6nrO8uUxX5ixl0yU/N3aZTi8WhPuICvOHXQvF6FaykAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rollup/pluginutils": "^5.1.0", + "resolve": "^1.22.1" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^2.14.0||^3.0.0||^4.0.0", + "tslib": "*", + "typescript": ">=3.7.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + }, + "tslib": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.4.tgz", + "integrity": "sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/pluginutils/node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.30.1.tgz", + "integrity": "sha512-pSWY+EVt3rJ9fQ3IqlrEUtXh3cGqGtPDH1FQlNZehO2yYxCHEX1SPsz1M//NXwYfbTlcKr9WObLnJX9FsS9K1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.30.1.tgz", + "integrity": "sha512-/NA2qXxE3D/BRjOJM8wQblmArQq1YoBVJjrjoTSBS09jgUisq7bqxNHJ8kjCHeV21W/9WDGwJEWSN0KQ2mtD/w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.30.1.tgz", + "integrity": "sha512-r7FQIXD7gB0WJ5mokTUgUWPl0eYIH0wnxqeSAhuIwvnnpjdVB8cRRClyKLQr7lgzjctkbp5KmswWszlwYln03Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.30.1.tgz", + "integrity": "sha512-x78BavIwSH6sqfP2xeI1hd1GpHL8J4W2BXcVM/5KYKoAD3nNsfitQhvWSw+TFtQTLZ9OmlF+FEInEHyubut2OA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.30.1.tgz", + "integrity": "sha512-HYTlUAjbO1z8ywxsDFWADfTRfTIIy/oUlfIDmlHYmjUP2QRDTzBuWXc9O4CXM+bo9qfiCclmHk1x4ogBjOUpUQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.30.1.tgz", + "integrity": "sha512-1MEdGqogQLccphhX5myCJqeGNYTNcmTyaic9S7CG3JhwuIByJ7J05vGbZxsizQthP1xpVx7kd3o31eOogfEirw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.30.1.tgz", + "integrity": "sha512-PaMRNBSqCx7K3Wc9QZkFx5+CX27WFpAMxJNiYGAXfmMIKC7jstlr32UhTgK6T07OtqR+wYlWm9IxzennjnvdJg==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.30.1.tgz", + "integrity": "sha512-B8Rcyj9AV7ZlEFqvB5BubG5iO6ANDsRKlhIxySXcF1axXYUyqwBok+XZPgIYGBgs7LDXfWfifxhw0Ik57T0Yug==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.30.1.tgz", + "integrity": "sha512-hqVyueGxAj3cBKrAI4aFHLV+h0Lv5VgWZs9CUGqr1z0fZtlADVV1YPOij6AhcK5An33EXaxnDLmJdQikcn5NEw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.30.1.tgz", + "integrity": "sha512-i4Ab2vnvS1AE1PyOIGp2kXni69gU2DAUVt6FSXeIqUCPIR3ZlheMW3oP2JkukDfu3PsexYRbOiJrY+yVNSk9oA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-loongarch64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-loongarch64-gnu/-/rollup-linux-loongarch64-gnu-4.30.1.tgz", + "integrity": "sha512-fARcF5g296snX0oLGkVxPmysetwUk2zmHcca+e9ObOovBR++9ZPOhqFUM61UUZ2EYpXVPN1redgqVoBB34nTpQ==", + "cpu": [ + "loong64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.30.1.tgz", + "integrity": "sha512-GLrZraoO3wVT4uFXh67ElpwQY0DIygxdv0BNW9Hkm3X34wu+BkqrDrkcsIapAY+N2ATEbvak0XQ9gxZtCIA5Rw==", + "cpu": [ + "ppc64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.30.1.tgz", + "integrity": "sha512-0WKLaAUUHKBtll0wvOmh6yh3S0wSU9+yas923JIChfxOaaBarmb/lBKPF0w/+jTVozFnOXJeRGZ8NvOxvk/jcw==", + "cpu": [ + "riscv64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.30.1.tgz", + "integrity": "sha512-GWFs97Ruxo5Bt+cvVTQkOJ6TIx0xJDD/bMAOXWJg8TCSTEK8RnFeOeiFTxKniTc4vMIaWvCplMAFBt9miGxgkA==", + "cpu": [ + "s390x" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.30.1.tgz", + "integrity": "sha512-UtgGb7QGgXDIO+tqqJ5oZRGHsDLO8SlpE4MhqpY9Llpzi5rJMvrK6ZGhsRCST2abZdBqIBeXW6WPD5fGK5SDwg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.30.1.tgz", + "integrity": "sha512-V9U8Ey2UqmQsBT+xTOeMzPzwDzyXmnAoO4edZhL7INkwQcaW1Ckv3WJX3qrrp/VHaDkEWIBWhRwP47r8cdrOow==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.30.1.tgz", + "integrity": "sha512-WabtHWiPaFF47W3PkHnjbmWawnX/aE57K47ZDT1BXTS5GgrBUEpvOzq0FI0V/UYzQJgdb8XlhVNH8/fwV8xDjw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.30.1.tgz", + "integrity": "sha512-pxHAU+Zv39hLUTdQQHUVHf4P+0C47y/ZloorHpzs2SXMRqeAWmGghzAhfOlzFHHwjvgokdFAhC4V+6kC1lRRfw==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.30.1.tgz", + "integrity": "sha512-D6qjsXGcvhTjv0kI4fU8tUuBDF/Ueee4SVX79VfNDXZa64TfCW1Slkb6Z7O1p7vflqZjcmOVdZlqf8gvJxc6og==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, "node_modules/@types/ed2curve": { "version": "0.2.4", "resolved": "https://registry.npmjs.org/@types/ed2curve/-/ed2curve-0.2.4.tgz", @@ -219,6 +640,13 @@ "tweetnacl": "^1.0.0" } }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/node": { "version": "22.7.4", "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.4.tgz", @@ -229,6 +657,13 @@ "undici-types": "~6.19.2" } }, + "node_modules/@types/resolve": { + "version": "1.20.2", + "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", + "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==", + "dev": true, + "license": "MIT" + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.3.0.tgz", @@ -664,6 +1099,13 @@ "node": ">= 0.8" } }, + "node_modules/commondir": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", + "integrity": "sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg==", + "dev": true, + "license": "MIT" + }, "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", @@ -718,6 +1160,16 @@ "dev": true, "license": "MIT" }, + "node_modules/deepmerge": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", + "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -915,6 +1367,13 @@ "node": ">=4.0" } }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, "node_modules/esutils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", @@ -1084,6 +1543,59 @@ "node": ">= 6" } }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", + "dev": true, + "license": "ISC" + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "dev": true, + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/glob": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz", + "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==", + "deprecated": "Glob versions prior to v9 are no longer supported", + "dev": true, + "license": "ISC", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^5.0.1", + "once": "^1.3.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/glob-parent": { "version": "6.0.2", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz", @@ -1097,6 +1609,29 @@ "node": ">=10.13.0" } }, + "node_modules/glob/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/glob/node_modules/minimatch": { + "version": "5.1.6", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz", + "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/graphemer": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz", @@ -1114,6 +1649,19 @@ "node": ">=8" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/ignore": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz", @@ -1151,6 +1699,41 @@ "node": ">=0.8.19" } }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.", + "dev": true, + "license": "ISC", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true, + "license": "ISC" + }, + "node_modules/is-core-module": { + "version": "2.16.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.16.1.tgz", + "integrity": "sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", @@ -1174,6 +1757,13 @@ "node": ">=0.10.0" } }, + "node_modules/is-module": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", + "integrity": "sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==", + "dev": true, + "license": "MIT" + }, "node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", @@ -1194,6 +1784,16 @@ "node": ">=8" } }, + "node_modules/is-reference": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/is-reference/-/is-reference-1.2.1.tgz", + "integrity": "sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "*" + } + }, "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", @@ -1210,6 +1810,14 @@ "url": "https://github.com/sponsors/panva" } }, + "node_modules/js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true, + "license": "MIT", + "optional": true + }, "node_modules/js-yaml": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", @@ -1291,6 +1899,16 @@ "dev": true, "license": "MIT" }, + "node_modules/magic-string": { + "version": "0.30.17", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.17.tgz", + "integrity": "sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, "node_modules/merge2": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", @@ -1356,6 +1974,16 @@ "dev": true, "license": "MIT" }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dev": true, + "license": "ISC", + "dependencies": { + "wrappy": "1" + } + }, "node_modules/optionator": { "version": "0.9.4", "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz", @@ -1439,6 +2067,21 @@ "node": ">=8" } }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "dev": true, + "license": "ISC", + "optional": true + }, "node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", @@ -1499,6 +2142,27 @@ ], "license": "MIT" }, + "node_modules/resolve": { + "version": "1.22.10", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz", + "integrity": "sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.16.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/resolve-from": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", @@ -1520,6 +2184,68 @@ "node": ">=0.10.0" } }, + "node_modules/rollup": { + "version": "4.30.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.30.1.tgz", + "integrity": "sha512-mlJ4glW020fPuLi7DkM/lN97mYEZGWeqBnrljzN0gs7GLctqX3lNWxKQ7Gl712UAX+6fog/L3jh4gb7R6aVi3w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.30.1", + "@rollup/rollup-android-arm64": "4.30.1", + "@rollup/rollup-darwin-arm64": "4.30.1", + "@rollup/rollup-darwin-x64": "4.30.1", + "@rollup/rollup-freebsd-arm64": "4.30.1", + "@rollup/rollup-freebsd-x64": "4.30.1", + "@rollup/rollup-linux-arm-gnueabihf": "4.30.1", + "@rollup/rollup-linux-arm-musleabihf": "4.30.1", + "@rollup/rollup-linux-arm64-gnu": "4.30.1", + "@rollup/rollup-linux-arm64-musl": "4.30.1", + "@rollup/rollup-linux-loongarch64-gnu": "4.30.1", + "@rollup/rollup-linux-powerpc64le-gnu": "4.30.1", + "@rollup/rollup-linux-riscv64-gnu": "4.30.1", + "@rollup/rollup-linux-s390x-gnu": "4.30.1", + "@rollup/rollup-linux-x64-gnu": "4.30.1", + "@rollup/rollup-linux-x64-musl": "4.30.1", + "@rollup/rollup-win32-arm64-msvc": "4.30.1", + "@rollup/rollup-win32-ia32-msvc": "4.30.1", + "@rollup/rollup-win32-x64-msvc": "4.30.1", + "fsevents": "~2.3.2" + } + }, + "node_modules/rollup-plugin-dts": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/rollup-plugin-dts/-/rollup-plugin-dts-6.1.1.tgz", + "integrity": "sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==", + "dev": true, + "license": "LGPL-3.0-only", + "dependencies": { + "magic-string": "^0.30.10" + }, + "engines": { + "node": ">=16" + }, + "funding": { + "url": "https://github.com/sponsors/Swatinem" + }, + "optionalDependencies": { + "@babel/code-frame": "^7.24.2" + }, + "peerDependencies": { + "rollup": "^3.29.4 || ^4", + "typescript": "^4.5 || ^5.0" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -1619,6 +2345,19 @@ "node": ">=8" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -1688,6 +2427,13 @@ "@bufbuild/protobuf": "^2.0.0" } }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "dev": true, + "license": "0BSD" + }, "node_modules/tweetnacl": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-1.0.3.tgz", @@ -1712,12 +2458,11 @@ } }, "node_modules/typescript": { - "version": "5.5.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz", - "integrity": "sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q==", + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz", + "integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==", "dev": true, "license": "Apache-2.0", - "peer": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" @@ -1793,6 +2538,13 @@ "node": ">=0.10.0" } }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", + "dev": true, + "license": "ISC" + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/package.json b/package.json index 6215dfd..dfdb79c 100644 --- a/package.json +++ b/package.json @@ -1,16 +1,26 @@ { "name": "brij-partner-sdk", - "version": "0.4.0", + "version": "0.5.0", "description": "", - "main": "dist/index.js", + "main": "dist/index.cjs", + "module": "dist/index.js", "types": "dist/index.d.ts", + "exports": { + ".": { + "import": "./dist/index.js", + "require": "./dist/index.cjs", + "types": "./dist/index.d.ts" + } + }, "files": [ "/dist" ], "type": "module", "scripts": { - "build": "tsc", - "test": "echo \"Error: no test specified\" && exit 1" + "build": "rollup -c", + "test": "npm run test:esm && npm run test:cjs", + "test:esm": "node test/esm-test.js", + "test:cjs": "node test/cjs-test.cjs" }, "keywords": [], "author": "", @@ -26,10 +36,17 @@ }, "devDependencies": { "@eslint/js": "^9.9.1", + "@rollup/plugin-commonjs": "^25.0.0", + "@rollup/plugin-node-resolve": "^15.0.0", + "@rollup/plugin-typescript": "^11.0.0", "@types/ed2curve": "^0.2.4", "@types/node": "^22.7.4", "eslint": "^9.9.1", + "rollup": "^4.9.0", + "rollup-plugin-dts": "^6.0.0", "ts-proto": "^2.2.4", + "tslib": "^2.8.1", + "typescript": "^5.7.3", "typescript-eslint": "^8.3.0" } } diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 0000000..378efc4 --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,56 @@ +import resolve from "@rollup/plugin-node-resolve"; +import commonjs from "@rollup/plugin-commonjs"; +import typescript from "@rollup/plugin-typescript"; +import { dts } from "rollup-plugin-dts"; + +const external = ["crypto", "jose", "axios", "tweetnacl", "bs58", "tweetnacl-util", "ed2curve", "@bufbuild/protobuf"]; + +export default [ + // ESM build + { + input: "src/index.ts", + output: { + file: "dist/index.js", + format: "esm", + sourcemap: true, + }, + external, + plugins: [ + resolve(), + commonjs(), + typescript({ + tsconfig: "./tsconfig.json", + declaration: false, + sourceMap: true, + }), + ], + }, + // CommonJS build + { + input: "src/index.ts", + output: { + file: "dist/index.cjs", + format: "cjs", + sourcemap: true, + }, + external, + plugins: [ + resolve(), + commonjs(), + typescript({ + tsconfig: "./tsconfig.json", + declaration: false, + sourceMap: true, + }), + ], + }, + // Types + { + input: "src/index.ts", + output: { + file: "dist/index.d.ts", + format: "esm", + }, + plugins: [dts()], + }, +]; diff --git a/test/cjs-test.cjs b/test/cjs-test.cjs new file mode 100644 index 0000000..cd08c0c --- /dev/null +++ b/test/cjs-test.cjs @@ -0,0 +1,17 @@ +// Test CommonJS require +const { AppConfig } = require("../dist/index.cjs"); + +async function testCJS() { + try { + const config = AppConfig.demo(); + console.log("CommonJS require successful!"); + console.log("Demo config:", { + storageBaseUrl: config.storageBaseUrl, + orderBaseUrl: config.orderBaseUrl, + }); + } catch (error) { + console.error("CommonJS require failed:", error); + } +} + +testCJS(); diff --git a/test/esm-test.js b/test/esm-test.js new file mode 100644 index 0000000..79818b3 --- /dev/null +++ b/test/esm-test.js @@ -0,0 +1,17 @@ +// Test ESM imports +import { AppConfig } from "../dist/index.js"; + +async function testESM() { + try { + const config = AppConfig.demo(); + console.log("ESM import successful!"); + console.log("Demo config:", { + storageBaseUrl: config.storageBaseUrl, + orderBaseUrl: config.orderBaseUrl, + }); + } catch (error) { + console.error("ESM import failed:", error); + } +} + +testESM(); diff --git a/tsconfig.json b/tsconfig.json index e58c7c7..e80ef13 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,12 +1,12 @@ { "compilerOptions": { "lib": ["es2023"], - "module": "node16", + "module": "esnext", "target": "es2022", "strict": true, "esModuleInterop": true, "skipLibCheck": true, - "moduleResolution": "node16", + "moduleResolution": "node", "sourceMap": true, "declaration": true, "outDir": "dist",