diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index d0561457..6fc31aa6 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -4,6 +4,7 @@ on: push: branches: - "main" + - "fast-submit-test" jobs: docker: @@ -43,7 +44,7 @@ jobs: type=semver,pattern=v{{major}}.{{minor}} type=semver,pattern=v{{version}} type=sha - + - name: Extract metadata (tags, labels) for the AI docker image id: meta_ai uses: docker/metadata-action@v5 @@ -88,4 +89,4 @@ jobs: platforms: linux/amd64 push: true tags: ${{ steps.meta_ai.outputs.tags }} - labels: ${{ steps.meta_ai.outputs.labels }} \ No newline at end of file + labels: ${{ steps.meta_ai.outputs.labels }} diff --git a/referee/referee.ts b/referee/referee.ts index e877b393..8477a395 100644 --- a/referee/referee.ts +++ b/referee/referee.ts @@ -10,14 +10,15 @@ import { KinesisClient, PutRecordsCommand } from "@aws-sdk/client-kinesis"; import { Packet } from "utils/HydraMultiplayer/base.js"; import { fromHex, toHex } from "utils/helpers.js"; - - const NETWORK_ID = Number(process.env.NETWORK_ID); const HYDRA_NODE = "http://localhost:4001/"; const RECORD_STATS = true; const kinesis = new KinesisClient({ - region: process.env.AWS_REGION === "ap-southeast-1" ? "ap-southeast-1" : "us-east-1", + region: + process.env.AWS_REGION === "ap-southeast-1" + ? "ap-southeast-1" + : "us-east-1", }); const encoder = new TextEncoder(); @@ -111,7 +112,6 @@ const module = await createModule({ }, }); global.Module = module; - const hydra = new HydraMultiplayerServer({ key: keys, address: keys.address, @@ -354,21 +354,30 @@ const args = [ "-config", "default.cfg", ]; -try { - module.callMain(args); -} catch (e) { - console.error(e); -} +// try { +// module.callMain(args); +// } catch (e) { +// console.error(e); +// } -while (!done) { - await new Promise((resolve) => setTimeout(resolve, 1000)); - timeout -= 1000; - if (timeout <= 0) { - console.log("Game timed out."); - done = true; +while (true) { + if (!hydra.hydra.isConnected()) { + continue; } + // According to https://www.doomworld.com/forum/topic/99810-how-much-data-does-online-dming-consume/ assumptions, the network packet is about 6 bytes + await hydra.SendPacket(0, 0, new Uint8Array([0, 0, 0, 0, 0, 0])); + await new Promise((resolve) => setTimeout(resolve, 1)); } +// while (!done) { +// await new Promise((resolve) => setTimeout(resolve, 1000)); +// timeout -= 1000; +// if (timeout <= 0) { +// console.log("Game timed out."); +// done = true; +// } +// } + console.log("Game finished."); try { console.log("Ending game. Marking game as 'Aborted'."); diff --git a/referee/yarn.lock b/referee/yarn.lock index 7200542d..cd8e242b 100644 --- a/referee/yarn.lock +++ b/referee/yarn.lock @@ -50,16 +50,16 @@ tslib "^2.6.2" "@aws-sdk/client-kinesis@^3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-kinesis/-/client-kinesis-3.696.0.tgz#f4da916e665ab6a3f41d60638bd5a808e3d3a09e" - integrity sha512-CuLlB+Km7ACbZzOma6JRpY9w633JhCqRijH8mHz05wxzv5oyrrTM+izICBES3PtZKCNMgcY0K+yZScAG7qBg9w== + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-kinesis/-/client-kinesis-3.699.0.tgz#8d502419fed59b6aa881b4a6d4c6ff66e80140b8" + integrity sha512-jxmFlJVJslx+Mgyo4SVvTZSyOrdcyGclE1dvDO17qmzmY2yLfHrYZD2OliAI/Wfof0j+NSK7bVojfDrfiwWZHA== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.696.0" - "@aws-sdk/client-sts" "3.696.0" + "@aws-sdk/client-sso-oidc" "3.699.0" + "@aws-sdk/client-sts" "3.699.0" "@aws-sdk/core" "3.696.0" - "@aws-sdk/credential-provider-node" "3.696.0" + "@aws-sdk/credential-provider-node" "3.699.0" "@aws-sdk/middleware-host-header" "3.696.0" "@aws-sdk/middleware-logger" "3.696.0" "@aws-sdk/middleware-recursion-detection" "3.696.0" @@ -100,15 +100,15 @@ "@smithy/util-waiter" "^3.1.9" tslib "^2.6.2" -"@aws-sdk/client-sso-oidc@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.696.0.tgz#b6a92ae876d3fdaa986bd70bbb329dcbcd12ea2b" - integrity sha512-ikxQ3mo86d1mAq5zTaQAh8rLBERwL+I4MUYu/IVYW2hhl9J2SDsl0SgnKeXQG6S8zWuHcBO587zsZaRta1MQ/g== +"@aws-sdk/client-sso-oidc@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.699.0.tgz#a35665e681abd518b56330bc7dab63041fbdaf83" + integrity sha512-u8a1GorY5D1l+4FQAf4XBUC1T10/t7neuwT21r0ymrtMFSK2a9QqVHKMoLkvavAwyhJnARSBM9/UQC797PFOFw== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" "@aws-sdk/core" "3.696.0" - "@aws-sdk/credential-provider-node" "3.696.0" + "@aws-sdk/credential-provider-node" "3.699.0" "@aws-sdk/middleware-host-header" "3.696.0" "@aws-sdk/middleware-logger" "3.696.0" "@aws-sdk/middleware-recursion-detection" "3.696.0" @@ -189,16 +189,16 @@ "@smithy/util-utf8" "^3.0.0" tslib "^2.6.2" -"@aws-sdk/client-sts@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.696.0.tgz#58d820a6d6f62626fd3177e7c0dc90027f0c6c3c" - integrity sha512-eJOxR8/UyI7kGSRyE751Ea7MKEzllQs7eNveDJy9OP4t/jsN/P19HJ1YHeA1np40JRTUBfqa6WLAAiIXsk8rkg== +"@aws-sdk/client-sts@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.699.0.tgz#9419be6bbf3809008128117afea8b9129b5a959d" + integrity sha512-++lsn4x2YXsZPIzFVwv3fSUVM55ZT0WRFmPeNilYIhZClxHLmVAWKH4I55cY9ry60/aTKYjzOXkWwyBKGsGvQg== dependencies: "@aws-crypto/sha256-browser" "5.2.0" "@aws-crypto/sha256-js" "5.2.0" - "@aws-sdk/client-sso-oidc" "3.696.0" + "@aws-sdk/client-sso-oidc" "3.699.0" "@aws-sdk/core" "3.696.0" - "@aws-sdk/credential-provider-node" "3.696.0" + "@aws-sdk/credential-provider-node" "3.699.0" "@aws-sdk/middleware-host-header" "3.696.0" "@aws-sdk/middleware-logger" "3.696.0" "@aws-sdk/middleware-recursion-detection" "3.696.0" @@ -279,16 +279,16 @@ "@smithy/util-stream" "^3.3.1" tslib "^2.6.2" -"@aws-sdk/credential-provider-ini@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.696.0.tgz#8b162db836c81582f249e24adff48f01cacca402" - integrity sha512-9WsZZofjPjNAAZhIh7c7FOhLK8CR3RnGgUm1tdZzV6ZSM1BuS2m6rdwIilRxAh3fxxKDkmW/r/aYmmCYwA+AYA== +"@aws-sdk/credential-provider-ini@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.699.0.tgz#7919a454b05c5446d04a0d3270807046a029ee30" + integrity sha512-dXmCqjJnKmG37Q+nLjPVu22mNkrGHY8hYoOt3Jo9R2zr5MYV7s/NHsCHr+7E+BZ+tfZYLRPeB1wkpTeHiEcdRw== dependencies: "@aws-sdk/core" "3.696.0" "@aws-sdk/credential-provider-env" "3.696.0" "@aws-sdk/credential-provider-http" "3.696.0" "@aws-sdk/credential-provider-process" "3.696.0" - "@aws-sdk/credential-provider-sso" "3.696.0" + "@aws-sdk/credential-provider-sso" "3.699.0" "@aws-sdk/credential-provider-web-identity" "3.696.0" "@aws-sdk/types" "3.696.0" "@smithy/credential-provider-imds" "^3.2.6" @@ -297,16 +297,16 @@ "@smithy/types" "^3.7.1" tslib "^2.6.2" -"@aws-sdk/credential-provider-node@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.696.0.tgz#6d8d97a85444bfd3c5a1aded9ce894f68e6d3547" - integrity sha512-8F6y5FcfRuMJouC5s207Ko1mcVvOXReBOlJmhIwE4QH1CnO/CliIyepnAZrRQ659mo5wIuquz6gXnpYbitEVMg== +"@aws-sdk/credential-provider-node@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.699.0.tgz#6a1e32a49a7fa71d10c85a927267d1782444def1" + integrity sha512-MmEmNDo1bBtTgRmdNfdQksXu4uXe66s0p1hi1YPrn1h59Q605eq/xiWbGL6/3KdkViH6eGUuABeV2ODld86ylg== dependencies: "@aws-sdk/credential-provider-env" "3.696.0" "@aws-sdk/credential-provider-http" "3.696.0" - "@aws-sdk/credential-provider-ini" "3.696.0" + "@aws-sdk/credential-provider-ini" "3.699.0" "@aws-sdk/credential-provider-process" "3.696.0" - "@aws-sdk/credential-provider-sso" "3.696.0" + "@aws-sdk/credential-provider-sso" "3.699.0" "@aws-sdk/credential-provider-web-identity" "3.696.0" "@aws-sdk/types" "3.696.0" "@smithy/credential-provider-imds" "^3.2.6" @@ -327,14 +327,14 @@ "@smithy/types" "^3.7.1" tslib "^2.6.2" -"@aws-sdk/credential-provider-sso@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.696.0.tgz#3e58608e7c330e08206af496a14764f82a776acf" - integrity sha512-4SSZ9Nk08JSu4/rX1a+dEac/Ims1HCXfV7YLUe5LGdtRLSKRoQQUy+hkFaGYoSugP/p1UfUPl3BuTO9Vv8z1pA== +"@aws-sdk/credential-provider-sso@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.699.0.tgz#515e2ecd407bace3141b8b192505631de415667e" + integrity sha512-Ekp2cZG4pl9D8+uKWm4qO1xcm8/MeiI8f+dnlZm8aQzizeC+aXYy9GyoclSf6daK8KfRPiRfM7ZHBBL5dAfdMA== dependencies: "@aws-sdk/client-sso" "3.696.0" "@aws-sdk/core" "3.696.0" - "@aws-sdk/token-providers" "3.696.0" + "@aws-sdk/token-providers" "3.699.0" "@aws-sdk/types" "3.696.0" "@smithy/property-provider" "^3.1.9" "@smithy/shared-ini-file-loader" "^3.1.10" @@ -406,10 +406,10 @@ "@smithy/util-middleware" "^3.0.10" tslib "^2.6.2" -"@aws-sdk/token-providers@3.696.0": - version "3.696.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.696.0.tgz#22ca7cf0901885d2f01aed6fe664e5162ae58108" - integrity sha512-fvTcMADrkwRdNwVmJXi2pSPf1iizmUqczrR1KusH4XehI/KybS4U6ViskRT0v07vpxwL7x+iaD/8fR0PUu5L/g== +"@aws-sdk/token-providers@3.699.0": + version "3.699.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.699.0.tgz#354990dd52d651c1f7a64c4c0894c868cdc81de2" + integrity sha512-kuiEW9DWs7fNos/SM+y58HCPhcIzm1nEZLhe2/7/6+TvAYLuEWURYsbK48gzsxXlaJ2k/jGY3nIsA7RptbMOwA== dependencies: "@aws-sdk/types" "3.696.0" "@smithy/property-provider" "^3.1.9" @@ -749,9 +749,9 @@ "@multiformats/multiaddr" "^12.0.0" "@multiformats/multiaddr@^12.0.0", "@multiformats/multiaddr@^12.1.14": - version "12.3.3" - resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-12.3.3.tgz#eddd0a61a542fc0120da7b5f6fc250177762e6d4" - integrity sha512-3POIUN7myk8JbO8oi/FEyZoLQW2XMhwM/uB7hG5Zl1PgdXJR8UTH9QdQEp1jM358kd3yn+vtS4fFJdqdRk+O7A== + version "12.3.4" + resolved "https://registry.yarnpkg.com/@multiformats/multiaddr/-/multiaddr-12.3.4.tgz#3dd3d7d76f95ce9c8768770e8008a99de9b7ba49" + integrity sha512-R4pEEUyWGrRo16TSflz80Yr6XNbPirix1pfPqDLXsDZ4aaIrhZ7cez9jnyRQgci6DuuqSyZAdJKV6SdxpZ7Oiw== dependencies: "@chainsafe/is-ip" "^2.0.1" "@chainsafe/netmask" "^2.0.0" @@ -777,12 +777,7 @@ resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.6.0.tgz#d4bfb516ad6e7b5111c216a5cc7075f4cf19e6c5" integrity sha512-YUULf0Uk4/mAA89w+k3+yUYh6NrEvxZa5T6SY3wlMvE2chHkxFUUIDI8/XW1QSC357iA5pSnqt7XEhvFOqmDyQ== -"@noble/hashes@^1.5.0": - version "1.5.0" - resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.5.0.tgz#abadc5ca20332db2b1b2aa3e496e9af1213570b0" - integrity sha512-1j6kQFb7QRru7eKN3ZDvRcP13rugwdxZqCjbiAVZfIJwgj2A65UmT4TgARXGlXgnRkORLTDTrO19ZErt7+QXgA== - -"@noble/hashes@~1.6.0": +"@noble/hashes@^1.5.0", "@noble/hashes@~1.6.0": version "1.6.1" resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-1.6.1.tgz#df6e5943edcea504bac61395926d6fd67869a0d5" integrity sha512-pq5D8h10hHBjyqX+cfBm0i8JUXJ0UhczFc4r74zbuT9XgewFo2E3J1cOaGtdZynILNmQ685YWGzGE1Zv6io50w== @@ -3402,16 +3397,7 @@ ssri@^9.0.0: dependencies: minipass "^3.1.1" -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -3436,14 +3422,7 @@ string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -3516,16 +3495,11 @@ ts-log@^2.2.4: resolved "https://registry.yarnpkg.com/ts-log/-/ts-log-2.2.7.tgz#4f4512144898b77c9984e91587076fcb8518688e" integrity sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg== -tslib@^2.1.0: +tslib@^2.1.0, tslib@^2.6.2: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== -tslib@^2.6.2: - version "2.8.0" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.0.tgz#d124c86c3c05a40a91e6fdea4021bd31d377971b" - integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== - tuf-js@^1.1.7: version "1.1.7" resolved "https://registry.yarnpkg.com/tuf-js/-/tuf-js-1.1.7.tgz#21b7ae92a9373015be77dfe0cb282a80ec3bbe43" diff --git a/src/utils/HydraMultiplayer/base.ts b/src/utils/HydraMultiplayer/base.ts index 4b041bd2..b0010e33 100644 --- a/src/utils/HydraMultiplayer/base.ts +++ b/src/utils/HydraMultiplayer/base.ts @@ -211,7 +211,7 @@ function decodeGame(raw: Uint8Array): TGame { referee_key_hash: referee_key_hash, playerCount, botCount, - players: player_payments.map(p => p.payment_key_hash), + players: player_payments.map((p) => p.payment_key_hash), state: stateTag, winner: winnerRaw, cheater: cheaterRaw, diff --git a/src/utils/HydraMultiplayer/server.ts b/src/utils/HydraMultiplayer/server.ts index 8e6b33b1..2c81f685 100644 --- a/src/utils/HydraMultiplayer/server.ts +++ b/src/utils/HydraMultiplayer/server.ts @@ -28,6 +28,7 @@ export class HydraMultiplayerServer extends HydraMultiplayer { if (this.latestUTxO) { return; } + console.log("Selecting UTxO"); await this.hydra.populateUTxO(); const utxos = await this.hydra.getUtxos(this.address); // TODO: @@ -36,12 +37,14 @@ export class HydraMultiplayerServer extends HydraMultiplayer { // The other is the 0 ada UTxO created during the new game transaction // If we want to ensure we don't spend the initial state utxo, // we need to add something identifying for the "admin UTxO" (perhaps a datum) - this.latestUTxO = utxos.find((u) => !u.datumHash && !u.assets.lovelace)!; + this.latestUTxO = utxos[0]!; + console.log("UTxO Selected"); } protected override buildTx(datum: string): [UTxO, string] { if (!this.latestUTxO) { throw new Error("No latest UTxO"); } + const datumLength = datum.length / 2; let datumLengthHex = datumLength.toString(16); if (datumLengthHex.length % 2 !== 0) { diff --git a/src/utils/HydraMultiplayer/types.ts b/src/utils/HydraMultiplayer/types.ts index 16302610..4731098d 100644 --- a/src/utils/HydraMultiplayer/types.ts +++ b/src/utils/HydraMultiplayer/types.ts @@ -17,7 +17,7 @@ export const PacketArray = PacketArraySchema as unknown as TPacketArray; export const GameSchema = Data.Object({ referee_payment: Data.Object({ - payment_key_hash: Data.Bytes() + payment_key_hash: Data.Bytes(), }), playerCountRaw: Data.Integer(), botCountRaw: Data.Integer(), diff --git a/src/utils/hydra.ts b/src/utils/hydra.ts index 01e2d50d..4f37c989 100644 --- a/src/utils/hydra.ts +++ b/src/utils/hydra.ts @@ -50,6 +50,7 @@ export class Hydra { onTxInvalid?: (txid: TxHash) => void; tx_count: number; + startTime: number; tx_timings: { [tx: string]: TransactionTiming; }; @@ -59,6 +60,7 @@ export class Hydra { filterAddress?: string, public queue_length: number = 10, ) { + this.startTime = 0; this.tx_count = 0; this.tx_timings = {}; this.outbound_transactions = []; @@ -66,9 +68,14 @@ export class Hydra { this.tombstones = {}; this.url = new URL(url); - this.url.protocol = this.url.protocol.replace("ws", "http"); + this.url.protocol = this.url.protocol.replace("ws", "https"); const websocketUrl = new URL(url); - websocketUrl.protocol = websocketUrl.protocol.replace("http", "ws"); + websocketUrl.protocol = websocketUrl.protocol.replace("https", "ws"); + console.log( + websocketUrl + + (websocketUrl.toString().endsWith("/") ? "" : "/") + + `?${filterAddress ? `address=${filterAddress}&` : ""}history=no`, + ); this.connection = new WebSocket( websocketUrl + (websocketUrl.toString().endsWith("/") ? "" : "/") + @@ -112,16 +119,48 @@ export class Hydra { break; case "TxValid": { - const txid = data.transaction.txId; - // Record seen time - if (this.tx_timings[txid]?.sent) { - const seenTime = now - this.tx_timings[txid].sent; - this.tx_timings[txid].seen = seenTime; - // console.log(`seen ${txid} after ${seenTime}ms`); + if (this.startTime === 0) { + this.startTime = performance.now(); + } + this.tx_count += 1; + const endTime = performance.now(); + if (endTime > this.startTime + 1000) { + console.log( + `Current Data: ${this.tx_count} Transactions | ${this.tx_count / ((endTime - this.startTime) / 1000)} TPS`, + ); + + this.startTime = performance.now(); + this.tx_count = 0; } - const cbor = fromHex(data.transaction.cborHex); - const tx = decode(cbor); - this.onTxSeen?.(txid, tx); + // // Record seen time + // if (this.tx_timings[txid]?.sent) { + // const seenTime = now - this.tx_timings[txid].sent; + // this.tx_timings[txid].seen = seenTime; + // // console.log(`seen ${txid} after ${seenTime}ms`); + // } + // const tx = tx_parser.fromTx(data.transaction.cborHex); + // for (const input of tx.txComplete.body().inputs().to_js_value()) { + // const ref = `${input.transaction_id}#${input.index}`; + // if (this.utxos[ref]) { + // delete this.utxos[ref]; + // } else { + // this.tombstones[ref] = true; + // } + // } + // let idx = 0; + // for (const output of tx.txComplete.body().outputs().to_js_value()) { + // const ref = `${tx.toHash()}#${idx}`; + // if (!this.tombstones[ref]) { + // this.utxos[ref] = hydraUtxoToLucidUtxo( + // tx.toHash(), + // idx, + // output, + // ); + // } + // idx++; + // } + // this.onTxSeen?.(txid, tx); + // tx.txComplete.free(); } break; case "TxInvalid": diff --git a/yarn.lock b/yarn.lock index 2f37a391..0564dabe 100644 --- a/yarn.lock +++ b/yarn.lock @@ -134,7 +134,14 @@ js-tokens "^4.0.0" picocolors "^1.0.0" -"@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.25.7", "@babel/parser@^7.25.8": +"@babel/parser@^7.1.0", "@babel/parser@^7.20.7": + version "7.25.3" + resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz" + integrity sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw== + dependencies: + "@babel/types" "^7.25.2" + +"@babel/parser@^7.25.7", "@babel/parser@^7.25.8": version "7.25.8" resolved "https://registry.npmjs.org/@babel/parser/-/parser-7.25.8.tgz" integrity sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ== @@ -177,7 +184,16 @@ debug "^4.3.1" globals "^11.1.0" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.25.7", "@babel/types@^7.25.8": +"@babel/types@^7.0.0", "@babel/types@^7.20.7": + version "7.25.2" + resolved "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz" + integrity sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q== + dependencies: + "@babel/helper-string-parser" "^7.24.8" + "@babel/helper-validator-identifier" "^7.24.7" + to-fast-properties "^2.0.0" + +"@babel/types@^7.25.7", "@babel/types@^7.25.8": version "7.25.8" resolved "https://registry.npmjs.org/@babel/types/-/types-7.25.8.tgz" integrity sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg== @@ -547,9 +563,9 @@ eslint-visitor-keys "^3.3.0" "@eslint-community/regexpp@^4.10.0", "@eslint-community/regexpp@^4.11.0": - version "4.11.1" - resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz" - integrity sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q== + version "4.11.0" + resolved "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.0.tgz" + integrity sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A== "@eslint/config-array@^0.18.0": version "0.18.0" @@ -580,11 +596,16 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.12.0", "@eslint/js@^9.9.0": +"@eslint/js@9.12.0": version "9.12.0" resolved "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz" integrity sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA== +"@eslint/js@^9.9.0": + version "9.9.0" + resolved "https://registry.npmjs.org/@eslint/js/-/js-9.9.0.tgz" + integrity sha512-hhetes6ZHP3BlXLxmd8K2SNgkhNSi+UcecbnwWKwpP7kyi/uC75DJ1lOOBO3xrC4jyojtGE3YxKZPHfk4yrgug== + "@eslint/object-schema@^2.1.4": version "2.1.4" resolved "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz" @@ -645,7 +666,12 @@ resolved "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz" integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== -"@humanwhocodes/retry@^0.3.0", "@humanwhocodes/retry@^0.3.1": +"@humanwhocodes/retry@^0.3.0": + version "0.3.0" + resolved "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.0.tgz" + integrity sha512-d2CGZR2o7fS6sWB7DG/3a95bGKQyHMACZ5aW8qGkkqQpUoZV6C0X7Pc7l4ZNMZkfNBf4VWNe9E1jRsf0G146Ew== + +"@humanwhocodes/retry@^0.3.1": version "0.3.1" resolved "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz" integrity sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA== @@ -1192,23 +1218,23 @@ integrity sha512-j1z2Z1Ln9d0E3dHsPkC1K9XDh0ojhRPwV+GfRTu4D61PE+aYhYLvbJC6xPvL4/204QrStRS7eDu3m+BcDp3rgQ== "@swc/core@^1.7.0": - version "1.7.36" - resolved "https://registry.npmjs.org/@swc/core/-/core-1.7.36.tgz" - integrity sha512-bu7ymMX+LCJOSSrKank25Jaq66ymLVA9fOUuy4ck3/6rbXdLw+pIJPnIDKQ9uNcxww8KDxOuJk9Ui9pqR+aGFw== + version "1.7.24" + resolved "https://registry.npmjs.org/@swc/core/-/core-1.7.24.tgz" + integrity sha512-FzJaai6z6DYdICAY1UKNN5pzTn296ksK2zzEjjaXlpZtoMkGktWT0ttS7hbdBCPGhLOu5Q9TA2zdPejKUFjgig== dependencies: "@swc/counter" "^0.1.3" - "@swc/types" "^0.1.13" + "@swc/types" "^0.1.12" optionalDependencies: - "@swc/core-darwin-arm64" "1.7.36" - "@swc/core-darwin-x64" "1.7.36" - "@swc/core-linux-arm-gnueabihf" "1.7.36" - "@swc/core-linux-arm64-gnu" "1.7.36" - "@swc/core-linux-arm64-musl" "1.7.36" - "@swc/core-linux-x64-gnu" "1.7.36" - "@swc/core-linux-x64-musl" "1.7.36" - "@swc/core-win32-arm64-msvc" "1.7.36" - "@swc/core-win32-ia32-msvc" "1.7.36" - "@swc/core-win32-x64-msvc" "1.7.36" + "@swc/core-darwin-arm64" "1.7.24" + "@swc/core-darwin-x64" "1.7.24" + "@swc/core-linux-arm-gnueabihf" "1.7.24" + "@swc/core-linux-arm64-gnu" "1.7.24" + "@swc/core-linux-arm64-musl" "1.7.24" + "@swc/core-linux-x64-gnu" "1.7.24" + "@swc/core-linux-x64-musl" "1.7.24" + "@swc/core-win32-arm64-msvc" "1.7.24" + "@swc/core-win32-ia32-msvc" "1.7.24" + "@swc/core-win32-x64-msvc" "1.7.24" "@swc/counter@^0.1.3": version "0.1.3" @@ -1228,11 +1254,11 @@ integrity sha512-Oou0bBu/P8+oYjXsJQ11j+gcpLAMpqW42UlokQYEz4dE7+hOtVO9rVuolJKgEccqzvyFzqX4/zZWY+R/v1wVsQ== "@tanstack/react-query@^5.55.4": - version "5.59.15" - resolved "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.59.15.tgz" - integrity sha512-QbVlAkTI78wB4Mqgf2RDmgC0AOiJqer2c5k9STOOSXGv1S6ZkY37r/6UpE8DbQ2Du0ohsdoXgFNEyv+4eDoPEw== + version "5.55.4" + resolved "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.55.4.tgz" + integrity sha512-e3uX5XkLD9oTV66/VsVpkYz3Ds/ps/Yk+V5d89xthAbtNIKKBEm4FdNb9yISFzGEGezUzVO68qmfmiSrtScvsg== dependencies: - "@tanstack/query-core" "5.59.13" + "@tanstack/query-core" "5.55.4" "@tootallnate/once@2": version "2.0.0" @@ -1308,33 +1334,40 @@ integrity sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA== "@types/lodash@^4.17.7": - version "4.17.10" - resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.10.tgz" - integrity sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ== + version "4.17.7" + resolved "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.7.tgz" + integrity sha512-8wTvZawATi/lsmNu10/j2hk1KEP0IvjubqPE3cu1Xz7xfXXt5oCq3SNUz4fMIP4XGF9Ky+Ue2tBA3hcS7LSBlA== -"@types/node@*", "@types/node@^22.7.7": +"@types/node@*": version "22.10.1" resolved "https://registry.npmjs.org/@types/node/-/node-22.10.1.tgz" integrity sha512-qKgsUwfHZV2WCWLAnVP1JqnpE6Im6h3Y0+fYgMTasNQ7V++CBX5OT1as0g0f+OyubbFqhf6XVNIsmN4IIhEgGQ== dependencies: undici-types "~6.20.0" +"@types/node@^22.7.7": + version "22.7.7" + resolved "https://registry.npmjs.org/@types/node/-/node-22.7.7.tgz" + integrity sha512-SRxCrrg9CL/y54aiMCG3edPKdprgMVGDXjA3gB8UmmBW5TcXzRUYAh8EWzTnSJFAd1rgImPELza+A3bJ+qxz8Q== + dependencies: + undici-types "~6.19.2" + "@types/prop-types@*": - version "15.7.13" - resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz" - integrity sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA== + version "15.7.12" + resolved "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.12.tgz" + integrity sha512-5zvhXYtRNRluoE/jAp4GVsSduVUzNWKkOZrCDBWYtE7biZywwdC2AcEzg+cSMLFRfVgeAFqpfNabiPjxFddV1Q== "@types/react-dom@^18.3.0": - version "18.3.1" - resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.1.tgz" - integrity sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ== + version "18.3.0" + resolved "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.3.0.tgz" + integrity sha512-EhwApuTmMBmXuFOikhQLIBUn6uFg81SwLMOAUgodJF14SOBOCMdU04gDoYi0WOJJHD144TL32z4yDqCW3dnkQg== dependencies: "@types/react" "*" "@types/react@*", "@types/react@^18.3.3": - version "18.3.11" - resolved "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz" - integrity sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ== + version "18.3.4" + resolved "https://registry.npmjs.org/@types/react/-/react-18.3.4.tgz" + integrity sha512-J7W30FTdfCxDDjmfRM+/JqLHBIyl7xUIp9kwK637FGmY7+mkSFSe6L4jpZzhj5QMfLssSDP4/i75AKkrdC7/Jw== dependencies: "@types/prop-types" "*" csstype "^3.0.2" @@ -1428,13 +1461,13 @@ eslint-visitor-keys "^3.4.3" "@vitejs/plugin-react@^4.3.1": - version "4.3.2" - resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.2.tgz" - integrity sha512-hieu+o05v4glEBucTcKMK3dlES0OeJlD9YVOAPraVMOInBCwzumaIFiUjr4bHK7NPgnAHgiskUoceKercrN8vg== + version "4.3.1" + resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-4.3.1.tgz" + integrity sha512-m/V2syj5CuVnaxcUJOQRel/Wr31FFXRFlnOoq1TVtkCxsY5veGMTEmpWHndrhB2U8ScHtCQB1e+4hWYExQc6Lg== dependencies: - "@babel/core" "^7.25.2" - "@babel/plugin-transform-react-jsx-self" "^7.24.7" - "@babel/plugin-transform-react-jsx-source" "^7.24.7" + "@babel/core" "^7.24.5" + "@babel/plugin-transform-react-jsx-self" "^7.24.5" + "@babel/plugin-transform-react-jsx-source" "^7.24.1" "@types/babel__core" "^7.20.5" react-refresh "^0.14.2" @@ -1459,9 +1492,9 @@ acorn-jsx@^5.3.2: integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== acorn@^8.12.0: - version "8.13.0" - resolved "https://registry.npmjs.org/acorn/-/acorn-8.13.0.tgz" - integrity sha512-8zSiw54Oxrdym50NlZ9sUusyO1Z1ZchgRLWRaK6c86XJFClyCgFKetdowBg5bKxyp/u+CDBJG4Mpp0m3HLZl9w== + version "8.12.1" + resolved "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz" + integrity sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg== add@^2.0.6: version "2.0.6" @@ -1513,9 +1546,9 @@ ansi-regex@^5.0.1: integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== ansi-regex@^6.0.1: - version "6.1.0" - resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz" - integrity sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA== + version "6.0.1" + resolved "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz" + integrity sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA== ansi-styles@^3.2.1: version "3.2.1" @@ -1902,7 +1935,12 @@ camelcase-css@^2.0.1: resolved "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz" integrity sha512-QOSvevhslijgYwRx6Rv7zKdMF8lbRmx+uQGx2+vDc+KI/eBnsy9kit5aj23AgGu3pa4t9AgwbnXWqS+iOY+2aA== -caniuse-lite@^1.0.30001646, caniuse-lite@^1.0.30001663: +caniuse-lite@^1.0.30001646: + version "1.0.30001651" + resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz" + integrity sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg== + +caniuse-lite@^1.0.30001663: version "1.0.30001669" resolved "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001669.tgz" integrity sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w== @@ -2219,13 +2257,20 @@ data-uri-to-buffer@^4.0.0: resolved "https://registry.npmjs.org/data-uri-to-buffer/-/data-uri-to-buffer-4.0.1.tgz" integrity sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A== -debug@4, debug@^4.1.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3, debug@^4.3.4, debug@~4.3.6: +debug@4, debug@^4.3.3: version "4.3.7" resolved "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz" integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== dependencies: ms "^2.1.3" +debug@^4.1.0, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@~4.3.6: + version "4.3.6" + resolved "https://registry.npmjs.org/debug/-/debug-4.3.6.tgz" + integrity sha512-O/09Bd4Z1fBrU4VzkhFqVgpPzaGbw6Sm9FEkBT1A/YBXQFGuuSxa1dN2nxgxS34JmKXqYx8CZAwEVoJFImUXIg== + dependencies: + ms "2.1.2" + deep-is@^0.1.3: version "0.1.4" resolved "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz" @@ -2334,9 +2379,9 @@ elliptic@^6.5.3, elliptic@^6.5.5: minimalistic-crypto-utils "^1.0.1" emoji-regex@^10.3.0: - version "10.4.0" - resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.4.0.tgz" - integrity sha512-EC+0oUMY1Rqm4O6LLrgjtYDvcVYTy7chDnM4Q7030tP4Kwj3u/pR6gP9ygnp2CJMK5Gq+9Q2oqmrFJAz01DXjw== + version "10.3.0" + resolved "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz" + integrity sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw== emoji-regex@^8.0.0: version "8.0.0" @@ -2572,9 +2617,9 @@ eslint-plugin-react-hooks@^5.1.0-rc.0: integrity sha512-xsiRwaDNF5wWNC4ZHLut+x/YcAxksUd9Rizt7LaEn3bV8VyYRpXnRJQlLOfYaVy9esk4DFP4zPPnoNVjq5Gc0w== eslint-plugin-react-refresh@^0.4.9: - version "0.4.12" - resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.12.tgz" - integrity sha512-9neVjoGv20FwYtCP6CB1dzR1vr57ZDNOXst21wd2xJ/cTlM2xLq0GWVlSNTdMn/4BtP6cHYBMCSp1wFBJ9jBsg== + version "0.4.10" + resolved "https://registry.npmjs.org/eslint-plugin-react-refresh/-/eslint-plugin-react-refresh-0.4.10.tgz" + integrity sha512-I39s6G9We7ZxbCRxTTM5XX4KJV2cfWhFbHF4kTuL0ygdEVdQXtCNGqUQ43sBOCbTC/N6dEZXoQKFHr8gp1VHrQ== eslint-scope@^8.1.0: version "8.1.0" @@ -2595,30 +2640,26 @@ eslint-visitor-keys@^4.1.0: integrity sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg== eslint@^9.9.0: - version "9.12.0" - resolved "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz" - integrity sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw== + version "9.9.0" + resolved "https://registry.npmjs.org/eslint/-/eslint-9.9.0.tgz" + integrity sha512-JfiKJrbx0506OEerjK2Y1QlldtBxkAlLxT5OEcRF8uaQ86noDe2k31Vw9rnSWv+MXZHj7OOUV/dA0AhdLFcyvA== dependencies: "@eslint-community/eslint-utils" "^4.2.0" "@eslint-community/regexpp" "^4.11.0" - "@eslint/config-array" "^0.18.0" - "@eslint/core" "^0.6.0" + "@eslint/config-array" "^0.17.1" "@eslint/eslintrc" "^3.1.0" - "@eslint/js" "9.12.0" - "@eslint/plugin-kit" "^0.2.0" - "@humanfs/node" "^0.16.5" + "@eslint/js" "9.9.0" "@humanwhocodes/module-importer" "^1.0.1" - "@humanwhocodes/retry" "^0.3.1" - "@types/estree" "^1.0.6" - "@types/json-schema" "^7.0.15" + "@humanwhocodes/retry" "^0.3.0" + "@nodelib/fs.walk" "^1.2.8" ajv "^6.12.4" chalk "^4.0.0" cross-spawn "^7.0.2" debug "^4.3.2" escape-string-regexp "^4.0.0" - eslint-scope "^8.1.0" - eslint-visitor-keys "^4.1.0" - espree "^10.2.0" + eslint-scope "^8.0.2" + eslint-visitor-keys "^4.0.0" + espree "^10.1.0" esquery "^1.5.0" esutils "^2.0.2" fast-deep-equal "^3.1.3" @@ -2628,14 +2669,26 @@ eslint@^9.9.0: ignore "^5.2.0" imurmurhash "^0.1.4" is-glob "^4.0.0" + is-path-inside "^3.0.3" json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" lodash.merge "^4.6.2" minimatch "^3.1.2" natural-compare "^1.4.0" optionator "^0.9.3" + strip-ansi "^6.0.1" text-table "^0.2.0" -espree@^10.0.1, espree@^10.2.0: +espree@^10.0.1: + version "10.1.0" + resolved "https://registry.npmjs.org/espree/-/espree-10.1.0.tgz" + integrity sha512-M1M6CpiE6ffoigIOWYO9UDP8TMUw9kqb21tf+08IgDYjCsOvCuDt4jQcZmoYxx+w7zlKw9/N0KXfto+I8/FrXA== + dependencies: + acorn "^8.12.0" + acorn-jsx "^5.3.2" + eslint-visitor-keys "^4.0.0" + +espree@^10.2.0: version "10.2.0" resolved "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz" integrity sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g== @@ -2892,9 +2945,9 @@ gensync@^1.0.0-beta.2: integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== get-east-asian-width@^1.0.0: - version "1.3.0" - resolved "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.3.0.tgz" - integrity sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ== + version "1.2.0" + resolved "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz" + integrity sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA== get-intrinsic@^1.2.4: version "1.2.4" @@ -2972,9 +3025,9 @@ globals@^14.0.0: integrity sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ== globals@^15.9.0: - version "15.11.0" - resolved "https://registry.npmjs.org/globals/-/globals-15.11.0.tgz" - integrity sha512-yeyNSjdbyVaWurlwCpcA6XNBrHTMIeDdj0/hnvX/OLJ9ekOXYbLsLinH/MucQyGvNnXhidTdNhTtJaffL2sMfw== + version "15.9.0" + resolved "https://registry.npmjs.org/globals/-/globals-15.9.0.tgz" + integrity sha512-SmSKyLLKFbSr6rptvP8izbyxJL4ILwqO9Jg23UA0sDlGlu58V59D1//I3vlc0KJphVdUR7vMjHIplYnzBxorQA== gopd@^1.0.1: version "1.1.0" @@ -3248,7 +3301,14 @@ is-cidr@^4.0.2: dependencies: cidr-regex "^3.1.1" -is-core-module@^2.13.0, is-core-module@^2.8.1: +is-core-module@^2.13.0: + version "2.15.0" + resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.0.tgz" + integrity sha512-Dd+Lb2/zvk9SKy1TGCt1wFJFo/MWBPMX5x7KcvLajWTGuomczdQX61PvY5yK6SVACwpoexWo81IfFyoKY2QnTA== + dependencies: + hasown "^2.0.2" + +is-core-module@^2.8.1: version "2.15.1" resolved "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz" integrity sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ== @@ -3604,9 +3664,9 @@ lint-staged@^15.2.10: yaml "~2.5.0" listr2@~8.2.4: - version "8.2.5" - resolved "https://registry.npmjs.org/listr2/-/listr2-8.2.5.tgz" - integrity sha512-iyAZCeyD+c1gPyE9qpFu8af0Y+MRtmKOncdGoA2S5EY8iFq99dmmvkNnHiWo+pj0s7yH7l3KPIgee77tKpXPWQ== + version "8.2.4" + resolved "https://registry.npmjs.org/listr2/-/listr2-8.2.4.tgz" + integrity sha512-opevsywziHd3zHCVQGAj8zu+Z3yHNkkoYhWIGnq54RrCVwLz0MozotJEDnKsIBLvkfLGN6BLOyAeRrYI0pKA4g== dependencies: cli-truncate "^4.0.0" colorette "^2.0.20" @@ -3750,7 +3810,15 @@ merge2@^1.3.0: resolved "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz" integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== -micromatch@^4.0.4, micromatch@^4.0.5, micromatch@~4.0.8: +micromatch@^4.0.4, micromatch@^4.0.5: + version "4.0.7" + resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz" + integrity sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q== + dependencies: + braces "^3.0.3" + picomatch "^2.3.1" + +micromatch@~4.0.8: version "4.0.8" resolved "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz" integrity sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA== @@ -3884,11 +3952,8 @@ minipass@^5.0.0: minizlib@^2.1.1, minizlib@^2.1.2: version "2.1.2" - resolved "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== - dependencies: - minipass "^3.0.0" - yallist "^4.0.0" + resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" @@ -4357,9 +4422,9 @@ p-timeout@^6.1.2: integrity sha512-UJUyfKbwvr/uZSV6btANfb+0t/mOhKV/KXcCUTp8FcQI+v/0d+wXqH4htrW0E4rR6WiEO/EPvUFiV9D5OI4vlw== package-json-from-dist@^1.0.0: - version "1.0.1" - resolved "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz" - integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + version "1.0.0" + resolved "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz" + integrity sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw== pacote@^15.0.0, pacote@^15.0.8, pacote@^15.2.0: version "15.2.0" @@ -4467,7 +4532,12 @@ pbkdf2@^3.1.2: safe-buffer "^5.0.1" sha.js "^2.4.8" -picocolors@^1.0.0, picocolors@^1.0.1, picocolors@^1.1.0: +picocolors@^1.0.0, picocolors@^1.0.1: + version "1.0.1" + resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz" + integrity sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew== + +picocolors@^1.1.0: version "1.1.1" resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== @@ -4553,7 +4623,16 @@ postcss-value-parser@^4.0.0, 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.4.23, postcss@^8.4.41, postcss@^8.4.43: +postcss@^8.4.23, postcss@^8.4.41: + version "8.4.41" + resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.41.tgz" + integrity sha512-TesUflQ0WKZqAvg52PWL6kHgLKP6xB6heTOdoYM0Wt2UHyxNa4K25EZZMgKns3BH1RLVbZCREPpLY0rhnNoHVQ== + dependencies: + nanoid "^3.3.7" + picocolors "^1.0.1" + source-map-js "^1.2.0" + +postcss@^8.4.43: version "8.4.47" resolved "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz" integrity sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ== @@ -5120,16 +5199,7 @@ string-argv@~0.3.2: resolved "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz" integrity sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q== -"string-width-cjs@npm:string-width@^4.2.0": - version "4.2.3" - resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" - integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== - dependencies: - emoji-regex "^8.0.0" - is-fullwidth-code-point "^3.0.0" - strip-ansi "^6.0.1" - -"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: +"string-width-cjs@npm:string-width@^4.2.0", "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz" integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== @@ -5170,14 +5240,7 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" -"strip-ansi-cjs@npm:strip-ansi@^6.0.1": - version "6.0.1" - resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" - integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== - dependencies: - ansi-regex "^5.0.1" - -strip-ansi@^6.0.0, strip-ansi@^6.0.1: +"strip-ansi-cjs@npm:strip-ansi@^6.0.1", strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz" integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== @@ -5239,17 +5302,17 @@ supports-preserve-symlinks-flag@^1.0.0: integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== synckit@^0.9.1: - version "0.9.2" - resolved "https://registry.npmjs.org/synckit/-/synckit-0.9.2.tgz" - integrity sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw== + version "0.9.1" + resolved "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz" + integrity sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A== dependencies: "@pkgr/core" "^0.1.0" tslib "^2.6.2" tailwindcss@^3.4.10: - version "3.4.14" - resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.14.tgz" - integrity sha512-IcSvOcTRcUtQQ7ILQL5quRDg7Xs93PdJEk1ZLbhhvJc7uj/OAhYOnruEiwnGgBvUtaUAJ8/mhSw1o8L2jCiENA== + version "3.4.10" + resolved "https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.4.10.tgz" + integrity sha512-KWZkVPm7yJRhdu4SRSl9d4AK2wM3a50UsvgHZO7xY77NQr2V+fIrEuoDGQcbvswWvFGbS2f6e+jC/6WJm1Dl0w== dependencies: "@alloc/quick-lru" "^5.2.0" arg "^5.0.2" @@ -5288,7 +5351,7 @@ tar@^6.1.11, tar@^6.1.13, tar@^6.1.2, tar@^6.2.0: text-table@^0.2.0, text-table@~0.2.0: version "0.2.0" - resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + resolved "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== thenify-all@^1.0.0: @@ -5359,16 +5422,26 @@ ts-log@^2.2.4: resolved "https://registry.npmjs.org/ts-log/-/ts-log-2.2.7.tgz" integrity sha512-320x5Ggei84AxzlXp91QkIGSw5wgaLT6GeAH0KsqDmRZdVWW2OiSeVvElVoatk3f7nicwXlElXsoFkARiGE2yg== -tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1, tslib@^2.6.2, tslib@^2.7.0: - version "2.8.0" - resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz" - integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== +tslib@^2.0.0, tslib@^2.4.0, tslib@^2.6.1: + version "2.7.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz" + integrity sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA== tslib@^2.1.0: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== +tslib@^2.6.2: + version "2.6.3" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.6.3.tgz" + integrity sha512-xNvxJEOUiWPGhUuUdQgAJPKOOJfGnIyKySOc09XkKsgdUV/3E2zvwZYdejjmRgPCgcym1juLH3226yA7sEFJKQ== + +tslib@^2.7.0: + version "2.8.0" + resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.0.tgz" + integrity sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA== + tty-browserify@0.0.1: version "0.0.1" resolved "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz" @@ -5401,18 +5474,18 @@ type-fest@^2.19.0: integrity sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA== typescript-eslint@^8.0.1: - version "8.9.0" - resolved "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.9.0.tgz" - integrity sha512-AuD/FXGYRQyqyOBCpNLldMlsCGvmDNxptQ3Dp58/NXeB+FqyvTfXmMyba3PYa0Vi9ybnj7G8S/yd/4Cw8y47eA== + version "8.2.0" + resolved "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.2.0.tgz" + integrity sha512-DmnqaPcML0xYwUzgNbM1XaKXpEb7BShYf2P1tkUmmcl8hyeG7Pj08Er7R9bNy6AufabywzJcOybQAtnD/c9DGw== dependencies: - "@typescript-eslint/eslint-plugin" "8.9.0" - "@typescript-eslint/parser" "8.9.0" - "@typescript-eslint/utils" "8.9.0" + "@typescript-eslint/eslint-plugin" "8.2.0" + "@typescript-eslint/parser" "8.2.0" + "@typescript-eslint/utils" "8.2.0" typescript@^5.5.3: - version "5.6.3" - resolved "https://registry.npmjs.org/typescript/-/typescript-5.6.3.tgz" - integrity sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw== + version "5.5.4" + resolved "https://registry.npmjs.org/typescript/-/typescript-5.5.4.tgz" + integrity sha512-Mtq29sKDAEYP7aljRgtPOpTvOfbwRWlS6dPRzwjdE+C0R4brX/GUyhHSecbHMFLNBLcJIPt9nl9yG5TZ1weH+Q== uint8-encoding@^2.0.0: version "2.0.0" @@ -5475,12 +5548,12 @@ unique-slug@^4.0.0: imurmurhash "^0.1.4" update-browserslist-db@^1.1.0: - version "1.1.1" - resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz" - integrity sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A== + version "1.1.0" + resolved "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz" + integrity sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ== dependencies: - escalade "^3.2.0" - picocolors "^1.1.0" + escalade "^3.1.2" + picocolors "^1.0.1" "uplc-node@github:jpg-store/uplc-node#fd3f2c6dc2629092e3eb37eeac48587b5eceeffb": version "0.0.5" @@ -5577,12 +5650,12 @@ vite-plugin-wasm@^3.3.0: integrity sha512-tVhz6w+W9MVsOCHzxo6SSMSswCeIw4HTrXEi6qL3IRzATl83jl09JVO1djBqPSwfjgnpVHNLYcaMbaDX5WB/pg== vite@^5.4.1: - version "5.4.9" - resolved "https://registry.npmjs.org/vite/-/vite-5.4.9.tgz" - integrity sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg== + version "5.4.2" + resolved "https://registry.npmjs.org/vite/-/vite-5.4.2.tgz" + integrity sha512-dDrQTRHp5C1fTFzcSaMxjk6vdpKvT+2/mIdE07Gw2ykehT49O0z/VHS3zZ8iV/Gh8BJJKHWOe5RjaNrW5xf/GA== dependencies: esbuild "^0.21.3" - postcss "^8.4.43" + postcss "^8.4.41" rollup "^4.20.0" optionalDependencies: fsevents "~2.3.3" @@ -5691,7 +5764,7 @@ word-wrap@^1.2.5: "wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": version "7.0.0" - resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz" integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== dependencies: ansi-styles "^4.0.0" @@ -5755,9 +5828,9 @@ yallist@^4.0.0: integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== yaml@^2.3.4, yaml@~2.5.0: - version "2.5.1" - resolved "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz" - integrity sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q== + version "2.5.0" + resolved "https://registry.npmjs.org/yaml/-/yaml-2.5.0.tgz" + integrity sha512-2wWLbGbYDiSqqIKoPjar3MPgB94ErzCtrNE1FdqGuaO0pi2JGjmE8aW8TDZwzU7vuxcGRdL/4gPQwQ7hD5AMSw== yarn@^1.22.22: version "1.22.22"