From 872fba8615bda7e4c7a06e76ac80ca5cbf7fd5e4 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:05:23 +0530 Subject: [PATCH 01/11] chore: upgrade pnpm to v9 --- package.json | 2 +- pnpm-lock.yaml | 5879 ++++++++++++++++++++++++++---------------------- 2 files changed, 3243 insertions(+), 2638 deletions(-) diff --git a/package.json b/package.json index f7d2265b..af7f4d15 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "private": true, "description": "Publish code coverage to Code Climate", "main": "lib/main.js", - "packageManager": "pnpm@8.10.4", + "packageManager": "pnpm@9.0.6", "scripts": { "build": "tsc", "test": "cross-env NODE_OPTIONS=\"--no-warnings\" tap run --disable-coverage", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 59ec579f..08327e06 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,224 +1,2706 @@ -lockfileVersion: '6.0' +lockfileVersion: '9.0' settings: autoInstallPeers: true excludeLinksFromLockfile: false -dependencies: - '@actions/core': - specifier: 1.10.1 - version: 1.10.1 - '@actions/exec': - specifier: 1.1.1 - version: 1.1.1 - '@actions/github': - specifier: 6.0.0 - version: 6.0.0 - '@actions/glob': - specifier: 0.4.0 - version: 0.4.0 - hook-std: - specifier: 2.0.0 - version: 2.0.0 - node-fetch: - specifier: 2.7.0 - version: 2.7.0 - openpgp: - specifier: 5.11.0 - version: 5.11.0 - -devDependencies: - '@openpgp/web-stream-tools': - specifier: 0.0.14 - version: 0.0.14(typescript@5.3.3) - '@semantic-release/changelog': - specifier: 6.0.3 - version: 6.0.3(semantic-release@22.0.7) - '@semantic-release/commit-analyzer': - specifier: 11.1.0 - version: 11.1.0(semantic-release@22.0.7) - '@semantic-release/exec': - specifier: 6.0.3 - version: 6.0.3(semantic-release@22.0.7) - '@semantic-release/git': - specifier: 10.0.1 - version: 10.0.1(semantic-release@22.0.7) - '@semantic-release/github': - specifier: 9.2.6 - version: 9.2.6(semantic-release@22.0.7) - '@semantic-release/release-notes-generator': - specifier: 12.1.0 - version: 12.1.0(semantic-release@22.0.7) - '@tapjs/test': - specifier: 1.4.2 - version: 1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@types/node': - specifier: 18.19.28 - version: 18.19.28 - '@types/node-fetch': - specifier: 2.6.9 - version: 2.6.9 - '@types/sinon': - specifier: 17.0.3 - version: 17.0.3 - '@types/which': - specifier: 3.0.3 - version: 3.0.3 - cross-env: - specifier: 7.0.3 - version: 7.0.3 - nock: - specifier: 13.4.0 - version: 13.4.0 - prettier: - specifier: 3.2.5 - version: 3.2.5 - semantic-release-export-data: - specifier: 1.0.1 - version: 1.0.1(semantic-release@22.0.7) - semantic-release-replace-plugin: - specifier: 1.2.7 - version: 1.2.7(semantic-release@22.0.7) - sinon: - specifier: 17.0.1 - version: 17.0.1 - tap: - specifier: 18.7.0 - version: 18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) - to-readable-stream: - specifier: 2.1.0 - version: 2.1.0 - ts-node: - specifier: 10.9.2 - version: 10.9.2(@types/node@18.19.28)(typescript@5.3.3) - typescript: - specifier: 5.3.3 - version: 5.3.3 - which: - specifier: 4.0.0 - version: 4.0.0 +importers: + + .: + dependencies: + '@actions/core': + specifier: 1.10.1 + version: 1.10.1 + '@actions/exec': + specifier: 1.1.1 + version: 1.1.1 + '@actions/github': + specifier: 6.0.0 + version: 6.0.0 + '@actions/glob': + specifier: 0.4.0 + version: 0.4.0 + hook-std: + specifier: 2.0.0 + version: 2.0.0 + node-fetch: + specifier: 2.7.0 + version: 2.7.0 + openpgp: + specifier: 5.11.0 + version: 5.11.0 + devDependencies: + '@openpgp/web-stream-tools': + specifier: 0.0.14 + version: 0.0.14(typescript@5.3.3) + '@semantic-release/changelog': + specifier: 6.0.3 + version: 6.0.3(semantic-release@22.0.7) + '@semantic-release/commit-analyzer': + specifier: 11.1.0 + version: 11.1.0(semantic-release@22.0.7) + '@semantic-release/exec': + specifier: 6.0.3 + version: 6.0.3(semantic-release@22.0.7) + '@semantic-release/git': + specifier: 10.0.1 + version: 10.0.1(semantic-release@22.0.7) + '@semantic-release/github': + specifier: 9.2.6 + version: 9.2.6(semantic-release@22.0.7) + '@semantic-release/release-notes-generator': + specifier: 12.1.0 + version: 12.1.0(semantic-release@22.0.7) + '@tapjs/test': + specifier: 1.4.2 + version: 1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@types/node': + specifier: 18.19.28 + version: 18.19.28 + '@types/node-fetch': + specifier: 2.6.9 + version: 2.6.9 + '@types/sinon': + specifier: 17.0.3 + version: 17.0.3 + '@types/which': + specifier: 3.0.3 + version: 3.0.3 + cross-env: + specifier: 7.0.3 + version: 7.0.3 + nock: + specifier: 13.4.0 + version: 13.4.0 + prettier: + specifier: 3.2.5 + version: 3.2.5 + semantic-release-export-data: + specifier: 1.0.1 + version: 1.0.1(semantic-release@22.0.7) + semantic-release-replace-plugin: + specifier: 1.2.7 + version: 1.2.7(semantic-release@22.0.7) + sinon: + specifier: 17.0.1 + version: 17.0.1 + tap: + specifier: 18.7.0 + version: 18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + to-readable-stream: + specifier: 2.1.0 + version: 2.1.0 + ts-node: + specifier: 10.9.2 + version: 10.9.2(@types/node@18.19.28)(typescript@5.3.3) + typescript: + specifier: 5.3.3 + version: 5.3.3 + which: + specifier: 4.0.0 + version: 4.0.0 + +packages: + + '@actions/core@1.10.1': + resolution: {integrity: sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==} + + '@actions/exec@1.1.1': + resolution: {integrity: sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==} + + '@actions/github@6.0.0': + resolution: {integrity: sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g==} + + '@actions/glob@0.4.0': + resolution: {integrity: sha512-+eKIGFhsFa4EBwaf/GMyzCdWrXWymGXfFmZU3FHQvYS8mPcHtTtZONbkcqqUMzw9mJ/pImEBFET1JNifhqGsAQ==} + + '@actions/http-client@2.2.0': + resolution: {integrity: sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg==} + + '@actions/io@1.1.3': + resolution: {integrity: sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==} + + '@alcalzone/ansi-tokenize@0.1.3': + resolution: {integrity: sha512-3yWxPTq3UQ/FY9p1ErPxIyfT64elWaMvM9lIHnaqpyft63tkxodF5aUElYHrdisWve5cETkh1+KBw1yJuW0aRw==} + engines: {node: '>=14.13.1'} + + '@babel/code-frame@7.22.13': + resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} + engines: {node: '>=6.9.0'} + + '@babel/helper-validator-identifier@7.22.20': + resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} + engines: {node: '>=6.9.0'} + + '@babel/highlight@7.22.20': + resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} + engines: {node: '>=6.9.0'} + + '@base2/pretty-print-object@1.0.1': + resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} + + '@bcoe/v8-coverage@0.2.3': + resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} + + '@colors/colors@1.5.0': + resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} + engines: {node: '>=0.1.90'} + + '@cspotcode/source-map-support@0.8.1': + resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} + engines: {node: '>=12'} + + '@fastify/busboy@2.1.0': + resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==} + engines: {node: '>=14'} + + '@isaacs/cliui@8.0.2': + resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} + engines: {node: '>=12'} + + '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5': + resolution: {integrity: sha512-hEDlwpHhIabtB+Urku8muNMEkGui0LVGlYLS3KoB9QBDf0Pw3r7q0RrfoQmFuk8CvRpGzErO3/vLQd9Ys+/g4g==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=4.2' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + + '@istanbuljs/schema@0.1.3': + resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} + engines: {node: '>=8'} + + '@jest/schemas@29.6.3': + resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + '@jridgewell/resolve-uri@3.1.1': + resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} + engines: {node: '>=6.0.0'} + + '@jridgewell/sourcemap-codec@1.4.15': + resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} + + '@jridgewell/trace-mapping@0.3.20': + resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} + + '@jridgewell/trace-mapping@0.3.9': + resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + + '@nodelib/fs.scandir@2.1.5': + resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} + engines: {node: '>= 8'} + + '@nodelib/fs.stat@2.0.5': + resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} + engines: {node: '>= 8'} + + '@nodelib/fs.walk@1.2.8': + resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} + engines: {node: '>= 8'} + + '@npmcli/agent@2.2.0': + resolution: {integrity: sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@npmcli/fs@3.1.0': + resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + '@npmcli/git@5.0.3': + resolution: {integrity: sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@npmcli/installed-package-contents@2.0.2': + resolution: {integrity: sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + + '@npmcli/node-gyp@3.0.0': + resolution: {integrity: sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + '@npmcli/promise-spawn@7.0.0': + resolution: {integrity: sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@npmcli/run-script@7.0.2': + resolution: {integrity: sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@octokit/auth-token@4.0.0': + resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==} + engines: {node: '>= 18'} + + '@octokit/core@5.0.1': + resolution: {integrity: sha512-lyeeeZyESFo+ffI801SaBKmCfsvarO+dgV8/0gD8u1d87clbEdWsP5yC+dSj3zLhb2eIf5SJrn6vDz9AheETHw==} + engines: {node: '>= 18'} + + '@octokit/endpoint@9.0.2': + resolution: {integrity: sha512-qhKW8YLIi+Kmc92FQUFGr++DYtkx/1fBv+Thua6baqnjnOsgBYJDCvWZR1YcINuHGOEQt416WOfE+A/oG60NBQ==} + engines: {node: '>= 18'} + + '@octokit/graphql@7.0.2': + resolution: {integrity: sha512-OJ2iGMtj5Tg3s6RaXH22cJcxXRi7Y3EBqbHTBRq+PQAqfaS8f/236fUrWhfSn8P4jovyzqucxme7/vWSSZBX2Q==} + engines: {node: '>= 18'} + + '@octokit/openapi-types@19.0.2': + resolution: {integrity: sha512-8li32fUDUeml/ACRp/njCWTsk5t17cfTM1jp9n08pBrqs5cDFJubtjsSnuz56r5Tad6jdEPJld7LxNp9dNcyjQ==} + + '@octokit/plugin-paginate-rest@9.1.4': + resolution: {integrity: sha512-MvZx4WvfhBnt7PtH5XE7HORsO7bBk4er1FgRIUr1qJ89NR2I6bWjGyKsxk8z42FPQ34hFQm0Baanh4gzdZR4gQ==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '>=5' + + '@octokit/plugin-rest-endpoint-methods@10.1.4': + resolution: {integrity: sha512-e8dSb9ypW1Q2I+qkOPzs3A9f4/EGpSZSI45wWBfXiqcvpoxSywVcZajZRhFwAutKI+/NNoeKxsxMwCx73oQyWw==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '>=5' + + '@octokit/plugin-retry@6.0.1': + resolution: {integrity: sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '>=5' + + '@octokit/plugin-throttling@8.1.2': + resolution: {integrity: sha512-oFba+ioR6HGb0fgqxMta7Kpk/MdffUTuUxNY856l1nXPvh7Qggp8w4AksRx1SDA8SGd+4cbrpkY4k1J/Xz8nZQ==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': ^5.0.0 + + '@octokit/request-error@5.0.1': + resolution: {integrity: sha512-X7pnyTMV7MgtGmiXBwmO6M5kIPrntOXdyKZLigNfQWSEQzVxR4a4vo49vJjTWX70mPndj8KhfT4Dx+2Ng3vnBQ==} + engines: {node: '>= 18'} + + '@octokit/request@8.1.5': + resolution: {integrity: sha512-zVKbNbX1xUluD9ZR4/tPs1yuYrK9xeh5fGZUXA6u04XGsTvomg0YO8/ZUC0FqAd49hAOEMFPAVUTh+2lBhOhLA==} + engines: {node: '>= 18'} + + '@octokit/types@12.3.0': + resolution: {integrity: sha512-nJ8X2HRr234q3w/FcovDlA+ttUU4m1eJAourvfUUtwAWeqL8AsyRqfnLvVnYn3NFbUnsmzQCzLNdFerPwdmcDQ==} + + '@openpgp/web-stream-tools@0.0.14': + resolution: {integrity: sha512-6btCNVf6YSsmlyIS7yw+IbzXeXCEcJxeSpxvSxkDuZj9B/ekt4fXkZj4oOaIxG4SKTftIK1svnlVroJ1cCMT4g==} + peerDependencies: + typescript: '>=4.2' + peerDependenciesMeta: + typescript: + optional: true + + '@pkgjs/parseargs@0.11.0': + resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} + engines: {node: '>=14'} + + '@pnpm/config.env-replace@1.1.0': + resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} + engines: {node: '>=12.22.0'} + + '@pnpm/network.ca-file@1.0.2': + resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} + engines: {node: '>=12.22.0'} + + '@pnpm/npm-conf@2.2.2': + resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} + engines: {node: '>=12'} + + '@semantic-release/changelog@6.0.3': + resolution: {integrity: sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag==} + engines: {node: '>=14.17'} + peerDependencies: + semantic-release: '>=18.0.0' + + '@semantic-release/commit-analyzer@11.1.0': + resolution: {integrity: sha512-cXNTbv3nXR2hlzHjAMgbuiQVtvWHTlwwISt60B+4NZv01y/QRY7p2HcJm8Eh2StzcTJoNnflvKjHH/cjFS7d5g==} + engines: {node: ^18.17 || >=20.6.1} + peerDependencies: + semantic-release: '>=20.1.0' + + '@semantic-release/error@3.0.0': + resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==} + engines: {node: '>=14.17'} + + '@semantic-release/error@4.0.0': + resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==} + engines: {node: '>=18'} + + '@semantic-release/exec@6.0.3': + resolution: {integrity: sha512-bxAq8vLOw76aV89vxxICecEa8jfaWwYITw6X74zzlO0mc/Bgieqx9kBRz9z96pHectiTAtsCwsQcUyLYWnp3VQ==} + engines: {node: '>=14.17'} + peerDependencies: + semantic-release: '>=18.0.0' + + '@semantic-release/git@10.0.1': + resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==} + engines: {node: '>=14.17'} + peerDependencies: + semantic-release: '>=18.0.0' + + '@semantic-release/github@9.2.6': + resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==} + engines: {node: '>=18'} + peerDependencies: + semantic-release: '>=20.1.0' + + '@semantic-release/npm@11.0.1': + resolution: {integrity: sha512-nFcT0pgVwpXsPkzjqP3ObH+pILeN1AbYscCDuYwgZEPZukL+RsGhrtdT4HA1Gjb/y1bVbE90JNtMIcgRi5z/Fg==} + engines: {node: ^18.17 || >=20} + peerDependencies: + semantic-release: '>=20.1.0' + + '@semantic-release/release-notes-generator@12.1.0': + resolution: {integrity: sha512-g6M9AjUKAZUZnxaJZnouNBeDNTCUrJ5Ltj+VJ60gJeDaRRahcHsry9HW8yKrnKkKNkx5lbWiEP1FPMqVNQz8Kg==} + engines: {node: ^18.17 || >=20.6.1} + peerDependencies: + semantic-release: '>=20.1.0' + + '@sigstore/bundle@2.1.0': + resolution: {integrity: sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@sigstore/protobuf-specs@0.2.1': + resolution: {integrity: sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + '@sigstore/sign@2.2.0': + resolution: {integrity: sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@sigstore/tuf@2.2.0': + resolution: {integrity: sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@sinclair/typebox@0.27.8': + resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + + '@sindresorhus/is@3.1.2': + resolution: {integrity: sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==} + engines: {node: '>=10'} + + '@sindresorhus/merge-streams@1.0.0': + resolution: {integrity: sha512-rUV5WyJrJLoloD4NDN1V1+LDMDWOa4OTsT4yYJwQNpTU6FWxkxHpL7eu4w+DmiH8x/EAM1otkPE1+LaspIbplw==} + engines: {node: '>=18'} + + '@sinonjs/commons@2.0.0': + resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} + + '@sinonjs/commons@3.0.0': + resolution: {integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==} + + '@sinonjs/fake-timers@10.3.0': + resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + + '@sinonjs/fake-timers@11.2.2': + resolution: {integrity: sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==} + + '@sinonjs/samsam@8.0.0': + resolution: {integrity: sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==} + + '@sinonjs/text-encoding@0.7.2': + resolution: {integrity: sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==} + + '@tapjs/after-each@1.1.18': + resolution: {integrity: sha512-AuXeD8uUYQ/CUdfhx2jvBhJf3M+T/Kroz5T6ItocZ3jf8H/4x2OKMVbb5YcB7J4ANGtmzXp+8SBseoN1av6y0Q==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/after-each@1.1.20': + resolution: {integrity: sha512-j5+VLjyssCfC4+fEP31tJpKdXO4pBuouovauHHc5xR2qo/hMonB/MlDHhFOL9PbC4sLBHvY4EkotwET36aLECg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/after@1.1.18': + resolution: {integrity: sha512-r0vMFMfxmO6UR+pB9zGvamaeUI+yhLokYAagsKoM3JdoZgyq0iw1fHn5hPPY8AC1tAzEYG3KtVDpJfpoOr67Iw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/after@1.1.20': + resolution: {integrity: sha512-EGosPLlKe8MaZMkoyA2lJhF2h/zNNzKA93yA4fkg+tOvKaVvtI8BtSmErN2sMIYRFPHxaLzQgr0268h7m2Ysow==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/asserts@1.1.18': + resolution: {integrity: sha512-MwGs/QklLRAsMnB4fO6QFaZ0myR//E21Rek/gGCpTxz7eUwCh24/y7MlBV0W6zDFdnQ1GFbHc/fIBVtcPAWjyw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/asserts@1.1.20': + resolution: {integrity: sha512-0w+c3+1TVzpObrQTRfDnE/Z3TTCWUVA4sZwzjfmhbwbF8VA83HR0Bh6fj7dIsrrsufWwp4QMyXPwN62HPwSCgg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/before-each@1.1.18': + resolution: {integrity: sha512-qxBQaOY+IkThP9iauL1tHCxirG9XuKGJvGHY4IGKuk0RswWkXmawSe5hcJ8m569dRXy9yJHEV7N0QueuyWxpBA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/before-each@1.1.20': + resolution: {integrity: sha512-ln27bSetJoDo1AIFCdpwPupGhJN6dA1Sc55qHJ2Ni9O9IYc/9s5JvzzQ4eEV1hFaiROvpsS945MtQY4mRS09Lg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/before@1.1.18': + resolution: {integrity: sha512-2rkXrAWlkl0+bZ8wSNfEW/7TANs/Dg5SrY2MmdEb0x7Q/zbMoGjrPVKDRF20Me0p+tJBLWSY+FXQ0OhXK0pUjg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/before@1.1.20': + resolution: {integrity: sha512-UuYor/jk+BRw9i3KuI6vrf7QF7g4V+z5ku/6qwUg7dkAE3qrCsRGNQ7Es1161ncXQUSoUy91vw/mRvFoTTRQ7Q==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/config@2.4.15': + resolution: {integrity: sha512-uU/gfQJh8aSokEBgwAAHD5ctHYbIiZYFaL6IrROcDp7Wr7/fd/dn9K4efpREwKpqKqOgL3XZPOwx7prKxrLHhA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + '@tapjs/test': 1.4.0 + + '@tapjs/core@1.5.0': + resolution: {integrity: sha512-g+NNI5TGXVJR5G4AZCU0hWu1pdA2qB2OYrY9Ej3mWeg97mvNZBVgNtvx8Vjdwp9BfgbJfyFK7PvoB4nhKgetSQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/core@1.5.2': + resolution: {integrity: sha512-Z/xkjJBOzS3mjUxFTOvtQX34GmOLx+C27w6bFRHrPCO1YTtu08SXJ9Mdkv+7vbSlAnBLWFgZddWvpgpAYud/uQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/error-serdes@1.2.1': + resolution: {integrity: sha512-/7eLEcrGo+Qz3eWrjkhDC+VSEOjabkkzr9eRADeU+OLFeZaik8L/GRk0SGhnp4YsQkv0jcNV00A42bEx2HIZcw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/error-serdes@1.2.2': + resolution: {integrity: sha512-RW2aU50JR7SSAlvoTyuwouXETLM9lP+7oZ5Z+dyKhNp8mkbbz4mXKcgd9SDHY5qTh6zvVN7OFK7ev7dYWXbrWw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/filter@1.2.18': + resolution: {integrity: sha512-0yCqaHYLejI/KyxdB5EsrRVu3wxZVl7vPXTwBoyc+ycJWXPapHLhKl67Xk5x3FW/nNelA9TCq/tSHcYlogGN0g==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/filter@1.2.20': + resolution: {integrity: sha512-8zyTBjY8lYVz2W0S8nw8vq0kkwCM6Ike76n71mVzMOFcW/qXIn2ImW/PJtHREMFwLEN0aL51Ey/60Cs85EevxA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/fixture@1.2.18': + resolution: {integrity: sha512-BQIRxydaqjZIG61QhoiQOc9HE3MxSjCn7SUsIfYCzoZoY+3aY6iCdTVg2la86b5ikTbwoWxWWbqICnFWebuHnQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/fixture@1.2.20': + resolution: {integrity: sha512-QJwANuumhNv59ONrpGOMy0hY+P2rHPakOlAR8ZkkAKbdQS5E0YExZLDna/Ug47Qin6MbaqXPk6zP/eiiBxZxig==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/intercept@1.2.18': + resolution: {integrity: sha512-Trcmp64RKD2/nMz7/+NuwjJHfrn8eFofX3s3g0+QGvnTv+5B5ZQs+zWjS7q2d1Qt8LDV8CfS5w3BhYyONsocSw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/intercept@1.2.20': + resolution: {integrity: sha512-LEjE2rKfELh8CM6NPAGKIi1HDFjb66G//qbTs8lnLCiulUvUWGlx4RzeBdky0532+vyR9Q3JdHsidCNOsq33ow==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/mock@1.3.0': + resolution: {integrity: sha512-Uzyikl8SS8Mg7OOr2HuyiaVhYvHNRZnw6A1/qTiJnoZ1MHcLFuwFqIX9ZhfXMil5MIYC/ET096VMDm45q9Tdvw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/mock@1.3.2': + resolution: {integrity: sha512-QN3Nft/wxww/oxPpx/bgW4EF7EfxfvcAY/0VPphI3NjG/ZSNeZ7lbO9kYvh+RSRC1PtDR6OvfGA2dwQ7V/81DQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/node-serialize@1.3.0': + resolution: {integrity: sha512-52oQKQJMMKrI1cNu8kJ5WTv8YFnbhwfwUs3Jh1vXQb4tOhLW8IHWqXBi5AiNL3HlCMMHaKDFQjW6sbbJuMyJPA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/node-serialize@1.3.2': + resolution: {integrity: sha512-KyYYU1tOTn3udST4lQUl2KsZFPbA7UGqHKT3Os/FmHplmgJeSPc5nKKCI+R2h/ADSULQx7ZiBUYot8o0GTqndw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/processinfo@3.1.6': + resolution: {integrity: sha512-ktDsaf79wJsLaoG1Pp+stHSRf6a1k/JydoRAaYVG5iJnd3DooL6yewZsciUi2yiN/WQc5tAXCIFTXL4uXGB8LA==} + engines: {node: '>=16.17'} + + '@tapjs/processinfo@3.1.7': + resolution: {integrity: sha512-SI5RJQ5HnUKEWnHSAF6hOm6XPdnjZ+CJzIaVHdFebed8iDAPTqb+IwMVu9yq9+VQ7FRsMMlgLL2SW4rss2iJbQ==} + engines: {node: '>=16.17'} + + '@tapjs/reporter@1.3.16': + resolution: {integrity: sha512-YoZpBAFGdZyrhIaRCZDuWSeCc10A3YG/4mIdPsKpSbLXPBZ1hwCV8Y/LPCpH5kunZTXYocvQoRHU+oD4pLXC3g==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/run@1.5.0': + resolution: {integrity: sha512-WrmbHHrhvRvLlTTAGiogF09xiPoorsoG4diAIKifGUyGD/9qRA7pT2mzYIqXvhyxbtuEmaeobHjupSZrak+O4Q==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/snapshot@1.2.18': + resolution: {integrity: sha512-fHt4ZgutJ922/YdmXN2d6dkwFTR6KsyD02jcSYBXVDGdFC2YnsjKk/o9s3Yt9tYnYES6Et+6udPlAKcakzR5jQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/snapshot@1.2.20': + resolution: {integrity: sha512-/7ct6j//nNjiabJGMSxRsJEXSLOc6SwNC3dHuYeXP+yHIOeRK3qoonLqkt8+/9JgkZyaqIvWMdlo9ezoNPCrAw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/spawn@1.1.18': + resolution: {integrity: sha512-E5H0NTyTZ0FnkPUd5JU3c2KrnjjMDDAuctRd2b0v/M5LB+uAlwwEEJJ6rh+dBsFK/yatfgPli+nbHZVjUz+Usw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/spawn@1.1.20': + resolution: {integrity: sha512-7w396QXOQb8P3Sar9Ldas7tyTMqFBASpRjr/a6Coyj21s/HejlaX8nnGKldbMhokCR2gZAgkmWg45B3tVqxZJA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/stack@1.2.7': + resolution: {integrity: sha512-7qUDWDmd+y7ZQ0vTrDTvFlWnJ+ND32NemS5HVuT1ZggHtBwJ62PQHIyCx/B5RopETBb6NvFPfUE21yTiex9Jkw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/stack@1.2.8': + resolution: {integrity: sha512-VC8h6U62ScerTKN+MYpRPiwH2bCL65S6v1wcj1hukE2hojLcRvVdET7S3ZtRfSj/eNWW/5OVfzTpHiGjEYD6Xg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + '@tapjs/stdin@1.1.18': + resolution: {integrity: sha512-UyhK8bRRhQkmBb7N/NFa/11DucHfIzCyyba7uax+dkuXSd6OccTZVxLpRMuaOUV59QCCFAJUJDQnmaWj35fI7Q==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/stdin@1.1.20': + resolution: {integrity: sha512-OX5Q8WtZU48z2SCGEfIarqinDbhX7ajPpIUYHddtK/MbDowHZvgIFZzes7bH9tP2YcQdIRu/tuuyKi/WJMWxdg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/test@1.4.0': + resolution: {integrity: sha512-t4U11uAUDUeBQTdlqtiDoiuiG3lKLhHa+PxrdIR3GlG+2wDcpqFR8aFFiuq3XTvks0uoWjKx3WkAMyjNsxmikg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/test@1.4.2': + resolution: {integrity: sha512-xPcnhADRI1dua+1rcdZegLdGmkoyKxFneflQzdSPj4zOBXnzD7Kps269LBndrfA5df4ZjZBaFB0M5xSiu0cUGA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/typescript@1.4.0': + resolution: {integrity: sha512-3b3pNI20Cf9NRMuT6GE288RESMYMcrwrKuj29Mroiy9MkLEyyPPHqeSRstvakn9/i/nhTlXj2YIftPo80H3OlQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/typescript@1.4.2': + resolution: {integrity: sha512-JUSd3c+aly+xP0FLkcw/afYWGeobZ3//f12MUias5f0tLj7AaxpKePGyLeY1f0QvcuzPF/UKjk3BLd1Fh4u86g==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tapjs/worker@1.1.18': + resolution: {integrity: sha512-wxl/dXByMWk9FuYiiSzY/U5QU0oe9EWpf7pJ48feWsTTn42wihUHZT25kbleR4V2l68/SlTPlJkEsKnHjU27Pg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.0 + + '@tapjs/worker@1.1.20': + resolution: {integrity: sha512-I7wvUqoe8vD8Ld65VgSWVTdbWyP6eTpSJ8At/TRKznlJj4CVSvZ3lV5RxvLCBTg7ITCKcS+mQbqsmjpsvPGXEg==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + peerDependencies: + '@tapjs/core': 1.5.2 + + '@tsconfig/node10@1.0.9': + resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} + + '@tsconfig/node12@1.0.11': + resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} + + '@tsconfig/node14@1.0.3': + resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} + + '@tsconfig/node14@14.1.0': + resolution: {integrity: sha512-VmsCG04YR58ciHBeJKBDNMWWfYbyP8FekWVuTlpstaUPlat1D0x/tXzkWP7yCMU0eSz9V4OZU0LBWTFJ3xZf6w==} + + '@tsconfig/node16@1.0.4': + resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + + '@tsconfig/node16@16.1.1': + resolution: {integrity: sha512-+pio93ejHN4nINX4pXqfnR/fPLRtJBaT4ORaa5RH0Oc1zoYmo2B2koG+M328CQhHKn1Wj6FcOxCDFXAot9NhvA==} + + '@tsconfig/node18@18.2.2': + resolution: {integrity: sha512-d6McJeGsuoRlwWZmVIeE8CUA27lu6jLjvv1JzqmpsytOYYbVi1tHZEnwCNVOXnj4pyLvneZlFlpXUK+X9wBWyw==} + + '@tsconfig/node20@20.1.2': + resolution: {integrity: sha512-madaWq2k+LYMEhmcp0fs+OGaLFk0OenpHa4gmI4VEmCKX4PJntQ6fnnGADVFrVkBj0wIdAlQnK/MrlYTHsa1gQ==} + + '@tufjs/canonical-json@2.0.0': + resolution: {integrity: sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@tufjs/models@2.0.0': + resolution: {integrity: sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==} + engines: {node: ^16.14.0 || >=18.0.0} + + '@types/istanbul-lib-coverage@2.0.6': + resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} + + '@types/node-fetch@2.6.9': + resolution: {integrity: sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==} + + '@types/node@18.19.28': + resolution: {integrity: sha512-J5cOGD9n4x3YGgVuaND6khm5x07MMdAKkRyXnjVR6KFhLMNh2yONGiP7Z+4+tBOt5mK+GvDTiacTOVGGpqiecw==} + + '@types/normalize-package-data@2.4.4': + resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + + '@types/sinon@17.0.3': + resolution: {integrity: sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==} + + '@types/sinonjs__fake-timers@8.1.5': + resolution: {integrity: sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==} + + '@types/which@3.0.3': + resolution: {integrity: sha512-2C1+XoY0huExTbs8MQv1DuS5FS86+SEjdM9F/+GS61gg5Hqbtj8ZiDSx8MfWcyei907fIPbfPGCOrNUTnVHY1g==} + + JSONStream@1.3.5: + resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} + hasBin: true + + abbrev@2.0.0: + resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + acorn-walk@8.3.0: + resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} + engines: {node: '>=0.4.0'} + + acorn@8.11.2: + resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} + engines: {node: '>=0.4.0'} + hasBin: true + + agent-base@7.1.0: + resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} + engines: {node: '>= 14'} + + aggregate-error@3.1.0: + resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} + engines: {node: '>=8'} + + aggregate-error@5.0.0: + resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==} + engines: {node: '>=18'} + + ansi-escapes@6.2.0: + resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} + engines: {node: '>=14.16'} + + ansi-regex@5.0.1: + resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} + engines: {node: '>=8'} + + ansi-regex@6.0.1: + resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} + engines: {node: '>=12'} + + ansi-styles@3.2.1: + resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} + engines: {node: '>=4'} + + ansi-styles@4.3.0: + resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} + engines: {node: '>=8'} + + ansi-styles@5.2.0: + resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} + engines: {node: '>=10'} + + ansi-styles@6.2.1: + resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} + engines: {node: '>=12'} + + ansicolors@0.3.2: + resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==} + + anymatch@3.1.3: + resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} + engines: {node: '>= 8'} + + arg@4.1.3: + resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} + + argparse@2.0.1: + resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} + + argv-formatter@1.0.0: + resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==} + + array-ify@1.0.0: + resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} + + asn1.js@5.4.1: + resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} + + async-hook-domain@4.0.1: + resolution: {integrity: sha512-bSktexGodAjfHWIrSrrqxqWzf1hWBZBpmPNZv+TYUMyWa2eoefFc6q6H1+KtdHYSz35lrhWdmXt/XK9wNEZvww==} + engines: {node: '>=16'} + + asynckit@0.4.0: + resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} + + auto-bind@5.0.1: + resolution: {integrity: sha512-ooviqdwwgfIfNmDwo94wlshcdzfO64XV0Cg6oDsDYBJfITDz1EngD2z7DkbvCWn+XIMsIqW27sEVF6qcpJrRcg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + balanced-match@1.0.2: + resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + + before-after-hook@2.2.3: + resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} + + binary-extensions@2.2.0: + resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} + engines: {node: '>=8'} + + bn.js@4.12.0: + resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} + + bottleneck@2.19.5: + resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==} + + brace-expansion@1.1.11: + resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + + brace-expansion@2.0.1: + resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + + braces@3.0.2: + resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} + engines: {node: '>=8'} + + builtins@5.0.1: + resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} + + c8@8.0.1: + resolution: {integrity: sha512-EINpopxZNH1mETuI0DzRA4MZpAUH+IFiRhnmFD3vFr3vdrgxqi3VfE3KL0AIL+zDq8rC9bZqwM/VDmmoe04y7w==} + engines: {node: '>=12'} + hasBin: true + + cacache@18.0.0: + resolution: {integrity: sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==} + engines: {node: ^16.14.0 || >=18.0.0} + + callsites@3.1.0: + resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} + engines: {node: '>=6'} + + cardinal@2.1.1: + resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} + hasBin: true + + chalk@2.4.2: + resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} + engines: {node: '>=4'} + + chalk@4.1.2: + resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} + engines: {node: '>=10'} + + chalk@5.3.0: + resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} + engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + + char-regex@1.0.2: + resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} + engines: {node: '>=10'} + + chokidar@3.5.3: + resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} + engines: {node: '>= 8.10.0'} + + chokidar@3.6.0: + resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} + engines: {node: '>= 8.10.0'} + + chownr@2.0.0: + resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} + engines: {node: '>=10'} + + ci-info@3.9.0: + resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} + engines: {node: '>=8'} + + clean-stack@2.2.0: + resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} + engines: {node: '>=6'} + + clean-stack@5.2.0: + resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==} + engines: {node: '>=14.16'} + + cli-boxes@3.0.0: + resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} + engines: {node: '>=10'} + + cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + cli-table3@0.6.3: + resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} + engines: {node: 10.* || >= 12.*} + + cli-truncate@3.1.0: + resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + cliui@8.0.1: + resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} + engines: {node: '>=12'} + + code-excerpt@4.0.0: + resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + color-convert@1.9.3: + resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + + color-convert@2.0.1: + resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} + engines: {node: '>=7.0.0'} + + color-name@1.1.3: + resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} + + color-name@1.1.4: + resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} + + combined-stream@1.0.8: + resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} + engines: {node: '>= 0.8'} + + compare-func@2.0.0: + resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} + + concat-map@0.0.1: + resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + + config-chain@1.1.13: + resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + + conventional-changelog-angular@7.0.0: + resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==} + engines: {node: '>=16'} + + conventional-changelog-writer@7.0.1: + resolution: {integrity: sha512-Uo+R9neH3r/foIvQ0MKcsXkX642hdm9odUp7TqgFS7BsalTcjzRlIfWZrZR1gbxOozKucaKt5KAbjW8J8xRSmA==} + engines: {node: '>=16'} + hasBin: true + + conventional-commits-filter@4.0.0: + resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==} + engines: {node: '>=16'} + + conventional-commits-parser@5.0.0: + resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==} + engines: {node: '>=16'} + hasBin: true + + convert-source-map@2.0.0: + resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} + + convert-to-spaces@2.0.1: + resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + core-util-is@1.0.3: + resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} + + cosmiconfig@8.3.6: + resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} + engines: {node: '>=14'} + peerDependencies: + typescript: '>=4.9.5' + peerDependenciesMeta: + typescript: + optional: true + + create-require@1.1.1: + resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} + + cross-env@7.0.3: + resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} + engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} + hasBin: true + + cross-spawn@7.0.3: + resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} + engines: {node: '>= 8'} + + crypto-random-string@4.0.0: + resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} + engines: {node: '>=12'} + + debug@4.3.4: + resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + + deep-extend@0.6.0: + resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} + engines: {node: '>=4.0.0'} + + delayed-stream@1.0.0: + resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} + engines: {node: '>=0.4.0'} + + deprecation@2.3.1: + resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} + + diff-sequences@29.6.3: + resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + diff@4.0.2: + resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} + engines: {node: '>=0.3.1'} + + diff@5.1.0: + resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} + engines: {node: '>=0.3.1'} + + diff@5.2.0: + resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} + engines: {node: '>=0.3.1'} + + dir-glob@3.0.1: + resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} + engines: {node: '>=8'} + + dot-prop@5.3.0: + resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} + engines: {node: '>=8'} + + duplexer2@0.1.4: + resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} + + eastasianwidth@0.2.0: + resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} + + emoji-regex@8.0.0: + resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} + + emoji-regex@9.2.2: + resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} + + emojilib@2.4.0: + resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} + + encoding@0.1.13: + resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} + + env-ci@10.0.0: + resolution: {integrity: sha512-U4xcd/utDYFgMh0yWj07R1H6L5fwhVbmxBCpnL0DbVSDZVnsC82HONw0wxtxNkIAcua3KtbomQvIk5xFZGAQJw==} + engines: {node: ^18.17 || >=20.6.1} + + env-paths@2.2.1: + resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} + engines: {node: '>=6'} + + err-code@2.0.3: + resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} + + error-ex@1.3.2: + resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + + escalade@3.1.1: + resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} + engines: {node: '>=6'} + + escape-string-regexp@1.0.5: + resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} + engines: {node: '>=0.8.0'} + + escape-string-regexp@2.0.0: + resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} + engines: {node: '>=8'} + + escape-string-regexp@5.0.0: + resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} + engines: {node: '>=12'} + + esprima@4.0.1: + resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} + engines: {node: '>=4'} + hasBin: true + + events-to-array@2.0.3: + resolution: {integrity: sha512-f/qE2gImHRa4Cp2y1stEOSgw8wTFyUdVJX7G//bMwbaV9JqISFxg99NbmVQeP7YLnDUZ2un851jlaDrlpmGehQ==} + engines: {node: '>=12'} + + execa@5.1.1: + resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} + engines: {node: '>=10'} + + execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + + exponential-backoff@3.1.1: + resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} + + fast-glob@3.3.2: + resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} + engines: {node: '>=8.6.0'} + + fastq@1.15.0: + resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} + + figures@2.0.0: + resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==} + engines: {node: '>=4'} + + figures@6.0.1: + resolution: {integrity: sha512-0oY/olScYD4IhQ8u//gCPA4F3mlTn2dacYmiDm/mbDQvpmLjV4uH+zhsQ5IyXRyvqkvtUkXkNdGvg5OFJTCsuQ==} + engines: {node: '>=18'} + + fill-range@7.0.1: + resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} + engines: {node: '>=8'} + + find-up-simple@1.0.0: + resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} + engines: {node: '>=18'} + + find-up@2.1.0: + resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==} + engines: {node: '>=4'} + + find-up@5.0.0: + resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} + engines: {node: '>=10'} + + find-versions@5.1.0: + resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==} + engines: {node: '>=12'} + + foreground-child@2.0.0: + resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} + engines: {node: '>=8.0.0'} + + foreground-child@3.1.1: + resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} + engines: {node: '>=14'} + + form-data@4.0.0: + resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} + engines: {node: '>= 6'} + + from2@2.3.0: + resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} + + fromentries@1.3.2: + resolution: {integrity: sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==} + + fs-extra@11.1.1: + resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} + engines: {node: '>=14.14'} + + fs-minipass@2.1.0: + resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} + engines: {node: '>= 8'} + + fs-minipass@3.0.3: + resolution: {integrity: sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + fs.realpath@1.0.0: + resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} + + fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + + function-bind@1.1.2: + resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} + + function-loop@4.0.0: + resolution: {integrity: sha512-f34iQBedYF3XcI93uewZZOnyscDragxgTK/eTvVB74k3fCD0ZorOi5BV9GS4M8rz/JoNi0Kl3qX5Y9MH3S/CLQ==} + + get-caller-file@2.0.5: + resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} + engines: {node: 6.* || 8.* || >= 10.*} + + get-stream@6.0.1: + resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} + engines: {node: '>=10'} + + get-stream@7.0.1: + resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==} + engines: {node: '>=16'} + + get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + + git-log-parser@1.2.0: + resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==} + + glob-parent@5.1.2: + resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} + engines: {node: '>= 6'} + + glob@10.3.10: + resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} + engines: {node: '>=16 || 14 >=14.17'} + hasBin: true + + glob@7.2.3: + resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + + glob@8.1.0: + resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} + engines: {node: '>=12'} + + globby@14.0.0: + resolution: {integrity: sha512-/1WM/LNHRAOH9lZta77uGbq0dAEQM+XjNesWwhlERDVenqothRbnzTrL3/LrIoEPPjeUHC3vrS6TwoyxeHs7MQ==} + engines: {node: '>=18'} + + graceful-fs@4.2.10: + resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} + + graceful-fs@4.2.11: + resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} + + handlebars@4.7.8: + resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} + engines: {node: '>=0.4.7'} + hasBin: true + + has-flag@3.0.0: + resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} + engines: {node: '>=4'} + + has-flag@4.0.0: + resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} + engines: {node: '>=8'} + + hasown@2.0.0: + resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} + engines: {node: '>= 0.4'} + + hook-std@2.0.0: + resolution: {integrity: sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==} + engines: {node: '>=8'} + + hook-std@3.0.0: + resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + hosted-git-info@7.0.1: + resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==} + engines: {node: ^16.14.0 || >=18.0.0} + + html-escaper@2.0.2: + resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} + + http-cache-semantics@4.1.1: + resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} + + http-proxy-agent@7.0.0: + resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} + engines: {node: '>= 14'} + + https-proxy-agent@7.0.2: + resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} + engines: {node: '>= 14'} + + human-signals@2.1.0: + resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} + engines: {node: '>=10.17.0'} + + human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + + ignore-walk@6.0.3: + resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + ignore@5.2.4: + resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} + engines: {node: '>= 4'} + + import-fresh@3.3.0: + resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} + engines: {node: '>=6'} + + import-from-esm@1.2.1: + resolution: {integrity: sha512-Nly5Ab75rWZmOwtMa0B0NQNnHGcHOQ2zkU/bVENwK2lbPq+kamPDqNKNJ0hF7w7lR/ETD5nGgJq0XbofsZpYCA==} + engines: {node: '>=16.20'} + + import-meta-resolve@4.0.0: + resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==} + + imurmurhash@0.1.4: + resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} + engines: {node: '>=0.8.19'} + + indent-string@4.0.0: + resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} + engines: {node: '>=8'} + + indent-string@5.0.0: + resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} + engines: {node: '>=12'} + + index-to-position@0.1.2: + resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==} + engines: {node: '>=18'} + + inflight@1.0.6: + resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + + ini@1.3.8: + resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} + + ink@4.4.1: + resolution: {integrity: sha512-rXckvqPBB0Krifk5rn/5LvQGmyXwCUpBfmTwbkQNBY9JY8RSl3b8OftBNEYxg4+SWUhEKcPifgope28uL9inlA==} + engines: {node: '>=14.16'} + peerDependencies: + '@types/react': '>=18.0.0' + react: '>=18.0.0' + react-devtools-core: ^4.19.1 + peerDependenciesMeta: + '@types/react': + optional: true + react-devtools-core: + optional: true + + into-stream@7.0.0: + resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==} + engines: {node: '>=12'} + + ip@2.0.1: + resolution: {integrity: sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==} + + is-actual-promise@1.0.1: + resolution: {integrity: sha512-PlsL4tNv62lx5yN2HSqaRSTgIpUAPW7U6+crVB8HfWm5161rZpeqWbl0ZSqH2MAfRKXWSZVPRNbE/r8qPcb13g==} + + is-arrayish@0.2.1: + resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} + + is-binary-path@2.1.0: + resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} + engines: {node: '>=8'} + + is-ci@3.0.1: + resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} + hasBin: true + + is-core-module@2.13.1: + resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + + is-extglob@2.1.1: + resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} + engines: {node: '>=0.10.0'} + + is-fullwidth-code-point@3.0.0: + resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} + engines: {node: '>=8'} + + is-fullwidth-code-point@4.0.0: + resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} + engines: {node: '>=12'} + + is-glob@4.0.3: + resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} + engines: {node: '>=0.10.0'} + + is-lambda@1.0.1: + resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} + + is-lower-case@2.0.2: + resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + + is-number@7.0.0: + resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} + engines: {node: '>=0.12.0'} + + is-obj@2.0.0: + resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} + engines: {node: '>=8'} + + is-plain-object@5.0.0: + resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} + engines: {node: '>=0.10.0'} + + is-stream@2.0.1: + resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} + engines: {node: '>=8'} + + is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + is-text-path@2.0.0: + resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==} + engines: {node: '>=8'} + + is-unicode-supported@2.0.0: + resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} + engines: {node: '>=18'} + + is-upper-case@2.0.2: + resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} + + isarray@0.0.1: + resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} + + isarray@1.0.0: + resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} + + isexe@2.0.0: + resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + + isexe@3.1.1: + resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} + engines: {node: '>=16'} + + issue-parser@6.0.0: + resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==} + engines: {node: '>=10.13'} + + istanbul-lib-coverage@3.2.2: + resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} + engines: {node: '>=8'} + + istanbul-lib-report@3.0.1: + resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} + engines: {node: '>=10'} + + istanbul-reports@3.1.6: + resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} + engines: {node: '>=8'} + + jackspeak@2.3.6: + resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} + engines: {node: '>=14'} + + java-properties@1.0.2: + resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} + engines: {node: '>= 0.6.0'} + + jest-diff@29.7.0: + resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + jest-get-type@29.6.3: + resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + js-tokens@4.0.0: + resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} + + js-yaml@4.1.0: + resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} + hasBin: true + + json-parse-better-errors@1.0.2: + resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} + + json-parse-even-better-errors@2.3.1: + resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} + + json-parse-even-better-errors@3.0.0: + resolution: {integrity: sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + json-stringify-safe@5.0.1: + resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} + + jsonfile@6.1.0: + resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + + jsonparse@1.3.1: + resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} + engines: {'0': node >= 0.2.0} + + just-extend@4.2.1: + resolution: {integrity: sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==} + + lines-and-columns@1.2.4: + resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} + + load-json-file@4.0.0: + resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} + engines: {node: '>=4'} + + locate-path@2.0.0: + resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} + engines: {node: '>=4'} + + locate-path@6.0.0: + resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} + engines: {node: '>=10'} + + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + + lodash.capitalize@4.2.1: + resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==} + + lodash.escaperegexp@4.1.2: + resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==} + + lodash.get@4.4.2: + resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} + + lodash.isplainobject@4.0.6: + resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} + + lodash.isstring@4.0.1: + resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} + + lodash.uniqby@4.7.0: + resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} + + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + + loose-envify@1.4.0: + resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} + hasBin: true + + lru-cache@10.0.2: + resolution: {integrity: sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==} + engines: {node: 14 || >=16.14} + + lru-cache@6.0.0: + resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} + engines: {node: '>=10'} + + make-dir@4.0.0: + resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} + engines: {node: '>=10'} + + make-error@1.3.6: + resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} + + make-fetch-happen@13.0.0: + resolution: {integrity: sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==} + engines: {node: ^16.14.0 || >=18.0.0} + + marked-terminal@6.1.0: + resolution: {integrity: sha512-QaCSF6NV82oo6K0szEnmc65ooDeW0T/Adcyf0fcW+Hto2GT1VADFg8dn1zaeHqzj65fqDH1hMNChGNRaC/lbkA==} + engines: {node: '>=16.0.0'} + peerDependencies: + marked: '>=1 <11' + + marked@9.1.6: + resolution: {integrity: sha512-jcByLnIFkd5gSXZmjNvS1TlmRhCXZjIzHYlaGkPlLIekG55JDR2Z4va9tZwCiP+/RDERiNhMOFu01xd6O5ct1Q==} + engines: {node: '>= 16'} + hasBin: true + + meow@12.1.1: + resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==} + engines: {node: '>=16.10'} + + merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + + merge2@1.4.1: + resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} + engines: {node: '>= 8'} + + micromatch@4.0.5: + resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} + engines: {node: '>=8.6'} + + mime-db@1.52.0: + resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} + engines: {node: '>= 0.6'} + + mime-types@2.1.35: + resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} + engines: {node: '>= 0.6'} + + mime@4.0.0: + resolution: {integrity: sha512-pzhgdeqU5pJ9t5WK9m4RT4GgGWqYJylxUf62Yb9datXRwdcw5MjiD1BYI5evF8AgTXN9gtKX3CFLvCUL5fAhEA==} + engines: {node: '>=16'} + hasBin: true + + mimic-fn@2.1.0: + resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} + engines: {node: '>=6'} + + mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + + minimalistic-assert@1.0.1: + resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} + + minimatch@3.1.2: + resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + + minimatch@5.1.6: + resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + engines: {node: '>=10'} + + minimatch@9.0.3: + resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} + engines: {node: '>=16 || 14 >=14.17'} + + minimatch@9.0.4: + resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + engines: {node: '>=16 || 14 >=14.17'} + + minimist@1.2.8: + resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} + + minipass-collect@1.0.2: + resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} + engines: {node: '>= 8'} + + minipass-fetch@3.0.4: + resolution: {integrity: sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + minipass-flush@1.0.5: + resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} + engines: {node: '>= 8'} + + minipass-json-stream@1.0.1: + resolution: {integrity: sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==} + + minipass-pipeline@1.2.4: + resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} + engines: {node: '>=8'} + + minipass-sized@1.0.3: + resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} + engines: {node: '>=8'} + + minipass@3.3.6: + resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} + engines: {node: '>=8'} + + minipass@5.0.0: + resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} + engines: {node: '>=8'} + + minipass@7.0.4: + resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} + engines: {node: '>=16 || 14 >=14.17'} + + minizlib@2.1.2: + resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} + engines: {node: '>= 8'} + + mkdirp@1.0.4: + resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} + engines: {node: '>=10'} + hasBin: true + + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + + ms@2.1.2: + resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} + + ms@2.1.3: + resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} + + negotiator@0.6.3: + resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} + engines: {node: '>= 0.6'} + + neo-async@2.6.2: + resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} + + nerf-dart@1.0.0: + resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==} + + nise@5.1.5: + resolution: {integrity: sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==} + + nock@13.4.0: + resolution: {integrity: sha512-W8NVHjO/LCTNA64yxAPHV/K47LpGYcVzgKd3Q0n6owhwvD0Dgoterc25R4rnZbckJEb6Loxz1f5QMuJpJnbSyQ==} + engines: {node: '>= 10.13'} + + node-emoji@2.1.0: + resolution: {integrity: sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==} + + node-fetch@2.7.0: + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} + engines: {node: 4.x || >=6.0.0} + peerDependencies: + encoding: ^0.1.0 + peerDependenciesMeta: + encoding: + optional: true + + node-gyp@10.0.1: + resolution: {integrity: sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==} + engines: {node: ^16.14.0 || >=18.0.0} + hasBin: true + + nopt@7.2.0: + resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + hasBin: true + + normalize-package-data@6.0.0: + resolution: {integrity: sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==} + engines: {node: ^16.14.0 || >=18.0.0} + + normalize-path@3.0.0: + resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} + engines: {node: '>=0.10.0'} + + normalize-url@8.0.0: + resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} + engines: {node: '>=14.16'} + + npm-bundled@3.0.0: + resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + npm-install-checks@6.3.0: + resolution: {integrity: sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + npm-normalize-package-bin@3.0.1: + resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + npm-package-arg@11.0.1: + resolution: {integrity: sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==} + engines: {node: ^16.14.0 || >=18.0.0} + + npm-packlist@8.0.0: + resolution: {integrity: sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + npm-pick-manifest@9.0.0: + resolution: {integrity: sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==} + engines: {node: ^16.14.0 || >=18.0.0} + + npm-registry-fetch@16.1.0: + resolution: {integrity: sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==} + engines: {node: ^16.14.0 || >=18.0.0} + + npm-run-path@4.0.1: + resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} + engines: {node: '>=8'} + + npm-run-path@5.1.0: + resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + npm@10.2.3: + resolution: {integrity: sha512-GbUui/rHTl0mW8HhJSn4A0Xg89yCR3I9otgJT1i0z1QBPOVlgbh6rlcUTpHT8Gut9O1SJjWRUU0nEcAymhG2tQ==} + engines: {node: ^18.17.0 || >=20.5.0} + hasBin: true + bundledDependencies: + - '@isaacs/string-locale-compare' + - '@npmcli/arborist' + - '@npmcli/config' + - '@npmcli/fs' + - '@npmcli/map-workspaces' + - '@npmcli/package-json' + - '@npmcli/promise-spawn' + - '@npmcli/run-script' + - '@sigstore/tuf' + - abbrev + - archy + - cacache + - chalk + - ci-info + - cli-columns + - cli-table3 + - columnify + - fastest-levenshtein + - fs-minipass + - glob + - graceful-fs + - hosted-git-info + - ini + - init-package-json + - is-cidr + - json-parse-even-better-errors + - libnpmaccess + - libnpmdiff + - libnpmexec + - libnpmfund + - libnpmhook + - libnpmorg + - libnpmpack + - libnpmpublish + - libnpmsearch + - libnpmteam + - libnpmversion + - make-fetch-happen + - minimatch + - minipass + - minipass-pipeline + - ms + - node-gyp + - nopt + - normalize-package-data + - npm-audit-report + - npm-install-checks + - npm-package-arg + - npm-pick-manifest + - npm-profile + - npm-registry-fetch + - npm-user-validate + - npmlog + - p-map + - pacote + - parse-conflict-json + - proc-log + - qrcode-terminal + - read + - semver + - spdx-expression-parse + - ssri + - strip-ansi + - supports-color + - tar + - text-table + - tiny-relative-date + - treeverse + - validate-npm-package-name + - which + - write-file-atomic + + once@1.4.0: + resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + + onetime@5.1.2: + resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} + engines: {node: '>=6'} + + onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + + opener@1.5.2: + resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} + hasBin: true + + openpgp@5.11.0: + resolution: {integrity: sha512-hytHsxIPtRhuh6uAmoBUThHSwHSX3imLu7x4453T+xkVqIw49rl22MRD4KQIAQdCDoVdouejzYgcuLmMA/2OAA==} + engines: {node: '>= 8.0.0'} + + p-each-series@3.0.0: + resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==} + engines: {node: '>=12'} + + p-filter@4.1.0: + resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==} + engines: {node: '>=18'} + + p-is-promise@3.0.0: + resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==} + engines: {node: '>=8'} + + p-limit@1.3.0: + resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} + engines: {node: '>=4'} + + p-limit@3.1.0: + resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} + engines: {node: '>=10'} + + p-locate@2.0.0: + resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} + engines: {node: '>=4'} + + p-locate@5.0.0: + resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} + engines: {node: '>=10'} + + p-map@4.0.0: + resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} + engines: {node: '>=10'} + + p-map@7.0.1: + resolution: {integrity: sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==} + engines: {node: '>=18'} + + p-reduce@2.1.0: + resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==} + engines: {node: '>=8'} + + p-reduce@3.0.0: + resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==} + engines: {node: '>=12'} + + p-try@1.0.0: + resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==} + engines: {node: '>=4'} + + pacote@17.0.4: + resolution: {integrity: sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==} + engines: {node: ^16.14.0 || >=18.0.0} + hasBin: true + + parent-module@1.0.1: + resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} + engines: {node: '>=6'} + + parse-json@4.0.0: + resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} + engines: {node: '>=4'} + + parse-json@5.2.0: + resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} + engines: {node: '>=8'} + + parse-json@8.0.1: + resolution: {integrity: sha512-soKUg/q/8bcfuF3+plsbYldE74cVEVEPSC1BUPIGTaX1byXdz6Fo+CVYBdH0jj/5xWsFrNRksl11QkBgHqPQeQ==} + engines: {node: '>=18'} + + patch-console@2.0.0: + resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + path-exists@3.0.0: + resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} + engines: {node: '>=4'} + + path-exists@4.0.0: + resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} + engines: {node: '>=8'} + + path-is-absolute@1.0.1: + resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} + engines: {node: '>=0.10.0'} + + path-key@3.1.1: + resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} + engines: {node: '>=8'} + + path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + + path-scurry@1.10.1: + resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} + engines: {node: '>=16 || 14 >=14.17'} + + path-to-regexp@1.8.0: + resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} + + path-type@4.0.0: + resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} + engines: {node: '>=8'} + + path-type@5.0.0: + resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} + engines: {node: '>=12'} + + picomatch@2.3.1: + resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} + engines: {node: '>=8.6'} + + pify@3.0.0: + resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} + engines: {node: '>=4'} + + pirates@4.0.6: + resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} + engines: {node: '>= 6'} + + pkg-conf@2.1.0: + resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==} + engines: {node: '>=4'} + + polite-json@4.0.1: + resolution: {integrity: sha512-8LI5ZeCPBEb4uBbcYKNVwk4jgqNx1yHReWoW4H4uUihWlSqZsUDfSITrRhjliuPgxsNPFhNSudGO2Zu4cbWinQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + prettier@3.2.5: + resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} + engines: {node: '>=14'} + hasBin: true + + pretty-format@29.7.0: + resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} + engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + + prismjs-terminal@1.2.3: + resolution: {integrity: sha512-xc0zuJ5FMqvW+DpiRkvxURlz98DdfDsZcFHdO699+oL+ykbFfgI7O4VDEgUyc07BSL2NHl3zdb8m/tZ/aaqUrw==} + engines: {node: '>=16'} + + prismjs@1.29.0: + resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} + engines: {node: '>=6'} + + proc-log@3.0.0: + resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + process-nextick-args@2.0.1: + resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + + process-on-spawn@1.0.0: + resolution: {integrity: sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==} + engines: {node: '>=8'} + + promise-inflight@1.0.1: + resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} + peerDependencies: + bluebird: '*' + peerDependenciesMeta: + bluebird: + optional: true + + promise-retry@2.0.1: + resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} + engines: {node: '>=10'} + + propagate@2.0.1: + resolution: {integrity: sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==} + engines: {node: '>= 8'} + + proto-list@1.2.4: + resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} + + queue-microtask@1.2.3: + resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + + rc@1.2.8: + resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} + hasBin: true + + react-dom@18.2.0: + resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} + peerDependencies: + react: ^18.2.0 + + react-element-to-jsx-string@15.0.0: + resolution: {integrity: sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==} + peerDependencies: + react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 + react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 + + react-is@18.1.0: + resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} + + react-is@18.2.0: + resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} + + react-reconciler@0.29.0: + resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} + engines: {node: '>=0.10.0'} + peerDependencies: + react: ^18.2.0 + + react@18.2.0: + resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} + engines: {node: '>=0.10.0'} + + read-package-json-fast@3.0.2: + resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + read-package-json@7.0.0: + resolution: {integrity: sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==} + engines: {node: ^16.14.0 || >=18.0.0} + + read-pkg-up@11.0.0: + resolution: {integrity: sha512-LOVbvF1Q0SZdjClSefZ0Nz5z8u+tIE7mV5NibzmE9VYmDe9CaBbAVtz1veOSZbofrdsilxuDAYnFenukZVp8/Q==} + engines: {node: '>=18'} + deprecated: Renamed to read-package-up + + read-pkg@9.0.0: + resolution: {integrity: sha512-SBoBio4xhJmlF4xs9IBliWZGSbDAnrOfQkLGL7xB+RYEUZNAN2LlNkzO45B7gc7c2dLMX987bhHAaJ/LG3efeQ==} + engines: {node: '>=18'} + + readable-stream@2.3.8: + resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + + readdirp@3.6.0: + resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} + engines: {node: '>=8.10.0'} + + redeyed@2.1.1: + resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==} + + registry-auth-token@5.0.2: + resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} + engines: {node: '>=14'} + + replace-in-file@7.0.2: + resolution: {integrity: sha512-tPG+Qmqf+x2Rf1WVdb/9B5tFIf6KJ5hs3fgxh1OTzPRUugPPvyAva7NvCJtnSpmyq6r+ABYcuUOqZkm6yzGSUw==} + engines: {node: '>=10'} + hasBin: true + + require-directory@2.1.1: + resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} + engines: {node: '>=0.10.0'} + + resolve-from@4.0.0: + resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} + engines: {node: '>=4'} + + resolve-from@5.0.0: + resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} + engines: {node: '>=8'} + + resolve-import@1.4.5: + resolution: {integrity: sha512-HXb4YqODuuXT7Icq1Z++0g2JmhgbUHSs3VT2xR83gqvAPUikYT2Xk+562KHQgiaNkbBOlPddYrDLsC44qQggzw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + retry@0.12.0: + resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} + engines: {node: '>= 4'} + + reusify@1.0.4: + resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} + engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + + rimraf@3.0.2: + resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} + hasBin: true + + rimraf@5.0.5: + resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} + engines: {node: '>=14'} + hasBin: true + + run-parallel@1.2.0: + resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + + safe-buffer@5.1.2: + resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} + + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + scheduler@0.23.0: + resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + + semantic-release-export-data@1.0.1: + resolution: {integrity: sha512-6vlgrrzzcMi/REhQd65Bh4dfSKmgwXOJ/Q2RVlT9WsU4Ya1T2qGpkSrMfG/n6oFRrqBdbDlyZgxNd94ziW+vSg==} + peerDependencies: + semantic-release: '>=18' + + semantic-release-replace-plugin@1.2.7: + resolution: {integrity: sha512-BfFQVnfC8O7+NpyfjWZuQQEkXwxf1ABbGEQuXqMsrBi7ItCnkSlO3mwuqUllxxuh1WgKx5oYKMVhmZJ0aMaqVQ==} + engines: {node: '>=18'} + peerDependencies: + semantic-release: '>=20.1.0' + + semantic-release@22.0.7: + resolution: {integrity: sha512-Stx23Hjn7iU8GOAlhG3pHlR7AoNEahj9q7lKBP0rdK2BasGtJ4AWYh3zm1u3SCMuFiA8y4CE/Gu4RGKau1WiaQ==} + engines: {node: ^18.17 || >=20.6.1} + hasBin: true + + semver-diff@4.0.0: + resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} + engines: {node: '>=12'} + + semver-regex@4.0.5: + resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==} + engines: {node: '>=12'} + + semver@7.5.4: + resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + engines: {node: '>=10'} + hasBin: true + + shebang-command@2.0.0: + resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} + engines: {node: '>=8'} + + shebang-regex@3.0.0: + resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} + engines: {node: '>=8'} + + signal-exit@3.0.7: + resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} + + signal-exit@4.1.0: + resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} + engines: {node: '>=14'} + + signale@1.4.0: + resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==} + engines: {node: '>=6'} + + sigstore@2.1.0: + resolution: {integrity: sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==} + engines: {node: ^16.14.0 || >=18.0.0} + + sinon@17.0.1: + resolution: {integrity: sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==} + + skin-tone@2.0.0: + resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} + engines: {node: '>=8'} + + slash@5.1.0: + resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} + engines: {node: '>=14.16'} + + slice-ansi@5.0.0: + resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} + engines: {node: '>=12'} + + slice-ansi@6.0.0: + resolution: {integrity: sha512-6bn4hRfkTvDfUoEQYkERg0BVF1D0vrX9HEkMl08uDiNWvVvjylLHvZFZWkDo6wjT8tUctbYl1nCOuE66ZTaUtA==} + engines: {node: '>=14.16'} + + smart-buffer@4.2.0: + resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} + engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} + + socks-proxy-agent@8.0.2: + resolution: {integrity: sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==} + engines: {node: '>= 14'} + + socks@2.7.1: + resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} + engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + + spawn-error-forwarder@1.0.0: + resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==} + + spdx-correct@3.2.0: + resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + + spdx-exceptions@2.3.0: + resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} + + spdx-expression-parse@3.0.1: + resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + + spdx-license-ids@3.0.16: + resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} + + split2@1.0.0: + resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==} + + split2@4.2.0: + resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} + engines: {node: '>= 10.x'} + + ssri@10.0.5: + resolution: {integrity: sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + stack-utils@2.0.6: + resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} + engines: {node: '>=10'} + + stream-combiner2@1.1.1: + resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==} + + string-length@6.0.0: + resolution: {integrity: sha512-1U361pxZHEQ+FeSjzqRpV+cu2vTzYeWeafXFLykiFlv4Vc0n3njgU8HrMbyik5uwm77naWMuVG8fhEF+Ovb1Kg==} + engines: {node: '>=16'} + + string-width@4.2.3: + resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} + engines: {node: '>=8'} + + string-width@5.1.2: + resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} + engines: {node: '>=12'} + + string_decoder@1.1.1: + resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + + strip-ansi@6.0.1: + resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} + engines: {node: '>=8'} + + strip-ansi@7.1.0: + resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} + engines: {node: '>=12'} + + strip-bom@3.0.0: + resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} + engines: {node: '>=4'} + + strip-final-newline@2.0.0: + resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} + engines: {node: '>=6'} + + strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + + strip-json-comments@2.0.1: + resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} + engines: {node: '>=0.10.0'} + + supports-color@5.5.0: + resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} + engines: {node: '>=4'} + + supports-color@7.2.0: + resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} + engines: {node: '>=8'} + + supports-hyperlinks@3.0.0: + resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} + engines: {node: '>=14.18'} + + sync-content@1.0.2: + resolution: {integrity: sha512-znd3rYiiSxU3WteWyS9a6FXkTA/Wjk8WQsOyzHbineeL837dLn3DA4MRhsIX3qGcxDMH6+uuFV4axztssk7wEQ==} + engines: {node: '>=14'} + hasBin: true + + tap-parser@15.3.1: + resolution: {integrity: sha512-hwAtXX5TBGt2MJeYvASc7DjP48PUzA7P8RTbLxQcgKCEH7ICD5IsRco7l5YvkzjHlZbUbeI9wzO8B4hw2sKgnQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + + tap-parser@15.3.2: + resolution: {integrity: sha512-uvauHuQqAMwfeFVxNpFXhvnWLVL0sthnHk4TxRM3cUy6+dejO9fatoKR7YejbMu4+2/1nR6UQE9+eUcX3PUmsA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + + tap-yaml@2.2.1: + resolution: {integrity: sha512-ovZuUMLAIH59jnFHXKEGJ+WyDYl6Cuduwg9qpvnqkZOUA1nU84q02Sry1HT0KXcdv2uB91bEKKxnIybBgrb6oA==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + tap-yaml@2.2.2: + resolution: {integrity: sha512-MWG4OpAKtNoNVjCz/BqlDJiwTM99tiHRhHPS4iGOe1ZS0CgM4jSFH92lthSFvvy4EdDjQZDV7uYqUFlU9JuNhw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + tap@18.7.0: + resolution: {integrity: sha512-bL/0krlx8k3fY9mjI9CMfVoAGclZegl+vm5pEJpF/USxam5eNhp5wLk5UH0ST3gWEJkW0PDdFHTOStE+mYurrQ==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + hasBin: true + + tar@6.2.0: + resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} + engines: {node: '>=10'} + + tcompare@6.4.5: + resolution: {integrity: sha512-Whuz9xlKKI2XXICKDSDRKjXdBuC6gBNOgmEUtH7UFyQeYzfUMQ19DyjZULarGKDGFhgOg3CJ+IQUEfpkOPg0Uw==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + tcompare@6.4.6: + resolution: {integrity: sha512-sxvgCgO2GAIWHibnK4zLvvi9GHd/ZlR9DOUJ4ufwvNtkdKE2I9MNwJUwzYvOmGrJXMcfhhw0CDBb+6j0ia+I7A==} + engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + + temp-dir@3.0.0: + resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} + engines: {node: '>=14.16'} + + tempy@3.1.0: + resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} + engines: {node: '>=14.16'} + + test-exclude@6.0.0: + resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} + engines: {node: '>=8'} + + text-extensions@2.4.0: + resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==} + engines: {node: '>=8'} + + through2@2.0.5: + resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} + + through@2.3.8: + resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} + + to-readable-stream@2.1.0: + resolution: {integrity: sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==} + engines: {node: '>=8'} + + to-regex-range@5.0.1: + resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} + engines: {node: '>=8.0'} + + tr46@0.0.3: + resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + + traverse@0.6.7: + resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==} -packages: + trivial-deferred@2.0.0: + resolution: {integrity: sha512-iGbM7X2slv9ORDVj2y2FFUq3cP/ypbtu2nQ8S38ufjL0glBABvmR9pTdsib1XtS2LUhhLMbelaBUaf/s5J3dSw==} + engines: {node: '>= 8'} - /@actions/core@1.10.1: - resolution: {integrity: sha512-3lBR9EDAY+iYIpTnTIXmWcNbX3T2kCkAEQGIQx4NVQ0575nk2k3GRZDTPQG+vVtS2izSLmINlxXf0uLtnrTP+g==} + ts-node@10.9.2: + resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} + hasBin: true + peerDependencies: + '@swc/core': '>=1.2.50' + '@swc/wasm': '>=1.2.50' + '@types/node': '*' + typescript: '>=2.7' + peerDependenciesMeta: + '@swc/core': + optional: true + '@swc/wasm': + optional: true + + tshy@1.14.0: + resolution: {integrity: sha512-YiUujgi4Jb+t2I48LwSRzHkBpniH9WjjktNozn+nlsGmVemKSjDNY7EwBRPvPCr5zAC/3ITAYWH9Z7kUinGSrw==} + engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} + hasBin: true + + tshy@1.8.0: + resolution: {integrity: sha512-Lg2hVO+B8pdNYvBUSgcra4ULlFCcBIkd7ZJ3nRIPvEjplgEscNSwnOzpIMzKW1m17AYhEGcy1nzv7mA3fi/oEQ==} + engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} + hasBin: true + + tslib@2.6.2: + resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} + + tuf-js@2.1.0: + resolution: {integrity: sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==} + engines: {node: ^16.14.0 || >=18.0.0} + + tunnel@0.0.6: + resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==} + engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} + + type-detect@4.0.8: + resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} + engines: {node: '>=4'} + + type-fest@0.12.0: + resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} + engines: {node: '>=10'} + + type-fest@1.4.0: + resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} + engines: {node: '>=10'} + + type-fest@2.19.0: + resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} + engines: {node: '>=12.20'} + + type-fest@3.13.1: + resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} + engines: {node: '>=14.16'} + + type-fest@4.7.1: + resolution: {integrity: sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==} + engines: {node: '>=16'} + + typescript@5.2.2: + resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} + engines: {node: '>=14.17'} + hasBin: true + + typescript@5.3.3: + resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} + engines: {node: '>=14.17'} + hasBin: true + + typescript@5.4.5: + resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + engines: {node: '>=14.17'} + hasBin: true + + uglify-js@3.17.4: + resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} + engines: {node: '>=0.8.0'} + hasBin: true + + undici-types@5.26.5: + resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} + + undici@5.28.4: + resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} + engines: {node: '>=14.0'} + + unicode-emoji-modifier-base@1.0.0: + resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} + engines: {node: '>=4'} + + unicorn-magic@0.1.0: + resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} + engines: {node: '>=18'} + + unique-filename@3.0.0: + resolution: {integrity: sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + unique-slug@4.0.0: + resolution: {integrity: sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + unique-string@3.0.0: + resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} + engines: {node: '>=12'} + + universal-user-agent@6.0.1: + resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==} + + universalify@2.0.1: + resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} + engines: {node: '>= 10.0.0'} + + url-join@5.0.0: + resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + + util-deprecate@1.0.2: + resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} + + uuid@8.3.2: + resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} + hasBin: true + + v8-compile-cache-lib@3.0.1: + resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} + + v8-to-istanbul@9.1.3: + resolution: {integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==} + engines: {node: '>=10.12.0'} + + validate-npm-package-license@3.0.4: + resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + + validate-npm-package-name@5.0.0: + resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + + walk-up-path@3.0.1: + resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} + + webidl-conversions@3.0.1: + resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + + whatwg-url@5.0.0: + resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + + which@2.0.2: + resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} + engines: {node: '>= 8'} + hasBin: true + + which@4.0.0: + resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==} + engines: {node: ^16.13.0 || >=18.0.0} + hasBin: true + + widest-line@4.0.1: + resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} + engines: {node: '>=12'} + + wordwrap@1.0.0: + resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} + + wrap-ansi@7.0.0: + resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} + engines: {node: '>=10'} + + wrap-ansi@8.1.0: + resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} + engines: {node: '>=12'} + + wrappy@1.0.2: + resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + + ws@8.14.2: + resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + + xtend@4.0.2: + resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} + engines: {node: '>=0.4'} + + y18n@5.0.8: + resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} + engines: {node: '>=10'} + + yallist@4.0.0: + resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + + yaml-types@0.3.0: + resolution: {integrity: sha512-i9RxAO/LZBiE0NJUy9pbN5jFz5EasYDImzRkj8Y81kkInTi1laia3P3K/wlMKzOxFQutZip8TejvQP/DwgbU7A==} + engines: {node: '>= 16', npm: '>= 7'} + peerDependencies: + yaml: ^2.3.0 + + yaml@2.3.4: + resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} + engines: {node: '>= 14'} + + yaml@2.4.1: + resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} + engines: {node: '>= 14'} + hasBin: true + + yargs-parser@21.1.1: + resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} + engines: {node: '>=12'} + + yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + + yn@3.1.1: + resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} + engines: {node: '>=6'} + + yocto-queue@0.1.0: + resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} + engines: {node: '>=10'} + + yoga-wasm-web@0.3.3: + resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} + +snapshots: + + '@actions/core@1.10.1': dependencies: '@actions/http-client': 2.2.0 uuid: 8.3.2 - /@actions/exec@1.1.1: - resolution: {integrity: sha512-+sCcHHbVdk93a0XT19ECtO/gIXoxvdsgQLzb2fE2/5sIZmWQuluYyjPQtrtTHdU1YzTZ7bAPN4sITq2xi1679w==} + '@actions/exec@1.1.1': dependencies: '@actions/io': 1.1.3 - dev: false - /@actions/github@6.0.0: - resolution: {integrity: sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g==} + '@actions/github@6.0.0': dependencies: '@actions/http-client': 2.2.0 '@octokit/core': 5.0.1 '@octokit/plugin-paginate-rest': 9.1.4(@octokit/core@5.0.1) '@octokit/plugin-rest-endpoint-methods': 10.1.4(@octokit/core@5.0.1) - dev: false - /@actions/glob@0.4.0: - resolution: {integrity: sha512-+eKIGFhsFa4EBwaf/GMyzCdWrXWymGXfFmZU3FHQvYS8mPcHtTtZONbkcqqUMzw9mJ/pImEBFET1JNifhqGsAQ==} + '@actions/glob@0.4.0': dependencies: '@actions/core': 1.10.1 minimatch: 3.1.2 - dev: false - /@actions/http-client@2.2.0: - resolution: {integrity: sha512-q+epW0trjVUUHboliPb4UF9g2msf+w61b32tAkFEwL/IwP0DQWgbCMM0Hbe3e3WXSKz5VcUXbzJQgy8Hkra/Lg==} + '@actions/http-client@2.2.0': dependencies: tunnel: 0.0.6 undici: 5.28.4 - /@actions/io@1.1.3: - resolution: {integrity: sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q==} - dev: false + '@actions/io@1.1.3': {} - /@alcalzone/ansi-tokenize@0.1.3: - resolution: {integrity: sha512-3yWxPTq3UQ/FY9p1ErPxIyfT64elWaMvM9lIHnaqpyft63tkxodF5aUElYHrdisWve5cETkh1+KBw1yJuW0aRw==} - engines: {node: '>=14.13.1'} + '@alcalzone/ansi-tokenize@0.1.3': dependencies: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 - dev: true - /@babel/code-frame@7.22.13: - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} - engines: {node: '>=6.9.0'} + '@babel/code-frame@7.22.13': dependencies: '@babel/highlight': 7.22.20 chalk: 2.4.2 - dev: true - /@babel/helper-validator-identifier@7.22.20: - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - dev: true + '@babel/helper-validator-identifier@7.22.20': {} - /@babel/highlight@7.22.20: - resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} - engines: {node: '>=6.9.0'} + '@babel/highlight@7.22.20': dependencies: '@babel/helper-validator-identifier': 7.22.20 chalk: 2.4.2 js-tokens: 4.0.0 - dev: true - /@base2/pretty-print-object@1.0.1: - resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} - dev: true + '@base2/pretty-print-object@1.0.1': {} - /@bcoe/v8-coverage@0.2.3: - resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - dev: true + '@bcoe/v8-coverage@0.2.3': {} - /@colors/colors@1.5.0: - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} - engines: {node: '>=0.1.90'} - requiresBuild: true - dev: true + '@colors/colors@1.5.0': optional: true - /@cspotcode/source-map-support@0.8.1: - resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} - engines: {node: '>=12'} + '@cspotcode/source-map-support@0.8.1': dependencies: '@jridgewell/trace-mapping': 0.3.9 - dev: true - /@fastify/busboy@2.1.0: - resolution: {integrity: sha512-+KpH+QxZU7O4675t3mnkQKcZZg56u+K/Ct2K+N2AZYNVK8kyeo/bI18tI8aPm3tvNNRyTWfj6s5tnGNlcbQRsA==} - engines: {node: '>=14'} + '@fastify/busboy@2.1.0': {} - /@isaacs/cliui@8.0.2: - resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} - engines: {node: '>=12'} + '@isaacs/cliui@8.0.2': dependencies: string-width: 5.1.2 - string-width-cjs: /string-width@4.2.3 + string-width-cjs: string-width@4.2.3 strip-ansi: 7.1.0 - strip-ansi-cjs: /strip-ansi@6.0.1 + strip-ansi-cjs: strip-ansi@6.0.1 wrap-ansi: 8.1.0 - wrap-ansi-cjs: /wrap-ansi@7.0.0 - dev: true + wrap-ansi-cjs: wrap-ansi@7.0.0 - /@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.2.2): - resolution: {integrity: sha512-hEDlwpHhIabtB+Urku8muNMEkGui0LVGlYLS3KoB9QBDf0Pw3r7q0RrfoQmFuk8CvRpGzErO3/vLQd9Ys+/g4g==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=4.2' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true + '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.2.2)': dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node14': 14.1.0 @@ -233,21 +2715,8 @@ packages: make-error: 1.3.6 typescript: 5.2.2 v8-compile-cache-lib: 3.0.1 - dev: true - /@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.3.3): - resolution: {integrity: sha512-hEDlwpHhIabtB+Urku8muNMEkGui0LVGlYLS3KoB9QBDf0Pw3r7q0RrfoQmFuk8CvRpGzErO3/vLQd9Ys+/g4g==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=4.2' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true + '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.3.3)': dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node14': 14.1.0 @@ -262,67 +2731,40 @@ packages: make-error: 1.3.6 typescript: 5.3.3 v8-compile-cache-lib: 3.0.1 - dev: true - /@istanbuljs/schema@0.1.3: - resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} - engines: {node: '>=8'} - dev: true + '@istanbuljs/schema@0.1.3': {} - /@jest/schemas@29.6.3: - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + '@jest/schemas@29.6.3': dependencies: '@sinclair/typebox': 0.27.8 - dev: true - /@jridgewell/resolve-uri@3.1.1: - resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} - engines: {node: '>=6.0.0'} - dev: true + '@jridgewell/resolve-uri@3.1.1': {} - /@jridgewell/sourcemap-codec@1.4.15: - resolution: {integrity: sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==} - dev: true + '@jridgewell/sourcemap-codec@1.4.15': {} - /@jridgewell/trace-mapping@0.3.20: - resolution: {integrity: sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==} + '@jridgewell/trace-mapping@0.3.20': dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /@jridgewell/trace-mapping@0.3.9: - resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} + '@jridgewell/trace-mapping@0.3.9': dependencies: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 - dev: true - /@nodelib/fs.scandir@2.1.5: - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 - dev: true - /@nodelib/fs.stat@2.0.5: - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - dev: true + '@nodelib/fs.stat@2.0.5': {} - /@nodelib/fs.walk@1.2.8: - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} + '@nodelib/fs.walk@1.2.8': dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 - dev: true - /@npmcli/agent@2.2.0: - resolution: {integrity: sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==} - engines: {node: ^16.14.0 || >=18.0.0} + '@npmcli/agent@2.2.0': dependencies: agent-base: 7.1.0 http-proxy-agent: 7.0.0 @@ -331,18 +2773,12 @@ packages: socks-proxy-agent: 8.0.2 transitivePeerDependencies: - supports-color - dev: true - /@npmcli/fs@3.1.0: - resolution: {integrity: sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + '@npmcli/fs@3.1.0': dependencies: semver: 7.5.4 - dev: true - /@npmcli/git@5.0.3: - resolution: {integrity: sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==} - engines: {node: ^16.14.0 || >=18.0.0} + '@npmcli/git@5.0.3': dependencies: '@npmcli/promise-spawn': 7.0.0 lru-cache: 10.0.2 @@ -353,33 +2789,20 @@ packages: semver: 7.5.4 which: 4.0.0 transitivePeerDependencies: - - bluebird - dev: true - - /@npmcli/installed-package-contents@2.0.2: - resolution: {integrity: sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true + - bluebird + + '@npmcli/installed-package-contents@2.0.2': dependencies: npm-bundled: 3.0.0 npm-normalize-package-bin: 3.0.1 - dev: true - /@npmcli/node-gyp@3.0.0: - resolution: {integrity: sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + '@npmcli/node-gyp@3.0.0': {} - /@npmcli/promise-spawn@7.0.0: - resolution: {integrity: sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==} - engines: {node: ^16.14.0 || >=18.0.0} + '@npmcli/promise-spawn@7.0.0': dependencies: which: 4.0.0 - dev: true - /@npmcli/run-script@7.0.2: - resolution: {integrity: sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==} - engines: {node: ^16.14.0 || >=18.0.0} + '@npmcli/run-script@7.0.2': dependencies: '@npmcli/node-gyp': 3.0.0 '@npmcli/promise-spawn': 7.0.0 @@ -388,15 +2811,10 @@ packages: which: 4.0.0 transitivePeerDependencies: - supports-color - dev: true - /@octokit/auth-token@4.0.0: - resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==} - engines: {node: '>= 18'} + '@octokit/auth-token@4.0.0': {} - /@octokit/core@5.0.1: - resolution: {integrity: sha512-lyeeeZyESFo+ffI801SaBKmCfsvarO+dgV8/0gD8u1d87clbEdWsP5yC+dSj3zLhb2eIf5SJrn6vDz9AheETHw==} - engines: {node: '>= 18'} + '@octokit/core@5.0.1': dependencies: '@octokit/auth-token': 4.0.0 '@octokit/graphql': 7.0.2 @@ -406,78 +2824,50 @@ packages: before-after-hook: 2.2.3 universal-user-agent: 6.0.1 - /@octokit/endpoint@9.0.2: - resolution: {integrity: sha512-qhKW8YLIi+Kmc92FQUFGr++DYtkx/1fBv+Thua6baqnjnOsgBYJDCvWZR1YcINuHGOEQt416WOfE+A/oG60NBQ==} - engines: {node: '>= 18'} + '@octokit/endpoint@9.0.2': dependencies: '@octokit/types': 12.3.0 is-plain-object: 5.0.0 universal-user-agent: 6.0.1 - /@octokit/graphql@7.0.2: - resolution: {integrity: sha512-OJ2iGMtj5Tg3s6RaXH22cJcxXRi7Y3EBqbHTBRq+PQAqfaS8f/236fUrWhfSn8P4jovyzqucxme7/vWSSZBX2Q==} - engines: {node: '>= 18'} + '@octokit/graphql@7.0.2': dependencies: '@octokit/request': 8.1.5 '@octokit/types': 12.3.0 universal-user-agent: 6.0.1 - /@octokit/openapi-types@19.0.2: - resolution: {integrity: sha512-8li32fUDUeml/ACRp/njCWTsk5t17cfTM1jp9n08pBrqs5cDFJubtjsSnuz56r5Tad6jdEPJld7LxNp9dNcyjQ==} + '@octokit/openapi-types@19.0.2': {} - /@octokit/plugin-paginate-rest@9.1.4(@octokit/core@5.0.1): - resolution: {integrity: sha512-MvZx4WvfhBnt7PtH5XE7HORsO7bBk4er1FgRIUr1qJ89NR2I6bWjGyKsxk8z42FPQ34hFQm0Baanh4gzdZR4gQ==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': '>=5' + '@octokit/plugin-paginate-rest@9.1.4(@octokit/core@5.0.1)': dependencies: '@octokit/core': 5.0.1 '@octokit/types': 12.3.0 - /@octokit/plugin-rest-endpoint-methods@10.1.4(@octokit/core@5.0.1): - resolution: {integrity: sha512-e8dSb9ypW1Q2I+qkOPzs3A9f4/EGpSZSI45wWBfXiqcvpoxSywVcZajZRhFwAutKI+/NNoeKxsxMwCx73oQyWw==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': '>=5' + '@octokit/plugin-rest-endpoint-methods@10.1.4(@octokit/core@5.0.1)': dependencies: '@octokit/core': 5.0.1 '@octokit/types': 12.3.0 - dev: false - /@octokit/plugin-retry@6.0.1(@octokit/core@5.0.1): - resolution: {integrity: sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': '>=5' + '@octokit/plugin-retry@6.0.1(@octokit/core@5.0.1)': dependencies: '@octokit/core': 5.0.1 '@octokit/request-error': 5.0.1 '@octokit/types': 12.3.0 bottleneck: 2.19.5 - dev: true - /@octokit/plugin-throttling@8.1.2(@octokit/core@5.0.1): - resolution: {integrity: sha512-oFba+ioR6HGb0fgqxMta7Kpk/MdffUTuUxNY856l1nXPvh7Qggp8w4AksRx1SDA8SGd+4cbrpkY4k1J/Xz8nZQ==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': ^5.0.0 + '@octokit/plugin-throttling@8.1.2(@octokit/core@5.0.1)': dependencies: '@octokit/core': 5.0.1 '@octokit/types': 12.3.0 bottleneck: 2.19.5 - dev: true - /@octokit/request-error@5.0.1: - resolution: {integrity: sha512-X7pnyTMV7MgtGmiXBwmO6M5kIPrntOXdyKZLigNfQWSEQzVxR4a4vo49vJjTWX70mPndj8KhfT4Dx+2Ng3vnBQ==} - engines: {node: '>= 18'} + '@octokit/request-error@5.0.1': dependencies: '@octokit/types': 12.3.0 deprecation: 2.3.1 once: 1.4.0 - /@octokit/request@8.1.5: - resolution: {integrity: sha512-zVKbNbX1xUluD9ZR4/tPs1yuYrK9xeh5fGZUXA6u04XGsTvomg0YO8/ZUC0FqAd49hAOEMFPAVUTh+2lBhOhLA==} - engines: {node: '>= 18'} + '@octokit/request@8.1.5': dependencies: '@octokit/endpoint': 9.0.2 '@octokit/request-error': 5.0.1 @@ -485,68 +2875,38 @@ packages: is-plain-object: 5.0.0 universal-user-agent: 6.0.1 - /@octokit/types@12.3.0: - resolution: {integrity: sha512-nJ8X2HRr234q3w/FcovDlA+ttUU4m1eJAourvfUUtwAWeqL8AsyRqfnLvVnYn3NFbUnsmzQCzLNdFerPwdmcDQ==} + '@octokit/types@12.3.0': dependencies: '@octokit/openapi-types': 19.0.2 - /@openpgp/web-stream-tools@0.0.14(typescript@5.3.3): - resolution: {integrity: sha512-6btCNVf6YSsmlyIS7yw+IbzXeXCEcJxeSpxvSxkDuZj9B/ekt4fXkZj4oOaIxG4SKTftIK1svnlVroJ1cCMT4g==} - peerDependencies: - typescript: '>=4.2' - peerDependenciesMeta: - typescript: - optional: true + '@openpgp/web-stream-tools@0.0.14(typescript@5.3.3)': dependencies: typescript: 5.3.3 - dev: true - /@pkgjs/parseargs@0.11.0: - resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} - engines: {node: '>=14'} - requiresBuild: true - dev: true + '@pkgjs/parseargs@0.11.0': optional: true - /@pnpm/config.env-replace@1.1.0: - resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} - engines: {node: '>=12.22.0'} - dev: true + '@pnpm/config.env-replace@1.1.0': {} - /@pnpm/network.ca-file@1.0.2: - resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} - engines: {node: '>=12.22.0'} + '@pnpm/network.ca-file@1.0.2': dependencies: graceful-fs: 4.2.10 - dev: true - /@pnpm/npm-conf@2.2.2: - resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} - engines: {node: '>=12'} + '@pnpm/npm-conf@2.2.2': dependencies: '@pnpm/config.env-replace': 1.1.0 '@pnpm/network.ca-file': 1.0.2 config-chain: 1.1.13 - dev: true - /@semantic-release/changelog@6.0.3(semantic-release@22.0.7): - resolution: {integrity: sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' + '@semantic-release/changelog@6.0.3(semantic-release@22.0.7)': dependencies: '@semantic-release/error': 3.0.0 aggregate-error: 3.1.0 fs-extra: 11.1.1 lodash: 4.17.21 semantic-release: 22.0.7(typescript@5.3.3) - dev: true - /@semantic-release/commit-analyzer@11.1.0(semantic-release@22.0.7): - resolution: {integrity: sha512-cXNTbv3nXR2hlzHjAMgbuiQVtvWHTlwwISt60B+4NZv01y/QRY7p2HcJm8Eh2StzcTJoNnflvKjHH/cjFS7d5g==} - engines: {node: ^18.17 || >=20.6.1} - peerDependencies: - semantic-release: '>=20.1.0' + '@semantic-release/commit-analyzer@11.1.0(semantic-release@22.0.7)': dependencies: conventional-changelog-angular: 7.0.0 conventional-commits-filter: 4.0.0 @@ -558,23 +2918,12 @@ packages: semantic-release: 22.0.7(typescript@5.3.3) transitivePeerDependencies: - supports-color - dev: true - /@semantic-release/error@3.0.0: - resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==} - engines: {node: '>=14.17'} - dev: true + '@semantic-release/error@3.0.0': {} - /@semantic-release/error@4.0.0: - resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==} - engines: {node: '>=18'} - dev: true + '@semantic-release/error@4.0.0': {} - /@semantic-release/exec@6.0.3(semantic-release@22.0.7): - resolution: {integrity: sha512-bxAq8vLOw76aV89vxxICecEa8jfaWwYITw6X74zzlO0mc/Bgieqx9kBRz9z96pHectiTAtsCwsQcUyLYWnp3VQ==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' + '@semantic-release/exec@6.0.3(semantic-release@22.0.7)': dependencies: '@semantic-release/error': 3.0.0 aggregate-error: 3.1.0 @@ -585,13 +2934,8 @@ packages: semantic-release: 22.0.7(typescript@5.3.3) transitivePeerDependencies: - supports-color - dev: true - /@semantic-release/git@10.0.1(semantic-release@22.0.7): - resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' + '@semantic-release/git@10.0.1(semantic-release@22.0.7)': dependencies: '@semantic-release/error': 3.0.0 aggregate-error: 3.1.0 @@ -604,13 +2948,8 @@ packages: semantic-release: 22.0.7(typescript@5.3.3) transitivePeerDependencies: - supports-color - dev: true - /@semantic-release/github@9.2.6(semantic-release@22.0.7): - resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==} - engines: {node: '>=18'} - peerDependencies: - semantic-release: '>=20.1.0' + '@semantic-release/github@9.2.6(semantic-release@22.0.7)': dependencies: '@octokit/core': 5.0.1 '@octokit/plugin-paginate-rest': 9.1.4(@octokit/core@5.0.1) @@ -631,13 +2970,8 @@ packages: url-join: 5.0.0 transitivePeerDependencies: - supports-color - dev: true - /@semantic-release/npm@11.0.1(semantic-release@22.0.7): - resolution: {integrity: sha512-nFcT0pgVwpXsPkzjqP3ObH+pILeN1AbYscCDuYwgZEPZukL+RsGhrtdT4HA1Gjb/y1bVbE90JNtMIcgRi5z/Fg==} - engines: {node: ^18.17 || >=20} - peerDependencies: - semantic-release: '>=20.1.0' + '@semantic-release/npm@11.0.1(semantic-release@22.0.7)': dependencies: '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 @@ -653,13 +2987,8 @@ packages: semantic-release: 22.0.7(typescript@5.3.3) semver: 7.5.4 tempy: 3.1.0 - dev: true - /@semantic-release/release-notes-generator@12.1.0(semantic-release@22.0.7): - resolution: {integrity: sha512-g6M9AjUKAZUZnxaJZnouNBeDNTCUrJ5Ltj+VJ60gJeDaRRahcHsry9HW8yKrnKkKNkx5lbWiEP1FPMqVNQz8Kg==} - engines: {node: ^18.17 || >=20.6.1} - peerDependencies: - semantic-release: '>=20.1.0' + '@semantic-release/release-notes-generator@12.1.0(semantic-release@22.0.7)': dependencies: conventional-changelog-angular: 7.0.0 conventional-changelog-writer: 7.0.1 @@ -674,136 +3003,79 @@ packages: semantic-release: 22.0.7(typescript@5.3.3) transitivePeerDependencies: - supports-color - dev: true - /@sigstore/bundle@2.1.0: - resolution: {integrity: sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==} - engines: {node: ^16.14.0 || >=18.0.0} + '@sigstore/bundle@2.1.0': dependencies: '@sigstore/protobuf-specs': 0.2.1 - dev: true - /@sigstore/protobuf-specs@0.2.1: - resolution: {integrity: sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + '@sigstore/protobuf-specs@0.2.1': {} - /@sigstore/sign@2.2.0: - resolution: {integrity: sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==} - engines: {node: ^16.14.0 || >=18.0.0} + '@sigstore/sign@2.2.0': dependencies: '@sigstore/bundle': 2.1.0 '@sigstore/protobuf-specs': 0.2.1 make-fetch-happen: 13.0.0 transitivePeerDependencies: - supports-color - dev: true - /@sigstore/tuf@2.2.0: - resolution: {integrity: sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==} - engines: {node: ^16.14.0 || >=18.0.0} + '@sigstore/tuf@2.2.0': dependencies: '@sigstore/protobuf-specs': 0.2.1 tuf-js: 2.1.0 transitivePeerDependencies: - supports-color - dev: true - /@sinclair/typebox@0.27.8: - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} - dev: true + '@sinclair/typebox@0.27.8': {} - /@sindresorhus/is@3.1.2: - resolution: {integrity: sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==} - engines: {node: '>=10'} - dev: true + '@sindresorhus/is@3.1.2': {} - /@sindresorhus/merge-streams@1.0.0: - resolution: {integrity: sha512-rUV5WyJrJLoloD4NDN1V1+LDMDWOa4OTsT4yYJwQNpTU6FWxkxHpL7eu4w+DmiH8x/EAM1otkPE1+LaspIbplw==} - engines: {node: '>=18'} - dev: true + '@sindresorhus/merge-streams@1.0.0': {} - /@sinonjs/commons@2.0.0: - resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} + '@sinonjs/commons@2.0.0': dependencies: type-detect: 4.0.8 - dev: true - /@sinonjs/commons@3.0.0: - resolution: {integrity: sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==} + '@sinonjs/commons@3.0.0': dependencies: type-detect: 4.0.8 - dev: true - /@sinonjs/fake-timers@10.3.0: - resolution: {integrity: sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==} + '@sinonjs/fake-timers@10.3.0': dependencies: '@sinonjs/commons': 3.0.0 - dev: true - /@sinonjs/fake-timers@11.2.2: - resolution: {integrity: sha512-G2piCSxQ7oWOxwGSAyFHfPIsyeJGXYtc6mFbnFA+kRXkiEnTl8c/8jul2S329iFBnDI9HGoeWWAZvuvOkZccgw==} + '@sinonjs/fake-timers@11.2.2': dependencies: '@sinonjs/commons': 3.0.0 - dev: true - /@sinonjs/samsam@8.0.0: - resolution: {integrity: sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==} + '@sinonjs/samsam@8.0.0': dependencies: '@sinonjs/commons': 2.0.0 lodash.get: 4.4.2 type-detect: 4.0.8 - dev: true - /@sinonjs/text-encoding@0.7.2: - resolution: {integrity: sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==} - dev: true + '@sinonjs/text-encoding@0.7.2': {} - /@tapjs/after-each@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-AuXeD8uUYQ/CUdfhx2jvBhJf3M+T/Kroz5T6ItocZ3jf8H/4x2OKMVbb5YcB7J4ANGtmzXp+8SBseoN1av6y0Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/after-each@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) function-loop: 4.0.0 - dev: true - /@tapjs/after-each@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-j5+VLjyssCfC4+fEP31tJpKdXO4pBuouovauHHc5xR2qo/hMonB/MlDHhFOL9PbC4sLBHvY4EkotwET36aLECg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/after-each@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) function-loop: 4.0.0 - dev: true - /@tapjs/after@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-r0vMFMfxmO6UR+pB9zGvamaeUI+yhLokYAagsKoM3JdoZgyq0iw1fHn5hPPY8AC1tAzEYG3KtVDpJfpoOr67Iw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/after@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 - dev: true - /@tapjs/after@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-EGosPLlKe8MaZMkoyA2lJhF2h/zNNzKA93yA4fkg+tOvKaVvtI8BtSmErN2sMIYRFPHxaLzQgr0268h7m2Ysow==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/after@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 - dev: true - /@tapjs/asserts@1.1.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-MwGs/QklLRAsMnB4fO6QFaZ0myR//E21Rek/gGCpTxz7eUwCh24/y7MlBV0W6zDFdnQ1GFbHc/fIBVtcPAWjyw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/asserts@1.1.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.7 @@ -813,13 +3085,8 @@ packages: transitivePeerDependencies: - react - react-dom - dev: true - /@tapjs/asserts@1.1.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-0w+c3+1TVzpObrQTRfDnE/Z3TTCWUVA4sZwzjfmhbwbF8VA83HR0Bh6fj7dIsrrsufWwp4QMyXPwN62HPwSCgg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/asserts@1.1.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.8 @@ -829,54 +3096,28 @@ packages: transitivePeerDependencies: - react - react-dom - dev: true - /@tapjs/before-each@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-qxBQaOY+IkThP9iauL1tHCxirG9XuKGJvGHY4IGKuk0RswWkXmawSe5hcJ8m569dRXy9yJHEV7N0QueuyWxpBA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/before-each@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) function-loop: 4.0.0 - dev: true - /@tapjs/before-each@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-ln27bSetJoDo1AIFCdpwPupGhJN6dA1Sc55qHJ2Ni9O9IYc/9s5JvzzQ4eEV1hFaiROvpsS945MtQY4mRS09Lg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/before-each@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) function-loop: 4.0.0 - dev: true - /@tapjs/before@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-2rkXrAWlkl0+bZ8wSNfEW/7TANs/Dg5SrY2MmdEb0x7Q/zbMoGjrPVKDRF20Me0p+tJBLWSY+FXQ0OhXK0pUjg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/before@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 - dev: true - /@tapjs/before@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-UuYor/jk+BRw9i3KuI6vrf7QF7g4V+z5ku/6qwUg7dkAE3qrCsRGNQ7Es1161ncXQUSoUy91vw/mRvFoTTRQ7Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/before@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 - dev: true - /@tapjs/config@2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0): - resolution: {integrity: sha512-uU/gfQJh8aSokEBgwAAHD5ctHYbIiZYFaL6IrROcDp7Wr7/fd/dn9K4efpREwKpqKqOgL3XZPOwx7prKxrLHhA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/test': 1.4.0 + '@tapjs/config@2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/test': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) @@ -885,11 +3126,8 @@ packages: polite-json: 4.0.1 tap-yaml: 2.2.1 walk-up-path: 3.0.1 - dev: true - /@tapjs/core@1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-g+NNI5TGXVJR5G4AZCU0hWu1pdA2qB2OYrY9Ej3mWeg97mvNZBVgNtvx8Vjdwp9BfgbJfyFK7PvoB4nhKgetSQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + '@tapjs/core@1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/processinfo': 3.1.6 '@tapjs/stack': 1.2.7 @@ -909,11 +3147,8 @@ packages: - '@types/node' - react - react-dom - dev: true - /@tapjs/core@1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Z/xkjJBOzS3mjUxFTOvtQX34GmOLx+C27w6bFRHrPCO1YTtu08SXJ9Mdkv+7vbSlAnBLWFgZddWvpgpAYud/uQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + '@tapjs/core@1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/processinfo': 3.1.7 '@tapjs/stack': 1.2.8 @@ -933,159 +3168,92 @@ packages: - '@types/node' - react - react-dom - dev: true - /@tapjs/error-serdes@1.2.1: - resolution: {integrity: sha512-/7eLEcrGo+Qz3eWrjkhDC+VSEOjabkkzr9eRADeU+OLFeZaik8L/GRk0SGhnp4YsQkv0jcNV00A42bEx2HIZcw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + '@tapjs/error-serdes@1.2.1': dependencies: minipass: 7.0.4 - dev: true - /@tapjs/error-serdes@1.2.2: - resolution: {integrity: sha512-RW2aU50JR7SSAlvoTyuwouXETLM9lP+7oZ5Z+dyKhNp8mkbbz4mXKcgd9SDHY5qTh6zvVN7OFK7ev7dYWXbrWw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + '@tapjs/error-serdes@1.2.2': dependencies: minipass: 7.0.4 - dev: true - /@tapjs/filter@1.2.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-0yCqaHYLejI/KyxdB5EsrRVu3wxZVl7vPXTwBoyc+ycJWXPapHLhKl67Xk5x3FW/nNelA9TCq/tSHcYlogGN0g==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/filter@1.2.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/filter@1.2.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-8zyTBjY8lYVz2W0S8nw8vq0kkwCM6Ike76n71mVzMOFcW/qXIn2ImW/PJtHREMFwLEN0aL51Ey/60Cs85EevxA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/filter@1.2.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/fixture@1.2.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-BQIRxydaqjZIG61QhoiQOc9HE3MxSjCn7SUsIfYCzoZoY+3aY6iCdTVg2la86b5ikTbwoWxWWbqICnFWebuHnQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/fixture@1.2.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) mkdirp: 3.0.1 rimraf: 5.0.5 - dev: true - /@tapjs/fixture@1.2.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-QJwANuumhNv59ONrpGOMy0hY+P2rHPakOlAR8ZkkAKbdQS5E0YExZLDna/Ug47Qin6MbaqXPk6zP/eiiBxZxig==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/fixture@1.2.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) mkdirp: 3.0.1 rimraf: 5.0.5 - dev: true - /@tapjs/intercept@1.2.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-Trcmp64RKD2/nMz7/+NuwjJHfrn8eFofX3s3g0+QGvnTv+5B5ZQs+zWjS7q2d1Qt8LDV8CfS5w3BhYyONsocSw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/intercept@1.2.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.7 - dev: true - /@tapjs/intercept@1.2.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-LEjE2rKfELh8CM6NPAGKIi1HDFjb66G//qbTs8lnLCiulUvUWGlx4RzeBdky0532+vyR9Q3JdHsidCNOsq33ow==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/intercept@1.2.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.8 - dev: true - /@tapjs/mock@1.3.0(@tapjs/core@1.5.0): - resolution: {integrity: sha512-Uzyikl8SS8Mg7OOr2HuyiaVhYvHNRZnw6A1/qTiJnoZ1MHcLFuwFqIX9ZhfXMil5MIYC/ET096VMDm45q9Tdvw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/mock@1.3.0(@tapjs/core@1.5.0)': dependencies: '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.7 resolve-import: 1.4.5 walk-up-path: 3.0.1 - dev: true - /@tapjs/mock@1.3.2(@tapjs/core@1.5.2): - resolution: {integrity: sha512-QN3Nft/wxww/oxPpx/bgW4EF7EfxfvcAY/0VPphI3NjG/ZSNeZ7lbO9kYvh+RSRC1PtDR6OvfGA2dwQ7V/81DQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/mock@1.3.2(@tapjs/core@1.5.2)': dependencies: '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/stack': 1.2.8 resolve-import: 1.4.5 walk-up-path: 3.0.1 - dev: true - /@tapjs/node-serialize@1.3.0(@tapjs/core@1.5.0): - resolution: {integrity: sha512-52oQKQJMMKrI1cNu8kJ5WTv8YFnbhwfwUs3Jh1vXQb4tOhLW8IHWqXBi5AiNL3HlCMMHaKDFQjW6sbbJuMyJPA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/node-serialize@1.3.0(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/error-serdes': 1.2.1 '@tapjs/stack': 1.2.7 tap-parser: 15.3.1 - dev: true - /@tapjs/node-serialize@1.3.2(@tapjs/core@1.5.2): - resolution: {integrity: sha512-KyYYU1tOTn3udST4lQUl2KsZFPbA7UGqHKT3Os/FmHplmgJeSPc5nKKCI+R2h/ADSULQx7ZiBUYot8o0GTqndw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/node-serialize@1.3.2(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) '@tapjs/error-serdes': 1.2.2 '@tapjs/stack': 1.2.8 tap-parser: 15.3.2 - dev: true - /@tapjs/processinfo@3.1.6: - resolution: {integrity: sha512-ktDsaf79wJsLaoG1Pp+stHSRf6a1k/JydoRAaYVG5iJnd3DooL6yewZsciUi2yiN/WQc5tAXCIFTXL4uXGB8LA==} - engines: {node: '>=16.17'} + '@tapjs/processinfo@3.1.6': dependencies: pirates: 4.0.6 process-on-spawn: 1.0.0 signal-exit: 4.1.0 uuid: 8.3.2 - dev: true - /@tapjs/processinfo@3.1.7: - resolution: {integrity: sha512-SI5RJQ5HnUKEWnHSAF6hOm6XPdnjZ+CJzIaVHdFebed8iDAPTqb+IwMVu9yq9+VQ7FRsMMlgLL2SW4rss2iJbQ==} - engines: {node: '>=16.17'} + '@tapjs/processinfo@3.1.7': dependencies: pirates: 4.0.6 process-on-spawn: 1.0.0 signal-exit: 4.1.0 uuid: 8.3.2 - dev: true - /@tapjs/reporter@1.3.16(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)(react-dom@18.2.0): - resolution: {integrity: sha512-YoZpBAFGdZyrhIaRCZDuWSeCc10A3YG/4mIdPsKpSbLXPBZ1hwCV8Y/LPCpH5kunZTXYocvQoRHU+oD4pLXC3g==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/reporter@1.3.16(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)(react-dom@18.2.0)': dependencies: '@tapjs/config': 2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0) '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) @@ -1108,14 +3276,8 @@ packages: - react-devtools-core - react-dom - utf-8-validate - dev: true - /@tapjs/run@1.5.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-WrmbHHrhvRvLlTTAGiogF09xiPoorsoG4diAIKifGUyGD/9qRA7pT2mzYIqXvhyxbtuEmaeobHjupSZrak+O4Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/run@1.5.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) '@tapjs/before': 1.1.18(@tapjs/core@1.5.0) @@ -1156,13 +3318,8 @@ packages: - react-dom - supports-color - utf-8-validate - dev: true - /@tapjs/snapshot@1.2.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-fHt4ZgutJ922/YdmXN2d6dkwFTR6KsyD02jcSYBXVDGdFC2YnsjKk/o9s3Yt9tYnYES6Et+6udPlAKcakzR5jQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/snapshot@1.2.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 @@ -1171,13 +3328,8 @@ packages: transitivePeerDependencies: - react - react-dom - dev: true - /@tapjs/snapshot@1.2.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-/7ct6j//nNjiabJGMSxRsJEXSLOc6SwNC3dHuYeXP+yHIOeRK3qoonLqkt8+/9JgkZyaqIvWMdlo9ezoNPCrAw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/snapshot@1.2.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) is-actual-promise: 1.0.1 @@ -1186,60 +3338,28 @@ packages: transitivePeerDependencies: - react - react-dom - dev: true - /@tapjs/spawn@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-E5H0NTyTZ0FnkPUd5JU3c2KrnjjMDDAuctRd2b0v/M5LB+uAlwwEEJJ6rh+dBsFK/yatfgPli+nbHZVjUz+Usw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/spawn@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/spawn@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-7w396QXOQb8P3Sar9Ldas7tyTMqFBASpRjr/a6Coyj21s/HejlaX8nnGKldbMhokCR2gZAgkmWg45B3tVqxZJA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/spawn@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/stack@1.2.7: - resolution: {integrity: sha512-7qUDWDmd+y7ZQ0vTrDTvFlWnJ+ND32NemS5HVuT1ZggHtBwJ62PQHIyCx/B5RopETBb6NvFPfUE21yTiex9Jkw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - dev: true + '@tapjs/stack@1.2.7': {} - /@tapjs/stack@1.2.8: - resolution: {integrity: sha512-VC8h6U62ScerTKN+MYpRPiwH2bCL65S6v1wcj1hukE2hojLcRvVdET7S3ZtRfSj/eNWW/5OVfzTpHiGjEYD6Xg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - dev: true + '@tapjs/stack@1.2.8': {} - /@tapjs/stdin@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-UyhK8bRRhQkmBb7N/NFa/11DucHfIzCyyba7uax+dkuXSd6OccTZVxLpRMuaOUV59QCCFAJUJDQnmaWj35fI7Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/stdin@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/stdin@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-OX5Q8WtZU48z2SCGEfIarqinDbhX7ajPpIUYHddtK/MbDowHZvgIFZzes7bH9tP2YcQdIRu/tuuyKi/WJMWxdg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/stdin@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/test@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-t4U11uAUDUeBQTdlqtiDoiuiG3lKLhHa+PxrdIR3GlG+2wDcpqFR8aFFiuq3XTvks0uoWjKx3WkAMyjNsxmikg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/test@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) @@ -1273,14 +3393,8 @@ packages: - '@types/node' - react - react-dom - dev: true - /@tapjs/test@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-xPcnhADRI1dua+1rcdZegLdGmkoyKxFneflQzdSPj4zOBXnzD7Kps269LBndrfA5df4ZjZBaFB0M5xSiu0cUGA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/test@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': dependencies: '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) @@ -1314,13 +3428,8 @@ packages: - '@types/node' - react - react-dom - dev: true - /@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.2.2): - resolution: {integrity: sha512-3b3pNI20Cf9NRMuT6GE288RESMYMcrwrKuj29Mroiy9MkLEyyPPHqeSRstvakn9/i/nhTlXj2YIftPo80H3OlQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.2.2)': dependencies: '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) @@ -1329,13 +3438,8 @@ packages: - '@swc/wasm' - '@types/node' - typescript - dev: true - - /@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.3.3): - resolution: {integrity: sha512-3b3pNI20Cf9NRMuT6GE288RESMYMcrwrKuj29Mroiy9MkLEyyPPHqeSRstvakn9/i/nhTlXj2YIftPo80H3OlQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + + '@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.3.3)': dependencies: '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.3.3) '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) @@ -1344,13 +3448,8 @@ packages: - '@swc/wasm' - '@types/node' - typescript - dev: true - /@tapjs/typescript@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(typescript@5.2.2): - resolution: {integrity: sha512-JUSd3c+aly+xP0FLkcw/afYWGeobZ3//f12MUias5f0tLj7AaxpKePGyLeY1f0QvcuzPF/UKjk3BLd1Fh4u86g==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/typescript@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(typescript@5.2.2)': dependencies: '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) @@ -1359,295 +3458,162 @@ packages: - '@swc/wasm' - '@types/node' - typescript - dev: true - /@tapjs/worker@1.1.18(@tapjs/core@1.5.0): - resolution: {integrity: sha512-wxl/dXByMWk9FuYiiSzY/U5QU0oe9EWpf7pJ48feWsTTn42wihUHZT25kbleR4V2l68/SlTPlJkEsKnHjU27Pg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/worker@1.1.18(@tapjs/core@1.5.0)': dependencies: '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tapjs/worker@1.1.20(@tapjs/core@1.5.2): - resolution: {integrity: sha512-I7wvUqoe8vD8Ld65VgSWVTdbWyP6eTpSJ8At/TRKznlJj4CVSvZ3lV5RxvLCBTg7ITCKcS+mQbqsmjpsvPGXEg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.2 + '@tapjs/worker@1.1.20(@tapjs/core@1.5.2)': dependencies: '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - dev: true - /@tsconfig/node10@1.0.9: - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - dev: true + '@tsconfig/node10@1.0.9': {} - /@tsconfig/node12@1.0.11: - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - dev: true + '@tsconfig/node12@1.0.11': {} - /@tsconfig/node14@1.0.3: - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - dev: true + '@tsconfig/node14@1.0.3': {} - /@tsconfig/node14@14.1.0: - resolution: {integrity: sha512-VmsCG04YR58ciHBeJKBDNMWWfYbyP8FekWVuTlpstaUPlat1D0x/tXzkWP7yCMU0eSz9V4OZU0LBWTFJ3xZf6w==} - dev: true + '@tsconfig/node14@14.1.0': {} - /@tsconfig/node16@1.0.4: - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - dev: true + '@tsconfig/node16@1.0.4': {} - /@tsconfig/node16@16.1.1: - resolution: {integrity: sha512-+pio93ejHN4nINX4pXqfnR/fPLRtJBaT4ORaa5RH0Oc1zoYmo2B2koG+M328CQhHKn1Wj6FcOxCDFXAot9NhvA==} - dev: true + '@tsconfig/node16@16.1.1': {} - /@tsconfig/node18@18.2.2: - resolution: {integrity: sha512-d6McJeGsuoRlwWZmVIeE8CUA27lu6jLjvv1JzqmpsytOYYbVi1tHZEnwCNVOXnj4pyLvneZlFlpXUK+X9wBWyw==} - dev: true + '@tsconfig/node18@18.2.2': {} - /@tsconfig/node20@20.1.2: - resolution: {integrity: sha512-madaWq2k+LYMEhmcp0fs+OGaLFk0OenpHa4gmI4VEmCKX4PJntQ6fnnGADVFrVkBj0wIdAlQnK/MrlYTHsa1gQ==} - dev: true + '@tsconfig/node20@20.1.2': {} - /@tufjs/canonical-json@2.0.0: - resolution: {integrity: sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==} - engines: {node: ^16.14.0 || >=18.0.0} - dev: true + '@tufjs/canonical-json@2.0.0': {} - /@tufjs/models@2.0.0: - resolution: {integrity: sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==} - engines: {node: ^16.14.0 || >=18.0.0} + '@tufjs/models@2.0.0': dependencies: '@tufjs/canonical-json': 2.0.0 minimatch: 9.0.3 - dev: true - /@types/istanbul-lib-coverage@2.0.6: - resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} - dev: true + '@types/istanbul-lib-coverage@2.0.6': {} - /@types/node-fetch@2.6.9: - resolution: {integrity: sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==} + '@types/node-fetch@2.6.9': dependencies: '@types/node': 18.19.28 form-data: 4.0.0 - dev: true - /@types/node@18.19.28: - resolution: {integrity: sha512-J5cOGD9n4x3YGgVuaND6khm5x07MMdAKkRyXnjVR6KFhLMNh2yONGiP7Z+4+tBOt5mK+GvDTiacTOVGGpqiecw==} + '@types/node@18.19.28': dependencies: undici-types: 5.26.5 - dev: true - /@types/normalize-package-data@2.4.4: - resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} - dev: true + '@types/normalize-package-data@2.4.4': {} - /@types/sinon@17.0.3: - resolution: {integrity: sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==} + '@types/sinon@17.0.3': dependencies: '@types/sinonjs__fake-timers': 8.1.5 - dev: true - /@types/sinonjs__fake-timers@8.1.5: - resolution: {integrity: sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==} - dev: true + '@types/sinonjs__fake-timers@8.1.5': {} - /@types/which@3.0.3: - resolution: {integrity: sha512-2C1+XoY0huExTbs8MQv1DuS5FS86+SEjdM9F/+GS61gg5Hqbtj8ZiDSx8MfWcyei907fIPbfPGCOrNUTnVHY1g==} - dev: true + '@types/which@3.0.3': {} - /JSONStream@1.3.5: - resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} - hasBin: true + JSONStream@1.3.5: dependencies: jsonparse: 1.3.1 through: 2.3.8 - dev: true - /abbrev@2.0.0: - resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + abbrev@2.0.0: {} - /acorn-walk@8.3.0: - resolution: {integrity: sha512-FS7hV565M5l1R08MXqo8odwMTB02C2UqzB17RVgu9EyuYFBqJZ3/ZY97sQD5FewVu1UyDFc1yztUDrAwT0EypA==} - engines: {node: '>=0.4.0'} - dev: true + acorn-walk@8.3.0: {} - /acorn@8.11.2: - resolution: {integrity: sha512-nc0Axzp/0FILLEVsm4fNwLCwMttvhEI263QtVPQcbpfZZ3ts0hLsZGOpE6czNlid7CJ9MlyH8reXkpsf3YUY4w==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: true + acorn@8.11.2: {} - /agent-base@7.1.0: - resolution: {integrity: sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==} - engines: {node: '>= 14'} + agent-base@7.1.0: dependencies: debug: 4.3.4 transitivePeerDependencies: - supports-color - dev: true - /aggregate-error@3.1.0: - resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} - engines: {node: '>=8'} + aggregate-error@3.1.0: dependencies: clean-stack: 2.2.0 indent-string: 4.0.0 - dev: true - /aggregate-error@5.0.0: - resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==} - engines: {node: '>=18'} + aggregate-error@5.0.0: dependencies: clean-stack: 5.2.0 indent-string: 5.0.0 - dev: true - /ansi-escapes@6.2.0: - resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} - engines: {node: '>=14.16'} + ansi-escapes@6.2.0: dependencies: type-fest: 3.13.1 - dev: true - /ansi-regex@5.0.1: - resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} - engines: {node: '>=8'} - dev: true + ansi-regex@5.0.1: {} - /ansi-regex@6.0.1: - resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} - engines: {node: '>=12'} - dev: true + ansi-regex@6.0.1: {} - /ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} + ansi-styles@3.2.1: dependencies: color-convert: 1.9.3 - dev: true - /ansi-styles@4.3.0: - resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} - engines: {node: '>=8'} + ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - dev: true - /ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - dev: true + ansi-styles@5.2.0: {} - /ansi-styles@6.2.1: - resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} - engines: {node: '>=12'} - dev: true + ansi-styles@6.2.1: {} - /ansicolors@0.3.2: - resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==} - dev: true + ansicolors@0.3.2: {} - /anymatch@3.1.3: - resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} - engines: {node: '>= 8'} + anymatch@3.1.3: dependencies: normalize-path: 3.0.0 picomatch: 2.3.1 - dev: true - /arg@4.1.3: - resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - dev: true + arg@4.1.3: {} - /argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - dev: true + argparse@2.0.1: {} - /argv-formatter@1.0.0: - resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==} - dev: true + argv-formatter@1.0.0: {} - /array-ify@1.0.0: - resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} - dev: true + array-ify@1.0.0: {} - /asn1.js@5.4.1: - resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} + asn1.js@5.4.1: dependencies: bn.js: 4.12.0 inherits: 2.0.4 minimalistic-assert: 1.0.1 safer-buffer: 2.1.2 - dev: false - /async-hook-domain@4.0.1: - resolution: {integrity: sha512-bSktexGodAjfHWIrSrrqxqWzf1hWBZBpmPNZv+TYUMyWa2eoefFc6q6H1+KtdHYSz35lrhWdmXt/XK9wNEZvww==} - engines: {node: '>=16'} - dev: true + async-hook-domain@4.0.1: {} - /asynckit@0.4.0: - resolution: {integrity: sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==} - dev: true + asynckit@0.4.0: {} - /auto-bind@5.0.1: - resolution: {integrity: sha512-ooviqdwwgfIfNmDwo94wlshcdzfO64XV0Cg6oDsDYBJfITDz1EngD2z7DkbvCWn+XIMsIqW27sEVF6qcpJrRcg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + auto-bind@5.0.1: {} - /balanced-match@1.0.2: - resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} + balanced-match@1.0.2: {} - /before-after-hook@2.2.3: - resolution: {integrity: sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==} + before-after-hook@2.2.3: {} - /binary-extensions@2.2.0: - resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==} - engines: {node: '>=8'} - dev: true + binary-extensions@2.2.0: {} - /bn.js@4.12.0: - resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - dev: false + bn.js@4.12.0: {} - /bottleneck@2.19.5: - resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==} - dev: true + bottleneck@2.19.5: {} - /brace-expansion@1.1.11: - resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} + brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 concat-map: 0.0.1 - /brace-expansion@2.0.1: - resolution: {integrity: sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==} + brace-expansion@2.0.1: dependencies: balanced-match: 1.0.2 - dev: true - /braces@3.0.2: - resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} - engines: {node: '>=8'} + braces@3.0.2: dependencies: fill-range: 7.0.1 - dev: true - /builtins@5.0.1: - resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==} + builtins@5.0.1: dependencies: semver: 7.5.4 - dev: true - /c8@8.0.1: - resolution: {integrity: sha512-EINpopxZNH1mETuI0DzRA4MZpAUH+IFiRhnmFD3vFr3vdrgxqi3VfE3KL0AIL+zDq8rC9bZqwM/VDmmoe04y7w==} - engines: {node: '>=12'} - hasBin: true + c8@8.0.1: dependencies: '@bcoe/v8-coverage': 0.2.3 '@istanbuljs/schema': 0.1.3 @@ -1661,11 +3627,8 @@ packages: v8-to-istanbul: 9.1.3 yargs: 17.7.2 yargs-parser: 21.1.1 - dev: true - /cacache@18.0.0: - resolution: {integrity: sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==} - engines: {node: ^16.14.0 || >=18.0.0} + cacache@18.0.0: dependencies: '@npmcli/fs': 3.1.0 fs-minipass: 3.0.3 @@ -1679,51 +3642,30 @@ packages: ssri: 10.0.5 tar: 6.2.0 unique-filename: 3.0.0 - dev: true - /callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - dev: true + callsites@3.1.0: {} - /cardinal@2.1.1: - resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} - hasBin: true + cardinal@2.1.1: dependencies: ansicolors: 0.3.2 redeyed: 2.1.1 - dev: true - /chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 escape-string-regexp: 1.0.5 supports-color: 5.5.0 - dev: true - /chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} + chalk@4.1.2: dependencies: ansi-styles: 4.3.0 supports-color: 7.2.0 - dev: true - /chalk@5.3.0: - resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} - engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - dev: true + chalk@5.3.0: {} - /char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - dev: true + char-regex@1.0.2: {} - /chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} + chokidar@3.5.3: dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -1734,11 +3676,8 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 - dev: true - /chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} + chokidar@3.6.0: dependencies: anymatch: 3.1.3 braces: 3.0.2 @@ -1749,131 +3688,77 @@ packages: readdirp: 3.6.0 optionalDependencies: fsevents: 2.3.3 - dev: true - /chownr@2.0.0: - resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} - engines: {node: '>=10'} - dev: true + chownr@2.0.0: {} - /ci-info@3.9.0: - resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} - engines: {node: '>=8'} - dev: true + ci-info@3.9.0: {} - /clean-stack@2.2.0: - resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} - engines: {node: '>=6'} - dev: true + clean-stack@2.2.0: {} - /clean-stack@5.2.0: - resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==} - engines: {node: '>=14.16'} + clean-stack@5.2.0: dependencies: escape-string-regexp: 5.0.0 - dev: true - /cli-boxes@3.0.0: - resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} - engines: {node: '>=10'} - dev: true + cli-boxes@3.0.0: {} - /cli-cursor@4.0.0: - resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-cursor@4.0.0: dependencies: restore-cursor: 4.0.0 - dev: true - /cli-table3@0.6.3: - resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} - engines: {node: 10.* || >= 12.*} + cli-table3@0.6.3: dependencies: string-width: 4.2.3 optionalDependencies: '@colors/colors': 1.5.0 - dev: true - /cli-truncate@3.1.0: - resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-truncate@3.1.0: dependencies: slice-ansi: 5.0.0 string-width: 5.1.2 - dev: true - /cliui@8.0.1: - resolution: {integrity: sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==} - engines: {node: '>=12'} + cliui@8.0.1: dependencies: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - dev: true - /code-excerpt@4.0.0: - resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + code-excerpt@4.0.0: dependencies: convert-to-spaces: 2.0.1 - dev: true - /color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} + color-convert@1.9.3: dependencies: color-name: 1.1.3 - dev: true - /color-convert@2.0.1: - resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} - engines: {node: '>=7.0.0'} + color-convert@2.0.1: dependencies: color-name: 1.1.4 - dev: true - /color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - dev: true + color-name@1.1.3: {} - /color-name@1.1.4: - resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} - dev: true + color-name@1.1.4: {} - /combined-stream@1.0.8: - resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} - engines: {node: '>= 0.8'} + combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 - dev: true - /compare-func@2.0.0: - resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} + compare-func@2.0.0: dependencies: array-ify: 1.0.0 dot-prop: 5.3.0 - dev: true - /concat-map@0.0.1: - resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} + concat-map@0.0.1: {} - /config-chain@1.1.13: - resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} + config-chain@1.1.13: dependencies: ini: 1.3.8 proto-list: 1.2.4 - dev: true - /conventional-changelog-angular@7.0.0: - resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==} - engines: {node: '>=16'} + conventional-changelog-angular@7.0.0: dependencies: compare-func: 2.0.0 - dev: true - /conventional-changelog-writer@7.0.1: - resolution: {integrity: sha512-Uo+R9neH3r/foIvQ0MKcsXkX642hdm9odUp7TqgFS7BsalTcjzRlIfWZrZR1gbxOozKucaKt5KAbjW8J8xRSmA==} - engines: {node: '>=16'} - hasBin: true + conventional-changelog-writer@7.0.1: dependencies: conventional-commits-filter: 4.0.0 handlebars: 4.7.8 @@ -1881,227 +3766,115 @@ packages: meow: 12.1.1 semver: 7.5.4 split2: 4.2.0 - dev: true - /conventional-commits-filter@4.0.0: - resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==} - engines: {node: '>=16'} - dev: true + conventional-commits-filter@4.0.0: {} - /conventional-commits-parser@5.0.0: - resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==} - engines: {node: '>=16'} - hasBin: true + conventional-commits-parser@5.0.0: dependencies: JSONStream: 1.3.5 is-text-path: 2.0.0 meow: 12.1.1 split2: 4.2.0 - dev: true - /convert-source-map@2.0.0: - resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} - dev: true + convert-source-map@2.0.0: {} - /convert-to-spaces@2.0.1: - resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + convert-to-spaces@2.0.1: {} - /core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - dev: true + core-util-is@1.0.3: {} - /cosmiconfig@8.3.6(typescript@5.3.3): - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true + cosmiconfig@8.3.6(typescript@5.3.3): dependencies: import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 typescript: 5.3.3 - dev: true - /create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - dev: true + create-require@1.1.1: {} - /cross-env@7.0.3: - resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} - engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} - hasBin: true + cross-env@7.0.3: dependencies: cross-spawn: 7.0.3 - dev: true - /cross-spawn@7.0.3: - resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} - engines: {node: '>= 8'} + cross-spawn@7.0.3: dependencies: path-key: 3.1.1 shebang-command: 2.0.0 which: 2.0.2 - dev: true - /crypto-random-string@4.0.0: - resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} - engines: {node: '>=12'} + crypto-random-string@4.0.0: dependencies: type-fest: 1.4.0 - dev: true - /debug@4.3.4: - resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} - engines: {node: '>=6.0'} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true + debug@4.3.4: dependencies: ms: 2.1.2 - dev: true - /deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - dev: true + deep-extend@0.6.0: {} - /delayed-stream@1.0.0: - resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} - engines: {node: '>=0.4.0'} - dev: true + delayed-stream@1.0.0: {} - /deprecation@2.3.1: - resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} + deprecation@2.3.1: {} - /diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dev: true + diff-sequences@29.6.3: {} - /diff@4.0.2: - resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} - engines: {node: '>=0.3.1'} - dev: true + diff@4.0.2: {} - /diff@5.1.0: - resolution: {integrity: sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==} - engines: {node: '>=0.3.1'} - dev: true + diff@5.1.0: {} - /diff@5.2.0: - resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} - engines: {node: '>=0.3.1'} - dev: true + diff@5.2.0: {} - /dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} + dir-glob@3.0.1: dependencies: path-type: 4.0.0 - dev: true - /dot-prop@5.3.0: - resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} - engines: {node: '>=8'} + dot-prop@5.3.0: dependencies: is-obj: 2.0.0 - dev: true - /duplexer2@0.1.4: - resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} + duplexer2@0.1.4: dependencies: readable-stream: 2.3.8 - dev: true - /eastasianwidth@0.2.0: - resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - dev: true + eastasianwidth@0.2.0: {} - /emoji-regex@8.0.0: - resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} - dev: true + emoji-regex@8.0.0: {} - /emoji-regex@9.2.2: - resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - dev: true + emoji-regex@9.2.2: {} - /emojilib@2.4.0: - resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} - dev: true + emojilib@2.4.0: {} - /encoding@0.1.13: - resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} - requiresBuild: true + encoding@0.1.13: dependencies: iconv-lite: 0.6.3 - dev: true optional: true - /env-ci@10.0.0: - resolution: {integrity: sha512-U4xcd/utDYFgMh0yWj07R1H6L5fwhVbmxBCpnL0DbVSDZVnsC82HONw0wxtxNkIAcua3KtbomQvIk5xFZGAQJw==} - engines: {node: ^18.17 || >=20.6.1} + env-ci@10.0.0: dependencies: execa: 8.0.1 java-properties: 1.0.2 - dev: true - /env-paths@2.2.1: - resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} - engines: {node: '>=6'} - dev: true + env-paths@2.2.1: {} - /err-code@2.0.3: - resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} - dev: true + err-code@2.0.3: {} - /error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} + error-ex@1.3.2: dependencies: is-arrayish: 0.2.1 - dev: true - /escalade@3.1.1: - resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} - engines: {node: '>=6'} - dev: true + escalade@3.1.1: {} - /escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - dev: true + escape-string-regexp@1.0.5: {} - /escape-string-regexp@2.0.0: - resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} - engines: {node: '>=8'} - dev: true + escape-string-regexp@2.0.0: {} - /escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - dev: true + escape-string-regexp@5.0.0: {} - /esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - dev: true + esprima@4.0.1: {} - /events-to-array@2.0.3: - resolution: {integrity: sha512-f/qE2gImHRa4Cp2y1stEOSgw8wTFyUdVJX7G//bMwbaV9JqISFxg99NbmVQeP7YLnDUZ2un851jlaDrlpmGehQ==} - engines: {node: '>=12'} - dev: true + events-to-array@2.0.3: {} - /execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} + execa@5.1.1: dependencies: cross-spawn: 7.0.3 get-stream: 6.0.1 @@ -2112,11 +3885,8 @@ packages: onetime: 5.1.2 signal-exit: 3.0.7 strip-final-newline: 2.0.0 - dev: true - /execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} + execa@8.0.1: dependencies: cross-spawn: 7.0.3 get-stream: 8.0.1 @@ -2127,178 +3897,103 @@ packages: onetime: 6.0.0 signal-exit: 4.1.0 strip-final-newline: 3.0.0 - dev: true - /exponential-backoff@3.1.1: - resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} - dev: true + exponential-backoff@3.1.1: {} - /fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} + fast-glob@3.3.2: dependencies: '@nodelib/fs.stat': 2.0.5 '@nodelib/fs.walk': 1.2.8 glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 - dev: true - /fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} + fastq@1.15.0: dependencies: reusify: 1.0.4 - dev: true - /figures@2.0.0: - resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==} - engines: {node: '>=4'} + figures@2.0.0: dependencies: escape-string-regexp: 1.0.5 - dev: true - /figures@6.0.1: - resolution: {integrity: sha512-0oY/olScYD4IhQ8u//gCPA4F3mlTn2dacYmiDm/mbDQvpmLjV4uH+zhsQ5IyXRyvqkvtUkXkNdGvg5OFJTCsuQ==} - engines: {node: '>=18'} + figures@6.0.1: dependencies: is-unicode-supported: 2.0.0 - dev: true - /fill-range@7.0.1: - resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} - engines: {node: '>=8'} + fill-range@7.0.1: dependencies: to-regex-range: 5.0.1 - dev: true - /find-up-simple@1.0.0: - resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} - engines: {node: '>=18'} - dev: true + find-up-simple@1.0.0: {} - /find-up@2.1.0: - resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==} - engines: {node: '>=4'} + find-up@2.1.0: dependencies: locate-path: 2.0.0 - dev: true - /find-up@5.0.0: - resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} - engines: {node: '>=10'} + find-up@5.0.0: dependencies: locate-path: 6.0.0 path-exists: 4.0.0 - dev: true - /find-versions@5.1.0: - resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==} - engines: {node: '>=12'} + find-versions@5.1.0: dependencies: semver-regex: 4.0.5 - dev: true - /foreground-child@2.0.0: - resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} - engines: {node: '>=8.0.0'} + foreground-child@2.0.0: dependencies: cross-spawn: 7.0.3 signal-exit: 3.0.7 - dev: true - /foreground-child@3.1.1: - resolution: {integrity: sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==} - engines: {node: '>=14'} + foreground-child@3.1.1: dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 - dev: true - /form-data@4.0.0: - resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} - engines: {node: '>= 6'} + form-data@4.0.0: dependencies: asynckit: 0.4.0 combined-stream: 1.0.8 mime-types: 2.1.35 - dev: true - /from2@2.3.0: - resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} + from2@2.3.0: dependencies: inherits: 2.0.4 readable-stream: 2.3.8 - dev: true - /fromentries@1.3.2: - resolution: {integrity: sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==} - dev: true + fromentries@1.3.2: {} - /fs-extra@11.1.1: - resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} - engines: {node: '>=14.14'} + fs-extra@11.1.1: dependencies: graceful-fs: 4.2.11 jsonfile: 6.1.0 universalify: 2.0.1 - dev: true - /fs-minipass@2.1.0: - resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} - engines: {node: '>= 8'} + fs-minipass@2.1.0: dependencies: minipass: 3.3.6 - dev: true - /fs-minipass@3.0.3: - resolution: {integrity: sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + fs-minipass@3.0.3: dependencies: minipass: 7.0.4 - dev: true - - /fs.realpath@1.0.0: - resolution: {integrity: sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==} - dev: true - - /fsevents@2.3.3: - resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} - engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} - os: [darwin] - requiresBuild: true - dev: true + + fs.realpath@1.0.0: {} + + fsevents@2.3.3: optional: true - /function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - dev: true + function-bind@1.1.2: {} - /function-loop@4.0.0: - resolution: {integrity: sha512-f34iQBedYF3XcI93uewZZOnyscDragxgTK/eTvVB74k3fCD0ZorOi5BV9GS4M8rz/JoNi0Kl3qX5Y9MH3S/CLQ==} - dev: true + function-loop@4.0.0: {} - /get-caller-file@2.0.5: - resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} - engines: {node: 6.* || 8.* || >= 10.*} - dev: true + get-caller-file@2.0.5: {} - /get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - dev: true + get-stream@6.0.1: {} - /get-stream@7.0.1: - resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==} - engines: {node: '>=16'} - dev: true + get-stream@7.0.1: {} - /get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - dev: true + get-stream@8.0.1: {} - /git-log-parser@1.2.0: - resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==} + git-log-parser@1.2.0: dependencies: argv-formatter: 1.0.0 spawn-error-forwarder: 1.0.0 @@ -2306,29 +4001,20 @@ packages: stream-combiner2: 1.1.1 through2: 2.0.5 traverse: 0.6.7 - dev: true - /glob-parent@5.1.2: - resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} - engines: {node: '>= 6'} + glob-parent@5.1.2: dependencies: is-glob: 4.0.3 - dev: true - /glob@10.3.10: - resolution: {integrity: sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true + glob@10.3.10: dependencies: foreground-child: 3.1.1 jackspeak: 2.3.6 minimatch: 9.0.3 minipass: 7.0.4 path-scurry: 1.10.1 - dev: true - /glob@7.2.3: - resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} + glob@7.2.3: dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 @@ -2336,22 +4022,16 @@ packages: minimatch: 3.1.2 once: 1.4.0 path-is-absolute: 1.0.1 - dev: true - /glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} + glob@8.1.0: dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 minimatch: 5.1.6 once: 1.4.0 - dev: true - /globby@14.0.0: - resolution: {integrity: sha512-/1WM/LNHRAOH9lZta77uGbq0dAEQM+XjNesWwhlERDVenqothRbnzTrL3/LrIoEPPjeUHC3vrS6TwoyxeHs7MQ==} - engines: {node: '>=18'} + globby@14.0.0: dependencies: '@sindresorhus/merge-streams': 1.0.0 fast-glob: 3.3.2 @@ -2359,20 +4039,12 @@ packages: path-type: 5.0.0 slash: 5.1.0 unicorn-magic: 0.1.0 - dev: true - /graceful-fs@4.2.10: - resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} - dev: true + graceful-fs@4.2.10: {} - /graceful-fs@4.2.11: - resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - dev: true + graceful-fs@4.2.11: {} - /handlebars@4.7.8: - resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} - engines: {node: '>=0.4.7'} - hasBin: true + handlebars@4.7.8: dependencies: minimist: 1.2.8 neo-async: 2.6.2 @@ -2380,166 +4052,85 @@ packages: wordwrap: 1.0.0 optionalDependencies: uglify-js: 3.17.4 - dev: true - /has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - dev: true + has-flag@3.0.0: {} - /has-flag@4.0.0: - resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} - engines: {node: '>=8'} - dev: true + has-flag@4.0.0: {} - /hasown@2.0.0: - resolution: {integrity: sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==} - engines: {node: '>= 0.4'} + hasown@2.0.0: dependencies: function-bind: 1.1.2 - dev: true - /hook-std@2.0.0: - resolution: {integrity: sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==} - engines: {node: '>=8'} - dev: false + hook-std@2.0.0: {} - /hook-std@3.0.0: - resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + hook-std@3.0.0: {} - /hosted-git-info@7.0.1: - resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==} - engines: {node: ^16.14.0 || >=18.0.0} + hosted-git-info@7.0.1: dependencies: lru-cache: 10.0.2 - dev: true - /html-escaper@2.0.2: - resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} - dev: true + html-escaper@2.0.2: {} - /http-cache-semantics@4.1.1: - resolution: {integrity: sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==} - dev: true + http-cache-semantics@4.1.1: {} - /http-proxy-agent@7.0.0: - resolution: {integrity: sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==} - engines: {node: '>= 14'} + http-proxy-agent@7.0.0: dependencies: agent-base: 7.1.0 debug: 4.3.4 transitivePeerDependencies: - supports-color - dev: true - /https-proxy-agent@7.0.2: - resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} - engines: {node: '>= 14'} + https-proxy-agent@7.0.2: dependencies: agent-base: 7.1.0 debug: 4.3.4 transitivePeerDependencies: - supports-color - dev: true - /human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - dev: true + human-signals@2.1.0: {} - /human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - dev: true + human-signals@5.0.0: {} - /iconv-lite@0.6.3: - resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} - engines: {node: '>=0.10.0'} - requiresBuild: true + iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 - dev: true optional: true - /ignore-walk@6.0.3: - resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + ignore-walk@6.0.3: dependencies: minimatch: 9.0.3 - dev: true - /ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - dev: true + ignore@5.2.4: {} - /import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} + import-fresh@3.3.0: dependencies: parent-module: 1.0.1 resolve-from: 4.0.0 - dev: true - /import-from-esm@1.2.1: - resolution: {integrity: sha512-Nly5Ab75rWZmOwtMa0B0NQNnHGcHOQ2zkU/bVENwK2lbPq+kamPDqNKNJ0hF7w7lR/ETD5nGgJq0XbofsZpYCA==} - engines: {node: '>=16.20'} + import-from-esm@1.2.1: dependencies: import-meta-resolve: 4.0.0 - dev: true - /import-meta-resolve@4.0.0: - resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==} - dev: true + import-meta-resolve@4.0.0: {} - /imurmurhash@0.1.4: - resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} - engines: {node: '>=0.8.19'} - dev: true + imurmurhash@0.1.4: {} - /indent-string@4.0.0: - resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} - engines: {node: '>=8'} - dev: true + indent-string@4.0.0: {} - /indent-string@5.0.0: - resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} - engines: {node: '>=12'} - dev: true + indent-string@5.0.0: {} - /index-to-position@0.1.2: - resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==} - engines: {node: '>=18'} - dev: true + index-to-position@0.1.2: {} - /inflight@1.0.6: - resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} + inflight@1.0.6: dependencies: once: 1.4.0 wrappy: 1.0.2 - dev: true - /inherits@2.0.4: - resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + inherits@2.0.4: {} - /ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - dev: true + ini@1.3.8: {} - /ink@4.4.1(react@18.2.0): - resolution: {integrity: sha512-rXckvqPBB0Krifk5rn/5LvQGmyXwCUpBfmTwbkQNBY9JY8RSl3b8OftBNEYxg4+SWUhEKcPifgope28uL9inlA==} - engines: {node: '>=14.16'} - peerDependencies: - '@types/react': '>=18.0.0' - react: '>=18.0.0' - react-devtools-core: ^4.19.1 - peerDependenciesMeta: - '@types/react': - optional: true - react-devtools-core: - optional: true + ink@4.4.1(react@18.2.0): dependencies: '@alcalzone/ansi-tokenize': 0.1.3 ansi-escapes: 6.2.0 @@ -2570,344 +4161,191 @@ packages: transitivePeerDependencies: - bufferutil - utf-8-validate - dev: true - /into-stream@7.0.0: - resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==} - engines: {node: '>=12'} + into-stream@7.0.0: dependencies: from2: 2.3.0 p-is-promise: 3.0.0 - dev: true - /ip@2.0.1: - resolution: {integrity: sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==} - dev: true + ip@2.0.1: {} - /is-actual-promise@1.0.1: - resolution: {integrity: sha512-PlsL4tNv62lx5yN2HSqaRSTgIpUAPW7U6+crVB8HfWm5161rZpeqWbl0ZSqH2MAfRKXWSZVPRNbE/r8qPcb13g==} + is-actual-promise@1.0.1: dependencies: tshy: 1.14.0 - dev: true - /is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - dev: true + is-arrayish@0.2.1: {} - /is-binary-path@2.1.0: - resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} - engines: {node: '>=8'} + is-binary-path@2.1.0: dependencies: binary-extensions: 2.2.0 - dev: true - /is-ci@3.0.1: - resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==} - hasBin: true + is-ci@3.0.1: dependencies: ci-info: 3.9.0 - dev: true - /is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + is-core-module@2.13.1: dependencies: hasown: 2.0.0 - dev: true - /is-extglob@2.1.1: - resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} - engines: {node: '>=0.10.0'} - dev: true + is-extglob@2.1.1: {} - /is-fullwidth-code-point@3.0.0: - resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} - engines: {node: '>=8'} - dev: true + is-fullwidth-code-point@3.0.0: {} - /is-fullwidth-code-point@4.0.0: - resolution: {integrity: sha512-O4L094N2/dZ7xqVdrXhh9r1KODPJpFms8B5sGdJLPy664AgvXsreZUyCQQNItZRDlYug4xStLjNp/sz3HvBowQ==} - engines: {node: '>=12'} - dev: true + is-fullwidth-code-point@4.0.0: {} - /is-glob@4.0.3: - resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==} - engines: {node: '>=0.10.0'} + is-glob@4.0.3: dependencies: is-extglob: 2.1.1 - dev: true - /is-lambda@1.0.1: - resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} - dev: true + is-lambda@1.0.1: {} - /is-lower-case@2.0.2: - resolution: {integrity: sha512-bVcMJy4X5Og6VZfdOZstSexlEy20Sr0k/p/b2IlQJlfdKAQuMpiv5w2Ccxb8sKdRUNAG1PnHVHjFSdRDVS6NlQ==} + is-lower-case@2.0.2: dependencies: tslib: 2.6.2 - dev: true - /is-number@7.0.0: - resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} - engines: {node: '>=0.12.0'} - dev: true + is-number@7.0.0: {} - /is-obj@2.0.0: - resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} - engines: {node: '>=8'} - dev: true + is-obj@2.0.0: {} - /is-plain-object@5.0.0: - resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} - engines: {node: '>=0.10.0'} + is-plain-object@5.0.0: {} - /is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - dev: true + is-stream@2.0.1: {} - /is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + is-stream@3.0.0: {} - /is-text-path@2.0.0: - resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==} - engines: {node: '>=8'} + is-text-path@2.0.0: dependencies: text-extensions: 2.4.0 - dev: true - /is-unicode-supported@2.0.0: - resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} - engines: {node: '>=18'} - dev: true + is-unicode-supported@2.0.0: {} - /is-upper-case@2.0.2: - resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} + is-upper-case@2.0.2: dependencies: tslib: 2.6.2 - dev: true - /isarray@0.0.1: - resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - dev: true + isarray@0.0.1: {} - /isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - dev: true + isarray@1.0.0: {} - /isexe@2.0.0: - resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} - dev: true + isexe@2.0.0: {} - /isexe@3.1.1: - resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} - engines: {node: '>=16'} - dev: true + isexe@3.1.1: {} - /issue-parser@6.0.0: - resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==} - engines: {node: '>=10.13'} + issue-parser@6.0.0: dependencies: lodash.capitalize: 4.2.1 lodash.escaperegexp: 4.1.2 lodash.isplainobject: 4.0.6 lodash.isstring: 4.0.1 lodash.uniqby: 4.7.0 - dev: true - /istanbul-lib-coverage@3.2.2: - resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} - engines: {node: '>=8'} - dev: true + istanbul-lib-coverage@3.2.2: {} - /istanbul-lib-report@3.0.1: - resolution: {integrity: sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==} - engines: {node: '>=10'} + istanbul-lib-report@3.0.1: dependencies: istanbul-lib-coverage: 3.2.2 make-dir: 4.0.0 supports-color: 7.2.0 - dev: true - /istanbul-reports@3.1.6: - resolution: {integrity: sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg==} - engines: {node: '>=8'} + istanbul-reports@3.1.6: dependencies: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - dev: true - /jackspeak@2.3.6: - resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} - engines: {node: '>=14'} + jackspeak@2.3.6: dependencies: '@isaacs/cliui': 8.0.2 optionalDependencies: '@pkgjs/parseargs': 0.11.0 - dev: true - /java-properties@1.0.2: - resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} - engines: {node: '>= 0.6.0'} - dev: true + java-properties@1.0.2: {} - /jest-diff@29.7.0: - resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + jest-diff@29.7.0: dependencies: chalk: 4.1.2 diff-sequences: 29.6.3 jest-get-type: 29.6.3 pretty-format: 29.7.0 - dev: true - /jest-get-type@29.6.3: - resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - dev: true + jest-get-type@29.6.3: {} - /js-tokens@4.0.0: - resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - dev: true + js-tokens@4.0.0: {} - /js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true + js-yaml@4.1.0: dependencies: argparse: 2.0.1 - dev: true - /json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - dev: true + json-parse-better-errors@1.0.2: {} - /json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - dev: true + json-parse-even-better-errors@2.3.1: {} - /json-parse-even-better-errors@3.0.0: - resolution: {integrity: sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + json-parse-even-better-errors@3.0.0: {} - /json-stringify-safe@5.0.1: - resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} - dev: true + json-stringify-safe@5.0.1: {} - /jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonfile@6.1.0: dependencies: universalify: 2.0.1 optionalDependencies: graceful-fs: 4.2.11 - dev: true - /jsonparse@1.3.1: - resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} - engines: {'0': node >= 0.2.0} - dev: true + jsonparse@1.3.1: {} - /just-extend@4.2.1: - resolution: {integrity: sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==} - dev: true + just-extend@4.2.1: {} - /lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - dev: true + lines-and-columns@1.2.4: {} - /load-json-file@4.0.0: - resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} - engines: {node: '>=4'} + load-json-file@4.0.0: dependencies: graceful-fs: 4.2.11 parse-json: 4.0.0 pify: 3.0.0 strip-bom: 3.0.0 - dev: true - /locate-path@2.0.0: - resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} - engines: {node: '>=4'} + locate-path@2.0.0: dependencies: p-locate: 2.0.0 path-exists: 3.0.0 - dev: true - /locate-path@6.0.0: - resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} - engines: {node: '>=10'} + locate-path@6.0.0: dependencies: p-locate: 5.0.0 - dev: true - /lodash-es@4.17.21: - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} - dev: true + lodash-es@4.17.21: {} - /lodash.capitalize@4.2.1: - resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==} - dev: true + lodash.capitalize@4.2.1: {} - /lodash.escaperegexp@4.1.2: - resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==} - dev: true + lodash.escaperegexp@4.1.2: {} - /lodash.get@4.4.2: - resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} - dev: true + lodash.get@4.4.2: {} - /lodash.isplainobject@4.0.6: - resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} - dev: true + lodash.isplainobject@4.0.6: {} - /lodash.isstring@4.0.1: - resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} - dev: true + lodash.isstring@4.0.1: {} - /lodash.uniqby@4.7.0: - resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} - dev: true + lodash.uniqby@4.7.0: {} - /lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: true + lodash@4.17.21: {} - /loose-envify@1.4.0: - resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} - hasBin: true + loose-envify@1.4.0: dependencies: js-tokens: 4.0.0 - dev: true - /lru-cache@10.0.2: - resolution: {integrity: sha512-Yj9mA8fPiVgOUpByoTZO5pNrcl5Yk37FcSHsUINpAsaBIEZIuqcCclDZJCVxqQShDsmYX8QG63svJiTbOATZwg==} - engines: {node: 14 || >=16.14} + lru-cache@10.0.2: dependencies: semver: 7.5.4 - dev: true - /lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} + lru-cache@6.0.0: dependencies: yallist: 4.0.0 - dev: true - /make-dir@4.0.0: - resolution: {integrity: sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==} - engines: {node: '>=10'} + make-dir@4.0.0: dependencies: semver: 7.5.4 - dev: true - /make-error@1.3.6: - resolution: {integrity: sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==} - dev: true + make-error@1.3.6: {} - /make-fetch-happen@13.0.0: - resolution: {integrity: sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==} - engines: {node: ^16.14.0 || >=18.0.0} + make-fetch-happen@13.0.0: dependencies: '@npmcli/agent': 2.2.0 cacache: 18.0.0 @@ -2922,13 +4360,8 @@ packages: ssri: 10.0.5 transitivePeerDependencies: - supports-color - dev: true - /marked-terminal@6.1.0(marked@9.1.6): - resolution: {integrity: sha512-QaCSF6NV82oo6K0szEnmc65ooDeW0T/Adcyf0fcW+Hto2GT1VADFg8dn1zaeHqzj65fqDH1hMNChGNRaC/lbkA==} - engines: {node: '>=16.0.0'} - peerDependencies: - marked: '>=1 <11' + marked-terminal@6.1.0(marked@9.1.6): dependencies: ansi-escapes: 6.2.0 cardinal: 2.1.1 @@ -2937,248 +4370,136 @@ packages: marked: 9.1.6 node-emoji: 2.1.0 supports-hyperlinks: 3.0.0 - dev: true - /marked@9.1.6: - resolution: {integrity: sha512-jcByLnIFkd5gSXZmjNvS1TlmRhCXZjIzHYlaGkPlLIekG55JDR2Z4va9tZwCiP+/RDERiNhMOFu01xd6O5ct1Q==} - engines: {node: '>= 16'} - hasBin: true - dev: true + marked@9.1.6: {} - /meow@12.1.1: - resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==} - engines: {node: '>=16.10'} - dev: true + meow@12.1.1: {} - /merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - dev: true + merge-stream@2.0.0: {} - /merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - dev: true + merge2@1.4.1: {} - /micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} + micromatch@4.0.5: dependencies: braces: 3.0.2 picomatch: 2.3.1 - dev: true - /mime-db@1.52.0: - resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} - engines: {node: '>= 0.6'} - dev: true + mime-db@1.52.0: {} - /mime-types@2.1.35: - resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} - engines: {node: '>= 0.6'} + mime-types@2.1.35: dependencies: mime-db: 1.52.0 - dev: true - /mime@4.0.0: - resolution: {integrity: sha512-pzhgdeqU5pJ9t5WK9m4RT4GgGWqYJylxUf62Yb9datXRwdcw5MjiD1BYI5evF8AgTXN9gtKX3CFLvCUL5fAhEA==} - engines: {node: '>=16'} - hasBin: true - dev: true + mime@4.0.0: {} - /mimic-fn@2.1.0: - resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} - engines: {node: '>=6'} - dev: true + mimic-fn@2.1.0: {} - /mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - dev: true + mimic-fn@4.0.0: {} - /minimalistic-assert@1.0.1: - resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} - dev: false + minimalistic-assert@1.0.1: {} - /minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 - /minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} + minimatch@5.1.6: dependencies: brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.3: - resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} - engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.3: dependencies: brace-expansion: 2.0.1 - dev: true - /minimatch@9.0.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} - engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.4: dependencies: brace-expansion: 2.0.1 - dev: true - /minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - dev: true + minimist@1.2.8: {} - /minipass-collect@1.0.2: - resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} - engines: {node: '>= 8'} + minipass-collect@1.0.2: dependencies: minipass: 3.3.6 - dev: true - /minipass-fetch@3.0.4: - resolution: {integrity: sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + minipass-fetch@3.0.4: dependencies: minipass: 7.0.4 minipass-sized: 1.0.3 minizlib: 2.1.2 optionalDependencies: encoding: 0.1.13 - dev: true - /minipass-flush@1.0.5: - resolution: {integrity: sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==} - engines: {node: '>= 8'} + minipass-flush@1.0.5: dependencies: minipass: 3.3.6 - dev: true - /minipass-json-stream@1.0.1: - resolution: {integrity: sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==} + minipass-json-stream@1.0.1: dependencies: jsonparse: 1.3.1 minipass: 3.3.6 - dev: true - /minipass-pipeline@1.2.4: - resolution: {integrity: sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==} - engines: {node: '>=8'} + minipass-pipeline@1.2.4: dependencies: minipass: 3.3.6 - dev: true - /minipass-sized@1.0.3: - resolution: {integrity: sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==} - engines: {node: '>=8'} + minipass-sized@1.0.3: dependencies: minipass: 3.3.6 - dev: true - /minipass@3.3.6: - resolution: {integrity: sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==} - engines: {node: '>=8'} + minipass@3.3.6: dependencies: yallist: 4.0.0 - dev: true - /minipass@5.0.0: - resolution: {integrity: sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==} - engines: {node: '>=8'} - dev: true + minipass@5.0.0: {} - /minipass@7.0.4: - resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} - engines: {node: '>=16 || 14 >=14.17'} - dev: true + minipass@7.0.4: {} - /minizlib@2.1.2: - resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} - engines: {node: '>= 8'} + minizlib@2.1.2: dependencies: minipass: 3.3.6 yallist: 4.0.0 - dev: true - /mkdirp@1.0.4: - resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} - engines: {node: '>=10'} - hasBin: true - dev: true + mkdirp@1.0.4: {} - /mkdirp@3.0.1: - resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} - engines: {node: '>=10'} - hasBin: true - dev: true + mkdirp@3.0.1: {} - /ms@2.1.2: - resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} - dev: true + ms@2.1.2: {} - /ms@2.1.3: - resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - dev: true + ms@2.1.3: {} - /negotiator@0.6.3: - resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} - engines: {node: '>= 0.6'} - dev: true + negotiator@0.6.3: {} - /neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - dev: true + neo-async@2.6.2: {} - /nerf-dart@1.0.0: - resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==} - dev: true + nerf-dart@1.0.0: {} - /nise@5.1.5: - resolution: {integrity: sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==} + nise@5.1.5: dependencies: '@sinonjs/commons': 2.0.0 '@sinonjs/fake-timers': 10.3.0 '@sinonjs/text-encoding': 0.7.2 just-extend: 4.2.1 path-to-regexp: 1.8.0 - dev: true - /nock@13.4.0: - resolution: {integrity: sha512-W8NVHjO/LCTNA64yxAPHV/K47LpGYcVzgKd3Q0n6owhwvD0Dgoterc25R4rnZbckJEb6Loxz1f5QMuJpJnbSyQ==} - engines: {node: '>= 10.13'} + nock@13.4.0: dependencies: debug: 4.3.4 json-stringify-safe: 5.0.1 propagate: 2.0.1 transitivePeerDependencies: - supports-color - dev: true - /node-emoji@2.1.0: - resolution: {integrity: sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==} + node-emoji@2.1.0: dependencies: '@sindresorhus/is': 3.1.2 char-regex: 1.0.2 emojilib: 2.4.0 skin-tone: 2.0.0 - dev: true - /node-fetch@2.7.0: - resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true + node-fetch@2.7.0: dependencies: whatwg-url: 5.0.0 - dev: false - /node-gyp@10.0.1: - resolution: {integrity: sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==} - engines: {node: ^16.14.0 || >=18.0.0} - hasBin: true + node-gyp@10.0.1: dependencies: env-paths: 2.2.1 exponential-backoff: 3.1.1 @@ -3192,85 +4513,51 @@ packages: which: 4.0.0 transitivePeerDependencies: - supports-color - dev: true - /nopt@7.2.0: - resolution: {integrity: sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - hasBin: true + nopt@7.2.0: dependencies: abbrev: 2.0.0 - dev: true - /normalize-package-data@6.0.0: - resolution: {integrity: sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==} - engines: {node: ^16.14.0 || >=18.0.0} + normalize-package-data@6.0.0: dependencies: hosted-git-info: 7.0.1 is-core-module: 2.13.1 semver: 7.5.4 validate-npm-package-license: 3.0.4 - dev: true - /normalize-path@3.0.0: - resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} - engines: {node: '>=0.10.0'} - dev: true + normalize-path@3.0.0: {} - /normalize-url@8.0.0: - resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} - engines: {node: '>=14.16'} - dev: true + normalize-url@8.0.0: {} - /npm-bundled@3.0.0: - resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + npm-bundled@3.0.0: dependencies: npm-normalize-package-bin: 3.0.1 - dev: true - /npm-install-checks@6.3.0: - resolution: {integrity: sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + npm-install-checks@6.3.0: dependencies: semver: 7.5.4 - dev: true - /npm-normalize-package-bin@3.0.1: - resolution: {integrity: sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + npm-normalize-package-bin@3.0.1: {} - /npm-package-arg@11.0.1: - resolution: {integrity: sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==} - engines: {node: ^16.14.0 || >=18.0.0} + npm-package-arg@11.0.1: dependencies: hosted-git-info: 7.0.1 proc-log: 3.0.0 semver: 7.5.4 validate-npm-package-name: 5.0.0 - dev: true - /npm-packlist@8.0.0: - resolution: {integrity: sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + npm-packlist@8.0.0: dependencies: ignore-walk: 6.0.3 - dev: true - /npm-pick-manifest@9.0.0: - resolution: {integrity: sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==} - engines: {node: ^16.14.0 || >=18.0.0} + npm-pick-manifest@9.0.0: dependencies: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.1 semver: 7.5.4 - dev: true - /npm-registry-fetch@16.1.0: - resolution: {integrity: sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==} - engines: {node: ^16.14.0 || >=18.0.0} + npm-registry-fetch@16.1.0: dependencies: make-fetch-happen: 13.0.0 minipass: 7.0.4 @@ -3281,207 +4568,72 @@ packages: proc-log: 3.0.0 transitivePeerDependencies: - supports-color - dev: true - /npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} + npm-run-path@4.0.1: dependencies: path-key: 3.1.1 - dev: true - /npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + npm-run-path@5.1.0: dependencies: path-key: 4.0.0 - dev: true - /npm@10.2.3: - resolution: {integrity: sha512-GbUui/rHTl0mW8HhJSn4A0Xg89yCR3I9otgJT1i0z1QBPOVlgbh6rlcUTpHT8Gut9O1SJjWRUU0nEcAymhG2tQ==} - engines: {node: ^18.17.0 || >=20.5.0} - hasBin: true - dev: true - bundledDependencies: - - '@isaacs/string-locale-compare' - - '@npmcli/arborist' - - '@npmcli/config' - - '@npmcli/fs' - - '@npmcli/map-workspaces' - - '@npmcli/package-json' - - '@npmcli/promise-spawn' - - '@npmcli/run-script' - - '@sigstore/tuf' - - abbrev - - archy - - cacache - - chalk - - ci-info - - cli-columns - - cli-table3 - - columnify - - fastest-levenshtein - - fs-minipass - - glob - - graceful-fs - - hosted-git-info - - ini - - init-package-json - - is-cidr - - json-parse-even-better-errors - - libnpmaccess - - libnpmdiff - - libnpmexec - - libnpmfund - - libnpmhook - - libnpmorg - - libnpmpack - - libnpmpublish - - libnpmsearch - - libnpmteam - - libnpmversion - - make-fetch-happen - - minimatch - - minipass - - minipass-pipeline - - ms - - node-gyp - - nopt - - normalize-package-data - - npm-audit-report - - npm-install-checks - - npm-package-arg - - npm-pick-manifest - - npm-profile - - npm-registry-fetch - - npm-user-validate - - npmlog - - p-map - - pacote - - parse-conflict-json - - proc-log - - qrcode-terminal - - read - - semver - - spdx-expression-parse - - ssri - - strip-ansi - - supports-color - - tar - - text-table - - tiny-relative-date - - treeverse - - validate-npm-package-name - - which - - write-file-atomic + npm@10.2.3: {} - /once@1.4.0: - resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} + once@1.4.0: dependencies: wrappy: 1.0.2 - /onetime@5.1.2: - resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} - engines: {node: '>=6'} + onetime@5.1.2: dependencies: mimic-fn: 2.1.0 - dev: true - /onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} + onetime@6.0.0: dependencies: mimic-fn: 4.0.0 - dev: true - /opener@1.5.2: - resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} - hasBin: true - dev: true + opener@1.5.2: {} - /openpgp@5.11.0: - resolution: {integrity: sha512-hytHsxIPtRhuh6uAmoBUThHSwHSX3imLu7x4453T+xkVqIw49rl22MRD4KQIAQdCDoVdouejzYgcuLmMA/2OAA==} - engines: {node: '>= 8.0.0'} + openpgp@5.11.0: dependencies: asn1.js: 5.4.1 - dev: false - /p-each-series@3.0.0: - resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==} - engines: {node: '>=12'} - dev: true + p-each-series@3.0.0: {} - /p-filter@4.1.0: - resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==} - engines: {node: '>=18'} + p-filter@4.1.0: dependencies: p-map: 7.0.1 - dev: true - /p-is-promise@3.0.0: - resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==} - engines: {node: '>=8'} - dev: true + p-is-promise@3.0.0: {} - /p-limit@1.3.0: - resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} - engines: {node: '>=4'} + p-limit@1.3.0: dependencies: p-try: 1.0.0 - dev: true - /p-limit@3.1.0: - resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} - engines: {node: '>=10'} + p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 - dev: true - /p-locate@2.0.0: - resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} - engines: {node: '>=4'} + p-locate@2.0.0: dependencies: p-limit: 1.3.0 - dev: true - /p-locate@5.0.0: - resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} - engines: {node: '>=10'} + p-locate@5.0.0: dependencies: p-limit: 3.1.0 - dev: true - /p-map@4.0.0: - resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} - engines: {node: '>=10'} + p-map@4.0.0: dependencies: aggregate-error: 3.1.0 - dev: true - /p-map@7.0.1: - resolution: {integrity: sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==} - engines: {node: '>=18'} - dev: true + p-map@7.0.1: {} - /p-reduce@2.1.0: - resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==} - engines: {node: '>=8'} - dev: true + p-reduce@2.1.0: {} - /p-reduce@3.0.0: - resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==} - engines: {node: '>=12'} - dev: true + p-reduce@3.0.0: {} - /p-try@1.0.0: - resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==} - engines: {node: '>=4'} - dev: true + p-try@1.0.0: {} - /pacote@17.0.4: - resolution: {integrity: sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==} - engines: {node: ^16.14.0 || >=18.0.0} - hasBin: true + pacote@17.0.4: dependencies: '@npmcli/git': 5.0.3 '@npmcli/installed-package-contents': 2.0.2 @@ -3504,299 +4656,166 @@ packages: transitivePeerDependencies: - bluebird - supports-color - dev: true - /parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} + parent-module@1.0.1: dependencies: callsites: 3.1.0 - dev: true - /parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} + parse-json@4.0.0: dependencies: error-ex: 1.3.2 json-parse-better-errors: 1.0.2 - dev: true - /parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} + parse-json@5.2.0: dependencies: '@babel/code-frame': 7.22.13 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 - dev: true - /parse-json@8.0.1: - resolution: {integrity: sha512-soKUg/q/8bcfuF3+plsbYldE74cVEVEPSC1BUPIGTaX1byXdz6Fo+CVYBdH0jj/5xWsFrNRksl11QkBgHqPQeQ==} - engines: {node: '>=18'} + parse-json@8.0.1: dependencies: '@babel/code-frame': 7.22.13 index-to-position: 0.1.2 json-parse-even-better-errors: 3.0.0 type-fest: 4.7.1 - dev: true - /patch-console@2.0.0: - resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + patch-console@2.0.0: {} - /path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - dev: true + path-exists@3.0.0: {} - /path-exists@4.0.0: - resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} - engines: {node: '>=8'} - dev: true + path-exists@4.0.0: {} - /path-is-absolute@1.0.1: - resolution: {integrity: sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==} - engines: {node: '>=0.10.0'} - dev: true + path-is-absolute@1.0.1: {} - /path-key@3.1.1: - resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} - engines: {node: '>=8'} - dev: true + path-key@3.1.1: {} - /path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - dev: true + path-key@4.0.0: {} - /path-scurry@1.10.1: - resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} - engines: {node: '>=16 || 14 >=14.17'} + path-scurry@1.10.1: dependencies: lru-cache: 10.0.2 minipass: 7.0.4 - dev: true - /path-to-regexp@1.8.0: - resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} + path-to-regexp@1.8.0: dependencies: isarray: 0.0.1 - dev: true - /path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - dev: true + path-type@4.0.0: {} - /path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - dev: true + path-type@5.0.0: {} - /picomatch@2.3.1: - resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} - engines: {node: '>=8.6'} - dev: true + picomatch@2.3.1: {} - /pify@3.0.0: - resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} - engines: {node: '>=4'} - dev: true + pify@3.0.0: {} - /pirates@4.0.6: - resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} - engines: {node: '>= 6'} - dev: true + pirates@4.0.6: {} - /pkg-conf@2.1.0: - resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==} - engines: {node: '>=4'} + pkg-conf@2.1.0: dependencies: find-up: 2.1.0 load-json-file: 4.0.0 - dev: true - /polite-json@4.0.1: - resolution: {integrity: sha512-8LI5ZeCPBEb4uBbcYKNVwk4jgqNx1yHReWoW4H4uUihWlSqZsUDfSITrRhjliuPgxsNPFhNSudGO2Zu4cbWinQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + polite-json@4.0.1: {} - /prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - dev: true + prettier@3.2.5: {} - /pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} + pretty-format@29.7.0: dependencies: '@jest/schemas': 29.6.3 ansi-styles: 5.2.0 react-is: 18.2.0 - dev: true - /prismjs-terminal@1.2.3: - resolution: {integrity: sha512-xc0zuJ5FMqvW+DpiRkvxURlz98DdfDsZcFHdO699+oL+ykbFfgI7O4VDEgUyc07BSL2NHl3zdb8m/tZ/aaqUrw==} - engines: {node: '>=16'} + prismjs-terminal@1.2.3: dependencies: chalk: 5.3.0 prismjs: 1.29.0 string-length: 6.0.0 - dev: true - /prismjs@1.29.0: - resolution: {integrity: sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==} - engines: {node: '>=6'} - dev: true + prismjs@1.29.0: {} - /proc-log@3.0.0: - resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - dev: true + proc-log@3.0.0: {} - /process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} - dev: true + process-nextick-args@2.0.1: {} - /process-on-spawn@1.0.0: - resolution: {integrity: sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==} - engines: {node: '>=8'} + process-on-spawn@1.0.0: dependencies: fromentries: 1.3.2 - dev: true - /promise-inflight@1.0.1: - resolution: {integrity: sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==} - peerDependencies: - bluebird: '*' - peerDependenciesMeta: - bluebird: - optional: true - dev: true + promise-inflight@1.0.1: {} - /promise-retry@2.0.1: - resolution: {integrity: sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==} - engines: {node: '>=10'} + promise-retry@2.0.1: dependencies: err-code: 2.0.3 retry: 0.12.0 - dev: true - /propagate@2.0.1: - resolution: {integrity: sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==} - engines: {node: '>= 8'} - dev: true + propagate@2.0.1: {} - /proto-list@1.2.4: - resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - dev: true + proto-list@1.2.4: {} - /queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - dev: true + queue-microtask@1.2.3: {} - /rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true + rc@1.2.8: dependencies: deep-extend: 0.6.0 ini: 1.3.8 minimist: 1.2.8 strip-json-comments: 2.0.1 - dev: true - /react-dom@18.2.0(react@18.2.0): - resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} - peerDependencies: - react: ^18.2.0 + react-dom@18.2.0(react@18.2.0): dependencies: loose-envify: 1.4.0 react: 18.2.0 scheduler: 0.23.0 - dev: true - /react-element-to-jsx-string@15.0.0(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-UDg4lXB6BzlobN60P8fHWVPX3Kyw8ORrTeBtClmIlGdkOOE+GYQSFvmEU5iLLpwp/6v42DINwNcwOhOLfQ//FQ==} - peerDependencies: - react: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 - react-dom: ^0.14.8 || ^15.0.1 || ^16.0.0 || ^17.0.1 || ^18.0.0 + react-element-to-jsx-string@15.0.0(react-dom@18.2.0)(react@18.2.0): dependencies: '@base2/pretty-print-object': 1.0.1 is-plain-object: 5.0.0 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) react-is: 18.1.0 - dev: true - /react-is@18.1.0: - resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} - dev: true + react-is@18.1.0: {} - /react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - dev: true + react-is@18.2.0: {} - /react-reconciler@0.29.0(react@18.2.0): - resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} - engines: {node: '>=0.10.0'} - peerDependencies: - react: ^18.2.0 + react-reconciler@0.29.0(react@18.2.0): dependencies: loose-envify: 1.4.0 react: 18.2.0 scheduler: 0.23.0 - dev: true - /react@18.2.0: - resolution: {integrity: sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==} - engines: {node: '>=0.10.0'} + react@18.2.0: dependencies: loose-envify: 1.4.0 - dev: true - /read-package-json-fast@3.0.2: - resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + read-package-json-fast@3.0.2: dependencies: json-parse-even-better-errors: 3.0.0 npm-normalize-package-bin: 3.0.1 - dev: true - /read-package-json@7.0.0: - resolution: {integrity: sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==} - engines: {node: ^16.14.0 || >=18.0.0} + read-package-json@7.0.0: dependencies: glob: 10.3.10 json-parse-even-better-errors: 3.0.0 normalize-package-data: 6.0.0 npm-normalize-package-bin: 3.0.1 - dev: true - /read-pkg-up@11.0.0: - resolution: {integrity: sha512-LOVbvF1Q0SZdjClSefZ0Nz5z8u+tIE7mV5NibzmE9VYmDe9CaBbAVtz1veOSZbofrdsilxuDAYnFenukZVp8/Q==} - engines: {node: '>=18'} - deprecated: Renamed to read-package-up + read-pkg-up@11.0.0: dependencies: find-up-simple: 1.0.0 read-pkg: 9.0.0 type-fest: 4.7.1 - dev: true - /read-pkg@9.0.0: - resolution: {integrity: sha512-SBoBio4xhJmlF4xs9IBliWZGSbDAnrOfQkLGL7xB+RYEUZNAN2LlNkzO45B7gc7c2dLMX987bhHAaJ/LG3efeQ==} - engines: {node: '>=18'} + read-pkg@9.0.0: dependencies: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.0 parse-json: 8.0.1 type-fest: 4.7.1 - dev: true - /readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} + readable-stream@2.3.8: dependencies: core-util-is: 1.0.3 inherits: 2.0.4 @@ -3805,138 +4824,78 @@ packages: safe-buffer: 5.1.2 string_decoder: 1.1.1 util-deprecate: 1.0.2 - dev: true - /readdirp@3.6.0: - resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} - engines: {node: '>=8.10.0'} + readdirp@3.6.0: dependencies: picomatch: 2.3.1 - dev: true - /redeyed@2.1.1: - resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==} + redeyed@2.1.1: dependencies: esprima: 4.0.1 - dev: true - /registry-auth-token@5.0.2: - resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} - engines: {node: '>=14'} + registry-auth-token@5.0.2: dependencies: '@pnpm/npm-conf': 2.2.2 - dev: true - /replace-in-file@7.0.2: - resolution: {integrity: sha512-tPG+Qmqf+x2Rf1WVdb/9B5tFIf6KJ5hs3fgxh1OTzPRUugPPvyAva7NvCJtnSpmyq6r+ABYcuUOqZkm6yzGSUw==} - engines: {node: '>=10'} - hasBin: true + replace-in-file@7.0.2: dependencies: chalk: 4.1.2 glob: 8.1.0 yargs: 17.7.2 - dev: true - /require-directory@2.1.1: - resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} - engines: {node: '>=0.10.0'} - dev: true + require-directory@2.1.1: {} - /resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - dev: true + resolve-from@4.0.0: {} - /resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - dev: true + resolve-from@5.0.0: {} - /resolve-import@1.4.5: - resolution: {integrity: sha512-HXb4YqODuuXT7Icq1Z++0g2JmhgbUHSs3VT2xR83gqvAPUikYT2Xk+562KHQgiaNkbBOlPddYrDLsC44qQggzw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + resolve-import@1.4.5: dependencies: glob: 10.3.10 walk-up-path: 3.0.1 - dev: true - /restore-cursor@4.0.0: - resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + restore-cursor@4.0.0: dependencies: onetime: 5.1.2 signal-exit: 3.0.7 - dev: true - /retry@0.12.0: - resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} - engines: {node: '>= 4'} - dev: true + retry@0.12.0: {} - /reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - dev: true + reusify@1.0.4: {} - /rimraf@3.0.2: - resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} - hasBin: true + rimraf@3.0.2: dependencies: glob: 7.2.3 - dev: true - - /rimraf@5.0.5: - resolution: {integrity: sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==} - engines: {node: '>=14'} - hasBin: true + + rimraf@5.0.5: dependencies: glob: 10.3.10 - dev: true - /run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} + run-parallel@1.2.0: dependencies: queue-microtask: 1.2.3 - dev: true - /safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - dev: true + safe-buffer@5.1.2: {} - /safer-buffer@2.1.2: - resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + safer-buffer@2.1.2: {} - /scheduler@0.23.0: - resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} + scheduler@0.23.0: dependencies: loose-envify: 1.4.0 - dev: true - /semantic-release-export-data@1.0.1(semantic-release@22.0.7): - resolution: {integrity: sha512-6vlgrrzzcMi/REhQd65Bh4dfSKmgwXOJ/Q2RVlT9WsU4Ya1T2qGpkSrMfG/n6oFRrqBdbDlyZgxNd94ziW+vSg==} - peerDependencies: - semantic-release: '>=18' + semantic-release-export-data@1.0.1(semantic-release@22.0.7): dependencies: '@actions/core': 1.10.1 semantic-release: 22.0.7(typescript@5.3.3) - dev: true - /semantic-release-replace-plugin@1.2.7(semantic-release@22.0.7): - resolution: {integrity: sha512-BfFQVnfC8O7+NpyfjWZuQQEkXwxf1ABbGEQuXqMsrBi7ItCnkSlO3mwuqUllxxuh1WgKx5oYKMVhmZJ0aMaqVQ==} - engines: {node: '>=18'} - peerDependencies: - semantic-release: '>=20.1.0' + semantic-release-replace-plugin@1.2.7(semantic-release@22.0.7): dependencies: jest-diff: 29.7.0 lodash-es: 4.17.21 replace-in-file: 7.0.2 semantic-release: 22.0.7(typescript@5.3.3) - dev: true - /semantic-release@22.0.7(typescript@5.3.3): - resolution: {integrity: sha512-Stx23Hjn7iU8GOAlhG3pHlR7AoNEahj9q7lKBP0rdK2BasGtJ4AWYh3zm1u3SCMuFiA8y4CE/Gu4RGKau1WiaQ==} - engines: {node: ^18.17 || >=20.6.1} - hasBin: true + semantic-release@22.0.7(typescript@5.3.3): dependencies: '@semantic-release/commit-analyzer': 11.1.0(semantic-release@22.0.7) '@semantic-release/error': 4.0.0 @@ -3969,61 +4928,34 @@ packages: transitivePeerDependencies: - supports-color - typescript - dev: true - /semver-diff@4.0.0: - resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} - engines: {node: '>=12'} + semver-diff@4.0.0: dependencies: semver: 7.5.4 - dev: true - /semver-regex@4.0.5: - resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==} - engines: {node: '>=12'} - dev: true + semver-regex@4.0.5: {} - /semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true + semver@7.5.4: dependencies: lru-cache: 6.0.0 - dev: true - /shebang-command@2.0.0: - resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} - engines: {node: '>=8'} + shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 - dev: true - /shebang-regex@3.0.0: - resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} - engines: {node: '>=8'} - dev: true + shebang-regex@3.0.0: {} - /signal-exit@3.0.7: - resolution: {integrity: sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==} - dev: true + signal-exit@3.0.7: {} - /signal-exit@4.1.0: - resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} - engines: {node: '>=14'} - dev: true + signal-exit@4.1.0: {} - /signale@1.4.0: - resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==} - engines: {node: '>=6'} + signale@1.4.0: dependencies: chalk: 2.4.2 figures: 2.0.0 pkg-conf: 2.1.0 - dev: true - /sigstore@2.1.0: - resolution: {integrity: sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==} - engines: {node: ^16.14.0 || >=18.0.0} + sigstore@2.1.0: dependencies: '@sigstore/bundle': 2.1.0 '@sigstore/protobuf-specs': 0.2.1 @@ -4031,10 +4963,8 @@ packages: '@sigstore/tuf': 2.2.0 transitivePeerDependencies: - supports-color - dev: true - /sinon@17.0.1: - resolution: {integrity: sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==} + sinon@17.0.1: dependencies: '@sinonjs/commons': 3.0.0 '@sinonjs/fake-timers': 11.2.2 @@ -4042,259 +4972,152 @@ packages: diff: 5.1.0 nise: 5.1.5 supports-color: 7.2.0 - dev: true - /skin-tone@2.0.0: - resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} - engines: {node: '>=8'} + skin-tone@2.0.0: dependencies: unicode-emoji-modifier-base: 1.0.0 - dev: true - /slash@5.1.0: - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} - engines: {node: '>=14.16'} - dev: true + slash@5.1.0: {} - /slice-ansi@5.0.0: - resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} - engines: {node: '>=12'} + slice-ansi@5.0.0: dependencies: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 - dev: true - /slice-ansi@6.0.0: - resolution: {integrity: sha512-6bn4hRfkTvDfUoEQYkERg0BVF1D0vrX9HEkMl08uDiNWvVvjylLHvZFZWkDo6wjT8tUctbYl1nCOuE66ZTaUtA==} - engines: {node: '>=14.16'} + slice-ansi@6.0.0: dependencies: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 - dev: true - /smart-buffer@4.2.0: - resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==} - engines: {node: '>= 6.0.0', npm: '>= 3.0.0'} - dev: true + smart-buffer@4.2.0: {} - /socks-proxy-agent@8.0.2: - resolution: {integrity: sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==} - engines: {node: '>= 14'} + socks-proxy-agent@8.0.2: dependencies: agent-base: 7.1.0 debug: 4.3.4 socks: 2.7.1 transitivePeerDependencies: - supports-color - dev: true - /socks@2.7.1: - resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} - engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} + socks@2.7.1: dependencies: ip: 2.0.1 smart-buffer: 4.2.0 - dev: true - /source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - dev: true + source-map@0.6.1: {} - /spawn-error-forwarder@1.0.0: - resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==} - dev: true + spawn-error-forwarder@1.0.0: {} - /spdx-correct@3.2.0: - resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} + spdx-correct@3.2.0: dependencies: spdx-expression-parse: 3.0.1 spdx-license-ids: 3.0.16 - dev: true - /spdx-exceptions@2.3.0: - resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} - dev: true + spdx-exceptions@2.3.0: {} - /spdx-expression-parse@3.0.1: - resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} + spdx-expression-parse@3.0.1: dependencies: spdx-exceptions: 2.3.0 spdx-license-ids: 3.0.16 - dev: true - /spdx-license-ids@3.0.16: - resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} - dev: true + spdx-license-ids@3.0.16: {} - /split2@1.0.0: - resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==} + split2@1.0.0: dependencies: through2: 2.0.5 - dev: true - /split2@4.2.0: - resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} - engines: {node: '>= 10.x'} - dev: true + split2@4.2.0: {} - /ssri@10.0.5: - resolution: {integrity: sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + ssri@10.0.5: dependencies: minipass: 7.0.4 - dev: true - /stack-utils@2.0.6: - resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} - engines: {node: '>=10'} + stack-utils@2.0.6: dependencies: escape-string-regexp: 2.0.0 - dev: true - /stream-combiner2@1.1.1: - resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==} + stream-combiner2@1.1.1: dependencies: duplexer2: 0.1.4 readable-stream: 2.3.8 - dev: true - /string-length@6.0.0: - resolution: {integrity: sha512-1U361pxZHEQ+FeSjzqRpV+cu2vTzYeWeafXFLykiFlv4Vc0n3njgU8HrMbyik5uwm77naWMuVG8fhEF+Ovb1Kg==} - engines: {node: '>=16'} + string-length@6.0.0: dependencies: strip-ansi: 7.1.0 - dev: true - /string-width@4.2.3: - resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} - engines: {node: '>=8'} + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 is-fullwidth-code-point: 3.0.0 strip-ansi: 6.0.1 - dev: true - /string-width@5.1.2: - resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} - engines: {node: '>=12'} + string-width@5.1.2: dependencies: eastasianwidth: 0.2.0 emoji-regex: 9.2.2 strip-ansi: 7.1.0 - dev: true - /string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} + string_decoder@1.1.1: dependencies: safe-buffer: 5.1.2 - dev: true - /strip-ansi@6.0.1: - resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} - engines: {node: '>=8'} + strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 - dev: true - /strip-ansi@7.1.0: - resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} - engines: {node: '>=12'} + strip-ansi@7.1.0: dependencies: ansi-regex: 6.0.1 - dev: true - /strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - dev: true + strip-bom@3.0.0: {} - /strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - dev: true + strip-final-newline@2.0.0: {} - /strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - dev: true + strip-final-newline@3.0.0: {} - /strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - dev: true + strip-json-comments@2.0.1: {} - /supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} + supports-color@5.5.0: dependencies: has-flag: 3.0.0 - dev: true - /supports-color@7.2.0: - resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} - engines: {node: '>=8'} + supports-color@7.2.0: dependencies: has-flag: 4.0.0 - dev: true - /supports-hyperlinks@3.0.0: - resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} - engines: {node: '>=14.18'} + supports-hyperlinks@3.0.0: dependencies: has-flag: 4.0.0 supports-color: 7.2.0 - dev: true - /sync-content@1.0.2: - resolution: {integrity: sha512-znd3rYiiSxU3WteWyS9a6FXkTA/Wjk8WQsOyzHbineeL837dLn3DA4MRhsIX3qGcxDMH6+uuFV4axztssk7wEQ==} - engines: {node: '>=14'} - hasBin: true + sync-content@1.0.2: dependencies: glob: 10.3.10 mkdirp: 3.0.1 path-scurry: 1.10.1 rimraf: 5.0.5 - dev: true - /tap-parser@15.3.1: - resolution: {integrity: sha512-hwAtXX5TBGt2MJeYvASc7DjP48PUzA7P8RTbLxQcgKCEH7ICD5IsRco7l5YvkzjHlZbUbeI9wzO8B4hw2sKgnQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true + tap-parser@15.3.1: dependencies: events-to-array: 2.0.3 tap-yaml: 2.2.1 - dev: true - /tap-parser@15.3.2: - resolution: {integrity: sha512-uvauHuQqAMwfeFVxNpFXhvnWLVL0sthnHk4TxRM3cUy6+dejO9fatoKR7YejbMu4+2/1nR6UQE9+eUcX3PUmsA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true + tap-parser@15.3.2: dependencies: events-to-array: 2.0.3 tap-yaml: 2.2.2 - dev: true - /tap-yaml@2.2.1: - resolution: {integrity: sha512-ovZuUMLAIH59jnFHXKEGJ+WyDYl6Cuduwg9qpvnqkZOUA1nU84q02Sry1HT0KXcdv2uB91bEKKxnIybBgrb6oA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + tap-yaml@2.2.1: dependencies: yaml: 2.3.4 yaml-types: 0.3.0(yaml@2.3.4) - dev: true - /tap-yaml@2.2.2: - resolution: {integrity: sha512-MWG4OpAKtNoNVjCz/BqlDJiwTM99tiHRhHPS4iGOe1ZS0CgM4jSFH92lthSFvvy4EdDjQZDV7uYqUFlU9JuNhw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + tap-yaml@2.2.2: dependencies: yaml: 2.4.1 yaml-types: 0.3.0(yaml@2.4.1) - dev: true - /tap@18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): - resolution: {integrity: sha512-bL/0krlx8k3fY9mjI9CMfVoAGclZegl+vm5pEJpF/USxam5eNhp5wLk5UH0ST3gWEJkW0PDdFHTOStE+mYurrQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true + tap@18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): dependencies: '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) '@tapjs/after-each': 1.1.18(@tapjs/core@1.5.0) @@ -4328,11 +5151,8 @@ packages: - supports-color - typescript - utf-8-validate - dev: true - /tar@6.2.0: - resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} - engines: {node: '>=10'} + tar@6.2.0: dependencies: chownr: 2.0.0 fs-minipass: 2.1.0 @@ -4340,108 +5160,60 @@ packages: minizlib: 2.1.2 mkdirp: 1.0.4 yallist: 4.0.0 - dev: true - /tcompare@6.4.5(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-Whuz9xlKKI2XXICKDSDRKjXdBuC6gBNOgmEUtH7UFyQeYzfUMQ19DyjZULarGKDGFhgOg3CJ+IQUEfpkOPg0Uw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + tcompare@6.4.5(react-dom@18.2.0)(react@18.2.0): dependencies: diff: 5.1.0 react-element-to-jsx-string: 15.0.0(react-dom@18.2.0)(react@18.2.0) transitivePeerDependencies: - react - react-dom - dev: true - /tcompare@6.4.6(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-sxvgCgO2GAIWHibnK4zLvvi9GHd/ZlR9DOUJ4ufwvNtkdKE2I9MNwJUwzYvOmGrJXMcfhhw0CDBb+6j0ia+I7A==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + tcompare@6.4.6(react-dom@18.2.0)(react@18.2.0): dependencies: diff: 5.2.0 react-element-to-jsx-string: 15.0.0(react-dom@18.2.0)(react@18.2.0) transitivePeerDependencies: - react - react-dom - dev: true - /temp-dir@3.0.0: - resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} - engines: {node: '>=14.16'} - dev: true + temp-dir@3.0.0: {} - /tempy@3.1.0: - resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} - engines: {node: '>=14.16'} + tempy@3.1.0: dependencies: is-stream: 3.0.0 temp-dir: 3.0.0 type-fest: 2.19.0 unique-string: 3.0.0 - dev: true - /test-exclude@6.0.0: - resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} - engines: {node: '>=8'} + test-exclude@6.0.0: dependencies: '@istanbuljs/schema': 0.1.3 glob: 7.2.3 minimatch: 3.1.2 - dev: true - /text-extensions@2.4.0: - resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==} - engines: {node: '>=8'} - dev: true + text-extensions@2.4.0: {} - /through2@2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} + through2@2.0.5: dependencies: readable-stream: 2.3.8 xtend: 4.0.2 - dev: true - /through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - dev: true + through@2.3.8: {} - /to-readable-stream@2.1.0: - resolution: {integrity: sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==} - engines: {node: '>=8'} - dev: true + to-readable-stream@2.1.0: {} - /to-regex-range@5.0.1: - resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} - engines: {node: '>=8.0'} + to-regex-range@5.0.1: dependencies: is-number: 7.0.0 - dev: true - /tr46@0.0.3: - resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - dev: false + tr46@0.0.3: {} - /traverse@0.6.7: - resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==} - dev: true + traverse@0.6.7: {} - /trivial-deferred@2.0.0: - resolution: {integrity: sha512-iGbM7X2slv9ORDVj2y2FFUq3cP/ypbtu2nQ8S38ufjL0glBABvmR9pTdsib1XtS2LUhhLMbelaBUaf/s5J3dSw==} - engines: {node: '>= 8'} - dev: true + trivial-deferred@2.0.0: {} - /ts-node@10.9.2(@types/node@18.19.28)(typescript@5.3.3): - resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true + ts-node@10.9.2(@types/node@18.19.28)(typescript@5.3.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.9 @@ -4458,12 +5230,8 @@ packages: typescript: 5.3.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 - dev: true - /tshy@1.14.0: - resolution: {integrity: sha512-YiUujgi4Jb+t2I48LwSRzHkBpniH9WjjktNozn+nlsGmVemKSjDNY7EwBRPvPCr5zAC/3ITAYWH9Z7kUinGSrw==} - engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} - hasBin: true + tshy@1.14.0: dependencies: chalk: 5.3.0 chokidar: 3.6.0 @@ -4476,12 +5244,8 @@ packages: sync-content: 1.0.2 typescript: 5.4.5 walk-up-path: 3.0.1 - dev: true - /tshy@1.8.0: - resolution: {integrity: sha512-Lg2hVO+B8pdNYvBUSgcra4ULlFCcBIkd7ZJ3nRIPvEjplgEscNSwnOzpIMzKW1m17AYhEGcy1nzv7mA3fi/oEQ==} - engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} - hasBin: true + tshy@1.8.0: dependencies: chalk: 5.3.0 chokidar: 3.5.3 @@ -4492,299 +5256,149 @@ packages: sync-content: 1.0.2 typescript: 5.2.2 walk-up-path: 3.0.1 - dev: true - /tslib@2.6.2: - resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - dev: true + tslib@2.6.2: {} - /tuf-js@2.1.0: - resolution: {integrity: sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==} - engines: {node: ^16.14.0 || >=18.0.0} + tuf-js@2.1.0: dependencies: '@tufjs/models': 2.0.0 debug: 4.3.4 make-fetch-happen: 13.0.0 transitivePeerDependencies: - supports-color - dev: true - /tunnel@0.0.6: - resolution: {integrity: sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==} - engines: {node: '>=0.6.11 <=0.7.0 || >=0.7.3'} + tunnel@0.0.6: {} - /type-detect@4.0.8: - resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} - engines: {node: '>=4'} - dev: true + type-detect@4.0.8: {} - /type-fest@0.12.0: - resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} - engines: {node: '>=10'} - dev: true + type-fest@0.12.0: {} - /type-fest@1.4.0: - resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} - engines: {node: '>=10'} - dev: true + type-fest@1.4.0: {} - /type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - dev: true + type-fest@2.19.0: {} - /type-fest@3.13.1: - resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} - engines: {node: '>=14.16'} - dev: true + type-fest@3.13.1: {} - /type-fest@4.7.1: - resolution: {integrity: sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==} - engines: {node: '>=16'} - dev: true + type-fest@4.7.1: {} - /typescript@5.2.2: - resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} - engines: {node: '>=14.17'} - hasBin: true - dev: true + typescript@5.2.2: {} - /typescript@5.3.3: - resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} - engines: {node: '>=14.17'} - hasBin: true - dev: true + typescript@5.3.3: {} - /typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} - engines: {node: '>=14.17'} - hasBin: true - dev: true + typescript@5.4.5: {} - /uglify-js@3.17.4: - resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} - engines: {node: '>=0.8.0'} - hasBin: true - requiresBuild: true - dev: true + uglify-js@3.17.4: optional: true - /undici-types@5.26.5: - resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - dev: true + undici-types@5.26.5: {} - /undici@5.28.4: - resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} - engines: {node: '>=14.0'} + undici@5.28.4: dependencies: '@fastify/busboy': 2.1.0 - /unicode-emoji-modifier-base@1.0.0: - resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} - engines: {node: '>=4'} - dev: true + unicode-emoji-modifier-base@1.0.0: {} - /unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} - dev: true + unicorn-magic@0.1.0: {} - /unique-filename@3.0.0: - resolution: {integrity: sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + unique-filename@3.0.0: dependencies: unique-slug: 4.0.0 - dev: true - /unique-slug@4.0.0: - resolution: {integrity: sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + unique-slug@4.0.0: dependencies: imurmurhash: 0.1.4 - dev: true - /unique-string@3.0.0: - resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} - engines: {node: '>=12'} + unique-string@3.0.0: dependencies: crypto-random-string: 4.0.0 - dev: true - /universal-user-agent@6.0.1: - resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==} + universal-user-agent@6.0.1: {} - /universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - dev: true + universalify@2.0.1: {} - /url-join@5.0.0: - resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - dev: true + url-join@5.0.0: {} - /util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - dev: true + util-deprecate@1.0.2: {} - /uuid@8.3.2: - resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} - hasBin: true + uuid@8.3.2: {} - /v8-compile-cache-lib@3.0.1: - resolution: {integrity: sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==} - dev: true + v8-compile-cache-lib@3.0.1: {} - /v8-to-istanbul@9.1.3: - resolution: {integrity: sha512-9lDD+EVI2fjFsMWXc6dy5JJzBsVTcQ2fVkfBvncZ6xJWG9wtBhOldG+mHkSL0+V1K/xgZz0JDO5UT5hFwHUghg==} - engines: {node: '>=10.12.0'} + v8-to-istanbul@9.1.3: dependencies: '@jridgewell/trace-mapping': 0.3.20 '@types/istanbul-lib-coverage': 2.0.6 convert-source-map: 2.0.0 - dev: true - /validate-npm-package-license@3.0.4: - resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} + validate-npm-package-license@3.0.4: dependencies: spdx-correct: 3.2.0 spdx-expression-parse: 3.0.1 - dev: true - /validate-npm-package-name@5.0.0: - resolution: {integrity: sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + validate-npm-package-name@5.0.0: dependencies: builtins: 5.0.1 - dev: true - /walk-up-path@3.0.1: - resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==} - dev: true + walk-up-path@3.0.1: {} - /webidl-conversions@3.0.1: - resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - dev: false + webidl-conversions@3.0.1: {} - /whatwg-url@5.0.0: - resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} + whatwg-url@5.0.0: dependencies: tr46: 0.0.3 webidl-conversions: 3.0.1 - dev: false - /which@2.0.2: - resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} - engines: {node: '>= 8'} - hasBin: true + which@2.0.2: dependencies: isexe: 2.0.0 - dev: true - /which@4.0.0: - resolution: {integrity: sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==} - engines: {node: ^16.13.0 || >=18.0.0} - hasBin: true + which@4.0.0: dependencies: isexe: 3.1.1 - dev: true - /widest-line@4.0.1: - resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} - engines: {node: '>=12'} + widest-line@4.0.1: dependencies: string-width: 5.1.2 - dev: true - /wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - dev: true + wordwrap@1.0.0: {} - /wrap-ansi@7.0.0: - resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} - engines: {node: '>=10'} + wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 - dev: true - /wrap-ansi@8.1.0: - resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} - engines: {node: '>=12'} + wrap-ansi@8.1.0: dependencies: ansi-styles: 6.2.1 string-width: 5.1.2 strip-ansi: 7.1.0 - dev: true - /wrappy@1.0.2: - resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} + wrappy@1.0.2: {} - /ws@8.14.2: - resolution: {integrity: sha512-wEBG1ftX4jcglPxgFCMJmZ2PLtSbJ2Peg6TmpJFTbe9GZYOQCDPdMYu/Tm0/bGZkw8paZnJY45J4K2PZrLYq8g==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: true + ws@8.14.2: {} - /xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - dev: true + xtend@4.0.2: {} - /y18n@5.0.8: - resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} - engines: {node: '>=10'} - dev: true + y18n@5.0.8: {} - /yallist@4.0.0: - resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - dev: true + yallist@4.0.0: {} - /yaml-types@0.3.0(yaml@2.3.4): - resolution: {integrity: sha512-i9RxAO/LZBiE0NJUy9pbN5jFz5EasYDImzRkj8Y81kkInTi1laia3P3K/wlMKzOxFQutZip8TejvQP/DwgbU7A==} - engines: {node: '>= 16', npm: '>= 7'} - peerDependencies: - yaml: ^2.3.0 + yaml-types@0.3.0(yaml@2.3.4): dependencies: yaml: 2.3.4 - dev: true - /yaml-types@0.3.0(yaml@2.4.1): - resolution: {integrity: sha512-i9RxAO/LZBiE0NJUy9pbN5jFz5EasYDImzRkj8Y81kkInTi1laia3P3K/wlMKzOxFQutZip8TejvQP/DwgbU7A==} - engines: {node: '>= 16', npm: '>= 7'} - peerDependencies: - yaml: ^2.3.0 + yaml-types@0.3.0(yaml@2.4.1): dependencies: yaml: 2.4.1 - dev: true - /yaml@2.3.4: - resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} - engines: {node: '>= 14'} - dev: true + yaml@2.3.4: {} - /yaml@2.4.1: - resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} - engines: {node: '>= 14'} - hasBin: true - dev: true + yaml@2.4.1: {} - /yargs-parser@21.1.1: - resolution: {integrity: sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==} - engines: {node: '>=12'} - dev: true + yargs-parser@21.1.1: {} - /yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} + yargs@17.7.2: dependencies: cliui: 8.0.1 escalade: 3.1.1 @@ -4793,18 +5407,9 @@ packages: string-width: 4.2.3 y18n: 5.0.8 yargs-parser: 21.1.1 - dev: true - /yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - dev: true + yn@3.1.1: {} - /yocto-queue@0.1.0: - resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} - engines: {node: '>=10'} - dev: true + yocto-queue@0.1.0: {} - /yoga-wasm-web@0.3.3: - resolution: {integrity: sha512-N+d4UJSJbt/R3wqY7Coqs5pcV0aUj2j9IaQ3rNj9bVCLld8tTGKRa2USARjnvZJWVx1NDmQev8EknoczaOQDOA==} - dev: true + yoga-wasm-web@0.3.3: {} From 153d5824f935754734cd56a33bf1e25a8f7c7cd0 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:16:36 +0530 Subject: [PATCH 02/11] chore: add biome for formatting and linting code --- biome.json | 24 + package.json | 33 +- pnpm-lock.yaml | 2753 +++++--------------------------------- src/main.ts | 646 +++++---- src/utils.ts | 207 +-- test/integration.test.ts | 92 +- test/main.test.ts | 2041 ++++++++++++++-------------- test/utils.test.ts | 240 ++-- 8 files changed, 1982 insertions(+), 4054 deletions(-) create mode 100644 biome.json diff --git a/biome.json b/biome.json new file mode 100644 index 00000000..9a955e62 --- /dev/null +++ b/biome.json @@ -0,0 +1,24 @@ +{ + "$schema": "https://biomejs.dev/schemas/1.7.1/schema.json", + "files": { + "include": ["./src/**/*.ts", "./test/**/*.ts"], + "ignore": ["./test/fixtures/**/*"] + }, + "organizeImports": { + "enabled": true + }, + "linter": { + "enabled": true, + "rules": { + "recommended": true + } + }, + "formatter": { + "enabled": true + }, + "javascript": { + "formatter": { + "quoteStyle": "single" + } + } +} diff --git a/package.json b/package.json index af7f4d15..0420367d 100644 --- a/package.json +++ b/package.json @@ -11,8 +11,12 @@ "test:only": "pnpm run test --only", "coverage": "pnpm run test --no-disable-coverage --allow-incomplete-coverage --coverage-report=lcovonly", "coverage:html": "pnpm run coverage --coverage-report=html", - "format": "prettier --write src/*.ts test/*.ts", - "format:check": "prettier --check src/*.ts test/*.ts" + "biome:ci": "biome ci ./", + "format:check": "biome format ./", + "format": "biome format --write ./", + "lint:check": "biome lint ./", + "lint": "biome lint --apply ./", + "lint:unsafe": "biome lint --apply-unsafe ./" }, "repository": { "type": "git", @@ -33,31 +37,22 @@ "@actions/glob": "0.4.0", "hook-std": "2.0.0", "node-fetch": "2.7.0", - "openpgp": "5.11.0" + "openpgp": "5.11.1" }, "devDependencies": { - "@openpgp/web-stream-tools": "0.0.14", - "@semantic-release/changelog": "6.0.3", - "@semantic-release/commit-analyzer": "11.1.0", - "@semantic-release/exec": "6.0.3", - "@semantic-release/git": "10.0.1", - "@semantic-release/github": "9.2.6", - "@semantic-release/release-notes-generator": "12.1.0", + "@biomejs/biome": "1.7.1", + "@openpgp/web-stream-tools": "0.1.1", "@tapjs/test": "1.4.2", - "@types/node": "18.19.28", - "@types/node-fetch": "2.6.9", + "@types/node": "20.12.7", + "@types/node-fetch": "2.6.11", "@types/sinon": "17.0.3", "@types/which": "3.0.3", "cross-env": "7.0.3", - "nock": "13.4.0", - "prettier": "3.2.5", - "semantic-release-export-data": "1.0.1", - "semantic-release-replace-plugin": "1.2.7", + "nock": "13.5.4", "sinon": "17.0.1", - "tap": "18.7.0", + "tap": "18.7.2", "to-readable-stream": "2.1.0", - "ts-node": "10.9.2", - "typescript": "5.3.3", + "typescript": "5.4.5", "which": "4.0.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 08327e06..505fb563 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,41 +25,26 @@ importers: version: 2.0.0 node-fetch: specifier: 2.7.0 - version: 2.7.0 + version: 2.7.0(encoding@0.1.13) openpgp: - specifier: 5.11.0 - version: 5.11.0 + specifier: 5.11.1 + version: 5.11.1 devDependencies: + '@biomejs/biome': + specifier: 1.7.1 + version: 1.7.1 '@openpgp/web-stream-tools': - specifier: 0.0.14 - version: 0.0.14(typescript@5.3.3) - '@semantic-release/changelog': - specifier: 6.0.3 - version: 6.0.3(semantic-release@22.0.7) - '@semantic-release/commit-analyzer': - specifier: 11.1.0 - version: 11.1.0(semantic-release@22.0.7) - '@semantic-release/exec': - specifier: 6.0.3 - version: 6.0.3(semantic-release@22.0.7) - '@semantic-release/git': - specifier: 10.0.1 - version: 10.0.1(semantic-release@22.0.7) - '@semantic-release/github': - specifier: 9.2.6 - version: 9.2.6(semantic-release@22.0.7) - '@semantic-release/release-notes-generator': - specifier: 12.1.0 - version: 12.1.0(semantic-release@22.0.7) + specifier: 0.1.1 + version: 0.1.1(typescript@5.4.5) '@tapjs/test': specifier: 1.4.2 - version: 1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + version: 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@types/node': - specifier: 18.19.28 - version: 18.19.28 + specifier: 20.12.7 + version: 20.12.7 '@types/node-fetch': - specifier: 2.6.9 - version: 2.6.9 + specifier: 2.6.11 + version: 2.6.11 '@types/sinon': specifier: 17.0.3 version: 17.0.3 @@ -70,32 +55,20 @@ importers: specifier: 7.0.3 version: 7.0.3 nock: - specifier: 13.4.0 - version: 13.4.0 - prettier: - specifier: 3.2.5 - version: 3.2.5 - semantic-release-export-data: - specifier: 1.0.1 - version: 1.0.1(semantic-release@22.0.7) - semantic-release-replace-plugin: - specifier: 1.2.7 - version: 1.2.7(semantic-release@22.0.7) + specifier: 13.5.4 + version: 13.5.4 sinon: specifier: 17.0.1 version: 17.0.1 tap: - specifier: 18.7.0 - version: 18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3) + specifier: 18.7.2 + version: 18.7.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.4.5) to-readable-stream: specifier: 2.1.0 version: 2.1.0 - ts-node: - specifier: 10.9.2 - version: 10.9.2(@types/node@18.19.28)(typescript@5.3.3) typescript: - specifier: 5.3.3 - version: 5.3.3 + specifier: 5.4.5 + version: 5.4.5 which: specifier: 4.0.0 version: 4.0.0 @@ -124,27 +97,64 @@ packages: resolution: {integrity: sha512-3yWxPTq3UQ/FY9p1ErPxIyfT64elWaMvM9lIHnaqpyft63tkxodF5aUElYHrdisWve5cETkh1+KBw1yJuW0aRw==} engines: {node: '>=14.13.1'} - '@babel/code-frame@7.22.13': - resolution: {integrity: sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==} - engines: {node: '>=6.9.0'} - - '@babel/helper-validator-identifier@7.22.20': - resolution: {integrity: sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==} - engines: {node: '>=6.9.0'} - - '@babel/highlight@7.22.20': - resolution: {integrity: sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==} - engines: {node: '>=6.9.0'} - '@base2/pretty-print-object@1.0.1': resolution: {integrity: sha512-4iri8i1AqYHJE2DstZYkyEprg6Pq6sKx3xn5FpySk9sNhH7qN2LLlHJCfDTZRILNwQNPD7mATWM0TBui7uC1pA==} '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} - '@colors/colors@1.5.0': - resolution: {integrity: sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==} - engines: {node: '>=0.1.90'} + '@biomejs/biome@1.7.1': + resolution: {integrity: sha512-wb2UNoFXcgaMdKXKT5ytsYntaogl2FSTjDt20CZynF3v7OXQUcIpTrr+be3XoOGpoZRj3Ytq9TSpmplUREXmeA==} + engines: {node: '>=14.21.3'} + hasBin: true + + '@biomejs/cli-darwin-arm64@1.7.1': + resolution: {integrity: sha512-qfLrIIB58dkgiY/1tgG6fSCBK22PZaSIf6blweZBsG6iMij05mEuJt50ne+zPnNFNUmt8t43NC/qOXT3iFHQBA==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [darwin] + + '@biomejs/cli-darwin-x64@1.7.1': + resolution: {integrity: sha512-OGeyNsEcp5VnKbF9/TBjPCTHNEOm7oHegEve07U3KZmzqfpw2Oe3i9DVW8t6vvj1TYbrwWYCld25H34kBDY7Vg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [darwin] + + '@biomejs/cli-linux-arm64-musl@1.7.1': + resolution: {integrity: sha512-giH0/CzLOJ+wbxLxd5Shnr5xQf5fGnTRWLDe3lzjaF7IplVydNCEeZJtncB01SvyA6DAFJsvQ4LNxzAOQfEVCg==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-arm64@1.7.1': + resolution: {integrity: sha512-MQDf5wErj1iBvlcxCyOa0XqZYN8WJrupVgbNnqhntO3yVATg8GxduVUn1fDSaolznkDRsj7Pz3Xu1esBFwvfmg==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [linux] + + '@biomejs/cli-linux-x64-musl@1.7.1': + resolution: {integrity: sha512-ySNDtPhsLxU125IFHHAxfpoHBpkM56s4mEXeO70GZtgZay/o1h8IUPWCWf5Z7gKgc4jwgYN1U1U9xabI3hZVAg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-linux-x64@1.7.1': + resolution: {integrity: sha512-3wmCsGcC3KZ4pfTknXHfyMMlXPMhgfXVAcG5GlrR+Tq2JGiAw0EUydaLpsSBEbcG7IxH6OiUZEJZ95kAycCHBA==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [linux] + + '@biomejs/cli-win32-arm64@1.7.1': + resolution: {integrity: sha512-8hIDakEqZn0i6+388noYKdZ0ZrovTwnvMU/Qp/oJou0G7EPVdXupOe0oxiQSdRN0W7f6CS/yjPCYuVGzDG6r0g==} + engines: {node: '>=14.21.3'} + cpu: [arm64] + os: [win32] + + '@biomejs/cli-win32-x64@1.7.1': + resolution: {integrity: sha512-3W9k3uH6Ea6VOpAS9xkkAlS0LTfnGQjmIUCegZ8SDtK2NgJ1gO+qdEkGJb0ltahusFTN1QxJ107dM7ASA9IUEg==} + engines: {node: '>=14.21.3'} + cpu: [x64] + os: [win32] '@cspotcode/source-map-support@0.8.1': resolution: {integrity: sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==} @@ -176,10 +186,6 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} - '@jest/schemas@29.6.3': - resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jridgewell/resolve-uri@3.1.1': resolution: {integrity: sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==} engines: {node: '>=6.0.0'} @@ -193,18 +199,6 @@ packages: '@jridgewell/trace-mapping@0.3.9': resolution: {integrity: sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==} - '@nodelib/fs.scandir@2.1.5': - resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} - engines: {node: '>= 8'} - - '@nodelib/fs.stat@2.0.5': - resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} - engines: {node: '>= 8'} - - '@nodelib/fs.walk@1.2.8': - resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} - engines: {node: '>= 8'} - '@npmcli/agent@2.2.0': resolution: {integrity: sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==} engines: {node: ^16.14.0 || >=18.0.0} @@ -265,18 +259,6 @@ packages: peerDependencies: '@octokit/core': '>=5' - '@octokit/plugin-retry@6.0.1': - resolution: {integrity: sha512-SKs+Tz9oj0g4p28qkZwl/topGcb0k0qPNX/i7vBKmDsjoeqnVfFUquqrE/O9oJY7+oLzdCtkiWSXLpLjvl6uog==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': '>=5' - - '@octokit/plugin-throttling@8.1.2': - resolution: {integrity: sha512-oFba+ioR6HGb0fgqxMta7Kpk/MdffUTuUxNY856l1nXPvh7Qggp8w4AksRx1SDA8SGd+4cbrpkY4k1J/Xz8nZQ==} - engines: {node: '>= 18'} - peerDependencies: - '@octokit/core': ^5.0.0 - '@octokit/request-error@5.0.1': resolution: {integrity: sha512-X7pnyTMV7MgtGmiXBwmO6M5kIPrntOXdyKZLigNfQWSEQzVxR4a4vo49vJjTWX70mPndj8KhfT4Dx+2Ng3vnBQ==} engines: {node: '>= 18'} @@ -288,8 +270,9 @@ packages: '@octokit/types@12.3.0': resolution: {integrity: sha512-nJ8X2HRr234q3w/FcovDlA+ttUU4m1eJAourvfUUtwAWeqL8AsyRqfnLvVnYn3NFbUnsmzQCzLNdFerPwdmcDQ==} - '@openpgp/web-stream-tools@0.0.14': - resolution: {integrity: sha512-6btCNVf6YSsmlyIS7yw+IbzXeXCEcJxeSpxvSxkDuZj9B/ekt4fXkZj4oOaIxG4SKTftIK1svnlVroJ1cCMT4g==} + '@openpgp/web-stream-tools@0.1.1': + resolution: {integrity: sha512-1WkV+z78S8DJNlUiCPxSjsna6gfAGCVuepL2KUDlBztXzhvplwWr4lAvsWcYzFkHykaFoCSOV9ssiRRq7QzydQ==} + engines: {node: '>= 16.5.0'} peerDependencies: typescript: '>=4.2' peerDependenciesMeta: @@ -300,94 +283,29 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} - '@pnpm/config.env-replace@1.1.0': - resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} - engines: {node: '>=12.22.0'} - - '@pnpm/network.ca-file@1.0.2': - resolution: {integrity: sha512-YcPQ8a0jwYU9bTdJDpXjMi7Brhkr1mXsXrUJvjqM2mQDgkRiz8jFaQGOdaLxgjtUfQgZhKy/O3cG/YwmgKaxLA==} - engines: {node: '>=12.22.0'} - - '@pnpm/npm-conf@2.2.2': - resolution: {integrity: sha512-UA91GwWPhFExt3IizW6bOeY/pQ0BkuNwKjk9iQW9KqxluGCrg4VenZ0/L+2Y0+ZOtme72EVvg6v0zo3AMQRCeA==} - engines: {node: '>=12'} - - '@semantic-release/changelog@6.0.3': - resolution: {integrity: sha512-dZuR5qByyfe3Y03TpmCvAxCyTnp7r5XwtHRf/8vD9EAn4ZWbavUX8adMtXYzE86EVh0gyLA7lm5yW4IV30XUag==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' - - '@semantic-release/commit-analyzer@11.1.0': - resolution: {integrity: sha512-cXNTbv3nXR2hlzHjAMgbuiQVtvWHTlwwISt60B+4NZv01y/QRY7p2HcJm8Eh2StzcTJoNnflvKjHH/cjFS7d5g==} - engines: {node: ^18.17 || >=20.6.1} - peerDependencies: - semantic-release: '>=20.1.0' - - '@semantic-release/error@3.0.0': - resolution: {integrity: sha512-5hiM4Un+tpl4cKw3lV4UgzJj+SmfNIDCLLw0TepzQxz9ZGV5ixnqkzIVF+3tp0ZHgcMKE+VNGHJjEeyFG2dcSw==} - engines: {node: '>=14.17'} - - '@semantic-release/error@4.0.0': - resolution: {integrity: sha512-mgdxrHTLOjOddRVYIYDo0fR3/v61GNN1YGkfbrjuIKg/uMgCd+Qzo3UAXJ+woLQQpos4pl5Esuw5A7AoNlzjUQ==} - engines: {node: '>=18'} - - '@semantic-release/exec@6.0.3': - resolution: {integrity: sha512-bxAq8vLOw76aV89vxxICecEa8jfaWwYITw6X74zzlO0mc/Bgieqx9kBRz9z96pHectiTAtsCwsQcUyLYWnp3VQ==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' - - '@semantic-release/git@10.0.1': - resolution: {integrity: sha512-eWrx5KguUcU2wUPaO6sfvZI0wPafUKAMNC18aXY4EnNcrZL86dEmpNVnC9uMpGZkmZJ9EfCVJBQx4pV4EMGT1w==} - engines: {node: '>=14.17'} - peerDependencies: - semantic-release: '>=18.0.0' - - '@semantic-release/github@9.2.6': - resolution: {integrity: sha512-shi+Lrf6exeNZF+sBhK+P011LSbhmIAoUEgEY6SsxF8irJ+J2stwI5jkyDQ+4gzYyDImzV6LCKdYB9FXnQRWKA==} - engines: {node: '>=18'} - peerDependencies: - semantic-release: '>=20.1.0' - - '@semantic-release/npm@11.0.1': - resolution: {integrity: sha512-nFcT0pgVwpXsPkzjqP3ObH+pILeN1AbYscCDuYwgZEPZukL+RsGhrtdT4HA1Gjb/y1bVbE90JNtMIcgRi5z/Fg==} - engines: {node: ^18.17 || >=20} - peerDependencies: - semantic-release: '>=20.1.0' - - '@semantic-release/release-notes-generator@12.1.0': - resolution: {integrity: sha512-g6M9AjUKAZUZnxaJZnouNBeDNTCUrJ5Ltj+VJ60gJeDaRRahcHsry9HW8yKrnKkKNkx5lbWiEP1FPMqVNQz8Kg==} - engines: {node: ^18.17 || >=20.6.1} - peerDependencies: - semantic-release: '>=20.1.0' - - '@sigstore/bundle@2.1.0': - resolution: {integrity: sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==} + '@sigstore/bundle@2.3.1': + resolution: {integrity: sha512-eqV17lO3EIFqCWK3969Rz+J8MYrRZKw9IBHpSo6DEcEX2c+uzDFOgHE9f2MnyDpfs48LFO4hXmk9KhQ74JzU1g==} engines: {node: ^16.14.0 || >=18.0.0} - '@sigstore/protobuf-specs@0.2.1': - resolution: {integrity: sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==} - engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - - '@sigstore/sign@2.2.0': - resolution: {integrity: sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==} + '@sigstore/core@1.1.0': + resolution: {integrity: sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==} engines: {node: ^16.14.0 || >=18.0.0} - '@sigstore/tuf@2.2.0': - resolution: {integrity: sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==} + '@sigstore/protobuf-specs@0.3.1': + resolution: {integrity: sha512-aIL8Z9NsMr3C64jyQzE0XlkEyBLpgEJJFDHLVVStkFV5Q3Il/r/YtY6NJWKQ4cy4AE7spP1IX5Jq7VCAxHHMfQ==} engines: {node: ^16.14.0 || >=18.0.0} - '@sinclair/typebox@0.27.8': - resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} + '@sigstore/sign@2.3.0': + resolution: {integrity: sha512-tsAyV6FC3R3pHmKS880IXcDJuiFJiKITO1jxR1qbplcsBkZLBmjrEw5GbC7ikD6f5RU1hr7WnmxB/2kKc1qUWQ==} + engines: {node: ^16.14.0 || >=18.0.0} - '@sindresorhus/is@3.1.2': - resolution: {integrity: sha512-JiX9vxoKMmu8Y3Zr2RVathBL1Cdu4Nt4MuNWemt1Nc06A0RAin9c5FArkhGsyMBWfCu4zj+9b+GxtjAnE4qqLQ==} - engines: {node: '>=10'} + '@sigstore/tuf@2.3.2': + resolution: {integrity: sha512-mwbY1VrEGU4CO55t+Kl6I7WZzIl+ysSzEYdA1Nv/FTrl2bkeaPXo5PnWZAVfcY2zSdhOpsUTJW67/M2zHXGn5w==} + engines: {node: ^16.14.0 || >=18.0.0} - '@sindresorhus/merge-streams@1.0.0': - resolution: {integrity: sha512-rUV5WyJrJLoloD4NDN1V1+LDMDWOa4OTsT4yYJwQNpTU6FWxkxHpL7eu4w+DmiH8x/EAM1otkPE1+LaspIbplw==} - engines: {node: '>=18'} + '@sigstore/verify@1.2.0': + resolution: {integrity: sha512-hQF60nc9yab+Csi4AyoAmilGNfpXT+EXdBgFkP9OgPwIBPwyqVf7JAWPtmqrrrneTmAT6ojv7OlH1f6Ix5BG4Q==} + engines: {node: ^16.14.0 || >=18.0.0} '@sinonjs/commons@2.0.0': resolution: {integrity: sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==} @@ -407,175 +325,97 @@ packages: '@sinonjs/text-encoding@0.7.2': resolution: {integrity: sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==} - '@tapjs/after-each@1.1.18': - resolution: {integrity: sha512-AuXeD8uUYQ/CUdfhx2jvBhJf3M+T/Kroz5T6ItocZ3jf8H/4x2OKMVbb5YcB7J4ANGtmzXp+8SBseoN1av6y0Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/after-each@1.1.20': resolution: {integrity: sha512-j5+VLjyssCfC4+fEP31tJpKdXO4pBuouovauHHc5xR2qo/hMonB/MlDHhFOL9PbC4sLBHvY4EkotwET36aLECg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/after@1.1.18': - resolution: {integrity: sha512-r0vMFMfxmO6UR+pB9zGvamaeUI+yhLokYAagsKoM3JdoZgyq0iw1fHn5hPPY8AC1tAzEYG3KtVDpJfpoOr67Iw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/after@1.1.20': resolution: {integrity: sha512-EGosPLlKe8MaZMkoyA2lJhF2h/zNNzKA93yA4fkg+tOvKaVvtI8BtSmErN2sMIYRFPHxaLzQgr0268h7m2Ysow==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/asserts@1.1.18': - resolution: {integrity: sha512-MwGs/QklLRAsMnB4fO6QFaZ0myR//E21Rek/gGCpTxz7eUwCh24/y7MlBV0W6zDFdnQ1GFbHc/fIBVtcPAWjyw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/asserts@1.1.20': resolution: {integrity: sha512-0w+c3+1TVzpObrQTRfDnE/Z3TTCWUVA4sZwzjfmhbwbF8VA83HR0Bh6fj7dIsrrsufWwp4QMyXPwN62HPwSCgg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/before-each@1.1.18': - resolution: {integrity: sha512-qxBQaOY+IkThP9iauL1tHCxirG9XuKGJvGHY4IGKuk0RswWkXmawSe5hcJ8m569dRXy9yJHEV7N0QueuyWxpBA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/before-each@1.1.20': resolution: {integrity: sha512-ln27bSetJoDo1AIFCdpwPupGhJN6dA1Sc55qHJ2Ni9O9IYc/9s5JvzzQ4eEV1hFaiROvpsS945MtQY4mRS09Lg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/before@1.1.18': - resolution: {integrity: sha512-2rkXrAWlkl0+bZ8wSNfEW/7TANs/Dg5SrY2MmdEb0x7Q/zbMoGjrPVKDRF20Me0p+tJBLWSY+FXQ0OhXK0pUjg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/before@1.1.20': resolution: {integrity: sha512-UuYor/jk+BRw9i3KuI6vrf7QF7g4V+z5ku/6qwUg7dkAE3qrCsRGNQ7Es1161ncXQUSoUy91vw/mRvFoTTRQ7Q==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/config@2.4.15': - resolution: {integrity: sha512-uU/gfQJh8aSokEBgwAAHD5ctHYbIiZYFaL6IrROcDp7Wr7/fd/dn9K4efpREwKpqKqOgL3XZPOwx7prKxrLHhA==} + '@tapjs/config@2.4.17': + resolution: {integrity: sha512-zMuOR2/i3IvKSEjKizGaR3LQ2x7VPbH3DOHGe0nW/BRnzTss9ZnKx579guHwYRBMJIqKLOsKYrBBAgM+7k6qvA==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/test': 1.4.0 - - '@tapjs/core@1.5.0': - resolution: {integrity: sha512-g+NNI5TGXVJR5G4AZCU0hWu1pdA2qB2OYrY9Ej3mWeg97mvNZBVgNtvx8Vjdwp9BfgbJfyFK7PvoB4nhKgetSQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} + '@tapjs/core': 1.5.2 + '@tapjs/test': 1.4.2 '@tapjs/core@1.5.2': resolution: {integrity: sha512-Z/xkjJBOzS3mjUxFTOvtQX34GmOLx+C27w6bFRHrPCO1YTtu08SXJ9Mdkv+7vbSlAnBLWFgZddWvpgpAYud/uQ==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - '@tapjs/error-serdes@1.2.1': - resolution: {integrity: sha512-/7eLEcrGo+Qz3eWrjkhDC+VSEOjabkkzr9eRADeU+OLFeZaik8L/GRk0SGhnp4YsQkv0jcNV00A42bEx2HIZcw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - '@tapjs/error-serdes@1.2.2': resolution: {integrity: sha512-RW2aU50JR7SSAlvoTyuwouXETLM9lP+7oZ5Z+dyKhNp8mkbbz4mXKcgd9SDHY5qTh6zvVN7OFK7ev7dYWXbrWw==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - '@tapjs/filter@1.2.18': - resolution: {integrity: sha512-0yCqaHYLejI/KyxdB5EsrRVu3wxZVl7vPXTwBoyc+ycJWXPapHLhKl67Xk5x3FW/nNelA9TCq/tSHcYlogGN0g==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/filter@1.2.20': resolution: {integrity: sha512-8zyTBjY8lYVz2W0S8nw8vq0kkwCM6Ike76n71mVzMOFcW/qXIn2ImW/PJtHREMFwLEN0aL51Ey/60Cs85EevxA==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/fixture@1.2.18': - resolution: {integrity: sha512-BQIRxydaqjZIG61QhoiQOc9HE3MxSjCn7SUsIfYCzoZoY+3aY6iCdTVg2la86b5ikTbwoWxWWbqICnFWebuHnQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/fixture@1.2.20': resolution: {integrity: sha512-QJwANuumhNv59ONrpGOMy0hY+P2rHPakOlAR8ZkkAKbdQS5E0YExZLDna/Ug47Qin6MbaqXPk6zP/eiiBxZxig==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/intercept@1.2.18': - resolution: {integrity: sha512-Trcmp64RKD2/nMz7/+NuwjJHfrn8eFofX3s3g0+QGvnTv+5B5ZQs+zWjS7q2d1Qt8LDV8CfS5w3BhYyONsocSw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/intercept@1.2.20': resolution: {integrity: sha512-LEjE2rKfELh8CM6NPAGKIi1HDFjb66G//qbTs8lnLCiulUvUWGlx4RzeBdky0532+vyR9Q3JdHsidCNOsq33ow==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/mock@1.3.0': - resolution: {integrity: sha512-Uzyikl8SS8Mg7OOr2HuyiaVhYvHNRZnw6A1/qTiJnoZ1MHcLFuwFqIX9ZhfXMil5MIYC/ET096VMDm45q9Tdvw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/mock@1.3.2': resolution: {integrity: sha512-QN3Nft/wxww/oxPpx/bgW4EF7EfxfvcAY/0VPphI3NjG/ZSNeZ7lbO9kYvh+RSRC1PtDR6OvfGA2dwQ7V/81DQ==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/node-serialize@1.3.0': - resolution: {integrity: sha512-52oQKQJMMKrI1cNu8kJ5WTv8YFnbhwfwUs3Jh1vXQb4tOhLW8IHWqXBi5AiNL3HlCMMHaKDFQjW6sbbJuMyJPA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/node-serialize@1.3.2': resolution: {integrity: sha512-KyYYU1tOTn3udST4lQUl2KsZFPbA7UGqHKT3Os/FmHplmgJeSPc5nKKCI+R2h/ADSULQx7ZiBUYot8o0GTqndw==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/processinfo@3.1.6': - resolution: {integrity: sha512-ktDsaf79wJsLaoG1Pp+stHSRf6a1k/JydoRAaYVG5iJnd3DooL6yewZsciUi2yiN/WQc5tAXCIFTXL4uXGB8LA==} - engines: {node: '>=16.17'} - '@tapjs/processinfo@3.1.7': resolution: {integrity: sha512-SI5RJQ5HnUKEWnHSAF6hOm6XPdnjZ+CJzIaVHdFebed8iDAPTqb+IwMVu9yq9+VQ7FRsMMlgLL2SW4rss2iJbQ==} engines: {node: '>=16.17'} - '@tapjs/reporter@1.3.16': - resolution: {integrity: sha512-YoZpBAFGdZyrhIaRCZDuWSeCc10A3YG/4mIdPsKpSbLXPBZ1hwCV8Y/LPCpH5kunZTXYocvQoRHU+oD4pLXC3g==} + '@tapjs/reporter@1.3.18': + resolution: {integrity: sha512-IVJf+zb1chL5uLXxWojmeylKlBlRsAQQA417FhF7V3jcTGzSSM017hI602ljnmgltvAh0vD6OHjVozDVh94b8w==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/core': 1.5.2 - '@tapjs/run@1.5.0': - resolution: {integrity: sha512-WrmbHHrhvRvLlTTAGiogF09xiPoorsoG4diAIKifGUyGD/9qRA7pT2mzYIqXvhyxbtuEmaeobHjupSZrak+O4Q==} + '@tapjs/run@1.5.2': + resolution: {integrity: sha512-4JdFP3UKmv2rWVPoRHQAUp/dSMlyzRDwnSJPE9wuXEnlZhoqjpa6n4rNrWbh02PFohogJZn1G8h5u4CBtocQRQ==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} hasBin: true peerDependencies: - '@tapjs/core': 1.5.0 - - '@tapjs/snapshot@1.2.18': - resolution: {integrity: sha512-fHt4ZgutJ922/YdmXN2d6dkwFTR6KsyD02jcSYBXVDGdFC2YnsjKk/o9s3Yt9tYnYES6Et+6udPlAKcakzR5jQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 + '@tapjs/core': 1.5.2 '@tapjs/snapshot@1.2.20': resolution: {integrity: sha512-/7ct6j//nNjiabJGMSxRsJEXSLOc6SwNC3dHuYeXP+yHIOeRK3qoonLqkt8+/9JgkZyaqIvWMdlo9ezoNPCrAw==} @@ -583,45 +423,22 @@ packages: peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/spawn@1.1.18': - resolution: {integrity: sha512-E5H0NTyTZ0FnkPUd5JU3c2KrnjjMDDAuctRd2b0v/M5LB+uAlwwEEJJ6rh+dBsFK/yatfgPli+nbHZVjUz+Usw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/spawn@1.1.20': resolution: {integrity: sha512-7w396QXOQb8P3Sar9Ldas7tyTMqFBASpRjr/a6Coyj21s/HejlaX8nnGKldbMhokCR2gZAgkmWg45B3tVqxZJA==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/stack@1.2.7': - resolution: {integrity: sha512-7qUDWDmd+y7ZQ0vTrDTvFlWnJ+ND32NemS5HVuT1ZggHtBwJ62PQHIyCx/B5RopETBb6NvFPfUE21yTiex9Jkw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - '@tapjs/stack@1.2.8': resolution: {integrity: sha512-VC8h6U62ScerTKN+MYpRPiwH2bCL65S6v1wcj1hukE2hojLcRvVdET7S3ZtRfSj/eNWW/5OVfzTpHiGjEYD6Xg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - '@tapjs/stdin@1.1.18': - resolution: {integrity: sha512-UyhK8bRRhQkmBb7N/NFa/11DucHfIzCyyba7uax+dkuXSd6OccTZVxLpRMuaOUV59QCCFAJUJDQnmaWj35fI7Q==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/stdin@1.1.20': resolution: {integrity: sha512-OX5Q8WtZU48z2SCGEfIarqinDbhX7ajPpIUYHddtK/MbDowHZvgIFZzes7bH9tP2YcQdIRu/tuuyKi/WJMWxdg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/test@1.4.0': - resolution: {integrity: sha512-t4U11uAUDUeBQTdlqtiDoiuiG3lKLhHa+PxrdIR3GlG+2wDcpqFR8aFFiuq3XTvks0uoWjKx3WkAMyjNsxmikg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/test@1.4.2': resolution: {integrity: sha512-xPcnhADRI1dua+1rcdZegLdGmkoyKxFneflQzdSPj4zOBXnzD7Kps269LBndrfA5df4ZjZBaFB0M5xSiu0cUGA==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} @@ -629,45 +446,21 @@ packages: peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/typescript@1.4.0': - resolution: {integrity: sha512-3b3pNI20Cf9NRMuT6GE288RESMYMcrwrKuj29Mroiy9MkLEyyPPHqeSRstvakn9/i/nhTlXj2YIftPo80H3OlQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/typescript@1.4.2': resolution: {integrity: sha512-JUSd3c+aly+xP0FLkcw/afYWGeobZ3//f12MUias5f0tLj7AaxpKePGyLeY1f0QvcuzPF/UKjk3BLd1Fh4u86g==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tapjs/worker@1.1.18': - resolution: {integrity: sha512-wxl/dXByMWk9FuYiiSzY/U5QU0oe9EWpf7pJ48feWsTTn42wihUHZT25kbleR4V2l68/SlTPlJkEsKnHjU27Pg==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - peerDependencies: - '@tapjs/core': 1.5.0 - '@tapjs/worker@1.1.20': resolution: {integrity: sha512-I7wvUqoe8vD8Ld65VgSWVTdbWyP6eTpSJ8At/TRKznlJj4CVSvZ3lV5RxvLCBTg7ITCKcS+mQbqsmjpsvPGXEg==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} peerDependencies: '@tapjs/core': 1.5.2 - '@tsconfig/node10@1.0.9': - resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==} - - '@tsconfig/node12@1.0.11': - resolution: {integrity: sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==} - - '@tsconfig/node14@1.0.3': - resolution: {integrity: sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==} - '@tsconfig/node14@14.1.0': resolution: {integrity: sha512-VmsCG04YR58ciHBeJKBDNMWWfYbyP8FekWVuTlpstaUPlat1D0x/tXzkWP7yCMU0eSz9V4OZU0LBWTFJ3xZf6w==} - '@tsconfig/node16@1.0.4': - resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} - '@tsconfig/node16@16.1.1': resolution: {integrity: sha512-+pio93ejHN4nINX4pXqfnR/fPLRtJBaT4ORaa5RH0Oc1zoYmo2B2koG+M328CQhHKn1Wj6FcOxCDFXAot9NhvA==} @@ -688,14 +481,11 @@ packages: '@types/istanbul-lib-coverage@2.0.6': resolution: {integrity: sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==} - '@types/node-fetch@2.6.9': - resolution: {integrity: sha512-bQVlnMLFJ2d35DkPNjEPmd9ueO/rh5EiaZt2bhqiSarPjZIuIV6bPQVqcrEyvNo+AfTrRGVazle1tl597w3gfA==} - - '@types/node@18.19.28': - resolution: {integrity: sha512-J5cOGD9n4x3YGgVuaND6khm5x07MMdAKkRyXnjVR6KFhLMNh2yONGiP7Z+4+tBOt5mK+GvDTiacTOVGGpqiecw==} + '@types/node-fetch@2.6.11': + resolution: {integrity: sha512-24xFj9R5+rfQJLRyM56qh+wnVSYhyXC2tkoBndtY0U+vubqNsYXGjufB2nn8Q6gt0LrARwL6UBtMCSVCwl4B1g==} - '@types/normalize-package-data@2.4.4': - resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} + '@types/node@20.12.7': + resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==} '@types/sinon@17.0.3': resolution: {integrity: sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==} @@ -706,10 +496,6 @@ packages: '@types/which@3.0.3': resolution: {integrity: sha512-2C1+XoY0huExTbs8MQv1DuS5FS86+SEjdM9F/+GS61gg5Hqbtj8ZiDSx8MfWcyei907fIPbfPGCOrNUTnVHY1g==} - JSONStream@1.3.5: - resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} - hasBin: true - abbrev@2.0.0: resolution: {integrity: sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -731,10 +517,6 @@ packages: resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} engines: {node: '>=8'} - aggregate-error@5.0.0: - resolution: {integrity: sha512-gOsf2YwSlleG6IjRYG2A7k0HmBMEo6qVNk9Bp/EaLgAJT5ngH6PXbqa4ItvnEwCm/velL5jAnQgsHsWnjhGmvw==} - engines: {node: '>=18'} - ansi-escapes@6.2.0: resolution: {integrity: sha512-kzRaCqXnpzWs+3z5ABPQiVke+iq0KXkHo8xiWV4RPTi5Yli0l97BEQuhXV1s7+aSU/fu1kUuxgS4MsQ0fRuygw==} engines: {node: '>=14.16'} @@ -747,25 +529,14 @@ packages: resolution: {integrity: sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==} engines: {node: '>=12'} - ansi-styles@3.2.1: - resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} - engines: {node: '>=4'} - ansi-styles@4.3.0: resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} engines: {node: '>=8'} - ansi-styles@5.2.0: - resolution: {integrity: sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==} - engines: {node: '>=10'} - ansi-styles@6.2.1: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} - ansicolors@0.3.2: - resolution: {integrity: sha512-QXu7BPrP29VllRxH8GwB7x5iX5qWKAAMLqKQGWTeLWVlNHNOpVMJ91dsxQAIWXpjuW5wqvxu3Jd/nRjrJ+0pqg==} - anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -773,15 +544,6 @@ packages: arg@4.1.3: resolution: {integrity: sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==} - argparse@2.0.1: - resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} - - argv-formatter@1.0.0: - resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==} - - array-ify@1.0.0: - resolution: {integrity: sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==} - asn1.js@5.4.1: resolution: {integrity: sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==} @@ -809,9 +571,6 @@ packages: bn.js@4.12.0: resolution: {integrity: sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==} - bottleneck@2.19.5: - resolution: {integrity: sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==} - brace-expansion@1.1.11: resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} @@ -834,34 +593,10 @@ packages: resolution: {integrity: sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==} engines: {node: ^16.14.0 || >=18.0.0} - callsites@3.1.0: - resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} - engines: {node: '>=6'} - - cardinal@2.1.1: - resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} - hasBin: true - - chalk@2.4.2: - resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} - engines: {node: '>=4'} - - chalk@4.1.2: - resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} - engines: {node: '>=10'} - chalk@5.3.0: resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - char-regex@1.0.2: - resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} - engines: {node: '>=10'} - - chokidar@3.5.3: - resolution: {integrity: sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==} - engines: {node: '>= 8.10.0'} - chokidar@3.6.0: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} @@ -878,10 +613,6 @@ packages: resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} engines: {node: '>=6'} - clean-stack@5.2.0: - resolution: {integrity: sha512-TyUIUJgdFnCISzG5zu3291TAsE77ddchd0bepon1VVQrKLGKFED4iXFEDQ24mIPdPBbyE16PK3F8MYE1CmcBEQ==} - engines: {node: '>=14.16'} - cli-boxes@3.0.0: resolution: {integrity: sha512-/lzGpEWL/8PfI0BmBOPRwp0c/wFNX1RdUML3jK/RcSBA9T8mZDdQpqYBKtCFTOfQbwPqWEOpjqW+Fnayc0969g==} engines: {node: '>=10'} @@ -890,10 +621,6 @@ packages: resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - cli-table3@0.6.3: - resolution: {integrity: sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==} - engines: {node: 10.* || >= 12.*} - cli-truncate@3.1.0: resolution: {integrity: sha512-wfOBkjXteqSnI59oPcJkcPl/ZmwvMMOj340qUIY1SKZCv0B9Cf4D4fAucRkIKQmsIuYK3x1rrgU7MeGRruiuiA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -906,16 +633,10 @@ packages: resolution: {integrity: sha512-xxodCmBen3iy2i0WtAK8FlFNrRzjUqjRsMfho58xT/wvZU1YTM3fCnRjcy1gJPMepaRlgm/0e6w8SpWHpn3/cA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - color-convert@1.9.3: - resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} - color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} - color-name@1.1.3: - resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==} - color-name@1.1.4: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} @@ -923,33 +644,9 @@ packages: resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==} engines: {node: '>= 0.8'} - compare-func@2.0.0: - resolution: {integrity: sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==} - concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - config-chain@1.1.13: - resolution: {integrity: sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==} - - conventional-changelog-angular@7.0.0: - resolution: {integrity: sha512-ROjNchA9LgfNMTTFSIWPzebCwOGFdgkEq45EnvvrmSLvCtAw0HSmrCs7/ty+wAeYUZyNay0YMUNYFTRL72PkBQ==} - engines: {node: '>=16'} - - conventional-changelog-writer@7.0.1: - resolution: {integrity: sha512-Uo+R9neH3r/foIvQ0MKcsXkX642hdm9odUp7TqgFS7BsalTcjzRlIfWZrZR1gbxOozKucaKt5KAbjW8J8xRSmA==} - engines: {node: '>=16'} - hasBin: true - - conventional-commits-filter@4.0.0: - resolution: {integrity: sha512-rnpnibcSOdFcdclpFwWa+pPlZJhXE7l+XK04zxhbWrhgpR96h33QLz8hITTXbcYICxVr3HZFtbtUAQ+4LdBo9A==} - engines: {node: '>=16'} - - conventional-commits-parser@5.0.0: - resolution: {integrity: sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==} - engines: {node: '>=16'} - hasBin: true - convert-source-map@2.0.0: resolution: {integrity: sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==} @@ -957,21 +654,6 @@ packages: resolution: {integrity: sha512-rcQ1bsQO9799wq24uE5AM2tAILy4gXGIK/njFWcVQkGNZ96edlpY+A7bjwvzjYvLDyzmG1MmMLZhpcsb+klNMQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - core-util-is@1.0.3: - resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} - - cosmiconfig@8.3.6: - resolution: {integrity: sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==} - engines: {node: '>=14'} - peerDependencies: - typescript: '>=4.9.5' - peerDependenciesMeta: - typescript: - optional: true - - create-require@1.1.1: - resolution: {integrity: sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==} - cross-env@7.0.3: resolution: {integrity: sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==} engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} @@ -981,10 +663,6 @@ packages: resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} engines: {node: '>= 8'} - crypto-random-string@4.0.0: - resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} - engines: {node: '>=12'} - debug@4.3.4: resolution: {integrity: sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==} engines: {node: '>=6.0'} @@ -994,10 +672,6 @@ packages: supports-color: optional: true - deep-extend@0.6.0: - resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} - engines: {node: '>=4.0.0'} - delayed-stream@1.0.0: resolution: {integrity: sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==} engines: {node: '>=0.4.0'} @@ -1005,10 +679,6 @@ packages: deprecation@2.3.1: resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} - diff-sequences@29.6.3: - resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - diff@4.0.2: resolution: {integrity: sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==} engines: {node: '>=0.3.1'} @@ -1021,17 +691,6 @@ packages: resolution: {integrity: sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==} engines: {node: '>=0.3.1'} - dir-glob@3.0.1: - resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} - engines: {node: '>=8'} - - dot-prop@5.3.0: - resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} - engines: {node: '>=8'} - - duplexer2@0.1.4: - resolution: {integrity: sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==} - eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} @@ -1041,16 +700,9 @@ packages: emoji-regex@9.2.2: resolution: {integrity: sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==} - emojilib@2.4.0: - resolution: {integrity: sha512-5U0rVMU5Y2n2+ykNLQqMoqklN9ICBT/KsvC1Gz6vqHbz2AXXGkG+Pm5rMWk/8Vjrr/mY9985Hi8DYzn1F09Nyw==} - encoding@0.1.13: resolution: {integrity: sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==} - env-ci@10.0.0: - resolution: {integrity: sha512-U4xcd/utDYFgMh0yWj07R1H6L5fwhVbmxBCpnL0DbVSDZVnsC82HONw0wxtxNkIAcua3KtbomQvIk5xFZGAQJw==} - engines: {node: ^18.17 || >=20.6.1} - env-paths@2.2.1: resolution: {integrity: sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==} engines: {node: '>=6'} @@ -1058,80 +710,29 @@ packages: err-code@2.0.3: resolution: {integrity: sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==} - error-ex@1.3.2: - resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} - escalade@3.1.1: resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} engines: {node: '>=6'} - escape-string-regexp@1.0.5: - resolution: {integrity: sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==} - engines: {node: '>=0.8.0'} - escape-string-regexp@2.0.0: resolution: {integrity: sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==} engines: {node: '>=8'} - escape-string-regexp@5.0.0: - resolution: {integrity: sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==} - engines: {node: '>=12'} - - esprima@4.0.1: - resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} - engines: {node: '>=4'} - hasBin: true - events-to-array@2.0.3: resolution: {integrity: sha512-f/qE2gImHRa4Cp2y1stEOSgw8wTFyUdVJX7G//bMwbaV9JqISFxg99NbmVQeP7YLnDUZ2un851jlaDrlpmGehQ==} engines: {node: '>=12'} - execa@5.1.1: - resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} - engines: {node: '>=10'} - - execa@8.0.1: - resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} - engines: {node: '>=16.17'} - exponential-backoff@3.1.1: resolution: {integrity: sha512-dX7e/LHVJ6W3DE1MHWi9S1EYzDESENfLrYohG2G++ovZrYOkm4Knwa0mc1cn84xJOR4KEU0WSchhLbd0UklbHw==} - fast-glob@3.3.2: - resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==} - engines: {node: '>=8.6.0'} - - fastq@1.15.0: - resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} - - figures@2.0.0: - resolution: {integrity: sha512-Oa2M9atig69ZkfwiApY8F2Yy+tzMbazyvqv21R0NsSC8floSOC09BbT1ITWAdoMGQvJ/aZnR1KMwdx9tvHnTNA==} - engines: {node: '>=4'} - - figures@6.0.1: - resolution: {integrity: sha512-0oY/olScYD4IhQ8u//gCPA4F3mlTn2dacYmiDm/mbDQvpmLjV4uH+zhsQ5IyXRyvqkvtUkXkNdGvg5OFJTCsuQ==} - engines: {node: '>=18'} - fill-range@7.0.1: resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} engines: {node: '>=8'} - find-up-simple@1.0.0: - resolution: {integrity: sha512-q7Us7kcjj2VMePAa02hDAF6d+MzsdsAWEwYyOpwUtlerRBkOEPBCRZrAV4XfcSN8fHAgaD0hP7miwoay6DCprw==} - engines: {node: '>=18'} - - find-up@2.1.0: - resolution: {integrity: sha512-NWzkk0jSJtTt08+FBFMvXoeZnOJD+jTtsRmBYbAIzJdX6l7dLgR7CTubCM5/eDdPUBvLCeVasP1brfVR/9/EZQ==} - engines: {node: '>=4'} - find-up@5.0.0: resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} engines: {node: '>=10'} - find-versions@5.1.0: - resolution: {integrity: sha512-+iwzCJ7C5v5KgcBuueqVoNiHVoQpwiUK5XFLjf0affFTep+Wcw93tPvmb8tqujDNmzhBDPddnWV/qgWSXgq+Hg==} - engines: {node: '>=12'} - foreground-child@2.0.0: resolution: {integrity: sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==} engines: {node: '>=8.0.0'} @@ -1144,16 +745,9 @@ packages: resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==} engines: {node: '>= 6'} - from2@2.3.0: - resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==} - fromentries@1.3.2: resolution: {integrity: sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==} - fs-extra@11.1.1: - resolution: {integrity: sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==} - engines: {node: '>=14.14'} - fs-minipass@2.1.0: resolution: {integrity: sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==} engines: {node: '>= 8'} @@ -1180,21 +774,6 @@ packages: resolution: {integrity: sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==} engines: {node: 6.* || 8.* || >= 10.*} - get-stream@6.0.1: - resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} - engines: {node: '>=10'} - - get-stream@7.0.1: - resolution: {integrity: sha512-3M8C1EOFN6r8AMUhwUAACIoXZJEOufDU5+0gFFN5uNs6XYOralD2Pqkl7m046va6x77FwposWXbAhPPIOus7mQ==} - engines: {node: '>=16'} - - get-stream@8.0.1: - resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} - engines: {node: '>=16'} - - git-log-parser@1.2.0: - resolution: {integrity: sha512-rnCVNfkTL8tdNryFuaY0fYiBWEBcgF748O6ZI61rslBvr2o7U65c2/6npCRqH40vuAhtgtDiqLTJjBVdrejCzA==} - glob-parent@5.1.2: resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} engines: {node: '>= 6'} @@ -1207,29 +786,9 @@ packages: glob@7.2.3: resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==} - glob@8.1.0: - resolution: {integrity: sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==} - engines: {node: '>=12'} - - globby@14.0.0: - resolution: {integrity: sha512-/1WM/LNHRAOH9lZta77uGbq0dAEQM+XjNesWwhlERDVenqothRbnzTrL3/LrIoEPPjeUHC3vrS6TwoyxeHs7MQ==} - engines: {node: '>=18'} - - graceful-fs@4.2.10: - resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==} - graceful-fs@4.2.11: resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==} - handlebars@4.7.8: - resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} - engines: {node: '>=0.4.7'} - hasBin: true - - has-flag@3.0.0: - resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==} - engines: {node: '>=4'} - has-flag@4.0.0: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} @@ -1242,10 +801,6 @@ packages: resolution: {integrity: sha512-zZ6T5WcuBMIUVh49iPQS9t977t7C0l7OtHrpeMb5uk48JdflRX0NSFvCekfYNmGQETnLq9W/isMyHl69kxGi8g==} engines: {node: '>=8'} - hook-std@3.0.0: - resolution: {integrity: sha512-jHRQzjSDzMtFy34AGj1DN+vq54WVuhSvKgrHf0OMiFQTwDD4L/qqofVEWjLOBMTn5+lCD3fPg32W9yOfnEJTTw==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - hosted-git-info@7.0.1: resolution: {integrity: sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==} engines: {node: ^16.14.0 || >=18.0.0} @@ -1264,14 +819,6 @@ packages: resolution: {integrity: sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==} engines: {node: '>= 14'} - human-signals@2.1.0: - resolution: {integrity: sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==} - engines: {node: '>=10.17.0'} - - human-signals@5.0.0: - resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} - engines: {node: '>=16.17.0'} - iconv-lite@0.6.3: resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} @@ -1280,21 +827,6 @@ packages: resolution: {integrity: sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - ignore@5.2.4: - resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} - engines: {node: '>= 4'} - - import-fresh@3.3.0: - resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} - engines: {node: '>=6'} - - import-from-esm@1.2.1: - resolution: {integrity: sha512-Nly5Ab75rWZmOwtMa0B0NQNnHGcHOQ2zkU/bVENwK2lbPq+kamPDqNKNJ0hF7w7lR/ETD5nGgJq0XbofsZpYCA==} - engines: {node: '>=16.20'} - - import-meta-resolve@4.0.0: - resolution: {integrity: sha512-okYUR7ZQPH+efeuMJGlq4f8ubUgO50kByRPyt/Cy1Io4PSRsPjxME+YlVaCOx+NIToW7hCsZNFJyTPFFKepRSA==} - imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -1307,19 +839,12 @@ packages: resolution: {integrity: sha512-m6FAo/spmsW2Ab2fU35JTYwtOKa2yAwXSwgjSv1TJzh4Mh7mC3lzAOVLBprb72XsTrgkEIsl7YrFNAiDiRhIGg==} engines: {node: '>=12'} - index-to-position@0.1.2: - resolution: {integrity: sha512-MWDKS3AS1bGCHLBA2VLImJz42f7bJh8wQsTGCzI3j519/CASStoDONUBVz2I/VID0MpiX3SGSnbOD2xUalbE5g==} - engines: {node: '>=18'} - inflight@1.0.6: resolution: {integrity: sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==} inherits@2.0.4: resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} - ini@1.3.8: - resolution: {integrity: sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==} - ink@4.4.1: resolution: {integrity: sha512-rXckvqPBB0Krifk5rn/5LvQGmyXwCUpBfmTwbkQNBY9JY8RSl3b8OftBNEYxg4+SWUhEKcPifgope28uL9inlA==} engines: {node: '>=14.16'} @@ -1333,19 +858,12 @@ packages: react-devtools-core: optional: true - into-stream@7.0.0: - resolution: {integrity: sha512-2dYz766i9HprMBasCMvHMuazJ7u4WzhJwo5kb3iPSiW/iRYV6uPari3zHoqZlnuaR7V1bEiNMxikhp37rdBXbw==} - engines: {node: '>=12'} - ip@2.0.1: resolution: {integrity: sha512-lJUL9imLTNi1ZfXT+DU6rBBdbiKGBuay9B6xGSPVjUeQwaH1RIGqef8RZkUtHioLmSNpPR5M4HVKJGm1j8FWVQ==} is-actual-promise@1.0.1: resolution: {integrity: sha512-PlsL4tNv62lx5yN2HSqaRSTgIpUAPW7U6+crVB8HfWm5161rZpeqWbl0ZSqH2MAfRKXWSZVPRNbE/r8qPcb13g==} - is-arrayish@0.2.1: - resolution: {integrity: sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==} - is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} @@ -1383,39 +901,16 @@ packages: resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} engines: {node: '>=0.12.0'} - is-obj@2.0.0: - resolution: {integrity: sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==} - engines: {node: '>=8'} - is-plain-object@5.0.0: resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==} engines: {node: '>=0.10.0'} - is-stream@2.0.1: - resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==} - engines: {node: '>=8'} - - is-stream@3.0.0: - resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - is-text-path@2.0.0: - resolution: {integrity: sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==} - engines: {node: '>=8'} - - is-unicode-supported@2.0.0: - resolution: {integrity: sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==} - engines: {node: '>=18'} - is-upper-case@2.0.2: resolution: {integrity: sha512-44pxmxAvnnAOwBg4tHPnkfvgjPwbc5QIsSstNU+YcJ1ovxVzCWpSGosPJOZh/a1tdl81fbgnLc9LLv+x2ywbPQ==} isarray@0.0.1: resolution: {integrity: sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==} - isarray@1.0.0: - resolution: {integrity: sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==} - isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} @@ -1423,10 +918,6 @@ packages: resolution: {integrity: sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==} engines: {node: '>=16'} - issue-parser@6.0.0: - resolution: {integrity: sha512-zKa/Dxq2lGsBIXQ7CUZWTHfvxPC2ej0KfO7fIPqLlHB9J2hJ7rGhZ5rilhuufylr4RXYPzJUeFjKxz305OsNlA==} - engines: {node: '>=10.13'} - istanbul-lib-coverage@3.2.2: resolution: {integrity: sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==} engines: {node: '>=8'} @@ -1443,31 +934,9 @@ packages: resolution: {integrity: sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==} engines: {node: '>=14'} - java-properties@1.0.2: - resolution: {integrity: sha512-qjdpeo2yKlYTH7nFdK0vbZWuTCesk4o63v5iVOlhMQPfuIZQfW/HI35SjfhA+4qpg36rnFSvUK5b1m+ckIblQQ==} - engines: {node: '>= 0.6.0'} - - jest-diff@29.7.0: - resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - - jest-get-type@29.6.3: - resolution: {integrity: sha512-zrteXnqYxfQh7l5FHyL38jL39di8H8rHoecLH3JNxH3BwOrBsNeabdap5e0I23lD4HHI8W5VFBZqG4Eaq5LNcw==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} - js-yaml@4.1.0: - resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} - hasBin: true - - json-parse-better-errors@1.0.2: - resolution: {integrity: sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==} - - json-parse-even-better-errors@2.3.1: - resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} - json-parse-even-better-errors@3.0.0: resolution: {integrity: sha512-iZbGHafX/59r39gPwVPRBGw0QQKnA7tte5pSMrhWOW7swGsVvVTjmfyAV9pNqk8YGT7tRCdxRu8uzcgZwoDooA==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -1475,9 +944,6 @@ packages: json-stringify-safe@5.0.1: resolution: {integrity: sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==} - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} - jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} engines: {'0': node >= 0.2.0} @@ -1485,42 +951,13 @@ packages: just-extend@4.2.1: resolution: {integrity: sha512-g3UB796vUFIY90VIv/WX3L2c8CS2MdWUww3CNrYmqza1Fg0DURc2K/O4YrnklBdQarSJ/y8JnJYDGc+1iumQjg==} - lines-and-columns@1.2.4: - resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - - load-json-file@4.0.0: - resolution: {integrity: sha512-Kx8hMakjX03tiGTLAIdJ+lL0htKnXjEZN6hk/tozf/WOuYGdZBJrZ+rCJRbVCugsjB3jMLn9746NsQIf5VjBMw==} - engines: {node: '>=4'} - - locate-path@2.0.0: - resolution: {integrity: sha512-NCI2kiDkyR7VeEKm27Kda/iQHyKJe1Bu0FlTbYp3CqJu+9IFe9bLyAjMxf5ZDDbEg+iMPzB5zYyUTSm8wVTKmA==} - engines: {node: '>=4'} - locate-path@6.0.0: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} - lodash-es@4.17.21: - resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} - - lodash.capitalize@4.2.1: - resolution: {integrity: sha512-kZzYOKspf8XVX5AvmQF94gQW0lejFVgb80G85bU4ZWzoJ6C03PQg3coYAUpSTpQWelrZELd3XWgHzw4Ck5kaIw==} - - lodash.escaperegexp@4.1.2: - resolution: {integrity: sha512-TM9YBvyC84ZxE3rgfefxUWiQKLilstD6k7PTGt6wfbtXF8ixIJLOL3VYyV/z+ZiPLsVxAsKAFVwWlWeb2Y8Yyw==} - lodash.get@4.4.2: resolution: {integrity: sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==} - lodash.isplainobject@4.0.6: - resolution: {integrity: sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==} - - lodash.isstring@4.0.1: - resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} - - lodash.uniqby@4.7.0: - resolution: {integrity: sha512-e/zcLx6CSbmaEgFHCA7BnoQKyCtKMxnuWrJygbwPs/AIn+IMKl66L8/s+wBUn5LRw2pZx3bUHibiV1b6aTWIww==} - lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} @@ -1547,32 +984,6 @@ packages: resolution: {integrity: sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==} engines: {node: ^16.14.0 || >=18.0.0} - marked-terminal@6.1.0: - resolution: {integrity: sha512-QaCSF6NV82oo6K0szEnmc65ooDeW0T/Adcyf0fcW+Hto2GT1VADFg8dn1zaeHqzj65fqDH1hMNChGNRaC/lbkA==} - engines: {node: '>=16.0.0'} - peerDependencies: - marked: '>=1 <11' - - marked@9.1.6: - resolution: {integrity: sha512-jcByLnIFkd5gSXZmjNvS1TlmRhCXZjIzHYlaGkPlLIekG55JDR2Z4va9tZwCiP+/RDERiNhMOFu01xd6O5ct1Q==} - engines: {node: '>= 16'} - hasBin: true - - meow@12.1.1: - resolution: {integrity: sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==} - engines: {node: '>=16.10'} - - merge-stream@2.0.0: - resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} - - merge2@1.4.1: - resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} - engines: {node: '>= 8'} - - micromatch@4.0.5: - resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} - engines: {node: '>=8.6'} - mime-db@1.52.0: resolution: {integrity: sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==} engines: {node: '>= 0.6'} @@ -1581,29 +992,16 @@ packages: resolution: {integrity: sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==} engines: {node: '>= 0.6'} - mime@4.0.0: - resolution: {integrity: sha512-pzhgdeqU5pJ9t5WK9m4RT4GgGWqYJylxUf62Yb9datXRwdcw5MjiD1BYI5evF8AgTXN9gtKX3CFLvCUL5fAhEA==} - engines: {node: '>=16'} - hasBin: true - mimic-fn@2.1.0: resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} engines: {node: '>=6'} - mimic-fn@4.0.0: - resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} - engines: {node: '>=12'} - minimalistic-assert@1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} - engines: {node: '>=10'} - minimatch@9.0.3: resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} engines: {node: '>=16 || 14 >=14.17'} @@ -1612,9 +1010,6 @@ packages: resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} engines: {node: '>=16 || 14 >=14.17'} - minimist@1.2.8: - resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} - minipass-collect@1.0.2: resolution: {integrity: sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==} engines: {node: '>= 8'} @@ -1674,22 +1069,13 @@ packages: resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==} engines: {node: '>= 0.6'} - neo-async@2.6.2: - resolution: {integrity: sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==} - - nerf-dart@1.0.0: - resolution: {integrity: sha512-EZSPZB70jiVsivaBLYDCyntd5eH8NTSMOn3rB+HxwdmKThGELLdYv8qVIMWvZEFy9w8ZZpW9h9OB32l1rGtj7g==} - nise@5.1.5: resolution: {integrity: sha512-VJuPIfUFaXNRzETTQEEItTOP8Y171ijr+JLq42wHes3DiryR8vT+1TXQW/Rx8JNUhyYYWyIvjXTU6dOhJcs9Nw==} - nock@13.4.0: - resolution: {integrity: sha512-W8NVHjO/LCTNA64yxAPHV/K47LpGYcVzgKd3Q0n6owhwvD0Dgoterc25R4rnZbckJEb6Loxz1f5QMuJpJnbSyQ==} + nock@13.5.4: + resolution: {integrity: sha512-yAyTfdeNJGGBFxWdzSKCBYxs5FxLbCg5X5Q4ets974hcQzG1+qCxvIyOo4j2Ry6MUlhWVMX4OoYDefAIIwupjw==} engines: {node: '>= 10.13'} - node-emoji@2.1.0: - resolution: {integrity: sha512-tcsBm9C6FmPN5Wo7OjFi9lgMyJjvkAeirmjR/ax8Ttfqy4N8PoFic26uqFTIgayHPNI5FH4ltUvfh9kHzwcK9A==} - node-fetch@2.7.0: resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} @@ -1717,10 +1103,6 @@ packages: resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} engines: {node: '>=0.10.0'} - normalize-url@8.0.0: - resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==} - engines: {node: '>=14.16'} - npm-bundled@3.0.0: resolution: {integrity: sha512-Vq0eyEQy+elFpzsKjMss9kxqb9tG3YHg4dsyWuUENuzvSUWe1TCnW/vV9FkhvBk/brEDoDiVd+M1Btosa6ImdQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -1749,91 +1131,6 @@ packages: resolution: {integrity: sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==} engines: {node: ^16.14.0 || >=18.0.0} - npm-run-path@4.0.1: - resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} - engines: {node: '>=8'} - - npm-run-path@5.1.0: - resolution: {integrity: sha512-sJOdmRGrY2sjNTRMbSvluQqg+8X7ZK61yvzBEIDhz4f8z1TZFYABsqjjCBd/0PUNE9M6QDgHJXQkGUEm7Q+l9Q==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - npm@10.2.3: - resolution: {integrity: sha512-GbUui/rHTl0mW8HhJSn4A0Xg89yCR3I9otgJT1i0z1QBPOVlgbh6rlcUTpHT8Gut9O1SJjWRUU0nEcAymhG2tQ==} - engines: {node: ^18.17.0 || >=20.5.0} - hasBin: true - bundledDependencies: - - '@isaacs/string-locale-compare' - - '@npmcli/arborist' - - '@npmcli/config' - - '@npmcli/fs' - - '@npmcli/map-workspaces' - - '@npmcli/package-json' - - '@npmcli/promise-spawn' - - '@npmcli/run-script' - - '@sigstore/tuf' - - abbrev - - archy - - cacache - - chalk - - ci-info - - cli-columns - - cli-table3 - - columnify - - fastest-levenshtein - - fs-minipass - - glob - - graceful-fs - - hosted-git-info - - ini - - init-package-json - - is-cidr - - json-parse-even-better-errors - - libnpmaccess - - libnpmdiff - - libnpmexec - - libnpmfund - - libnpmhook - - libnpmorg - - libnpmpack - - libnpmpublish - - libnpmsearch - - libnpmteam - - libnpmversion - - make-fetch-happen - - minimatch - - minipass - - minipass-pipeline - - ms - - node-gyp - - nopt - - normalize-package-data - - npm-audit-report - - npm-install-checks - - npm-package-arg - - npm-pick-manifest - - npm-profile - - npm-registry-fetch - - npm-user-validate - - npmlog - - p-map - - pacote - - parse-conflict-json - - proc-log - - qrcode-terminal - - read - - semver - - spdx-expression-parse - - ssri - - strip-ansi - - supports-color - - tar - - text-table - - tiny-relative-date - - treeverse - - validate-npm-package-name - - which - - write-file-atomic - once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} @@ -1841,42 +1138,18 @@ packages: resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} engines: {node: '>=6'} - onetime@6.0.0: - resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} - engines: {node: '>=12'} - opener@1.5.2: resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} hasBin: true - openpgp@5.11.0: - resolution: {integrity: sha512-hytHsxIPtRhuh6uAmoBUThHSwHSX3imLu7x4453T+xkVqIw49rl22MRD4KQIAQdCDoVdouejzYgcuLmMA/2OAA==} + openpgp@5.11.1: + resolution: {integrity: sha512-TynUBPuaSI7dN0gP+A38CjNRLxkOkkptefNanalDQ71BFAKKm+dLbksymSW5bUrB7RcAneMySL/Y+r/TbLpOnQ==} engines: {node: '>= 8.0.0'} - p-each-series@3.0.0: - resolution: {integrity: sha512-lastgtAdoH9YaLyDa5i5z64q+kzOcQHsQ5SsZJD3q0VEyI8mq872S3geuNbRUQLVAE9siMfgKrpj7MloKFHruw==} - engines: {node: '>=12'} - - p-filter@4.1.0: - resolution: {integrity: sha512-37/tPdZ3oJwHaS3gNJdenCDB3Tz26i9sjhnguBtvN0vYlRIiDNnvTWkuh+0hETV9rLPdJ3rlL3yVOYPIAnM8rw==} - engines: {node: '>=18'} - - p-is-promise@3.0.0: - resolution: {integrity: sha512-Wo8VsW4IRQSKVXsJCn7TomUaVtyfjVDn3nUP7kE967BQk0CwFpdbZs0X0uk5sW9mkBa9eNM7hCMaG93WUAwxYQ==} - engines: {node: '>=8'} - - p-limit@1.3.0: - resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} - engines: {node: '>=4'} - p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} engines: {node: '>=10'} - p-locate@2.0.0: - resolution: {integrity: sha512-nQja7m7gSKuewoVRen45CtVfODR3crN3goVQ0DDZ9N3yHxgpkuBhZqsaiotSQRrADUrne346peY7kT3TSACykg==} - engines: {node: '>=4'} - p-locate@5.0.0: resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} engines: {node: '>=10'} @@ -1885,51 +1158,15 @@ packages: resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} engines: {node: '>=10'} - p-map@7.0.1: - resolution: {integrity: sha512-2wnaR0XL/FDOj+TgpDuRb2KTjLnu3Fma6b1ZUwGY7LcqenMcvP/YFpjpbPKY6WVGsbuJZRuoUz8iPrt8ORnAFw==} - engines: {node: '>=18'} - - p-reduce@2.1.0: - resolution: {integrity: sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw==} - engines: {node: '>=8'} - - p-reduce@3.0.0: - resolution: {integrity: sha512-xsrIUgI0Kn6iyDYm9StOpOeK29XM1aboGji26+QEortiFST1hGZaUQOLhtEbqHErPpGW/aSz6allwK2qcptp0Q==} - engines: {node: '>=12'} - - p-try@1.0.0: - resolution: {integrity: sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==} - engines: {node: '>=4'} - - pacote@17.0.4: - resolution: {integrity: sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==} + pacote@17.0.7: + resolution: {integrity: sha512-sgvnoUMlkv9xHwDUKjKQFXVyUi8dtJGKp3vg6sYy+TxbDic5RjZCHF3ygv0EJgNRZ2GfRONjlKPUfokJ9lDpwQ==} engines: {node: ^16.14.0 || >=18.0.0} hasBin: true - parent-module@1.0.1: - resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} - engines: {node: '>=6'} - - parse-json@4.0.0: - resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==} - engines: {node: '>=4'} - - parse-json@5.2.0: - resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} - engines: {node: '>=8'} - - parse-json@8.0.1: - resolution: {integrity: sha512-soKUg/q/8bcfuF3+plsbYldE74cVEVEPSC1BUPIGTaX1byXdz6Fo+CVYBdH0jj/5xWsFrNRksl11QkBgHqPQeQ==} - engines: {node: '>=18'} - patch-console@2.0.0: resolution: {integrity: sha512-0YNdUceMdaQwoKce1gatDScmMo5pu/tfABfnzEqeG0gtTmd7mh/WcwgUjtAeOU7N8nFFlbQBnFK2gXW5fGvmMA==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - path-exists@3.0.0: - resolution: {integrity: sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==} - engines: {node: '>=4'} - path-exists@4.0.0: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} @@ -1942,10 +1179,6 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} - path-key@4.0.0: - resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} - engines: {node: '>=12'} - path-scurry@1.10.1: resolution: {integrity: sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==} engines: {node: '>=16 || 14 >=14.17'} @@ -1953,43 +1186,18 @@ packages: path-to-regexp@1.8.0: resolution: {integrity: sha512-n43JRhlUKUAlibEJhPeir1ncUID16QnEjNpwzNdO3Lm4ywrBpBZ5oLD0I6br9evr1Y9JTqwRtAh7JLoOzAQdVA==} - path-type@4.0.0: - resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} - engines: {node: '>=8'} - - path-type@5.0.0: - resolution: {integrity: sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==} - engines: {node: '>=12'} - picomatch@2.3.1: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} - pify@3.0.0: - resolution: {integrity: sha512-C3FsVNH1udSEX48gGX1xfvwTWfsYWj5U+8/uK15BGzIGrKoUpghX8hWZwa/OFnakBiiVNmBvemTJR5mcy7iPcg==} - engines: {node: '>=4'} - pirates@4.0.6: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} - pkg-conf@2.1.0: - resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==} - engines: {node: '>=4'} - polite-json@4.0.1: resolution: {integrity: sha512-8LI5ZeCPBEb4uBbcYKNVwk4jgqNx1yHReWoW4H4uUihWlSqZsUDfSITrRhjliuPgxsNPFhNSudGO2Zu4cbWinQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - prettier@3.2.5: - resolution: {integrity: sha512-3/GWa9aOC0YeD7LUfvOG2NiDyhOWRvt1k+rcKhOuYnMY24iiCphgneUfJDyFXd6rZCAnuLBv6UeAULtrhT/F4A==} - engines: {node: '>=14'} - hasBin: true - - pretty-format@29.7.0: - resolution: {integrity: sha512-Pdlw/oPxN+aXdmM9R00JVC9WVFoCLTKJvDVLgmJ+qAffBMxsV85l/Lu7sNx4zSzPyoL2euImuEwHhOXdEgNFZQ==} - engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - prismjs-terminal@1.2.3: resolution: {integrity: sha512-xc0zuJ5FMqvW+DpiRkvxURlz98DdfDsZcFHdO699+oL+ykbFfgI7O4VDEgUyc07BSL2NHl3zdb8m/tZ/aaqUrw==} engines: {node: '>=16'} @@ -2002,8 +1210,9 @@ packages: resolution: {integrity: sha512-++Vn7NS4Xf9NacaU9Xq3URUuqZETPsf8L4j5/ckhaRYsfPeRyzGw+iDjFhV/Jr3uNmTvvddEJFWh5R1gRgUH8A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - process-nextick-args@2.0.1: - resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==} + proc-log@4.2.0: + resolution: {integrity: sha512-g8+OnU/L2v+wyiVK+D5fA34J7EH8jZ8DDlvwhRCMxmMj7UCBvxiO1mGeN+36JXIKF4zevU4kRBd8lVgG9vLelA==} + engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} process-on-spawn@1.0.0: resolution: {integrity: sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==} @@ -2025,16 +1234,6 @@ packages: resolution: {integrity: sha512-vGrhOavPSTz4QVNuBNdcNXePNdNMaO1xj9yBeH1ScQPjk/rhg9sSlCXPhMkFuaNNW/syTvYqsnbIJxMBfRbbag==} engines: {node: '>= 8'} - proto-list@1.2.4: - resolution: {integrity: sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==} - - queue-microtask@1.2.3: - resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} - - rc@1.2.8: - resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} - hasBin: true - react-dom@18.2.0: resolution: {integrity: sha512-6IMTriUmvsjHUjNtEDudZfuDQUoWXVxKHhlEGSk81n4YFS+r/Kl99wXiwlVXtPBtJenozv2P+hxDsw9eA7Xo6g==} peerDependencies: @@ -2049,9 +1248,6 @@ packages: react-is@18.1.0: resolution: {integrity: sha512-Fl7FuabXsJnV5Q1qIOQwx/sagGF18kogb4gpfcG4gjLBWO0WDiiz1ko/ExayuxE7InyQkBLkxRFG5oxY6Uu3Kg==} - react-is@18.2.0: - resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==} - react-reconciler@0.29.0: resolution: {integrity: sha512-wa0fGj7Zht1EYMRhKWwoo1H9GApxYLBuhoAuXN0TlltESAjDssB+Apf0T/DngVqaMyPypDmabL37vw/2aRM98Q==} engines: {node: '>=0.10.0'} @@ -2070,46 +1266,14 @@ packages: resolution: {integrity: sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==} engines: {node: ^16.14.0 || >=18.0.0} - read-pkg-up@11.0.0: - resolution: {integrity: sha512-LOVbvF1Q0SZdjClSefZ0Nz5z8u+tIE7mV5NibzmE9VYmDe9CaBbAVtz1veOSZbofrdsilxuDAYnFenukZVp8/Q==} - engines: {node: '>=18'} - deprecated: Renamed to read-package-up - - read-pkg@9.0.0: - resolution: {integrity: sha512-SBoBio4xhJmlF4xs9IBliWZGSbDAnrOfQkLGL7xB+RYEUZNAN2LlNkzO45B7gc7c2dLMX987bhHAaJ/LG3efeQ==} - engines: {node: '>=18'} - - readable-stream@2.3.8: - resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==} - readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - redeyed@2.1.1: - resolution: {integrity: sha512-FNpGGo1DycYAdnrKFxCMmKYgo/mILAqtRYbkdQD8Ep/Hk2PQ5+aEAEx+IU713RTDmuBaH0c8P5ZozurNu5ObRQ==} - - registry-auth-token@5.0.2: - resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} - engines: {node: '>=14'} - - replace-in-file@7.0.2: - resolution: {integrity: sha512-tPG+Qmqf+x2Rf1WVdb/9B5tFIf6KJ5hs3fgxh1OTzPRUugPPvyAva7NvCJtnSpmyq6r+ABYcuUOqZkm6yzGSUw==} - engines: {node: '>=10'} - hasBin: true - require-directory@2.1.1: resolution: {integrity: sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==} engines: {node: '>=0.10.0'} - resolve-from@4.0.0: - resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} - engines: {node: '>=4'} - - resolve-from@5.0.0: - resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==} - engines: {node: '>=8'} - resolve-import@1.4.5: resolution: {integrity: sha512-HXb4YqODuuXT7Icq1Z++0g2JmhgbUHSs3VT2xR83gqvAPUikYT2Xk+562KHQgiaNkbBOlPddYrDLsC44qQggzw==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} @@ -2122,10 +1286,6 @@ packages: resolution: {integrity: sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==} engines: {node: '>= 4'} - reusify@1.0.4: - resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} - engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} hasBin: true @@ -2135,47 +1295,22 @@ packages: engines: {node: '>=14'} hasBin: true - run-parallel@1.2.0: - resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} - - safe-buffer@5.1.2: - resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} - safer-buffer@2.1.2: resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} scheduler@0.23.0: resolution: {integrity: sha512-CtuThmgHNg7zIZWAXi3AsyIzA3n4xx7aNyjwC2VJldO2LMVDhFK+63xGqq6CsJH4rTAt6/M+N4GhZiDYPx9eUw==} - semantic-release-export-data@1.0.1: - resolution: {integrity: sha512-6vlgrrzzcMi/REhQd65Bh4dfSKmgwXOJ/Q2RVlT9WsU4Ya1T2qGpkSrMfG/n6oFRrqBdbDlyZgxNd94ziW+vSg==} - peerDependencies: - semantic-release: '>=18' - - semantic-release-replace-plugin@1.2.7: - resolution: {integrity: sha512-BfFQVnfC8O7+NpyfjWZuQQEkXwxf1ABbGEQuXqMsrBi7ItCnkSlO3mwuqUllxxuh1WgKx5oYKMVhmZJ0aMaqVQ==} - engines: {node: '>=18'} - peerDependencies: - semantic-release: '>=20.1.0' - - semantic-release@22.0.7: - resolution: {integrity: sha512-Stx23Hjn7iU8GOAlhG3pHlR7AoNEahj9q7lKBP0rdK2BasGtJ4AWYh3zm1u3SCMuFiA8y4CE/Gu4RGKau1WiaQ==} - engines: {node: ^18.17 || >=20.6.1} - hasBin: true - - semver-diff@4.0.0: - resolution: {integrity: sha512-0Ju4+6A8iOnpL/Thra7dZsSlOHYAHIeMxfhWQRI1/VLcT3WDBZKKtQt/QkBOsiIN9ZpuvHE6cGZ0x4glCMmfiA==} - engines: {node: '>=12'} - - semver-regex@4.0.5: - resolution: {integrity: sha512-hunMQrEy1T6Jr2uEVjrAIqjwWcQTgOAcIM52C8MY1EZSD3DDNft04XzvYKPqjED65bNVVko0YI38nYeEHCX3yw==} - engines: {node: '>=12'} - semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} hasBin: true + semver@7.6.0: + resolution: {integrity: sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==} + engines: {node: '>=10'} + hasBin: true + shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} @@ -2191,25 +1326,13 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - signale@1.4.0: - resolution: {integrity: sha512-iuh+gPf28RkltuJC7W5MRi6XAjTDCAPC/prJUpQoG4vIP3MJZ+GTydVnodXA7pwvTKb2cA0m9OFZW/cdWy/I/w==} - engines: {node: '>=6'} - - sigstore@2.1.0: - resolution: {integrity: sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==} + sigstore@2.3.0: + resolution: {integrity: sha512-q+o8L2ebiWD1AxD17eglf1pFrl9jtW7FHa0ygqY6EKvibK8JHyq9Z26v9MZXeDiw+RbfOJ9j2v70M10Hd6E06A==} engines: {node: ^16.14.0 || >=18.0.0} sinon@17.0.1: resolution: {integrity: sha512-wmwE19Lie0MLT+ZYNpDymasPHUKTaZHUH/pKEubRXIzySv9Atnlw+BUMGCzWgV7b7wO+Hw6f1TEOr0IUnmU8/g==} - skin-tone@2.0.0: - resolution: {integrity: sha512-kUMbT1oBJCpgrnKoSr0o6wPtvRWT9W9UKvGLwfJYO2WuahZRHOpEyL1ckyMGgMWh0UdpmaoFqKKD29WTomNEGA==} - engines: {node: '>=8'} - - slash@5.1.0: - resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} - engines: {node: '>=14.16'} - slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} @@ -2230,13 +1353,6 @@ packages: resolution: {integrity: sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==} engines: {node: '>= 10.13.0', npm: '>= 3.0.0'} - source-map@0.6.1: - resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} - engines: {node: '>=0.10.0'} - - spawn-error-forwarder@1.0.0: - resolution: {integrity: sha512-gRjMgK5uFjbCvdibeGJuy3I5OYz6VLoVdsOJdA6wV0WlfQVLFueoqMxwwYD9RODdgb6oUIvlRlsyFSiQkMKu0g==} - spdx-correct@3.2.0: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} @@ -2249,13 +1365,6 @@ packages: spdx-license-ids@3.0.16: resolution: {integrity: sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==} - split2@1.0.0: - resolution: {integrity: sha512-NKywug4u4pX/AZBB1FCPzZ6/7O+Xhz1qMVbzTvvKvikjO99oPN87SkK08mEY9P63/5lWjK+wgOOgApnTg5r6qg==} - - split2@4.2.0: - resolution: {integrity: sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==} - engines: {node: '>= 10.x'} - ssri@10.0.5: resolution: {integrity: sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -2264,9 +1373,6 @@ packages: resolution: {integrity: sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==} engines: {node: '>=10'} - stream-combiner2@1.1.1: - resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==} - string-length@6.0.0: resolution: {integrity: sha512-1U361pxZHEQ+FeSjzqRpV+cu2vTzYeWeafXFLykiFlv4Vc0n3njgU8HrMbyik5uwm77naWMuVG8fhEF+Ovb1Kg==} engines: {node: '>=16'} @@ -2279,9 +1385,6 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} - string_decoder@1.1.1: - resolution: {integrity: sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==} - strip-ansi@6.0.1: resolution: {integrity: sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==} engines: {node: '>=8'} @@ -2290,59 +1393,26 @@ packages: resolution: {integrity: sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==} engines: {node: '>=12'} - strip-bom@3.0.0: - resolution: {integrity: sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==} - engines: {node: '>=4'} - - strip-final-newline@2.0.0: - resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} - engines: {node: '>=6'} - - strip-final-newline@3.0.0: - resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} - engines: {node: '>=12'} - - strip-json-comments@2.0.1: - resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} - engines: {node: '>=0.10.0'} - - supports-color@5.5.0: - resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} - engines: {node: '>=4'} - supports-color@7.2.0: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} - supports-hyperlinks@3.0.0: - resolution: {integrity: sha512-QBDPHyPQDRTy9ku4URNGY5Lah8PAaXs6tAAwp55sL5WCsSW7GIfdf6W5ixfziW+t7wh3GVvHyHHyQ1ESsoRvaA==} - engines: {node: '>=14.18'} - sync-content@1.0.2: resolution: {integrity: sha512-znd3rYiiSxU3WteWyS9a6FXkTA/Wjk8WQsOyzHbineeL837dLn3DA4MRhsIX3qGcxDMH6+uuFV4axztssk7wEQ==} engines: {node: '>=14'} hasBin: true - tap-parser@15.3.1: - resolution: {integrity: sha512-hwAtXX5TBGt2MJeYvASc7DjP48PUzA7P8RTbLxQcgKCEH7ICD5IsRco7l5YvkzjHlZbUbeI9wzO8B4hw2sKgnQ==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - hasBin: true - tap-parser@15.3.2: resolution: {integrity: sha512-uvauHuQqAMwfeFVxNpFXhvnWLVL0sthnHk4TxRM3cUy6+dejO9fatoKR7YejbMu4+2/1nR6UQE9+eUcX3PUmsA==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} hasBin: true - tap-yaml@2.2.1: - resolution: {integrity: sha512-ovZuUMLAIH59jnFHXKEGJ+WyDYl6Cuduwg9qpvnqkZOUA1nU84q02Sry1HT0KXcdv2uB91bEKKxnIybBgrb6oA==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - tap-yaml@2.2.2: resolution: {integrity: sha512-MWG4OpAKtNoNVjCz/BqlDJiwTM99tiHRhHPS4iGOe1ZS0CgM4jSFH92lthSFvvy4EdDjQZDV7uYqUFlU9JuNhw==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - tap@18.7.0: - resolution: {integrity: sha512-bL/0krlx8k3fY9mjI9CMfVoAGclZegl+vm5pEJpF/USxam5eNhp5wLk5UH0ST3gWEJkW0PDdFHTOStE+mYurrQ==} + tap@18.7.2: + resolution: {integrity: sha512-cGrB6laenHPOj3VaExITM54VjM9bR6fd0DK6Co9cm0/eJBog8XL05MX8TLxVPZSJtCu3nUESGjFhpATE8obxcw==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} hasBin: true @@ -2350,36 +1420,14 @@ packages: resolution: {integrity: sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==} engines: {node: '>=10'} - tcompare@6.4.5: - resolution: {integrity: sha512-Whuz9xlKKI2XXICKDSDRKjXdBuC6gBNOgmEUtH7UFyQeYzfUMQ19DyjZULarGKDGFhgOg3CJ+IQUEfpkOPg0Uw==} - engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - tcompare@6.4.6: resolution: {integrity: sha512-sxvgCgO2GAIWHibnK4zLvvi9GHd/ZlR9DOUJ4ufwvNtkdKE2I9MNwJUwzYvOmGrJXMcfhhw0CDBb+6j0ia+I7A==} engines: {node: 16 >=16.17.0 || 18 >= 18.6.0 || >=20} - temp-dir@3.0.0: - resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} - engines: {node: '>=14.16'} - - tempy@3.1.0: - resolution: {integrity: sha512-7jDLIdD2Zp0bDe5r3D2qtkd1QOCacylBuL7oa4udvN6v2pqr4+LcCr67C8DR1zkpaZ8XosF5m1yQSabKAW6f2g==} - engines: {node: '>=14.16'} - test-exclude@6.0.0: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} - text-extensions@2.4.0: - resolution: {integrity: sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==} - engines: {node: '>=8'} - - through2@2.0.5: - resolution: {integrity: sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==} - - through@2.3.8: - resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==} - to-readable-stream@2.1.0: resolution: {integrity: sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==} engines: {node: '>=8'} @@ -2391,42 +1439,20 @@ packages: tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - traverse@0.6.7: - resolution: {integrity: sha512-/y956gpUo9ZNCb99YjxG7OaslxZWHfCHAUUfshwqOXmxUIvqLjVO581BT+gM59+QV9tFe6/CGG53tsA1Y7RSdg==} - trivial-deferred@2.0.0: resolution: {integrity: sha512-iGbM7X2slv9ORDVj2y2FFUq3cP/ypbtu2nQ8S38ufjL0glBABvmR9pTdsib1XtS2LUhhLMbelaBUaf/s5J3dSw==} engines: {node: '>= 8'} - ts-node@10.9.2: - resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} - hasBin: true - peerDependencies: - '@swc/core': '>=1.2.50' - '@swc/wasm': '>=1.2.50' - '@types/node': '*' - typescript: '>=2.7' - peerDependenciesMeta: - '@swc/core': - optional: true - '@swc/wasm': - optional: true - tshy@1.14.0: resolution: {integrity: sha512-YiUujgi4Jb+t2I48LwSRzHkBpniH9WjjktNozn+nlsGmVemKSjDNY7EwBRPvPCr5zAC/3ITAYWH9Z7kUinGSrw==} engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} hasBin: true - tshy@1.8.0: - resolution: {integrity: sha512-Lg2hVO+B8pdNYvBUSgcra4ULlFCcBIkd7ZJ3nRIPvEjplgEscNSwnOzpIMzKW1m17AYhEGcy1nzv7mA3fi/oEQ==} - engines: {node: 16 >=16.17 || 18 >=18.15.0 || >=20.6.1} - hasBin: true - tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - tuf-js@2.1.0: - resolution: {integrity: sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==} + tuf-js@2.2.0: + resolution: {integrity: sha512-ZSDngmP1z6zw+FIkIBjvOp/II/mIub/O7Pp12j1WNsiCpg5R5wAc//i555bBQsE44O94btLt0xM/Zr2LQjwdCg==} engines: {node: ^16.14.0 || >=18.0.0} tunnel@0.0.6: @@ -2441,57 +1467,27 @@ packages: resolution: {integrity: sha512-53RyidyjvkGpnWPMF9bQgFtWp+Sl8O2Rp13VavmJgfAP9WWG6q6TkrKU8iyJdnwnfgHI6k2hTlgqH4aSdjoTbg==} engines: {node: '>=10'} - type-fest@1.4.0: - resolution: {integrity: sha512-yGSza74xk0UG8k+pLh5oeoYirvIiWo5t0/o3zHHAO2tRDiZcxWP7fywNlXhqb6/r6sWvwi+RsyQMWhVLe4BVuA==} - engines: {node: '>=10'} - - type-fest@2.19.0: - resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==} - engines: {node: '>=12.20'} - type-fest@3.13.1: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - type-fest@4.7.1: - resolution: {integrity: sha512-iWr8RUmzAJRfhZugX9O7nZE6pCxDU8CZ3QxsLuTnGcBLJpCaP2ll3s4eMTBoFnU/CeXY/5rfQSuAEsTGJO4y8A==} - engines: {node: '>=16'} - typescript@5.2.2: resolution: {integrity: sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==} engines: {node: '>=14.17'} hasBin: true - typescript@5.3.3: - resolution: {integrity: sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==} - engines: {node: '>=14.17'} - hasBin: true - typescript@5.4.5: resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} engines: {node: '>=14.17'} hasBin: true - uglify-js@3.17.4: - resolution: {integrity: sha512-T9q82TJI9e/C1TAxYvfb16xO120tMVFZrGA3f9/P4424DNu6ypK103y0GPFVa17yotwSyZW5iYXgjYHkGrJW/g==} - engines: {node: '>=0.8.0'} - hasBin: true - undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - undici@5.28.4: - resolution: {integrity: sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==} + undici@5.28.3: + resolution: {integrity: sha512-3ItfzbrhDlINjaP0duwnNsKpDQk3acHI3gVJ1z4fmwMK31k5G9OVIAMLSIaP6w4FaGkaAkN6zaQO9LUvZ1t7VA==} engines: {node: '>=14.0'} - unicode-emoji-modifier-base@1.0.0: - resolution: {integrity: sha512-yLSH4py7oFH3oG/9K+XWrz1pSi3dfUrWEnInbxMfArOfc1+33BlGPQtLsOYwvdMy11AwUBetYuaRxSPqgkq+8g==} - engines: {node: '>=4'} - - unicorn-magic@0.1.0: - resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} - engines: {node: '>=18'} - unique-filename@3.0.0: resolution: {integrity: sha512-afXhuC55wkAmZ0P18QsVE6kp8JaxrEokN2HGIoIVv2ijHQd419H0+6EigAFcIzXeMIkcIkNBpB3L/DXB3cTS/g==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -2500,24 +1496,9 @@ packages: resolution: {integrity: sha512-WrcA6AyEfqDX5bWige/4NQfPZMtASNVxdmWR76WESYQVAACSgWcR6e9i0mofqqBxYFtL4oAxPIptY73/0YE1DQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} - unique-string@3.0.0: - resolution: {integrity: sha512-VGXBUVwxKMBUznyffQweQABPRRW1vHZAbadFZud4pLFAqRGvv/96vafgjWFqzourzr8YonlQiPgH0YCJfawoGQ==} - engines: {node: '>=12'} - universal-user-agent@6.0.1: resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==} - universalify@2.0.1: - resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} - engines: {node: '>= 10.0.0'} - - url-join@5.0.0: - resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - - util-deprecate@1.0.2: - resolution: {integrity: sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==} - uuid@8.3.2: resolution: {integrity: sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==} hasBin: true @@ -2559,9 +1540,6 @@ packages: resolution: {integrity: sha512-o0cyEG0e8GPzT4iGHphIOh0cJOV8fivsXxddQasHPHfoZf1ZexrfeA21w2NaEN1RHE+fXlfISmOE8R9N3u3Qig==} engines: {node: '>=12'} - wordwrap@1.0.0: - resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==} - wrap-ansi@7.0.0: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} @@ -2585,10 +1563,6 @@ packages: utf-8-validate: optional: true - xtend@4.0.2: - resolution: {integrity: sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==} - engines: {node: '>=0.4'} - y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -2602,10 +1576,6 @@ packages: peerDependencies: yaml: ^2.3.0 - yaml@2.3.4: - resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==} - engines: {node: '>= 14'} - yaml@2.4.1: resolution: {integrity: sha512-pIXzoImaqmfOrL7teGUBt/T7ZDnyeGBWyXQBvOVhLkWLN37GXv8NMLK406UY6dS51JfcQHsmcW5cJ441bHg6Lg==} engines: {node: '>= 14'} @@ -2619,10 +1589,6 @@ packages: resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} engines: {node: '>=12'} - yn@3.1.1: - resolution: {integrity: sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==} - engines: {node: '>=6'} - yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -2656,7 +1622,7 @@ snapshots: '@actions/http-client@2.2.0': dependencies: tunnel: 0.0.6 - undici: 5.28.4 + undici: 5.28.3 '@actions/io@1.1.3': {} @@ -2665,24 +1631,43 @@ snapshots: ansi-styles: 6.2.1 is-fullwidth-code-point: 4.0.0 - '@babel/code-frame@7.22.13': - dependencies: - '@babel/highlight': 7.22.20 - chalk: 2.4.2 + '@base2/pretty-print-object@1.0.1': {} - '@babel/helper-validator-identifier@7.22.20': {} + '@bcoe/v8-coverage@0.2.3': {} - '@babel/highlight@7.22.20': - dependencies: - '@babel/helper-validator-identifier': 7.22.20 - chalk: 2.4.2 - js-tokens: 4.0.0 + '@biomejs/biome@1.7.1': + optionalDependencies: + '@biomejs/cli-darwin-arm64': 1.7.1 + '@biomejs/cli-darwin-x64': 1.7.1 + '@biomejs/cli-linux-arm64': 1.7.1 + '@biomejs/cli-linux-arm64-musl': 1.7.1 + '@biomejs/cli-linux-x64': 1.7.1 + '@biomejs/cli-linux-x64-musl': 1.7.1 + '@biomejs/cli-win32-arm64': 1.7.1 + '@biomejs/cli-win32-x64': 1.7.1 + + '@biomejs/cli-darwin-arm64@1.7.1': + optional: true - '@base2/pretty-print-object@1.0.1': {} + '@biomejs/cli-darwin-x64@1.7.1': + optional: true - '@bcoe/v8-coverage@0.2.3': {} + '@biomejs/cli-linux-arm64-musl@1.7.1': + optional: true + + '@biomejs/cli-linux-arm64@1.7.1': + optional: true + + '@biomejs/cli-linux-x64-musl@1.7.1': + optional: true + + '@biomejs/cli-linux-x64@1.7.1': + optional: true - '@colors/colors@1.5.0': + '@biomejs/cli-win32-arm64@1.7.1': + optional: true + + '@biomejs/cli-win32-x64@1.7.1': optional: true '@cspotcode/source-map-support@0.8.1': @@ -2700,14 +1685,14 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.2.2)': + '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@20.12.7)(typescript@5.2.2)': dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node14': 14.1.0 '@tsconfig/node16': 16.1.1 '@tsconfig/node18': 18.2.2 '@tsconfig/node20': 20.1.2 - '@types/node': 18.19.28 + '@types/node': 20.12.7 acorn: 8.11.2 acorn-walk: 8.3.0 arg: 4.1.3 @@ -2716,28 +1701,24 @@ snapshots: typescript: 5.2.2 v8-compile-cache-lib: 3.0.1 - '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@18.19.28)(typescript@5.3.3)': + '@isaacs/ts-node-temp-fork-for-pr-2009@10.9.5(@types/node@20.12.7)(typescript@5.4.5)': dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node14': 14.1.0 '@tsconfig/node16': 16.1.1 '@tsconfig/node18': 18.2.2 '@tsconfig/node20': 20.1.2 - '@types/node': 18.19.28 + '@types/node': 20.12.7 acorn: 8.11.2 acorn-walk: 8.3.0 arg: 4.1.3 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.3.3 + typescript: 5.4.5 v8-compile-cache-lib: 3.0.1 '@istanbuljs/schema@0.1.3': {} - '@jest/schemas@29.6.3': - dependencies: - '@sinclair/typebox': 0.27.8 - '@jridgewell/resolve-uri@3.1.1': {} '@jridgewell/sourcemap-codec@1.4.15': {} @@ -2752,18 +1733,6 @@ snapshots: '@jridgewell/resolve-uri': 3.1.1 '@jridgewell/sourcemap-codec': 1.4.15 - '@nodelib/fs.scandir@2.1.5': - dependencies: - '@nodelib/fs.stat': 2.0.5 - run-parallel: 1.2.0 - - '@nodelib/fs.stat@2.0.5': {} - - '@nodelib/fs.walk@1.2.8': - dependencies: - '@nodelib/fs.scandir': 2.1.5 - fastq: 1.15.0 - '@npmcli/agent@2.2.0': dependencies: agent-base: 7.1.0 @@ -2776,7 +1745,7 @@ snapshots: '@npmcli/fs@3.1.0': dependencies: - semver: 7.5.4 + semver: 7.6.0 '@npmcli/git@5.0.3': dependencies: @@ -2786,7 +1755,7 @@ snapshots: proc-log: 3.0.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.5.4 + semver: 7.6.0 which: 4.0.0 transitivePeerDependencies: - bluebird @@ -2848,19 +1817,6 @@ snapshots: '@octokit/core': 5.0.1 '@octokit/types': 12.3.0 - '@octokit/plugin-retry@6.0.1(@octokit/core@5.0.1)': - dependencies: - '@octokit/core': 5.0.1 - '@octokit/request-error': 5.0.1 - '@octokit/types': 12.3.0 - bottleneck: 2.19.5 - - '@octokit/plugin-throttling@8.1.2(@octokit/core@5.0.1)': - dependencies: - '@octokit/core': 5.0.1 - '@octokit/types': 12.3.0 - bottleneck: 2.19.5 - '@octokit/request-error@5.0.1': dependencies: '@octokit/types': 12.3.0 @@ -2879,157 +1835,42 @@ snapshots: dependencies: '@octokit/openapi-types': 19.0.2 - '@openpgp/web-stream-tools@0.0.14(typescript@5.3.3)': - dependencies: - typescript: 5.3.3 + '@openpgp/web-stream-tools@0.1.1(typescript@5.4.5)': + optionalDependencies: + typescript: 5.4.5 '@pkgjs/parseargs@0.11.0': optional: true - '@pnpm/config.env-replace@1.1.0': {} - - '@pnpm/network.ca-file@1.0.2': + '@sigstore/bundle@2.3.1': dependencies: - graceful-fs: 4.2.10 + '@sigstore/protobuf-specs': 0.3.1 - '@pnpm/npm-conf@2.2.2': - dependencies: - '@pnpm/config.env-replace': 1.1.0 - '@pnpm/network.ca-file': 1.0.2 - config-chain: 1.1.13 + '@sigstore/core@1.1.0': {} - '@semantic-release/changelog@6.0.3(semantic-release@22.0.7)': - dependencies: - '@semantic-release/error': 3.0.0 - aggregate-error: 3.1.0 - fs-extra: 11.1.1 - lodash: 4.17.21 - semantic-release: 22.0.7(typescript@5.3.3) + '@sigstore/protobuf-specs@0.3.1': {} - '@semantic-release/commit-analyzer@11.1.0(semantic-release@22.0.7)': + '@sigstore/sign@2.3.0': dependencies: - conventional-changelog-angular: 7.0.0 - conventional-commits-filter: 4.0.0 - conventional-commits-parser: 5.0.0 - debug: 4.3.4 - import-from-esm: 1.2.1 - lodash-es: 4.17.21 - micromatch: 4.0.5 - semantic-release: 22.0.7(typescript@5.3.3) - transitivePeerDependencies: - - supports-color - - '@semantic-release/error@3.0.0': {} - - '@semantic-release/error@4.0.0': {} - - '@semantic-release/exec@6.0.3(semantic-release@22.0.7)': - dependencies: - '@semantic-release/error': 3.0.0 - aggregate-error: 3.1.0 - debug: 4.3.4 - execa: 5.1.1 - lodash: 4.17.21 - parse-json: 5.2.0 - semantic-release: 22.0.7(typescript@5.3.3) - transitivePeerDependencies: - - supports-color - - '@semantic-release/git@10.0.1(semantic-release@22.0.7)': - dependencies: - '@semantic-release/error': 3.0.0 - aggregate-error: 3.1.0 - debug: 4.3.4 - dir-glob: 3.0.1 - execa: 5.1.1 - lodash: 4.17.21 - micromatch: 4.0.5 - p-reduce: 2.1.0 - semantic-release: 22.0.7(typescript@5.3.3) - transitivePeerDependencies: - - supports-color - - '@semantic-release/github@9.2.6(semantic-release@22.0.7)': - dependencies: - '@octokit/core': 5.0.1 - '@octokit/plugin-paginate-rest': 9.1.4(@octokit/core@5.0.1) - '@octokit/plugin-retry': 6.0.1(@octokit/core@5.0.1) - '@octokit/plugin-throttling': 8.1.2(@octokit/core@5.0.1) - '@semantic-release/error': 4.0.0 - aggregate-error: 5.0.0 - debug: 4.3.4 - dir-glob: 3.0.1 - globby: 14.0.0 - http-proxy-agent: 7.0.0 - https-proxy-agent: 7.0.2 - issue-parser: 6.0.0 - lodash-es: 4.17.21 - mime: 4.0.0 - p-filter: 4.1.0 - semantic-release: 22.0.7(typescript@5.3.3) - url-join: 5.0.0 - transitivePeerDependencies: - - supports-color - - '@semantic-release/npm@11.0.1(semantic-release@22.0.7)': - dependencies: - '@semantic-release/error': 4.0.0 - aggregate-error: 5.0.0 - execa: 8.0.1 - fs-extra: 11.1.1 - lodash-es: 4.17.21 - nerf-dart: 1.0.0 - normalize-url: 8.0.0 - npm: 10.2.3 - rc: 1.2.8 - read-pkg: 9.0.0 - registry-auth-token: 5.0.2 - semantic-release: 22.0.7(typescript@5.3.3) - semver: 7.5.4 - tempy: 3.1.0 - - '@semantic-release/release-notes-generator@12.1.0(semantic-release@22.0.7)': - dependencies: - conventional-changelog-angular: 7.0.0 - conventional-changelog-writer: 7.0.1 - conventional-commits-filter: 4.0.0 - conventional-commits-parser: 5.0.0 - debug: 4.3.4 - get-stream: 7.0.1 - import-from-esm: 1.2.1 - into-stream: 7.0.0 - lodash-es: 4.17.21 - read-pkg-up: 11.0.0 - semantic-release: 22.0.7(typescript@5.3.3) - transitivePeerDependencies: - - supports-color - - '@sigstore/bundle@2.1.0': - dependencies: - '@sigstore/protobuf-specs': 0.2.1 - - '@sigstore/protobuf-specs@0.2.1': {} - - '@sigstore/sign@2.2.0': - dependencies: - '@sigstore/bundle': 2.1.0 - '@sigstore/protobuf-specs': 0.2.1 + '@sigstore/bundle': 2.3.1 + '@sigstore/core': 1.1.0 + '@sigstore/protobuf-specs': 0.3.1 make-fetch-happen: 13.0.0 transitivePeerDependencies: - supports-color - '@sigstore/tuf@2.2.0': + '@sigstore/tuf@2.3.2': dependencies: - '@sigstore/protobuf-specs': 0.2.1 - tuf-js: 2.1.0 + '@sigstore/protobuf-specs': 0.3.1 + tuf-js: 2.2.0 transitivePeerDependencies: - supports-color - '@sinclair/typebox@0.27.8': {} - - '@sindresorhus/is@3.1.2': {} - - '@sindresorhus/merge-streams@1.0.0': {} + '@sigstore/verify@1.2.0': + dependencies: + '@sigstore/bundle': 2.3.1 + '@sigstore/core': 1.1.0 + '@sigstore/protobuf-specs': 0.3.1 '@sinonjs/commons@2.0.0': dependencies: @@ -3055,104 +1896,52 @@ snapshots: '@sinonjs/text-encoding@0.7.2': {} - '@tapjs/after-each@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - function-loop: 4.0.0 - - '@tapjs/after-each@1.1.20(@tapjs/core@1.5.2)': + '@tapjs/after-each@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) function-loop: 4.0.0 - '@tapjs/after@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - is-actual-promise: 1.0.1 - - '@tapjs/after@1.1.20(@tapjs/core@1.5.2)': - dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - is-actual-promise: 1.0.1 - - '@tapjs/asserts@1.1.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0)': + '@tapjs/after@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/stack': 1.2.7 + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) is-actual-promise: 1.0.1 - tcompare: 6.4.5(react-dom@18.2.0)(react@18.2.0) - trivial-deferred: 2.0.0 - transitivePeerDependencies: - - react - - react-dom - '@tapjs/asserts@1.1.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0)': + '@tapjs/asserts@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tapjs/stack': 1.2.8 is-actual-promise: 1.0.1 - tcompare: 6.4.6(react-dom@18.2.0)(react@18.2.0) + tcompare: 6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) trivial-deferred: 2.0.0 transitivePeerDependencies: - react - react-dom - '@tapjs/before-each@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - function-loop: 4.0.0 - - '@tapjs/before-each@1.1.20(@tapjs/core@1.5.2)': + '@tapjs/before-each@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) function-loop: 4.0.0 - '@tapjs/before@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - is-actual-promise: 1.0.1 - - '@tapjs/before@1.1.20(@tapjs/core@1.5.2)': + '@tapjs/before@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) is-actual-promise: 1.0.1 - '@tapjs/config@2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)': + '@tapjs/config@2.4.17(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/test': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/test': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) chalk: 5.3.0 jackspeak: 2.3.6 polite-json: 4.0.1 - tap-yaml: 2.2.1 + tap-yaml: 2.2.2 walk-up-path: 3.0.1 - '@tapjs/core@1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@tapjs/processinfo': 3.1.6 - '@tapjs/stack': 1.2.7 - '@tapjs/test': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - async-hook-domain: 4.0.1 - diff: 5.1.0 - is-actual-promise: 1.0.1 - minipass: 7.0.4 - signal-exit: 4.1.0 - tap-parser: 15.3.1 - tap-yaml: 2.2.1 - tcompare: 6.4.5(react-dom@18.2.0)(react@18.2.0) - trivial-deferred: 2.0.0 - transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - react - - react-dom - - '@tapjs/core@1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': + '@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: '@tapjs/processinfo': 3.1.7 '@tapjs/stack': 1.2.8 - '@tapjs/test': 1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/test': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) async-hook-domain: 4.0.1 diff: 5.2.0 is-actual-promise: 1.0.1 @@ -3160,7 +1949,7 @@ snapshots: signal-exit: 4.1.0 tap-parser: 15.3.2 tap-yaml: 2.2.2 - tcompare: 6.4.6(react-dom@18.2.0)(react@18.2.0) + tcompare: 6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) trivial-deferred: 2.0.0 transitivePeerDependencies: - '@swc/core' @@ -3169,83 +1958,41 @@ snapshots: - react - react-dom - '@tapjs/error-serdes@1.2.1': - dependencies: - minipass: 7.0.4 - '@tapjs/error-serdes@1.2.2': dependencies: minipass: 7.0.4 - '@tapjs/filter@1.2.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/filter@1.2.20(@tapjs/core@1.5.2)': + '@tapjs/filter@1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) - '@tapjs/fixture@1.2.18(@tapjs/core@1.5.0)': + '@tapjs/fixture@1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) mkdirp: 3.0.1 rimraf: 5.0.5 - '@tapjs/fixture@1.2.20(@tapjs/core@1.5.2)': + '@tapjs/intercept@1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - mkdirp: 3.0.1 - rimraf: 5.0.5 - - '@tapjs/intercept@1.2.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/stack': 1.2.7 - - '@tapjs/intercept@1.2.20(@tapjs/core@1.5.2)': - dependencies: - '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/after': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tapjs/stack': 1.2.8 - '@tapjs/mock@1.3.0(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/stack': 1.2.7 - resolve-import: 1.4.5 - walk-up-path: 3.0.1 - - '@tapjs/mock@1.3.2(@tapjs/core@1.5.2)': + '@tapjs/mock@1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/after': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tapjs/stack': 1.2.8 resolve-import: 1.4.5 walk-up-path: 3.0.1 - '@tapjs/node-serialize@1.3.0(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/error-serdes': 1.2.1 - '@tapjs/stack': 1.2.7 - tap-parser: 15.3.1 - - '@tapjs/node-serialize@1.3.2(@tapjs/core@1.5.2)': + '@tapjs/node-serialize@1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tapjs/error-serdes': 1.2.2 '@tapjs/stack': 1.2.8 tap-parser: 15.3.2 - '@tapjs/processinfo@3.1.6': - dependencies: - pirates: 4.0.6 - process-on-spawn: 1.0.0 - signal-exit: 4.1.0 - uuid: 8.3.2 - '@tapjs/processinfo@3.1.7': dependencies: pirates: 4.0.6 @@ -3253,11 +2000,11 @@ snapshots: signal-exit: 4.1.0 uuid: 8.3.2 - '@tapjs/reporter@1.3.16(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)(react-dom@18.2.0)': + '@tapjs/reporter@1.3.18(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))': dependencies: - '@tapjs/config': 2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/stack': 1.2.7 + '@tapjs/config': 2.4.17(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/stack': 1.2.8 chalk: 5.3.0 ink: 4.4.1(react@18.2.0) minipass: 7.0.4 @@ -3266,9 +2013,9 @@ snapshots: prismjs-terminal: 1.2.3 react: 18.2.0 string-length: 6.0.0 - tap-parser: 15.3.1 - tap-yaml: 2.2.1 - tcompare: 6.4.5(react-dom@18.2.0)(react@18.2.0) + tap-parser: 15.3.2 + tap-yaml: 2.2.2 + tcompare: 6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) transitivePeerDependencies: - '@tapjs/test' - '@types/react' @@ -3277,33 +2024,33 @@ snapshots: - react-dom - utf-8-validate - '@tapjs/run@1.5.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/before': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/config': 2.4.15(@tapjs/core@1.5.0)(@tapjs/test@1.4.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/processinfo': 3.1.6 - '@tapjs/reporter': 1.3.16(@tapjs/core@1.5.0)(@tapjs/test@1.4.0)(react-dom@18.2.0) - '@tapjs/spawn': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/stdin': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/test': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/run@1.5.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@tapjs/after': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/before': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/config': 2.4.17(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/processinfo': 3.1.7 + '@tapjs/reporter': 1.3.18(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0)) + '@tapjs/spawn': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/stdin': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/test': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) c8: 8.0.1 chalk: 5.3.0 - chokidar: 3.5.3 + chokidar: 3.6.0 foreground-child: 3.1.1 glob: 10.3.10 minipass: 7.0.4 mkdirp: 3.0.1 opener: 1.5.2 - pacote: 17.0.4 + pacote: 17.0.7 resolve-import: 1.4.5 rimraf: 5.0.5 - semver: 7.5.4 + semver: 7.6.0 signal-exit: 4.1.0 - tap-parser: 15.3.1 - tap-yaml: 2.2.1 - tcompare: 6.4.5(react-dom@18.2.0)(react@18.2.0) + tap-parser: 15.3.2 + tap-yaml: 2.2.2 + tcompare: 6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) trivial-deferred: 2.0.0 which: 4.0.0 transitivePeerDependencies: @@ -3319,100 +2066,45 @@ snapshots: - supports-color - utf-8-validate - '@tapjs/snapshot@1.2.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0)': + '@tapjs/snapshot@1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) is-actual-promise: 1.0.1 - tcompare: 6.4.5(react-dom@18.2.0)(react@18.2.0) + tcompare: 6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0) trivial-deferred: 2.0.0 transitivePeerDependencies: - react - react-dom - '@tapjs/snapshot@1.2.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0)': + '@tapjs/spawn@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - is-actual-promise: 1.0.1 - tcompare: 6.4.6(react-dom@18.2.0)(react@18.2.0) - trivial-deferred: 2.0.0 - transitivePeerDependencies: - - react - - react-dom - - '@tapjs/spawn@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/spawn@1.1.20(@tapjs/core@1.5.2)': - dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/stack@1.2.7': {} + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tapjs/stack@1.2.8': {} - '@tapjs/stdin@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/stdin@1.1.20(@tapjs/core@1.5.2)': - dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/test@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/after-each': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/asserts': 1.1.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/before': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/before-each': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/filter': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/fixture': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/intercept': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/mock': 1.3.0(@tapjs/core@1.5.0) - '@tapjs/node-serialize': 1.3.0(@tapjs/core@1.5.0) - '@tapjs/snapshot': 1.2.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/spawn': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/stdin': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/typescript': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/worker': 1.1.18(@tapjs/core@1.5.0) - glob: 10.3.10 - jackspeak: 2.3.6 - mkdirp: 3.0.1 - resolve-import: 1.4.5 - rimraf: 5.0.5 - sync-content: 1.0.2 - tap-parser: 15.3.1 - tshy: 1.8.0 - typescript: 5.2.2 - transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - react - - react-dom - - '@tapjs/test@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)': - dependencies: - '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/after': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/after-each': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/asserts': 1.1.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/before': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/before-each': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/filter': 1.2.20(@tapjs/core@1.5.2) - '@tapjs/fixture': 1.2.20(@tapjs/core@1.5.2) - '@tapjs/intercept': 1.2.20(@tapjs/core@1.5.2) - '@tapjs/mock': 1.3.2(@tapjs/core@1.5.2) - '@tapjs/node-serialize': 1.3.2(@tapjs/core@1.5.2) - '@tapjs/snapshot': 1.2.20(@tapjs/core@1.5.2)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/spawn': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/stdin': 1.1.20(@tapjs/core@1.5.2) - '@tapjs/typescript': 1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/worker': 1.1.20(@tapjs/core@1.5.2) + '@tapjs/stdin@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': + dependencies: + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + + '@tapjs/test@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)': + dependencies: + '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@20.12.7)(typescript@5.2.2) + '@tapjs/after': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/after-each': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/asserts': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/before': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/before-each': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/filter': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/fixture': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/intercept': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/mock': 1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/node-serialize': 1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/snapshot': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/spawn': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/stdin': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/typescript': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(typescript@5.2.2) + '@tapjs/worker': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) glob: 10.3.10 jackspeak: 2.3.6 mkdirp: 3.0.1 @@ -3429,54 +2121,32 @@ snapshots: - react - react-dom - '@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.2.2)': + '@tapjs/typescript@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(typescript@5.2.2)': dependencies: - '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@20.12.7)(typescript@5.2.2) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) transitivePeerDependencies: - '@swc/core' - '@swc/wasm' - '@types/node' - typescript - '@tapjs/typescript@1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.3.3)': + '@tapjs/typescript@1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(typescript@5.4.5)': dependencies: - '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.3.3) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) + '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@20.12.7)(typescript@5.4.5) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) transitivePeerDependencies: - '@swc/core' - '@swc/wasm' - '@types/node' - typescript - '@tapjs/typescript@1.4.2(@tapjs/core@1.5.2)(@types/node@18.19.28)(typescript@5.2.2)': + '@tapjs/worker@1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))': dependencies: - '@isaacs/ts-node-temp-fork-for-pr-2009': 10.9.5(@types/node@18.19.28)(typescript@5.2.2) - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - transitivePeerDependencies: - - '@swc/core' - - '@swc/wasm' - - '@types/node' - - typescript - - '@tapjs/worker@1.1.18(@tapjs/core@1.5.0)': - dependencies: - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tapjs/worker@1.1.20(@tapjs/core@1.5.2)': - dependencies: - '@tapjs/core': 1.5.2(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - - '@tsconfig/node10@1.0.9': {} - - '@tsconfig/node12@1.0.11': {} - - '@tsconfig/node14@1.0.3': {} + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) '@tsconfig/node14@14.1.0': {} - '@tsconfig/node16@1.0.4': {} - '@tsconfig/node16@16.1.1': {} '@tsconfig/node18@18.2.2': {} @@ -3492,17 +2162,15 @@ snapshots: '@types/istanbul-lib-coverage@2.0.6': {} - '@types/node-fetch@2.6.9': + '@types/node-fetch@2.6.11': dependencies: - '@types/node': 18.19.28 + '@types/node': 20.12.7 form-data: 4.0.0 - '@types/node@18.19.28': + '@types/node@20.12.7': dependencies: undici-types: 5.26.5 - '@types/normalize-package-data@2.4.4': {} - '@types/sinon@17.0.3': dependencies: '@types/sinonjs__fake-timers': 8.1.5 @@ -3511,11 +2179,6 @@ snapshots: '@types/which@3.0.3': {} - JSONStream@1.3.5: - dependencies: - jsonparse: 1.3.1 - through: 2.3.8 - abbrev@2.0.0: {} acorn-walk@8.3.0: {} @@ -3533,11 +2196,6 @@ snapshots: clean-stack: 2.2.0 indent-string: 4.0.0 - aggregate-error@5.0.0: - dependencies: - clean-stack: 5.2.0 - indent-string: 5.0.0 - ansi-escapes@6.2.0: dependencies: type-fest: 3.13.1 @@ -3546,20 +2204,12 @@ snapshots: ansi-regex@6.0.1: {} - ansi-styles@3.2.1: - dependencies: - color-convert: 1.9.3 - ansi-styles@4.3.0: dependencies: color-convert: 2.0.1 - ansi-styles@5.2.0: {} - ansi-styles@6.2.1: {} - ansicolors@0.3.2: {} - anymatch@3.1.3: dependencies: normalize-path: 3.0.0 @@ -3567,12 +2217,6 @@ snapshots: arg@4.1.3: {} - argparse@2.0.1: {} - - argv-formatter@1.0.0: {} - - array-ify@1.0.0: {} - asn1.js@5.4.1: dependencies: bn.js: 4.12.0 @@ -3594,8 +2238,6 @@ snapshots: bn.js@4.12.0: {} - bottleneck@2.19.5: {} - brace-expansion@1.1.11: dependencies: balanced-match: 1.0.2 @@ -3611,7 +2253,7 @@ snapshots: builtins@5.0.1: dependencies: - semver: 7.5.4 + semver: 7.6.0 c8@8.0.1: dependencies: @@ -3643,40 +2285,8 @@ snapshots: tar: 6.2.0 unique-filename: 3.0.0 - callsites@3.1.0: {} - - cardinal@2.1.1: - dependencies: - ansicolors: 0.3.2 - redeyed: 2.1.1 - - chalk@2.4.2: - dependencies: - ansi-styles: 3.2.1 - escape-string-regexp: 1.0.5 - supports-color: 5.5.0 - - chalk@4.1.2: - dependencies: - ansi-styles: 4.3.0 - supports-color: 7.2.0 - chalk@5.3.0: {} - char-regex@1.0.2: {} - - chokidar@3.5.3: - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - chokidar@3.6.0: dependencies: anymatch: 3.1.3 @@ -3695,22 +2305,12 @@ snapshots: clean-stack@2.2.0: {} - clean-stack@5.2.0: - dependencies: - escape-string-regexp: 5.0.0 - cli-boxes@3.0.0: {} cli-cursor@4.0.0: dependencies: restore-cursor: 4.0.0 - cli-table3@0.6.3: - dependencies: - string-width: 4.2.3 - optionalDependencies: - '@colors/colors': 1.5.0 - cli-truncate@3.1.0: dependencies: slice-ansi: 5.0.0 @@ -3726,72 +2326,22 @@ snapshots: dependencies: convert-to-spaces: 2.0.1 - color-convert@1.9.3: - dependencies: - color-name: 1.1.3 - color-convert@2.0.1: dependencies: color-name: 1.1.4 - color-name@1.1.3: {} - color-name@1.1.4: {} combined-stream@1.0.8: dependencies: delayed-stream: 1.0.0 - compare-func@2.0.0: - dependencies: - array-ify: 1.0.0 - dot-prop: 5.3.0 - concat-map@0.0.1: {} - config-chain@1.1.13: - dependencies: - ini: 1.3.8 - proto-list: 1.2.4 - - conventional-changelog-angular@7.0.0: - dependencies: - compare-func: 2.0.0 - - conventional-changelog-writer@7.0.1: - dependencies: - conventional-commits-filter: 4.0.0 - handlebars: 4.7.8 - json-stringify-safe: 5.0.1 - meow: 12.1.1 - semver: 7.5.4 - split2: 4.2.0 - - conventional-commits-filter@4.0.0: {} - - conventional-commits-parser@5.0.0: - dependencies: - JSONStream: 1.3.5 - is-text-path: 2.0.0 - meow: 12.1.1 - split2: 4.2.0 - convert-source-map@2.0.0: {} convert-to-spaces@2.0.1: {} - core-util-is@1.0.3: {} - - cosmiconfig@8.3.6(typescript@5.3.3): - dependencies: - import-fresh: 3.3.0 - js-yaml: 4.1.0 - parse-json: 5.2.0 - path-type: 4.0.0 - typescript: 5.3.3 - - create-require@1.1.1: {} - cross-env@7.0.3: dependencies: cross-spawn: 7.0.3 @@ -3802,143 +2352,52 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - crypto-random-string@4.0.0: - dependencies: - type-fest: 1.4.0 - debug@4.3.4: dependencies: ms: 2.1.2 - deep-extend@0.6.0: {} - delayed-stream@1.0.0: {} deprecation@2.3.1: {} - diff-sequences@29.6.3: {} - diff@4.0.2: {} diff@5.1.0: {} diff@5.2.0: {} - dir-glob@3.0.1: - dependencies: - path-type: 4.0.0 - - dot-prop@5.3.0: - dependencies: - is-obj: 2.0.0 - - duplexer2@0.1.4: - dependencies: - readable-stream: 2.3.8 - eastasianwidth@0.2.0: {} emoji-regex@8.0.0: {} emoji-regex@9.2.2: {} - emojilib@2.4.0: {} - encoding@0.1.13: dependencies: iconv-lite: 0.6.3 optional: true - env-ci@10.0.0: - dependencies: - execa: 8.0.1 - java-properties: 1.0.2 - env-paths@2.2.1: {} err-code@2.0.3: {} - error-ex@1.3.2: - dependencies: - is-arrayish: 0.2.1 - escalade@3.1.1: {} - escape-string-regexp@1.0.5: {} - escape-string-regexp@2.0.0: {} - escape-string-regexp@5.0.0: {} - - esprima@4.0.1: {} - events-to-array@2.0.3: {} - execa@5.1.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 6.0.1 - human-signals: 2.1.0 - is-stream: 2.0.1 - merge-stream: 2.0.0 - npm-run-path: 4.0.1 - onetime: 5.1.2 - signal-exit: 3.0.7 - strip-final-newline: 2.0.0 - - execa@8.0.1: - dependencies: - cross-spawn: 7.0.3 - get-stream: 8.0.1 - human-signals: 5.0.0 - is-stream: 3.0.0 - merge-stream: 2.0.0 - npm-run-path: 5.1.0 - onetime: 6.0.0 - signal-exit: 4.1.0 - strip-final-newline: 3.0.0 - exponential-backoff@3.1.1: {} - fast-glob@3.3.2: - dependencies: - '@nodelib/fs.stat': 2.0.5 - '@nodelib/fs.walk': 1.2.8 - glob-parent: 5.1.2 - merge2: 1.4.1 - micromatch: 4.0.5 - - fastq@1.15.0: - dependencies: - reusify: 1.0.4 - - figures@2.0.0: - dependencies: - escape-string-regexp: 1.0.5 - - figures@6.0.1: - dependencies: - is-unicode-supported: 2.0.0 - fill-range@7.0.1: dependencies: to-regex-range: 5.0.1 - find-up-simple@1.0.0: {} - - find-up@2.1.0: - dependencies: - locate-path: 2.0.0 - find-up@5.0.0: dependencies: locate-path: 6.0.0 path-exists: 4.0.0 - find-versions@5.1.0: - dependencies: - semver-regex: 4.0.5 - foreground-child@2.0.0: dependencies: cross-spawn: 7.0.3 @@ -3955,19 +2414,8 @@ snapshots: combined-stream: 1.0.8 mime-types: 2.1.35 - from2@2.3.0: - dependencies: - inherits: 2.0.4 - readable-stream: 2.3.8 - fromentries@1.3.2: {} - fs-extra@11.1.1: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.1.0 - universalify: 2.0.1 - fs-minipass@2.1.0: dependencies: minipass: 3.3.6 @@ -3987,21 +2435,6 @@ snapshots: get-caller-file@2.0.5: {} - get-stream@6.0.1: {} - - get-stream@7.0.1: {} - - get-stream@8.0.1: {} - - git-log-parser@1.2.0: - dependencies: - argv-formatter: 1.0.0 - spawn-error-forwarder: 1.0.0 - split2: 1.0.0 - stream-combiner2: 1.1.1 - through2: 2.0.5 - traverse: 0.6.7 - glob-parent@5.1.2: dependencies: is-glob: 4.0.3 @@ -4012,49 +2445,19 @@ snapshots: jackspeak: 2.3.6 minimatch: 9.0.3 minipass: 7.0.4 - path-scurry: 1.10.1 - - glob@7.2.3: - dependencies: - fs.realpath: 1.0.0 - inflight: 1.0.6 - inherits: 2.0.4 - minimatch: 3.1.2 - once: 1.4.0 - path-is-absolute: 1.0.1 + path-scurry: 1.10.1 - glob@8.1.0: + glob@7.2.3: dependencies: fs.realpath: 1.0.0 inflight: 1.0.6 inherits: 2.0.4 - minimatch: 5.1.6 + minimatch: 3.1.2 once: 1.4.0 - - globby@14.0.0: - dependencies: - '@sindresorhus/merge-streams': 1.0.0 - fast-glob: 3.3.2 - ignore: 5.2.4 - path-type: 5.0.0 - slash: 5.1.0 - unicorn-magic: 0.1.0 - - graceful-fs@4.2.10: {} + path-is-absolute: 1.0.1 graceful-fs@4.2.11: {} - handlebars@4.7.8: - dependencies: - minimist: 1.2.8 - neo-async: 2.6.2 - source-map: 0.6.1 - wordwrap: 1.0.0 - optionalDependencies: - uglify-js: 3.17.4 - - has-flag@3.0.0: {} - has-flag@4.0.0: {} hasown@2.0.0: @@ -4063,8 +2466,6 @@ snapshots: hook-std@2.0.0: {} - hook-std@3.0.0: {} - hosted-git-info@7.0.1: dependencies: lru-cache: 10.0.2 @@ -4087,10 +2488,6 @@ snapshots: transitivePeerDependencies: - supports-color - human-signals@2.1.0: {} - - human-signals@5.0.0: {} - iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 @@ -4100,27 +2497,12 @@ snapshots: dependencies: minimatch: 9.0.3 - ignore@5.2.4: {} - - import-fresh@3.3.0: - dependencies: - parent-module: 1.0.1 - resolve-from: 4.0.0 - - import-from-esm@1.2.1: - dependencies: - import-meta-resolve: 4.0.0 - - import-meta-resolve@4.0.0: {} - imurmurhash@0.1.4: {} indent-string@4.0.0: {} indent-string@5.0.0: {} - index-to-position@0.1.2: {} - inflight@1.0.6: dependencies: once: 1.4.0 @@ -4128,8 +2510,6 @@ snapshots: inherits@2.0.4: {} - ini@1.3.8: {} - ink@4.4.1(react@18.2.0): dependencies: '@alcalzone/ansi-tokenize': 0.1.3 @@ -4162,19 +2542,12 @@ snapshots: - bufferutil - utf-8-validate - into-stream@7.0.0: - dependencies: - from2: 2.3.0 - p-is-promise: 3.0.0 - ip@2.0.1: {} is-actual-promise@1.0.1: dependencies: tshy: 1.14.0 - is-arrayish@0.2.1: {} - is-binary-path@2.1.0: dependencies: binary-extensions: 2.2.0 @@ -4205,40 +2578,18 @@ snapshots: is-number@7.0.0: {} - is-obj@2.0.0: {} - is-plain-object@5.0.0: {} - is-stream@2.0.1: {} - - is-stream@3.0.0: {} - - is-text-path@2.0.0: - dependencies: - text-extensions: 2.4.0 - - is-unicode-supported@2.0.0: {} - is-upper-case@2.0.2: dependencies: tslib: 2.6.2 isarray@0.0.1: {} - isarray@1.0.0: {} - isexe@2.0.0: {} isexe@3.1.1: {} - issue-parser@6.0.0: - dependencies: - lodash.capitalize: 4.2.1 - lodash.escaperegexp: 4.1.2 - lodash.isplainobject: 4.0.6 - lodash.isstring: 4.0.1 - lodash.uniqby: 4.7.0 - istanbul-lib-coverage@3.2.2: {} istanbul-lib-report@3.0.1: @@ -4258,73 +2609,22 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - java-properties@1.0.2: {} - - jest-diff@29.7.0: - dependencies: - chalk: 4.1.2 - diff-sequences: 29.6.3 - jest-get-type: 29.6.3 - pretty-format: 29.7.0 - - jest-get-type@29.6.3: {} - js-tokens@4.0.0: {} - js-yaml@4.1.0: - dependencies: - argparse: 2.0.1 - - json-parse-better-errors@1.0.2: {} - - json-parse-even-better-errors@2.3.1: {} - json-parse-even-better-errors@3.0.0: {} json-stringify-safe@5.0.1: {} - jsonfile@6.1.0: - dependencies: - universalify: 2.0.1 - optionalDependencies: - graceful-fs: 4.2.11 - jsonparse@1.3.1: {} just-extend@4.2.1: {} - lines-and-columns@1.2.4: {} - - load-json-file@4.0.0: - dependencies: - graceful-fs: 4.2.11 - parse-json: 4.0.0 - pify: 3.0.0 - strip-bom: 3.0.0 - - locate-path@2.0.0: - dependencies: - p-locate: 2.0.0 - path-exists: 3.0.0 - locate-path@6.0.0: dependencies: p-locate: 5.0.0 - lodash-es@4.17.21: {} - - lodash.capitalize@4.2.1: {} - - lodash.escaperegexp@4.1.2: {} - lodash.get@4.4.2: {} - lodash.isplainobject@4.0.6: {} - - lodash.isstring@4.0.1: {} - - lodash.uniqby@4.7.0: {} - lodash@4.17.21: {} loose-envify@1.4.0: @@ -4341,7 +2641,7 @@ snapshots: make-dir@4.0.0: dependencies: - semver: 7.5.4 + semver: 7.6.0 make-error@1.3.6: {} @@ -4361,51 +2661,20 @@ snapshots: transitivePeerDependencies: - supports-color - marked-terminal@6.1.0(marked@9.1.6): - dependencies: - ansi-escapes: 6.2.0 - cardinal: 2.1.1 - chalk: 5.3.0 - cli-table3: 0.6.3 - marked: 9.1.6 - node-emoji: 2.1.0 - supports-hyperlinks: 3.0.0 - - marked@9.1.6: {} - - meow@12.1.1: {} - - merge-stream@2.0.0: {} - - merge2@1.4.1: {} - - micromatch@4.0.5: - dependencies: - braces: 3.0.2 - picomatch: 2.3.1 - mime-db@1.52.0: {} mime-types@2.1.35: dependencies: mime-db: 1.52.0 - mime@4.0.0: {} - mimic-fn@2.1.0: {} - mimic-fn@4.0.0: {} - minimalistic-assert@1.0.1: {} minimatch@3.1.2: dependencies: brace-expansion: 1.1.11 - minimatch@5.1.6: - dependencies: - brace-expansion: 2.0.1 - minimatch@9.0.3: dependencies: brace-expansion: 2.0.1 @@ -4414,8 +2683,6 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimist@1.2.8: {} - minipass-collect@1.0.2: dependencies: minipass: 3.3.6 @@ -4468,10 +2735,6 @@ snapshots: negotiator@0.6.3: {} - neo-async@2.6.2: {} - - nerf-dart@1.0.0: {} - nise@5.1.5: dependencies: '@sinonjs/commons': 2.0.0 @@ -4480,7 +2743,7 @@ snapshots: just-extend: 4.2.1 path-to-regexp: 1.8.0 - nock@13.4.0: + nock@13.5.4: dependencies: debug: 4.3.4 json-stringify-safe: 5.0.1 @@ -4488,16 +2751,11 @@ snapshots: transitivePeerDependencies: - supports-color - node-emoji@2.1.0: - dependencies: - '@sindresorhus/is': 3.1.2 - char-regex: 1.0.2 - emojilib: 2.4.0 - skin-tone: 2.0.0 - - node-fetch@2.7.0: + node-fetch@2.7.0(encoding@0.1.13): dependencies: whatwg-url: 5.0.0 + optionalDependencies: + encoding: 0.1.13 node-gyp@10.0.1: dependencies: @@ -4508,7 +2766,7 @@ snapshots: make-fetch-happen: 13.0.0 nopt: 7.2.0 proc-log: 3.0.0 - semver: 7.5.4 + semver: 7.6.0 tar: 6.2.0 which: 4.0.0 transitivePeerDependencies: @@ -4522,20 +2780,18 @@ snapshots: dependencies: hosted-git-info: 7.0.1 is-core-module: 2.13.1 - semver: 7.5.4 + semver: 7.6.0 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} - normalize-url@8.0.0: {} - npm-bundled@3.0.0: dependencies: npm-normalize-package-bin: 3.0.1 npm-install-checks@6.3.0: dependencies: - semver: 7.5.4 + semver: 7.6.0 npm-normalize-package-bin@3.0.1: {} @@ -4543,7 +2799,7 @@ snapshots: dependencies: hosted-git-info: 7.0.1 proc-log: 3.0.0 - semver: 7.5.4 + semver: 7.6.0 validate-npm-package-name: 5.0.0 npm-packlist@8.0.0: @@ -4555,7 +2811,7 @@ snapshots: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.1 - semver: 7.5.4 + semver: 7.6.0 npm-registry-fetch@16.1.0: dependencies: @@ -4569,16 +2825,6 @@ snapshots: transitivePeerDependencies: - supports-color - npm-run-path@4.0.1: - dependencies: - path-key: 3.1.1 - - npm-run-path@5.1.0: - dependencies: - path-key: 4.0.0 - - npm@10.2.3: {} - once@1.4.0: dependencies: wrappy: 1.0.2 @@ -4587,36 +2833,16 @@ snapshots: dependencies: mimic-fn: 2.1.0 - onetime@6.0.0: - dependencies: - mimic-fn: 4.0.0 - opener@1.5.2: {} - openpgp@5.11.0: + openpgp@5.11.1: dependencies: asn1.js: 5.4.1 - p-each-series@3.0.0: {} - - p-filter@4.1.0: - dependencies: - p-map: 7.0.1 - - p-is-promise@3.0.0: {} - - p-limit@1.3.0: - dependencies: - p-try: 1.0.0 - p-limit@3.1.0: dependencies: yocto-queue: 0.1.0 - p-locate@2.0.0: - dependencies: - p-limit: 1.3.0 - p-locate@5.0.0: dependencies: p-limit: 3.1.0 @@ -4625,15 +2851,7 @@ snapshots: dependencies: aggregate-error: 3.1.0 - p-map@7.0.1: {} - - p-reduce@2.1.0: {} - - p-reduce@3.0.0: {} - - p-try@1.0.0: {} - - pacote@17.0.4: + pacote@17.0.7: dependencies: '@npmcli/git': 5.0.3 '@npmcli/installed-package-contents': 2.0.2 @@ -4646,52 +2864,25 @@ snapshots: npm-packlist: 8.0.0 npm-pick-manifest: 9.0.0 npm-registry-fetch: 16.1.0 - proc-log: 3.0.0 + proc-log: 4.2.0 promise-retry: 2.0.1 read-package-json: 7.0.0 read-package-json-fast: 3.0.2 - sigstore: 2.1.0 + sigstore: 2.3.0 ssri: 10.0.5 tar: 6.2.0 transitivePeerDependencies: - bluebird - supports-color - parent-module@1.0.1: - dependencies: - callsites: 3.1.0 - - parse-json@4.0.0: - dependencies: - error-ex: 1.3.2 - json-parse-better-errors: 1.0.2 - - parse-json@5.2.0: - dependencies: - '@babel/code-frame': 7.22.13 - error-ex: 1.3.2 - json-parse-even-better-errors: 2.3.1 - lines-and-columns: 1.2.4 - - parse-json@8.0.1: - dependencies: - '@babel/code-frame': 7.22.13 - index-to-position: 0.1.2 - json-parse-even-better-errors: 3.0.0 - type-fest: 4.7.1 - patch-console@2.0.0: {} - path-exists@3.0.0: {} - path-exists@4.0.0: {} path-is-absolute@1.0.1: {} path-key@3.1.1: {} - path-key@4.0.0: {} - path-scurry@1.10.1: dependencies: lru-cache: 10.0.2 @@ -4701,31 +2892,12 @@ snapshots: dependencies: isarray: 0.0.1 - path-type@4.0.0: {} - - path-type@5.0.0: {} - picomatch@2.3.1: {} - pify@3.0.0: {} - pirates@4.0.6: {} - pkg-conf@2.1.0: - dependencies: - find-up: 2.1.0 - load-json-file: 4.0.0 - polite-json@4.0.1: {} - prettier@3.2.5: {} - - pretty-format@29.7.0: - dependencies: - '@jest/schemas': 29.6.3 - ansi-styles: 5.2.0 - react-is: 18.2.0 - prismjs-terminal@1.2.3: dependencies: chalk: 5.3.0 @@ -4736,7 +2908,7 @@ snapshots: proc-log@3.0.0: {} - process-nextick-args@2.0.1: {} + proc-log@4.2.0: {} process-on-spawn@1.0.0: dependencies: @@ -4751,24 +2923,13 @@ snapshots: propagate@2.0.1: {} - proto-list@1.2.4: {} - - queue-microtask@1.2.3: {} - - rc@1.2.8: - dependencies: - deep-extend: 0.6.0 - ini: 1.3.8 - minimist: 1.2.8 - strip-json-comments: 2.0.1 - react-dom@18.2.0(react@18.2.0): dependencies: loose-envify: 1.4.0 react: 18.2.0 scheduler: 0.23.0 - react-element-to-jsx-string@15.0.0(react-dom@18.2.0)(react@18.2.0): + react-element-to-jsx-string@15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0): dependencies: '@base2/pretty-print-object': 1.0.1 is-plain-object: 5.0.0 @@ -4778,8 +2939,6 @@ snapshots: react-is@18.1.0: {} - react-is@18.2.0: {} - react-reconciler@0.29.0(react@18.2.0): dependencies: loose-envify: 1.4.0 @@ -4802,53 +2961,12 @@ snapshots: normalize-package-data: 6.0.0 npm-normalize-package-bin: 3.0.1 - read-pkg-up@11.0.0: - dependencies: - find-up-simple: 1.0.0 - read-pkg: 9.0.0 - type-fest: 4.7.1 - - read-pkg@9.0.0: - dependencies: - '@types/normalize-package-data': 2.4.4 - normalize-package-data: 6.0.0 - parse-json: 8.0.1 - type-fest: 4.7.1 - - readable-stream@2.3.8: - dependencies: - core-util-is: 1.0.3 - inherits: 2.0.4 - isarray: 1.0.0 - process-nextick-args: 2.0.1 - safe-buffer: 5.1.2 - string_decoder: 1.1.1 - util-deprecate: 1.0.2 - readdirp@3.6.0: dependencies: picomatch: 2.3.1 - redeyed@2.1.1: - dependencies: - esprima: 4.0.1 - - registry-auth-token@5.0.2: - dependencies: - '@pnpm/npm-conf': 2.2.2 - - replace-in-file@7.0.2: - dependencies: - chalk: 4.1.2 - glob: 8.1.0 - yargs: 17.7.2 - require-directory@2.1.1: {} - resolve-from@4.0.0: {} - - resolve-from@5.0.0: {} - resolve-import@1.4.5: dependencies: glob: 10.3.10 @@ -4861,8 +2979,6 @@ snapshots: retry@0.12.0: {} - reusify@1.0.4: {} - rimraf@3.0.2: dependencies: glob: 7.2.3 @@ -4871,71 +2987,17 @@ snapshots: dependencies: glob: 10.3.10 - run-parallel@1.2.0: - dependencies: - queue-microtask: 1.2.3 - - safe-buffer@5.1.2: {} - safer-buffer@2.1.2: {} scheduler@0.23.0: dependencies: loose-envify: 1.4.0 - semantic-release-export-data@1.0.1(semantic-release@22.0.7): - dependencies: - '@actions/core': 1.10.1 - semantic-release: 22.0.7(typescript@5.3.3) - - semantic-release-replace-plugin@1.2.7(semantic-release@22.0.7): - dependencies: - jest-diff: 29.7.0 - lodash-es: 4.17.21 - replace-in-file: 7.0.2 - semantic-release: 22.0.7(typescript@5.3.3) - - semantic-release@22.0.7(typescript@5.3.3): - dependencies: - '@semantic-release/commit-analyzer': 11.1.0(semantic-release@22.0.7) - '@semantic-release/error': 4.0.0 - '@semantic-release/github': 9.2.6(semantic-release@22.0.7) - '@semantic-release/npm': 11.0.1(semantic-release@22.0.7) - '@semantic-release/release-notes-generator': 12.1.0(semantic-release@22.0.7) - aggregate-error: 5.0.0 - cosmiconfig: 8.3.6(typescript@5.3.3) - debug: 4.3.4 - env-ci: 10.0.0 - execa: 8.0.1 - figures: 6.0.1 - find-versions: 5.1.0 - get-stream: 6.0.1 - git-log-parser: 1.2.0 - hook-std: 3.0.0 - hosted-git-info: 7.0.1 - lodash-es: 4.17.21 - marked: 9.1.6 - marked-terminal: 6.1.0(marked@9.1.6) - micromatch: 4.0.5 - p-each-series: 3.0.0 - p-reduce: 3.0.0 - read-pkg-up: 11.0.0 - resolve-from: 5.0.0 - semver: 7.5.4 - semver-diff: 4.0.0 - signale: 1.4.0 - yargs: 17.7.2 - transitivePeerDependencies: - - supports-color - - typescript - - semver-diff@4.0.0: + semver@7.5.4: dependencies: - semver: 7.5.4 - - semver-regex@4.0.5: {} + lru-cache: 6.0.0 - semver@7.5.4: + semver@7.6.0: dependencies: lru-cache: 6.0.0 @@ -4949,18 +3011,14 @@ snapshots: signal-exit@4.1.0: {} - signale@1.4.0: - dependencies: - chalk: 2.4.2 - figures: 2.0.0 - pkg-conf: 2.1.0 - - sigstore@2.1.0: + sigstore@2.3.0: dependencies: - '@sigstore/bundle': 2.1.0 - '@sigstore/protobuf-specs': 0.2.1 - '@sigstore/sign': 2.2.0 - '@sigstore/tuf': 2.2.0 + '@sigstore/bundle': 2.3.1 + '@sigstore/core': 1.1.0 + '@sigstore/protobuf-specs': 0.3.1 + '@sigstore/sign': 2.3.0 + '@sigstore/tuf': 2.3.2 + '@sigstore/verify': 1.2.0 transitivePeerDependencies: - supports-color @@ -4973,12 +3031,6 @@ snapshots: nise: 5.1.5 supports-color: 7.2.0 - skin-tone@2.0.0: - dependencies: - unicode-emoji-modifier-base: 1.0.0 - - slash@5.1.0: {} - slice-ansi@5.0.0: dependencies: ansi-styles: 6.2.1 @@ -5004,10 +3056,6 @@ snapshots: ip: 2.0.1 smart-buffer: 4.2.0 - source-map@0.6.1: {} - - spawn-error-forwarder@1.0.0: {} - spdx-correct@3.2.0: dependencies: spdx-expression-parse: 3.0.1 @@ -5022,12 +3070,6 @@ snapshots: spdx-license-ids@3.0.16: {} - split2@1.0.0: - dependencies: - through2: 2.0.5 - - split2@4.2.0: {} - ssri@10.0.5: dependencies: minipass: 7.0.4 @@ -5036,11 +3078,6 @@ snapshots: dependencies: escape-string-regexp: 2.0.0 - stream-combiner2@1.1.1: - dependencies: - duplexer2: 0.1.4 - readable-stream: 2.3.8 - string-length@6.0.0: dependencies: strip-ansi: 7.1.0 @@ -5057,10 +3094,6 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 - string_decoder@1.1.1: - dependencies: - safe-buffer: 5.1.2 - strip-ansi@6.0.1: dependencies: ansi-regex: 5.0.1 @@ -5069,27 +3102,10 @@ snapshots: dependencies: ansi-regex: 6.0.1 - strip-bom@3.0.0: {} - - strip-final-newline@2.0.0: {} - - strip-final-newline@3.0.0: {} - - strip-json-comments@2.0.1: {} - - supports-color@5.5.0: - dependencies: - has-flag: 3.0.0 - supports-color@7.2.0: dependencies: has-flag: 4.0.0 - supports-hyperlinks@3.0.0: - dependencies: - has-flag: 4.0.0 - supports-color: 7.2.0 - sync-content@1.0.2: dependencies: glob: 10.3.10 @@ -5097,46 +3113,36 @@ snapshots: path-scurry: 1.10.1 rimraf: 5.0.5 - tap-parser@15.3.1: - dependencies: - events-to-array: 2.0.3 - tap-yaml: 2.2.1 - tap-parser@15.3.2: dependencies: events-to-array: 2.0.3 tap-yaml: 2.2.2 - tap-yaml@2.2.1: - dependencies: - yaml: 2.3.4 - yaml-types: 0.3.0(yaml@2.3.4) - tap-yaml@2.2.2: dependencies: yaml: 2.4.1 yaml-types: 0.3.0(yaml@2.4.1) - tap@18.7.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0)(typescript@5.3.3): - dependencies: - '@tapjs/after': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/after-each': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/asserts': 1.1.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/before': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/before-each': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/core': 1.5.0(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/filter': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/fixture': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/intercept': 1.2.18(@tapjs/core@1.5.0) - '@tapjs/mock': 1.3.0(@tapjs/core@1.5.0) - '@tapjs/node-serialize': 1.3.0(@tapjs/core@1.5.0) - '@tapjs/run': 1.5.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/snapshot': 1.2.18(@tapjs/core@1.5.0)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/spawn': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/stdin': 1.1.18(@tapjs/core@1.5.0) - '@tapjs/test': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(react-dom@18.2.0)(react@18.2.0) - '@tapjs/typescript': 1.4.0(@tapjs/core@1.5.0)(@types/node@18.19.28)(typescript@5.3.3) - '@tapjs/worker': 1.1.18(@tapjs/core@1.5.0) + tap@18.7.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)(typescript@5.4.5): + dependencies: + '@tapjs/after': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/after-each': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/asserts': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/before': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/before-each': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/core': 1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/filter': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/fixture': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/intercept': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/mock': 1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/node-serialize': 1.3.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/run': 1.5.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/snapshot': 1.2.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/spawn': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/stdin': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) + '@tapjs/test': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0) + '@tapjs/typescript': 1.4.2(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0))(@types/node@20.12.7)(typescript@5.4.5) + '@tapjs/worker': 1.1.20(@tapjs/core@1.5.2(@types/node@20.12.7)(react-dom@18.2.0(react@18.2.0))(react@18.2.0)) resolve-import: 1.4.5 transitivePeerDependencies: - '@swc/core' @@ -5161,46 +3167,20 @@ snapshots: mkdirp: 1.0.4 yallist: 4.0.0 - tcompare@6.4.5(react-dom@18.2.0)(react@18.2.0): - dependencies: - diff: 5.1.0 - react-element-to-jsx-string: 15.0.0(react-dom@18.2.0)(react@18.2.0) - transitivePeerDependencies: - - react - - react-dom - - tcompare@6.4.6(react-dom@18.2.0)(react@18.2.0): + tcompare@6.4.6(react-dom@18.2.0(react@18.2.0))(react@18.2.0): dependencies: diff: 5.2.0 - react-element-to-jsx-string: 15.0.0(react-dom@18.2.0)(react@18.2.0) + react-element-to-jsx-string: 15.0.0(react-dom@18.2.0(react@18.2.0))(react@18.2.0) transitivePeerDependencies: - react - react-dom - temp-dir@3.0.0: {} - - tempy@3.1.0: - dependencies: - is-stream: 3.0.0 - temp-dir: 3.0.0 - type-fest: 2.19.0 - unique-string: 3.0.0 - test-exclude@6.0.0: dependencies: '@istanbuljs/schema': 0.1.3 glob: 7.2.3 minimatch: 3.1.2 - text-extensions@2.4.0: {} - - through2@2.0.5: - dependencies: - readable-stream: 2.3.8 - xtend: 4.0.2 - - through@2.3.8: {} - to-readable-stream@2.1.0: {} to-regex-range@5.0.1: @@ -5209,28 +3189,8 @@ snapshots: tr46@0.0.3: {} - traverse@0.6.7: {} - trivial-deferred@2.0.0: {} - ts-node@10.9.2(@types/node@18.19.28)(typescript@5.3.3): - dependencies: - '@cspotcode/source-map-support': 0.8.1 - '@tsconfig/node10': 1.0.9 - '@tsconfig/node12': 1.0.11 - '@tsconfig/node14': 1.0.3 - '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.28 - acorn: 8.11.2 - acorn-walk: 8.3.0 - arg: 4.1.3 - create-require: 1.1.1 - diff: 4.0.2 - make-error: 1.3.6 - typescript: 5.3.3 - v8-compile-cache-lib: 3.0.1 - yn: 3.1.1 - tshy@1.14.0: dependencies: chalk: 5.3.0 @@ -5245,21 +3205,9 @@ snapshots: typescript: 5.4.5 walk-up-path: 3.0.1 - tshy@1.8.0: - dependencies: - chalk: 5.3.0 - chokidar: 3.5.3 - foreground-child: 3.1.1 - mkdirp: 3.0.1 - resolve-import: 1.4.5 - rimraf: 5.0.5 - sync-content: 1.0.2 - typescript: 5.2.2 - walk-up-path: 3.0.1 - tslib@2.6.2: {} - tuf-js@2.1.0: + tuf-js@2.2.0: dependencies: '@tufjs/models': 2.0.0 debug: 4.3.4 @@ -5273,33 +3221,18 @@ snapshots: type-fest@0.12.0: {} - type-fest@1.4.0: {} - - type-fest@2.19.0: {} - type-fest@3.13.1: {} - type-fest@4.7.1: {} - typescript@5.2.2: {} - typescript@5.3.3: {} - typescript@5.4.5: {} - uglify-js@3.17.4: - optional: true - undici-types@5.26.5: {} - undici@5.28.4: + undici@5.28.3: dependencies: '@fastify/busboy': 2.1.0 - unicode-emoji-modifier-base@1.0.0: {} - - unicorn-magic@0.1.0: {} - unique-filename@3.0.0: dependencies: unique-slug: 4.0.0 @@ -5308,18 +3241,8 @@ snapshots: dependencies: imurmurhash: 0.1.4 - unique-string@3.0.0: - dependencies: - crypto-random-string: 4.0.0 - universal-user-agent@6.0.1: {} - universalify@2.0.1: {} - - url-join@5.0.0: {} - - util-deprecate@1.0.2: {} - uuid@8.3.2: {} v8-compile-cache-lib@3.0.1: {} @@ -5360,8 +3283,6 @@ snapshots: dependencies: string-width: 5.1.2 - wordwrap@1.0.0: {} - wrap-ansi@7.0.0: dependencies: ansi-styles: 4.3.0 @@ -5378,22 +3299,14 @@ snapshots: ws@8.14.2: {} - xtend@4.0.2: {} - y18n@5.0.8: {} yallist@4.0.0: {} - yaml-types@0.3.0(yaml@2.3.4): - dependencies: - yaml: 2.3.4 - yaml-types@0.3.0(yaml@2.4.1): dependencies: yaml: 2.4.1 - yaml@2.3.4: {} - yaml@2.4.1: {} yargs-parser@21.1.1: {} @@ -5408,8 +3321,6 @@ snapshots: y18n: 5.0.8 yargs-parser: 21.1.1 - yn@3.1.1: {} - yocto-queue@0.1.0: {} yoga-wasm-web@0.3.3: {} diff --git a/src/main.ts b/src/main.ts index 3496da57..879d8592 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,31 +1,31 @@ -import { platform, arch } from 'os'; -import { chdir } from 'process'; -import { unlinkSync } from 'fs'; -import { debug, error, setFailed, warning, info } from '@actions/core'; +import { unlinkSync } from 'node:fs'; +import { arch, platform } from 'node:os'; +import { chdir } from 'node:process'; +import { debug, error, info, setFailed, warning } from '@actions/core'; import { exec } from '@actions/exec'; +import type { ExecOptions } from '@actions/exec/lib/interfaces'; import { context } from '@actions/github'; import * as glob from '@actions/glob'; import { - downloadToFile, - getOptionalString, - parsePathAndFormat, - verifyChecksum, - verifySignature, + downloadToFile, + getOptionalString, + parsePathAndFormat, + verifyChecksum, + verifySignature, } from './utils'; -import type { ExecOptions } from '@actions/exec/lib/interfaces'; const PLATFORM = platform(); // REFER: https://docs.codeclimate.com/docs/configuring-test-coverage#locations-of-pre-built-binaries /** Canonical download URL for the official CodeClimate reporter. */ export const DOWNLOAD_URL = `https://codeclimate.com/downloads/test-reporter/test-reporter-latest-${ - PLATFORM === 'win32' ? 'windows' : PLATFORM + PLATFORM === 'win32' ? 'windows' : PLATFORM }-${arch() === 'arm64' ? 'arm64' : 'amd64'}`; /** Local file name of the CodeClimate reporter. */ export const EXECUTABLE = './cc-reporter'; export const CODECLIMATE_GPG_PUBLIC_KEY_ID = - '9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85' as const; + '9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85' as const; const CODECLIMATE_GPG_PUBLIC_KEY_URL = - `https://keys.openpgp.org/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}` as const; + `https://keys.openpgp.org/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}` as const; const DEFAULT_COVERAGE_COMMAND = ''; const DEFAULT_WORKING_DIRECTORY = ''; const DEFAULT_CODECLIMATE_DEBUG = 'false'; @@ -33,10 +33,10 @@ const DEFAULT_COVERAGE_LOCATIONS = ''; const DEFAULT_VERIFY_DOWNLOAD = 'true'; const SUPPORTED_GITHUB_EVENTS = [ - // Regular PRs. - 'pull_request', - // PRs that were triggered on remote forks. - 'pull_request_target', + // Regular PRs. + 'pull_request', + // PRs that were triggered on remote forks. + 'pull_request_target', ]; /** Central data structure that holds a list of all downloaded file artifacts. */ @@ -50,34 +50,34 @@ export const FILE_ARTIFACTS = new Set(); * @param mode (Optional) File mode. */ export async function downloadAndRecord( - url: string, - file: string, - mode?: number, + url: string, + file: string, + mode?: number, ): Promise { - await downloadToFile(url, file, mode); - FILE_ARTIFACTS.add(file); + await downloadToFile(url, file, mode); + FILE_ARTIFACTS.add(file); } export function prepareEnv() { - const env = process.env as { [key: string]: string }; + const env = process.env as { [key: string]: string }; - if (process.env.GITHUB_SHA !== undefined) - env.GIT_COMMIT_SHA = process.env.GITHUB_SHA; - if (process.env.GITHUB_REF !== undefined) - env.GIT_BRANCH = process.env.GITHUB_REF; + if (process.env.GITHUB_SHA !== undefined) + env.GIT_COMMIT_SHA = process.env.GITHUB_SHA; + if (process.env.GITHUB_REF !== undefined) + env.GIT_BRANCH = process.env.GITHUB_REF; - if (env.GIT_BRANCH) - env.GIT_BRANCH = env.GIT_BRANCH.replace(/^refs\/heads\//, ''); // Remove 'refs/heads/' prefix (See https://github.com/paambaati/codeclimate-action/issues/42) + if (env.GIT_BRANCH) + env.GIT_BRANCH = env.GIT_BRANCH.replace(/^refs\/heads\//, ''); // Remove 'refs/heads/' prefix (See https://github.com/paambaati/codeclimate-action/issues/42) - if ( - process.env.GITHUB_EVENT_NAME && - SUPPORTED_GITHUB_EVENTS.includes(process.env.GITHUB_EVENT_NAME) - ) { - env.GIT_BRANCH = process.env.GITHUB_HEAD_REF || env.GIT_BRANCH; // Report correct branch for PRs (See https://github.com/paambaati/codeclimate-action/issues/86) - env.GIT_COMMIT_SHA = context.payload.pull_request?.['head']?.['sha']; // Report correct SHA for the head branch (See https://github.com/paambaati/codeclimate-action/issues/140) - } + if ( + process.env.GITHUB_EVENT_NAME && + SUPPORTED_GITHUB_EVENTS.includes(process.env.GITHUB_EVENT_NAME) + ) { + env.GIT_BRANCH = process.env.GITHUB_HEAD_REF || env.GIT_BRANCH; // Report correct branch for PRs (See https://github.com/paambaati/codeclimate-action/issues/86) + env.GIT_COMMIT_SHA = context.payload.pull_request?.head?.sha; // Report correct SHA for the head branch (See https://github.com/paambaati/codeclimate-action/issues/140) + } - return env; + return env; } /** @@ -88,328 +88,314 @@ export function prepareEnv() { * @param algorithm (Optional) Algorithm to verify checksum @default 'sha256'. */ export async function verifyChecksumAndSignature( - downloadUrl: string = DOWNLOAD_URL, - executablePath: string = EXECUTABLE, - algorithm: string = 'sha256', + downloadUrl: string = DOWNLOAD_URL, + executablePath: string = EXECUTABLE, + algorithm = 'sha256', ): Promise { - const checksumUrl = `${downloadUrl}.${algorithm}`; - const checksumFilePath = `${executablePath}.${algorithm}`; - const signatureUrl = `${downloadUrl}.${algorithm}.sig`; - const signatureFilePath = `${executablePath}.${algorithm}.sig`; - const ccPublicKeyFilePath = 'public-key.asc'; + const checksumUrl = `${downloadUrl}.${algorithm}`; + const checksumFilePath = `${executablePath}.${algorithm}`; + const signatureUrl = `${downloadUrl}.${algorithm}.sig`; + const signatureFilePath = `${executablePath}.${algorithm}.sig`; + const ccPublicKeyFilePath = 'public-key.asc'; - try { - debug(`ℹ️ Verifying CC Reporter checksum...`); - await downloadAndRecord(checksumUrl, checksumFilePath); - const checksumVerified = await verifyChecksum( - executablePath, - checksumFilePath, - algorithm, - ); - if (!checksumVerified) - throw new Error('CC Reporter checksum does not match!'); - debug('✅ CC Reported checksum verification completed...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter checksum verfication failed!'); - throw err; - } + try { + debug('ℹ️ Verifying CC Reporter checksum...'); + await downloadAndRecord(checksumUrl, checksumFilePath); + const checksumVerified = await verifyChecksum( + executablePath, + checksumFilePath, + algorithm, + ); + if (!checksumVerified) + throw new Error('CC Reporter checksum does not match!'); + debug('✅ CC Reported checksum verification completed...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter checksum verfication failed!'); + throw err; + } - try { - debug(`ℹ️ Verifying CC Reporter GPG signature...`); - await downloadAndRecord(signatureUrl, signatureFilePath); - await downloadAndRecord( - CODECLIMATE_GPG_PUBLIC_KEY_URL, - ccPublicKeyFilePath, - ); - const signatureVerified = await verifySignature( - checksumFilePath, - signatureFilePath, - ccPublicKeyFilePath, - ); - if (!signatureVerified) - throw new Error('CC Reporter GPG signature is invalid!'); - debug('✅ CC Reported GPG signature verification completed...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter GPG signature verfication failed!'); - throw err; - } + try { + debug('ℹ️ Verifying CC Reporter GPG signature...'); + await downloadAndRecord(signatureUrl, signatureFilePath); + await downloadAndRecord( + CODECLIMATE_GPG_PUBLIC_KEY_URL, + ccPublicKeyFilePath, + ); + const signatureVerified = await verifySignature( + checksumFilePath, + signatureFilePath, + ccPublicKeyFilePath, + ); + if (!signatureVerified) + throw new Error('CC Reporter GPG signature is invalid!'); + debug('✅ CC Reported GPG signature verification completed...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter GPG signature verfication failed!'); + throw err; + } } async function getLocationLines( - coverageLocationPatternsParam: string, + coverageLocationPatternsParam: string, ): Promise> { - const coverageLocationPatternsLines = coverageLocationPatternsParam - .split(/\r?\n/) - .filter((pat) => pat) - .map((pat) => pat.trim()); + const coverageLocationPatternsLines = coverageLocationPatternsParam + .split(/\r?\n/) + .filter((pat) => pat) + .map((pat) => pat.trim()); - const patternsAndFormats = - coverageLocationPatternsLines.map(parsePathAndFormat); + const patternsAndFormats = + coverageLocationPatternsLines.map(parsePathAndFormat); - const pathsWithFormat = await Promise.all( - patternsAndFormats.map(async ({ format, pattern }) => { - const globber = await glob.create(pattern); - const paths = await globber.glob(); - const pathsWithFormat = paths.map( - (singlePath) => `${singlePath}:${format}`, - ); - return pathsWithFormat; - }), - ); + const pathsWithFormat = await Promise.all( + patternsAndFormats.map(async ({ format, pattern }) => { + const globber = await glob.create(pattern); + const paths = await globber.glob(); + const pathsWithFormat = paths.map( + (singlePath) => `${singlePath}:${format}`, + ); + return pathsWithFormat; + }), + ); - const coverageLocationLines = ([] as Array).concat( - ...pathsWithFormat, - ); + const coverageLocationLines = ([] as Array).concat( + ...pathsWithFormat, + ); - return coverageLocationLines; + return coverageLocationLines; } -export function run( - downloadUrl: string = DOWNLOAD_URL, - executable: string = EXECUTABLE, - coverageCommand: string = DEFAULT_COVERAGE_COMMAND, - workingDirectory: string = DEFAULT_WORKING_DIRECTORY, - codeClimateDebug: string = DEFAULT_CODECLIMATE_DEBUG, - coverageLocationsParam: string = DEFAULT_COVERAGE_LOCATIONS, - coveragePrefix?: string, - verifyDownload: string = DEFAULT_VERIFY_DOWNLOAD, +export async function run( + downloadUrl: string = DOWNLOAD_URL, + executable: string = EXECUTABLE, + coverageCommand: string = DEFAULT_COVERAGE_COMMAND, + workingDirectory: string = DEFAULT_WORKING_DIRECTORY, + codeClimateDebug: string = DEFAULT_CODECLIMATE_DEBUG, + coverageLocationsParam: string = DEFAULT_COVERAGE_LOCATIONS, + coveragePrefix?: string, + verifyDownload: string = DEFAULT_VERIFY_DOWNLOAD, ): Promise { - return new Promise(async (resolve, reject) => { - let lastExitCode = 1; - if (workingDirectory) { - debug(`Changing working directory to ${workingDirectory}`); - try { - chdir(workingDirectory); - lastExitCode = 0; - debug('✅ Changing working directory completed...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 Changing working directory failed!'); - return reject(err); - } - } + let lastExitCode = 1; + if (workingDirectory) { + debug(`Changing working directory to ${workingDirectory}`); + try { + chdir(workingDirectory); + lastExitCode = 0; + debug('✅ Changing working directory completed...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 Changing working directory failed!'); + throw err; + } + } - try { - debug(`ℹ️ Downloading CC Reporter from ${downloadUrl} ...`); - await downloadAndRecord(downloadUrl, executable); - debug('✅ CC Reporter downloaded...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter download failed!'); - warning(`Could not download ${downloadUrl}`); - warning( - `Please check if your platform is supported — see https://docs.codeclimate.com/docs/configuring-test-coverage#section-locations-of-pre-built-binaries`, - ); - return reject(err); - } + try { + debug(`ℹ️ Downloading CC Reporter from ${downloadUrl} ...`); + await downloadAndRecord(downloadUrl, executable); + debug('✅ CC Reporter downloaded...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter download failed!'); + warning(`Could not download ${downloadUrl}`); + warning( + 'Please check if your platform is supported — see https://docs.codeclimate.com/docs/configuring-test-coverage#section-locations-of-pre-built-binaries', + ); + throw err; + } - if (verifyDownload === 'true') { - try { - await verifyChecksumAndSignature(downloadUrl, executable); - } catch (err) { - return reject(err); - } - } + if (verifyDownload === 'true') { + await verifyChecksumAndSignature(downloadUrl, executable); + } - const execOpts: ExecOptions = { - env: prepareEnv(), - }; - try { - lastExitCode = await exec(executable, ['before-build'], execOpts); - if (lastExitCode !== 0) { - throw new Error( - `Coverage after-build exited with code ${lastExitCode}`, - ); - } - debug('✅ CC Reporter before-build checkin completed...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter before-build checkin failed!'); - return reject(err); - } + const execOpts: ExecOptions = { + env: prepareEnv(), + }; + try { + lastExitCode = await exec(executable, ['before-build'], execOpts); + if (lastExitCode !== 0) { + throw new Error(`Coverage after-build exited with code ${lastExitCode}`); + } + debug('✅ CC Reporter before-build checkin completed...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter before-build checkin failed!'); + throw err; + } - if (coverageCommand) { - try { - lastExitCode = await exec(coverageCommand, undefined, execOpts); - if (lastExitCode !== 0) { - throw new Error(`Coverage run exited with code ${lastExitCode}`); - } - debug('✅ Coverage run completed...'); - } catch (err) { - error((err as Error).message); - setFailed('🚨 Coverage run failed!'); - return reject(err); - } - } else { - info( - `ℹ️ 'coverageCommand' not set, so skipping building coverage report!`, - ); - } + if (coverageCommand) { + try { + lastExitCode = await exec(coverageCommand, undefined, execOpts); + if (lastExitCode !== 0) { + throw new Error(`Coverage run exited with code ${lastExitCode}`); + } + debug('✅ Coverage run completed...'); + } catch (err) { + error((err as Error).message); + setFailed('🚨 Coverage run failed!'); + throw err; + } + } else { + info(`ℹ️ 'coverageCommand' not set, so skipping building coverage report!`); + } - const coverageLocations = await getLocationLines(coverageLocationsParam); - if (coverageLocations.length > 0) { - debug( - `Parsing ${ - coverageLocations.length - } coverage location(s) — ${coverageLocations} (${typeof coverageLocations})`, - ); - // Run format-coverage on each location. - const parts: Array = []; - for (const i in coverageLocations) { - const { format: type, pattern: location } = parsePathAndFormat( - coverageLocations[i], - ); - if (!type) { - const err = new Error(`Invalid formatter type ${type}`); - debug( - `⚠️ Could not find coverage formatter type! Found ${ - coverageLocations[i] - } (${typeof coverageLocations[i]})`, - ); - error(err.message); - setFailed( - '🚨 Coverage formatter type not set! Each coverage location should be of the format :', - ); - return reject(err); - } - const commands = [ - 'format-coverage', - location, - '-t', - type, - '-o', - `codeclimate.${i}.json`, - ]; - if (codeClimateDebug === 'true') commands.push('--debug'); - if (coveragePrefix) { - commands.push('--prefix', coveragePrefix); - } + const coverageLocations = await getLocationLines(coverageLocationsParam); + if (coverageLocations.length > 0) { + debug( + `Parsing ${ + coverageLocations.length + } coverage location(s) — ${coverageLocations} (${typeof coverageLocations})`, + ); + // Run format-coverage on each location. + const parts: Array = []; + for (const i in coverageLocations) { + const { format: type, pattern: location } = parsePathAndFormat( + coverageLocations[i], + ); + if (!type) { + const err = new Error(`Invalid formatter type ${type}`); + debug( + `⚠️ Could not find coverage formatter type! Found ${ + coverageLocations[i] + } (${typeof coverageLocations[i]})`, + ); + error(err.message); + setFailed( + '🚨 Coverage formatter type not set! Each coverage location should be of the format :', + ); + throw err; + } + const commands = [ + 'format-coverage', + location, + '-t', + type, + '-o', + `codeclimate.${i}.json`, + ]; + if (codeClimateDebug === 'true') commands.push('--debug'); + if (coveragePrefix) { + commands.push('--prefix', coveragePrefix); + } - parts.push(`codeclimate.${i}.json`); + parts.push(`codeclimate.${i}.json`); - try { - lastExitCode = await exec(executable, commands, execOpts); - if (lastExitCode !== 0) { - throw new Error( - `Coverage formatter exited with code ${lastExitCode}`, - ); - } - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter coverage formatting failed!'); - return reject(err); - } - } + try { + lastExitCode = await exec(executable, commands, execOpts); + if (lastExitCode !== 0) { + throw new Error( + `Coverage formatter exited with code ${lastExitCode}`, + ); + } + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter coverage formatting failed!'); + throw err; + } + } - // Run sum coverage. - const sumCommands = [ - 'sum-coverage', - ...parts, - '-p', - `${coverageLocations.length}`, - '-o', - `coverage.total.json`, - ]; - if (codeClimateDebug === 'true') sumCommands.push('--debug'); + // Run sum coverage. + const sumCommands = [ + 'sum-coverage', + ...parts, + '-p', + `${coverageLocations.length}`, + '-o', + 'coverage.total.json', + ]; + if (codeClimateDebug === 'true') sumCommands.push('--debug'); - try { - lastExitCode = await exec(executable, sumCommands, execOpts); - if (lastExitCode !== 0) { - throw new Error( - `Coverage sum process exited with code ${lastExitCode}`, - ); - } - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter coverage sum failed!'); - return reject(err); - } + try { + lastExitCode = await exec(executable, sumCommands, execOpts); + if (lastExitCode !== 0) { + throw new Error( + `Coverage sum process exited with code ${lastExitCode}`, + ); + } + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter coverage sum failed!'); + throw err; + } - // Upload to Code Climate. - const uploadCommands = ['upload-coverage', '-i', `coverage.total.json`]; - if (codeClimateDebug === 'true') uploadCommands.push('--debug'); - try { - lastExitCode = await exec(executable, uploadCommands, execOpts); - if (lastExitCode !== 0) { - throw new Error(`Coverage upload exited with code ${lastExitCode}`); - } - debug('✅ CC Reporter upload coverage completed!'); - return resolve(); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter coverage upload failed!'); - return reject(err); - } - } + // Upload to Code Climate. + const uploadCommands = ['upload-coverage', '-i', 'coverage.total.json']; + if (codeClimateDebug === 'true') uploadCommands.push('--debug'); + try { + lastExitCode = await exec(executable, uploadCommands, execOpts); + if (lastExitCode !== 0) { + throw new Error(`Coverage upload exited with code ${lastExitCode}`); + } + debug('✅ CC Reporter upload coverage completed!'); + return; + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter coverage upload failed!'); + throw err; + } + } - try { - const commands = ['after-build', '--exit-code', lastExitCode.toString()]; - if (codeClimateDebug === 'true') commands.push('--debug'); - if (coveragePrefix) { - commands.push('--prefix', coveragePrefix); - } + try { + const commands = ['after-build', '--exit-code', lastExitCode.toString()]; + if (codeClimateDebug === 'true') commands.push('--debug'); + if (coveragePrefix) { + commands.push('--prefix', coveragePrefix); + } - lastExitCode = await exec(executable, commands, execOpts); - if (lastExitCode !== 0) { - throw new Error( - `Coverage after-build exited with code ${lastExitCode}`, - ); - } - debug('✅ CC Reporter after-build checkin completed!'); - return resolve(); - } catch (err) { - error((err as Error).message); - setFailed('🚨 CC Reporter after-build checkin failed!'); - return reject(err); - } - }); + lastExitCode = await exec(executable, commands, execOpts); + if (lastExitCode !== 0) { + throw new Error(`Coverage after-build exited with code ${lastExitCode}`); + } + debug('✅ CC Reporter after-build checkin completed!'); + return; + } catch (err) { + error((err as Error).message); + setFailed('🚨 CC Reporter after-build checkin failed!'); + throw err; + } } /* c8 ignore start */ if (require.main === module) { - const coverageCommand = getOptionalString( - 'coverageCommand', - DEFAULT_COVERAGE_COMMAND, - ); - const workingDirectory = getOptionalString( - 'workingDirectory', - DEFAULT_WORKING_DIRECTORY, - ); - const codeClimateDebug = getOptionalString( - 'debug', - DEFAULT_CODECLIMATE_DEBUG, - ); - const coverageLocations = getOptionalString( - 'coverageLocations', - DEFAULT_COVERAGE_LOCATIONS, - ); - const coveragePrefix = getOptionalString('prefix'); - const verifyDownload = getOptionalString( - 'verifyDownload', - DEFAULT_VERIFY_DOWNLOAD, - ); - try { - run( - DOWNLOAD_URL, - EXECUTABLE, - coverageCommand, - workingDirectory, - codeClimateDebug, - coverageLocations, - coveragePrefix, - verifyDownload, - ); - } catch (err) { - throw err; - } finally { - // Finally clean up all artifacts that we downloaded. - for (const artifact of FILE_ARTIFACTS) { - try { - unlinkSync(artifact); - } catch {} - } - } + const coverageCommand = getOptionalString( + 'coverageCommand', + DEFAULT_COVERAGE_COMMAND, + ); + const workingDirectory = getOptionalString( + 'workingDirectory', + DEFAULT_WORKING_DIRECTORY, + ); + const codeClimateDebug = getOptionalString( + 'debug', + DEFAULT_CODECLIMATE_DEBUG, + ); + const coverageLocations = getOptionalString( + 'coverageLocations', + DEFAULT_COVERAGE_LOCATIONS, + ); + const coveragePrefix = getOptionalString('prefix'); + const verifyDownload = getOptionalString( + 'verifyDownload', + DEFAULT_VERIFY_DOWNLOAD, + ); + try { + run( + DOWNLOAD_URL, + EXECUTABLE, + coverageCommand, + workingDirectory, + codeClimateDebug, + coverageLocations, + coveragePrefix, + verifyDownload, + ); + } finally { + // Finally clean up all artifacts that we downloaded. + for (const artifact of FILE_ARTIFACTS) { + try { + unlinkSync(artifact); + } catch {} + } + } } /* c8 ignore stop */ diff --git a/src/utils.ts b/src/utils.ts index b40a5985..cc8115f2 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,10 +1,10 @@ -import { createHash, timingSafeEqual } from 'crypto'; -import { readFile, createWriteStream } from 'fs'; -import { platform } from 'os'; -import { promisify } from 'util'; +import { createHash, timingSafeEqual } from 'node:crypto'; +import { createWriteStream, readFile } from 'node:fs'; +import { platform } from 'node:os'; +import { promisify } from 'node:util'; import { getInput } from '@actions/core'; import fetch from 'node-fetch'; -import { readKey, readSignature, createMessage, verify } from 'openpgp'; +import { createMessage, readKey, readSignature, verify } from 'openpgp'; const readFileAsync = promisify(readFile); type ReadFileAsyncOptions = Omit[1], 'string'>; @@ -17,7 +17,7 @@ type ReadFileAsyncOptions = Omit[1], 'string'>; * @returns Parsed input value. */ export const getOptionalString = (name: string, defaultValue = '') => - getInput(name, { required: false }) || defaultValue; + getInput(name, { required: false }) || defaultValue; /** * Naively checks if 2 given JSON objects are identical. @@ -27,8 +27,8 @@ export const getOptionalString = (name: string, defaultValue = '') => * @returns `true` if same, `false` if not. */ export const areObjectsEqual = ( - obj1: object | [], - obj2: object | [], + obj1: object | [], + obj2: object | [], ): boolean => JSON.stringify(obj1) === JSON.stringify(obj2); /** @@ -39,31 +39,36 @@ export const areObjectsEqual = ( * @param mode (Optional) File mode. */ export function downloadToFile( - url: string, - file: string, - mode: number = 0o755, + url: string, + file: string, + mode = 0o755, ): Promise { - return new Promise(async (resolve, reject) => { - try { - const response = await fetch(url, { - redirect: 'follow', - follow: 5, - timeout: 2 * 60 * 1000, // Timeout in 2 minutes. - }); - if (response.status < 200 || response.status > 299) { - throw new Error( - `Download of '${url}' failed with response status code ${response.status}`, - ); - } - const writer = createWriteStream(file, { mode }); - response.body.pipe(writer); - writer.on('close', () => { - return resolve(); - }); - } catch (err) { - return reject(err); - } - }); + return new Promise((resolve, reject) => { + try { + fetch(url, { + redirect: 'follow', + follow: 5, + timeout: 2 * 60 * 1000, // Timeout in 2 minutes. + }) + .then((response) => { + if (response.status < 200 || response.status > 299) { + throw new Error( + `Download of '${url}' failed with response status code ${response.status}`, + ); + } + const writer = createWriteStream(file, { mode }); + response.body.pipe(writer); + writer.on('close', () => { + return resolve(); + }); + }) + .catch((err) => { + return reject(err); + }); + } catch (err) { + return reject(err); + } + }); } /** @@ -74,10 +79,10 @@ export function downloadToFile( * @returns File contents as `Buffer`. */ export async function getFileContents( - filePath: string, - options?: ReadFileAsyncOptions, + filePath: string, + options?: ReadFileAsyncOptions, ): Promise { - return await readFileAsync(filePath, options); + return await readFileAsync(filePath, options); } /** @@ -88,10 +93,10 @@ export async function getFileContents( * @returns File contents as string. */ export async function getFileContentsAsString( - filePath: string, - options?: ReadFileAsyncOptions, + filePath: string, + options?: ReadFileAsyncOptions, ): Promise { - return (await getFileContents(filePath, options)).toString('utf8'); + return (await getFileContents(filePath, options)).toString('utf8'); } /** @@ -102,11 +107,11 @@ export async function getFileContentsAsString( * @returns Checksum of file as string. */ export async function getFileChecksum( - filePath: string, - algorithm: string = 'sha256', + filePath: string, + algorithm = 'sha256', ): Promise { - const fileContents = await getFileContents(filePath); - return createHash(algorithm).update(fileContents).digest('hex'); + const fileContents = await getFileContents(filePath); + return createHash(algorithm).update(fileContents).digest('hex'); } /** @@ -121,26 +126,26 @@ export async function getFileChecksum( * @returns Returns `true` if checksums match, `false` if they don't. */ export async function verifyChecksum( - originalFile: string, - checksumFile: string, - algorithm: string = 'sha256', + originalFile: string, + checksumFile: string, + algorithm = 'sha256', ): Promise { - const binaryChecksum = await getFileChecksum(originalFile, algorithm); - const declaredChecksumFileContents = await getFileContents(checksumFile); - const declaredChecksum = declaredChecksumFileContents - .toString() - .trim() - .split(/\s+/)[0]; - try { - return timingSafeEqual( - Buffer.from(binaryChecksum), - Buffer.from(declaredChecksum), - ); - } catch { - // Fail on other errors that can definitely cause the comparison to fail, including - // mismatched Buffer byte lengths. - return false; - } + const binaryChecksum = await getFileChecksum(originalFile, algorithm); + const declaredChecksumFileContents = await getFileContents(checksumFile); + const declaredChecksum = declaredChecksumFileContents + .toString() + .trim() + .split(/\s+/)[0]; + try { + return timingSafeEqual( + Buffer.from(binaryChecksum), + Buffer.from(declaredChecksum), + ); + } catch { + // Fail on other errors that can definitely cause the comparison to fail, including + // mismatched Buffer byte lengths. + return false; + } } /** @@ -152,34 +157,34 @@ export async function verifyChecksum( * @returns Returns `true` if signatures match, `false` if they don't. */ export async function verifySignature( - messageFilePath: string, - signatureFilePath: string, - publicKeyFilePath: string, + messageFilePath: string, + signatureFilePath: string, + publicKeyFilePath: string, ): Promise { - const messageText = await getFileContentsAsString(messageFilePath); - const signatureBuffer = await getFileContents(signatureFilePath); - const publicKeyText = await getFileContentsAsString(publicKeyFilePath); + const messageText = await getFileContentsAsString(messageFilePath); + const signatureBuffer = await getFileContents(signatureFilePath); + const publicKeyText = await getFileContentsAsString(publicKeyFilePath); - const publicKey = await readKey({ - armoredKey: publicKeyText, - }); + const publicKey = await readKey({ + armoredKey: publicKeyText, + }); - const signature = await readSignature({ - binarySignature: signatureBuffer, - }); - const message = await createMessage({ text: messageText }); - const verificationResult = await verify({ - message, - signature, - verificationKeys: publicKey, - }); - const { verified } = verificationResult.signatures[0]; - try { - await verified; - return true; - } catch { - return false; - } + const signature = await readSignature({ + binarySignature: signatureBuffer, + }); + const message = await createMessage({ text: messageText }); + const verificationResult = await verify({ + message, + signature, + verificationKeys: publicKey, + }); + const { verified } = verificationResult.signatures[0]; + try { + await verified; + return true; + } catch { + return false; + } } /** @@ -210,20 +215,20 @@ export async function verifySignature( * @returns */ export function parsePathAndFormat(coverageConfigLine: string): { - format: string; - pattern: string; + format: string; + pattern: string; } { - let lineParts = coverageConfigLine.split(':'); - // On Windows, if the glob received an absolute path, the path will - // include the Drive letter and the path – for example, `C:\Users\gp\projects\cc\*.lcov:lcov` - // which leads to 2 colons. So we handle this special case. - if ( - platform() === 'win32' && - (coverageConfigLine.match(/:/g) || []).length > 1 - ) { - lineParts = [lineParts.slice(0, -1).join(':'), lineParts.slice(-1)[0]]; - } - const format = lineParts.slice(-1)[0]; - const pattern = lineParts.slice(0, -1)[0]; - return { format, pattern }; + let lineParts = coverageConfigLine.split(':'); + // On Windows, if the glob received an absolute path, the path will + // include the Drive letter and the path – for example, `C:\Users\gp\projects\cc\*.lcov:lcov` + // which leads to 2 colons. So we handle this special case. + if ( + platform() === 'win32' && + (coverageConfigLine.match(/:/g) || []).length > 1 + ) { + lineParts = [lineParts.slice(0, -1).join(':'), lineParts.slice(-1)[0]]; + } + const format = lineParts.slice(-1)[0]; + const pattern = lineParts.slice(0, -1)[0]; + return { format, pattern }; } diff --git a/test/integration.test.ts b/test/integration.test.ts index cdd06f2e..9e5ac79d 100644 --- a/test/integration.test.ts +++ b/test/integration.test.ts @@ -1,56 +1,56 @@ -import t from 'tap'; import { unlinkSync } from 'node:fs'; import { EOL, arch, platform } from 'node:os'; import { default as hookStd } from 'hook-std'; +import t from 'tap'; import { - downloadAndRecord, - verifyChecksumAndSignature, - DOWNLOAD_URL, - EXECUTABLE, - FILE_ARTIFACTS, + DOWNLOAD_URL, + EXECUTABLE, + FILE_ARTIFACTS, + downloadAndRecord, + verifyChecksumAndSignature, } from '../src/main'; t.test( - '🧪 verifyChecksumAndSignature() should download the CC reporter and pass all validations (happy path).', - { - skip: - platform() === 'darwin' && arch() === 'arm64' - ? 'Skipping because the CC reporter is not available on macOS Apple Silicon!' - : undefined, - }, - async (t) => { - t.plan(1); - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); + '🧪 verifyChecksumAndSignature() should download the CC reporter and pass all validations (happy path).', + { + skip: + platform() === 'darwin' && arch() === 'arm64' + ? 'Skipping because the CC reporter is not available on macOS Apple Silicon!' + : undefined, + }, + async (t) => { + t.plan(1); + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); - try { - await downloadAndRecord(DOWNLOAD_URL, EXECUTABLE); - await verifyChecksumAndSignature(DOWNLOAD_URL, EXECUTABLE); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - for (const artifact of FILE_ARTIFACTS) { - try { - unlinkSync(artifact); - } catch {} - } - } + try { + await downloadAndRecord(DOWNLOAD_URL, EXECUTABLE); + await verifyChecksumAndSignature(DOWNLOAD_URL, EXECUTABLE); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + for (const artifact of FILE_ARTIFACTS) { + try { + unlinkSync(artifact); + } catch {} + } + } - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - ``, - ].join(EOL), - 'should download the reporter and correctly pass checksum and signature verification steps.', - ); - t.end(); - }, + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + '', + ].join(EOL), + 'should download the reporter and correctly pass checksum and signature verification steps.', + ); + t.end(); + }, ); diff --git a/test/main.test.ts b/test/main.test.ts index a6bec732..5b4afbd3 100644 --- a/test/main.test.ts +++ b/test/main.test.ts @@ -1,21 +1,21 @@ -import t from 'tap'; -import nock from 'nock'; -import toReadableStream from 'to-readable-stream'; -import { default as hookStd } from 'hook-std'; -import * as glob from '@actions/glob'; +import { + readFile, + realpath as realpathCallback, + unlinkSync, + writeFileSync, +} from 'node:fs'; +import { default as os, EOL, tmpdir } from 'node:os'; +import { join as joinPath } from 'node:path'; +import { promisify } from 'node:util'; import { context } from '@actions/github'; +import * as glob from '@actions/glob'; +import { default as hookStd } from 'hook-std'; +import nock from 'nock'; import sinon from 'sinon'; +import t from 'tap'; +import toReadableStream from 'to-readable-stream'; import which from 'which'; -import { default as os, tmpdir, EOL } from 'node:os'; -import { join as joinPath } from 'node:path'; -import { - writeFileSync, - unlinkSync, - readFile, - realpath as realpathCallback, -} from 'node:fs'; -import { promisify } from 'util'; -import { CODECLIMATE_GPG_PUBLIC_KEY_ID, run, prepareEnv } from '../src/main'; +import { CODECLIMATE_GPG_PUBLIC_KEY_ID, prepareEnv, run } from '../src/main'; import * as utils from '../src/utils'; /** @@ -35,1057 +35,1064 @@ const PLATFORM = os.platform(); const EXE_EXT = PLATFORM === 'win32' ? 'bat' : ('sh' as const); const DEFAULT_WORKDIR = process.cwd(); const EXE_PATH_PREFIX = - PLATFORM === 'win32' - ? 'C:\\Windows\\system32\\cmd.exe /D /S /C' - : ('' as const); + PLATFORM === 'win32' + ? 'C:\\Windows\\system32\\cmd.exe /D /S /C' + : ('' as const); // NOTE: We have to use `which` because although `echo` is in `/bin/echo` on most *nix systems, on rare occastions, it is in `/usr/bin/echo`. const ECHO_CMD = - PLATFORM === 'win32' ? `${EXE_PATH_PREFIX} echo` : which.sync('echo'); + PLATFORM === 'win32' ? `${EXE_PATH_PREFIX} echo` : which.sync('echo'); const sandbox = sinon.createSandbox(); t.test('🛠 setup', (t) => { - t.plan(0); - nock.disableNetConnect(); - if (!nock.isActive()) nock.activate(); - t.end(); + t.plan(0); + nock.disableNetConnect(); + if (!nock.isActive()) nock.activate(); + t.end(); }); t.test( - '🧪 prepareEnv() should return envs as-is in the absence of any GitHub-related variables.', - (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const expected = { - HOME: '/home', - USER: 'gp', - PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', - }; - sandbox.stub(process, 'env').value(expected); - const output = prepareEnv(); - t.strictSame(output, expected, 'should return envs as-is'); - }, + '🧪 prepareEnv() should return envs as-is in the absence of any GitHub-related variables.', + (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const expected = { + HOME: '/home', + USER: 'gp', + PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', + }; + sandbox.stub(process, 'env').value(expected); + const output = prepareEnv(); + t.strictSame(output, expected, 'should return envs as-is'); + }, ); t.test( - '🧪 prepareEnv() should return Git branch correctly when those GitHub-related variables are available.', - (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const mockEnv = { - HOME: '/home', - USER: 'gp', - PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', - GIT_BRANCH: 'refs/heads/main', - }; - sandbox.stub(process, 'env').value(mockEnv); - const expected = { - ...mockEnv, - GIT_BRANCH: 'main', - }; - const output = prepareEnv(); - t.strictSame( - output, - expected, - 'should return correctly updated additional environment variables', - ); - }, + '🧪 prepareEnv() should return Git branch correctly when those GitHub-related variables are available.', + (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const mockEnv = { + HOME: '/home', + USER: 'gp', + PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', + GIT_BRANCH: 'refs/heads/main', + }; + sandbox.stub(process, 'env').value(mockEnv); + const expected = { + ...mockEnv, + GIT_BRANCH: 'main', + }; + const output = prepareEnv(); + t.strictSame( + output, + expected, + 'should return correctly updated additional environment variables', + ); + }, ); t.test( - '🧪 prepareEnv() should return Git commit SHA and branch correctly when those GitHub-related variables are available.', - (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const mockEnv = { - HOME: '/home', - USER: 'gp', - PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', - GITHUB_SHA: '89cac89532a27123c44a8fd77c9f8f2ea5c02528', - GITHUB_REF: 'main', - }; - sandbox.stub(process, 'env').value(mockEnv); - const expected = { - ...mockEnv, - GIT_COMMIT_SHA: '89cac89532a27123c44a8fd77c9f8f2ea5c02528', - GIT_BRANCH: 'main', - }; - const output = prepareEnv(); - t.strictSame( - output, - expected, - 'should return correctly updated additional environment variables', - ); - }, + '🧪 prepareEnv() should return Git commit SHA and branch correctly when those GitHub-related variables are available.', + (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const mockEnv = { + HOME: '/home', + USER: 'gp', + PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', + GITHUB_SHA: '89cac89532a27123c44a8fd77c9f8f2ea5c02528', + GITHUB_REF: 'main', + }; + sandbox.stub(process, 'env').value(mockEnv); + const expected = { + ...mockEnv, + GIT_COMMIT_SHA: '89cac89532a27123c44a8fd77c9f8f2ea5c02528', + GIT_BRANCH: 'main', + }; + const output = prepareEnv(); + t.strictSame( + output, + expected, + 'should return correctly updated additional environment variables', + ); + }, ); t.test( - '🧪 prepareEnv() should return Git commit SHA and branch correctly when the relevant GitHub event context is available.', - (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const mockEnv = { - HOME: '/home', - USER: 'gp', - PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', - GITHUB_EVENT_NAME: 'pull_request', - GITHUB_HEAD_REF: 'main', - }; - const mockCommitSHA = '89cac89532a27123c44a8fd77c9f8f2ea5c02528'; - - sandbox.stub(process, 'env').value(mockEnv); - sandbox - .stub(context, 'payload') - .value({ pull_request: { head: { sha: mockCommitSHA } } }); - - const expected = { - ...mockEnv, - GIT_COMMIT_SHA: mockCommitSHA, - GIT_BRANCH: 'main', - }; - - const output = prepareEnv(); - t.strictSame( - output, - expected, - 'should return correctly updated additional environment variables', - ); - }, + '🧪 prepareEnv() should return Git commit SHA and branch correctly when the relevant GitHub event context is available.', + (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const mockEnv = { + HOME: '/home', + USER: 'gp', + PATH: '/usr/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin', + GITHUB_EVENT_NAME: 'pull_request', + GITHUB_HEAD_REF: 'main', + }; + const mockCommitSHA = '89cac89532a27123c44a8fd77c9f8f2ea5c02528'; + + sandbox.stub(process, 'env').value(mockEnv); + sandbox + .stub(context, 'payload') + .value({ pull_request: { head: { sha: mockCommitSHA } } }); + + const expected = { + ...mockEnv, + GIT_COMMIT_SHA: mockCommitSHA, + GIT_BRANCH: 'main', + }; + + const output = prepareEnv(); + t.strictSame( + output, + expected, + 'should return correctly updated additional environment variables', + ); + }, ); t.test('🧪 run() should run the CC reporter (happy path).', async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - // We now allow `verifyChecksum()` to return `true` as well - // because a) we don't want to bother crafting checksums for - // fixtures and b) checksums differ across platforms and they - // are a pain to create and get to work correctly. - sandbox.stub(utils, 'verifyChecksum').resolves(true); - // We always allow `verifySignature()` to return `true` - // because we don't have access to the private key (obviously) - // and so cannot create correct signatures for fixtures anyways. - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - nock.cleanAll(); - } - - const expected = [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `[command]${ECHO_CMD} 'coverage ok'`, - `'coverage ok'`, - `::debug::✅ Coverage run completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, - `after-build --exit-code 0`, - `::debug::✅ CC Reporter after-build checkin completed!`, - ``, - ].join(EOL); - t.equal( - JSON.stringify(capturedOutput), - JSON.stringify(expected), - 'should execute all steps in happy path.', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + // We now allow `verifyChecksum()` to return `true` as well + // because a) we don't want to bother crafting checksums for + // fixtures and b) checksums differ across platforms and they + // are a pain to create and get to work correctly. + sandbox.stub(utils, 'verifyChecksum').resolves(true); + // We always allow `verifySignature()` to return `true` + // because we don't have access to the private key (obviously) + // and so cannot create correct signatures for fixtures anyways. + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + nock.cleanAll(); + } + + const expected = [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + `[command]${ECHO_CMD} 'coverage ok'`, + `'coverage ok'`, + '::debug::✅ Coverage run completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, + 'after-build --exit-code 0', + '::debug::✅ CC Reporter after-build checkin completed!', + '', + ].join(EOL); + t.equal( + JSON.stringify(capturedOutput), + JSON.stringify(expected), + 'should execute all steps in happy path.', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); }); t.test( - '🧪 run() should run the CC reporter without verification if configured.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - undefined, - undefined, - undefined, - undefined, - 'false', - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `[command]${ECHO_CMD} 'coverage ok'`, - `'coverage ok'`, - `::debug::✅ Coverage run completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, - `after-build --exit-code 0`, - `::debug::✅ CC Reporter after-build checkin completed!`, - ``, - ].join(EOL), - 'should execute all steps (except verification).', - ); - unlinkSync(filePath); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should run the CC reporter without verification if configured.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + undefined, + undefined, + undefined, + undefined, + 'false', + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + `[command]${ECHO_CMD} 'coverage ok'`, + `'coverage ok'`, + '::debug::✅ Coverage run completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, + 'after-build --exit-code 0', + '::debug::✅ CC Reporter after-build checkin completed!', + '', + ].join(EOL), + 'should execute all steps (except verification).', + ); + unlinkSync(filePath); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 run() should run the CC reporter without a coverage command.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run('http://localhost.test/dummy-cc-reporter', filePath, ''); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `ℹ️ 'coverageCommand' not set, so skipping building coverage report!`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, - `after-build --exit-code 0`, - `::debug::✅ CC Reporter after-build checkin completed!`, - ``, - ].join(EOL), - 'should execute all steps (except running the coverage command).', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should run the CC reporter without a coverage command.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run('http://localhost.test/dummy-cc-reporter', filePath, ''); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + `ℹ️ 'coverageCommand' not set, so skipping building coverage report!`, + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, + 'after-build --exit-code 0', + '::debug::✅ CC Reporter after-build checkin completed!', + '', + ].join(EOL), + 'should execute all steps (except running the coverage command).', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); + }, ); t.test('🧪 run() should convert patterns to locations.', async (t) => { - t.plan(3); - t.teardown(() => sandbox.restore()); - const globSpy = sandbox - .stub() - .resolves([ - joinPath(DEFAULT_WORKDIR, './file-a.lcov'), - joinPath(DEFAULT_WORKDIR, './file-b.lcov'), - ]); - sandbox.stub(glob, 'create').resolves({ - glob: globSpy, - getSearchPaths: sandbox.spy(), - globGenerator: sandbox.spy(), - }); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - const filePattern = - PLATFORM === 'win32' - ? `${DEFAULT_WORKDIR}\\*.lcov:lcov` - : `${DEFAULT_WORKDIR}/*.lcov:lcov`; - const fileA = 'file-a.lcov' as const; - const fileB = 'file-b.lcov' as const; - - writeFileSync(fileA, 'file a content'); - writeFileSync(fileB, 'file b content'); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - '', - '', - 'false', - filePattern, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - nock.cleanAll(); - } - - t.equal( - (glob.create as unknown as sinon.SinonSpy).firstCall.firstArg, - PLATFORM === 'win32' - ? `${DEFAULT_WORKDIR}\\*.lcov` - : `${DEFAULT_WORKDIR}/*.lcov`, - 'should create a globber with given pattern.', - ); - t.ok( - globSpy.calledOnceWithExactly(), - 'should get the paths of the files from the newly created globber instance.', - ); - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `ℹ️ 'coverageCommand' not set, so skipping building coverage report!`, - PLATFORM === 'win32' - ? `::debug::Parsing 2 coverage location(s) — ${DEFAULT_WORKDIR}\\file-a.lcov:lcov,${DEFAULT_WORKDIR}\\file-b.lcov:lcov (object)` - : `::debug::Parsing 2 coverage location(s) — ${DEFAULT_WORKDIR}/file-a.lcov:lcov,${DEFAULT_WORKDIR}/file-b.lcov:lcov (object)`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}\\file-a.lcov -t lcov -o codeclimate.0.json"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}/file-a.lcov -t lcov -o codeclimate.0.json`, - PLATFORM === 'win32' - ? `format-coverage ${DEFAULT_WORKDIR}\\file-a.lcov -t lcov -o codeclimate.0.json` - : `format-coverage ${DEFAULT_WORKDIR}/file-a.lcov -t lcov -o codeclimate.0.json`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}\\file-b.lcov -t lcov -o codeclimate.1.json"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}/file-b.lcov -t lcov -o codeclimate.1.json`, - PLATFORM === 'win32' - ? `format-coverage ${DEFAULT_WORKDIR}\\file-b.lcov -t lcov -o codeclimate.1.json` - : `format-coverage ${DEFAULT_WORKDIR}/file-b.lcov -t lcov -o codeclimate.1.json`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json`, - `sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} upload-coverage -i coverage.total.json"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} upload-coverage -i coverage.total.json`, - `upload-coverage -i coverage.total.json`, - `::debug::✅ CC Reporter upload coverage completed!`, - ``, - ].join(EOL), - 'should execute all steps (including uploading globbed coverage files).', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - unlinkSync(fileA); - unlinkSync(fileB); - nock.cleanAll(); - t.end(); + t.plan(3); + t.teardown(() => sandbox.restore()); + const globSpy = sandbox + .stub() + .resolves([ + joinPath(DEFAULT_WORKDIR, './file-a.lcov'), + joinPath(DEFAULT_WORKDIR, './file-b.lcov'), + ]); + sandbox.stub(glob, 'create').resolves({ + glob: globSpy, + getSearchPaths: sandbox.spy(), + globGenerator: sandbox.spy(), + }); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + const filePattern = + PLATFORM === 'win32' + ? `${DEFAULT_WORKDIR}\\*.lcov:lcov` + : `${DEFAULT_WORKDIR}/*.lcov:lcov`; + const fileA = 'file-a.lcov' as const; + const fileB = 'file-b.lcov' as const; + + writeFileSync(fileA, 'file a content'); + writeFileSync(fileB, 'file b content'); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + '', + '', + 'false', + filePattern, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + nock.cleanAll(); + } + + t.equal( + (glob.create as unknown as sinon.SinonSpy).firstCall.firstArg, + PLATFORM === 'win32' + ? `${DEFAULT_WORKDIR}\\*.lcov` + : `${DEFAULT_WORKDIR}/*.lcov`, + 'should create a globber with given pattern.', + ); + t.ok( + globSpy.calledOnceWithExactly(), + 'should get the paths of the files from the newly created globber instance.', + ); + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + `ℹ️ 'coverageCommand' not set, so skipping building coverage report!`, + PLATFORM === 'win32' + ? `::debug::Parsing 2 coverage location(s) — ${DEFAULT_WORKDIR}\\file-a.lcov:lcov,${DEFAULT_WORKDIR}\\file-b.lcov:lcov (object)` + : `::debug::Parsing 2 coverage location(s) — ${DEFAULT_WORKDIR}/file-a.lcov:lcov,${DEFAULT_WORKDIR}/file-b.lcov:lcov (object)`, + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}\\file-a.lcov -t lcov -o codeclimate.0.json"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}/file-a.lcov -t lcov -o codeclimate.0.json`, + PLATFORM === 'win32' + ? `format-coverage ${DEFAULT_WORKDIR}\\file-a.lcov -t lcov -o codeclimate.0.json` + : `format-coverage ${DEFAULT_WORKDIR}/file-a.lcov -t lcov -o codeclimate.0.json`, + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}\\file-b.lcov -t lcov -o codeclimate.1.json"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} format-coverage ${DEFAULT_WORKDIR}/file-b.lcov -t lcov -o codeclimate.1.json`, + PLATFORM === 'win32' + ? `format-coverage ${DEFAULT_WORKDIR}\\file-b.lcov -t lcov -o codeclimate.1.json` + : `format-coverage ${DEFAULT_WORKDIR}/file-b.lcov -t lcov -o codeclimate.1.json`, + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json`, + 'sum-coverage codeclimate.0.json codeclimate.1.json -p 2 -o coverage.total.json', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} upload-coverage -i coverage.total.json"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} upload-coverage -i coverage.total.json`, + 'upload-coverage -i coverage.total.json', + '::debug::✅ CC Reporter upload coverage completed!', + '', + ].join(EOL), + 'should execute all steps (including uploading globbed coverage files).', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + unlinkSync(fileA); + unlinkSync(fileB); + nock.cleanAll(); + t.end(); }); t.test( - '🧪 run() should correctly switch the working directory if given.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = joinPath( - __dirname, - `./fixtures/dummy-cc-reporter.${EXE_EXT}`, - ); - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = joinPath( - __dirname, - `./fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`, - ); - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = joinPath( - __dirname, - `./fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`, - ); - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = joinPath( - __dirname, - `./fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`, - ); - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - const CUSTOM_WORKDIR = await realpath(tmpdir()); - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - CUSTOM_WORKDIR, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - t.fail(err); - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::Changing working directory to ${CUSTOM_WORKDIR}`, - `::debug::✅ Changing working directory completed...`, - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} ""${CUSTOM_WORKDIR}\\test.${EXE_EXT}" before-build"` - : `[command]${CUSTOM_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `[command]${ECHO_CMD} 'coverage ok'`, - `'coverage ok'`, - `::debug::✅ Coverage run completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} ""${CUSTOM_WORKDIR}\\test.${EXE_EXT}" after-build --exit-code 0"` - : `[command]${CUSTOM_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, - `after-build --exit-code 0`, - `::debug::✅ CC Reporter after-build checkin completed!`, - ``, - ].join(EOL), - 'should execute all steps when custom working directory is given.', - ); - unlinkSync(filePath); - nock.cleanAll(); - process.chdir(DEFAULT_WORKDIR); - t.end(); - }, + '🧪 run() should correctly switch the working directory if given.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = joinPath( + __dirname, + `./fixtures/dummy-cc-reporter.${EXE_EXT}`, + ); + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = joinPath( + __dirname, + `./fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`, + ); + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = joinPath( + __dirname, + `./fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`, + ); + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = joinPath( + __dirname, + './fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc', + ); + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + const CUSTOM_WORKDIR = await realpath(tmpdir()); + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + CUSTOM_WORKDIR, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + t.fail(err); + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + `::debug::Changing working directory to ${CUSTOM_WORKDIR}`, + '::debug::✅ Changing working directory completed...', + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} ""${CUSTOM_WORKDIR}\\test.${EXE_EXT}" before-build"` + : `[command]${CUSTOM_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + `[command]${ECHO_CMD} 'coverage ok'`, + `'coverage ok'`, + '::debug::✅ Coverage run completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} ""${CUSTOM_WORKDIR}\\test.${EXE_EXT}" after-build --exit-code 0"` + : `[command]${CUSTOM_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, + 'after-build --exit-code 0', + '::debug::✅ CC Reporter after-build checkin completed!', + '', + ].join(EOL), + 'should execute all steps when custom working directory is given.', + ); + unlinkSync(filePath); + nock.cleanAll(); + process.chdir(DEFAULT_WORKDIR); + t.end(); + }, ); t.test( - '🧪 run() should throw an error if the checksum verification fails.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get(`/dummy-cc-reporter.sha256`) - .reply(200, () => { - const dummyChecksum = 'lolno'; - return toReadableStream(dummyChecksum); - }); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - ); - t.fail('should have thrown an error'); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - // do nothing else, we expect this run command to fail. - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::error::CC Reporter checksum does not match!`, - `::error::🚨 CC Reporter checksum verfication failed!`, - ``, - ].join(EOL), - 'should correctly throw the error if the checksum verification fails.', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should throw an error if the checksum verification fails.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, () => { + const dummyChecksum = 'lolno'; + return toReadableStream(dummyChecksum); + }); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + ); + t.fail('should have thrown an error'); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + // do nothing else, we expect this run command to fail. + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::error::CC Reporter checksum does not match!', + '::error::🚨 CC Reporter checksum verfication failed!', + '', + ].join(EOL), + 'should correctly throw the error if the checksum verification fails.', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 run() should throw an error if the GPG signature verification fails.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(false); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `echo 'coverage ok'`, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - // do nothing else, we expect this run command to fail. - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::error::CC Reporter GPG signature is invalid!`, - `::error::🚨 CC Reporter GPG signature verfication failed!`, - ``, - ].join(EOL), - 'should correctly throw the error if the GPG signature verification fails.', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should throw an error if the GPG signature verification fails.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(false); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `echo 'coverage ok'`, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + // do nothing else, we expect this run command to fail. + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::error::CC Reporter GPG signature is invalid!', + '::error::🚨 CC Reporter GPG signature verfication failed!', + '', + ].join(EOL), + 'should correctly throw the error if the GPG signature verification fails.', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 run() should throw an error if the before-build step throws an error.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - // do nothing else, we expect this run command to fail. - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - PLATFORM === 'win32' - ? `::error::The process '${DEFAULT_WORKDIR}\\test.${EXE_EXT}' failed with exit code 69` - : `::error::The process '${DEFAULT_WORKDIR}/test.${EXE_EXT}' failed with exit code 69`, - `::error::🚨 CC Reporter before-build checkin failed!`, - ``, - ].join(EOL), - 'should correctly throw the error if the before-build step throws an error.', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should throw an error if the before-build step throws an error.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter-before-build-error.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + // do nothing else, we expect this run command to fail. + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + PLATFORM === 'win32' + ? `::error::The process '${DEFAULT_WORKDIR}\\test.${EXE_EXT}' failed with exit code 69` + : `::error::The process '${DEFAULT_WORKDIR}/test.${EXE_EXT}' failed with exit code 69`, + '::error::🚨 CC Reporter before-build checkin failed!', + '', + ].join(EOL), + 'should correctly throw the error if the before-build step throws an error.', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 run() should throw an error if the after-build step throws an error.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-after-build-error.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter-after-build-error.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - `${ECHO_CMD} 'coverage ok'`, - ); - stdHook.unhook(); - } catch (err) { - stdHook.unhook(); - // do nothing else, we expect this run command to fail. - } finally { - nock.cleanAll(); - } - - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - `[command]${ECHO_CMD} 'coverage ok'`, - `'coverage ok'`, - `::debug::✅ Coverage run completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, - PLATFORM === 'win32' - ? `::error::The process '${DEFAULT_WORKDIR}\\test.${EXE_EXT}' failed with exit code 69` - : `::error::The process '${DEFAULT_WORKDIR}/test.${EXE_EXT}' failed with exit code 69`, - `::error::🚨 CC Reporter after-build checkin failed!`, - ``, - ].join(EOL), - 'should correctly throw the error if the after-build step throws an error.', - ); - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); - }, + '🧪 run() should throw an error if the after-build step throws an error.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter-after-build-error.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter-after-build-error.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + `${ECHO_CMD} 'coverage ok'`, + ); + stdHook.unhook(); + } catch (err) { + stdHook.unhook(); + // do nothing else, we expect this run command to fail. + } finally { + nock.cleanAll(); + } + + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + '::debug::✅ CC Reporter before-build checkin completed...', + `[command]${ECHO_CMD} 'coverage ok'`, + `'coverage ok'`, + '::debug::✅ Coverage run completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} after-build --exit-code 0"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} after-build --exit-code 0`, + PLATFORM === 'win32' + ? `::error::The process '${DEFAULT_WORKDIR}\\test.${EXE_EXT}' failed with exit code 69` + : `::error::The process '${DEFAULT_WORKDIR}/test.${EXE_EXT}' failed with exit code 69`, + '::error::🚨 CC Reporter after-build checkin failed!', + '', + ].join(EOL), + 'should correctly throw the error if the after-build step throws an error.', + ); + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 run() should exit cleanly when the coverage command fails.', - async (t) => { - t.plan(1); - t.teardown(() => sandbox.restore()); - const COVERAGE_COMMAND = 'wololololo'; // Random command that doesn't exist (and so should fail). - const filePath = `./test.${EXE_EXT}`; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, async () => { - const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; - const dummyReporter = await readFileAsync(dummyReporterFile); - return toReadableStream(dummyReporter); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256') - .reply(200, async () => { - const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; - const checksum = await readFileAsync(checksumFile); - return toReadableStream(checksum); - }); - - nock('http://localhost.test') - .get('/dummy-cc-reporter.sha256.sig') - .reply(200, async () => { - const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; - const signature = await readFileAsync(signatureFile); - return toReadableStream(signature); - }); - - nock('https://keys.openpgp.org') - .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) - .reply(200, async () => { - const publicKeyFile = `./test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc`; - const publicKey = await readFileAsync(publicKeyFile); - return toReadableStream(publicKey); - }); - - sandbox.stub(utils, 'verifyChecksum').resolves(true); - sandbox.stub(utils, 'verifySignature').resolves(true); - - let capturedOutput = ''; - const stdHook = hookStd((text: string) => { - capturedOutput += text; - }); - - try { - await run( - 'http://localhost.test/dummy-cc-reporter', - filePath, - COVERAGE_COMMAND, - ); - stdHook.unhook(); - t.fail('Should throw an error.'); - } catch (err) { - stdHook.unhook(); - t.equal( - capturedOutput, - [ - `::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...`, - `::debug::✅ CC Reporter downloaded...`, - `::debug::ℹ️ Verifying CC Reporter checksum...`, - `::debug::✅ CC Reported checksum verification completed...`, - `::debug::ℹ️ Verifying CC Reporter GPG signature...`, - `::debug::✅ CC Reported GPG signature verification completed...`, - PLATFORM === 'win32' - ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` - : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, - `before-build`, - `::debug::✅ CC Reporter before-build checkin completed...`, - PLATFORM === 'win32' - ? `::error::Unable to locate executable file: ${COVERAGE_COMMAND}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.` - : `::error::Unable to locate executable file: ${COVERAGE_COMMAND}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`, - `::error::🚨 Coverage run failed!`, - ``, - ].join(EOL), - 'should fail correctly on wrong/invalid coverage command.', - ); - } finally { - unlinkSync(filePath); - unlinkSync(`${filePath}.sha256`); - unlinkSync(`${filePath}.sha256.sig`); - unlinkSync('public-key.asc'); - nock.cleanAll(); - t.end(); - } - }, + '🧪 run() should exit cleanly when the coverage command fails.', + async (t) => { + t.plan(1); + t.teardown(() => sandbox.restore()); + const COVERAGE_COMMAND = 'wololololo'; // Random command that doesn't exist (and so should fail). + const filePath = `./test.${EXE_EXT}`; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, async () => { + const dummyReporterFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}`; + const dummyReporter = await readFileAsync(dummyReporterFile); + return toReadableStream(dummyReporter); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256') + .reply(200, async () => { + const checksumFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256`; + const checksum = await readFileAsync(checksumFile); + return toReadableStream(checksum); + }); + + nock('http://localhost.test') + .get('/dummy-cc-reporter.sha256.sig') + .reply(200, async () => { + const signatureFile = `./test/fixtures/dummy-cc-reporter.${EXE_EXT}.sha256.sig`; + const signature = await readFileAsync(signatureFile); + return toReadableStream(signature); + }); + + nock('https://keys.openpgp.org') + .get(`/vks/v1/by-fingerprint/${CODECLIMATE_GPG_PUBLIC_KEY_ID}`) + .reply(200, async () => { + const publicKeyFile = + './test/fixtures/9BD9E2DD46DA965A537E5B0A5CBF320243B6FD85.asc'; + const publicKey = await readFileAsync(publicKeyFile); + return toReadableStream(publicKey); + }); + + sandbox.stub(utils, 'verifyChecksum').resolves(true); + sandbox.stub(utils, 'verifySignature').resolves(true); + + let capturedOutput = ''; + const stdHook = hookStd((text: string) => { + capturedOutput += text; + }); + + try { + await run( + 'http://localhost.test/dummy-cc-reporter', + filePath, + COVERAGE_COMMAND, + ); + stdHook.unhook(); + t.fail('Should throw an error.'); + } catch (err) { + stdHook.unhook(); + t.equal( + capturedOutput, + [ + '::debug::ℹ️ Downloading CC Reporter from http://localhost.test/dummy-cc-reporter ...', + '::debug::✅ CC Reporter downloaded...', + '::debug::ℹ️ Verifying CC Reporter checksum...', + '::debug::✅ CC Reported checksum verification completed...', + '::debug::ℹ️ Verifying CC Reporter GPG signature...', + '::debug::✅ CC Reported GPG signature verification completed...', + PLATFORM === 'win32' + ? `[command]${EXE_PATH_PREFIX} "${DEFAULT_WORKDIR}\\test.${EXE_EXT} before-build"` + : `[command]${DEFAULT_WORKDIR}/test.${EXE_EXT} before-build`, + 'before-build', + '::debug::✅ CC Reporter before-build checkin completed...', + PLATFORM === 'win32' + ? `::error::Unable to locate executable file: ${COVERAGE_COMMAND}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.` + : `::error::Unable to locate executable file: ${COVERAGE_COMMAND}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`, + '::error::🚨 Coverage run failed!', + '', + ].join(EOL), + 'should fail correctly on wrong/invalid coverage command.', + ); + } finally { + unlinkSync(filePath); + unlinkSync(`${filePath}.sha256`); + unlinkSync(`${filePath}.sha256.sig`); + unlinkSync('public-key.asc'); + nock.cleanAll(); + t.end(); + } + }, ); t.test('💣 teardown', (t) => { - nock.restore(); - nock.cleanAll(); - nock.enableNetConnect(); - sandbox.restore(); - if (process.exitCode === 1) process.exitCode = 0; // This is required because @actions/core `setFailed` sets the exit code to 0 when we're testing errors. - t.end(); + nock.restore(); + nock.cleanAll(); + nock.enableNetConnect(); + sandbox.restore(); + if (process.exitCode === 1) process.exitCode = 0; // This is required because @actions/core `setFailed` sets the exit code to 0 when we're testing errors. + t.end(); }); diff --git a/test/utils.test.ts b/test/utils.test.ts index 782384b1..13ed24c5 100644 --- a/test/utils.test.ts +++ b/test/utils.test.ts @@ -1,150 +1,150 @@ -import t from 'tap'; -import nock from 'nock'; -import toReadableStream from 'to-readable-stream'; import { stat as statCallback, unlinkSync } from 'node:fs'; import { platform } from 'node:os'; import { promisify } from 'node:util'; +import nock from 'nock'; +import t from 'tap'; +import toReadableStream from 'to-readable-stream'; import { - areObjectsEqual, - downloadToFile, - parsePathAndFormat, + areObjectsEqual, + downloadToFile, + parsePathAndFormat, } from '../src/utils'; const stat = promisify(statCallback); t.test('🛠 setup', (t) => { - nock.disableNetConnect(); - if (!nock.isActive()) nock.activate(); - t.end(); + nock.disableNetConnect(); + if (!nock.isActive()) nock.activate(); + t.end(); }); t.test('🧪 areObjectsEqual() should correctly check object equality', (t) => { - t.plan(1); - const obj1 = { - a: 1, - b: true, - c: null, - d: undefined, - 45: -45.223232323, - }; - t.ok( - areObjectsEqual(obj1, { ...obj1 }), - 'objects should be compared correctly.', - ); - t.end(); + t.plan(1); + const obj1 = { + a: 1, + b: true, + c: null, + d: undefined, + 45: -45.223232323, + }; + t.ok( + areObjectsEqual(obj1, { ...obj1 }), + 'objects should be compared correctly.', + ); + t.end(); }); t.test( - '🧪 downloadToFile() should download the give URL and write to given file location with given mode.', - async (t) => { - t.plan(1); - const filePath = './test.sh'; - nock('http://localhost.test') - .get('/dummy-cc-reporter') - .reply(200, () => { - return toReadableStream(`#!/bin/bash + '🧪 downloadToFile() should download the give URL and write to given file location with given mode.', + async (t) => { + t.plan(1); + const filePath = './test.sh'; + nock('http://localhost.test') + .get('/dummy-cc-reporter') + .reply(200, () => { + return toReadableStream(`#!/bin/bash echo "hello" `); - }); - await downloadToFile( - 'http://localhost.test/dummy-cc-reporter', - filePath, - 0o777, - ); - const stats = await stat(filePath); - t.equal( - stats.mode, - platform() === 'win32' ? 33206 : 33261, - 'downloaded file should exist and have executable permissions on valid platforms.', - ); - unlinkSync(filePath); - nock.cleanAll(); - t.end(); - }, + }); + await downloadToFile( + 'http://localhost.test/dummy-cc-reporter', + filePath, + 0o777, + ); + const stats = await stat(filePath); + t.equal( + stats.mode, + platform() === 'win32' ? 33206 : 33261, + 'downloaded file should exist and have executable permissions on valid platforms.', + ); + unlinkSync(filePath); + nock.cleanAll(); + t.end(); + }, ); t.test( - '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on Windows.', - { - skip: - platform() !== 'win32' - ? `Skipping because this test is only for Windows, but the current OS is ${platform()}` - : undefined, - }, - async (t) => { - t.plan(1); - const fixture = - 'C:\\Users\\gp\\Projects\\codeclimate-action\\test\\*.lcov:lcov' as const; - const expected = { - format: 'lcov', - pattern: 'C:\\Users\\gp\\Projects\\codeclimate-action\\test\\*.lcov', - }; - const result = parsePathAndFormat(fixture); - t.strictSame( - result, - expected, - 'path patterns and formats should be correctly parsed on Windows', - ); - t.end(); - }, + '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on Windows.', + { + skip: + platform() !== 'win32' + ? `Skipping because this test is only for Windows, but the current OS is ${platform()}` + : undefined, + }, + async (t) => { + t.plan(1); + const fixture = + 'C:\\Users\\gp\\Projects\\codeclimate-action\\test\\*.lcov:lcov' as const; + const expected = { + format: 'lcov', + pattern: 'C:\\Users\\gp\\Projects\\codeclimate-action\\test\\*.lcov', + }; + const result = parsePathAndFormat(fixture); + t.strictSame( + result, + expected, + 'path patterns and formats should be correctly parsed on Windows', + ); + t.end(); + }, ); t.test( - '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on macOS.', - { - skip: - platform() !== 'darwin' - ? `Skipping because this test is only for macOS, but the current OS is ${platform()}` - : undefined, - }, - async (t) => { - t.plan(1); - const fixture = - '/Users/gp/Projects/codeclimate-action/test/*.lcov:lcov' as const; - const expected = { - format: 'lcov', - pattern: '/Users/gp/Projects/codeclimate-action/test/*.lcov', - }; - const result = parsePathAndFormat(fixture); - t.strictSame( - result, - expected, - 'path patterns and formats should be correctly parsed on macOS', - ); - t.end(); - }, + '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on macOS.', + { + skip: + platform() !== 'darwin' + ? `Skipping because this test is only for macOS, but the current OS is ${platform()}` + : undefined, + }, + async (t) => { + t.plan(1); + const fixture = + '/Users/gp/Projects/codeclimate-action/test/*.lcov:lcov' as const; + const expected = { + format: 'lcov', + pattern: '/Users/gp/Projects/codeclimate-action/test/*.lcov', + }; + const result = parsePathAndFormat(fixture); + t.strictSame( + result, + expected, + 'path patterns and formats should be correctly parsed on macOS', + ); + t.end(); + }, ); t.test( - '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on Linux.', - { - skip: - platform() !== 'linux' - ? `Skipping because this test is only for Linux, but the current OS is ${platform()}` - : undefined, - }, - async (t) => { - t.plan(1); - const fixture = - '/Users/gp/Projects/codeclimate-action/test/*.lcov:lcov' as const; - const expected = { - format: 'lcov', - pattern: '/Users/gp/Projects/codeclimate-action/test/*.lcov', - }; - const result = parsePathAndFormat(fixture); - t.strictSame( - result, - expected, - 'path patterns and formats should be correctly parsed on Linux', - ); - t.end(); - }, + '🧪 parsePathAndFormat() should correctly parse path patterns and formats correctly on Linux.', + { + skip: + platform() !== 'linux' + ? `Skipping because this test is only for Linux, but the current OS is ${platform()}` + : undefined, + }, + async (t) => { + t.plan(1); + const fixture = + '/home/gp/Projects/codeclimate-action/test/*.lcov:lcov' as const; + const expected = { + format: 'lcov', + pattern: '/home/gp/Projects/codeclimate-action/test/*.lcov', + }; + const result = parsePathAndFormat(fixture); + t.strictSame( + result, + expected, + 'path patterns and formats should be correctly parsed on Linux', + ); + t.end(); + }, ); t.test('💣 teardown', (t) => { - nock.restore(); - nock.cleanAll(); - nock.enableNetConnect(); - if (process.exitCode === 1) process.exitCode = 0; // This is required because @actions/core `setFailed` sets the exit code to 0 when we're testing errors. - t.end(); + nock.restore(); + nock.cleanAll(); + nock.enableNetConnect(); + if (process.exitCode === 1) process.exitCode = 0; // This is required because @actions/core `setFailed` sets the exit code to 1 when we're testing errors. + t.end(); }); From e898a29d5f6bb569da7a93686d4974f59f33d4a9 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:16:54 +0530 Subject: [PATCH 03/11] chore: allow less strict package manager versioning --- .npmrc | 1 + 1 file changed, 1 insertion(+) diff --git a/.npmrc b/.npmrc index 9c5439cc..62e763a1 100644 --- a/.npmrc +++ b/.npmrc @@ -1,3 +1,4 @@ registry = "https://registry.npmjs.org/" save-exact = true fund = false +package-manager-strict = false From 3716a83cfa8aaea400a74e43401dba839a569fd9 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:17:18 +0530 Subject: [PATCH 04/11] chore: remove legacy/unused stuff --- .nycrc.json | 18 ------------------ .prettierrc.json | 3 --- 2 files changed, 21 deletions(-) delete mode 100644 .nycrc.json delete mode 100644 .prettierrc.json diff --git a/.nycrc.json b/.nycrc.json deleted file mode 100644 index 0a56403d..00000000 --- a/.nycrc.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "extension": [ - ".ts" - ], - "require": [ - "ts-node/register/transpile-only" - ], - "exclude": [ - "**/*.d.ts", - "coverage/", - "test/" - ], - "reporter": [ - "text", - "lcov" - ], - "cache": false -} \ No newline at end of file diff --git a/.prettierrc.json b/.prettierrc.json deleted file mode 100644 index dc2fb828..00000000 --- a/.prettierrc.json +++ /dev/null @@ -1,3 +0,0 @@ -{ - "singleQuote": true -} \ No newline at end of file From deb4d89c1a6017e19bb7b12caab4a6eeaa538551 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:17:36 +0530 Subject: [PATCH 05/11] chore: remove semantic-release crap --- .releaserc.json | 53 ------------------------------------------------- 1 file changed, 53 deletions(-) delete mode 100644 .releaserc.json diff --git a/.releaserc.json b/.releaserc.json deleted file mode 100644 index 760dbfce..00000000 --- a/.releaserc.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "branches": [ - "main" - ], - "plugins": [ - "@semantic-release/commit-analyzer", - "semantic-release-export-data", - [ - "semantic-release-replace-plugin", - { - "replacements": [ - { - "files": [ - "README.md" - ], - "from": "paambaati/codeclimate-action@v.*", - "to": "paambaati/codeclimate-action@v${nextRelease.version}", - "results": [ - { - "file": "README.md", - "hasChanged": true, - "numMatches": 5, - "numReplacements": 5 - } - ], - "countMatches": true - } - ] - } - ], - "@semantic-release/release-notes-generator", - [ - "@semantic-release/changelog", - { - "changelogFile": "CHANGELOG.md" - } - ], - "@semantic-release/npm", - [ - "@semantic-release/git", - { - "assets": [ - "package.json", - "package-lock.json", - "CHANGELOG.md", - "README.md" - ], - "message": "chore(release): ${nextRelease.version}\n\n${nextRelease.notes}" - } - ], - "@semantic-release/github" - ] -} \ No newline at end of file From b51d1d42c423d79c6c6b2abd2857dc99bec5c356 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:17:55 +0530 Subject: [PATCH 06/11] chore: better and more modern TypeScript config --- tsconfig.json | 20 +++++++++++--------- tsconfig.test.json | 1 + 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/tsconfig.json b/tsconfig.json index a35269fe..06fd76e0 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -1,9 +1,11 @@ { + "$schema": "https://json.schemastore.org/tsconfig", "compilerOptions": { /* Basic Options */ // "incremental": true, /* Enable incremental compilation */ - "target": "es6", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */ - "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ + "target": "ES2022", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017', 'ES2018', 'ES2019' or 'ESNEXT'. */ + "module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ + "skipLibCheck": true, /* Skip type checking all .d.ts files. */ // "allowJs": true, /* Allow javascript files to be compiled. */ // "checkJs": true, /* Report errors in .js files. */ // "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ @@ -11,8 +13,8 @@ // "declarationMap": true, /* Generates a sourcemap for each corresponding '.d.ts' file. */ // "sourceMap": true, /* Generates corresponding '.map' file. */ // "outFile": "./", /* Concatenate and emit output to single file. */ - "outDir": "./lib", /* Redirect output structure to the directory. */ - "rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ + "outDir": "./lib", /* Redirect output structure to the directory. */ + "rootDir": "./src", /* Specify the root directory of input files. Use to control the output directory structure with --outDir. */ // "composite": true, /* Enable project compilation */ // "tsBuildInfoFile": "./", /* Specify file to store incremental compilation information */ // "removeComments": true, /* Do not emit comments to output. */ @@ -21,8 +23,8 @@ // "downlevelIteration": true, /* Provide full support for iterables in 'for-of', spread, and destructuring when targeting 'ES5' or 'ES3'. */ // "isolatedModules": true, /* Transpile each file as a separate module (similar to 'ts.transpileModule'). */ /* Strict Type-Checking Options */ - "strict": true, /* Enable all strict type-checking options. */ - "noImplicitAny": false, /* Raise error on expressions and declarations with an implied 'any' type. */ + "strict": true, /* Enable all strict type-checking options. */ + "noImplicitAny": false, /* Raise error on expressions and declarations with an implied 'any' type. */ // "strictNullChecks": true, /* Enable strict null checks. */ // "strictFunctionTypes": true, /* Enable strict checking of function types. */ // "strictBindCallApply": true, /* Enable strict 'bind', 'call', and 'apply' methods on functions. */ @@ -38,11 +40,11 @@ // "moduleResolution": "node", /* Specify module resolution strategy: 'node' (Node.js) or 'classic' (TypeScript pre-1.6). */ // "baseUrl": "./", /* Base directory to resolve non-absolute module names. */ // "paths": {}, /* A series of entries which re-map imports to lookup locations relative to the 'baseUrl'. */ - "rootDirs": ["./src", "./test"], /* List of root folders whose combined content represents the structure of the project at runtime. */ + "rootDirs": ["./src", "./test"], /* List of root folders whose combined content represents the structure of the project at runtime. */ // "typeRoots": [], /* List of folders to include type definitions from. */ // "types": [], /* Type declaration files to be included in compilation. */ // "allowSyntheticDefaultImports": true, /* Allow default imports from modules with no default export. This does not affect code emit, just typechecking. */ - "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ + "esModuleInterop": true /* Enables emit interoperability between CommonJS and ES Modules via creation of namespace objects for all imports. Implies 'allowSyntheticDefaultImports'. */ // "preserveSymlinks": true, /* Do not resolve the real path of symlinks. */ // "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */ /* Source Map Options */ @@ -58,4 +60,4 @@ "node_modules", "**/*.test.ts" ] -} \ No newline at end of file +} diff --git a/tsconfig.test.json b/tsconfig.test.json index b50a5fa0..908e1c63 100644 --- a/tsconfig.test.json +++ b/tsconfig.test.json @@ -1,4 +1,5 @@ { + "$schema": "https://json.schemastore.org/tsconfig", "extends": "./tsconfig.json", "include": [ "./test/*.test.ts" From 854ea46b10d7c48dc04f57be960f2257fca0ba16 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:19:26 +0530 Subject: [PATCH 07/11] feat(ci): replace semantic-release with Google's release-please. BREAKING CHANGE: this doesn't change the functionality of the core action, but it does change how releases are made in the future. This should fix the utterly broken semantic-release workflow --- .github/workflows/ci.yml | 38 ++++++++++++-- .github/workflows/publish.yml | 3 +- .github/workflows/release.yml | 97 ++++------------------------------- .release-please-config.json | 10 ++++ .release-please-manifest.json | 3 ++ 5 files changed, 56 insertions(+), 95 deletions(-) create mode 100644 .release-please-config.json create mode 100644 .release-please-manifest.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 2dc5c701..cd6bd47b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -14,9 +14,9 @@ jobs: uses: actions/checkout@v4 - name: setup pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 with: - version: 8 + version: 9 - name: setup node.js uses: actions/setup-node@v4 @@ -27,6 +27,9 @@ jobs: - name: install dependencies run: pnpm install + - name: check for lint and format errors + run: pnpm run biome:ci + - name: build typescript run: pnpm run build --noEmit @@ -62,9 +65,35 @@ jobs: uses: actions/checkout@v4 - name: setup pnpm - uses: pnpm/action-setup@v2 + uses: pnpm/action-setup@v3 + with: + version: 9 + + - name: setup node.js + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'pnpm' + + - name: install dependencies + run: pnpm install + + - name: run tests + run: pnpm run test + + coverage: + name: "Test Coverage" + runs-on: "ubuntu-latest" + needs: [tests] + if: ${{ github.event_name == 'push' }} # Publish coverage only for push commits, not PRs. + steps: + - name: checkout code + uses: actions/checkout@v4 + + - name: setup pnpm + uses: pnpm/action-setup@v3 with: - version: 8 + version: 9 - name: setup node.js uses: actions/setup-node@v4 @@ -79,7 +108,6 @@ jobs: run: pnpm run coverage - name: publish code coverage to code-climate (duh) - if: ${{ github.event_name == 'push' && matrix.os.index == 1 }} # Push coverage only once inside the matrix. uses: paambaati/codeclimate-action@v5.0.0 env: CC_TEST_REPORTER_ID: 3470adaf12ff7cecdfe5a968ae0e95d098b6ee58c340114e1e90d440ee9e66ab diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index a128261a..b435adad 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -5,7 +5,6 @@ on: - published - created - released - - rerequested jobs: publish: @@ -21,7 +20,7 @@ jobs: CREATE_MAJOR_VERSION_TAG: true CREATE_MINOR_VERSION_TAG: true CREATE_PATCH_VERSION_TAG: true - CLEAN_TARGETS: '.[!.]*,test,src,*.ts,*.json,CHANGELOG.md,_config.yml,.github,coverage,.nyc_output' + CLEAN_TARGETS: '.[!.]*,test,src,*.ts,*.json,CHANGELOG.md,_config.yml,.github,.tap' BRANCH_NAME: 'releases/${MAJOR}/${MINOR}/${PATCH}' env: DEBUG: '*' diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 46ec16d2..10f09f60 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -6,102 +6,23 @@ on: tags: - '!*' -jobs: - next-version: - name: Get next release version - runs-on: ubuntu-latest - outputs: - need-release: ${{ steps.need-release.outputs.result }} - steps: - - name: checkout code - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 8 - - - name: setup node.js - uses: actions/setup-node@v4 - with: - node-version: 20 - cache: 'pnpm' - - - name: install dependencies - run: pnpm install - - - name: install workflow script dependencies - run: pnpm add semver@7.5.4 - - - name: find current latest release version - uses: pozetroninc/github-action-get-latest-release@master - id: last-release - with: - repository: ${{ github.repository }} - token: ${{ secrets.CUSTOM_GITHUB_PERSONAL_TOKEN }} - - - name: find next release version - id: next-release - run: pnpm -s dlx semantic-release --dry-run - env: - GITHUB_TOKEN: ${{ secrets.CUSTOM_GITHUB_PERSONAL_TOKEN }} - - - name: print discovered versions - run: | - echo "Last release version = ${{ steps.last-release.outputs.release }}" - echo "Next release version = ${{ steps.next-release.outputs.new-release-version }}" - - - name: check if we need a new release - uses: actions/github-script@v6 - id: need-release - env: - LAST_RELEASE: ${{ steps.last-release.outputs.release }} - NEW_RELEASE: ${{ steps.next-release.outputs.new-release-version }} - with: - script: | - const semver = require('semver'); - - const lastRelease = process.env.LAST_RELEASE.replace(/^v/, ''); - const newRelease = process.env.NEW_RELEASE.replace(/^v/, ''); - return semver.gt(newRelease, lastRelease); - result-encoding: string - - - name: print if we need a new release - run: | - echo "Need a new release = ${{ steps.need-release.outputs.result }}" +permissions: + contents: write + pull-requests: write +jobs: release: name: Cut a release on GitHub runs-on: ubuntu-latest - needs: next-version - if: needs.next-version.outputs.need-release == 'true' steps: - name: checkout code uses: actions/checkout@v4 with: fetch-depth: 0 - - name: setup pnpm - uses: pnpm/action-setup@v2 - with: - version: 8 - - - name: setup node.js - uses: actions/setup-node@v4 + - name: make a new release PR + uses: google-github-actions/release-please-action@v4 + id: release with: - node-version: 20 - cache: 'pnpm' - - - name: install dependencies - run: pnpm install - - - name: make a release on GitHub - run: pnpm -s dlx semantic-release - env: - GITHUB_TOKEN: ${{ secrets.CUSTOM_GITHUB_PERSONAL_TOKEN }} - GIT_AUTHOR_NAME: 'GP' - GIT_COMMITTER_NAME: 'GP' - GIT_AUTHOR_EMAIL: 'me@httgp.com' - GIT_COMMITTER_EMAIL: 'me@httgp.com' + token: ${{ secrets.CUSTOM_GITHUB_PERSONAL_TOKEN }} + config-file: .release-please-config.json diff --git a/.release-please-config.json b/.release-please-config.json new file mode 100644 index 00000000..505b8364 --- /dev/null +++ b/.release-please-config.json @@ -0,0 +1,10 @@ +{ + "$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json", + "packages": { + ".": { + "release-type": "node", + "include-v-in-tag": true, + "include-component-in-tag": false + } + } +} diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 00000000..ec4aebc8 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + ".": "5.0.0" +} From cf196bbedac70b7a672e7ec7eabf343e71c8e2ec Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:19:48 +0530 Subject: [PATCH 08/11] chore(docs): reformat CHANGELOG so it plays well with release-please --- CHANGELOG.md | 56 +++++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 27 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6b63770c..ebc65e81 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,6 @@ -# [5.0.0](https://github.com/paambaati/codeclimate-action/compare/v4.0.0...v5.0.0) (2023-07-06) +# Changelog + +## [5.0.0](https://github.com/paambaati/codeclimate-action/compare/v4.0.0...v5.0.0) (2023-07-06) ### Bug Fixes @@ -61,7 +63,7 @@ * **core:** Support Windows, now that CodeClimate has released a Windows binary of the reporter – see codeclimate.com/changelog/7dd79ee1cf1af7141b2bd18b * **core:** Support Windows, now that CodeClimate has released a Windows binary of the reporter -# [4.0.0](https://github.com/paambaati/codeclimate-action/compare/v3.1.0...v4.0.0) (2023-04-23) +## [4.0.0](https://github.com/paambaati/codeclimate-action/compare/v3.1.0...v4.0.0) (2023-04-23) ### Bug Fixes @@ -90,7 +92,7 @@ * **ci:** semantic-release and its process is fundamentally broken when the repo moved from master to main for its main branch. This is an attempt to try to unfuck the git log/ref notes -# [3.2.0](https://github.com/paambaati/codeclimate-action/compare/v3.1.0...v3.2.0) (2022-10-21) +## [3.2.0](https://github.com/paambaati/codeclimate-action/compare/v3.1.0...v3.2.0) (2022-10-21) ### Bug Fixes @@ -110,38 +112,38 @@ * **ci:** rebuild and republish to use new branch and workflows ([0c99fb3](https://github.com/paambaati/codeclimate-action/commit/0c99fb3d11aa2bbf8bf94ed90bd4955348c6338b)) -# [3.1.0] - 2022-10-14 +## [3.1.0] - 2022-10-14 ### Changed - Updated base runtime version to Node.js 16.x - via [`#622`](https://github.com/paambaati/codeclimate-action/pull/622). This closes [`#621`](https://github.com/paambaati/codeclimate-action/issues/621). Thanks @fabn! -# [3.0.0] - 2021-09-30 +## [3.0.0] - 2021-09-30 ### Added - ✨ Verifies CC reporter binary after download - via [`#429`](https://github.com/paambaati/codeclimate-action/pull/429). This closes [`#331`](https://github.com/paambaati/codeclimate-action/issues/331). ### Fixed - 🐛 Escape `action.yml` correctly so v3.x can be published - via [`#432`](https://github.com/paambaati/codeclimate-action/pull/432). This closes [`#430`](https://github.com/paambaati/codeclimate-action/issues/430). Thanks @antongolub! -# [2.7.5] - 2020-12-10 +## [2.7.5] - 2020-12-10 ### Added - ✨ Coverage prefix will now work for `after-build` commands as well - via [`#266`](https://github.com/paambaati/codeclimate-action/pull/266). This closes [`#265`](https://github.com/paambaati/codeclimate-action/issues/265). Thanks @matthewshirley! -# [2.7.4] - 2020-10-03 +## [2.7.4] - 2020-10-03 ### Added - 💫 Coverage locations can now be Glob patterns - via [`#240`](https://github.com/paambaati/codeclimate-action/pull/240). This closes [`#234`](https://github.com/paambaati/codeclimate-action/issues/234). Thanks @Sumolari! -# [2.7.3] - 2020-10-01 +## [2.7.3] - 2020-10-01 ### Fixed - 🐛 Default coverage command now correctly defaults to `''` - via [`#238`](https://github.com/paambaati/codeclimate-action/pull/238). This closes [`#235`](https://github.com/paambaati/codeclimate-action/issues/235). Thanks @bennypowers! -# [2.7.2] - 2020-10-01 +## [2.7.2] - 2020-10-01 ### Fixed - 🐛 The entrypoint logic was fixed so the script will _actually_ run now - via [`#236`](https://github.com/paambaati/codeclimate-action/pull/236). This closes [`#235`](https://github.com/paambaati/codeclimate-action/issues/235). -# [2.7.1] - 2020-09-22 +## [2.7.1] - 2020-09-22 ### Added - `coverageCommand` argument is now optional - via [`#220`](https://github.com/paambaati/codeclimate-action/pull/220). This closes [`#182`](https://github.com/paambaati/codeclimate-action/issues/182). -# [2.7.0] - 2020-09-22 +## [2.7.0] - 2020-09-22 ### Added - Customizable working directory with the new `workingDirectory` option - via [`#220`](https://github.com/paambaati/codeclimate-action/pull/220). Thanks @arareko! @@ -151,70 +153,70 @@ ### Changed - Dependencies upgraded to latest, including tape v5. -# [2.6.0] - 2020-04-24 +## [2.6.0] - 2020-04-24 ### Fixed - Fixed regressions introduced in [`#154`](https://github.com/paambaati/codeclimate-action/pull/154). Thanks @MartinNuc! -# [2.5.7] - 2020-04-17 +## [2.5.7] - 2020-04-17 ### Fixed - Finally fixed the long-standing [`#119`](https://github.com/paambaati/codeclimate-action/issues/119) with proper exit code handling - via [`#154`](https://github.com/paambaati/codeclimate-action/pull/154). -# [2.5.6] - 2020-03-28 +## [2.5.6] - 2020-03-28 ### Fixed - Correctly report `HEAD` SHA for PRs (and some nice refactors) - via [`#141`](https://github.com/paambaati/codeclimate-action/pull/141). Thanks @vladjerca! -# [2.5.5] - 2020-03-18 +## [2.5.5] - 2020-03-18 ### Fixed - `--prefix` fixes - via [`#131`](https://github.com/paambaati/codeclimate-action/pull/131). Thanks @rwjblue! -# [2.5.4] - 2020-03-04 +## [2.5.4] - 2020-03-04 ### Fixed - Fixes [#119](https://github.com/paambaati/codeclimate-action/issues/119) - via [`#127`](https://github.com/paambaati/codeclimate-action/pull/127). -# [2.5.3] - 2020-02-26 +## [2.5.3] - 2020-02-26 ### Fixed - Fixes [#109](https://github.com/paambaati/codeclimate-action/issues/109) and #117(https://github.com/paambaati/codeclimate-action/issues/117) - via [`#118`](https://github.com/paambaati/codeclimate-action/pull/118). -# [2.5.2] - 2020-02-26 +## [2.5.2] - 2020-02-26 ### Changed - [Better error message on failure of downloading CC Reporter](https://github.com/paambaati/codeclimate-action/issues/98) - via [`#116`](https://github.com/paambaati/codeclimate-action/pull/116). -# [2.5.1] - 2020-02-26 +## [2.5.1] - 2020-02-26 ### Fixed - Fix reporting the [wrong branch name for PRs](https://github.com/paambaati/codeclimate-action/issues/86) - via [`#115`](https://github.com/paambaati/codeclimate-action/pull/115). -# [2.5.0] - 2020-02-25 +## [2.5.0] - 2020-02-25 ### Added - Custom `--prefix` support - via [`#111`](https://github.com/paambaati/codeclimate-action/pull/111). -# [2.4.0] - 2020-01-07 +## [2.4.0] - 2020-01-07 ### Added - Multiple coverage locations support - via [`#77`](https://github.com/paambaati/codeclimate-action/pull/77). Thanks @mattvv! -# [2.3.0] - 2019-10-31 +## [2.3.0] - 2019-10-31 ### Added - Debug support - via [`#45`](https://github.com/paambaati/codeclimate-action/pull/45). -# [2.2.6] - 2019-10-31 +## [2.2.6] - 2019-10-31 ### Fixed - `env` issues introduced after the Husky-related fixes. -# [2.2.5] - 2019-10-29 +## [2.2.5] - 2019-10-29 ### Fixed - Remove `husky` as a dependency. ### Changed - Automated releases thanks to [`technote-space/release-github-actions`](https://github.com/technote-space/release-github-actions). -# [2.2.4] - 2019-10-27 +## [2.2.4] - 2019-10-27 ### Fixed - Fix [missing files](https://github.com/paambaati/codeclimate-action/issues/42#issuecomment-546676537). -# [2.2.3] - 2019-10-27 +## [2.2.3] - 2019-10-27 ### Fixed - Fix [runtime failures](https://github.com/paambaati/codeclimate-action/issues/42#issuecomment-546659123) - via [`0a0ba88`](https://github.com/paambaati/codeclimate-action/commit/0a0ba88ef1092c69d5be6235dc6d493a699ffb1a) and [`c2422ad`](https://github.com/paambaati/codeclimate-action/commit/c2422ad00a34ed3524226d5d1e2124e05a970874). -# [2.2.2] - 2019-10-27 +## [2.2.2] - 2019-10-27 ### Fixed - Code coverage will also be available in 'Overview' tab - via [#43](https://github.com/paambaati/codeclimate-action/pull/43). From 8d213d676b09cf8f03ff6463e3b52f737a42934a Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:20:05 +0530 Subject: [PATCH 09/11] chore(docs): update LICENSE --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index 5af46e73..8f7f136f 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2019 GP ✅ +Copyright (c) 2019 Ganesh "GP" Prasannah `` Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal From f4331dc0f9c48e2f2ca63ff338d62b429a196788 Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:20:29 +0530 Subject: [PATCH 10/11] chore(docs): fix broken workflow badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 207d91a7..5182d466 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # codeclimate-action [![Test Coverage](https://api.codeclimate.com/v1/badges/8f2233d4c51c92ad427c/test_coverage)](https://codeclimate.com/github/paambaati/codeclimate-action/test_coverage) -[![Build Status](https://github.com/paambaati/codeclimate-action/workflows/PR%20Checks/badge.svg)](https://actions-badge.atrox.dev/paambaati/codeclimate-action/goto) +[![Build Status](https://github.com/paambaati/codeclimate-action/actions/workflows/ci.yml/badge.svg)](https://github.com/paambaati/codeclimate-action/actions/workflows/ci.yml) [![MIT License](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) A GitHub action that publishes your code coverage to [Code Climate](http://codeclimate.com/). From 5c9d4de11fe96247f3539e4e8c7cdd448b0c6dca Mon Sep 17 00:00:00 2001 From: GP Date: Fri, 26 Apr 2024 12:21:45 +0530 Subject: [PATCH 11/11] chore: release 6.0.0 Release-As: 6.0.0