From f16fef0adaebd15e2ffd52113aa7ee69d0dfdaae Mon Sep 17 00:00:00 2001 From: nocktoshi Date: Sat, 20 Jun 2026 13:44:13 -0500 Subject: [PATCH 1/2] feat: add Nockchain adapter and integration tests - Introduced the Nockchain chain adapter for handling transactions via the NEAR MPC cluster's FrostCheetah domain. - Implemented address and public key derivation methods. - Added integration tests for Nockchain functionality, including address derivation, signature verification, and transaction preparation. - Updated jest configuration to include new module mappings for Nockchain. - Added new test files for Nockchain integration and unit tests, ensuring comprehensive coverage of the new features. --- __tests__/nockchain/Integration.test.ts | 252 ++++ __tests__/nockchain/Nockchain.test.ts | 265 ++++ __tests__/nockchain/cheetah-verify.mjs | 40 + jest.config.ts | 6 +- package.json | 3 +- src/chain-adapters/Nockchain/Nockchain.ts | 225 ++++ src/chain-adapters/Nockchain/index.ts | 11 + src/chain-adapters/Nockchain/types.ts | 46 + src/chain-adapters/index.ts | 1 + yarn.lock | 1466 ++++++++------------- 10 files changed, 1399 insertions(+), 916 deletions(-) create mode 100644 __tests__/nockchain/Integration.test.ts create mode 100644 __tests__/nockchain/Nockchain.test.ts create mode 100644 __tests__/nockchain/cheetah-verify.mjs create mode 100644 src/chain-adapters/Nockchain/Nockchain.ts create mode 100644 src/chain-adapters/Nockchain/index.ts create mode 100644 src/chain-adapters/Nockchain/types.ts diff --git a/__tests__/nockchain/Integration.test.ts b/__tests__/nockchain/Integration.test.ts new file mode 100644 index 0000000..ca172f2 --- /dev/null +++ b/__tests__/nockchain/Integration.test.ts @@ -0,0 +1,252 @@ +import { describe, it, expect, beforeAll } from '@jest/globals' +import { + PrivateKey, + LocalMpcSigner, + deriveMpcAddress, + publicKeyVerify, + publicKeyFromBeBytes, + lockFromList, + spendConditionNewPkh, + pkhSingle, + lockRootHash, + nameV1, + noteDataEmpty, + digestToBase58, + digestFromMessageBytes, + type Note, +} from '@nockchain/rose-ts' + +import { Nockchain } from '../../src/chain-adapters/Nockchain/Nockchain' +import { + NOCKCHAIN_SCHEME, + type NockchainTransactionRequest, +} from '../../src/chain-adapters/Nockchain/types' +import type { Signature } from '../../src/types' + +// Skip unless explicitly running integration tests. +const itif = process.env.INTEGRATION_TEST ? it : it.skip + +const toHex = (b: Uint8Array): string => + Array.from(b, (x) => x.toString(16).padStart(2, '0')).join('') + +const fromHex = (s: string): Uint8Array => + Uint8Array.from((s.match(/.{1,2}/g) ?? []).map((h) => parseInt(h, 16))) + +// A locally generated MPC root, used when no live cluster root is provided via +// MPC_CHEETAH_ROOT_HEX. It keeps the derivation/signing flow exercisable offline. +const LOCAL_ROOT_BYTES = new Uint8Array(32) +LOCAL_ROOT_BYTES[0] = 7 +const LOCAL_ROOT_PRIV = PrivateKey.fromBytes(LOCAL_ROOT_BYTES) +const LOCAL_ROOT_PUB_HEX = toHex(LOCAL_ROOT_PRIV.publicKey) + +const PREDECESSOR = process.env.NEAR_ACCOUNT_ID || 'alice.testnet' +const PATH = process.env.NOCK_DERIVATION_PATH || 'nock-1' + +function fabricateNote(ownerPkh: string, assets: string): Note { + const lock = lockFromList([spendConditionNewPkh(pkhSingle(ownerPkh as never))]) + const source = { + hash: digestToBase58([9n, 9n, 9n, 9n, 9n]), + is_coinbase: true, + } + const name = nameV1(lockRootHash(lock), source as never) + return { + version: 1, + origin_page: 0, + name, + note_data: noteDataEmpty(), + assets: assets as never, + lock, + source, + } as unknown as Note +} + +describe('Nockchain MPC Integration', () => { + let nockchain: Nockchain + let rootPublicKeyHex: string + let usingLiveRoot: boolean + + beforeAll(() => { + const rpcUrl = process.env.NOCKCHAIN_RPC || 'https://rpc.nockchain.net' + // Prefer the live cluster's published 97-byte Cheetah root key, if provided. + rootPublicKeyHex = process.env.MPC_CHEETAH_ROOT_HEX || LOCAL_ROOT_PUB_HEX + usingLiveRoot = Boolean(process.env.MPC_CHEETAH_ROOT_HEX) + + console.log(`Nockchain RPC: ${rpcUrl}`) + console.log(`MPC root: ${usingLiveRoot ? 'live cluster' : 'local (generated)'}`) + + nockchain = new Nockchain({ rpcUrl, rootPublicKey: rootPublicKeyHex }) + }) + + itif( + 'derives a Nockchain address + child key from the MPC root', + async () => { + const { address, publicKey } = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + PATH + ) + console.log('Derived Nockchain address (PKH):', address) + console.log('Derived child public key (be hex):', publicKey) + + expect(address).toBeDefined() + expect(publicKey).toBeDefined() + // base58 PKH + 97-byte big-endian Cheetah point. + expect(address).toMatch(/^[1-9A-HJ-NP-Za-km-z]+$/) + expect(publicKey).toHaveLength(97 * 2) + // The child key round-trips through rose-ts' point (de)serialization. + expect(() => publicKeyFromBeBytes(fromHex(publicKey))).not.toThrow() + + // Best-effort balance lookup against the live RPC. + try { + const { balance, decimals } = await nockchain.getBalance(address) + console.log(`Balance: ${balance} nicks (decimals: ${decimals})`) + expect(typeof balance).toBe('bigint') + } catch (error: unknown) { + console.warn( + 'Could not fetch balance (normal for a fresh address / offline run):', + error instanceof Error ? error.message : String(error) + ) + } + } + ) + + itif( + 'verifies a Cheetah signature against the adapter-derived child key', + async () => { + const liveRoot = process.env.CHEETAH_ROOT_HEX + const liveC = process.env.CHEETAH_SIG_C + const liveS = process.env.CHEETAH_SIG_S + + if (liveRoot && liveC && liveS) { + // Verify a real cluster-produced signature. + const predecessor = process.env.CHEETAH_PREDECESSOR || PREDECESSOR + const path = process.env.CHEETAH_PATH || 'test' + const belts = (process.env.CHEETAH_BELTS || '11,22,33,44,55') + .split(',') + .map((b) => BigInt(b.trim())) as unknown as [ + bigint, + bigint, + bigint, + bigint, + bigint, + ] + + const { publicKey: childPub, pkh } = deriveMpcAddress( + fromHex(liveRoot), + predecessor, + path + ) + const digest = digestToBase58(belts) + const ok = publicKeyVerify(childPub, digest, { c: liveC, s: liveS }) + + console.log('Derived child PKH:', String(pkh)) + console.log('Live cluster signature verifies:', ok) + expect(ok).toBe(true) + return + } + + // Self-contained fallback: LocalMpcSigner stands in for the cluster. + console.log( + 'No live cluster signature in env; using a LocalMpcSigner proof.' + ) + const signer = new LocalMpcSigner(LOCAL_ROOT_BYTES, PREDECESSOR) + const childPub = await signer.childPublicKey(PATH) + const digest = digestToBase58([11n, 22n, 33n, 44n, 55n]) + const sig = await signer.sign(PATH, digest) + expect(publicKeyVerify(childPub, digest, sig)).toBe(true) + } + ) + + itif( + 'prepares, MPC-signs, and finalizes a NOCK transfer end-to-end', + async () => { + try { + // Use a self-contained local root so we control the spending key for the + // full prepare→sign→finalize→verify path (no funds / live cluster needed). + const localAdapter = new Nockchain({ + rpcUrl: process.env.NOCKCHAIN_RPC || 'https://rpc.nockchain.net', + rootPublicKey: LOCAL_ROOT_PUB_HEX, + }) + const sender = await localAdapter.deriveAddressAndPublicKey( + PREDECESSOR, + PATH + ) + const recipient = await localAdapter.deriveAddressAndPublicKey( + PREDECESSOR, + 'nock-recipient' + ) + console.log('Sender PKH:', sender.address) + console.log('Recipient PKH:', recipient.address) + + // Prefer real UTXOs for the sender if the RPC has any; otherwise fabricate. + let notes: Note[] + try { + const balance = (await localAdapter.getBalance( + sender.address + )) as unknown + const fetched = ( + (balance as { notes?: Array<{ note?: Note }> }).notes ?? [] + ) + .map((n) => n.note) + .filter((n): n is Note => Boolean(n)) + notes = fetched.length > 0 ? fetched : [fabricateNote(sender.address, '1000000')] + console.log( + `Using ${notes.length} input note(s) (${ + fetched.length > 0 ? 'from RPC' : 'fabricated' + }).` + ) + } catch { + notes = [fabricateNote(sender.address, '1000000')] + console.log('RPC unavailable; using a fabricated input note.') + } + + const request: NockchainTransactionRequest = { + senderPublicKey: sender.publicKey, + senderPkh: sender.address, + to: recipient.address, + amount: '100', + notes, + } + + const { transaction, hashesToSign } = + await localAdapter.prepareTransactionForSigning(request) + console.log('Spends to sign:', hashesToSign.length) + hashesToSign.forEach((h) => expect(h).toHaveLength(40)) + + // Sign each spend with a LocalMpcSigner over the same root (cluster stand-in). + const signer = new LocalMpcSigner(LOCAL_ROOT_BYTES, PREDECESSOR) + const childPub = await signer.childPublicKey(PATH) + const sigs: Signature[] = [] + for (const messageBytes of hashesToSign) { + const digest = digestToBase58( + digestFromMessageBytes(Uint8Array.from(messageBytes)) + ) + const roseSig = await signer.sign(PATH, digest) + expect(publicKeyVerify(childPub, digest, roseSig)).toBe(true) + sigs.push({ + scheme: NOCKCHAIN_SCHEME, + signature: [...fromHex(roseSig.c), ...fromHex(roseSig.s)], + }) + } + + const signedTx = localAdapter.finalizeTransactionSigning({ + transaction, + // Single-spend transfer → a single signature. + rsvSignatures: sigs[0], + }) + console.log('Signed tx prefix:', signedTx.slice(0, 60), '...') + + // We do NOT broadcast in the integration test (would move real funds). + expect(typeof signedTx).toBe('string') + const built = JSON.parse(signedTx) + expect(built).toHaveProperty('spends') + expect(built).toHaveProperty('witness_data') + } catch (error: unknown) { + console.error( + 'Unexpected error in end-to-end transfer test:', + error instanceof Error ? error.message : String(error) + ) + expect(error).toBeDefined() + } + } + ) +}) diff --git a/__tests__/nockchain/Nockchain.test.ts b/__tests__/nockchain/Nockchain.test.ts new file mode 100644 index 0000000..4f566e3 --- /dev/null +++ b/__tests__/nockchain/Nockchain.test.ts @@ -0,0 +1,265 @@ +import { describe, it, expect, beforeEach, jest } from '@jest/globals' +import { + PrivateKey, + LocalMpcSigner, + deriveMpcAddress, + publicKeyVerify, + lockFromList, + spendConditionNewPkh, + pkhSingle, + lockRootHash, + nameV1, + noteDataEmpty, + digestToBase58, + digestFromMessageBytes, + type Note, +} from '@nockchain/rose-ts' + +import { Nockchain } from '../../src/chain-adapters/Nockchain/Nockchain' +import { + NOCKCHAIN_SCHEME, + type NockchainTransactionRequest, + type NockchainUnsignedTransaction, +} from '../../src/chain-adapters/Nockchain/types' +import type { Signature } from '../../src/types' + +const toHex = (b: Uint8Array): string => + Array.from(b, (x) => x.toString(16).padStart(2, '0')).join('') + +const fromHex = (s: string): Uint8Array => + Uint8Array.from((s.match(/.{1,2}/g) ?? []).map((h) => parseInt(h, 16))) + +// A deterministic MPC root key. In production this is the 97-byte Cheetah point +// the NEAR MPC contract publishes; here we generate one locally so the adapter's +// derivation/signing can be exercised end-to-end without a live cluster. +const ROOT_BYTES = new Uint8Array(32) +ROOT_BYTES[0] = 7 +const ROOT_PRIV = PrivateKey.fromBytes(ROOT_BYTES) +const ROOT_PUB_HEX = toHex(ROOT_PRIV.publicKey) + +const PREDECESSOR = 'alice.testnet' +const PATH = 'nock-1' + +/** + * Fabricate a coinbase-style note (UTXO) P2PKH-locked to `ownerPkh` holding + * `assets` nicks — enough scaffolding for `TxBuilder.simpleSpend` to select it. + */ +function fabricateNote(ownerPkh: string, assets: string): Note { + const lock = lockFromList([spendConditionNewPkh(pkhSingle(ownerPkh as never))]) + const source = { + hash: digestToBase58([9n, 9n, 9n, 9n, 9n]), + is_coinbase: true, + } + const name = nameV1(lockRootHash(lock), source as never) + return { + version: 1, + origin_page: 0, + name, + note_data: noteDataEmpty(), + assets: assets as never, + lock, + source, + } as unknown as Note +} + +/** Pack a rose-ts `{ c, s }` (LE hex) into a chainsig `Signature` (64-byte c‖s). */ +function asChainsigSignature(c: string, s: string): Signature { + return { + scheme: NOCKCHAIN_SCHEME, + signature: [...fromHex(c), ...fromHex(s)], + } +} + +type BalanceResponse = { notes: Array<{ note?: { assets?: unknown } }> } +type RpcMock = { + getBalance: jest.Mock<(address: string) => Promise> + sendTransaction: jest.Mock<(tx: unknown) => Promise> +} + +describe('Nockchain Chain Adapter', () => { + let nockchain: Nockchain + let rpc: RpcMock + + beforeEach(() => { + nockchain = new Nockchain({ + rpcUrl: 'http://localhost:3030', + rootPublicKey: ROOT_PUB_HEX, + }) + // Replace the internal rose-ts RPC client with mocks — these unit tests + // never touch the network. + rpc = { + getBalance: jest.fn<(address: string) => Promise>(), + sendTransaction: jest.fn<(tx: unknown) => Promise>(), + } + ;(nockchain as unknown as { rpc: RpcMock }).rpc = rpc + }) + + it('should derive address and public key', async () => { + const { address, publicKey } = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + PATH + ) + + // Cross-check against rose-ts' derivation directly. + const direct = deriveMpcAddress(ROOT_PRIV.publicKey, PREDECESSOR, PATH) + expect(address).toBe(String(direct.pkh)) + expect(publicKey).toBe(toHex(direct.publicKey.toBeBytes())) + + // The derived child key is a 97-byte big-endian Cheetah point. + expect(publicKey).toHaveLength(97 * 2) + // The address is a base58 PKH (no 0/O/I/l). + expect(address).toMatch(/^[1-9A-HJ-NP-Za-km-z]+$/) + }) + + it('should derive distinct child keys for distinct paths', async () => { + const a = await nockchain.deriveAddressAndPublicKey(PREDECESSOR, 'nock-1') + const b = await nockchain.deriveAddressAndPublicKey(PREDECESSOR, 'nock-2') + expect(a.address).not.toBe(b.address) + expect(a.publicKey).not.toBe(b.publicKey) + }) + + it('should get balance by summing note assets', async () => { + rpc.getBalance.mockResolvedValue({ + notes: [{ note: { assets: '1000' } }, { note: { assets: '337' } }], + }) + + const { balance, decimals } = await nockchain.getBalance('some-pkh') + expect(balance).toBe(1337n) + // NOCK balances are reported in raw nicks (integer base unit). + expect(decimals).toBe(0) + }) + + it('should report a zero balance for an empty/unknown address', async () => { + rpc.getBalance.mockResolvedValue({ notes: [] }) + + const { balance } = await nockchain.getBalance('empty-pkh') + expect(balance).toBe(0n) + }) + + it('should serialize and deserialize a transaction', async () => { + const { address, publicKey } = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + PATH + ) + const unsigned: NockchainUnsignedTransaction = { + senderPkh: address, + recipientPkh: address, + refundPkh: address, + amount: '100', + notes: [fabricateNote(address, '1000000')], + childPublicKeyHex: publicKey, + } + + const roundTripped = nockchain.deserializeTransaction( + nockchain.serializeTransaction(unsigned) + ) + expect(roundTripped).toEqual(unsigned) + }) + + it('should prepare a transfer and emit per-spend Tip5 signing digests', async () => { + const sender = await nockchain.deriveAddressAndPublicKey(PREDECESSOR, PATH) + const recipient = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + 'nock-2' + ) + const request: NockchainTransactionRequest = { + senderPublicKey: sender.publicKey, + senderPkh: sender.address, + to: recipient.address, + amount: '100', + notes: [fabricateNote(sender.address, '1000000')], + } + + const { transaction, hashesToSign } = + await nockchain.prepareTransactionForSigning(request) + + expect(transaction.senderPkh).toBe(sender.address) + expect(transaction.recipientPkh).toBe(recipient.address) + // Sender refunds itself by default. + expect(transaction.refundPkh).toBe(sender.address) + expect(transaction.childPublicKeyHex).toBe(sender.publicKey) + + expect(hashesToSign.length).toBeGreaterThan(0) + // Each digest is the 5-belt Tip5 message = 40 little-endian bytes. + hashesToSign.forEach((h) => expect(h).toHaveLength(40)) + }) + + it('should prepare, MPC-sign, finalize, and verify a full transfer', async () => { + const sender = await nockchain.deriveAddressAndPublicKey(PREDECESSOR, PATH) + const recipient = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + 'nock-2' + ) + const request: NockchainTransactionRequest = { + senderPublicKey: sender.publicKey, + senderPkh: sender.address, + to: recipient.address, + amount: '100', + notes: [fabricateNote(sender.address, '1000000')], + } + + const { transaction, hashesToSign } = + await nockchain.prepareTransactionForSigning(request) + // A single input note produces a single spend. + expect(hashesToSign).toHaveLength(1) + + // Stand in for the MPC cluster: a LocalMpcSigner over the same root key signs + // the emitted digest exactly as the FrostCheetah domain would. + const signer = new LocalMpcSigner(ROOT_BYTES, PREDECESSOR) + const childPub = await signer.childPublicKey(PATH) + // The adapter exposes the derived key; it must match the signer's child key. + expect(toHex(childPub.toBeBytes())).toBe(sender.publicKey) + + // hashesToSign carries the 40-byte Tip5 message; recover the base58 Digest. + const digest = digestToBase58( + digestFromMessageBytes(Uint8Array.from(hashesToSign[0])) + ) + const roseSig = await signer.sign(PATH, digest) + + // The cluster's signature verifies under the adapter-derived child key. + expect(publicKeyVerify(childPub, digest, roseSig)).toBe(true) + + // Hand the signature back to the adapter to assemble the signed transaction. + const signedTx = nockchain.finalizeTransactionSigning({ + transaction, + rsvSignatures: asChainsigSignature(roseSig.c, roseSig.s), + }) + + expect(typeof signedTx).toBe('string') + const built = JSON.parse(signedTx) + expect(built).toHaveProperty('spends') + expect(built).toHaveProperty('witness_data') + }) + + it('should reject a malformed (non-64-byte) Cheetah signature in finalize', async () => { + const { address, publicKey } = await nockchain.deriveAddressAndPublicKey( + PREDECESSOR, + PATH + ) + const transaction: NockchainUnsignedTransaction = { + senderPkh: address, + recipientPkh: address, + refundPkh: address, + amount: '100', + notes: [fabricateNote(address, '1000000')], + childPublicKeyHex: publicKey, + } + + expect(() => + nockchain.finalizeTransactionSigning({ + transaction, + // 32 bytes — not a valid c‖s pair. + rsvSignatures: { scheme: NOCKCHAIN_SCHEME, signature: new Array(32).fill(0) }, + }) + ).toThrow(/64 bytes/) + }) + + it('should broadcast a transaction via the RPC client', async () => { + rpc.sendTransaction.mockResolvedValue('0xdeadbeefhash') + + const { hash } = await nockchain.broadcastTx( + JSON.stringify({ version: 1, spends: [], witness_data: [] }) + ) + expect(hash).toBe('0xdeadbeefhash') + }) +}) diff --git a/__tests__/nockchain/cheetah-verify.mjs b/__tests__/nockchain/cheetah-verify.mjs new file mode 100644 index 0000000..b1fa8bf --- /dev/null +++ b/__tests__/nockchain/cheetah-verify.mjs @@ -0,0 +1,40 @@ +// +// Given the MPC FrostCheetah ROOT public key from the live cluster's contract, a +// (predecessor, path), and a cluster-produced signature (c, s) over a known +// 5-belt digest, this: +// 1. derives the child public key the SAME way the chainsig Nockchain adapter +// does (`deriveMpcAddress` — root + epsilon tweak), and +// 2. verifies the cluster's signature against that derived child key. +// +// Success proves the adapter's derivation matches the contract's kdf AND the +// cluster signed a valid Cheetah signature for the adapter-derived key. +// +// argv: +import { + deriveMpcAddress, + publicKeyVerify, + digestToBase58, +} from '@nockchain/rose-ts' + +const [, , rootPubHex, predecessor, path, cHex, sHex, beltsCsv] = process.argv + +const fromHex = (s) => + Uint8Array.from((s.match(/.{1,2}/g) ?? []).map((h) => parseInt(h, 16))) + +// Derive the child public key exactly as the adapter's deriveAddressAndPublicKey. +const { publicKey: childPub, pkh } = deriveMpcAddress( + fromHex(rootPubHex), + predecessor, + path +) + +// The 5-belt digest the cluster signed, as the base58 Digest `verify` expects. +const belts = beltsCsv.split(',').map((b) => BigInt(b)) +const digest = digestToBase58(belts) + +const ok = publicKeyVerify(childPub, digest, { c: cHex, s: sHex }) + +console.log(`derived child PKH: ${String(pkh)}`) +console.log(`derived child pubkey (be hex): ${[...childPub.toBeBytes()].map((x) => x.toString(16).padStart(2, '0')).join('')}`) +console.log(ok ? 'VERIFY_OK' : 'VERIFY_FAIL') +process.exit(ok ? 0 : 1) diff --git a/jest.config.ts b/jest.config.ts index 54c1e75..62afbf7 100644 --- a/jest.config.ts +++ b/jest.config.ts @@ -12,6 +12,10 @@ const config: Config = { }, moduleNameMapper: { '^(\\.{1,2}/.*)\\.js$': '$1', + '^@nockchain/rose-ts/internal$': + '/node_modules/@nockchain/rose-ts/dist/internal.js', + '^@nockchain/rose-ts$': + '/node_modules/@nockchain/rose-ts/dist/index.js', '^@chain-adapters/(.*)$': '/src/chain-adapters/$1', '^@contracts/(.*)$': '/src/contracts/$1', '^@utils/(.*)$': '/src/utils/$1', @@ -27,7 +31,7 @@ const config: Config = { // For ES modules compatibility testRunner: 'jest-circus/runner', transformIgnorePatterns: [ - '/node_modules/(?!(@cosmjs|bitcoinjs-lib|@scure|@noble)/)', + '/node_modules/(?!(@cosmjs|bitcoinjs-lib|@scure|@noble|@nockchain)/)', ], workerThreads: true, maxWorkers: 1, diff --git a/package.json b/package.json index bccdb8c..f5da34c 100644 --- a/package.json +++ b/package.json @@ -29,7 +29,7 @@ "docs:generate": "typedoc", "docs:watch": "typedoc --watch", "docs:clean": "rm -rf ./docs", - "test": "NODE_OPTIONS=\"--no-warnings\" jest -c jest.config.ts \"__tests__/(bitcoin|solana|evm/basic.test.ts|xrp|index.test.ts|contracts/derivation.test.ts)\"", + "test": "NODE_OPTIONS=\"--no-warnings\" jest -c jest.config.ts \"__tests__/(bitcoin|solana|nockchain|evm/basic.test.ts|xrp|index.test.ts|contracts/derivation.test.ts)\"", "test:all": "NODE_OPTIONS=\"--no-warnings\" jest -c jest.config.ts __tests__/bitcoin __tests__/solana __tests__/evm/basic.test.ts __tests__/xrp", "test:fixed": "NODE_OPTIONS=\"--no-warnings\" jest -c jest.config.ts __tests__/bitcoin __tests__/solana __tests__/evm/basic.test.ts __tests__/xrp", "test:passing": "npm run test:fixed", @@ -126,6 +126,7 @@ "@near-js/utils": "^2.2.4", "@noble/curves": "^1.9.0", "@noble/hashes": "^1.8.0", + "@nockchain/rose-ts": "^0.2.3", "@scure/base": "^1.2.4", "@solana/web3.js": "^1.98.0", "base32-decode": "^1.0.0", diff --git a/src/chain-adapters/Nockchain/Nockchain.ts b/src/chain-adapters/Nockchain/Nockchain.ts new file mode 100644 index 0000000..972bf9e --- /dev/null +++ b/src/chain-adapters/Nockchain/Nockchain.ts @@ -0,0 +1,225 @@ +import { + RpcClient, + TxBuilder, + deriveMpcAddress, + digestToMessageBytes, + hashPublicKey, + hashSpendV1SigHash, + lockFromList, + pkhSingle, + publicKeyFromBeBytes, + spendConditionNewPkh, + txEngineSettingsV1BythosDefault, + type NockchainTx, + type Signature as RoseSignature, +} from '@nockchain/rose-ts' + +import { type Transaction } from '@solana/web3.js' + +import { ChainAdapter } from '../ChainAdapter' + +import type { HashToSign, RSVSignature, Signature } from '@types' + +import type { + NockchainTransactionRequest, + NockchainUnsignedTransaction, +} from './types' + +const toHex = (b: Uint8Array): string => + Array.from(b, (x) => x.toString(16).padStart(2, '0')).join('') + +const fromHex = (s: string): Uint8Array => + Uint8Array.from((s.match(/.{1,2}/g) ?? []).map((h) => parseInt(h, 16))) + +export interface NockchainConfig { + /** Nockchain RPC endpoint. */ + rpcUrl: string + /** + * The MPC root public key for the Nockchain (Cheetah) domain — the 97-byte + * big-endian point published by the NEAR MPC contract, as hex or bytes. + * Address/key derivation tweaks this root per (predecessor, path). + */ + rootPublicKey: string | Uint8Array + /** Optional custom fetch implementation forwarded to the rose-ts RPC client. */ + fetchFn?: ConstructorParameters[1] +} + +/** + * chainsig.js chain adapter for **Nockchain**, signing remotely via the NEAR MPC + * cluster's `FrostCheetah` domain (key-prefixed Schnorr over the Cheetah curve + * with a Tip5 challenge). + * + * The heavy lifting (key-derivation tweak, transaction building, per-spend + * sighash, witness assembly) is delegated to `@nockchain/rose-ts`; this adapter + * adapts it to chainsig's prepare/sign/finalize MPC flow. + */ +export class Nockchain extends ChainAdapter< + NockchainTransactionRequest, + NockchainUnsignedTransaction +> { + private readonly rpc: RpcClient + private readonly rootPublicKey: Uint8Array + + constructor(config: NockchainConfig) { + super() + this.rpc = new RpcClient(config.rpcUrl, config.fetchFn) + this.rootPublicKey = + typeof config.rootPublicKey === 'string' + ? fromHex(config.rootPublicKey) + : config.rootPublicKey + } + + /** + * Derive a Nockchain address (PKH, base58) + child public key for a NEAR + * account and path, using NEAR's epsilon-derivation tweak applied to the + * Cheetah root key (`childPub = root + tweak·G`). + */ + async deriveAddressAndPublicKey( + predecessor: string, + path: string + ): Promise<{ address: string; publicKey: string }> { + const { publicKey, pkh } = deriveMpcAddress( + this.rootPublicKey, + predecessor, + path + ) + return { address: String(pkh), publicKey: toHex(publicKey.toBeBytes()) } + } + + /** Total spendable balance (in nicks, the NOCK base unit) at an address. */ + async getBalance( + address: string + ): Promise<{ balance: bigint; decimals: number }> { + const balance = await this.rpc.getBalance(address) + const total = (balance.notes ?? []).reduce((sum, entry) => { + const assets = (entry as { note?: { assets?: unknown } }).note?.assets + return assets == null ? sum : sum + BigInt(String(assets)) + }, 0n) + // NOCK's base unit is the nick (2^16 nicks = 1 NOCK); balance is raw nicks. + return { balance: total, decimals: 0 } + } + + serializeTransaction(transaction: NockchainUnsignedTransaction): string { + return JSON.stringify(transaction) + } + + deserializeTransaction(serialized: string): NockchainUnsignedTransaction { + return JSON.parse(serialized) as NockchainUnsignedTransaction + } + + /** + * Build the spend and emit the per-spend signing digests as `hashesToSign`. + * + * The digest is the spend sighash encoded as the 40-byte (5-belt) Tip5 message + * that the `FrostCheetah` domain signs — i.e. what gets submitted to the MPC + * contract as the `Eddsa` byte payload. Their order matches the spends, which + * is the order signatures must come back in for {@link finalizeTransactionSigning}. + */ + async prepareTransactionForSigning( + transactionRequest: NockchainTransactionRequest + ): Promise<{ + transaction: NockchainUnsignedTransaction + hashesToSign: HashToSign[] + }> { + const transaction: NockchainUnsignedTransaction = { + senderPkh: transactionRequest.senderPkh, + recipientPkh: transactionRequest.to, + refundPkh: transactionRequest.refundPkh ?? transactionRequest.senderPkh, + amount: transactionRequest.amount, + notes: transactionRequest.notes, + childPublicKeyHex: transactionRequest.senderPublicKey, + } + + const builder = this.buildBuilder(transaction) + const hashesToSign: HashToSign[] = builder.allSpends().map((sb) => { + const spend = sb.spend + if (spend.tag !== 1) { + throw new Error('Nockchain: expected a PKH (tag-1) spend') + } + return Array.from(digestToMessageBytes(hashSpendV1SigHash(spend))) + }) + + return { transaction, hashesToSign } + } + + /** + * Attach the MPC-produced Cheetah signatures to the spends and return the + * serialized signed transaction. `rsvSignatures[i]` must correspond to + * `hashesToSign[i]` from {@link prepareTransactionForSigning}. + */ + finalizeTransactionSigning({ + transaction, + rsvSignatures, + }: { + transaction: Transaction | NockchainUnsignedTransaction + rsvSignatures: RSVSignature[] | Signature + }): string { + const tx = transaction as NockchainUnsignedTransaction + const childPub = fromHex(tx.childPublicKeyHex) + const pkh = hashPublicKey(childPub) + const pubkeyBase58 = publicKeyFromBeBytes(childPub).toBase58() + // Cheetah is multi-spend: expect one { scheme, signature } per spend. + const sigList = ( + Array.isArray(rsvSignatures) ? rsvSignatures : [rsvSignatures] + ) as unknown as Signature[] + const sigs = sigList.map(toRoseSignature) + + const builder = this.buildBuilder(tx) + const spends = builder.allSpends() + if (spends.length !== sigs.length) { + throw new Error( + `Nockchain finalize: expected ${spends.length} signatures, got ${sigs.length}` + ) + } + spends.forEach((sb, i) => { + sb.pushPkhSignature(pkh, pubkeyBase58, sigs[i]) + }) + + return JSON.stringify(builder.build()) + } + + async broadcastTx(txSerialized: string): Promise<{ hash: string }> { + const tx = JSON.parse(txSerialized) as NockchainTx + const hash = await this.rpc.sendTransaction(tx) + return { hash } + } + + /** + * Deterministically (re)build the spend from the recipe. Called by both + * prepare (to compute digests) and finalize (to attach signatures), so it must + * be a pure function of the recipe. + */ + private buildBuilder(tx: NockchainUnsignedTransaction): TxBuilder { + const builder = new TxBuilder(txEngineSettingsV1BythosDefault()) + // Every input note is P2PKH-locked to the sender's (derived) address. + const inputLock = lockFromList([ + spendConditionNewPkh(pkhSingle(tx.senderPkh as never)), + ]) + const txLocks = tx.notes.map(() => ({ lock: inputLock, lock_sp_index: 0 })) + builder.simpleSpend( + tx.notes, + txLocks as never, + tx.recipientPkh as never, + tx.amount as never, + undefined, // fee_override — recalcAndSetFee computes it + tx.refundPkh as never, + false + ) + builder.recalcAndSetFee(false) + return builder + } +} + +/** Convert a chainsig 64-byte Cheetah signature (`c‖s`) to rose-ts `{ c, s }`. */ +function toRoseSignature(sig: Signature): RoseSignature { + const bytes = Uint8Array.from(sig.signature) + if (bytes.length !== 64) { + throw new Error( + `Nockchain: Cheetah signature must be 64 bytes (c‖s), got ${bytes.length}` + ) + } + return { + c: toHex(bytes.subarray(0, 32)), + s: toHex(bytes.subarray(32, 64)), + } +} diff --git a/src/chain-adapters/Nockchain/index.ts b/src/chain-adapters/Nockchain/index.ts new file mode 100644 index 0000000..7604a2c --- /dev/null +++ b/src/chain-adapters/Nockchain/index.ts @@ -0,0 +1,11 @@ +// Nockchain +export { Nockchain } from './Nockchain' + +export type { NockchainConfig } from './Nockchain' + +export { NOCKCHAIN_SCHEME } from './types' + +export type { + NockchainTransactionRequest, + NockchainUnsignedTransaction, +} from './types' diff --git a/src/chain-adapters/Nockchain/types.ts b/src/chain-adapters/Nockchain/types.ts new file mode 100644 index 0000000..3828d65 --- /dev/null +++ b/src/chain-adapters/Nockchain/types.ts @@ -0,0 +1,46 @@ +import type { Note } from '@nockchain/rose-ts' + +/** + * Scheme tag for the key-prefixed Schnorr (Cheetah/Tip5) signatures produced by + * the Nockchain MPC domain (`Protocol::FrostCheetah` / `Curve::Cheetah`). + */ +export const NOCKCHAIN_SCHEME = 'SchnorrCheetah' as const + +/** + * A request to build a simple PKH→PKH NOCK transfer to be signed remotely by the + * MPC cluster. + * + * UTXO selection is left to the caller: `notes` are the input notes (all + * P2PKH-locked to `senderPkh`) to spend. The bulk goes to `to`; the remainder + * (minus fee) refunds to `refundPkh` (defaults to the sender). + */ +export interface NockchainTransactionRequest { + /** Sender's child public key (97-byte big-endian, hex) from {@link Nockchain.deriveAddressAndPublicKey}. */ + senderPublicKey: string + /** Sender's child address / PKH (base58) — owner of the input notes. */ + senderPkh: string + /** Recipient address / PKH (base58). */ + to: string + /** Amount to transfer, in nicks (NOCK base unit), as a decimal string. */ + amount: string + /** Input notes (UTXOs) owned by `senderPkh`. */ + notes: Note[] + /** Where change/refund goes (base58 PKH). Defaults to `senderPkh`. */ + refundPkh?: string +} + +/** + * An opaque unsigned transaction: a deterministic build recipe plus the signing + * public key. {@link Nockchain.prepareTransactionForSigning} (which captures the + * per-spend digests) and {@link Nockchain.finalizeTransactionSigning} (which + * attaches the MPC signatures) reconstruct the identical transaction from it. + */ +export interface NockchainUnsignedTransaction { + senderPkh: string + recipientPkh: string + refundPkh: string + amount: string + notes: Note[] + /** Sender's child public key, 97-byte big-endian, hex (drives the witness + PKH). */ + childPublicKeyHex: string +} diff --git a/src/chain-adapters/index.ts b/src/chain-adapters/index.ts index 31d8f25..7deffb5 100644 --- a/src/chain-adapters/index.ts +++ b/src/chain-adapters/index.ts @@ -7,3 +7,4 @@ export * as solana from './Solana' export * as aptos from './Aptos' export * as sui from './SUI' export * as xrp from './XRP' +export * as nockchain from './Nockchain' diff --git a/yarn.lock b/yarn.lock index 37b386c..abafea6 100644 --- a/yarn.lock +++ b/yarn.lock @@ -95,34 +95,34 @@ jwt-decode "^4.0.0" poseidon-lite "^0.2.0" -"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": - version "7.29.0" - resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz" - integrity sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw== +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.12.13", "@babel/code-frame@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz" + integrity sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw== dependencies: - "@babel/helper-validator-identifier" "^7.28.5" + "@babel/helper-validator-identifier" "^7.29.7" js-tokens "^4.0.0" picocolors "^1.1.1" -"@babel/compat-data@^7.28.6": - version "7.29.3" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.3.tgz" - integrity sha512-LIVqM46zQWZhj17qA8wb4nW/ixr2y1Nw+r1etiAWgRM6U1IqP+LNhL1yg440jYZR72jCWcWbLWzIosH+uP1fqg== - -"@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9", "@babel/core@^7.29.0": - version "7.29.0" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz" - integrity sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA== - dependencies: - "@babel/code-frame" "^7.29.0" - "@babel/generator" "^7.29.0" - "@babel/helper-compilation-targets" "^7.28.6" - "@babel/helper-module-transforms" "^7.28.6" - "@babel/helpers" "^7.28.6" - "@babel/parser" "^7.29.0" - "@babel/template" "^7.28.6" - "@babel/traverse" "^7.29.0" - "@babel/types" "^7.29.0" +"@babel/compat-data@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.7.tgz" + integrity sha512-locTkQyKvwIEgBzVrn8693ebc97F2U8ZHjbXwDXJ5Fn2TCpNwTlKcaKLkdHop5c/icOFE7qt7Q9JC5hnKNa6Gg== + +"@babel/core@^7.0.0", "@babel/core@^7.0.0 || ^8.0.0-0", "@babel/core@^7.0.0-0", "@babel/core@^7.11.6", "@babel/core@^7.12.3", "@babel/core@^7.23.9", "@babel/core@^7.29.0", "@babel/core@^7.8.0", "@babel/core@>=7.0.0-beta.0 <8": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/core/-/core-7.29.7.tgz" + integrity sha512-RgHBCvtjbOK2gXSNBNIkNoEc9qoVEtau3hj8gEqKQuL3HZAibKarWFEI3Lfm6EYKkLalOh8eSrj9b+ch9H/VBA== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/generator" "^7.29.7" + "@babel/helper-compilation-targets" "^7.29.7" + "@babel/helper-module-transforms" "^7.29.7" + "@babel/helpers" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/template" "^7.29.7" + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" "@jridgewell/remapping" "^2.3.5" convert-source-map "^2.0.0" debug "^4.1.0" @@ -130,84 +130,84 @@ json5 "^2.2.3" semver "^6.3.1" -"@babel/generator@^7.29.0", "@babel/generator@^7.7.2": - version "7.29.1" - resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz" - integrity sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw== +"@babel/generator@^7.29.7", "@babel/generator@^7.7.2": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/generator/-/generator-7.29.7.tgz" + integrity sha512-DkXD5OJQaAQIdZ1bt3UZdEnHAn9Imd3IVBdX03UFe+ony9Ojw5pzr9YVKGDY1jt+Gcn/FnGkNf8r+Vj5NOJWtQ== dependencies: - "@babel/parser" "^7.29.0" - "@babel/types" "^7.29.0" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" "@jridgewell/gen-mapping" "^0.3.12" "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" -"@babel/helper-compilation-targets@^7.28.6": - version "7.28.6" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz" - integrity sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA== +"@babel/helper-compilation-targets@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.29.7.tgz" + integrity sha512-wem6WaBj4NaVYVdNhLPPVacES6ZJ+KBBfSkTMD3YZxbP3rm3Di85tJU5ljaUNhaOynt+Aj0xruhYuzQBt8n71g== dependencies: - "@babel/compat-data" "^7.28.6" - "@babel/helper-validator-option" "^7.27.1" + "@babel/compat-data" "^7.29.7" + "@babel/helper-validator-option" "^7.29.7" browserslist "^4.24.0" lru-cache "^5.1.1" semver "^6.3.1" -"@babel/helper-globals@^7.28.0": - version "7.28.0" - resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz" - integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== +"@babel/helper-globals@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.29.7.tgz" + integrity sha512-3nQVUAtvkKH9zahfWgw96Jc/uFOmjACE1kQz82E2lqWmHBgjzbNlsC22nuQTfahmWeQtTq5nQ/4Nnd2A1wj4zA== -"@babel/helper-module-imports@^7.28.6": - version "7.28.6" - resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz" - integrity sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw== +"@babel/helper-module-imports@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.29.7.tgz" + integrity sha512-ejHwrQQYcm9xnTivShn2IDOlIzInN34AXskvq9QicvCtEzq1Vzclu/tKF8Jq1Cg8JG2GL6/EmjgsCT7lXepE3g== dependencies: - "@babel/traverse" "^7.28.6" - "@babel/types" "^7.28.6" + "@babel/traverse" "^7.29.7" + "@babel/types" "^7.29.7" -"@babel/helper-module-transforms@^7.28.6": - version "7.28.6" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz" - integrity sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA== +"@babel/helper-module-transforms@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.29.7.tgz" + integrity sha512-UPUVSyXbOh627KiCIGQSgwWzGeBKLkaJ9PJEdrngIwMSzxLR4jS4+f1f1jb7VzBbg8nFLaYotvVPFCTqdrmTAg== dependencies: - "@babel/helper-module-imports" "^7.28.6" - "@babel/helper-validator-identifier" "^7.28.5" - "@babel/traverse" "^7.28.6" + "@babel/helper-module-imports" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" + "@babel/traverse" "^7.29.7" "@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.27.1", "@babel/helper-plugin-utils@^7.8.0": version "7.27.1" resolved "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.27.1.tgz" integrity sha512-1gn1Up5YXka3YYAHGKpbideQ5Yjf1tDa9qYcgysz+cNCXukyLl6DjPXhD3VRwSb8c0J9tA4b2+rHEZtc6R0tlw== -"@babel/helper-string-parser@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz" - integrity sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA== +"@babel/helper-string-parser@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz" + integrity sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw== -"@babel/helper-validator-identifier@^7.28.5": - version "7.28.5" - resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz" - integrity sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q== +"@babel/helper-validator-identifier@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz" + integrity sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg== -"@babel/helper-validator-option@^7.27.1": - version "7.27.1" - resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz" - integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== +"@babel/helper-validator-option@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.29.7.tgz" + integrity sha512-N9ZErrD+yW5geCDtBqnOoxmR8+tNKiGuxKlDpuJxfsqpa2dFcexaziGAE/qoHLiDDreVNMupxGmSoNlyvsA3gw== -"@babel/helpers@^7.28.6": - version "7.29.2" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.2.tgz" - integrity sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw== +"@babel/helpers@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz" + integrity sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg== dependencies: - "@babel/template" "^7.28.6" - "@babel/types" "^7.29.0" + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" -"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.28.6", "@babel/parser@^7.29.0": - version "7.29.3" - resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.29.3.tgz" - integrity sha512-b3ctpQwp+PROvU/cttc4OYl4MzfJUWy6FZg+PMXfzmt/+39iHVF0sDfqay8TQM3JA2EUOyKcFZt75jWriQijsA== +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.23.9", "@babel/parser@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.29.7.tgz" + integrity sha512-hnORnjP/1P/zFEndoeX+n+t1RwWRJiJpM/jO7FW32Kn9r5+sJB2JWOdYo4L6k78j15eCwY3Gm/7364B1EMwtNg== dependencies: - "@babel/types" "^7.29.0" + "@babel/types" "^7.29.7" "@babel/plugin-syntax-async-generators@^7.8.4": version "7.8.4" @@ -347,35 +347,35 @@ resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.28.3.tgz" integrity sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA== -"@babel/template@^7.28.6", "@babel/template@^7.3.3": - version "7.28.6" - resolved "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz" - integrity sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ== - dependencies: - "@babel/code-frame" "^7.28.6" - "@babel/parser" "^7.28.6" - "@babel/types" "^7.28.6" - -"@babel/traverse@^7.28.6", "@babel/traverse@^7.29.0": - version "7.29.0" - resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz" - integrity sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA== - dependencies: - "@babel/code-frame" "^7.29.0" - "@babel/generator" "^7.29.0" - "@babel/helper-globals" "^7.28.0" - "@babel/parser" "^7.29.0" - "@babel/template" "^7.28.6" - "@babel/types" "^7.29.0" +"@babel/template@^7.29.7", "@babel/template@^7.3.3": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz" + integrity sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/types" "^7.29.7" + +"@babel/traverse@^7.29.7": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.7.tgz" + integrity sha512-EhlfNQtZ+NK22w5BM61ciuiq1m58ed33Wr1Xan//ZRTy6hgjnwyCffRYwzsGXdASJSUJ1guZILsErh1eQcl+zw== + dependencies: + "@babel/code-frame" "^7.29.7" + "@babel/generator" "^7.29.7" + "@babel/helper-globals" "^7.29.7" + "@babel/parser" "^7.29.7" + "@babel/template" "^7.29.7" + "@babel/types" "^7.29.7" debug "^4.3.1" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.28.2", "@babel/types@^7.28.6", "@babel/types@^7.29.0", "@babel/types@^7.3.3": - version "7.29.0" - resolved "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz" - integrity sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A== +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.28.2", "@babel/types@^7.29.7", "@babel/types@^7.3.3": + version "7.29.7" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.29.7.tgz" + integrity sha512-4zBIxpPzowiZpusoFkyGVwakdRJUyuH5PxQ/PrqghfdFWWasvnCdPfQXHrenDai+gyLARulZjZowCOj6fjT4pA== dependencies: - "@babel/helper-string-parser" "^7.27.1" - "@babel/helper-validator-identifier" "^7.28.5" + "@babel/helper-string-parser" "^7.29.7" + "@babel/helper-validator-identifier" "^7.29.7" "@bcoe/v8-coverage@^0.2.3": version "0.2.3" @@ -387,6 +387,11 @@ resolved "https://registry.npmjs.org/@braintree/sanitize-url/-/sanitize-url-7.1.1.tgz" integrity sha512-i1L7noDNxtFyL5DmZafWy1wRVhGehQmzZaz1HiN5e7iylJMSZR7ekOV7NsIqa5qBldlLrsKv4HbgFUVlQrz8Mw== +"@bufbuild/protobuf@2.12.0": + version "2.12.0" + resolved "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-2.12.0.tgz" + integrity sha512-B/XlCaFIP8LOwzo+bz5uFzATYokcwCKQcghqnlfwSmM5eX/qTkvDBnDPs+gXtX/RyjxJ4DRikECcPJbyALA8FA== + "@chain-registry/types@^0.50.196": version "0.50.196" resolved "https://registry.npmjs.org/@chain-registry/types/-/types-0.50.196.tgz" @@ -407,7 +412,7 @@ dependencies: "@chevrotain/types" "12.0.0" -"@chevrotain/regexp-to-ast@12.0.0", "@chevrotain/regexp-to-ast@~12.0.0": +"@chevrotain/regexp-to-ast@~12.0.0", "@chevrotain/regexp-to-ast@12.0.0": version "12.0.0" resolved "https://registry.npmjs.org/@chevrotain/regexp-to-ast/-/regexp-to-ast-12.0.0.tgz" integrity sha512-p+EW9MaJwgaHguhoqwOtx/FwuGr+DnNn857sXWOi/mClXIkPGl3rn7hGNWvo31HA3vyeQxjqe+H36yZJwYU8cA== @@ -436,6 +441,7 @@ integrity sha512-0MhX9/B4iL6Re04jPrttDm+BsP8y6mS7byuv0BvXgdXhbV5PdlsHt55dvNsuBCPZ7xq1oTAOOuotR9NFbQyMSA== dependencies: "@clack/core" "^0.3.3" + is-unicode-supported "*" picocolors "^1.0.0" sisteransi "^1.0.5" @@ -555,73 +561,11 @@ dependencies: "@jridgewell/trace-mapping" "0.3.9" -"@emnapi/core@^1.5.0": - version "1.10.0" - resolved "https://registry.yarnpkg.com/@emnapi/core/-/core-1.10.0.tgz#380ccc8f2412ea22d1d972df7f8ee23a3b9c7467" - integrity sha512-yq6OkJ4p82CAfPl0u9mQebQHKPJkY7WrIuk205cTYnYe+k2Z8YBh11FrbRG/H6ihirqcacOgl2BIO8oyMQLeXw== - dependencies: - "@emnapi/wasi-threads" "1.2.1" - tslib "^2.4.0" - -"@emnapi/runtime@^1.5.0": - version "1.10.0" - resolved "https://registry.yarnpkg.com/@emnapi/runtime/-/runtime-1.10.0.tgz#4b260c0d3534204e98c6110b8db1a987d26ec87c" - integrity sha512-ewvYlk86xUoGI0zQRNq/mC+16R1QeDlKQy21Ki3oSYXNgLb45GV1P6A0M+/s6nyCuNDqe5VpaY84BzXGwVbwFA== - dependencies: - tslib "^2.4.0" - -"@emnapi/wasi-threads@1.2.1", "@emnapi/wasi-threads@^1.1.0": - version "1.2.1" - resolved "https://registry.yarnpkg.com/@emnapi/wasi-threads/-/wasi-threads-1.2.1.tgz#28fed21a1ba1ce797c44a070abc94d42f3ae8548" - integrity sha512-uTII7OYF+/Mes/MrcIOYp5yOtSMLBWSIoLPpcgwipoiKbli6k322tcoFsxoIIxPDqW01SQGAgko4EzZi2BNv2w== - dependencies: - tslib "^2.4.0" - "@emotion/hash@^0.9.0": version "0.9.2" resolved "https://registry.npmjs.org/@emotion/hash/-/hash-0.9.2.tgz" integrity sha512-MyqliTZGuOm3+5ZRSaaBGP3USLw6+EGykkwZns2EPC5g8jJ4z9OrdZY9apkl3+UP9+sdz76YYkwCKP5gh8iY3g== -"@esbuild/aix-ppc64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz#bef96351f16520055c947aba28802eede3c9e9a9" - integrity sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA== - -"@esbuild/aix-ppc64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.27.7.tgz#82b74f92aa78d720b714162939fb248c90addf53" - integrity sha512-EKX3Qwmhz1eMdEJokhALr0YiD0lhQNwDqkPYyPhiSwKrh7/4KRjQc04sZ8db+5DVVnZ1LmbNDI1uAMPEUBnQPg== - -"@esbuild/android-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz#d2e70be7d51a529425422091e0dcb90374c1546c" - integrity sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg== - -"@esbuild/android-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.27.7.tgz#f78cb8a3121fc205a53285adb24972db385d185d" - integrity sha512-62dPZHpIXzvChfvfLJow3q5dDtiNMkwiRzPylSCfriLvZeq0a1bWChrGx/BbUbPwOrsWKMn8idSllklzBy+dgQ== - -"@esbuild/android-arm@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.9.tgz#d2a753fe2a4c73b79437d0ba1480e2d760097419" - integrity sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ== - -"@esbuild/android-arm@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.27.7.tgz#593e10a1450bbfcac6cb321f61f468453bac209d" - integrity sha512-jbPXvB4Yj2yBV7HUfE2KHe4GJX51QplCN1pGbYjvsyCZbQmies29EoJbkEc+vYuU5o45AfQn37vZlyXy4YJ8RQ== - -"@esbuild/android-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.9.tgz#5278836e3c7ae75761626962f902a0d55352e683" - integrity sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw== - -"@esbuild/android-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.27.7.tgz#453143d073326033d2d22caf9e48de4bae274b07" - integrity sha512-x5VpMODneVDb70PYV2VQOmIUUiBtY3D3mPBG8NxVk5CogneYhkR7MmM3yR/uMdITLrC1ml/NV1rj4bMJuy9MCg== - "@esbuild/darwin-arm64@0.25.9": version "0.25.9" resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz" @@ -632,216 +576,6 @@ resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.7.tgz" integrity sha512-5lckdqeuBPlKUwvoCXIgI2D9/ABmPq3Rdp7IfL70393YgaASt7tbju3Ac+ePVi3KDH6N2RqePfHnXkaDtY9fkw== -"@esbuild/darwin-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz#e27dbc3b507b3a1cea3b9280a04b8b6b725f82be" - integrity sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ== - -"@esbuild/darwin-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.27.7.tgz#27393dd18bb1263c663979c5f1576e00c2d024be" - integrity sha512-rYnXrKcXuT7Z+WL5K980jVFdvVKhCHhUwid+dDYQpH+qu+TefcomiMAJpIiC2EM3Rjtq0sO3StMV/+3w3MyyqQ== - -"@esbuild/freebsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz#364e3e5b7a1fd45d92be08c6cc5d890ca75908ca" - integrity sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q== - -"@esbuild/freebsd-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.7.tgz#22e4638fa502d1c0027077324c97640e3adf3a62" - integrity sha512-B48PqeCsEgOtzME2GbNM2roU29AMTuOIN91dsMO30t+Ydis3z/3Ngoj5hhnsOSSwNzS+6JppqWsuhTp6E82l2w== - -"@esbuild/freebsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz#7c869b45faeb3df668e19ace07335a0711ec56ab" - integrity sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg== - -"@esbuild/freebsd-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.27.7.tgz#9224b8e4fea924ce2194e3efc3e9aebf822192d6" - integrity sha512-jOBDK5XEjA4m5IJK3bpAQF9/Lelu/Z9ZcdhTRLf4cajlB+8VEhFFRjWgfy3M1O4rO2GQ/b2dLwCUGpiF/eATNQ== - -"@esbuild/linux-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz#48d42861758c940b61abea43ba9a29b186d6cb8b" - integrity sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw== - -"@esbuild/linux-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.27.7.tgz#4f5d1c27527d817b35684ae21419e57c2bda0966" - integrity sha512-RZPHBoxXuNnPQO9rvjh5jdkRmVizktkT7TCDkDmQ0W2SwHInKCAV95GRuvdSvA7w4VMwfCjUiPwDi0ZO6Nfe9A== - -"@esbuild/linux-arm@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz#6ce4b9cabf148274101701d112b89dc67cc52f37" - integrity sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw== - -"@esbuild/linux-arm@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.27.7.tgz#b9e9d070c8c1c0449cf12b20eac37d70a4595921" - integrity sha512-RkT/YXYBTSULo3+af8Ib0ykH8u2MBh57o7q/DAs3lTJlyVQkgQvlrPTnjIzzRPQyavxtPtfg0EopvDyIt0j1rA== - -"@esbuild/linux-ia32@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz#207e54899b79cac9c26c323fc1caa32e3143f1c4" - integrity sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A== - -"@esbuild/linux-ia32@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.27.7.tgz#3f80fb696aa96051a94047f35c85b08b21c36f9e" - integrity sha512-GA48aKNkyQDbd3KtkplYWT102C5sn/EZTY4XROkxONgruHPU72l+gW+FfF8tf2cFjeHaRbWpOYa/uRBz/Xq1Pg== - -"@esbuild/linux-loong64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz#0ba48a127159a8f6abb5827f21198b999ffd1fc0" - integrity sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ== - -"@esbuild/linux-loong64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.27.7.tgz#9be1f2c28210b13ebb4156221bba356fe1675205" - integrity sha512-a4POruNM2oWsD4WKvBSEKGIiWQF8fZOAsycHOt6JBpZ+JN2n2JH9WAv56SOyu9X5IqAjqSIPTaJkqN8F7XOQ5Q== - -"@esbuild/linux-mips64el@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz#a4d4cc693d185f66a6afde94f772b38ce5d64eb5" - integrity sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA== - -"@esbuild/linux-mips64el@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.27.7.tgz#4ab5ee67a3dfcbcb5e8fd7883dae6e735b1163b8" - integrity sha512-KabT5I6StirGfIz0FMgl1I+R1H73Gp0ofL9A3nG3i/cYFJzKHhouBV5VWK1CSgKvVaG4q1RNpCTR2LuTVB3fIw== - -"@esbuild/linux-ppc64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz#0f5805c1c6d6435a1dafdc043cb07a19050357db" - integrity sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w== - -"@esbuild/linux-ppc64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.27.7.tgz#dac78c689f6499459c4321e5c15032c12307e7ea" - integrity sha512-gRsL4x6wsGHGRqhtI+ifpN/vpOFTQtnbsupUF5R5YTAg+y/lKelYR1hXbnBdzDjGbMYjVJLJTd2OFmMewAgwlQ== - -"@esbuild/linux-riscv64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz#6776edece0f8fca79f3386398b5183ff2a827547" - integrity sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg== - -"@esbuild/linux-riscv64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.27.7.tgz#050f7d3b355c3a98308e935bc4d6325da91b0027" - integrity sha512-hL25LbxO1QOngGzu2U5xeXtxXcW+/GvMN3ejANqXkxZ/opySAZMrc+9LY/WyjAan41unrR3YrmtTsUpwT66InQ== - -"@esbuild/linux-s390x@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz#3f6f29ef036938447c2218d309dc875225861830" - integrity sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA== - -"@esbuild/linux-s390x@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.27.7.tgz#d61f715ce61d43fe5844ad0d8f463f88cbe4fef6" - integrity sha512-2k8go8Ycu1Kb46vEelhu1vqEP+UeRVj2zY1pSuPdgvbd5ykAw82Lrro28vXUrRmzEsUV0NzCf54yARIK8r0fdw== - -"@esbuild/linux-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz#831fe0b0e1a80a8b8391224ea2377d5520e1527f" - integrity sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg== - -"@esbuild/linux-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.27.7.tgz#ca8e1aa478fc8209257bf3ac8f79c4dc2982f32a" - integrity sha512-hzznmADPt+OmsYzw1EE33ccA+HPdIqiCRq7cQeL1Jlq2gb1+OyWBkMCrYGBJ+sxVzve2ZJEVeePbLM2iEIZSxA== - -"@esbuild/netbsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz#06f99d7eebe035fbbe43de01c9d7e98d2a0aa548" - integrity sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q== - -"@esbuild/netbsd-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.7.tgz#1650f2c1b948deeb3ef948f2fc30614723c09690" - integrity sha512-b6pqtrQdigZBwZxAn1UpazEisvwaIDvdbMbmrly7cDTMFnw/+3lVxxCTGOrkPVnsYIosJJXAsILG9XcQS+Yu6w== - -"@esbuild/netbsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz#db99858e6bed6e73911f92a88e4edd3a8c429a52" - integrity sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g== - -"@esbuild/netbsd-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.27.7.tgz#65772ab342c4b3319bf0705a211050aac1b6e320" - integrity sha512-OfatkLojr6U+WN5EDYuoQhtM+1xco+/6FSzJJnuWiUw5eVcicbyK3dq5EeV/QHT1uy6GoDhGbFpprUiHUYggrw== - -"@esbuild/openbsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz#afb886c867e36f9d86bb21e878e1185f5d5a0935" - integrity sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ== - -"@esbuild/openbsd-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.7.tgz#37ed7cfa66549d7955852fce37d0c3de4e715ea1" - integrity sha512-AFuojMQTxAz75Fo8idVcqoQWEHIXFRbOc1TrVcFSgCZtQfSdc1RXgB3tjOn/krRHENUB4j00bfGjyl2mJrU37A== - -"@esbuild/openbsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz#30855c9f8381fac6a0ef5b5f31ac6e7108a66ecf" - integrity sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA== - -"@esbuild/openbsd-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.27.7.tgz#01bf3d385855ef50cb33db7c4b52f957c34cd179" - integrity sha512-+A1NJmfM8WNDv5CLVQYJ5PshuRm/4cI6WMZRg1by1GwPIQPCTs1GLEUHwiiQGT5zDdyLiRM/l1G0Pv54gvtKIg== - -"@esbuild/openharmony-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz#2f2144af31e67adc2a8e3705c20c2bd97bd88314" - integrity sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg== - -"@esbuild/openharmony-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.7.tgz#6c1f94b34086599aabda4eac8f638294b9877410" - integrity sha512-+KrvYb/C8zA9CU/g0sR6w2RBw7IGc5J2BPnc3dYc5VJxHCSF1yNMxTV5LQ7GuKteQXZtspjFbiuW5/dOj7H4Yw== - -"@esbuild/sunos-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz#69b99a9b5bd226c9eb9c6a73f990fddd497d732e" - integrity sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw== - -"@esbuild/sunos-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.27.7.tgz#4b0dd17ae0a6941d2d0fd35a906392517071a90d" - integrity sha512-ikktIhFBzQNt/QDyOL580ti9+5mL/YZeUPKU2ivGtGjdTYoqz6jObj6nOMfhASpS4GU4Q/Clh1QtxWAvcYKamA== - -"@esbuild/win32-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz#d789330a712af916c88325f4ffe465f885719c6b" - integrity sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ== - -"@esbuild/win32-arm64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.27.7.tgz#34193ab5565d6ff68ca928ac04be75102ccb2e77" - integrity sha512-7yRhbHvPqSpRUV7Q20VuDwbjW5kIMwTHpptuUzV+AA46kiPze5Z7qgt6CLCK3pWFrHeNfDd1VKgyP4O+ng17CA== - -"@esbuild/win32-ia32@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz#52fc735406bd49688253e74e4e837ac2ba0789e3" - integrity sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww== - -"@esbuild/win32-ia32@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.27.7.tgz#eb67f0e4482515d8c1894ede631c327a4da9fc4d" - integrity sha512-SmwKXe6VHIyZYbBLJrhOoCJRB/Z1tckzmgTLfFYOfpMAx63BJEaL9ExI8x7v0oAO3Zh6D/Oi1gVxEYr5oUCFhw== - -"@esbuild/win32-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz#585624dc829cfb6e7c0aa6c3ca7d7e6daa87e34f" - integrity sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ== - -"@esbuild/win32-x64@0.27.7": - version "0.27.7" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.27.7.tgz#8fe30b3088b89b4873c3a6cc87597ae3920c0a8b" - integrity sha512-56hiAJPhwQ1R4i+21FVF7V8kSD5zZTdHcVuRFMW0hn753vVfQN8xlx4uOPT4xoGH0Z/oVATuR82AiqSTDIpaHg== - "@eslint-community/eslint-plugin-eslint-comments@^4.0.0": version "4.7.1" resolved "https://registry.npmjs.org/@eslint-community/eslint-plugin-eslint-comments/-/eslint-plugin-eslint-comments-4.7.1.tgz" @@ -1327,7 +1061,7 @@ "@gql.tada/internal" "1.0.8" graphql "^15.5.0 || ^16.0.0 || ^17.0.0" -"@gql.tada/internal@1.0.8", "@gql.tada/internal@^1.0.0": +"@gql.tada/internal@^1.0.0", "@gql.tada/internal@1.0.8": version "1.0.8" resolved "https://registry.npmjs.org/@gql.tada/internal/-/internal-1.0.8.tgz" integrity sha512-XYdxJhtHC5WtZfdDqtKjcQ4d7R1s0d1rnlSs3OcBEUbYiPoJJfZU7tWsVXuv047Z6msvmr4ompJ7eLSK5Km57g== @@ -1576,7 +1310,7 @@ jest-haste-map "^29.7.0" slash "^3.0.0" -"@jest/transform@^29.7.0": +"@jest/transform@^29.0.0 || ^30.0.0", "@jest/transform@^29.7.0": version "29.7.0" resolved "https://registry.npmjs.org/@jest/transform/-/transform-29.7.0.tgz" integrity sha512-ok/BTPFzFKVMwO5eOHRrvnBVHdRy9IrsrW1GpMaQ9MCnilNLXQKmAX8s1YXDFaai9xJpac2ySzV0YeRRECr2Vw== @@ -1597,7 +1331,7 @@ slash "^3.0.0" write-file-atomic "^4.0.2" -"@jest/types@^29.6.3": +"@jest/types@^29.0.0 || ^30.0.0", "@jest/types@^29.6.3": version "29.6.3" resolved "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz" integrity sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw== @@ -1635,14 +1369,6 @@ resolved "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz" integrity sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og== -"@jridgewell/trace-mapping@0.3.9": - version "0.3.9" - resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" - integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== - dependencies: - "@jridgewell/resolve-uri" "^3.0.3" - "@jridgewell/sourcemap-codec" "^1.4.10" - "@jridgewell/trace-mapping@^0.3.12", "@jridgewell/trace-mapping@^0.3.18", "@jridgewell/trace-mapping@^0.3.24", "@jridgewell/trace-mapping@^0.3.28": version "0.3.30" resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.30.tgz" @@ -1651,6 +1377,14 @@ "@jridgewell/resolve-uri" "^3.1.0" "@jridgewell/sourcemap-codec" "^1.4.14" +"@jridgewell/trace-mapping@0.3.9": + version "0.3.9" + resolved "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz" + integrity sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ== + dependencies: + "@jridgewell/resolve-uri" "^3.0.3" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@lukeed/csprng@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.1.0.tgz" @@ -1718,7 +1452,7 @@ dependencies: langium "^4.0.0" -"@mysten/bcs@1.9.2", "@mysten/bcs@^1.9.0": +"@mysten/bcs@^1.9.0", "@mysten/bcs@1.9.2": version "1.9.2" resolved "https://registry.npmjs.org/@mysten/bcs/-/bcs-1.9.2.tgz" integrity sha512-kBk5xrxV9OWR7i+JhL/plQrgQ2/KJhB2pB5gj+w6GXhbMQwS3DPpOvi/zN0Tj84jwPvHMllpEl0QHj6ywN7/eQ== @@ -1754,14 +1488,7 @@ dependencies: "@scure/base" "^1.2.6" -"@napi-rs/wasm-runtime@^1.0.7": - version "1.1.4" - resolved "https://registry.yarnpkg.com/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.4.tgz#a46bbfedc29751b7170c5d23bc1d8ee8c7e3c1e1" - integrity sha512-3NQNNgA1YSlJb/kMH1ildASP9HW7/7kYnRI2szWJaofaS1hWmbGI4H+d3+22aGzXXN9IJ+n+GiFVcGipJP18ow== - dependencies: - "@tybys/wasm-util" "^0.10.1" - -"@near-js/accounts@2.5.1", "@near-js/accounts@^2.2.4": +"@near-js/accounts@^2.2.4", "@near-js/accounts@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/accounts/-/accounts-2.5.1.tgz" integrity sha512-L4/Z9Ujwnz8/uvOExESP6h0t/plu4/0SFrL+UJBnfO5LObVwnJH2KG6MCLONy8rKh1FZHOlT9LPhtG/6nUrvOQ== @@ -1781,7 +1508,7 @@ lru_map "0.4.1" near-abi "0.2.0" -"@near-js/crypto@2.5.1", "@near-js/crypto@^2.2.4": +"@near-js/crypto@^2.2.4", "@near-js/crypto@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/crypto/-/crypto-2.5.1.tgz" integrity sha512-Kb+bbnUrfvuzzed9hpLRpcIlCMOaQlw/7BxlZPCq8DggVaK1m0nKR1DHQs2cV0Q0WSKSk2UrFJho1dxeKL5alg== @@ -1809,7 +1536,7 @@ "@near-js/crypto" "2.5.1" "@near-js/keystores" "2.5.1" -"@near-js/keystores@2.5.1", "@near-js/keystores@^2.2.4": +"@near-js/keystores@^2.2.4", "@near-js/keystores@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/keystores/-/keystores-2.5.1.tgz" integrity sha512-UlP3GXeDzRyUlL3qKZUkwSwbABDarhOqRRR0vcMBOOu+063GDULGio9GTWDvKDDi11nmfbhOzbiY5vXEW4jR8g== @@ -1817,7 +1544,7 @@ "@near-js/crypto" "2.5.1" "@near-js/types" "2.5.1" -"@near-js/providers@2.5.1", "@near-js/providers@^2.2.4": +"@near-js/providers@^2.2.4", "@near-js/providers@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/providers/-/providers-2.5.1.tgz" integrity sha512-4DUyAKdEJVOF/7Ud364lDS8Wk+ZUc67ozgqa3dd8z/9RqIWIPCufPiZS3/89Vxi0qL+1uKlXchPpiemZLC+UOw== @@ -1831,7 +1558,7 @@ optionalDependencies: node-fetch "2.6.7" -"@near-js/signers@2.5.1", "@near-js/signers@^2.2.4": +"@near-js/signers@^2.2.4", "@near-js/signers@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/signers/-/signers-2.5.1.tgz" integrity sha512-5Zmf/2mnnSqEjYoJ+kuS3CQPMwrGInWfGlIxvpvRWXZxL3cv/7REuhclxrLJqq5SqqEAl2cL32V1u0S18r+rkA== @@ -1847,7 +1574,7 @@ resolved "https://registry.npmjs.org/@near-js/tokens/-/tokens-2.5.1.tgz" integrity sha512-doDtOaSA2FOsYzzwocg0L02z6ORNL7HFAuL455y2O38//F4C2jp+C9De9fWrItkrim2jKjoSR3UvO2AuVbwmWA== -"@near-js/transactions@2.5.1", "@near-js/transactions@^2.2.4": +"@near-js/transactions@^2.2.4", "@near-js/transactions@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/transactions/-/transactions-2.5.1.tgz" integrity sha512-0svK5K6VqOciSIn9mxreyS0uQf8T1UZc71JBA6yrstpHJhltz/dvNUMY0FV+xHx3H/KAdvCMjX0VLEpyi08yWQ== @@ -1858,12 +1585,12 @@ "@noble/hashes" "1.7.1" borsh "1.0.0" -"@near-js/types@2.5.1", "@near-js/types@^2.2.4": +"@near-js/types@^2.2.4", "@near-js/types@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/types/-/types-2.5.1.tgz" integrity sha512-lUJJmbV6qcilIwswldeP7FIjkjTWvmtgI+yQHVmiBNRVjYvPMiQ/e9vs3SXE/cYtRluAdq0JHJwYoqhFb69mwA== -"@near-js/utils@2.5.1", "@near-js/utils@^2.2.4": +"@near-js/utils@^2.2.4", "@near-js/utils@2.5.1": version "2.5.1" resolved "https://registry.npmjs.org/@near-js/utils/-/utils-2.5.1.tgz" integrity sha512-bXsw7Qkm689tV0sg6nwplAFoL6PrQ5tY72YIoiZezZ8ZGBea+2+ILmUIHWKLum7b7qJHKq1iH7uycE+m+Z4QHA== @@ -1878,13 +1605,34 @@ resolved "https://registry.npmjs.org/@noble/ciphers/-/ciphers-1.3.0.tgz" integrity sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw== -"@noble/curves@1.4.2", "@noble/curves@~1.4.0": +"@noble/curves@^1.0.0", "@noble/curves@^1.4.0", "@noble/curves@^1.4.2", "@noble/curves@^1.6.0", "@noble/curves@^1.9.0", "@noble/curves@^1.9.2", "@noble/curves@~1.9.0": + version "1.9.7" + resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz" + integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/curves@=1.9.4": + version "1.9.4" + resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.9.4.tgz" + integrity sha512-2bKONnuM53lINoDrSmK8qP8W271ms7pygDhZt4SiLOoLwBtoHqeCFi6RG42V8zd3mLHuJFhU/Bmaqo4nX0/kBw== + dependencies: + "@noble/hashes" "1.8.0" + +"@noble/curves@~1.4.0", "@noble/curves@1.4.2": version "1.4.2" resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.4.2.tgz" integrity sha512-TavHr8qycMChk8UwMld0ZDRvatedkzWfH8IiaeGCfymOP5i0hSCozz9vHOL0nkwk7HRMlFnAiKpS2jrUmSybcw== dependencies: "@noble/hashes" "1.4.0" +"@noble/curves@~1.8.1": + version "1.8.2" + resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz" + integrity sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g== + dependencies: + "@noble/hashes" "1.7.2" + "@noble/curves@1.8.1": version "1.8.1" resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.8.1.tgz" @@ -1899,57 +1647,51 @@ dependencies: "@noble/hashes" "1.8.0" -"@noble/curves@=1.9.4": - version "1.9.4" - resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.9.4.tgz" - integrity sha512-2bKONnuM53lINoDrSmK8qP8W271ms7pygDhZt4SiLOoLwBtoHqeCFi6RG42V8zd3mLHuJFhU/Bmaqo4nX0/kBw== - dependencies: - "@noble/hashes" "1.8.0" - -"@noble/curves@^1.0.0", "@noble/curves@^1.4.0", "@noble/curves@^1.4.2", "@noble/curves@^1.6.0", "@noble/curves@^1.9.0", "@noble/curves@^1.9.2", "@noble/curves@~1.9.0": - version "1.9.7" - resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.9.7.tgz" - integrity sha512-gbKGcRUYIjA3/zCCNaWDciTMFI0dCkvou3TL8Zmy5Nc7sJ47a0jtOeZoTaMxkuqRo9cRhjOdZJXegxYE5FN/xw== - dependencies: - "@noble/hashes" "1.8.0" - -"@noble/curves@~1.8.1": - version "1.8.2" - resolved "https://registry.npmjs.org/@noble/curves/-/curves-1.8.2.tgz" - integrity sha512-vnI7V6lFNe0tLAuJMu+2sX+FcL14TaCWy1qiczg1VwRmPrpQCdq5ESXQMqUc2tluRNf6irBXrWbl1mGN8uaU/g== - dependencies: - "@noble/hashes" "1.7.2" +"@noble/hashes@^1.0.0", "@noble/hashes@^1.2.0", "@noble/hashes@^1.4.0", "@noble/hashes@^1.5.0", "@noble/hashes@^1.7.1", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0", "@noble/hashes@1.8.0": + version "1.8.0" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz" + integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== -"@noble/hashes@1.2.0", "@noble/hashes@~1.2.0": +"@noble/hashes@~1.2.0", "@noble/hashes@1.2.0": version "1.2.0" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.2.0.tgz" integrity sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ== -"@noble/hashes@1.4.0", "@noble/hashes@~1.4.0": +"@noble/hashes@~1.4.0", "@noble/hashes@1.4.0": version "1.4.0" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.4.0.tgz" integrity sha512-V1JJ1WTRUqHHrOSh597hURcMqVKVGL/ea3kv0gSnEdsEZ0/+VyPghM1lMNGc00z7CIQorSvbKpuJkxvuHbvdbg== +"@noble/hashes@~1.7.1", "@noble/hashes@1.7.2": + version "1.7.2" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz" + integrity sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ== + "@noble/hashes@1.7.1": version "1.7.1" resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.1.tgz" integrity sha512-B8XBPsn4vT/KJAGqDzbwztd+6Yte3P4V7iafm24bxgDe/mlRuK6xmWPuCNrKt2vDafZ8MfJLlchDG/vYafQEjQ== -"@noble/hashes@1.7.2", "@noble/hashes@~1.7.1": - version "1.7.2" - resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.7.2.tgz" - integrity sha512-biZ0NUSxyjLLqo6KxEJ1b+C2NAx0wtDoFvCaXHGgUkeHzf3Xc1xKumFKREuT7f7DARNZ/slvYUwFG6B0f2b6hQ== - -"@noble/hashes@1.8.0", "@noble/hashes@^1.0.0", "@noble/hashes@^1.2.0", "@noble/hashes@^1.4.0", "@noble/hashes@^1.5.0", "@noble/hashes@^1.7.1", "@noble/hashes@^1.8.0", "@noble/hashes@~1.8.0": - version "1.8.0" - resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz" - integrity sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A== +"@noble/hashes@2.2.0": + version "2.2.0" + resolved "https://registry.npmjs.org/@noble/hashes/-/hashes-2.2.0.tgz" + integrity sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg== -"@noble/secp256k1@1.7.1", "@noble/secp256k1@~1.7.0": +"@noble/secp256k1@~1.7.0", "@noble/secp256k1@1.7.1": version "1.7.1" resolved "https://registry.npmjs.org/@noble/secp256k1/-/secp256k1-1.7.1.tgz" integrity sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw== +"@nockchain/rose-ts@^0.2.3": + version "0.2.3" + resolved "https://registry.npmjs.org/@nockchain/rose-ts/-/rose-ts-0.2.3.tgz" + integrity sha512-mvBWlO7JrmIYY1zZpZxPsOVJmFvKupcJ39v2X3n4fOYleJrRBrdzqWiqqEqEBVJEj/nd4XLwZu/SnoGpqOG4mg== + dependencies: + "@bufbuild/protobuf" "2.12.0" + "@noble/hashes" "2.2.0" + "@scure/base" "2.2.0" + "@scure/bip39" "2.2.0" + "@nomicfoundation/edr-darwin-arm64@0.12.0-next.23": version "0.12.0-next.23" resolved "https://registry.npmjs.org/@nomicfoundation/edr-darwin-arm64/-/edr-darwin-arm64-0.12.0-next.23.tgz" @@ -2103,7 +1845,7 @@ dependencies: "@radix-ui/react-visually-hidden" "1.2.3" -"@radix-ui/react-accordion@1.2.12", "@radix-ui/react-accordion@^1.2.3": +"@radix-ui/react-accordion@^1.2.3", "@radix-ui/react-accordion@1.2.12": version "1.2.12" resolved "https://registry.npmjs.org/@radix-ui/react-accordion/-/react-accordion-1.2.12.tgz" integrity sha512-T4nygeh9YE9dLRPhAHSeOZi7HBXo+0kYIPJXayZfvWOWA0+n3dESrZbjfDPUABkUNym6Hd+f2IR113To8D2GPA== @@ -2215,7 +1957,7 @@ resolved "https://registry.npmjs.org/@radix-ui/react-context/-/react-context-1.1.2.tgz" integrity sha512-jCi/QKUM2r1Ju5a3J64TH2A5SpKAgh0LpknyqdQ4m6DCV0xJ2HG1xARRwNGPQfi1SLdLWZ1OJz6F4OMBBNiGJA== -"@radix-ui/react-dialog@1.1.15", "@radix-ui/react-dialog@^1.1.6": +"@radix-ui/react-dialog@^1.1.6", "@radix-ui/react-dialog@1.1.15": version "1.1.15" resolved "https://registry.npmjs.org/@radix-ui/react-dialog/-/react-dialog-1.1.15.tgz" integrity sha512-TCglVRtzlffRNxRMEyR36DGBLJpeusFcgMVD9PZEzAKnUs1lKCgX5u9BmC2Yg+LL9MgZDugFFs1Vl+Jp4t/PGw== @@ -2317,7 +2059,7 @@ dependencies: "@radix-ui/react-use-layout-effect" "1.1.1" -"@radix-ui/react-label@2.1.7", "@radix-ui/react-label@^2.1.2": +"@radix-ui/react-label@^2.1.2", "@radix-ui/react-label@2.1.7": version "2.1.7" resolved "https://registry.npmjs.org/@radix-ui/react-label/-/react-label-2.1.7.tgz" integrity sha512-YT1GqPSL8kJn20djelMX7/cTRp/Y9w5IZHvfxQTVHrOqa2yMl7i/UfMqKRU5V7mEyKTrUVgJXhNQPVCG8PBLoQ== @@ -2364,7 +2106,7 @@ "@radix-ui/react-roving-focus" "1.1.11" "@radix-ui/react-use-controllable-state" "1.2.2" -"@radix-ui/react-navigation-menu@1.2.14", "@radix-ui/react-navigation-menu@^1.2.5": +"@radix-ui/react-navigation-menu@^1.2.5", "@radix-ui/react-navigation-menu@1.2.14": version "1.2.14" resolved "https://registry.npmjs.org/@radix-ui/react-navigation-menu/-/react-navigation-menu-1.2.14.tgz" integrity sha512-YB9mTFQvCOAQMHU+C/jVl96WmuWeltyUEpRJJky51huhds5W2FQr1J8D/16sQlf0ozxkPK8uF3niQMdUwZPv5w== @@ -2416,7 +2158,7 @@ "@radix-ui/react-use-effect-event" "0.0.2" "@radix-ui/react-use-is-hydrated" "0.1.0" -"@radix-ui/react-popover@1.1.15", "@radix-ui/react-popover@^1.1.6": +"@radix-ui/react-popover@^1.1.6", "@radix-ui/react-popover@1.1.15": version "1.1.15" resolved "https://registry.npmjs.org/@radix-ui/react-popover/-/react-popover-1.1.15.tgz" integrity sha512-kr0X2+6Yy/vJzLYJUPCZEc8SfQcf+1COFoAqauJm74umQhta9M7lNJHP7QQS3vkvcGLQUbWpMzwrXYwrYztHKA== @@ -2601,7 +2343,7 @@ "@radix-ui/react-use-previous" "1.1.1" "@radix-ui/react-use-size" "1.1.1" -"@radix-ui/react-tabs@1.1.13", "@radix-ui/react-tabs@^1.1.3": +"@radix-ui/react-tabs@^1.1.3", "@radix-ui/react-tabs@1.1.13": version "1.1.13" resolved "https://registry.npmjs.org/@radix-ui/react-tabs/-/react-tabs-1.1.13.tgz" integrity sha512-7xdcatg7/U+7+Udyoj2zodtI9H/IIopqo+YOIcZOq1nJwXWBZ9p8xiu5llXlekDbZkca79a/fozEYQXIA4sW6A== @@ -2770,131 +2512,11 @@ estree-walker "^2.0.2" picomatch "^4.0.2" -"@rollup/rollup-android-arm-eabi@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.60.3.tgz#31503ca40424374cd6c5198031cf4d5a73de9727" - integrity sha512-x35CNW/ANXG3hE/EZpRU8MXX1JDN86hBb2wMGAtltkz7pc6cxgjpy1OMMfDosOQ+2hWqIkag/fGok1Yady9nGw== - -"@rollup/rollup-android-arm64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.60.3.tgz#7cbc30c88507013d0f982cfeb8884337ba1e0bb2" - integrity sha512-xw3xtkDApIOGayehp2+Rz4zimfkaX65r4t47iy+ymQB2G4iJCBBfj0ogVg5jpvjpn8UWn/+q9tprxleYeNp3Hw== - "@rollup/rollup-darwin-arm64@4.60.3": version "4.60.3" resolved "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.60.3.tgz" integrity sha512-vo6Y5Qfpx7/5EaamIwi0WqW2+zfiusVihKatLvtN1VFVy3D13uERk/6gZLU1UiHRL6fDXqj/ELIeVRGnvcTE1g== -"@rollup/rollup-darwin-x64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.60.3.tgz#dfa0236581c55ecc0bcaeb2ea1f2e800c58dc3e2" - integrity sha512-D+0QGcZhBzTN82weOnsSlY7V7+RMmPuF1CkbxyMAGE8+ZHeUjyb76ZiWmBlCu//AQQONvxcqRbwZTajZKqjuOw== - -"@rollup/rollup-freebsd-arm64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.60.3.tgz#4c5977413b87808a13b5edd524e46fafddb85b52" - integrity sha512-6HnvHCT7fDyj6R0Ph7A6x8dQS/S38MClRWeDLqc0MdfWkxjiu1HSDYrdPhqSILzjTIC/pnXbbJbo+ft+gy/9hQ== - -"@rollup/rollup-freebsd-x64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.60.3.tgz#5cb2cee62ffee3ada4a0b44353e96cf98cfc7c3c" - integrity sha512-KHLgC3WKlUYW3ShFKnnosZDOJ0xjg9zp7au3sIm2bs/tGBeC2ipmvRh/N7JKi0t9Ue20C0dpEshi8WUubg+cnA== - -"@rollup/rollup-linux-arm-gnueabihf@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.60.3.tgz#04700cad36dd43ae81044fe7ee73e925845c4b85" - integrity sha512-DV6fJoxEYWJOvaZIsok7KrYl0tPvga5OZ2yvKHNNYyk/2roMLqQAbGhr78EQ5YhHpnhLKJD3S1WFusAkmUuV5g== - -"@rollup/rollup-linux-arm-musleabihf@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.60.3.tgz#548ebf3997b3a6dcc7cdd7da813ff0c46000ac0a" - integrity sha512-mQKoJAzvuOs6F+TZybQO4GOTSMUu7v0WdxEk24krQ/uUxXoPTtHjuaUuPmFhtBcM4K0ons8nrE3JyhTuCFtT/w== - -"@rollup/rollup-linux-arm64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.60.3.tgz#0264608f504b33725639ebe93be02c40e71a35c1" - integrity sha512-Whjj2qoiJ6+OOJMGptTYazaJvjOJm+iKHpXQM1P3LzGjt7Ff++Tp7nH4N8J/BUA7R9IHfDyx4DJIflifwnbmIA== - -"@rollup/rollup-linux-arm64-musl@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.60.3.tgz#147cf4889502cd3b331a800b8ca6741f87873079" - integrity sha512-4YTNHKqGng5+yiZt3mg77nmyuCfmNfX4fPmyUapBcIk+BdwSwmCWGXOUxhXbBEkFHtoN5boLj/5NON+u5QC9tg== - -"@rollup/rollup-linux-loong64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-gnu/-/rollup-linux-loong64-gnu-4.60.3.tgz#0c27c6b5258dcb3d0290e3bd04ba6277c9d7e541" - integrity sha512-SU3kNlhkpI4UqlUc2VXPGK9o886ZsSeGfMAX2ba2b8DKmMXq4AL7KUrkSWVbb7koVqx41Yczx6dx5PNargIrEA== - -"@rollup/rollup-linux-loong64-musl@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-loong64-musl/-/rollup-linux-loong64-musl-4.60.3.tgz#f0f18075ea0bfa2c992f8e3933b39b6ef91f7799" - integrity sha512-6lDLl5h4TXpB1mTf2rQWnAk/LcXrx9vBfu/DT5TIPhvMhRWaZ5MxkIc8u4lJAmBo6klTe1ywXIUHFjylW505sg== - -"@rollup/rollup-linux-ppc64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-gnu/-/rollup-linux-ppc64-gnu-4.60.3.tgz#149bb5cb8893589ffaa1924b4eac4282e9fa4c69" - integrity sha512-BMo8bOw8evlup/8G+cj5xWtPyp93xPdyoSN16Zy90Q2QZ0ZYRhCt6ZJSwbrRzG9HApFabjwj2p25TUPDWrhzqQ== - -"@rollup/rollup-linux-ppc64-musl@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-ppc64-musl/-/rollup-linux-ppc64-musl-4.60.3.tgz#200a063e298b05f996917d2aa53de749d54c0ca0" - integrity sha512-E0L8X1dZN1/Rph+5VPF6Xj2G7JJvMACVXtamTJIDrVI44Y3K+G8gQaMEAavbqCGTa16InptiVrX6eM6pmJ+7qA== - -"@rollup/rollup-linux-riscv64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.60.3.tgz#6d6d6eb996197ba86f95f9a6c442bc862f0756d4" - integrity sha512-oZJ/WHaVfHUiRAtmTAeo3DcevNsVvH8mbvodjZy7D5QKvCefO371SiKRpxoDcCxB3PTRTLayWBkvmDQKTcX/sw== - -"@rollup/rollup-linux-riscv64-musl@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-riscv64-musl/-/rollup-linux-riscv64-musl-4.60.3.tgz#9deb86001785cfcbc761457f50cd7c112fda0df9" - integrity sha512-Dhbyh7j9FybM3YaTgaHmVALwA8AkUwTPccyCQ79TG9AJUsMQqgN1DDEZNr4+QUfwiWvLDumW5vdwzoeUF+TNxQ== - -"@rollup/rollup-linux-s390x-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.60.3.tgz#d8228720c6e42da190d96c31a3495d70cf8284b9" - integrity sha512-cJd1X5XhHHlltkaypz1UcWLA8AcoIi1aWhsvaWDskD1oz2eKCypnqvTQ8ykMNI0RSmm7NkTdSqSSD7zM0xa6Ig== - -"@rollup/rollup-linux-x64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.60.3.tgz#df6bb38617a66a842bd2aeac9560cd729d084258" - integrity sha512-DAZDBHQfG2oQuhY7mc6I3/qB4LU2fQCjRvxbDwd/Jdvb9fypP4IJ4qmtu6lNjes6B531AI8cg1aKC2di97bUxA== - -"@rollup/rollup-linux-x64-musl@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.60.3.tgz#75e3e72849266b4fdd65f2da6c62423051e35636" - integrity sha512-cRxsE8c13mZOh3vP+wLDxpQBRrOHDIGOWyDL93Sy0Ga8y515fBcC2pjUfFwUe5T7tqvTvWbCpg1URM/AXdWIXA== - -"@rollup/rollup-openbsd-x64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-openbsd-x64/-/rollup-openbsd-x64-4.60.3.tgz#e1080f0efb8b15cda39b3e62de5fb806079ab6e9" - integrity sha512-QaWcIgRxqEdQdhJqW4DJctsH6HCmo5vHxY0krHSX4jMtOqfzC+dqDGuHM87bu4H8JBeibWx7jFz+h6/4C8wA5Q== - -"@rollup/rollup-openharmony-arm64@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-openharmony-arm64/-/rollup-openharmony-arm64-4.60.3.tgz#1fbda2d95c29dbfceb62785431754cd5aab86c72" - integrity sha512-AaXwSvUi3QIPtroAUw1t5yHGIyqKEXwH54WUocFolZhpGDruJcs8c+xPNDRn4XiQsS7MEwnYsHW2l0MBLDMkWg== - -"@rollup/rollup-win32-arm64-msvc@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.60.3.tgz#deab3470815f97996f1d0d3608549cf1b7e4ffc2" - integrity sha512-65LAKM/bAWDqKNEelHlcHvm2V+Vfb8C6INFxQXRHCvaVN1rJfwr4NvdP4FyzUaLqWfaCGaadf6UbTm8xJeYfEg== - -"@rollup/rollup-win32-ia32-msvc@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.60.3.tgz#817acae2ed4572960b59235ff2322381b6d82f26" - integrity sha512-EEM2gyhBF5MFnI6vMKdX1LAosE627RGBzIoGMdLloPZkXrUN0Ckqgr2Qi8+J3zip/8NVVro3/FjB+tjhZUgUHA== - -"@rollup/rollup-win32-x64-gnu@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-gnu/-/rollup-win32-x64-gnu-4.60.3.tgz#48129be99b0250d76b9c6d0ac983bef563a1c48a" - integrity sha512-E5Eb5H/DpxaoXH++Qkv28RcUJboMopmdDUALBczvHMf7hNIxaDZqwY5lK12UK1BHacSmvupoEWGu+n993Z0y1A== - -"@rollup/rollup-win32-x64-msvc@4.60.3": - version "4.60.3" - resolved "https://registry.yarnpkg.com/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.60.3.tgz#cc6f094a3ffe5556bb4a831ee6fb572b8cd81a75" - integrity sha512-hPt/bgL5cE+Qp+/TPHBqptcAgPzgj46mPcg/16zNUmbQk0j+mOEQV/+Lqu8QRtDV3Ek95Q6FeFITpuhl6OTsAA== - "@rtsao/scc@^1.1.0": version "1.1.0" resolved "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz" @@ -2910,11 +2532,30 @@ resolved "https://registry.npmjs.org/@scure/base/-/base-2.2.0.tgz" integrity sha512-b8XEupJibegiXV+tDUseI8oLQc8ei3d/4Jkb2RpbHh3MfE054ov3uIz2dhFkB3FI8iwYkEh0gGCApkrYggkPNg== -"@scure/base@~1.1.0", "@scure/base@~1.1.6": +"@scure/base@~1.1.0": + version "1.1.9" + resolved "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz" + integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== + +"@scure/base@~1.1.6": version "1.1.9" resolved "https://registry.npmjs.org/@scure/base/-/base-1.1.9.tgz" integrity sha512-8YKhl8GHiNI/pU2VMaofa2Tor7PJRAjwQLBBuilkJ9L5+13yVbC7JO/wS7piioAvPSwR3JKM1IJ/u4xQzbcXKg== +"@scure/base@2.2.0": + version "2.2.0" + resolved "https://registry.npmjs.org/@scure/base/-/base-2.2.0.tgz" + integrity sha512-b8XEupJibegiXV+tDUseI8oLQc8ei3d/4Jkb2RpbHh3MfE054ov3uIz2dhFkB3FI8iwYkEh0gGCApkrYggkPNg== + +"@scure/bip32@^1.3.1", "@scure/bip32@^1.4.0", "@scure/bip32@^1.7.0", "@scure/bip32@1.7.0": + version "1.7.0" + resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz" + integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== + dependencies: + "@noble/curves" "~1.9.0" + "@noble/hashes" "~1.8.0" + "@scure/base" "~1.2.5" + "@scure/bip32@1.1.5": version "1.1.5" resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.1.5.tgz" @@ -2933,12 +2574,11 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" -"@scure/bip32@1.7.0", "@scure/bip32@^1.3.1", "@scure/bip32@^1.4.0", "@scure/bip32@^1.7.0": - version "1.7.0" - resolved "https://registry.npmjs.org/@scure/bip32/-/bip32-1.7.0.tgz" - integrity sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw== +"@scure/bip39@^1.2.1", "@scure/bip39@^1.3.0", "@scure/bip39@^1.6.0", "@scure/bip39@1.6.0": + version "1.6.0" + resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz" + integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== dependencies: - "@noble/curves" "~1.9.0" "@noble/hashes" "~1.8.0" "@scure/base" "~1.2.5" @@ -2958,13 +2598,13 @@ "@noble/hashes" "~1.4.0" "@scure/base" "~1.1.6" -"@scure/bip39@1.6.0", "@scure/bip39@^1.2.1", "@scure/bip39@^1.3.0", "@scure/bip39@^1.6.0": - version "1.6.0" - resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-1.6.0.tgz" - integrity sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A== +"@scure/bip39@2.2.0": + version "2.2.0" + resolved "https://registry.npmjs.org/@scure/bip39/-/bip39-2.2.0.tgz" + integrity sha512-T/Bj/YvYMNkIPq6EENO6/rcs2e7qTNuyoUXf0KBFDmp0ZDu0H2X4Lq6yC3i0c8PcWkov5EbW+yQZZbdMmk154A== dependencies: - "@noble/hashes" "~1.8.0" - "@scure/base" "~1.2.5" + "@noble/hashes" "2.2.0" + "@scure/base" "2.2.0" "@segment/analytics-core@1.8.0": version "1.8.0" @@ -3023,7 +2663,7 @@ dependencies: "@segment/isodate" "^1.0.3" -"@segment/isodate@1.0.3", "@segment/isodate@^1.0.3": +"@segment/isodate@^1.0.3", "@segment/isodate@1.0.3": version "1.0.3" resolved "https://registry.npmjs.org/@segment/isodate/-/isodate-1.0.3.tgz" integrity sha512-BtanDuvJqnACFkeeYje7pWULVv8RgZaqKHWwGFnL/g/TH/CcZjkIVTfGDp/MAxmilYHUkrX70SqwnYSTNEaN7A== @@ -3117,14 +2757,6 @@ "@shikijs/vscode-textmate" "^10.0.1" oniguruma-to-es "^2.2.0" -"@shikijs/engine-oniguruma@1.29.2": - version "1.29.2" - resolved "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz" - integrity sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA== - dependencies: - "@shikijs/types" "1.29.2" - "@shikijs/vscode-textmate" "^10.0.1" - "@shikijs/engine-oniguruma@^3.11.0": version "3.11.0" resolved "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-3.11.0.tgz" @@ -3133,12 +2765,13 @@ "@shikijs/types" "3.11.0" "@shikijs/vscode-textmate" "^10.0.2" -"@shikijs/langs@1.29.2": +"@shikijs/engine-oniguruma@1.29.2": version "1.29.2" - resolved "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz" - integrity sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ== + resolved "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.29.2.tgz" + integrity sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA== dependencies: "@shikijs/types" "1.29.2" + "@shikijs/vscode-textmate" "^10.0.1" "@shikijs/langs@^3.11.0": version "3.11.0" @@ -3147,6 +2780,13 @@ dependencies: "@shikijs/types" "3.11.0" +"@shikijs/langs@1.29.2": + version "1.29.2" + resolved "https://registry.npmjs.org/@shikijs/langs/-/langs-1.29.2.tgz" + integrity sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ== + dependencies: + "@shikijs/types" "1.29.2" + "@shikijs/rehype@^1": version "1.29.2" resolved "https://registry.npmjs.org/@shikijs/rehype/-/rehype-1.29.2.tgz" @@ -3159,13 +2799,6 @@ unified "^11.0.5" unist-util-visit "^5.0.0" -"@shikijs/themes@1.29.2": - version "1.29.2" - resolved "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz" - integrity sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g== - dependencies: - "@shikijs/types" "1.29.2" - "@shikijs/themes@^3.11.0": version "3.11.0" resolved "https://registry.npmjs.org/@shikijs/themes/-/themes-3.11.0.tgz" @@ -3173,6 +2806,13 @@ dependencies: "@shikijs/types" "3.11.0" +"@shikijs/themes@1.29.2": + version "1.29.2" + resolved "https://registry.npmjs.org/@shikijs/themes/-/themes-1.29.2.tgz" + integrity sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g== + dependencies: + "@shikijs/types" "1.29.2" + "@shikijs/transformers@^1": version "1.29.2" resolved "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.29.2.tgz" @@ -3190,6 +2830,14 @@ "@shikijs/types" "1.29.2" twoslash "^0.2.12" +"@shikijs/types@^3.11.0", "@shikijs/types@3.11.0": + version "3.11.0" + resolved "https://registry.npmjs.org/@shikijs/types/-/types-3.11.0.tgz" + integrity sha512-RB7IMo2E7NZHyfkqAuaf4CofyY8bPzjWPjJRzn6SEak3b46fIQyG6Vx5fG/obqkfppQ+g8vEsiD7Uc6lqQt32Q== + dependencies: + "@shikijs/vscode-textmate" "^10.0.2" + "@types/hast" "^3.0.4" + "@shikijs/types@1.29.2": version "1.29.2" resolved "https://registry.npmjs.org/@shikijs/types/-/types-1.29.2.tgz" @@ -3198,14 +2846,6 @@ "@shikijs/vscode-textmate" "^10.0.1" "@types/hast" "^3.0.4" -"@shikijs/types@3.11.0", "@shikijs/types@^3.11.0": - version "3.11.0" - resolved "https://registry.npmjs.org/@shikijs/types/-/types-3.11.0.tgz" - integrity sha512-RB7IMo2E7NZHyfkqAuaf4CofyY8bPzjWPjJRzn6SEak3b46fIQyG6Vx5fG/obqkfppQ+g8vEsiD7Uc6lqQt32Q== - dependencies: - "@shikijs/vscode-textmate" "^10.0.2" - "@types/hast" "^3.0.4" - "@shikijs/vscode-textmate@^10.0.1", "@shikijs/vscode-textmate@^10.0.2": version "10.0.2" resolved "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-10.0.2.tgz" @@ -3318,73 +2958,11 @@ source-map-js "^1.2.1" tailwindcss "4.1.15" -"@tailwindcss/oxide-android-arm64@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-android-arm64/-/oxide-android-arm64-4.1.15.tgz#ea5a49655203214bacf3af5b21373457c34d1462" - integrity sha512-TkUkUgAw8At4cBjCeVCRMc/guVLKOU1D+sBPrHt5uVcGhlbVKxrCaCW9OKUIBv1oWkjh4GbunD/u/Mf0ql6kEA== - "@tailwindcss/oxide-darwin-arm64@4.1.15": version "4.1.15" resolved "https://registry.npmjs.org/@tailwindcss/oxide-darwin-arm64/-/oxide-darwin-arm64-4.1.15.tgz" integrity sha512-xt5XEJpn2piMSfvd1UFN6jrWXyaKCwikP4Pidcf+yfHTSzSpYhG3dcMktjNkQO3JiLCp+0bG0HoWGvz97K162w== -"@tailwindcss/oxide-darwin-x64@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-darwin-x64/-/oxide-darwin-x64-4.1.15.tgz#1eba5369a071d3b06488be8c12dbb94029e69389" - integrity sha512-TnWaxP6Bx2CojZEXAV2M01Yl13nYPpp0EtGpUrY+LMciKfIXiLL2r/SiSRpagE5Fp2gX+rflp/Os1VJDAyqymg== - -"@tailwindcss/oxide-freebsd-x64@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-freebsd-x64/-/oxide-freebsd-x64-4.1.15.tgz#d7395ae1a6d0adcaf313ef6f94e771dd64e11b77" - integrity sha512-quISQDWqiB6Cqhjc3iWptXVZHNVENsWoI77L1qgGEHNIdLDLFnw3/AfY7DidAiiCIkGX/MjIdB3bbBZR/G2aJg== - -"@tailwindcss/oxide-linux-arm-gnueabihf@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm-gnueabihf/-/oxide-linux-arm-gnueabihf-4.1.15.tgz#7b296f228fb9bda92ec70d6607927a3eda8b9550" - integrity sha512-ObG76+vPlab65xzVUQbExmDU9FIeYLQ5k2LrQdR2Ud6hboR+ZobXpDoKEYXf/uOezOfIYmy2Ta3w0ejkTg9yxg== - -"@tailwindcss/oxide-linux-arm64-gnu@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm64-gnu/-/oxide-linux-arm64-gnu-4.1.15.tgz#959afeee72c55a39e80f32a100e9a3ddbf73295c" - integrity sha512-4WbBacRmk43pkb8/xts3wnOZMDKsPFyEH/oisCm2q3aLZND25ufvJKcDUpAu0cS+CBOL05dYa8D4U5OWECuH/Q== - -"@tailwindcss/oxide-linux-arm64-musl@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-arm64-musl/-/oxide-linux-arm64-musl-4.1.15.tgz#8a58e33595233628bb96e02fbb03b544680a36a2" - integrity sha512-AbvmEiteEj1nf42nE8skdHv73NoR+EwXVSgPY6l39X12Ex8pzOwwfi3Kc8GAmjsnsaDEbk+aj9NyL3UeyHcTLg== - -"@tailwindcss/oxide-linux-x64-gnu@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-x64-gnu/-/oxide-linux-x64-gnu-4.1.15.tgz#546666cde500f80d3ff2e819de9276a9580685b1" - integrity sha512-+rzMVlvVgrXtFiS+ES78yWgKqpThgV19ISKD58Ck+YO5pO5KjyxLt7AWKsWMbY0R9yBDC82w6QVGz837AKQcHg== - -"@tailwindcss/oxide-linux-x64-musl@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-linux-x64-musl/-/oxide-linux-x64-musl-4.1.15.tgz#07e9ae8ca70bb9a4990ceee612c88781bd45a6fc" - integrity sha512-fPdEy7a8eQN9qOIK3Em9D3TO1z41JScJn8yxl/76mp4sAXFDfV4YXxsiptJcOwy6bGR+70ZSwFIZhTXzQeqwQg== - -"@tailwindcss/oxide-wasm32-wasi@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-wasm32-wasi/-/oxide-wasm32-wasi-4.1.15.tgz#82a6c5159bc562e4619cf938450a9c017837b194" - integrity sha512-sJ4yd6iXXdlgIMfIBXuVGp/NvmviEoMVWMOAGxtxhzLPp9LOj5k0pMEMZdjeMCl4C6Up+RM8T3Zgk+BMQ0bGcQ== - dependencies: - "@emnapi/core" "^1.5.0" - "@emnapi/runtime" "^1.5.0" - "@emnapi/wasi-threads" "^1.1.0" - "@napi-rs/wasm-runtime" "^1.0.7" - "@tybys/wasm-util" "^0.10.1" - tslib "^2.4.0" - -"@tailwindcss/oxide-win32-arm64-msvc@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-win32-arm64-msvc/-/oxide-win32-arm64-msvc-4.1.15.tgz#7e7f3f187c7a60209466b7064e78d5b70ad1945d" - integrity sha512-sJGE5faXnNQ1iXeqmRin7Ds/ru2fgCiaQZQQz3ZGIDtvbkeV85rAZ0QJFMDg0FrqsffZG96H1U9AQlNBRLsHVg== - -"@tailwindcss/oxide-win32-x64-msvc@4.1.15": - version "4.1.15" - resolved "https://registry.yarnpkg.com/@tailwindcss/oxide-win32-x64-msvc/-/oxide-win32-x64-msvc-4.1.15.tgz#fd4e41ed0014a8da456576be1381c12c345d1a0a" - integrity sha512-NLeHE7jUV6HcFKS504bpOohyi01zPXi2PXmjFfkzTph8xRxDdxkRsXm/xDO5uV5K3brrE1cCwbUYmFUSHR3u1w== - "@tailwindcss/oxide@4.1.15": version "4.1.15" resolved "https://registry.npmjs.org/@tailwindcss/oxide/-/oxide-4.1.15.tgz" @@ -3432,13 +3010,6 @@ resolved "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz" integrity sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA== -"@tybys/wasm-util@^0.10.1": - version "0.10.2" - resolved "https://registry.yarnpkg.com/@tybys/wasm-util/-/wasm-util-0.10.2.tgz#12b3a1b33db1f9cad4ddff1f604ab7dd00bf464e" - integrity sha512-RoBvJ2X0wuKlWFIjrwffGw1IqZHKQqzIchKaadZZfnNpsAYp2mM0h36JtPCjNDAHGgYez/15uMBpfGwchhiMgg== - dependencies: - tslib "^2.4.0" - "@types/babel__core@^7.1.14", "@types/babel__core@^7.20.5": version "7.20.5" resolved "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz" @@ -3713,7 +3284,7 @@ "@types/d3-transition" "*" "@types/d3-zoom" "*" -"@types/debug@^4.0.0": +"@types/debug@^4.0.0", "@types/debug@^4.1.12": version "4.1.12" resolved "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz" integrity sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ== @@ -3739,7 +3310,7 @@ dependencies: "@types/estree" "*" -"@types/estree@*", "@types/estree@1.0.8", "@types/estree@^1.0.0", "@types/estree@^1.0.6": +"@types/estree@*", "@types/estree@^1.0.0", "@types/estree@^1.0.6", "@types/estree@1.0.8": version "1.0.8" resolved "https://registry.npmjs.org/@types/estree/-/estree-1.0.8.tgz" integrity sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w== @@ -3829,7 +3400,7 @@ resolved "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz" integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== -"@types/node@*", "@types/node@^22.10.10": +"@types/node@*", "@types/node@^18.0.0 || ^20.0.0 || >=22.0.0", "@types/node@^20.19.0 || >=22.12.0", "@types/node@^22.10.10": version "22.17.2" resolved "https://registry.npmjs.org/@types/node/-/node-22.17.2.tgz" integrity sha512-gL6z5N9Jm9mhY+U2KXZpteb+09zyffliRkZyZOHODGATyC5B1Jt/7TzuuiLkFsSUMLbS1OLmlj/E+/3KF4Q/4w== @@ -3841,6 +3412,13 @@ resolved "https://registry.npmjs.org/@types/node/-/node-12.20.55.tgz" integrity sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ== +"@types/react@*", "@types/react@>=16": + version "19.2.17" + resolved "https://registry.npmjs.org/@types/react/-/react-19.2.17.tgz" + integrity sha512-MXfmqaVPEVgkBT/aY0aGCkRWWtByiYQXo3xdQ8r5RzuFrPiRn8Gar2tQdXSUQ2GKV3bkXckek89V8wQBY2Q/Aw== + dependencies: + csstype "^3.2.2" + "@types/responselike@^1.0.0": version "1.0.3" resolved "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz" @@ -3913,7 +3491,7 @@ natural-compare "^1.4.0" ts-api-utils "^2.5.0" -"@typescript-eslint/parser@8.59.2": +"@typescript-eslint/parser@^8.59.2", "@typescript-eslint/parser@8.59.2": version "8.59.2" resolved "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.59.2.tgz" integrity sha512-plR3pp6D+SSUn1HM7xvSkx12/DhoHInI2YF35KAcVFNZvlC0gtrWqx7Qq1oH2Ssgi0vlFRCTbP+DZc7B9+TtsQ== @@ -3941,7 +3519,7 @@ "@typescript-eslint/types" "8.59.2" "@typescript-eslint/visitor-keys" "8.59.2" -"@typescript-eslint/tsconfig-utils@8.59.2", "@typescript-eslint/tsconfig-utils@^8.59.2": +"@typescript-eslint/tsconfig-utils@^8.59.2", "@typescript-eslint/tsconfig-utils@8.59.2": version "8.59.2" resolved "https://registry.npmjs.org/@typescript-eslint/tsconfig-utils/-/tsconfig-utils-8.59.2.tgz" integrity sha512-BKK4alN7oi4C/zv4VqHQ+uRU+lTa6JGIZ7s1juw7b3RHo9OfKB+bKX3u0iVZetdsUCBBkSbdWbarJbmN0fTeSw== @@ -3957,7 +3535,7 @@ debug "^4.4.3" ts-api-utils "^2.5.0" -"@typescript-eslint/types@8.59.2", "@typescript-eslint/types@^8.59.2": +"@typescript-eslint/types@^8.59.2", "@typescript-eslint/types@8.59.2": version "8.59.2" resolved "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.59.2.tgz" integrity sha512-e82GVOE8Ps3E++Egvb6Y3Dw0S10u8NkQ9KXmtRhCWJJ8kDhOJTvtMAWnFL16kB1583goCWXsr0NieKCZMs2/0Q== @@ -3977,7 +3555,7 @@ tinyglobby "^0.2.15" ts-api-utils "^2.5.0" -"@typescript-eslint/utils@8.59.2", "@typescript-eslint/utils@^8.58.1": +"@typescript-eslint/utils@^8.58.1", "@typescript-eslint/utils@8.59.2": version "8.59.2" resolved "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.59.2.tgz" integrity sha512-Juw3EinkXqjaffxz6roowvV7GZT/kET5vSKKZT6upl5TXdWkLkYmNPXwDDL2Vkt2DPn0nODIS4egC/0AGxKo/Q== @@ -4118,7 +3696,7 @@ estree-walker "^3.0.3" magic-string "^0.30.17" -"@vitest/pretty-format@3.2.4", "@vitest/pretty-format@^3.2.4": +"@vitest/pretty-format@^3.2.4", "@vitest/pretty-format@3.2.4": version "3.2.4" resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-3.2.4.tgz" integrity sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA== @@ -4176,11 +3754,6 @@ "@xrplf/isomorphic" "^1.0.1" ripple-keypairs "^2.0.0" -abitype@1.2.3: - version "1.2.3" - resolved "https://registry.npmjs.org/abitype/-/abitype-1.2.3.tgz" - integrity sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg== - abitype@^0.8.3: version "0.8.11" resolved "https://registry.npmjs.org/abitype/-/abitype-0.8.11.tgz" @@ -4191,6 +3764,11 @@ abitype@^1.2.3: resolved "https://registry.npmjs.org/abitype/-/abitype-1.2.4.tgz" integrity sha512-dpKH+N27vRjarMVTFFkeY445VTKftzGWpL0FiT7xmVmzQRKazZexzC5uHG0f6XKsVLAuUlndnbGau6lRejClxg== +abitype@1.2.3: + version "1.2.3" + resolved "https://registry.npmjs.org/abitype/-/abitype-1.2.3.tgz" + integrity sha512-Ofer5QUnuUdTFsBRwARMoWKOH1ND5ehwYhJ3OJ/BQO+StkwQjHw0XyVh4vDttzHB7QOFhPHa/o413PJ82gU/Tg== + acorn-jsx@^5.0.0, acorn-jsx@^5.3.2: version "5.3.2" resolved "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz" @@ -4203,7 +3781,7 @@ acorn-walk@^8.1.1: dependencies: acorn "^8.11.0" -acorn@^8.0.0, acorn@^8.11.0, acorn@^8.15.0, acorn@^8.16.0, acorn@^8.4.1: +"acorn@^6.0.0 || ^7.0.0 || ^8.0.0", acorn@^8.0.0, acorn@^8.11.0, acorn@^8.15.0, acorn@^8.16.0, acorn@^8.4.1: version "8.16.0" resolved "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz" integrity sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw== @@ -4470,7 +4048,7 @@ axios@^1.12.0: form-data "^4.0.5" proxy-from-env "^2.1.0" -babel-jest@^29.7.0: +"babel-jest@^29.0.0 || ^30.0.0", babel-jest@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/babel-jest/-/babel-jest-29.7.0.tgz" integrity sha512-BrvGY3xZSwEcCzKvKsCi2GgHqDqsYkOP4/by5xCgIwGXQxIEh+8ew3gmrE1y7XRR6LHZIj6yLYnUi/mm2KXKBg== @@ -4580,16 +4158,16 @@ bcp-47-match@^2.0.0: resolved "https://registry.npmjs.org/bcp-47-match/-/bcp-47-match-2.0.3.tgz" integrity sha512-JtTezzbAibu8G0R9op9zb3vcWZd9JF6M0xOYGPn0fNCd7wOpRB1mU2mH9T8gaBGbAAyIIVgB2G7xG0GP98zMAQ== -bech32@1.1.4: - version "1.1.4" - resolved "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz" - integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== - bech32@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz" integrity sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg== +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + bignumber.js@^9.0.0: version "9.3.1" resolved "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.3.1.tgz" @@ -4641,11 +4219,6 @@ boolbase@^1.0.0: resolved "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz" integrity sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww== -borsh@1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz" - integrity sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ== - borsh@^0.7.0: version "0.7.0" resolved "https://registry.npmjs.org/borsh/-/borsh-0.7.0.tgz" @@ -4655,6 +4228,11 @@ borsh@^0.7.0: bs58 "^4.0.0" text-encoding-utf-8 "^1.0.2" +borsh@1.0.0: + version "1.0.0" + resolved "https://registry.npmjs.org/borsh/-/borsh-1.0.0.tgz" + integrity sha512-fSVWzzemnyfF89EPwlUNsrS5swF5CrtiN4e+h0/lLf4dz2he4L3ndM20PS9wj7ICSkXJe/TQUHdaPTq15b1mNQ== + boxen@^5.1.2: version "5.1.2" resolved "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz" @@ -4677,7 +4255,14 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" -brace-expansion@^2.0.1, brace-expansion@^2.0.2: +brace-expansion@^2.0.1: + version "2.1.0" + resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz" + integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w== + dependencies: + balanced-match "^1.0.0" + +brace-expansion@^2.0.2: version "2.1.0" resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.1.0.tgz" integrity sha512-TN1kCZAgdgweJhWWpgKYrQaMNHcDULHkWwQIspdtjV4Y5aurRdZpjAqn6yX3FPqTA9ngHCc4hJxMAMgGfve85w== @@ -4708,7 +4293,7 @@ browser-stdout@^1.3.1: resolved "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.1.tgz" integrity sha512-qhAVI1+Av2X7qelOfAIYwXONood6XlZE/fXaBSmW/T5SzLAmCgzi+eiWE7fUvbHaeNBQH13UftjpXxsfLkMpgw== -browserslist@^4.24.0, browserslist@^4.24.4: +browserslist@^4.24.0, browserslist@^4.24.4, "browserslist@>= 4.21.0": version "4.25.3" resolved "https://registry.npmjs.org/browserslist/-/browserslist-4.25.3.tgz" integrity sha512-cDGv1kkDI4/0e5yON9yM5G/0A5u8sf5TnmdX5C9qHzI9PPu++sQ9zjm1k9NiOrf3riY4OkK0zSGqfvJyJsgCBQ== @@ -4766,7 +4351,7 @@ buffer-from@^1.0.0: resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== -buffer@6.0.3, buffer@^6.0.3, buffer@~6.0.3: +buffer@^6.0.3, buffer@~6.0.3, buffer@6.0.3: version "6.0.3" resolved "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz" integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== @@ -4852,7 +4437,12 @@ camelcase@^5.3.1: resolved "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -camelcase@^6.0.0, camelcase@^6.2.0: +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +camelcase@^6.2.0: version "6.3.0" resolved "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz" integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== @@ -4893,7 +4483,12 @@ chalk@^4.0.0, chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" -chalk@^5.0.0, chalk@^5.3.0, chalk@^5.4.1: +chalk@^5.0.0, chalk@^5.3.0: + version "5.6.0" + resolved "https://registry.npmjs.org/chalk/-/chalk-5.6.0.tgz" + integrity sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ== + +chalk@^5.4.1: version "5.6.0" resolved "https://registry.npmjs.org/chalk/-/chalk-5.6.0.tgz" integrity sha512-46QrSQFyVSEyYAgQ22hQ+zDa60YHA4fBstHmtSApj1Y5vKtG27fWowW03jCk5KcbXEWPZUIR894aARCA/G1kfQ== @@ -4935,7 +4530,7 @@ chevrotain-allstar@~0.4.3: dependencies: lodash-es "^4.18.1" -chevrotain@~12.0.0: +chevrotain@^12.0.0, chevrotain@~12.0.0: version "12.0.0" resolved "https://registry.npmjs.org/chevrotain/-/chevrotain-12.0.0.tgz" integrity sha512-csJvb+6kEiQaqo1woTdSAuOWdN0WTLIydkKrBnS+V5gZz0oqBrp4kQ35519QgK6TpBThiG3V1vNSHlIkv4AglQ== @@ -5089,11 +4684,6 @@ command-exists@^1.2.8: resolved "https://registry.npmjs.org/command-exists/-/command-exists-1.2.9.tgz" integrity sha512-LTQ/SGc+s0Xc0Fu5WaKnR0YiygZkm9eKFvyS+fRsU7/ZWFF8ykFM6Pc9aCVf1+xasOOZpO3BAVgVrKvsqKHV7w== -commander@7: - version "7.2.0" - resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" - integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== - commander@^12.1.0: version "12.1.0" resolved "https://registry.npmjs.org/commander/-/commander-12.1.0.tgz" @@ -5114,11 +4704,21 @@ commander@^4.0.0: resolved "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz" integrity sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA== -commander@^8.1.0, commander@^8.3.0: +commander@^8.1.0: version "8.3.0" resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== +commander@^8.3.0: + version "8.3.0" + resolved "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + +commander@7: + version "7.2.0" + resolved "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + compressible@~2.0.18: version "2.0.18" resolved "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz" @@ -5248,7 +4848,7 @@ cssesc@^3.0.0: resolved "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -csstype@^3.0.7: +csstype@^3.0.7, csstype@^3.2.2: version "3.2.3" resolved "https://registry.npmjs.org/csstype/-/csstype-3.2.3.tgz" integrity sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ== @@ -5267,25 +4867,33 @@ cytoscape-fcose@^2.2.0: dependencies: cose-base "^2.2.0" -cytoscape@^3.33.1: +cytoscape@^3.2.0, cytoscape@^3.33.1: version "3.33.1" resolved "https://registry.npmjs.org/cytoscape/-/cytoscape-3.33.1.tgz" integrity sha512-iJc4TwyANnOGR1OmWhsS9ayRS3s+XQ185FmuHObThD+5AeJCakAAbWv8KimMTt08xCCLNgneQwFp+JRJOr9qGQ== -"d3-array@1 - 2": - version "2.12.1" - resolved "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz" - integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== +d@^1.0.1, d@^1.0.2, d@1: + version "1.0.2" + resolved "https://registry.npmjs.org/d/-/d-1.0.2.tgz" + integrity sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw== dependencies: - internmap "^1.0.0" + es5-ext "^0.10.64" + type "^2.7.2" -"d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3, d3-array@^3.2.0: +d3-array@^3.2.0, "d3-array@2 - 3", "d3-array@2.10.0 - 3", "d3-array@2.5.0 - 3", d3-array@3: version "3.2.4" resolved "https://registry.npmjs.org/d3-array/-/d3-array-3.2.4.tgz" integrity sha512-tdQAmyA18i4J7wprpYq8ClcxZy3SC31QMeByyCFyRt7BVHdREQZ5lpzoe5mFEYZUWe+oq8HBvk9JjpibyEV4Jg== dependencies: internmap "1 - 2" +"d3-array@1 - 2": + version "2.12.1" + resolved "https://registry.npmjs.org/d3-array/-/d3-array-2.12.1.tgz" + integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== + dependencies: + internmap "^1.0.0" + d3-axis@3: version "3.0.0" resolved "https://registry.npmjs.org/d3-axis/-/d3-axis-3.0.0.tgz" @@ -5395,16 +5003,16 @@ d3-hierarchy@3: dependencies: d3-color "1 - 3" -d3-path@1: - version "1.0.9" - resolved "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz" - integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== - -"d3-path@1 - 3", d3-path@3, d3-path@^3.1.0: +d3-path@^3.1.0, "d3-path@1 - 3", d3-path@3: version "3.1.0" resolved "https://registry.npmjs.org/d3-path/-/d3-path-3.1.0.tgz" integrity sha512-p3KP5HCf/bvjBSSKuXid6Zqijx7wIfNW+J/maPs+iwR35at5JCbLUT0LzF1cnjbCHWhqzQTIN2Jpe8pRebIEFQ== +d3-path@1: + version "1.0.9" + resolved "https://registry.npmjs.org/d3-path/-/d3-path-1.0.9.tgz" + integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== + d3-polygon@3: version "3.0.1" resolved "https://registry.npmjs.org/d3-polygon/-/d3-polygon-3.0.1.tgz" @@ -5447,18 +5055,11 @@ d3-scale@4: d3-time "2.1.1 - 3" d3-time-format "2 - 4" -"d3-selection@2 - 3", d3-selection@3, d3-selection@^3.0.0: +d3-selection@^3.0.0, "d3-selection@2 - 3", d3-selection@3: version "3.0.0" resolved "https://registry.npmjs.org/d3-selection/-/d3-selection-3.0.0.tgz" integrity sha512-fmTRWbNMmsmWq6xJV8D19U/gw/bwrHfNXxrIN+HfZgnzqTHp9jOmKMhsTUjXOJnZOdZY9Q28y4yebKzqDKlxlQ== -d3-shape@3: - version "3.2.0" - resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz" - integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== - dependencies: - d3-path "^3.1.0" - d3-shape@^1.2.0: version "1.3.7" resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-1.3.7.tgz" @@ -5466,6 +5067,13 @@ d3-shape@^1.2.0: dependencies: d3-path "1" +d3-shape@3: + version "3.2.0" + resolved "https://registry.npmjs.org/d3-shape/-/d3-shape-3.2.0.tgz" + integrity sha512-SaLBuwGm3MOViRq2ABk3eLoxwZELpH6zhl3FbAoJ7Vm1gofKx6El1Ib5z23NUEhF9AsGl7y+dzLe5Cw2AArGTA== + dependencies: + d3-path "^3.1.0" + "d3-time-format@2 - 4", d3-time-format@4: version "4.1.0" resolved "https://registry.npmjs.org/d3-time-format/-/d3-time-format-4.1.0.tgz" @@ -5485,7 +5093,7 @@ d3-shape@^1.2.0: resolved "https://registry.npmjs.org/d3-timer/-/d3-timer-3.0.1.tgz" integrity sha512-ndfJ/JxxMd3nw31uyKoY2naivF+r29V+Lc0svZxe1JvvIRmi8hUsrMvdOwgS1o6uBHmiz91geQ0ylPP0aj1VUA== -"d3-transition@2 - 3", d3-transition@3, d3-transition@^3.0.1: +d3-transition@^3.0.1, "d3-transition@2 - 3", d3-transition@3: version "3.0.1" resolved "https://registry.npmjs.org/d3-transition/-/d3-transition-3.0.1.tgz" integrity sha512-ApKvfjsSR6tg06xrL434C0WydLr7JewBB3V+/39RMHsaXTOG0zmt/OAXeng5M5LBm0ojmxJrpomQVZ1aPvBL4w== @@ -5543,14 +5151,6 @@ d3@^7.9.0: d3-transition "3" d3-zoom "3" -d@1, d@^1.0.1, d@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/d/-/d-1.0.2.tgz" - integrity sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw== - dependencies: - es5-ext "^0.10.64" - type "^2.7.2" - dagre-d3-es@7.0.14: version "7.0.14" resolved "https://registry.npmjs.org/dagre-d3-es/-/dagre-d3-es-7.0.14.tgz" @@ -5591,26 +5191,33 @@ dayjs@^1.11.19: resolved "https://registry.npmjs.org/dayjs/-/dayjs-1.11.20.tgz" integrity sha512-YbwwqR/uYpeoP4pu043q+LTDLFBLApUP6VxRihdfNTqu4ubqMlGDLd6ErXhEgsyvY0K6nCs7nggYumAN+9uEuQ== -debug@2.6.9, debug@^2.2.0: +debug@^2.2.0: version "2.6.9" resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4, debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.5, debug@^4.4.0, debug@^4.4.1, debug@^4.4.3: +debug@^3.2.7: + version "3.2.7" + resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.5, debug@^4.4.0, debug@^4.4.1, debug@^4.4.3, debug@4: version "4.4.3" resolved "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== dependencies: ms "^2.1.3" -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== +debug@2.6.9: + version "2.6.9" + resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: - ms "^2.1.1" + ms "2.0.0" decamelize@^4.0.0: version "4.0.0" @@ -5696,16 +5303,16 @@ delayed-stream@~1.0.0: resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== -depd@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - depd@~1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz" integrity sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ== +depd@2.0.0: + version "2.0.0" + resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + dequal@^2.0.0: version "2.0.3" resolved "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz" @@ -5813,7 +5420,7 @@ electron-to-chromium@^1.5.204: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.208.tgz" integrity sha512-ozZyibehoe7tOhNaf16lKmljVf+3npZcJIEbJRVftVsmAg5TeA1mGS9dVCZzOwr2xT7xK15V0p7+GZqSPgkuPg== -elliptic@6.6.1, elliptic@^6.5.7, elliptic@^6.6.1: +elliptic@^6.5.7, elliptic@^6.6.1, elliptic@6.6.1: version "6.6.1" resolved "https://registry.npmjs.org/elliptic/-/elliptic-6.6.1.tgz" integrity sha512-RaddvvMatK2LJHqFJ+YA4WysVN5Ita9E35botqIYspQ4TkRAlCicdzKOjlyv/1Za5RyTNn7di//eEV0uTAfe3g== @@ -6073,7 +5680,7 @@ esast-util-from-js@^2.0.0: esast-util-from-estree "^2.0.0" vfile-message "^4.0.0" -esbuild@^0.25.0, "esbuild@npm:esbuild@>=0.17.6 <0.26.0": +esbuild@^0.25.0, esbuild@>=0.18, "esbuild@npm:esbuild@>=0.17.6 <0.26.0": version "0.25.9" resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.25.9.tgz" integrity sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g== @@ -6181,7 +5788,7 @@ eslint-config-love@^153.0.0: eslint-plugin-promise "^7.2.0" typescript-eslint "^8.58.1" -eslint-config-prettier@^10.1.8: +eslint-config-prettier@^10.1.8, "eslint-config-prettier@>= 7.0.0 <10.0.0 || >=10.1.0": version "10.1.8" resolved "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-10.1.8.tgz" integrity sha512-82GZUjRS0p/jganf6q1rEO25VSoHH0hKPCTrgillPjdI/3bgBhAE1QzHrHTizjpRvy6pGAvKjDJtk2pF9NDq8w== @@ -6289,7 +5896,7 @@ eslint-visitor-keys@^5.0.0: resolved "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-5.0.1.tgz" integrity sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA== -eslint@^9.35.0: +"eslint@^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8 || ^9", "eslint@^6.0.0 || ^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "eslint@^6.0.0 || ^7.0.0 || >=8.0.0", "eslint@^7.0.0 || ^8.0.0 || ^9.0.0 || ^10.0.0", "eslint@^8.57.0 || ^9.0.0 || ^10.0.0", eslint@^9.35.0, eslint@>=6.0.0, eslint@>=7.0.0, eslint@>=8, eslint@>=8.0.0, eslint@>=8.23.0: version "9.39.4" resolved "https://registry.npmjs.org/eslint/-/eslint-9.39.4.tgz" integrity sha512-XoMjdBOwe/esVgEvLmNsD3IRHkm7fbKIUGvrleloJXUZgDHig2IPWNniv+GwjyJXzuNqVjlr5+4yVUZjycJwfQ== @@ -6484,7 +6091,7 @@ event-emitter@^0.3.5: d "1" es5-ext "~0.10.14" -eventemitter3@5.0.1, eventemitter3@^5.0.1: +eventemitter3@^5.0.1, eventemitter3@5.0.1: version "5.0.1" resolved "https://registry.npmjs.org/eventemitter3/-/eventemitter3-5.0.1.tgz" integrity sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA== @@ -6557,7 +6164,7 @@ fast-diff@^1.1.2: resolved "https://registry.npmjs.org/fast-diff/-/fast-diff-1.3.0.tgz" integrity sha512-VxPP4NqbUjj6MaAOafWeUn2cXWLcCtljklUtZf0Ind4XQ+QPtmA0b18zZy0jIQx+ExRVCR/ZQpBmik5lXshNsw== -fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0: +fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@^2.1.0, fast-json-stable-stringify@2.x: version "2.1.0" resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -6684,7 +6291,7 @@ format@^0.2.0: resolved "https://registry.npmjs.org/format/-/format-0.2.2.tgz" integrity sha512-wzsgA6WOq+09wrU1tsJ09udeR/YZRaeArL9e1wPbFg3GG2yDnC2ldKpxs4xunpFF9DgqCqOIra3bc1HWrJ37Ww== -fp-ts@1.19.3, fp-ts@^1.0.0: +fp-ts@^1.0.0, fp-ts@1.19.3: version "1.19.3" resolved "https://registry.npmjs.org/fp-ts/-/fp-ts-1.19.3.tgz" integrity sha512-H5KQDspykdHuztLTg+ajGN0Z2qUjcEf3Ybxc6hLt0k7/zPkn29XnKnxlBPyW2XIddWrGaJBzBl4VLYOtk39yZg== @@ -6731,16 +6338,16 @@ fs.realpath@^1.0.0: resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== -fsevents@2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" - integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== - fsevents@^2.3.2, fsevents@~2.3.2, fsevents@~2.3.3: version "2.3.3" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== +fsevents@2.3.2: + version "2.3.2" + resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + function-bind@^1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" @@ -6963,7 +6570,7 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, resolved "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== -"graphql@^15.5.0 || ^16.0.0 || ^17.0.0", graphql@^16.11.0: +"graphql@^0.8.0 || ^0.9.0 || ^0.10.0 || ^0.11.0 || ^0.12.0 || ^0.13.0 || ^14.0.0 || ^15.0.0 || ^16.0.0 || ^17.0.0", "graphql@^14.0.0 || ^15.0.0 || ^16.0.0", "graphql@^15.5.0 || ^16.0.0 || ^17.0.0", graphql@^16.11.0: version "16.11.0" resolved "https://registry.npmjs.org/graphql/-/graphql-16.11.0.tgz" integrity sha512-mS1lbMsxgQj6hge1XZ6p7GPhbrtFwUFYi3wRzXAC/FmYnyXMTvvI3td3rjmQ2u8ewXueaSvRPWaEcgVVOT9Jnw== @@ -7071,7 +6678,7 @@ hash-wasm@^4.12.0: resolved "https://registry.npmjs.org/hash-wasm/-/hash-wasm-4.12.0.tgz" integrity sha512-+/2B2rYLb48I/evdOIhP+K/DD2ca2fgBjp6O+GBEnCDk2e4rpeXIK8GvIyRPjTezgmWn9gmKwkQjjx6BtqDHVQ== -hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: +hash.js@^1.0.0, hash.js@^1.0.3, hash.js@1.1.7: version "1.1.7" resolved "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz" integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== @@ -7308,7 +6915,7 @@ hmac-drbg@^1.0.1: minimalistic-assert "^1.0.0" minimalistic-crypto-utils "^1.0.1" -hono@^4.10.3: +hono@^4, hono@^4.10.3: version "4.12.16" resolved "https://registry.npmjs.org/hono/-/hono-4.12.16.tgz" integrity sha512-jN0ZewiNAWSe5khM3EyCmBb250+b40wWbwNILNfEvq84VREWwOIkuUsFONk/3i3nqkz7Oe1PcpM2mwQEK2L9Kg== @@ -7446,7 +7053,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4: +inherits@^2.0.3, inherits@^2.0.4, inherits@2, inherits@2.0.4: version "2.0.4" resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -7470,16 +7077,16 @@ internal-slot@^1.1.0: hasown "^2.0.2" side-channel "^1.1.0" -"internmap@1 - 2": - version "2.0.3" - resolved "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz" - integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== - internmap@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/internmap/-/internmap-1.0.1.tgz" integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== +"internmap@1 - 2": + version "2.0.3" + resolved "https://registry.npmjs.org/internmap/-/internmap-2.0.3.tgz" + integrity sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg== + io-ts@1.10.4: version "1.10.4" resolved "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz" @@ -7741,9 +7348,7 @@ is-typedarray@^1.0.0: integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== is-unicode-supported@*: - version "2.1.0" - resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-2.1.0.tgz#09f0ab0de6d3744d48d265ebb98f65d11f2a9b3a" - integrity sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ== + version "1.3.0" is-unicode-supported@^0.1.0: version "0.1.0" @@ -8084,7 +7689,7 @@ jest-resolve-dependencies@^29.7.0: jest-regex-util "^29.6.3" jest-snapshot "^29.7.0" -jest-resolve@^29.7.0: +jest-resolve@*, jest-resolve@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-resolve/-/jest-resolve-29.7.0.tgz" integrity sha512-IOVhZSrg+UvVAshDSDtHyFCCBUl/Q3AAJv8iZ6ZjnZ74xzvwuzLXid9IIIPgTnY62SJjfuupMKZsZQRsCvxEgA== @@ -8180,7 +7785,7 @@ jest-snapshot@^29.7.0: pretty-format "^29.7.0" semver "^7.5.3" -jest-util@^29.7.0: +"jest-util@^29.0.0 || ^30.0.0", jest-util@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest-util/-/jest-util-29.7.0.tgz" integrity sha512-z6EbKajIpqGKU56y5KBUgy1dt1ihhQJgWzUlZHArA/+X2ad7Cb5iF+AK1EWVL/Bo7Rz9uurpqw6SiBCefUbCGA== @@ -8228,7 +7833,7 @@ jest-worker@^29.7.0: merge-stream "^2.0.0" supports-color "^8.0.0" -jest@^29.7.0: +"jest@^29.0.0 || ^30.0.0", jest@^29.7.0: version "29.7.0" resolved "https://registry.npmjs.org/jest/-/jest-29.7.0.tgz" integrity sha512-NIy3oAFp9shda19hy4HK0HRTWKtPJmGdnvywu01nOqNC2vZg+Z+fvJDxpMQA88eb2I9EcafcdjYgsDthnYTvGw== @@ -8238,7 +7843,7 @@ jest@^29.7.0: import-local "^3.0.2" jest-cli "^29.7.0" -jiti@^2.6.0: +jiti@*, jiti@^2.6.0, jiti@>=1.21.0: version "2.6.1" resolved "https://registry.npmjs.org/jiti/-/jiti-2.6.1.tgz" integrity sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ== @@ -8258,16 +7863,16 @@ js-cookie@3.0.1: resolved "https://registry.npmjs.org/js-cookie/-/js-cookie-3.0.1.tgz" integrity sha512-+0rgsUXZu4ncpPxRL+lNEptWMOWl9etvPHc/koSRp6MPwpRYAhmk0dUG00J4bxVV3r9uUzfo24wW0knS07SKSw== -js-sha3@0.8.0: - version "0.8.0" - resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz" - integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== - js-sha3@^0.9.3: version "0.9.3" resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.9.3.tgz" integrity sha512-BcJPCQeLg6WjEx3FE591wVAevlli8lxsxm9/FzV4HXkV49TmBH38Yvrpce6fjbADGMKFrBMGTqrVz3qPIZ88Gg== +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz" @@ -8286,7 +7891,14 @@ js-yaml@^3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@^4.1.0, js-yaml@^4.1.1: +js-yaml@^4.1.0: + version "4.1.1" + resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz" + integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== + dependencies: + argparse "^2.0.1" + +js-yaml@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.1.tgz" integrity sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA== @@ -8434,62 +8046,12 @@ levn@^0.4.1: prelude-ls "^1.2.1" type-check "~0.4.0" -lightningcss-android-arm64@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-android-arm64/-/lightningcss-android-arm64-1.30.2.tgz#6966b7024d39c94994008b548b71ab360eb3a307" - integrity sha512-BH9sEdOCahSgmkVhBLeU7Hc9DWeZ1Eb6wNS6Da8igvUwAe0sqROHddIlvU06q3WyXVEOYDZ6ykBZQnjTbmo4+A== - lightningcss-darwin-arm64@1.30.2: version "1.30.2" resolved "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.30.2.tgz" integrity sha512-ylTcDJBN3Hp21TdhRT5zBOIi73P6/W0qwvlFEk22fkdXchtNTOU4Qc37SkzV+EKYxLouZ6M4LG9NfZ1qkhhBWA== -lightningcss-darwin-x64@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.30.2.tgz#5ce87e9cd7c4f2dcc1b713f5e8ee185c88d9b7cd" - integrity sha512-oBZgKchomuDYxr7ilwLcyms6BCyLn0z8J0+ZZmfpjwg9fRVZIR5/GMXd7r9RH94iDhld3UmSjBM6nXWM2TfZTQ== - -lightningcss-freebsd-x64@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.30.2.tgz#6ae1d5e773c97961df5cff57b851807ef33692a5" - integrity sha512-c2bH6xTrf4BDpK8MoGG4Bd6zAMZDAXS569UxCAGcA7IKbHNMlhGQ89eRmvpIUGfKWNVdbhSbkQaWhEoMGmGslA== - -lightningcss-linux-arm-gnueabihf@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.30.2.tgz#62c489610c0424151a6121fa99d77731536cdaeb" - integrity sha512-eVdpxh4wYcm0PofJIZVuYuLiqBIakQ9uFZmipf6LF/HRj5Bgm0eb3qL/mr1smyXIS1twwOxNWndd8z0E374hiA== - -lightningcss-linux-arm64-gnu@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.30.2.tgz#2a3661b56fe95a0cafae90be026fe0590d089298" - integrity sha512-UK65WJAbwIJbiBFXpxrbTNArtfuznvxAJw4Q2ZGlU8kPeDIWEX1dg3rn2veBVUylA2Ezg89ktszWbaQnxD/e3A== - -lightningcss-linux-arm64-musl@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.30.2.tgz#d7ddd6b26959245e026bc1ad9eb6aa983aa90e6b" - integrity sha512-5Vh9dGeblpTxWHpOx8iauV02popZDsCYMPIgiuw97OJ5uaDsL86cnqSFs5LZkG3ghHoX5isLgWzMs+eD1YzrnA== - -lightningcss-linux-x64-gnu@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.30.2.tgz#5a89814c8e63213a5965c3d166dff83c36152b1a" - integrity sha512-Cfd46gdmj1vQ+lR6VRTTadNHu6ALuw2pKR9lYq4FnhvgBc4zWY1EtZcAc6EffShbb1MFrIPfLDXD6Xprbnni4w== - -lightningcss-linux-x64-musl@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.30.2.tgz#808c2e91ce0bf5d0af0e867c6152e5378c049728" - integrity sha512-XJaLUUFXb6/QG2lGIW6aIk6jKdtjtcffUT0NKvIqhSBY3hh9Ch+1LCeH80dR9q9LBjG3ewbDjnumefsLsP6aiA== - -lightningcss-win32-arm64-msvc@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.30.2.tgz#ab4a8a8a2e6a82a4531e8bbb6bf0ff161ee6625a" - integrity sha512-FZn+vaj7zLv//D/192WFFVA0RgHawIcHqLX9xuWiQt7P0PtdFEVaxgF9rjM/IRYHQXNnk61/H/gb2Ei+kUQ4xQ== - -lightningcss-win32-x64-msvc@1.30.2: - version "1.30.2" - resolved "https://registry.yarnpkg.com/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.30.2.tgz#f01f382c8e0a27e1c018b0bee316d210eac43b6e" - integrity sha512-5g1yc73p+iAkid5phb4oVFMB45417DkRevRbt/El/gKXJk4jid+vPFF/AXbxn05Aky8PapwzZrdJShv5C0avjw== - -lightningcss@1.30.2: +lightningcss@^1.21.0, lightningcss@1.30.2: version "1.30.2" resolved "https://registry.npmjs.org/lightningcss/-/lightningcss-1.30.2.tgz" integrity sha512-utfs7Pr5uJyyvDETitgsaqSyjCb2qNRAtuqUeWIAKztsOYdcACf2KtARYXg2pSvhkt+9NfoaNY7fxjl6nuMjIQ== @@ -8600,7 +8162,22 @@ lowercase-keys@^2.0.0: resolved "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz" integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== -lru-cache@^10.2.0, lru-cache@^10.4.3: +lru_map@^0.3.3: + version "0.3.3" + resolved "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz" + integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ== + +lru_map@0.4.1: + version "0.4.1" + resolved "https://registry.npmjs.org/lru_map/-/lru_map-0.4.1.tgz" + integrity sha512-I+lBvqMMFfqaV8CJCISjI3wbjmwVu/VyOoU7+qtu9d7ioW5klMgsTTiUOUp+DJvfTTzKXoPbyC6YfgkNcyPSOg== + +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + +lru-cache@^10.4.3: version "10.4.3" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz" integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== @@ -8612,16 +8189,6 @@ lru-cache@^5.1.1: dependencies: yallist "^3.0.2" -lru_map@0.4.1: - version "0.4.1" - resolved "https://registry.npmjs.org/lru_map/-/lru_map-0.4.1.tgz" - integrity sha512-I+lBvqMMFfqaV8CJCISjI3wbjmwVu/VyOoU7+qtu9d7ioW5klMgsTTiUOUp+DJvfTTzKXoPbyC6YfgkNcyPSOg== - -lru_map@^0.3.3: - version "0.3.3" - resolved "https://registry.npmjs.org/lru_map/-/lru_map-0.3.3.tgz" - integrity sha512-Pn9cox5CsMYngeDbmChANltQl+5pi6XmTrraMSzhPmMBbmgcxmqWry0U3PGapCU1yB4/LqCcom7qhHZiF/jGfQ== - lunr@^2.3.9: version "2.3.9" resolved "https://registry.npmjs.org/lunr/-/lunr-2.3.9.tgz" @@ -9380,7 +8947,7 @@ micromatch@^4.0.4: braces "^3.0.3" picomatch "^2.3.1" -mime-db@1.52.0, "mime-db@>= 1.43.0 < 2": +"mime-db@>= 1.43.0 < 2", mime-db@1.52.0: version "1.52.0" resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== @@ -9448,7 +9015,14 @@ minimatch@^5.0.1, minimatch@^5.1.6: dependencies: brace-expansion "^2.0.1" -minimatch@^9.0.4, minimatch@^9.0.5: +minimatch@^9.0.4: + version "9.0.9" + resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz" + integrity sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg== + dependencies: + brace-expansion "^2.0.2" + +minimatch@^9.0.5: version "9.0.9" resolved "https://registry.npmjs.org/minimatch/-/minimatch-9.0.9.tgz" integrity sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg== @@ -9518,16 +9092,16 @@ modern-ahocorasick@^1.0.0: resolved "https://registry.npmjs.org/modern-ahocorasick/-/modern-ahocorasick-1.1.0.tgz" integrity sha512-sEKPVl2rM+MNVkGQt3ChdmD8YsigmXdn5NifZn6jiwn9LRJpWm8F3guhaqrJT/JOat6pwpbXEk6kv+b9DMIjsQ== +ms@^2.0.0, ms@^2.1.1, ms@^2.1.3, ms@2.1.3: + version "2.1.3" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + ms@2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== -ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - mustache@4.0.0: version "4.0.0" resolved "https://registry.npmjs.org/mustache/-/mustache-4.0.0.tgz" @@ -9613,7 +9187,7 @@ node-addon-api@^5.0.0: resolved "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.1.0.tgz" integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== -node-fetch@2.6.7, node-fetch@^2.6.7: +node-fetch@^2.6.7, node-fetch@2.6.7: version "2.6.7" resolved "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz" integrity sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ== @@ -9938,7 +9512,7 @@ parseurl@~1.3.3: resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== -path-data-parser@0.1.0, path-data-parser@^0.1.0: +path-data-parser@^0.1.0, path-data-parser@0.1.0: version "0.1.0" resolved "https://registry.npmjs.org/path-data-parser/-/path-data-parser-0.1.0.tgz" integrity sha512-NOnmBpt5Y2RWbuv0LMzsayp3lVylAHLPUTut412ZA3l+C4uw4ZVkQbjShYCQ8TCpUMdPapr4YjUqLYD6v68j+w== @@ -9991,7 +9565,17 @@ picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1: resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.2.tgz" integrity sha512-V7+vQEJ06Z+c5tSye8S+nHUfI51xoXIXjHQ99cQtKUkQqqO1kO/KCJUfZXuB47h/YBlDhah2H3hdUGXn8ie0oA== -picomatch@^4.0.2, picomatch@^4.0.3, picomatch@^4.0.4: +"picomatch@^3 || ^4", picomatch@^4.0.3, picomatch@^4.0.4: + version "4.0.4" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" + integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== + +picomatch@^4.0.2: + version "4.0.4" + resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" + integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== + +picomatch@^4.0.3: version "4.0.4" resolved "https://registry.npmjs.org/picomatch/-/picomatch-4.0.4.tgz" integrity sha512-QP88BAKvMam/3NxH6vj2o21R6MjxZUAd6nlwAS/pnGvN9IVLocLHxGYIzFhg6fUQ+5th6P4dv4eW9jX3DSIj7A== @@ -10022,7 +9606,7 @@ playwright-core@1.59.1: resolved "https://registry.npmjs.org/playwright-core/-/playwright-core-1.59.1.tgz" integrity sha512-HBV/RJg81z5BiiZ9yPzIiClYV/QMsDCKUyogwH9p3MCP6IYjUFu/MActgYAvK0oWyV9NlwM3GLBjADyWgydVyg== -playwright@^1.52.0: +playwright@^1.52.0, playwright@1: version "1.59.1" resolved "https://registry.npmjs.org/playwright/-/playwright-1.59.1.tgz" integrity sha512-C8oWjPR3F81yljW9o5OxcWzfh6avkVwDD2VYdwIGqTkl+OGFISgypqzfu7dOe4QNLL2aqcWBmI3PMtLIK233lw== @@ -10031,7 +9615,7 @@ playwright@^1.52.0: optionalDependencies: fsevents "2.3.2" -points-on-curve@0.2.0, points-on-curve@^0.2.0: +points-on-curve@^0.2.0, points-on-curve@0.2.0: version "0.2.0" resolved "https://registry.npmjs.org/points-on-curve/-/points-on-curve-0.2.0.tgz" integrity sha512-0mYKnYYe9ZcqMCWhUjItv/oHjvgEsfKvnUTg8sAtnHr3GVy7rGkXCb6d5cSyqrWqL4k81b9CPg3urd+T7aop3A== @@ -10044,7 +9628,7 @@ points-on-path@^0.2.1: path-data-parser "0.1.0" points-on-curve "0.2.0" -poseidon-lite@0.2.1, poseidon-lite@^0.2.0: +poseidon-lite@^0.2.0, poseidon-lite@0.2.1: version "0.2.1" resolved "https://registry.npmjs.org/poseidon-lite/-/poseidon-lite-0.2.1.tgz" integrity sha512-xIr+G6HeYfOhCuswdqcFpSX47SPhm0EpisWJ6h7fHlWwaVIvH3dLnejpatrtw6Xc6HaLrpq05y7VRfvDmDGIog== @@ -10066,7 +9650,7 @@ postcss-value-parser@^4.2.0: resolved "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz" integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== -postcss@^8.5.2, postcss@^8.5.6: +postcss@^8.1.0, postcss@^8.4.12, postcss@^8.5.2, postcss@^8.5.6, postcss@>=8.0.9: version "8.5.14" resolved "https://registry.npmjs.org/postcss/-/postcss-8.5.14.tgz" integrity sha512-SoSL4+OSEtR99LHFZQiJLkT59C5B1amGO1NzTwj7TT1qCUgUO6hxOvzkOYxD+vMrXBM3XJIKzokoERdqQq/Zmg== @@ -10087,7 +9671,7 @@ prettier-linter-helpers@^1.0.1: dependencies: fast-diff "^1.1.2" -prettier@^3.8.3: +prettier@^3.8.3, prettier@>=3.0.0: version "3.8.3" resolved "https://registry.npmjs.org/prettier/-/prettier-3.8.3.tgz" integrity sha512-7igPTM53cGHMW8xWuVTydi2KO233VFiTNyF5hLJqpilHfmn8C8gPf+PS7dUT64YcXFbiMGZxS9pCSxL/Dxm/Jw== @@ -10235,6 +9819,13 @@ raw-body@^2.4.1: iconv-lite "0.4.24" unpipe "1.0.0" +"react-dom@^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react-dom@^17.0.0 || ^18.0.0 || ^19.0.0", react-dom@^19, react-dom@>=16.8.0, react-dom@>=17.0.0, react-dom@>=18: + version "19.2.7" + resolved "https://registry.npmjs.org/react-dom/-/react-dom-19.2.7.tgz" + integrity sha512-t0BRVXvbiE/o20Hfw669rLbMCDWtYZLvmJigy2f0MxsXF+71pxhR3xOkspmsO8h3ZlNzyibAmtCa3l4lYKk6gQ== + dependencies: + scheduler "^0.27.0" + react-intersection-observer@^9.15.1: version "9.16.0" resolved "https://registry.npmjs.org/react-intersection-observer/-/react-intersection-observer-9.16.0.tgz" @@ -10269,7 +9860,7 @@ react-remove-scroll@^2.6.3: use-callback-ref "^1.3.3" use-sidecar "^1.1.3" -react-router@^7.9.4: +"react-router@^5 || ^6 || ^7", react-router@^7.9.4: version "7.14.2" resolved "https://registry.npmjs.org/react-router/-/react-router-7.14.2.tgz" integrity sha512-yCqNne6I8IB6rVCH7XUvlBK7/QKyqypBFGv+8dj4QBFJiiRX+FG7/nkdAvGElyvVZ/HQP5N19wzteuTARXi5Gw== @@ -10285,6 +9876,11 @@ react-style-singleton@^2.2.2, react-style-singleton@^2.2.3: get-nonce "^1.0.0" tslib "^2.0.0" +"react@^16.8 || ^17.0 || ^18.0 || ^19.0 || ^19.0.0-rc", "react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0", "react@^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 || ^19.0.0-rc", "react@^16.x || ^17.x || ^18.x || ^19.0.0 || ^19.0.0-rc", "react@^17.0.0 || ^18.0.0 || ^19.0.0", react@^19, react@^19.2.7, react@>=16, react@>=16.8.0, react@>=17.0.0, react@>=18, "react@>=18.2.0 || ^19.0.0-0": + version "19.2.7" + resolved "https://registry.npmjs.org/react/-/react-19.2.7.tgz" + integrity sha512-HNe9WslTbXmFK8o8cmwgAeJFSBvt1bPdHCVKtaaV+WlAN36mpT4hcRpwbf3fY56ar2oIXzsBpOAiIRHAdY0OlQ== + readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.2" resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz" @@ -10578,13 +10174,6 @@ resolve.exports@^2.0.0: resolved "https://registry.npmjs.org/resolve.exports/-/resolve.exports-2.0.3.tgz" integrity sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A== -resolve@1.17.0: - version "1.17.0" - resolved "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz" - integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== - dependencies: - path-parse "^1.0.6" - resolve@^1.20.0, resolve@^1.22.4: version "1.22.10" resolved "https://registry.npmjs.org/resolve/-/resolve-1.22.10.tgz" @@ -10594,6 +10183,13 @@ resolve@^1.20.0, resolve@^1.22.4: path-parse "^1.0.7" supports-preserve-symlinks-flag "^1.0.0" +resolve@1.17.0: + version "1.17.0" + resolved "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz" + integrity sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w== + dependencies: + path-parse "^1.0.6" + responselike@^2.0.0: version "2.0.1" resolved "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz" @@ -10640,7 +10236,7 @@ robust-predicates@^3.0.2: resolved "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz" integrity sha512-NS3levdsRIUOmiJ8FZWCP7LG3QpJyrs/TE0Zpf1yvZu8cAJJ6QMW92H1c7kWpdIHo8RvmLxN/o2JXTKHp74lUA== -rollup@^4.34.8, rollup@^4.43.0: +rollup@^1.20.0||^2.0.0||^3.0.0||^4.0.0, rollup@^4.34.8, rollup@^4.43.0, rollup@>=2: version "4.60.3" resolved "https://registry.npmjs.org/rollup/-/rollup-4.60.3.tgz" integrity sha512-pAQK9HalE84QSm4Po3EmWIZPd3FnjkShVkiMlz1iligWYkWQ7wHYd1PF/T7QZ5TVSD6uSTon5gBVMSM4JfBV+A== @@ -10716,7 +10312,7 @@ safe-array-concat@^1.1.3: has-symbols "^1.1.0" isarray "^2.0.5" -safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@~5.2.0, safe-buffer@5.2.1: version "5.2.1" resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -10743,6 +10339,11 @@ safe-regex-test@^1.1.0: resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +scheduler@^0.27.0: + version "0.27.0" + resolved "https://registry.npmjs.org/scheduler/-/scheduler-0.27.0.tgz" + integrity sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q== + scrypt-js@3.0.1: version "3.0.1" resolved "https://registry.npmjs.org/scrypt-js/-/scrypt-js-3.0.1.tgz" @@ -10767,7 +10368,27 @@ semver@^6.3.0, semver@^6.3.1: resolved "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.5.3, semver@^7.5.4, semver@^7.6.3, semver@^7.7.2, semver@^7.7.3: +semver@^7.5.3: + version "7.7.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== + +semver@^7.5.4: + version "7.7.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== + +semver@^7.6.3: + version "7.7.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== + +semver@^7.7.2: + version "7.7.4" + resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" + integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== + +semver@^7.7.3: version "7.7.4" resolved "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz" integrity sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA== @@ -10866,7 +10487,7 @@ shebang-regex@^3.0.0: resolved "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shiki@1.29.2, shiki@^1: +shiki@^1, shiki@1.29.2: version "1.29.2" resolved "https://registry.npmjs.org/shiki/-/shiki-1.29.2.tgz" integrity sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg== @@ -10963,14 +10584,6 @@ source-map-js@^1.2.1: resolved "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz" integrity sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA== -source-map-support@0.5.13: - version "0.5.13" - resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" - integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== - dependencies: - buffer-from "^1.0.0" - source-map "^0.6.0" - source-map-support@^0.5.13: version "0.5.21" resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz" @@ -10979,12 +10592,13 @@ source-map-support@^0.5.13: buffer-from "^1.0.0" source-map "^0.6.0" -source-map@0.8.0-beta.0: - version "0.8.0-beta.0" - resolved "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz" - integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== +source-map-support@0.5.13: + version "0.5.13" + resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz" + integrity sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w== dependencies: - whatwg-url "^7.0.0" + buffer-from "^1.0.0" + source-map "^0.6.0" source-map@^0.6.0, source-map@^0.6.1: version "0.6.1" @@ -10996,6 +10610,13 @@ source-map@^0.7.0: resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.6.tgz" integrity sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ== +source-map@0.8.0-beta.0: + version "0.8.0-beta.0" + resolved "https://registry.npmjs.org/source-map/-/source-map-0.8.0-beta.0.tgz" + integrity sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA== + dependencies: + whatwg-url "^7.0.0" + space-separated-tokens@^2.0.0: version "2.0.2" resolved "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz" @@ -11025,16 +10646,16 @@ stacktrace-parser@^0.1.10: dependencies: type-fest "^0.7.1" -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - "statuses@>= 1.5.0 < 2": version "1.5.0" resolved "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz" integrity sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA== +statuses@2.0.1: + version "2.0.1" + resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" + integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== + std-env@^3.9.0: version "3.9.0" resolved "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz" @@ -11067,6 +10688,13 @@ stream-json@^1.9.1: dependencies: stream-chain "^2.2.5" +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + string-length@^4.0.1: version "4.0.2" resolved "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz" @@ -11143,13 +10771,6 @@ string.prototype.trimstart@^1.0.8: define-properties "^1.2.1" es-object-atoms "^1.0.0" -string_decoder@^1.1.1: - version "1.3.0" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz" - integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== - dependencies: - safe-buffer "~5.2.0" - stringify-entities@^4.0.0: version "4.0.4" resolved "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz" @@ -11255,7 +10876,14 @@ supports-color@^7.1.0: dependencies: has-flag "^4.0.0" -supports-color@^8.0.0, supports-color@^8.1.1: +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.1.1: version "8.1.1" resolved "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz" integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== @@ -11458,7 +11086,7 @@ ts-jest@^29.1.0: type-fest "^4.41.0" yargs-parser "^21.1.1" -ts-node@^10.9.2: +ts-node@*, ts-node@^10.9.2, ts-node@>=9.0.0: version "10.9.2" resolved "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz" integrity sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ== @@ -11492,7 +11120,7 @@ tslib@^1.9.3: resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.0.0, tslib@^2.1.0, tslib@^2.4.0, tslib@^2.4.1, tslib@^2.8.0: +tslib@^2.0.0, tslib@^2.1.0, tslib@^2.4.1, tslib@^2.8.0: version "2.8.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== @@ -11666,7 +11294,7 @@ typescript-eslint@^8.58.1: "@typescript-eslint/typescript-estree" "8.59.2" "@typescript-eslint/utils" "8.59.2" -typescript@^5.4.3: +typescript@*, typescript@^5.0.0, typescript@^5.4.3, "typescript@^5.5.0 || ^6.0.0", typescript@>=2.7, typescript@>=4.0.0, "typescript@>=4.3 <6", typescript@>=4.5.0, typescript@>=4.8.4, "typescript@>=4.8.4 <6.1.0", typescript@>=5, typescript@>=5.0.4, typescript@>=5.3.3, typescript@>=5.4.0, "typescript@5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x": version "5.9.2" resolved "https://registry.npmjs.org/typescript/-/typescript-5.9.2.tgz" integrity sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A== @@ -11860,7 +11488,7 @@ use-sync-external-store@^1.5.0: resolved "https://registry.npmjs.org/use-sync-external-store/-/use-sync-external-store-1.5.0.tgz" integrity sha512-Rb46I4cGGVBmjamjphe8L/UnvJD+uPPtTkNvX5mZgqdbavhI4EbgIWJiIHXJ8bc/i9EQGPRh4DwEURJ552Do0A== -utf-8-validate@^5.0.2: +utf-8-validate@^5.0.2, utf-8-validate@>=5.0.2: version "5.0.10" resolved "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz" integrity sha512-Z6czzLq4u8fPOyx7TU6X3dvUZVvoJmxSQ+IcrlmagKhilxlhZgxPK6C5Jqbkw1IDUmFTM+cz9QDnnLTwDz/2gQ== @@ -11952,7 +11580,7 @@ vfile@^6.0.0: "@types/unist" "^3.0.0" vfile-message "^4.0.0" -viem@^2.22.14: +viem@^2.22.14, viem@^2.45.0: version "2.48.8" resolved "https://registry.npmjs.org/viem/-/viem-2.48.8.tgz" integrity sha512-Xj3Nrt66SKtn06kczU91ELn9Difr84ZM5A62BTlaisT5lpgt058i2mBkfMZCXHGb1ocOLjzC2ztPhD0Lvky7uQ== @@ -11966,7 +11594,7 @@ viem@^2.22.14: ox "0.14.20" ws "8.18.3" -vite-node@3.2.4, vite-node@^3.2.2: +vite-node@^3.2.2, vite-node@3.2.4: version "3.2.4" resolved "https://registry.npmjs.org/vite-node/-/vite-node-3.2.4.tgz" integrity sha512-EbKSKh+bh1E1IFxeO0pg1n4dvoOTt0UDiXMd/qn++r98+jPO1xtJilvXldeuQ8giIB5IkpjCgMleHMNEsGH6pg== @@ -11977,7 +11605,7 @@ vite-node@3.2.4, vite-node@^3.2.2: pathe "^2.0.3" vite "^5.0.0 || ^6.0.0 || ^7.0.0-0" -"vite@^5.0.0 || ^6.0.0 || ^7.0.0", "vite@^5.0.0 || ^6.0.0 || ^7.0.0-0", vite@^7.1.11: +"vite@^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0", "vite@^5.0.0 || ^6.0.0 || ^7.0.0", "vite@^5.0.0 || ^6.0.0 || ^7.0.0-0", "vite@^5.2.0 || ^6 || ^7", vite@^7.1.11: version "7.3.2" resolved "https://registry.npmjs.org/vite/-/vite-7.3.2.tgz" integrity sha512-Bby3NOsna2jsjfLVOHKes8sGwgl4TT0E6vvpYgnAYDIF/tie7MRaFthmKuHx1NSXjiTueXH3do80FMQgvEktRg== @@ -12321,21 +11949,31 @@ write-file-atomic@^4.0.2: imurmurhash "^0.1.4" signal-exit "^3.0.7" +ws@*, ws@^7, ws@^7.4.6, ws@^7.5.10: + version "7.5.10" + resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz" + integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== + +ws@^8.13.0: + version "8.18.3" + resolved "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== + +ws@^8.5.0: + version "8.18.3" + resolved "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz" + integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== + ws@8.18.0: version "8.18.0" resolved "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz" integrity sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw== -ws@8.18.3, ws@^8.13.0, ws@^8.5.0: +ws@8.18.3: version "8.18.3" resolved "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz" integrity sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg== -ws@^7, ws@^7.4.6, ws@^7.5.10: - version "7.5.10" - resolved "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz" - integrity sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ== - xrpl@^4.3.0: version "4.4.0" resolved "https://registry.npmjs.org/xrpl/-/xrpl-4.4.0.tgz" @@ -12379,7 +12017,7 @@ yallist@^3.0.2: resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== -yaml@^2.0.0, yaml@^2.8.0, yaml@^2.8.1: +yaml@^2.0.0, yaml@^2.4.2, yaml@^2.8.0, yaml@^2.8.1: version "2.8.4" resolved "https://registry.npmjs.org/yaml/-/yaml-2.8.4.tgz" integrity sha512-ml/JPOj9fOQK8RNnWojA67GbZ0ApXAUlN2UQclwv2eVgTgn7O9gg9o7paZWKMp4g0H3nTLtS9LVzhkpOFIKzog== @@ -12445,7 +12083,7 @@ yocto-queue@^1.0.0: resolved "https://registry.npmjs.org/yocto-queue/-/yocto-queue-1.2.1.tgz" integrity sha512-AyeEbWOu/TAXdxlV9wmGcR0+yh2j3vYPGOECcIj2S7MkrLyC7ne+oye2BKTItt0ii2PHk4cDy+95+LshzbXnGg== -zod@^3.22.4: +"zod@^3 >=3.19.1", "zod@^3.22.0 || ^4.0.0", zod@^3.22.4: version "3.25.76" resolved "https://registry.npmjs.org/zod/-/zod-3.25.76.tgz" integrity sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ== From 8cb5133fba07bf467521c937596a38ac48b192b7 Mon Sep 17 00:00:00 2001 From: nocktoshi Date: Sat, 20 Jun 2026 13:53:22 -0500 Subject: [PATCH 2/2] docs: update README to include Nockchain blockchain support --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8ad367d..96d978b 100644 --- a/README.md +++ b/README.md @@ -26,6 +26,7 @@ The library provides chain adapters for the following blockchain networks: - **Aptos**: Move-based blockchain with Ed25519 signature support - **SUI**: Move-based blockchain with Ed25519 signature support - **XRP Ledger**: XRP mainnet, testnet, and devnet with native XRP transfers +- **Nockchain**: NockVM-based blockchain whose mining produces zero-knowledge proofs Each chain adapter provides a unified interface for: - Address and public key derivation