diff --git a/README.md b/README.md index 2a4a89f9..2312d333 100644 --- a/README.md +++ b/README.md @@ -6,6 +6,8 @@ Dispatch an action to a foreign repository and output the newly created run ID. This Action exists as a workaround for the issue where dispatching an action to foreign repository does not return any kind of identifier. +The returned run ID can be used to await the completion of the remote run using [`await-remote-run`](https://github.com/Codex-/await-remote-run). + ## Usage Ensure you have configured your remote action correctly, see below for an example. @@ -35,6 +37,14 @@ steps: run: | echo ${{steps.return_dispatch.outputs.run_id}} echo ${{steps.return_dispatch.outputs.run_url}} + + - name: Await Run ID ${{ steps.return_dispatch.outputs.run_id }} + uses: Codex-/await-remote-run@v1 + with: + token: ${{ github.token }} + repo: repository-name + owner: repository-owner + run_id: ${{ steps.return_dispatch.outputs.run_id }} ``` ### Receiving Repository Action diff --git a/dist/index.mjs b/dist/index.mjs index 260b76af..d2247988 100644 --- a/dist/index.mjs +++ b/dist/index.mjs @@ -23953,6 +23953,39 @@ function getOptionalWorkflowValue(workflowInput) { var core3 = __toESM(require_core(), 1); var github = __toESM(require_github(), 1); +// src/etags.ts +var etagStore = /* @__PURE__ */ new Map(); +async function withEtag(endpoint, params, requester) { + const { etag, savedResponse } = getEtag(endpoint, params) ?? {}; + const paramsWithEtag = { ...params }; + if (etag) + paramsWithEtag.headers = { + "If-None-Match": etag, + ...params.headers ?? {} + }; + const response = await requester(paramsWithEtag); + if (response.status === 304 && etag && etag === extractEtag(response) && savedResponse !== void 0) { + return savedResponse; + } + rememberEtag(endpoint, params, response); + return response; +} +function extractEtag(response) { + if ("string" !== typeof response.headers.etag) return; + return response.headers.etag.split('"')[1] ?? ""; +} +function getEtag(endpoint, params) { + return etagStore.get(JSON.stringify({ endpoint, params })); +} +function rememberEtag(endpoint, params, response) { + const etag = extractEtag(response); + if (!etag) return; + etagStore.set(JSON.stringify({ endpoint, params }), { + etag, + savedResponse: response + }); +} + // src/utils.ts var core2 = __toESM(require_core(), 1); function getBranchNameFromRef(ref) { @@ -24133,19 +24166,25 @@ async function fetchWorkflowRunIds(workflowId, branch, startTimeISO) { try { const useBranchFilter = !branch.isTag && branch.branchName !== void 0 && branch.branchName !== ""; const createdFrom = `>=${startTimeISO}`; - const response = await octokit.rest.actions.listWorkflowRuns({ - owner: config.owner, - repo: config.repo, - workflow_id: workflowId, - created: createdFrom, - event: "workflow_dispatch", - ...useBranchFilter ? { - branch: branch.branchName, - per_page: 10 - } : { - per_page: 20 + const response = await withEtag( + "listWorkflowRuns", + { + owner: config.owner, + repo: config.repo, + workflow_id: workflowId, + created: createdFrom, + event: "workflow_dispatch", + ...useBranchFilter ? { + branch: branch.branchName, + per_page: 10 + } : { + per_page: 20 + } + }, + async (params) => { + return await octokit.rest.actions.listWorkflowRuns(params); } - }); + ); if (response.status !== 200) { throw new Error( `Failed to fetch Workflow runs, expected 200 but received ${response.status}` @@ -24176,12 +24215,18 @@ async function fetchWorkflowRunIds(workflowId, branch, startTimeISO) { } async function fetchWorkflowRunJobSteps(runId) { try { - const response = await octokit.rest.actions.listJobsForWorkflowRun({ - owner: config.owner, - repo: config.repo, - run_id: runId, - filter: "latest" - }); + const response = await withEtag( + "listJobsForWorkflowRun", + { + owner: config.owner, + repo: config.repo, + run_id: runId, + filter: "latest" + }, + async (params) => { + return await octokit.rest.actions.listJobsForWorkflowRun(params); + } + ); if (response.status !== 200) { throw new Error( `Failed to fetch Workflow Run Jobs, expected 200 but received ${response.status}` diff --git a/mise.toml b/mise.toml index d6ce0286..5b06e965 100644 --- a/mise.toml +++ b/mise.toml @@ -1,3 +1,3 @@ [tools] -node = "20.19.2" -pnpm = "10.12.1" +node = "20.19.4" +pnpm = "10.13.1" diff --git a/package.json b/package.json index 671e448e..1d7896df 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "return-dispatch", - "version": "2.0.5", + "version": "2.1.0", "private": true, "description": "Dispatch an action and output the run ID.", "main": "lib/main.js", @@ -34,31 +34,24 @@ "@actions/github": "^6.0.1" }, "devDependencies": { - "@eslint/js": "^9.28.0", + "@eslint/js": "^9.31.0", + "@octokit/types": "^14.1.0", "@opentf/std": "^0.13.0", "@total-typescript/ts-reset": "^0.6.1", - "@types/node": "~20.19.0", - "@typescript-eslint/eslint-plugin": "^8.34.0", - "@typescript-eslint/parser": "^8.34.0", + "@types/node": "~20.19.9", + "@typescript-eslint/eslint-plugin": "^8.37.0", + "@typescript-eslint/parser": "^8.37.0", "@vitest/coverage-v8": "~3.1.4", "chalk": "^5.4.1", - "changelogithub": "^13.15.0", - "esbuild": "^0.25.5", - "eslint": "^9.28.0", + "changelogithub": "^13.16.0", + "esbuild": "^0.25.8", + "eslint": "^9.31.0", "eslint-config-prettier": "^10.1.8", - "eslint-import-resolver-typescript": "^4.4.3", - "eslint-plugin-import-x": "^4.15.2", - "prettier": "3.5.3", + "eslint-import-resolver-typescript": "^4.4.4", + "eslint-plugin-import-x": "^4.16.1", + "prettier": "3.6.2", "typescript": "^5.8.3", - "typescript-eslint": "^8.34.0", + "typescript-eslint": "^8.37.0", "vitest": "~3.1.4" - }, - "resolutions": { - "vite": ">=6.2.7" - }, - "pnpm": { - "onlyBuiltDependencies": [ - "esbuild" - ] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 00c2c171..d430048e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -19,8 +19,16 @@ importers: version: 6.0.1 devDependencies: '@eslint/js': +<<<<<<< HEAD specifier: ^9.28.0 version: 9.28.0 +======= + specifier: ^9.31.0 + version: 9.31.0 + '@octokit/types': + specifier: ^14.1.0 + version: 14.1.0 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@opentf/std': specifier: ^0.13.0 version: 0.13.0 @@ -28,6 +36,7 @@ importers: specifier: ^0.6.1 version: 0.6.1 '@types/node': +<<<<<<< HEAD specifier: ~20.19.0 version: 20.19.0 '@typescript-eslint/eslint-plugin': @@ -39,10 +48,24 @@ importers: '@vitest/coverage-v8': specifier: ~3.1.4 version: 3.1.4(vitest@3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1)) +======= + specifier: ~20.19.9 + version: 20.19.9 + '@typescript-eslint/eslint-plugin': + specifier: ^8.37.0 + version: 8.37.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': + specifier: ^8.37.0 + version: 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@vitest/coverage-v8': + specifier: ~3.1.4 + version: 3.1.4(vitest@3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0)) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 chalk: specifier: ^5.4.1 version: 5.4.1 changelogithub: +<<<<<<< HEAD specifier: ^13.15.0 version: 13.15.0(magicast@0.3.5) esbuild: @@ -60,18 +83,45 @@ importers: eslint-plugin-import-x: specifier: ^4.15.2 version: 4.15.2(@typescript-eslint/utils@8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3))(eslint-import-resolver-node@0.3.9)(eslint@9.28.0(jiti@2.4.2)) +======= + specifier: ^13.16.0 + version: 13.16.0(magicast@0.3.5) + esbuild: + specifier: ^0.25.8 + version: 0.25.8 + eslint: + specifier: ^9.31.0 + version: 9.31.0(jiti@2.4.2) + eslint-config-prettier: + specifier: ^10.1.8 + version: 10.1.8(eslint@9.31.0(jiti@2.4.2)) + eslint-import-resolver-typescript: + specifier: ^4.4.4 + version: 4.4.4(eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)))(eslint@9.31.0(jiti@2.4.2)) + eslint-plugin-import-x: + specifier: ^4.16.1 + version: 4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 prettier: - specifier: 3.5.3 - version: 3.5.3 + specifier: 3.6.2 + version: 3.6.2 typescript: specifier: ^5.8.3 version: 5.8.3 typescript-eslint: +<<<<<<< HEAD specifier: ^8.34.0 version: 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) vitest: specifier: ~3.1.4 version: 3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1) +======= + specifier: ^8.37.0 + version: 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + vitest: + specifier: ~3.1.4 + version: 3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 packages: @@ -94,21 +144,21 @@ packages: resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} - '@babel/helper-string-parser@7.25.9': - resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==} + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} engines: {node: '>=6.9.0'} - '@babel/helper-validator-identifier@7.25.9': - resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==} + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} engines: {node: '>=6.9.0'} - '@babel/parser@7.27.0': - resolution: {integrity: sha512-iaepho73/2Pz7w2eMS0Q5f83+0RKI7i4xmiYeBmDzfRVbQtTOG7Ts0S4HzJVsTMGI9keU8rNfuZr8DKfSt7Yyg==} + '@babel/parser@7.27.7': + resolution: {integrity: sha512-qnzXzDXdr/po3bOTbTIQZ7+TxNKxpkN5IifVLXS+r7qwynkZfPyjZfE7hCXbo7IoO9TNcSyibgONsf2HauUd3Q==} engines: {node: '>=6.0.0'} hasBin: true - '@babel/types@7.27.0': - resolution: {integrity: sha512-H45s8fVLYjbhFH62dIJ3WtmJ6RSPt/3DRO0ZcT2SUiYiQyz3BLVb9ADEnLl91m74aQPS3AzzeajZHYOalWe3bg==} + '@babel/types@7.27.7': + resolution: {integrity: sha512-8OLQgDScAOHXnAz2cV+RfzzNMipuLVBz2biuAJFMV9bfkNf393je3VM8CLkjQodW5+iWsSJdSgSWT6rsZoXHPw==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@1.0.2': @@ -124,158 +174,289 @@ packages: '@emnapi/wasi-threads@1.0.2': resolution: {integrity: sha512-5n3nTJblwRi8LlXkJ9eBzu+kZR8Yxcc7ubakyQTFzPMtIhFpUBRbsnc2Dv88IZDIbCDlBiWrknhB4Lsz7mg6BA==} +<<<<<<< HEAD '@esbuild/aix-ppc64@0.25.5': resolution: {integrity: sha512-9o3TMmpmftaCMepOdA5k/yDw8SfInyzWWTjYTFCX3kPSDJMROQTb8jg+h9Cnwnmm1vOzvxN7gIfB5V2ewpjtGA==} +======= + '@esbuild/aix-ppc64@0.25.8': + resolution: {integrity: sha512-urAvrUedIqEiFR3FYSLTWQgLu5tb+m0qZw0NBEasUeo6wuqatkMDaRT+1uABiGXEu5vqgPd7FGE1BhsAIy9QVA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [ppc64] os: [aix] +<<<<<<< HEAD '@esbuild/android-arm64@0.25.5': resolution: {integrity: sha512-VGzGhj4lJO+TVGV1v8ntCZWJktV7SGCs3Pn1GRWI1SBFtRALoomm8k5E9Pmwg3HOAal2VDc2F9+PM/rEY6oIDg==} +======= + '@esbuild/android-arm64@0.25.8': + resolution: {integrity: sha512-OD3p7LYzWpLhZEyATcTSJ67qB5D+20vbtr6vHlHWSQYhKtzUYrETuWThmzFpZtFsBIxRvhO07+UgVA9m0i/O1w==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [android] +<<<<<<< HEAD '@esbuild/android-arm@0.25.5': resolution: {integrity: sha512-AdJKSPeEHgi7/ZhuIPtcQKr5RQdo6OO2IL87JkianiMYMPbCtot9fxPbrMiBADOWWm3T2si9stAiVsGbTQFkbA==} +======= + '@esbuild/android-arm@0.25.8': + resolution: {integrity: sha512-RONsAvGCz5oWyePVnLdZY/HHwA++nxYWIX1atInlaW6SEkwq6XkP3+cb825EUcRs5Vss/lGh/2YxAb5xqc07Uw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm] os: [android] +<<<<<<< HEAD '@esbuild/android-x64@0.25.5': resolution: {integrity: sha512-D2GyJT1kjvO//drbRT3Hib9XPwQeWd9vZoBJn+bu/lVsOZ13cqNdDeqIF/xQ5/VmWvMduP6AmXvylO/PIc2isw==} +======= + '@esbuild/android-x64@0.25.8': + resolution: {integrity: sha512-yJAVPklM5+4+9dTeKwHOaA+LQkmrKFX96BM0A/2zQrbS6ENCmxc4OVoBs5dPkCCak2roAD+jKCdnmOqKszPkjA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [android] +<<<<<<< HEAD '@esbuild/darwin-arm64@0.25.5': resolution: {integrity: sha512-GtaBgammVvdF7aPIgH2jxMDdivezgFu6iKpmT+48+F8Hhg5J/sfnDieg0aeG/jfSvkYQU2/pceFPDKlqZzwnfQ==} +======= + '@esbuild/darwin-arm64@0.25.8': + resolution: {integrity: sha512-Jw0mxgIaYX6R8ODrdkLLPwBqHTtYHJSmzzd+QeytSugzQ0Vg4c5rDky5VgkoowbZQahCbsv1rT1KW72MPIkevw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [darwin] +<<<<<<< HEAD '@esbuild/darwin-x64@0.25.5': resolution: {integrity: sha512-1iT4FVL0dJ76/q1wd7XDsXrSW+oLoquptvh4CLR4kITDtqi2e/xwXwdCVH8hVHU43wgJdsq7Gxuzcs6Iq/7bxQ==} +======= + '@esbuild/darwin-x64@0.25.8': + resolution: {integrity: sha512-Vh2gLxxHnuoQ+GjPNvDSDRpoBCUzY4Pu0kBqMBDlK4fuWbKgGtmDIeEC081xi26PPjn+1tct+Bh8FjyLlw1Zlg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [darwin] +<<<<<<< HEAD '@esbuild/freebsd-arm64@0.25.5': resolution: {integrity: sha512-nk4tGP3JThz4La38Uy/gzyXtpkPW8zSAmoUhK9xKKXdBCzKODMc2adkB2+8om9BDYugz+uGV7sLmpTYzvmz6Sw==} +======= + '@esbuild/freebsd-arm64@0.25.8': + resolution: {integrity: sha512-YPJ7hDQ9DnNe5vxOm6jaie9QsTwcKedPvizTVlqWG9GBSq+BuyWEDazlGaDTC5NGU4QJd666V0yqCBL2oWKPfA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [freebsd] +<<<<<<< HEAD '@esbuild/freebsd-x64@0.25.5': resolution: {integrity: sha512-PrikaNjiXdR2laW6OIjlbeuCPrPaAl0IwPIaRv+SMV8CiM8i2LqVUHFC1+8eORgWyY7yhQY+2U2fA55mBzReaw==} +======= + '@esbuild/freebsd-x64@0.25.8': + resolution: {integrity: sha512-MmaEXxQRdXNFsRN/KcIimLnSJrk2r5H8v+WVafRWz5xdSVmWLoITZQXcgehI2ZE6gioE6HirAEToM/RvFBeuhw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [freebsd] +<<<<<<< HEAD '@esbuild/linux-arm64@0.25.5': resolution: {integrity: sha512-Z9kfb1v6ZlGbWj8EJk9T6czVEjjq2ntSYLY2cw6pAZl4oKtfgQuS4HOq41M/BcoLPzrUbNd+R4BXFyH//nHxVg==} +======= + '@esbuild/linux-arm64@0.25.8': + resolution: {integrity: sha512-WIgg00ARWv/uYLU7lsuDK00d/hHSfES5BzdWAdAig1ioV5kaFNrtK8EqGcUBJhYqotlUByUKz5Qo6u8tt7iD/w==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [linux] +<<<<<<< HEAD '@esbuild/linux-arm@0.25.5': resolution: {integrity: sha512-cPzojwW2okgh7ZlRpcBEtsX7WBuqbLrNXqLU89GxWbNt6uIg78ET82qifUy3W6OVww6ZWobWub5oqZOVtwolfw==} +======= + '@esbuild/linux-arm@0.25.8': + resolution: {integrity: sha512-FuzEP9BixzZohl1kLf76KEVOsxtIBFwCaLupVuk4eFVnOZfU+Wsn+x5Ryam7nILV2pkq2TqQM9EZPsOBuMC+kg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm] os: [linux] +<<<<<<< HEAD '@esbuild/linux-ia32@0.25.5': resolution: {integrity: sha512-sQ7l00M8bSv36GLV95BVAdhJ2QsIbCuCjh/uYrWiMQSUuV+LpXwIqhgJDcvMTj+VsQmqAHL2yYaasENvJ7CDKA==} +======= + '@esbuild/linux-ia32@0.25.8': + resolution: {integrity: sha512-A1D9YzRX1i+1AJZuFFUMP1E9fMaYY+GnSQil9Tlw05utlE86EKTUA7RjwHDkEitmLYiFsRd9HwKBPEftNdBfjg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [ia32] os: [linux] +<<<<<<< HEAD '@esbuild/linux-loong64@0.25.5': resolution: {integrity: sha512-0ur7ae16hDUC4OL5iEnDb0tZHDxYmuQyhKhsPBV8f99f6Z9KQM02g33f93rNH5A30agMS46u2HP6qTdEt6Q1kg==} +======= + '@esbuild/linux-loong64@0.25.8': + resolution: {integrity: sha512-O7k1J/dwHkY1RMVvglFHl1HzutGEFFZ3kNiDMSOyUrB7WcoHGf96Sh+64nTRT26l3GMbCW01Ekh/ThKM5iI7hQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [loong64] os: [linux] +<<<<<<< HEAD '@esbuild/linux-mips64el@0.25.5': resolution: {integrity: sha512-kB/66P1OsHO5zLz0i6X0RxlQ+3cu0mkxS3TKFvkb5lin6uwZ/ttOkP3Z8lfR9mJOBk14ZwZ9182SIIWFGNmqmg==} +======= + '@esbuild/linux-mips64el@0.25.8': + resolution: {integrity: sha512-uv+dqfRazte3BzfMp8PAQXmdGHQt2oC/y2ovwpTteqrMx2lwaksiFZ/bdkXJC19ttTvNXBuWH53zy/aTj1FgGw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [mips64el] os: [linux] +<<<<<<< HEAD '@esbuild/linux-ppc64@0.25.5': resolution: {integrity: sha512-UZCmJ7r9X2fe2D6jBmkLBMQetXPXIsZjQJCjgwpVDz+YMcS6oFR27alkgGv3Oqkv07bxdvw7fyB71/olceJhkQ==} +======= + '@esbuild/linux-ppc64@0.25.8': + resolution: {integrity: sha512-GyG0KcMi1GBavP5JgAkkstMGyMholMDybAf8wF5A70CALlDM2p/f7YFE7H92eDeH/VBtFJA5MT4nRPDGg4JuzQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [ppc64] os: [linux] +<<<<<<< HEAD '@esbuild/linux-riscv64@0.25.5': resolution: {integrity: sha512-kTxwu4mLyeOlsVIFPfQo+fQJAV9mh24xL+y+Bm6ej067sYANjyEw1dNHmvoqxJUCMnkBdKpvOn0Ahql6+4VyeA==} +======= + '@esbuild/linux-riscv64@0.25.8': + resolution: {integrity: sha512-rAqDYFv3yzMrq7GIcen3XP7TUEG/4LK86LUPMIz6RT8A6pRIDn0sDcvjudVZBiiTcZCY9y2SgYX2lgK3AF+1eg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [riscv64] os: [linux] +<<<<<<< HEAD '@esbuild/linux-s390x@0.25.5': resolution: {integrity: sha512-K2dSKTKfmdh78uJ3NcWFiqyRrimfdinS5ErLSn3vluHNeHVnBAFWC8a4X5N+7FgVE1EjXS1QDZbpqZBjfrqMTQ==} +======= + '@esbuild/linux-s390x@0.25.8': + resolution: {integrity: sha512-Xutvh6VjlbcHpsIIbwY8GVRbwoviWT19tFhgdA7DlenLGC/mbc3lBoVb7jxj9Z+eyGqvcnSyIltYUrkKzWqSvg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [s390x] os: [linux] +<<<<<<< HEAD '@esbuild/linux-x64@0.25.5': resolution: {integrity: sha512-uhj8N2obKTE6pSZ+aMUbqq+1nXxNjZIIjCjGLfsWvVpy7gKCOL6rsY1MhRh9zLtUtAI7vpgLMK6DxjO8Qm9lJw==} +======= + '@esbuild/linux-x64@0.25.8': + resolution: {integrity: sha512-ASFQhgY4ElXh3nDcOMTkQero4b1lgubskNlhIfJrsH5OKZXDpUAKBlNS0Kx81jwOBp+HCeZqmoJuihTv57/jvQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [linux] +<<<<<<< HEAD '@esbuild/netbsd-arm64@0.25.5': resolution: {integrity: sha512-pwHtMP9viAy1oHPvgxtOv+OkduK5ugofNTVDilIzBLpoWAM16r7b/mxBvfpuQDpRQFMfuVr5aLcn4yveGvBZvw==} +======= + '@esbuild/netbsd-arm64@0.25.8': + resolution: {integrity: sha512-d1KfruIeohqAi6SA+gENMuObDbEjn22olAR7egqnkCD9DGBG0wsEARotkLgXDu6c4ncgWTZJtN5vcgxzWRMzcw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [netbsd] +<<<<<<< HEAD '@esbuild/netbsd-x64@0.25.5': resolution: {integrity: sha512-WOb5fKrvVTRMfWFNCroYWWklbnXH0Q5rZppjq0vQIdlsQKuw6mdSihwSo4RV/YdQ5UCKKvBy7/0ZZYLBZKIbwQ==} +======= + '@esbuild/netbsd-x64@0.25.8': + resolution: {integrity: sha512-nVDCkrvx2ua+XQNyfrujIG38+YGyuy2Ru9kKVNyh5jAys6n+l44tTtToqHjino2My8VAY6Lw9H7RI73XFi66Cg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [netbsd] +<<<<<<< HEAD '@esbuild/openbsd-arm64@0.25.5': resolution: {integrity: sha512-7A208+uQKgTxHd0G0uqZO8UjK2R0DDb4fDmERtARjSHWxqMTye4Erz4zZafx7Di9Cv+lNHYuncAkiGFySoD+Mw==} +======= + '@esbuild/openbsd-arm64@0.25.8': + resolution: {integrity: sha512-j8HgrDuSJFAujkivSMSfPQSAa5Fxbvk4rgNAS5i3K+r8s1X0p1uOO2Hl2xNsGFppOeHOLAVgYwDVlmxhq5h+SQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [openbsd] +<<<<<<< HEAD '@esbuild/openbsd-x64@0.25.5': resolution: {integrity: sha512-G4hE405ErTWraiZ8UiSoesH8DaCsMm0Cay4fsFWOOUcz8b8rC6uCvnagr+gnioEjWn0wC+o1/TAHt+It+MpIMg==} +======= + '@esbuild/openbsd-x64@0.25.8': + resolution: {integrity: sha512-1h8MUAwa0VhNCDp6Af0HToI2TJFAn1uqT9Al6DJVzdIBAd21m/G0Yfc77KDM3uF3T/YaOgQq3qTJHPbTOInaIQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [openbsd] +<<<<<<< HEAD '@esbuild/sunos-x64@0.25.5': resolution: {integrity: sha512-l+azKShMy7FxzY0Rj4RCt5VD/q8mG/e+mDivgspo+yL8zW7qEwctQ6YqKX34DTEleFAvCIUviCFX1SDZRSyMQA==} +======= + '@esbuild/openharmony-arm64@0.25.8': + resolution: {integrity: sha512-r2nVa5SIK9tSWd0kJd9HCffnDHKchTGikb//9c7HX+r+wHYCpQrSgxhlY6KWV1nFo1l4KFbsMlHk+L6fekLsUg==} + engines: {node: '>=18'} + cpu: [arm64] + os: [openharmony] + + '@esbuild/sunos-x64@0.25.8': + resolution: {integrity: sha512-zUlaP2S12YhQ2UzUfcCuMDHQFJyKABkAjvO5YSndMiIkMimPmxA+BYSBikWgsRpvyxuRnow4nS5NPnf9fpv41w==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [sunos] +<<<<<<< HEAD '@esbuild/win32-arm64@0.25.5': resolution: {integrity: sha512-O2S7SNZzdcFG7eFKgvwUEZ2VG9D/sn/eIiz8XRZ1Q/DO5a3s76Xv0mdBzVM5j5R639lXQmPmSo0iRpHqUUrsxw==} +======= + '@esbuild/win32-arm64@0.25.8': + resolution: {integrity: sha512-YEGFFWESlPva8hGL+zvj2z/SaK+pH0SwOM0Nc/d+rVnW7GSTFlLBGzZkuSU9kFIGIo8q9X3ucpZhu8PDN5A2sQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [arm64] os: [win32] +<<<<<<< HEAD '@esbuild/win32-ia32@0.25.5': resolution: {integrity: sha512-onOJ02pqs9h1iMJ1PQphR+VZv8qBMQ77Klcsqv9CNW2w6yLqoURLcgERAIurY6QE63bbLuqgP9ATqajFLK5AMQ==} +======= + '@esbuild/win32-ia32@0.25.8': + resolution: {integrity: sha512-hiGgGC6KZ5LZz58OL/+qVVoZiuZlUYlYHNAmczOm7bs2oE1XriPFi5ZHHrS8ACpV5EjySrnoCKmcbQMN+ojnHg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [ia32] os: [win32] +<<<<<<< HEAD '@esbuild/win32-x64@0.25.5': resolution: {integrity: sha512-TXv6YnJ8ZMVdX+SXWVBo/0p8LTcrUYngpWjvm91TMjjBQii7Oz11Lw5lbDV5Y0TzuhSJHwiH4hEtC1I42mMS0g==} +======= + '@esbuild/win32-x64@0.25.8': + resolution: {integrity: sha512-cn3Yr7+OaaZq1c+2pe+8yxC8E144SReCQjN6/2ynubzYjvyqZjTXfQJpAcQpsdJq3My7XADANiYGHoFC69pLQw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} cpu: [x64] os: [win32] - '@eslint-community/eslint-utils@4.5.1': - resolution: {integrity: sha512-soEIOALTfTK6EjmKMMoLugwaP0rzkad90iIWd1hMO9ARkSAyjfMfkRRhLvD5qH7vvM0Cg72pieUfR6yh6XxC4w==} + '@eslint-community/eslint-utils@4.7.0': + resolution: {integrity: sha512-dyybb3AcajC7uha6CvhdVRJqaKyn7w2YKqKyAN37NKYgZT36w+iRb0Dymmc5qEJ549c/S31cMMSFd75bteCpCw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 @@ -290,32 +471,47 @@ packages: resolution: {integrity: sha512-CCZCDJuduB9OUkFkY2IgppNZMi2lBQgD2qzwXkEia16cge2pijY/aXi96CJMquDMn3nJdlPV1A5KrJEXwfLNzQ==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.20.0': - resolution: {integrity: sha512-fxlS1kkIjx8+vy2SjuCB94q3htSNrufYTXubwiBFeaQHbH6Ipi43gFJq2zCMt6PHhImH3Xmr0NksKDvchWlpQQ==} + '@eslint/config-array@0.21.0': + resolution: {integrity: sha512-ENIdc4iLu0d93HeYirvKmrzshzofPw6VkZRKQGe9Nv46ZnWUzcF1xV01dcvEg/1wXUR61OmmlSfyeyO7EvjLxQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@eslint/config-helpers@0.2.1': - resolution: {integrity: sha512-RI17tsD2frtDu/3dmI7QRrD4bedNKPM08ziRYaC5AhkGrzIAJelm9kJU1TznK+apx6V+cqRz8tfpEeG3oIyjxw==} + '@eslint/config-helpers@0.3.0': + resolution: {integrity: sha512-ViuymvFmcJi04qdZeDc2whTHryouGcDlaxPqarTD0ZE10ISpxGUVZGZDx4w01upyIynL3iu6IXH2bS1NhclQMw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} +<<<<<<< HEAD '@eslint/core@0.14.0': resolution: {integrity: sha512-qIbV0/JZr7iSDjqAc60IqbLdsj9GDt16xQtWD+B78d/HAlvysGdZZ6rpJHGAc2T0FQx1X6thsSPdnoiGKdNtdg==} +======= + '@eslint/core@0.15.1': + resolution: {integrity: sha512-bkOp+iumZCCbt1K1CmWf0R9pM5yKpDv+ZXtvSyQpudrI9kuFLp+bM2WOPXImuD/ceQuaa8f5pj93Y7zyECIGNA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/eslintrc@3.3.1': resolution: {integrity: sha512-gtF186CXhIl1p4pJNGZw8Yc6RlshoePRvE0X91oPGb3vZ8pM3qOS9W9NGPat9LziaBV7XrJWGylNQXkGcnM3IQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} +<<<<<<< HEAD '@eslint/js@9.28.0': resolution: {integrity: sha512-fnqSjGWd/CoIp4EXIxWVK/sHA6DOHN4+8Ix2cX5ycOY7LG0UY8nHCU5pIp2eaE1Mc7Qd8kHspYNzYXT2ojPLzg==} +======= + '@eslint/js@9.31.0': + resolution: {integrity: sha512-LOm5OVt7D4qiKCqoiPbA7LWmI+tbw1VbTUowBcUMgQSuM6poJufkFkYDcQpo5KfgD39TnNySV26QjOh7VFpSyw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@eslint/object-schema@2.1.6': resolution: {integrity: sha512-RBMg5FRL0I0gs51M/guSAj5/e14VQ4tpZnQNWwuDT66P14I43ItmPfIZRhO9fUVIPOAQXU47atlywZ/czoqFPA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} +<<<<<<< HEAD '@eslint/plugin-kit@0.3.1': resolution: {integrity: sha512-0J+zgWxHN+xXONWIyPWKFMgVuJoZuGiIFu8yxk7RJjxkzpGmyja5wRFqZIVtjDVOQpV+Rw0iOAjYPE2eQyjr0w==} +======= + '@eslint/plugin-kit@0.3.3': + resolution: {integrity: sha512-1+WqvgNMhmlAambTvT3KPtCl/Ibr68VldY2XY40SL1CE0ZXiakFR/cbTspaF5HsnpDMvcYYoJHfl4980NBjGag==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@fastify/busboy@2.1.1': @@ -338,10 +534,18 @@ packages: resolution: {integrity: sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==} engines: {node: '>=18.18'} - '@humanwhocodes/retry@0.4.2': - resolution: {integrity: sha512-xeO57FpIu4p1Ri3Jq/EXq4ClRm86dVF2z/+kvFnyqVYRavTZmaFaUBbWCOuuTh0o/g7DSsk6kc2vrS4Vl5oPOQ==} + '@humanwhocodes/retry@0.4.3': + resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} + '@isaacs/balanced-match@4.0.1': + resolution: {integrity: sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==} + engines: {node: 20 || >=22} + + '@isaacs/brace-expansion@5.0.0': + resolution: {integrity: sha512-ZT55BDLV0yv0RBm2czMiZ+SqCGO7AvmOM3G/w2xhVPH+te0aKgFjmBvGlL1dH+ql2tgGO3MVrbb3jCKyvpgnxA==} + engines: {node: 20 || >=22} + '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -350,24 +554,25 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} - '@jridgewell/gen-mapping@0.3.8': - resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} - engines: {node: '>=6.0.0'} + '@jridgewell/gen-mapping@0.3.12': + resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} '@jridgewell/resolve-uri@3.1.2': resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==} engines: {node: '>=6.0.0'} - '@jridgewell/set-array@1.2.1': - resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==} - engines: {node: '>=6.0.0'} + '@jridgewell/sourcemap-codec@1.5.4': + resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} - '@jridgewell/sourcemap-codec@1.5.0': - resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==} + '@jridgewell/trace-mapping@0.3.29': + resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} +<<<<<<< HEAD '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@napi-rs/wasm-runtime@0.2.11': resolution: {integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==} @@ -405,6 +610,9 @@ packages: '@octokit/openapi-types@24.2.0': resolution: {integrity: sha512-9sIH3nSUttelJSXUrmGzl7QUBFul0/mB8HRYl3fOlgHbIWG+WnYDXU3v/2zMtAvuzZ/ed00Ei6on975FhBfzrg==} + '@octokit/openapi-types@25.1.0': + resolution: {integrity: sha512-idsIggNXUKkk0+BExUn1dQ92sfysJrje03Q0bv0e+KPLrvyqZF8MnBpFz8UNfYDwB3Ie7Z0TByjWfzxt7vseaA==} + '@octokit/plugin-paginate-rest@9.2.2': resolution: {integrity: sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ==} engines: {node: '>= 18'} @@ -431,6 +639,9 @@ packages: '@octokit/types@13.10.0': resolution: {integrity: sha512-ifLaO34EbbPj0Xgro4G5lP5asESjwHracYJvVaPIyXMuiuXLlhic3S47cBdTb+jfODkTE5YtGCLt3Ay3+J97sA==} + '@octokit/types@14.1.0': + resolution: {integrity: sha512-1y6DgTy8Jomcpu33N+p5w58l6xyt55Ar2I91RPiIA0xCJBXyUAhXCcmZaDWSANiha7R9a6qJJ2CRomGPZ6f46g==} + '@opentf/std@0.13.0': resolution: {integrity: sha512-VG9vn7oML5prxWipDvod1X7z9+3fyyCbw+SuD5F7cWx9F1bXFZdAYGIKGqqHLtfxz3mrXZWHcxnm8d0YwQ7tKQ==} engines: {node: '>=16.20.2'} @@ -439,6 +650,7 @@ packages: resolution: {integrity: sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==} engines: {node: '>=14'} +<<<<<<< HEAD '@rollup/rollup-android-arm-eabi@4.43.0': resolution: {integrity: sha512-Krjy9awJl6rKbruhQDgivNbD1WuLb8xAclM4IR4cN5pHGAs2oIMMQJEiC3IC/9TZJ+QZkmZhlMO/6MBGxPidpw==} cpu: [arm] @@ -536,6 +748,105 @@ packages: '@rollup/rollup-win32-x64-msvc@4.43.0': resolution: {integrity: sha512-SnGhLiE5rlK0ofq8kzuDkM0g7FN1s5VYY+YSMTibP7CqShxCQvqtNxTARS4xX4PFJfHjG0ZQYX9iGzI3FQh5Aw==} +======= + '@rollup/rollup-android-arm-eabi@4.45.1': + resolution: {integrity: sha512-NEySIFvMY0ZQO+utJkgoMiCAjMrGvnbDLHvcmlA33UXJpYBCvlBEbMMtV837uCkS+plG2umfhn0T5mMAxGrlRA==} + cpu: [arm] + os: [android] + + '@rollup/rollup-android-arm64@4.45.1': + resolution: {integrity: sha512-ujQ+sMXJkg4LRJaYreaVx7Z/VMgBBd89wGS4qMrdtfUFZ+TSY5Rs9asgjitLwzeIbhwdEhyj29zhst3L1lKsRQ==} + cpu: [arm64] + os: [android] + + '@rollup/rollup-darwin-arm64@4.45.1': + resolution: {integrity: sha512-FSncqHvqTm3lC6Y13xncsdOYfxGSLnP+73k815EfNmpewPs+EyM49haPS105Rh4aF5mJKywk9X0ogzLXZzN9lA==} + cpu: [arm64] + os: [darwin] + + '@rollup/rollup-darwin-x64@4.45.1': + resolution: {integrity: sha512-2/vVn/husP5XI7Fsf/RlhDaQJ7x9zjvC81anIVbr4b/f0xtSmXQTFcGIQ/B1cXIYM6h2nAhJkdMHTnD7OtQ9Og==} + cpu: [x64] + os: [darwin] + + '@rollup/rollup-freebsd-arm64@4.45.1': + resolution: {integrity: sha512-4g1kaDxQItZsrkVTdYQ0bxu4ZIQ32cotoQbmsAnW1jAE4XCMbcBPDirX5fyUzdhVCKgPcrwWuucI8yrVRBw2+g==} + cpu: [arm64] + os: [freebsd] + + '@rollup/rollup-freebsd-x64@4.45.1': + resolution: {integrity: sha512-L/6JsfiL74i3uK1Ti2ZFSNsp5NMiM4/kbbGEcOCps99aZx3g8SJMO1/9Y0n/qKlWZfn6sScf98lEOUe2mBvW9A==} + cpu: [x64] + os: [freebsd] + + '@rollup/rollup-linux-arm-gnueabihf@4.45.1': + resolution: {integrity: sha512-RkdOTu2jK7brlu+ZwjMIZfdV2sSYHK2qR08FUWcIoqJC2eywHbXr0L8T/pONFwkGukQqERDheaGTeedG+rra6Q==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm-musleabihf@4.45.1': + resolution: {integrity: sha512-3kJ8pgfBt6CIIr1o+HQA7OZ9mp/zDk3ctekGl9qn/pRBgrRgfwiffaUmqioUGN9hv0OHv2gxmvdKOkARCtRb8Q==} + cpu: [arm] + os: [linux] + + '@rollup/rollup-linux-arm64-gnu@4.45.1': + resolution: {integrity: sha512-k3dOKCfIVixWjG7OXTCOmDfJj3vbdhN0QYEqB+OuGArOChek22hn7Uy5A/gTDNAcCy5v2YcXRJ/Qcnm4/ma1xw==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-arm64-musl@4.45.1': + resolution: {integrity: sha512-PmI1vxQetnM58ZmDFl9/Uk2lpBBby6B6rF4muJc65uZbxCs0EA7hhKCk2PKlmZKuyVSHAyIw3+/SiuMLxKxWog==} + cpu: [arm64] + os: [linux] + + '@rollup/rollup-linux-loongarch64-gnu@4.45.1': + resolution: {integrity: sha512-9UmI0VzGmNJ28ibHW2GpE2nF0PBQqsyiS4kcJ5vK+wuwGnV5RlqdczVocDSUfGX/Na7/XINRVoUgJyFIgipoRg==} + cpu: [loong64] + os: [linux] + + '@rollup/rollup-linux-powerpc64le-gnu@4.45.1': + resolution: {integrity: sha512-7nR2KY8oEOUTD3pBAxIBBbZr0U7U+R9HDTPNy+5nVVHDXI4ikYniH1oxQz9VoB5PbBU1CZuDGHkLJkd3zLMWsg==} + cpu: [ppc64] + os: [linux] + + '@rollup/rollup-linux-riscv64-gnu@4.45.1': + resolution: {integrity: sha512-nlcl3jgUultKROfZijKjRQLUu9Ma0PeNv/VFHkZiKbXTBQXhpytS8CIj5/NfBeECZtY2FJQubm6ltIxm/ftxpw==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-riscv64-musl@4.45.1': + resolution: {integrity: sha512-HJV65KLS51rW0VY6rvZkiieiBnurSzpzore1bMKAhunQiECPuxsROvyeaot/tcK3A3aGnI+qTHqisrpSgQrpgA==} + cpu: [riscv64] + os: [linux] + + '@rollup/rollup-linux-s390x-gnu@4.45.1': + resolution: {integrity: sha512-NITBOCv3Qqc6hhwFt7jLV78VEO/il4YcBzoMGGNxznLgRQf43VQDae0aAzKiBeEPIxnDrACiMgbqjuihx08OOw==} + cpu: [s390x] + os: [linux] + + '@rollup/rollup-linux-x64-gnu@4.45.1': + resolution: {integrity: sha512-+E/lYl6qu1zqgPEnTrs4WysQtvc/Sh4fC2nByfFExqgYrqkKWp1tWIbe+ELhixnenSpBbLXNi6vbEEJ8M7fiHw==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-linux-x64-musl@4.45.1': + resolution: {integrity: sha512-a6WIAp89p3kpNoYStITT9RbTbTnqarU7D8N8F2CV+4Cl9fwCOZraLVuVFvlpsW0SbIiYtEnhCZBPLoNdRkjQFw==} + cpu: [x64] + os: [linux] + + '@rollup/rollup-win32-arm64-msvc@4.45.1': + resolution: {integrity: sha512-T5Bi/NS3fQiJeYdGvRpTAP5P02kqSOpqiopwhj0uaXB6nzs5JVi2XMJb18JUSKhCOX8+UE1UKQufyD6Or48dJg==} + cpu: [arm64] + os: [win32] + + '@rollup/rollup-win32-ia32-msvc@4.45.1': + resolution: {integrity: sha512-lxV2Pako3ujjuUe9jiU3/s7KSrDfH6IgTSQOnDWr9aJ92YsFd7EurmClK0ly/t8dzMkDtd04g60WX6yl0sGfdw==} + cpu: [ia32] + os: [win32] + + '@rollup/rollup-win32-x64-msvc@4.45.1': + resolution: {integrity: sha512-M/fKi4sasCdM8i0aWJjCSFm2qEnYRR8AMLG2kxp6wD13+tMGA4Z1tVAuHkNRjud5SW2EM3naLuK35w9twvf6aA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 cpu: [x64] os: [win32] @@ -552,12 +863,13 @@ packages: '@tybys/wasm-util@0.9.0': resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==} - '@types/estree@1.0.7': - resolution: {integrity: sha512-w28IoSUCJpidD/TGviZwwMJckNESJZXFu7NBZ5YJ4mEUnNraUn9Pm8HSZm/jDF1pDWYKspWE7oVphigUPRakIQ==} + '@types/estree@1.0.8': + resolution: {integrity: sha512-dWHzHa2WqEXI/O1E9OjrocMTKJl2mSrEolh1Iomrv6U+JuNwaHXsXx9bLu5gG7BUWFIN0skIQJQ/L1rIex4X6w==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} +<<<<<<< HEAD '@types/node@20.19.0': resolution: {integrity: sha512-hfrc+1tud1xcdVTABC2JiomZJEklMcXYNTVtZLAeqTVWD+qL5jkHKT+1lOtqDdGxt+mB53DTtiz673vfjU8D1Q==} @@ -571,51 +883,104 @@ packages: '@typescript-eslint/parser@8.34.0': resolution: {integrity: sha512-vxXJV1hVFx3IXz/oy2sICsJukaBrtDEQSBiV48/YIV5KWjX1dO+bcIr/kCPrW6weKXvsaGKFNlwH0v2eYdRRbA==} +======= + '@types/node@20.19.9': + resolution: {integrity: sha512-cuVNgarYWZqxRJDQHEB58GEONhOK79QVR/qYx4S7kcUObQvUwvFnYxJuuHUKm2aieN9X3yZB4LZsuYNU1Qphsw==} + + '@typescript-eslint/eslint-plugin@8.37.0': + resolution: {integrity: sha512-jsuVWeIkb6ggzB+wPCsR4e6loj+rM72ohW6IBn2C+5NCvfUVY8s33iFPySSVXqtm5Hu29Ne/9bnA0JmyLmgenA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + '@typescript-eslint/parser': ^8.37.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.9.0' + + '@typescript-eslint/parser@8.37.0': + resolution: {integrity: sha512-kVIaQE9vrN9RLCQMQ3iyRlVJpTiDUY6woHGb30JDkfJErqrQEmtdWH3gV0PBAfGZgQXoqzXOO0T3K6ioApbbAA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/project-service@8.34.0': resolution: {integrity: sha512-iEgDALRf970/B2YExmtPMPF54NenZUf4xpL3wsCRx/lgjz6ul/l13R81ozP/ZNuXfnLCS+oPmG7JIxfdNYKELw==} +======= + '@typescript-eslint/project-service@8.37.0': + resolution: {integrity: sha512-BIUXYsbkl5A1aJDdYJCBAo8rCEbAvdquQ8AnLb6z5Lp1u3x5PNgSSx9A/zqYc++Xnr/0DVpls8iQ2cJs/izTXA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/scope-manager@8.34.0': resolution: {integrity: sha512-9Ac0X8WiLykl0aj1oYQNcLZjHgBojT6cW68yAgZ19letYu+Hxd0rE0veI1XznSSst1X5lwnxhPbVdwjDRIomRw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/tsconfig-utils@8.34.0': resolution: {integrity: sha512-+W9VYHKFIzA5cBeooqQxqNriAP0QeQ7xTiDuIOr71hzgffm3EL2hxwWBIIj4GuofIbKxGNarpKqIq6Q6YrShOA==} +======= + '@typescript-eslint/scope-manager@8.37.0': + resolution: {integrity: sha512-0vGq0yiU1gbjKob2q691ybTg9JX6ShiVXAAfm2jGf3q0hdP6/BruaFjL/ManAR/lj05AvYCH+5bbVo0VtzmjOA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/tsconfig-utils@8.37.0': + resolution: {integrity: sha512-1/YHvAVTimMM9mmlPvTec9NP4bobA1RkDbMydxG8omqwJJLEW/Iy2C4adsAESIXU3WGLXFHSZUU+C9EoFWl4Zg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/type-utils@8.34.0': resolution: {integrity: sha512-n7zSmOcUVhcRYC75W2pnPpbO1iwhJY3NLoHEtbJwJSNlVAZuwqu05zY3f3s2SDWWDSo9FdN5szqc73DCtDObAg==} +======= + '@typescript-eslint/type-utils@8.37.0': + resolution: {integrity: sha512-SPkXWIkVZxhgwSwVq9rqj/4VFo7MnWwVaRNznfQDc/xPYHjXnPfLWn+4L6FF1cAz6e7dsqBeMawgl7QjUMj4Ow==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/types@8.34.0': resolution: {integrity: sha512-9V24k/paICYPniajHfJ4cuAWETnt7Ssy+R0Rbcqo5sSFr3QEZ/8TSoUi9XeXVBGXCaLtwTOKSLGcInCAvyZeMA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@8.34.0': resolution: {integrity: sha512-rOi4KZxI7E0+BMqG7emPSK1bB4RICCpF7QD3KCLXn9ZvWoESsOMlHyZPAHyG04ujVplPaHbmEvs34m+wjgtVtg==} +======= + '@typescript-eslint/types@8.35.1': + resolution: {integrity: sha512-q/O04vVnKHfrrhNAscndAn1tuQhIkwqnaW+eu5waD5IPts2eX1dgJxgqcPx5BX109/qAz7IG6VrEPTOYKCNfRQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/types@8.37.0': + resolution: {integrity: sha512-ax0nv7PUF9NOVPs+lmQ7yIE7IQmAf8LGcXbMvHX5Gm+YJUYNAl340XkGnrimxZ0elXyoQJuN5sbg6C4evKA4SQ==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/typescript-estree@8.37.0': + resolution: {integrity: sha512-zuWDMDuzMRbQOM+bHyU4/slw27bAUEcKSKKs3hcv2aNnc/tvE/h7w60dwVw8vnal2Pub6RT1T7BI8tFZ1fE+yg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/utils@8.34.0': resolution: {integrity: sha512-8L4tWatGchV9A1cKbjaavS6mwYwp39jql8xUmIIKJdm+qiaeHy5KMKlBrf30akXAWBzn2SqKsNOtSENWUwg7XQ==} +======= + '@typescript-eslint/utils@8.37.0': + resolution: {integrity: sha512-TSFvkIW6gGjN2p6zbXo20FzCABbyUAuq6tBvNRGsKdsSQ6a7rnV6ADfZ7f4iI3lIiXc4F4WWvtUfDw9CJ9pO5A==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <5.9.0' +<<<<<<< HEAD '@typescript-eslint/visitor-keys@8.34.0': resolution: {integrity: sha512-qHV7pW7E85A0x6qyrFn+O+q1k1p3tQCsqIZ1KZ5ESLXY57aTvUd3/a4rdPTeXisvhXn2VQG0VSKUqs8KHF2zcA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -712,6 +1077,104 @@ packages: '@unrs/resolver-binding-win32-x64-msvc@1.9.0': resolution: {integrity: sha512-k59o9ZyeyS0hAlcaKFezYSH2agQeRFEB7KoQLXl3Nb3rgkqT1NY9Vwy+SqODiLmYnEjxWJVRE/yq2jFVqdIxZw==} +======= + '@typescript-eslint/visitor-keys@8.37.0': + resolution: {integrity: sha512-YzfhzcTnZVPiLfP/oeKtDp2evwvHLMe0LOy7oe+hb9KKIumLNohYS9Hgp1ifwpu42YWxhZE8yieggz6JpqO/1w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@unrs/resolver-binding-android-arm-eabi@1.9.2': + resolution: {integrity: sha512-tS+lqTU3N0kkthU+rYp0spAYq15DU8ld9kXkaKg9sbQqJNF+WPMuNHZQGCgdxrUOEO0j22RKMwRVhF1HTl+X8A==} + cpu: [arm] + os: [android] + + '@unrs/resolver-binding-android-arm64@1.9.2': + resolution: {integrity: sha512-MffGiZULa/KmkNjHeuuflLVqfhqLv1vZLm8lWIyeADvlElJ/GLSOkoUX+5jf4/EGtfwrNFcEaB8BRas03KT0/Q==} + cpu: [arm64] + os: [android] + + '@unrs/resolver-binding-darwin-arm64@1.9.2': + resolution: {integrity: sha512-dzJYK5rohS1sYl1DHdJ3mwfwClJj5BClQnQSyAgEfggbUwA9RlROQSSbKBLqrGfsiC/VyrDPtbO8hh56fnkbsQ==} + cpu: [arm64] + os: [darwin] + + '@unrs/resolver-binding-darwin-x64@1.9.2': + resolution: {integrity: sha512-gaIMWK+CWtXcg9gUyznkdV54LzQ90S3X3dn8zlh+QR5Xy7Y+Efqw4Rs4im61K1juy4YNb67vmJsCDAGOnIeffQ==} + cpu: [x64] + os: [darwin] + + '@unrs/resolver-binding-freebsd-x64@1.9.2': + resolution: {integrity: sha512-S7QpkMbVoVJb0xwHFwujnwCAEDe/596xqY603rpi/ioTn9VDgBHnCCxh+UFrr5yxuMH+dliHfjwCZJXOPJGPnw==} + cpu: [x64] + os: [freebsd] + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.9.2': + resolution: {integrity: sha512-+XPUMCuCCI80I46nCDFbGum0ZODP5NWGiwS3Pj8fOgsG5/ctz+/zzuBlq/WmGa+EjWZdue6CF0aWWNv84sE1uw==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm-musleabihf@1.9.2': + resolution: {integrity: sha512-sqvUyAd1JUpwbz33Ce2tuTLJKM+ucSsYpPGl2vuFwZnEIg0CmdxiZ01MHQ3j6ExuRqEDUCy8yvkDKvjYFPb8Zg==} + cpu: [arm] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-gnu@1.9.2': + resolution: {integrity: sha512-UYA0MA8ajkEDCFRQdng/FVx3F6szBvk3EPnkTTQuuO9lV1kPGuTB+V9TmbDxy5ikaEgyWKxa4CI3ySjklZ9lFA==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-arm64-musl@1.9.2': + resolution: {integrity: sha512-P/CO3ODU9YJIHFqAkHbquKtFst0COxdphc8TKGL5yCX75GOiVpGqd1d15ahpqu8xXVsqP4MGFP2C3LRZnnL5MA==} + cpu: [arm64] + os: [linux] + + '@unrs/resolver-binding-linux-ppc64-gnu@1.9.2': + resolution: {integrity: sha512-uKStFlOELBxBum2s1hODPtgJhY4NxYJE9pAeyBgNEzHgTqTiVBPjfTlPFJkfxyTjQEuxZbbJlJnMCrRgD7ubzw==} + cpu: [ppc64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-gnu@1.9.2': + resolution: {integrity: sha512-LkbNnZlhINfY9gK30AHs26IIVEZ9PEl9qOScYdmY2o81imJYI4IMnJiW0vJVtXaDHvBvxeAgEy5CflwJFIl3tQ==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-riscv64-musl@1.9.2': + resolution: {integrity: sha512-vI+e6FzLyZHSLFNomPi+nT+qUWN4YSj8pFtQZSFTtmgFoxqB6NyjxSjAxEC1m93qn6hUXhIsh8WMp+fGgxCoRg==} + cpu: [riscv64] + os: [linux] + + '@unrs/resolver-binding-linux-s390x-gnu@1.9.2': + resolution: {integrity: sha512-sSO4AlAYhSM2RAzBsRpahcJB1msc6uYLAtP6pesPbZtptF8OU/CbCPhSRW6cnYOGuVmEmWVW5xVboAqCnWTeHQ==} + cpu: [s390x] + os: [linux] + + '@unrs/resolver-binding-linux-x64-gnu@1.9.2': + resolution: {integrity: sha512-jkSkwch0uPFva20Mdu8orbQjv2A3G88NExTN2oPTI1AJ+7mZfYW3cDCTyoH6OnctBKbBVeJCEqh0U02lTkqD5w==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-linux-x64-musl@1.9.2': + resolution: {integrity: sha512-Uk64NoiTpQbkpl+bXsbeyOPRpUoMdcUqa+hDC1KhMW7aN1lfW8PBlBH4mJ3n3Y47dYE8qi0XTxy1mBACruYBaw==} + cpu: [x64] + os: [linux] + + '@unrs/resolver-binding-wasm32-wasi@1.9.2': + resolution: {integrity: sha512-EpBGwkcjDicjR/ybC0g8wO5adPNdVuMrNalVgYcWi+gYtC1XYNuxe3rufcO7dA76OHGeVabcO6cSkPJKVcbCXQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@unrs/resolver-binding-win32-arm64-msvc@1.9.2': + resolution: {integrity: sha512-EdFbGn7o1SxGmN6aZw9wAkehZJetFPao0VGZ9OMBwKx6TkvDuj6cNeLimF/Psi6ts9lMOe+Dt6z19fZQ9Ye2fw==} + cpu: [arm64] + os: [win32] + + '@unrs/resolver-binding-win32-ia32-msvc@1.9.2': + resolution: {integrity: sha512-JY9hi1p7AG+5c/dMU8o2kWemM8I6VZxfGwn1GCtf3c5i+IKcMo2NQ8OjZ4Z3/itvY/Si3K10jOBQn7qsD/whUA==} + cpu: [ia32] + os: [win32] + + '@unrs/resolver-binding-win32-x64-msvc@1.9.2': + resolution: {integrity: sha512-ryoo+EB19lMxAd80ln9BVf8pdOAxLb97amrQ3SFN9OCRn/5M5wvwDgAe4i8ZjhpbiHoDeP8yavcTEnpKBo7lZg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 cpu: [x64] os: [win32] @@ -741,8 +1204,13 @@ packages: '@vitest/pretty-format@3.1.4': resolution: {integrity: sha512-cqv9H9GvAEoTaoq+cYqUTCGscUjKqlJZC7PRwY5FMySVj5J+xOm1KQcCiYHJOEzOKRUhLH4R2pTwvFlWCEScsg==} +<<<<<<< HEAD '@vitest/pretty-format@3.2.3': resolution: {integrity: sha512-yFglXGkr9hW/yEXngO+IKMhP0jxyFw2/qys/CK4fFUZnSltD+MU7dVYGrH8rvPcK/O6feXQA+EU33gjaBBbAng==} +======= + '@vitest/pretty-format@3.2.4': + resolution: {integrity: sha512-IVNZik8IVRJRTr9fxlitMKeJeXFFFN0JaB9PHPGQ8NKQbGpfjlTx9zO4RefN8gp7eqjNy8nyK3NZmBzOPeIxtA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@vitest/runner@3.1.4': resolution: {integrity: sha512-djTeF1/vt985I/wpKVFBMWUlk/I7mb5hmD5oP8K9ACRmVXgKTae3TUOtXAEBfslNKPzUQvnKhNd34nnRSYgLNQ==} @@ -761,8 +1229,8 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.14.1: - resolution: {integrity: sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg==} + acorn@8.15.0: + resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} engines: {node: '>=0.4.0'} hasBin: true @@ -819,10 +1287,13 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} +<<<<<<< HEAD brace-expansion@4.0.1: resolution: {integrity: sha512-YClrbvTCXGe70pU2JiEiPLYXO9gQkyxYeKpJIQHVS/gOs6EWMQP2RYBwjFLNT322Ji8TOC3IMPfsYCedNpzKfA==} engines: {node: '>= 18'} +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} @@ -856,9 +1327,9 @@ packages: resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} engines: {node: '>=6'} - chai@5.2.0: - resolution: {integrity: sha512-mCuXncKXk5iCLhfhwTc0izo0gtEmpz5CtG2y8GiOINBlMVS6v8TMRc5TaLWKS6692m9+dVVfzgeVxR5UxWHTYw==} - engines: {node: '>=12'} + chai@5.2.1: + resolution: {integrity: sha512-5nFxhUrX0PqtyogoYOA8IPswy5sZFTOsBFl/9bNsmDLgsxYTzSZQJDPppDnZPTQbzSEm0hqGjWPzRemQCYbD6A==} + engines: {node: '>=18'} chalk@4.1.2: resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==} @@ -872,8 +1343,13 @@ packages: resolution: {integrity: sha512-cTZXBcJMl3pudE40WENOakXkcVtrbBpbkmSkM20NdRiUqa4+VYRdXdEsgQ0BNQ6JBE2YymTNWtPKVF7UCTN5+g==} hasBin: true +<<<<<<< HEAD changelogithub@13.15.0: resolution: {integrity: sha512-qPQ896hrTKXYHzFTH1c1O4KRfk4IwxOp22fKBUBGYqcB13z8B6bNoViSX50Z6SbmcQjHLHwyOMfACJVn74x5LA==} +======= + changelogithub@13.16.0: + resolution: {integrity: sha512-O+OiuYG/JgUGENXt6M+eyjLBtGYwUPL5SqKU/9sngZS14fJ3LCIU7xPdWJoyzjAixGYwjuVLC1tZFbboxZ7zbQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=12.0.0'} hasBin: true @@ -930,16 +1406,8 @@ packages: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - debug@3.2.7: - resolution: {integrity: sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - debug@4.4.0: - resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} engines: {node: '>=6.0'} peerDependencies: supports-color: '*' @@ -981,11 +1449,11 @@ packages: deprecation@2.3.1: resolution: {integrity: sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==} - destr@2.0.3: - resolution: {integrity: sha512-2N3BOUU4gYMpTP24s5rF5iP7BDr7uNTCs4ozw3kf/eKfvWSIu93GEBi5m427YoyJoeOzQ5smuu4nNAPGb8idSQ==} + destr@2.0.5: + resolution: {integrity: sha512-ugFTXCtDZunbzasqBxrK93Ik/DRYsO6S/fedkWEMKqt04xZ4csmnmwGDBAb07QWNaGMAmnTIemsYZCksjATwsA==} - dotenv@16.4.7: - resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==} + dotenv@16.6.1: + resolution: {integrity: sha512-uBq4egWHTcTt33a72vpSG0z3HnPuIl6NqYcTrKEg2azoEyl2hpW0zqlxysq2pK9HlDIHyHyakeYaYnSAwd8bow==} engines: {node: '>=12'} dotenv@16.5.0: @@ -1004,8 +1472,13 @@ packages: es-module-lexer@1.7.0: resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} +<<<<<<< HEAD esbuild@0.25.5: resolution: {integrity: sha512-P8OtKZRv/5J5hhz0cUAdu/cLuPIKXpQl1R9pZtvmHWQvrAUVd0UNIPT4IB4W3rNOqVO0rlqHmCIbSwxh/c9yUQ==} +======= + esbuild@0.25.8: + resolution: {integrity: sha512-vVC0USHGtMi8+R4Kz8rt6JhEWLxsv9Rnu/lGYbPR8u47B+DCBksq9JarW0zOO7bs37hyOK1l2/oqtbciutL5+Q==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18'} hasBin: true @@ -1019,20 +1492,31 @@ packages: peerDependencies: eslint: '>=7.0.0' +<<<<<<< HEAD eslint-import-context@0.1.8: resolution: {integrity: sha512-bq+F7nyc65sKpZGT09dY0S0QrOnQtuDVIfyTGQ8uuvtMIF7oHp6CEP3mouN0rrnYF3Jqo6Ke0BfU/5wASZue1w==} +======= + eslint-import-context@0.1.9: + resolution: {integrity: sha512-K9Hb+yRaGAGUbwjhFNHvSmmkZs9+zbuoe3kFQ4V1wYjrepUFYM2dZAfNtjbbj3qsPfUfsA68Bx/ICWQMi+C8Eg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} peerDependencies: unrs-resolver: ^1.0.0 peerDependenciesMeta: unrs-resolver: optional: true +<<<<<<< HEAD eslint-import-resolver-node@0.3.9: resolution: {integrity: sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==} eslint-import-resolver-typescript@4.4.3: resolution: {integrity: sha512-elVDn1eWKFrWlzxlWl9xMt8LltjKl161Ix50JFC50tHXI5/TRP32SNEqlJ/bo/HV+g7Rou/tlPQU2AcRtIhrOg==} +======= + + eslint-import-resolver-typescript@4.4.4: + resolution: {integrity: sha512-1iM2zeBvrYmUNTj2vSC/90JTHDth+dfOfiNKkxApWRsTJYNrc8rOdxxIf5vazX+BiAXTeOT0UvWpGI/7qIWQOw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^16.17.0 || >=18.6.0} peerDependencies: eslint: '*' @@ -1044,8 +1528,13 @@ packages: eslint-plugin-import-x: optional: true +<<<<<<< HEAD eslint-plugin-import-x@4.15.2: resolution: {integrity: sha512-J5gx7sN6DTm0LRT//eP3rVVQ2Yi4hrX0B+DbWxa5er8PZ6JjLo9GUBwogIFvEDdwJaSqZplpQT+haK/cXhb7VQ==} +======= + eslint-plugin-import-x@4.16.1: + resolution: {integrity: sha512-vPZZsiOKaBAIATpFE2uMI4w5IRwdv/FpQ+qZZMR4E+PeOcM4OeoEbqxRMnywdxP19TyB/3h6QBB0EWon7letSQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/utils': ^8.0.0 @@ -1057,20 +1546,25 @@ packages: eslint-import-resolver-node: optional: true - eslint-scope@8.3.0: - resolution: {integrity: sha512-pUNxi75F8MJ/GdeKtVLSbYg4ZI34J6C0C7sbL4YOp2exGwen7ZsuBqKzUhXd0qMQ362yET3z+uPwKeg/0C2XCQ==} + eslint-scope@8.4.0: + resolution: {integrity: sha512-sNXOfKCn74rt8RICKMvJS7XKV/Xk9kA7DyJr8mJik3S7Cwgy3qlkkmyS2uQB3jiJg6VNdZd/pDBJu0nvG2NlTg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} eslint-visitor-keys@3.4.3: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-visitor-keys@4.2.0: - resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + eslint-visitor-keys@4.2.1: + resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} +<<<<<<< HEAD eslint@9.28.0: resolution: {integrity: sha512-ocgh41VhRlf9+fVpe7QKzwLj9c92fDiqOj8Y3Sd4/ZmVA4Btx4PlUYPq4pp9JDyupkf1upbEXecxL2mwNV7jPQ==} +======= + eslint@9.31.0: + resolution: {integrity: sha512-QldCVh/ztyKJJZLr4jXNUByx3gR+TDYZCRXEktiZoUR3PGy4qCmSbkxcIle8GEwGpb5JBZazlaJ/CxLidXdEbQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true peerDependencies: @@ -1079,8 +1573,8 @@ packages: jiti: optional: true - espree@10.3.0: - resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + espree@10.4.0: + resolution: {integrity: sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} esquery@1.6.0: @@ -1106,12 +1600,17 @@ packages: resolution: {integrity: sha512-jpWzZ1ZhwUmeWRhS7Qv3mhpOhLfwI+uAX4e5fOcXqwMR7EcJ0pj2kV1CVzHVMX/LphnKWD3LObjZCoJ71lKpHw==} engines: {node: ^18.19.0 || >=20.5.0} - expect-type@1.2.1: - resolution: {integrity: sha512-/kP8CAwxzLVEeFrMm4kMmy4CCDlpipyA7MYLVrdJIkV0fYF0UaigQHRsxHiuY/GEea+bh4KSv3TIlgr+2UL6bw==} + expect-type@1.2.2: + resolution: {integrity: sha512-JhFGDVJ7tmDJItKhYgJCGLOWjuK9vPxiXoUFLwLDc99NlmklilbiQJwoctZtt13+xMw91MCk/REan6MWHqDjyA==} engines: {node: '>=12.0.0'} +<<<<<<< HEAD exsolve@1.0.5: resolution: {integrity: sha512-pz5dvkYYKQ1AHVrgOzBKWeP4u4FRb3a6DNK2ucr0OoNwYIU4QWsJ+NM36LLzORT+z845MzKHHhpXiUF5nvQoJg==} +======= + exsolve@1.0.7: + resolution: {integrity: sha512-VO5fQUzZtI6C+vx4w/4BWJpg3s/5l+6pRQEHzFRM8WFi4XffSP1Z+4qi7GbjWbvRQEbdIco5mIMq+zX4rPuLrw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -1129,8 +1628,8 @@ packages: fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fdir@6.4.4: - resolution: {integrity: sha512-1NZP+GK4GfuAv3PqKvxQRDMjdSRZjnkq7KfhlNrCNNlZ0ygQFpebfrnfnq/W7fpUnAv9aGWmY1zKx7FYL3gwhg==} + fdir@6.4.6: + resolution: {integrity: sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -1173,9 +1672,6 @@ packages: engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} os: [darwin] - function-bind@1.1.2: - resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - get-stream@9.0.1: resolution: {integrity: sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==} engines: {node: '>=18'} @@ -1214,10 +1710,6 @@ packages: resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} engines: {node: '>=8'} - hasown@2.0.2: - resolution: {integrity: sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==} - engines: {node: '>= 0.4'} - html-escaper@2.0.2: resolution: {integrity: sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==} @@ -1248,10 +1740,6 @@ packages: is-bun-module@2.0.0: resolution: {integrity: sha512-gNCGbnnnnFAUGKeZ9PdbyeGYJqewpmc2aKHUEMO5nQPWU9lOmv7jcmQIv+qHD8fXW6W7qfuCwX4rY9LNRjXrkQ==} - is-core-module@2.16.1: - resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==} - engines: {node: '>= 0.4'} - is-docker@3.0.0: resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -1351,8 +1839,8 @@ packages: lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} - loupe@3.1.3: - resolution: {integrity: sha512-kkIp7XSkP78ZxJEsSxW3712C6teJVoeHHwgo9zJ380de7IYyJ2ISlxojcH2pC5OFLewESmnRi/+XCDIEEVyoug==} + loupe@3.1.4: + resolution: {integrity: sha512-wJzkKwJrheKtknCOKNEtDK4iqg/MxmZheEMtSTYvnzRdEYaZzmgH976nenp8WdJRdx5Vc1X/9MO0Oszl6ezeXg==} lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} @@ -1375,8 +1863,13 @@ packages: resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==} engines: {node: '>=8.6'} +<<<<<<< HEAD minimatch@10.0.2: resolution: {integrity: sha512-+9TJCIYXgZ2Dm5LxVCFsa8jOm+evMwXHFI0JM1XROmkfkpz8/iLLDh+TwSmyIBrs6C6Xu9294/fq8cBA+P6AqA==} +======= + minimatch@10.0.3: + resolution: {integrity: sha512-IPZ167aShDZZUMdRk66cyQAW3qr0WzbHkPdMYa8bzZhlHhO3jALbKdxcaak7W9FfT2rZNpQuUu4Od7ILEpXSaw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: 20 || >=22} minimatch@3.1.2: @@ -1422,8 +1915,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - napi-postinstall@0.2.3: - resolution: {integrity: sha512-Mi7JISo/4Ij2tDZ2xBE2WH+/KvVlkhA6juEjpEeRAVPNCpN3nxJo/5FhDNKgBcdmcmhaH6JjgST4xY/23ZYK0w==} + napi-postinstall@0.2.5: + resolution: {integrity: sha512-kmsgUvCRIJohHjbZ3V8avP0I1Pekw329MVAMDzVxsrkjgdnqiwvMX5XwR+hWV66vsAtZ+iM+fVnq8RTQawUmCQ==} engines: {node: ^12.20.0 || ^14.18.0 || >=16.0.0} hasBin: true @@ -1463,8 +1956,8 @@ packages: once@1.4.0: resolution: {integrity: sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==} - open@10.1.0: - resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==} + open@10.1.2: + resolution: {integrity: sha512-cxN6aIDPz6rm8hbebcP7vrQNhvRcveZoJU72Y7vskh4oIm+BZwBECnx5nTmrlres1Qapvx27Qo1Auukpf8PKXw==} engines: {node: '>=18'} optionator@0.9.4: @@ -1502,9 +1995,6 @@ packages: resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} engines: {node: '>=12'} - path-parse@1.0.7: - resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} - path-scurry@1.11.1: resolution: {integrity: sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==} engines: {node: '>=16 || 14 >=14.18'} @@ -1515,8 +2005,8 @@ packages: pathe@2.0.3: resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} - pathval@2.0.0: - resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} + pathval@2.0.1: + resolution: {integrity: sha512-//nshmD55c46FuFw26xV/xFAaB5HF9Xdap7HJBBnrKdAd6/GxDBaNA1870O79+9ueg61cZLSVc+OaFlfmObYVQ==} engines: {node: '>= 14.16'} perfect-debounce@1.0.0: @@ -1536,19 +2026,24 @@ packages: pkg-types@1.3.1: resolution: {integrity: sha512-/Jm5M4RvtBFVkKWRu2BLUTNP8/M2a+UwuAX+ae4770q1qVGtfjG+WTCupoZixokjmHiry8uI+dlY8KXYV5HVVQ==} - pkg-types@2.1.0: - resolution: {integrity: sha512-wmJwA+8ihJixSoHKxZJRBQG1oY8Yr9pGLzRmSsNms0iNWyHHAlZCa7mmKiFR10YPZuz/2k169JiS/inOjBCZ2A==} + pkg-types@2.2.0: + resolution: {integrity: sha512-2SM/GZGAEkPp3KWORxQZns4M+WSeXbC2HEvmOIJe3Cmiv6ieAJvdVhDldtHqM5J1Y7MrR1XhkBT/rMlhh9FdqQ==} +<<<<<<< HEAD postcss@8.5.5: resolution: {integrity: sha512-d/jtm+rdNT8tpXuHY5MMtcbJFBkhXE6593XVR9UoGCH8jSFGci7jGvMGH5RYd5PBJW+00NZQt6gf7CbagJCrhg==} +======= + postcss@8.5.6: + resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} - prettier@3.5.3: - resolution: {integrity: sha512-QQtaxnoDJeAkDvDKWCLiwIXkTgRhwYDEQCghU9Z6q03iyek/rxRh/2lC3HB7P8sWT2xC/y5JDctPLBIGzHKbhw==} + prettier@3.6.2: + resolution: {integrity: sha512-I7AIg5boAr5R0FFtJ6rCfD+LFsWHp81dolrFD8S79U9tb8Az2nGrJncnMSnys+bpQJfRUzqs9hnA81OAA3hCuQ==} engines: {node: '>=14'} hasBin: true @@ -1581,17 +2076,17 @@ packages: resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - resolve@1.22.10: - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} - engines: {node: '>= 0.4'} - hasBin: true - reusify@1.1.0: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} +<<<<<<< HEAD rollup@4.43.0: resolution: {integrity: sha512-wdN2Kd3Twh8MAEOEJZsuxuLKCsBEo4PVNLK6tQWAn10VhsVewQLzcucMgLolRlhFybGxfclbPeEYBaP6RvUFGg==} +======= + rollup@4.45.1: + resolution: {integrity: sha512-4iya7Jb76fVpQyLoiVpzUrsjQ12r3dM7fIVz+4NwoYvZOShknRmiv+iu9CClZml5ZLGb0XMcYLutK6w9tgxHDw==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -1629,8 +2124,13 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} +<<<<<<< HEAD stable-hash-x@0.1.1: resolution: {integrity: sha512-l0x1D6vhnsNUGPFVDx45eif0y6eedVC8nm5uACTrVFJFtl2mLRW17aWtVyxFCpn5t94VUPkjU8vSLwIuwwqtJQ==} +======= + stable-hash-x@0.2.0: + resolution: {integrity: sha512-o3yWv49B/o4QZk5ZcsALc6t0+eCelPc44zZsLtCQnZPDwFpDYSWcDnrv2TtMmMbQ7uKo3J0HTURCqckw23czNQ==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: '>=12.0.0'} stackback@0.0.2: @@ -1667,10 +2167,6 @@ packages: resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} engines: {node: '>=8'} - supports-preserve-symlinks-flag@1.0.0: - resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} - engines: {node: '>= 0.4'} - tar@6.2.1: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} @@ -1689,8 +2185,13 @@ packages: resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} engines: {node: '>=12.0.0'} +<<<<<<< HEAD tinypool@1.1.0: resolution: {integrity: sha512-7CotroY9a8DKsKprEy/a14aCCm8jYVmR7aFy4fpkZM8sdpNJbKkixuNjgM50yCmip2ezc8z4N7k3oe2+rfRJCQ==} +======= + tinypool@1.1.1: + resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.0.0 || >=20.0.0} tinyrainbow@2.0.0: @@ -1722,8 +2223,13 @@ packages: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} +<<<<<<< HEAD typescript-eslint@8.34.0: resolution: {integrity: sha512-MRpfN7uYjTrTGigFCt8sRyNqJFhjN0WwZecldaqhWm+wy0gaRt8Edb/3cuUy0zdq2opJWT6iXINKAtewnDOltQ==} +======= + typescript-eslint@8.37.0: + resolution: {integrity: sha512-TnbEjzkE9EmcO0Q2zM+GE8NQLItNAJpMmED1BdgoBMYNdqMhzlbqfdSwiRlAzEK2pA9UzVW0gzaaIzXWg2BjfA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -1734,8 +2240,8 @@ packages: engines: {node: '>=14.17'} hasBin: true - ufo@1.5.4: - resolution: {integrity: sha512-UsUk3byDzKd04EyoZ7U4DOlxQaD14JUKQl6/P7wiX4FNvUfm3XL246n9W5AmqwW5RSFJ27NAuM0iLscAOYUiGQ==} + ufo@1.6.1: + resolution: {integrity: sha512-9a4/uxlTWJ4+a5i0ooc1rU7C7YOw3wT+UGqdeNNHWnOF9qcMBgLRS+4IYUqbczewFx4mLEig6gawh7X6mFlEkA==} undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} @@ -1751,8 +2257,13 @@ packages: universal-user-agent@6.0.1: resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==} +<<<<<<< HEAD unrs-resolver@1.9.0: resolution: {integrity: sha512-wqaRu4UnzBD2ABTC1kLfBjAqIDZ5YUTr/MLGa7By47JV1bJDSW7jq/ZSLigB7enLe7ubNaJhtnBXgrc/50cEhg==} +======= + unrs-resolver@1.9.2: + resolution: {integrity: sha512-VUyWiTNQD7itdiMuJy+EuLEErLj3uwX/EpHQF8EOf33Dq3Ju6VW1GXm+swk6+1h7a49uv9fKZ+dft9jU7esdLA==} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} @@ -1858,9 +2369,9 @@ packages: yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} - yaml@2.7.1: - resolution: {integrity: sha512-10ULxpnOCQXxJvBgxsn9ptjq6uviG/htZKk9veJGhlqn3w/DxQ631zFF+nlQXLwmImeS5amR2dl2U8sg6U9jsQ==} - engines: {node: '>= 14'} + yaml@2.8.0: + resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} + engines: {node: '>= 14.6'} hasBin: true yocto-queue@0.1.0: @@ -1901,21 +2412,21 @@ snapshots: '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.8 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/gen-mapping': 0.3.12 + '@jridgewell/trace-mapping': 0.3.29 - '@babel/helper-string-parser@7.25.9': {} + '@babel/helper-string-parser@7.27.1': {} - '@babel/helper-validator-identifier@7.25.9': {} + '@babel/helper-validator-identifier@7.27.1': {} - '@babel/parser@7.27.0': + '@babel/parser@7.27.7': dependencies: - '@babel/types': 7.27.0 + '@babel/types': 7.27.7 - '@babel/types@7.27.0': + '@babel/types@7.27.7': dependencies: - '@babel/helper-string-parser': 7.25.9 - '@babel/helper-validator-identifier': 7.25.9 + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 '@bcoe/v8-coverage@1.0.2': {} @@ -1935,6 +2446,7 @@ snapshots: tslib: 2.8.1 optional: true +<<<<<<< HEAD '@esbuild/aix-ppc64@0.25.5': optional: true @@ -2018,11 +2530,94 @@ snapshots: '@eslint-community/eslint-utils@4.7.0(eslint@9.28.0(jiti@2.4.2))': dependencies: eslint: 9.28.0(jiti@2.4.2) +======= + '@esbuild/aix-ppc64@0.25.8': + optional: true + + '@esbuild/android-arm64@0.25.8': + optional: true + + '@esbuild/android-arm@0.25.8': + optional: true + + '@esbuild/android-x64@0.25.8': + optional: true + + '@esbuild/darwin-arm64@0.25.8': + optional: true + + '@esbuild/darwin-x64@0.25.8': + optional: true + + '@esbuild/freebsd-arm64@0.25.8': + optional: true + + '@esbuild/freebsd-x64@0.25.8': + optional: true + + '@esbuild/linux-arm64@0.25.8': + optional: true + + '@esbuild/linux-arm@0.25.8': + optional: true + + '@esbuild/linux-ia32@0.25.8': + optional: true + + '@esbuild/linux-loong64@0.25.8': + optional: true + + '@esbuild/linux-mips64el@0.25.8': + optional: true + + '@esbuild/linux-ppc64@0.25.8': + optional: true + + '@esbuild/linux-riscv64@0.25.8': + optional: true + + '@esbuild/linux-s390x@0.25.8': + optional: true + + '@esbuild/linux-x64@0.25.8': + optional: true + + '@esbuild/netbsd-arm64@0.25.8': + optional: true + + '@esbuild/netbsd-x64@0.25.8': + optional: true + + '@esbuild/openbsd-arm64@0.25.8': + optional: true + + '@esbuild/openbsd-x64@0.25.8': + optional: true + + '@esbuild/openharmony-arm64@0.25.8': + optional: true + + '@esbuild/sunos-x64@0.25.8': + optional: true + + '@esbuild/win32-arm64@0.25.8': + optional: true + + '@esbuild/win32-ia32@0.25.8': + optional: true + + '@esbuild/win32-x64@0.25.8': + optional: true + + '@eslint-community/eslint-utils@4.7.0(eslint@9.31.0(jiti@2.4.2))': + dependencies: + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.1': {} - '@eslint/config-array@0.20.0': + '@eslint/config-array@0.21.0': dependencies: '@eslint/object-schema': 2.1.6 debug: 4.4.1 @@ -2030,9 +2625,13 @@ snapshots: transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.2.1': {} + '@eslint/config-helpers@0.3.0': {} +<<<<<<< HEAD '@eslint/core@0.14.0': +======= + '@eslint/core@0.15.1': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: '@types/json-schema': 7.0.15 @@ -2040,7 +2639,11 @@ snapshots: dependencies: ajv: 6.12.6 debug: 4.4.1 +<<<<<<< HEAD espree: 10.3.0 +======= + espree: 10.4.0 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 globals: 14.0.0 ignore: 5.3.2 import-fresh: 3.3.1 @@ -2050,6 +2653,7 @@ snapshots: transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@eslint/js@9.28.0': {} '@eslint/object-schema@2.1.6': {} @@ -2057,6 +2661,15 @@ snapshots: '@eslint/plugin-kit@0.3.1': dependencies: '@eslint/core': 0.14.0 +======= + '@eslint/js@9.31.0': {} + + '@eslint/object-schema@2.1.6': {} + + '@eslint/plugin-kit@0.3.3': + dependencies: + '@eslint/core': 0.15.1 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 levn: 0.4.1 '@fastify/busboy@2.1.1': {} @@ -2072,7 +2685,13 @@ snapshots: '@humanwhocodes/retry@0.3.1': {} - '@humanwhocodes/retry@0.4.2': {} + '@humanwhocodes/retry@0.4.3': {} + + '@isaacs/balanced-match@4.0.1': {} + + '@isaacs/brace-expansion@5.0.0': + dependencies: + '@isaacs/balanced-match': 4.0.1 '@isaacs/cliui@8.0.2': dependencies: @@ -2085,22 +2704,19 @@ snapshots: '@istanbuljs/schema@0.1.3': {} - '@jridgewell/gen-mapping@0.3.8': + '@jridgewell/gen-mapping@0.3.12': dependencies: - '@jridgewell/set-array': 1.2.1 - '@jridgewell/sourcemap-codec': 1.5.0 - '@jridgewell/trace-mapping': 0.3.25 + '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/trace-mapping': 0.3.29 '@jridgewell/resolve-uri@3.1.2': {} - '@jridgewell/set-array@1.2.1': {} + '@jridgewell/sourcemap-codec@1.5.4': {} - '@jridgewell/sourcemap-codec@1.5.0': {} - - '@jridgewell/trace-mapping@0.3.25': + '@jridgewell/trace-mapping@0.3.29': dependencies: '@jridgewell/resolve-uri': 3.1.2 - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.5.4 '@napi-rs/wasm-runtime@0.2.11': dependencies: @@ -2148,6 +2764,8 @@ snapshots: '@octokit/openapi-types@24.2.0': {} + '@octokit/openapi-types@25.1.0': {} + '@octokit/plugin-paginate-rest@9.2.2(@octokit/core@5.2.1)': dependencies: '@octokit/core': 5.2.1 @@ -2179,11 +2797,16 @@ snapshots: dependencies: '@octokit/openapi-types': 24.2.0 + '@octokit/types@14.1.0': + dependencies: + '@octokit/openapi-types': 25.1.0 + '@opentf/std@0.13.0': {} '@pkgjs/parseargs@0.11.0': optional: true +<<<<<<< HEAD '@rollup/rollup-android-arm-eabi@4.43.0': optional: true @@ -2242,6 +2865,66 @@ snapshots: optional: true '@rollup/rollup-win32-x64-msvc@4.43.0': +======= + '@rollup/rollup-android-arm-eabi@4.45.1': + optional: true + + '@rollup/rollup-android-arm64@4.45.1': + optional: true + + '@rollup/rollup-darwin-arm64@4.45.1': + optional: true + + '@rollup/rollup-darwin-x64@4.45.1': + optional: true + + '@rollup/rollup-freebsd-arm64@4.45.1': + optional: true + + '@rollup/rollup-freebsd-x64@4.45.1': + optional: true + + '@rollup/rollup-linux-arm-gnueabihf@4.45.1': + optional: true + + '@rollup/rollup-linux-arm-musleabihf@4.45.1': + optional: true + + '@rollup/rollup-linux-arm64-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-arm64-musl@4.45.1': + optional: true + + '@rollup/rollup-linux-loongarch64-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-powerpc64le-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-riscv64-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-riscv64-musl@4.45.1': + optional: true + + '@rollup/rollup-linux-s390x-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-x64-gnu@4.45.1': + optional: true + + '@rollup/rollup-linux-x64-musl@4.45.1': + optional: true + + '@rollup/rollup-win32-arm64-msvc@4.45.1': + optional: true + + '@rollup/rollup-win32-ia32-msvc@4.45.1': + optional: true + + '@rollup/rollup-win32-x64-msvc@4.45.1': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 optional: true '@sec-ant/readable-stream@0.4.1': {} @@ -2255,10 +2938,11 @@ snapshots: tslib: 2.8.1 optional: true - '@types/estree@1.0.7': {} + '@types/estree@1.0.8': {} '@types/json-schema@7.0.15': {} +<<<<<<< HEAD '@types/node@20.19.0': dependencies: undici-types: 6.21.0 @@ -2272,6 +2956,21 @@ snapshots: '@typescript-eslint/utils': 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/visitor-keys': 8.34.0 eslint: 9.28.0(jiti@2.4.2) +======= + '@types/node@20.19.9': + dependencies: + undici-types: 6.21.0 + + '@typescript-eslint/eslint-plugin@8.37.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@eslint-community/regexpp': 4.12.1 + '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/scope-manager': 8.37.0 + '@typescript-eslint/type-utils': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/utils': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/visitor-keys': 8.37.0 + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 graphemer: 1.4.0 ignore: 7.0.5 natural-compare: 1.4.0 @@ -2280,6 +2979,7 @@ snapshots: transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/parser@8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 8.34.0 @@ -2288,19 +2988,37 @@ snapshots: '@typescript-eslint/visitor-keys': 8.34.0 debug: 4.4.1 eslint: 9.28.0(jiti@2.4.2) +======= + '@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@typescript-eslint/scope-manager': 8.37.0 + '@typescript-eslint/types': 8.37.0 + '@typescript-eslint/typescript-estree': 8.37.0(typescript@5.8.3) + '@typescript-eslint/visitor-keys': 8.37.0 + debug: 4.4.1 + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 typescript: 5.8.3 transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/project-service@8.34.0(typescript@5.8.3)': dependencies: '@typescript-eslint/tsconfig-utils': 8.34.0(typescript@5.8.3) '@typescript-eslint/types': 8.34.0 +======= + '@typescript-eslint/project-service@8.37.0(typescript@5.8.3)': + dependencies: + '@typescript-eslint/tsconfig-utils': 8.37.0(typescript@5.8.3) + '@typescript-eslint/types': 8.37.0 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 debug: 4.4.1 typescript: 5.8.3 transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/scope-manager@8.34.0': dependencies: '@typescript-eslint/types': 8.34.0 @@ -2316,11 +3034,30 @@ snapshots: '@typescript-eslint/utils': 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) debug: 4.4.1 eslint: 9.28.0(jiti@2.4.2) +======= + '@typescript-eslint/scope-manager@8.37.0': + dependencies: + '@typescript-eslint/types': 8.37.0 + '@typescript-eslint/visitor-keys': 8.37.0 + + '@typescript-eslint/tsconfig-utils@8.37.0(typescript@5.8.3)': + dependencies: + typescript: 5.8.3 + + '@typescript-eslint/type-utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@typescript-eslint/types': 8.37.0 + '@typescript-eslint/typescript-estree': 8.37.0(typescript@5.8.3) + '@typescript-eslint/utils': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + debug: 4.4.1 + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 ts-api-utils: 2.1.0(typescript@5.8.3) typescript: 5.8.3 transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/types@8.34.0': {} '@typescript-eslint/typescript-estree@8.34.0(typescript@5.8.3)': @@ -2329,6 +3066,18 @@ snapshots: '@typescript-eslint/tsconfig-utils': 8.34.0(typescript@5.8.3) '@typescript-eslint/types': 8.34.0 '@typescript-eslint/visitor-keys': 8.34.0 +======= + '@typescript-eslint/types@8.35.1': {} + + '@typescript-eslint/types@8.37.0': {} + + '@typescript-eslint/typescript-estree@8.37.0(typescript@5.8.3)': + dependencies: + '@typescript-eslint/project-service': 8.37.0(typescript@5.8.3) + '@typescript-eslint/tsconfig-utils': 8.37.0(typescript@5.8.3) + '@typescript-eslint/types': 8.37.0 + '@typescript-eslint/visitor-keys': 8.37.0 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 debug: 4.4.1 fast-glob: 3.3.3 is-glob: 4.0.3 @@ -2339,6 +3088,7 @@ snapshots: transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/utils@8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.7.0(eslint@9.28.0(jiti@2.4.2)) @@ -2346,10 +3096,20 @@ snapshots: '@typescript-eslint/types': 8.34.0 '@typescript-eslint/typescript-estree': 8.34.0(typescript@5.8.3) eslint: 9.28.0(jiti@2.4.2) +======= + '@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3)': + dependencies: + '@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2)) + '@typescript-eslint/scope-manager': 8.37.0 + '@typescript-eslint/types': 8.37.0 + '@typescript-eslint/typescript-estree': 8.37.0(typescript@5.8.3) + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 typescript: 5.8.3 transitivePeerDependencies: - supports-color +<<<<<<< HEAD '@typescript-eslint/visitor-keys@8.34.0': dependencies: '@typescript-eslint/types': 8.34.0 @@ -2401,10 +3161,64 @@ snapshots: optional: true '@unrs/resolver-binding-wasm32-wasi@1.9.0': +======= + '@typescript-eslint/visitor-keys@8.37.0': + dependencies: + '@typescript-eslint/types': 8.37.0 + eslint-visitor-keys: 4.2.1 + + '@unrs/resolver-binding-android-arm-eabi@1.9.2': + optional: true + + '@unrs/resolver-binding-android-arm64@1.9.2': + optional: true + + '@unrs/resolver-binding-darwin-arm64@1.9.2': + optional: true + + '@unrs/resolver-binding-darwin-x64@1.9.2': + optional: true + + '@unrs/resolver-binding-freebsd-x64@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-arm-gnueabihf@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-arm-musleabihf@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-arm64-gnu@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-arm64-musl@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-ppc64-gnu@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-riscv64-gnu@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-riscv64-musl@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-s390x-gnu@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-x64-gnu@1.9.2': + optional: true + + '@unrs/resolver-binding-linux-x64-musl@1.9.2': + optional: true + + '@unrs/resolver-binding-wasm32-wasi@1.9.2': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: '@napi-rs/wasm-runtime': 0.2.11 optional: true +<<<<<<< HEAD '@unrs/resolver-binding-win32-arm64-msvc@1.9.0': optional: true @@ -2415,6 +3229,18 @@ snapshots: optional: true '@vitest/coverage-v8@3.1.4(vitest@3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1))': +======= + '@unrs/resolver-binding-win32-arm64-msvc@1.9.2': + optional: true + + '@unrs/resolver-binding-win32-ia32-msvc@1.9.2': + optional: true + + '@unrs/resolver-binding-win32-x64-msvc@1.9.2': + optional: true + + '@vitest/coverage-v8@3.1.4(vitest@3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0))': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 @@ -2428,7 +3254,11 @@ snapshots: std-env: 3.9.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 +<<<<<<< HEAD vitest: 3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1) +======= + vitest: 3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 transitivePeerDependencies: - supports-color @@ -2436,22 +3266,37 @@ snapshots: dependencies: '@vitest/spy': 3.1.4 '@vitest/utils': 3.1.4 +<<<<<<< HEAD chai: 5.2.0 tinyrainbow: 2.0.0 '@vitest/mocker@3.1.4(vite@6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1))': +======= + chai: 5.2.1 + tinyrainbow: 2.0.0 + + '@vitest/mocker@3.1.4(vite@6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0))': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: '@vitest/spy': 3.1.4 estree-walker: 3.0.3 magic-string: 0.30.17 optionalDependencies: +<<<<<<< HEAD vite: 6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1) +======= + vite: 6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@vitest/pretty-format@3.1.4': dependencies: tinyrainbow: 2.0.0 +<<<<<<< HEAD '@vitest/pretty-format@3.2.3': +======= + '@vitest/pretty-format@3.2.4': +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: tinyrainbow: 2.0.0 @@ -2473,14 +3318,18 @@ snapshots: '@vitest/utils@3.1.4': dependencies: '@vitest/pretty-format': 3.1.4 +<<<<<<< HEAD loupe: 3.1.3 +======= + loupe: 3.1.4 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 tinyrainbow: 2.0.0 - acorn-jsx@5.3.2(acorn@8.14.1): + acorn-jsx@5.3.2(acorn@8.15.0): dependencies: - acorn: 8.14.1 + acorn: 8.15.0 - acorn@8.14.1: {} + acorn@8.15.0: {} ajv@6.12.6: dependencies: @@ -2544,7 +3393,7 @@ snapshots: chokidar: 3.6.0 confbox: 0.1.8 defu: 6.1.4 - dotenv: 16.4.7 + dotenv: 16.6.1 giget: 1.2.5 jiti: 1.21.7 mlly: 1.7.4 @@ -2561,14 +3410,19 @@ snapshots: chokidar: 4.0.3 confbox: 0.2.2 defu: 6.1.4 +<<<<<<< HEAD dotenv: 16.5.0 exsolve: 1.0.5 +======= + dotenv: 16.6.1 + exsolve: 1.0.7 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 giget: 2.0.0 jiti: 2.4.2 ohash: 2.0.11 pathe: 2.0.3 perfect-debounce: 1.0.0 - pkg-types: 2.1.0 + pkg-types: 2.2.0 rc9: 2.1.2 optionalDependencies: magicast: 0.3.5 @@ -2577,13 +3431,13 @@ snapshots: callsites@3.1.0: {} - chai@5.2.0: + chai@5.2.1: dependencies: assertion-error: 2.0.1 check-error: 2.1.1 deep-eql: 5.0.2 - loupe: 3.1.3 - pathval: 2.0.0 + loupe: 3.1.4 + pathval: 2.0.1 chalk@4.1.2: dependencies: @@ -2601,17 +3455,25 @@ snapshots: mri: 1.2.0 node-fetch-native: 1.6.6 ofetch: 1.4.1 - open: 10.1.0 + open: 10.1.2 pathe: 1.1.2 pkg-types: 1.3.1 scule: 1.3.0 semver: 7.7.2 std-env: 3.9.0 +<<<<<<< HEAD yaml: 2.7.1 transitivePeerDependencies: - magicast changelogithub@13.15.0(magicast@0.3.5): +======= + yaml: 2.8.0 + transitivePeerDependencies: + - magicast + + changelogithub@13.16.0(magicast@0.3.5): +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: ansis: 4.1.0 c12: 3.0.4(magicast@0.3.5) @@ -2621,6 +3483,10 @@ snapshots: execa: 9.6.0 ofetch: 1.4.1 semver: 7.7.2 +<<<<<<< HEAD +======= + tinyglobby: 0.2.14 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 transitivePeerDependencies: - magicast @@ -2674,12 +3540,7 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - debug@3.2.7: - dependencies: - ms: 2.1.3 - optional: true - - debug@4.4.0: + debug@4.4.1: dependencies: ms: 2.1.3 @@ -2704,9 +3565,9 @@ snapshots: deprecation@2.3.1: {} - destr@2.0.3: {} + destr@2.0.5: {} - dotenv@16.4.7: {} + dotenv@16.6.1: {} dotenv@16.5.0: {} @@ -2718,6 +3579,7 @@ snapshots: es-module-lexer@1.7.0: {} +<<<<<<< HEAD esbuild@0.25.5: optionalDependencies: '@esbuild/aix-ppc64': 0.25.5 @@ -2758,9 +3620,46 @@ snapshots: stable-hash-x: 0.1.1 optionalDependencies: unrs-resolver: 1.9.0 +======= + esbuild@0.25.8: + optionalDependencies: + '@esbuild/aix-ppc64': 0.25.8 + '@esbuild/android-arm': 0.25.8 + '@esbuild/android-arm64': 0.25.8 + '@esbuild/android-x64': 0.25.8 + '@esbuild/darwin-arm64': 0.25.8 + '@esbuild/darwin-x64': 0.25.8 + '@esbuild/freebsd-arm64': 0.25.8 + '@esbuild/freebsd-x64': 0.25.8 + '@esbuild/linux-arm': 0.25.8 + '@esbuild/linux-arm64': 0.25.8 + '@esbuild/linux-ia32': 0.25.8 + '@esbuild/linux-loong64': 0.25.8 + '@esbuild/linux-mips64el': 0.25.8 + '@esbuild/linux-ppc64': 0.25.8 + '@esbuild/linux-riscv64': 0.25.8 + '@esbuild/linux-s390x': 0.25.8 + '@esbuild/linux-x64': 0.25.8 + '@esbuild/netbsd-arm64': 0.25.8 + '@esbuild/netbsd-x64': 0.25.8 + '@esbuild/openbsd-arm64': 0.25.8 + '@esbuild/openbsd-x64': 0.25.8 + '@esbuild/openharmony-arm64': 0.25.8 + '@esbuild/sunos-x64': 0.25.8 + '@esbuild/win32-arm64': 0.25.8 + '@esbuild/win32-ia32': 0.25.8 + '@esbuild/win32-x64': 0.25.8 - eslint-import-resolver-node@0.3.9: + escape-string-regexp@4.0.0: {} + + eslint-config-prettier@10.1.8(eslint@9.31.0(jiti@2.4.2)): + dependencies: + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 + + eslint-import-context@0.1.9(unrs-resolver@1.9.2): dependencies: +<<<<<<< HEAD debug: 3.2.7 is-core-module: 2.16.1 resolve: 1.22.10 @@ -2798,18 +3697,55 @@ snapshots: optionalDependencies: '@typescript-eslint/utils': 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) eslint-import-resolver-node: 0.3.9 +======= + get-tsconfig: 4.10.1 + stable-hash-x: 0.2.0 + optionalDependencies: + unrs-resolver: 1.9.2 + + eslint-import-resolver-typescript@4.4.4(eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)))(eslint@9.31.0(jiti@2.4.2)): + dependencies: + debug: 4.4.1 + eslint: 9.31.0(jiti@2.4.2) + eslint-import-context: 0.1.9(unrs-resolver@1.9.2) + get-tsconfig: 4.10.1 + is-bun-module: 2.0.0 + stable-hash-x: 0.2.0 + tinyglobby: 0.2.14 + unrs-resolver: 1.9.2 + optionalDependencies: + eslint-plugin-import-x: 4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 + transitivePeerDependencies: + - supports-color + + eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2)): + dependencies: + '@typescript-eslint/types': 8.35.1 + comment-parser: 1.4.1 + debug: 4.4.1 + eslint: 9.31.0(jiti@2.4.2) + eslint-import-context: 0.1.9(unrs-resolver@1.9.2) + is-glob: 4.0.3 + minimatch: 10.0.3 + semver: 7.7.2 + stable-hash-x: 0.2.0 + unrs-resolver: 1.9.2 + optionalDependencies: + '@typescript-eslint/utils': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) transitivePeerDependencies: - supports-color - eslint-scope@8.3.0: + eslint-scope@8.4.0: dependencies: esrecurse: 4.3.0 estraverse: 5.3.0 eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.2.0: {} + eslint-visitor-keys@4.2.1: {} +<<<<<<< HEAD eslint@9.28.0(jiti@2.4.2): dependencies: '@eslint-community/eslint-utils': 4.5.1(eslint@9.28.0(jiti@2.4.2)) @@ -2820,19 +3756,31 @@ snapshots: '@eslint/eslintrc': 3.3.1 '@eslint/js': 9.28.0 '@eslint/plugin-kit': 0.3.1 +======= + eslint@9.31.0(jiti@2.4.2): + dependencies: + '@eslint-community/eslint-utils': 4.7.0(eslint@9.31.0(jiti@2.4.2)) + '@eslint-community/regexpp': 4.12.1 + '@eslint/config-array': 0.21.0 + '@eslint/config-helpers': 0.3.0 + '@eslint/core': 0.15.1 + '@eslint/eslintrc': 3.3.1 + '@eslint/js': 9.31.0 + '@eslint/plugin-kit': 0.3.3 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@humanfs/node': 0.16.6 '@humanwhocodes/module-importer': 1.0.1 - '@humanwhocodes/retry': 0.4.2 - '@types/estree': 1.0.7 + '@humanwhocodes/retry': 0.4.3 + '@types/estree': 1.0.8 '@types/json-schema': 7.0.15 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.4.0 + debug: 4.4.1 escape-string-regexp: 4.0.0 - eslint-scope: 8.3.0 - eslint-visitor-keys: 4.2.0 - espree: 10.3.0 + eslint-scope: 8.4.0 + eslint-visitor-keys: 4.2.1 + espree: 10.4.0 esquery: 1.6.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -2852,11 +3800,11 @@ snapshots: transitivePeerDependencies: - supports-color - espree@10.3.0: + espree@10.4.0: dependencies: - acorn: 8.14.1 - acorn-jsx: 5.3.2(acorn@8.14.1) - eslint-visitor-keys: 4.2.0 + acorn: 8.15.0 + acorn-jsx: 5.3.2(acorn@8.15.0) + eslint-visitor-keys: 4.2.1 esquery@1.6.0: dependencies: @@ -2870,7 +3818,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.7 + '@types/estree': 1.0.8 esutils@2.0.3: {} @@ -2889,9 +3837,13 @@ snapshots: strip-final-newline: 4.0.0 yoctocolors: 2.1.1 - expect-type@1.2.1: {} + expect-type@1.2.2: {} +<<<<<<< HEAD exsolve@1.0.5: {} +======= + exsolve@1.0.7: {} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 fast-deep-equal@3.1.3: {} @@ -2911,7 +3863,7 @@ snapshots: dependencies: reusify: 1.1.0 - fdir@6.4.4(picomatch@4.0.2): + fdir@6.4.6(picomatch@4.0.2): optionalDependencies: picomatch: 4.0.2 @@ -2951,9 +3903,12 @@ snapshots: fsevents@2.3.3: optional: true +<<<<<<< HEAD function-bind@1.1.2: optional: true +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 get-stream@9.0.1: dependencies: '@sec-ant/readable-stream': 0.4.1 @@ -3005,11 +3960,14 @@ snapshots: has-flag@4.0.0: {} +<<<<<<< HEAD hasown@2.0.2: dependencies: function-bind: 1.1.2 optional: true +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 html-escaper@2.0.2: {} human-signals@8.0.1: {} @@ -3032,11 +3990,14 @@ snapshots: is-bun-module@2.0.0: dependencies: semver: 7.7.2 +<<<<<<< HEAD is-core-module@2.16.1: dependencies: hasown: 2.0.2 optional: true +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 is-docker@3.0.0: {} @@ -3076,7 +4037,11 @@ snapshots: istanbul-lib-source-maps@5.0.6: dependencies: +<<<<<<< HEAD '@jridgewell/trace-mapping': 0.3.25 +======= + '@jridgewell/trace-mapping': 0.3.29 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 debug: 4.4.1 istanbul-lib-coverage: 3.2.2 transitivePeerDependencies: @@ -3122,18 +4087,18 @@ snapshots: lodash.merge@4.6.2: {} - loupe@3.1.3: {} + loupe@3.1.4: {} lru-cache@10.4.3: {} magic-string@0.30.17: dependencies: - '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/sourcemap-codec': 1.5.4 magicast@0.3.5: dependencies: - '@babel/parser': 7.27.0 - '@babel/types': 7.27.0 + '@babel/parser': 7.27.7 + '@babel/types': 7.27.7 source-map-js: 1.2.1 make-dir@4.0.0: @@ -3147,9 +4112,15 @@ snapshots: braces: 3.0.3 picomatch: 2.3.1 +<<<<<<< HEAD minimatch@10.0.2: dependencies: brace-expansion: 4.0.1 +======= + minimatch@10.0.3: + dependencies: + '@isaacs/brace-expansion': 5.0.0 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 minimatch@3.1.2: dependencies: @@ -3176,10 +4147,10 @@ snapshots: mlly@1.7.4: dependencies: - acorn: 8.14.1 + acorn: 8.15.0 pathe: 2.0.3 pkg-types: 1.3.1 - ufo: 1.5.4 + ufo: 1.6.1 mri@1.2.0: {} @@ -3187,7 +4158,7 @@ snapshots: nanoid@3.3.11: {} - napi-postinstall@0.2.3: {} + napi-postinstall@0.2.5: {} natural-compare@1.4.0: {} @@ -3207,21 +4178,21 @@ snapshots: pathe: 2.0.3 pkg-types: 1.3.1 tinyexec: 0.3.2 - ufo: 1.5.4 + ufo: 1.6.1 nypm@0.6.0: dependencies: citty: 0.1.6 consola: 3.4.2 pathe: 2.0.3 - pkg-types: 2.1.0 + pkg-types: 2.2.0 tinyexec: 0.3.2 ofetch@1.4.1: dependencies: - destr: 2.0.3 + destr: 2.0.5 node-fetch-native: 1.6.6 - ufo: 1.5.4 + ufo: 1.6.1 ohash@1.1.6: {} @@ -3231,7 +4202,7 @@ snapshots: dependencies: wrappy: 1.0.2 - open@10.1.0: + open@10.1.2: dependencies: default-browser: 5.2.1 define-lazy-prop: 3.0.0 @@ -3269,9 +4240,12 @@ snapshots: path-key@4.0.0: {} +<<<<<<< HEAD path-parse@1.0.7: optional: true +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 path-scurry@1.11.1: dependencies: lru-cache: 10.4.3 @@ -3281,7 +4255,7 @@ snapshots: pathe@2.0.3: {} - pathval@2.0.0: {} + pathval@2.0.1: {} perfect-debounce@1.0.0: {} @@ -3297,13 +4271,20 @@ snapshots: mlly: 1.7.4 pathe: 2.0.3 - pkg-types@2.1.0: + pkg-types@2.2.0: dependencies: confbox: 0.2.2 +<<<<<<< HEAD exsolve: 1.0.5 pathe: 2.0.3 postcss@8.5.5: +======= + exsolve: 1.0.7 + pathe: 2.0.3 + + postcss@8.5.6: +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: nanoid: 3.3.11 picocolors: 1.1.1 @@ -3311,7 +4292,7 @@ snapshots: prelude-ls@1.2.1: {} - prettier@3.5.3: {} + prettier@3.6.2: {} pretty-ms@9.2.0: dependencies: @@ -3324,7 +4305,7 @@ snapshots: rc9@2.1.2: dependencies: defu: 6.1.4 - destr: 2.0.3 + destr: 2.0.5 readdirp@3.6.0: dependencies: @@ -3336,6 +4317,7 @@ snapshots: resolve-pkg-maps@1.0.0: {} +<<<<<<< HEAD resolve@1.22.10: dependencies: is-core-module: 2.16.1 @@ -3346,9 +4328,15 @@ snapshots: reusify@1.1.0: {} rollup@4.43.0: +======= + reusify@1.1.0: {} + + rollup@4.45.1: +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: - '@types/estree': 1.0.7 + '@types/estree': 1.0.8 optionalDependencies: +<<<<<<< HEAD '@rollup/rollup-android-arm-eabi': 4.43.0 '@rollup/rollup-android-arm64': 4.43.0 '@rollup/rollup-darwin-arm64': 4.43.0 @@ -3369,6 +4357,28 @@ snapshots: '@rollup/rollup-win32-arm64-msvc': 4.43.0 '@rollup/rollup-win32-ia32-msvc': 4.43.0 '@rollup/rollup-win32-x64-msvc': 4.43.0 +======= + '@rollup/rollup-android-arm-eabi': 4.45.1 + '@rollup/rollup-android-arm64': 4.45.1 + '@rollup/rollup-darwin-arm64': 4.45.1 + '@rollup/rollup-darwin-x64': 4.45.1 + '@rollup/rollup-freebsd-arm64': 4.45.1 + '@rollup/rollup-freebsd-x64': 4.45.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.45.1 + '@rollup/rollup-linux-arm-musleabihf': 4.45.1 + '@rollup/rollup-linux-arm64-gnu': 4.45.1 + '@rollup/rollup-linux-arm64-musl': 4.45.1 + '@rollup/rollup-linux-loongarch64-gnu': 4.45.1 + '@rollup/rollup-linux-powerpc64le-gnu': 4.45.1 + '@rollup/rollup-linux-riscv64-gnu': 4.45.1 + '@rollup/rollup-linux-riscv64-musl': 4.45.1 + '@rollup/rollup-linux-s390x-gnu': 4.45.1 + '@rollup/rollup-linux-x64-gnu': 4.45.1 + '@rollup/rollup-linux-x64-musl': 4.45.1 + '@rollup/rollup-win32-arm64-msvc': 4.45.1 + '@rollup/rollup-win32-ia32-msvc': 4.45.1 + '@rollup/rollup-win32-x64-msvc': 4.45.1 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 fsevents: 2.3.3 run-applescript@7.0.0: {} @@ -3393,7 +4403,11 @@ snapshots: source-map-js@1.2.1: {} +<<<<<<< HEAD stable-hash-x@0.1.1: {} +======= + stable-hash-x@0.2.0: {} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 stackback@0.0.2: {} @@ -3427,9 +4441,12 @@ snapshots: dependencies: has-flag: 4.0.0 +<<<<<<< HEAD supports-preserve-symlinks-flag@1.0.0: optional: true +======= +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 tar@6.2.1: dependencies: chownr: 2.0.0 @@ -3451,10 +4468,14 @@ snapshots: tinyglobby@0.2.14: dependencies: - fdir: 6.4.4(picomatch@4.0.2) + fdir: 6.4.6(picomatch@4.0.2) picomatch: 4.0.2 +<<<<<<< HEAD tinypool@1.1.0: {} +======= + tinypool@1.1.1: {} +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 tinyrainbow@2.0.0: {} @@ -3477,19 +4498,29 @@ snapshots: dependencies: prelude-ls: 1.2.1 +<<<<<<< HEAD typescript-eslint@8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3): dependencies: '@typescript-eslint/eslint-plugin': 8.34.0(@typescript-eslint/parser@8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/parser': 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) '@typescript-eslint/utils': 8.34.0(eslint@9.28.0(jiti@2.4.2))(typescript@5.8.3) eslint: 9.28.0(jiti@2.4.2) +======= + typescript-eslint@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3): + dependencies: + '@typescript-eslint/eslint-plugin': 8.37.0(@typescript-eslint/parser@8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3))(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/parser': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + '@typescript-eslint/typescript-estree': 8.37.0(typescript@5.8.3) + '@typescript-eslint/utils': 8.37.0(eslint@9.31.0(jiti@2.4.2))(typescript@5.8.3) + eslint: 9.31.0(jiti@2.4.2) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 typescript: 5.8.3 transitivePeerDependencies: - supports-color typescript@5.8.3: {} - ufo@1.5.4: {} + ufo@1.6.1: {} undici-types@6.21.0: {} @@ -3501,10 +4532,15 @@ snapshots: universal-user-agent@6.0.1: {} +<<<<<<< HEAD unrs-resolver@1.9.0: +======= + unrs-resolver@1.9.2: +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: - napi-postinstall: 0.2.3 + napi-postinstall: 0.2.5 optionalDependencies: +<<<<<<< HEAD '@unrs/resolver-binding-android-arm-eabi': 1.9.0 '@unrs/resolver-binding-android-arm64': 1.9.0 '@unrs/resolver-binding-darwin-arm64': 1.9.0 @@ -3524,18 +4560,47 @@ snapshots: '@unrs/resolver-binding-win32-arm64-msvc': 1.9.0 '@unrs/resolver-binding-win32-ia32-msvc': 1.9.0 '@unrs/resolver-binding-win32-x64-msvc': 1.9.0 +======= + '@unrs/resolver-binding-android-arm-eabi': 1.9.2 + '@unrs/resolver-binding-android-arm64': 1.9.2 + '@unrs/resolver-binding-darwin-arm64': 1.9.2 + '@unrs/resolver-binding-darwin-x64': 1.9.2 + '@unrs/resolver-binding-freebsd-x64': 1.9.2 + '@unrs/resolver-binding-linux-arm-gnueabihf': 1.9.2 + '@unrs/resolver-binding-linux-arm-musleabihf': 1.9.2 + '@unrs/resolver-binding-linux-arm64-gnu': 1.9.2 + '@unrs/resolver-binding-linux-arm64-musl': 1.9.2 + '@unrs/resolver-binding-linux-ppc64-gnu': 1.9.2 + '@unrs/resolver-binding-linux-riscv64-gnu': 1.9.2 + '@unrs/resolver-binding-linux-riscv64-musl': 1.9.2 + '@unrs/resolver-binding-linux-s390x-gnu': 1.9.2 + '@unrs/resolver-binding-linux-x64-gnu': 1.9.2 + '@unrs/resolver-binding-linux-x64-musl': 1.9.2 + '@unrs/resolver-binding-wasm32-wasi': 1.9.2 + '@unrs/resolver-binding-win32-arm64-msvc': 1.9.2 + '@unrs/resolver-binding-win32-ia32-msvc': 1.9.2 + '@unrs/resolver-binding-win32-x64-msvc': 1.9.2 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 uri-js@4.4.1: dependencies: punycode: 2.3.1 +<<<<<<< HEAD vite-node@3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1): +======= + vite-node@3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0): +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 dependencies: cac: 6.7.14 debug: 4.4.1 es-module-lexer: 1.7.0 pathe: 2.0.3 +<<<<<<< HEAD vite: 6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1) +======= + vite: 6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 transitivePeerDependencies: - '@types/node' - jiti @@ -3550,6 +4615,7 @@ snapshots: - tsx - yaml +<<<<<<< HEAD vite@6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1): dependencies: esbuild: 0.25.5 @@ -3560,28 +4626,55 @@ snapshots: tinyglobby: 0.2.14 optionalDependencies: '@types/node': 20.19.0 +======= + vite@6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0): + dependencies: + esbuild: 0.25.8 + fdir: 6.4.6(picomatch@4.0.2) + picomatch: 4.0.2 + postcss: 8.5.6 + rollup: 4.45.1 + tinyglobby: 0.2.14 + optionalDependencies: + '@types/node': 20.19.9 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 fsevents: 2.3.3 jiti: 2.4.2 - yaml: 2.7.1 + yaml: 2.8.0 +<<<<<<< HEAD vitest@3.1.4(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1): dependencies: '@vitest/expect': 3.1.4 '@vitest/mocker': 3.1.4(vite@6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1)) '@vitest/pretty-format': 3.2.3 +======= + vitest@3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0): + dependencies: + '@vitest/expect': 3.1.4 + '@vitest/mocker': 3.1.4(vite@6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0)) + '@vitest/pretty-format': 3.2.4 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 '@vitest/runner': 3.1.4 '@vitest/snapshot': 3.1.4 '@vitest/spy': 3.1.4 '@vitest/utils': 3.1.4 +<<<<<<< HEAD chai: 5.2.0 debug: 4.4.1 expect-type: 1.2.1 +======= + chai: 5.2.1 + debug: 4.4.1 + expect-type: 1.2.2 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 magic-string: 0.30.17 pathe: 2.0.3 std-env: 3.9.0 tinybench: 2.9.0 tinyexec: 0.3.2 tinyglobby: 0.2.14 +<<<<<<< HEAD tinypool: 1.1.0 tinyrainbow: 2.0.0 vite: 6.3.5(@types/node@20.19.0)(jiti@2.4.2)(yaml@2.7.1) @@ -3589,6 +4682,15 @@ snapshots: why-is-node-running: 2.3.0 optionalDependencies: '@types/node': 20.19.0 +======= + tinypool: 1.1.1 + tinyrainbow: 2.0.0 + vite: 6.3.5(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) + vite-node: 3.1.4(@types/node@20.19.9)(jiti@2.4.2)(yaml@2.8.0) + why-is-node-running: 2.3.0 + optionalDependencies: + '@types/node': 20.19.9 +>>>>>>> dac7338c24ea3a5c470ba13f9c3425537afa3439 transitivePeerDependencies: - jiti - less @@ -3630,7 +4732,7 @@ snapshots: yallist@4.0.0: {} - yaml@2.7.1: {} + yaml@2.8.0: {} yocto-queue@0.1.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml new file mode 100644 index 00000000..cb8238f2 --- /dev/null +++ b/pnpm-workspace.yaml @@ -0,0 +1,3 @@ +onlyBuiltDependencies: + - esbuild + - unrs-resolver diff --git a/src/api.spec.ts b/src/api.spec.ts index 135c3b67..fba8fafd 100644 --- a/src/api.spec.ts +++ b/src/api.spec.ts @@ -20,6 +20,7 @@ import { init, retryOrTimeout, } from "./api.ts"; +import { clearEtags } from "./etags.ts"; import { mockLoggingFunctions } from "./test-utils/logging.mock.ts"; import { getBranchName } from "./utils.ts"; @@ -29,6 +30,7 @@ vi.mock("@actions/github"); interface MockResponse { data: any; status: number; + headers: Record; } function* mockPageIterator( @@ -66,6 +68,10 @@ const mockOctokit = { }, }; +afterEach(() => { + clearEtags(); +}); + describe("API", () => { const { coreDebugLogMock, @@ -119,6 +125,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: 204, + headers: {}, }), ); @@ -147,6 +154,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: errorStatus, + headers: {}, }), ); @@ -176,6 +184,7 @@ describe("API", () => { return Promise.resolve({ data: undefined, status: 204, + headers: {}, }); }); @@ -219,6 +228,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -246,6 +256,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: errorStatus, + headers: {}, }), ); @@ -268,6 +279,7 @@ describe("API", () => { Promise.resolve({ data: [], status: 200, + headers: {}, }), ); @@ -303,6 +315,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -355,6 +368,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -387,6 +401,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: errorStatus, + headers: {}, }), ); @@ -417,6 +432,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -454,6 +470,7 @@ describe("API", () => { workflow_runs: [], }, status: 200, + headers: {}, }; return Promise.resolve(mockResponse); }, @@ -494,6 +511,7 @@ describe("API", () => { workflow_runs: [], }, status: 200, + headers: {}, }; return Promise.resolve(mockResponse); }, @@ -534,6 +552,7 @@ describe("API", () => { workflow_runs: [], }, status: 200, + headers: {}, }; return Promise.resolve(mockResponse); }, @@ -559,6 +578,118 @@ describe("API", () => { `, ); }); + + it("should send the previous etag in the If-None-Match header", async () => { + const branch = getBranchName(workflowIdCfg.ref); + coreDebugLogMock.mockReset(); + + const mockData = { + total_count: 0, + workflow_runs: [], + }; + const etag = + "37c2311495bbea359329d0bb72561bdb2b2fffea1b7a54f696b5a287e7ccad1e"; + let submittedEtag = null; + vi.spyOn(mockOctokit.rest.actions, "listWorkflowRuns").mockImplementation( + ({ headers }) => { + if (headers?.["If-None-Match"]) { + submittedEtag = headers["If-None-Match"]; + return Promise.resolve({ + data: null, + status: 304, + headers: { + etag: `W/"${submittedEtag}"`, + }, + }); + } + return Promise.resolve({ + data: mockData, + status: 200, + headers: { + etag: `W/"${etag}"`, + }, + }); + }, + ); + + // Behaviour + // First API call will return 200 with an etag response header + await fetchWorkflowRunIds(0, branch, startTimeISO); + expect(submittedEtag).toStrictEqual(null); + // Second API call with same parameters should pass the If-None-Match header + await fetchWorkflowRunIds(0, branch, startTimeISO); + expect(submittedEtag).toStrictEqual(etag); + + // Logging + assertOnlyCalled(coreDebugLogMock); + expect(coreDebugLogMock).toHaveBeenCalledTimes(2); + expect(coreDebugLogMock.mock.calls[0]?.[0]).toMatchInlineSnapshot( + ` + "Fetched Workflow Runs: + Repository: owner/repository + Branch Filter: true (feature_branch) + Workflow ID: 0 + Created: >=2025-06-17T22:24:23.238Z + Runs Fetched: []" + `, + ); + }); + + it("should not send the previous etag in the If-None-Match header when different request params are used", async () => { + const branch = getBranchName(workflowIdCfg.ref); + coreDebugLogMock.mockReset(); + + const mockData = { + total_count: 0, + workflow_runs: [], + }; + const etag = + "37c2311495bbea359329d0bb72561bdb2b2fffea1b7a54f696b5a287e7ccad1e"; + let submittedEtag = null; + vi.spyOn(mockOctokit.rest.actions, "listWorkflowRuns").mockImplementation( + ({ headers }) => { + if (headers?.["If-None-Match"]) { + submittedEtag = headers["If-None-Match"]; + return Promise.resolve({ + data: null, + status: 304, + headers: { + etag: `W/"${submittedEtag}"`, + }, + }); + } + return Promise.resolve({ + data: mockData, + status: 200, + headers: { + etag: `W/"${etag}"`, + }, + }); + }, + ); + + // Behaviour + // First API call will return 200 with an etag response header + await fetchWorkflowRunIds(0, branch, startTimeISO); + expect(submittedEtag).toStrictEqual(null); + // Second API call, without If-None-Match header because of different parameters + await fetchWorkflowRunIds(1, branch, startTimeISO); + expect(submittedEtag).toStrictEqual(null); + + // Logging + assertOnlyCalled(coreDebugLogMock); + expect(coreDebugLogMock).toHaveBeenCalledTimes(2); + expect(coreDebugLogMock.mock.calls[0]?.[0]).toMatchInlineSnapshot( + ` + "Fetched Workflow Runs: + Repository: owner/repository + Branch Filter: true (feature_branch) + Workflow ID: 0 + Created: >=2025-06-17T22:24:23.238Z + Runs Fetched: []" + `, + ); + }); }); describe("fetchWorkflowRunJobSteps", () => { @@ -588,6 +719,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -620,6 +752,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: errorStatus, + headers: {}, }), ); @@ -653,6 +786,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -672,6 +806,122 @@ describe("API", () => { `, ); }); + + it("should send the previous etag in the If-None-Match header", async () => { + const mockData = { + total_count: 1, + jobs: [ + { + id: 0, + steps: undefined, + }, + ], + }; + const etag = + "37c2311495bbea359329d0bb72561bdb2b2fffea1b7a54f696b5a287e7ccad1e"; + let submittedEtag = null; + vi.spyOn( + mockOctokit.rest.actions, + "listJobsForWorkflowRun", + ).mockImplementation(({ headers }) => { + if (headers?.["If-None-Match"]) { + submittedEtag = headers["If-None-Match"]; + return Promise.resolve({ + data: null, + status: 304, + headers: { + etag: `W/"${submittedEtag}"`, + }, + }); + } + return Promise.resolve({ + data: mockData, + status: 200, + headers: { + etag: `W/"${etag}"`, + }, + }); + }); + + // Behaviour + // First API call will return 200 with an etag response header + await fetchWorkflowRunJobSteps(0); + expect(submittedEtag).toStrictEqual(null); + // Second API call with same parameters should pass the If-None-Match header + await fetchWorkflowRunJobSteps(0); + expect(submittedEtag).toStrictEqual(etag); + + // Logging + assertOnlyCalled(coreDebugLogMock); + expect(coreDebugLogMock).toHaveBeenCalledTimes(2); + expect(coreDebugLogMock.mock.calls[0]?.[0]).toMatchInlineSnapshot( + ` + "Fetched Workflow Run Job Steps: + Repository: owner/repo + Workflow Run ID: 0 + Jobs Fetched: [0] + Steps Fetched: []" + `, + ); + }); + + it("should not send the previous etag in the If-None-Match header when different request params are used", async () => { + const mockData = { + total_count: 1, + jobs: [ + { + id: 0, + steps: undefined, + }, + ], + }; + const etag = + "37c2311495bbea359329d0bb72561bdb2b2fffea1b7a54f696b5a287e7ccad1e"; + let submittedEtag = null; + vi.spyOn( + mockOctokit.rest.actions, + "listJobsForWorkflowRun", + ).mockImplementation(({ headers }) => { + if (headers?.["If-None-Match"]) { + submittedEtag = headers["If-None-Match"]; + return Promise.resolve({ + data: null, + status: 304, + headers: { + etag: `W/"${submittedEtag}"`, + }, + }); + } + return Promise.resolve({ + data: mockData, + status: 200, + headers: { + etag: `W/"${etag}"`, + }, + }); + }); + + // Behaviour + // First API call will return 200 with an etag response header + await fetchWorkflowRunJobSteps(0); + expect(submittedEtag).toStrictEqual(null); + // Second API call, without If-None-Match header because of different parameters + await fetchWorkflowRunJobSteps(1); + expect(submittedEtag).toStrictEqual(null); + + // Logging + assertOnlyCalled(coreDebugLogMock); + expect(coreDebugLogMock).toHaveBeenCalledTimes(2); + expect(coreDebugLogMock.mock.calls[0]?.[0]).toMatchInlineSnapshot( + ` + "Fetched Workflow Run Job Steps: + Repository: owner/repo + Workflow Run ID: 0 + Jobs Fetched: [0] + Steps Fetched: []" + `, + ); + }); }); describe("fetchWorkflowRunUrl", () => { @@ -683,6 +933,7 @@ describe("API", () => { Promise.resolve({ data: mockData, status: 200, + headers: {}, }), ); @@ -696,6 +947,7 @@ describe("API", () => { Promise.resolve({ data: undefined, status: errorStatus, + headers: {}, }), ); diff --git a/src/api.ts b/src/api.ts index e88d5767..f1944dab 100644 --- a/src/api.ts +++ b/src/api.ts @@ -2,6 +2,7 @@ import * as core from "@actions/core"; import * as github from "@actions/github"; import { type ActionConfig, getConfig } from "./action.ts"; +import { withEtag } from "./etags.js"; import type { Result } from "./types.ts"; import { sleep, type BranchNameResult } from "./utils.ts"; @@ -168,24 +169,29 @@ export async function fetchWorkflowRunIds( const createdFrom = `>=${startTimeISO}`; - // https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-repository - const response = await octokit.rest.actions.listWorkflowRuns({ - owner: config.owner, - repo: config.repo, - workflow_id: workflowId, - created: createdFrom, - event: "workflow_dispatch", - ...(useBranchFilter - ? { - branch: branch.branchName, - per_page: 10, - } - : { - per_page: 20, - }), - }); + const response = await withEtag( + "listWorkflowRuns", + { + owner: config.owner, + repo: config.repo, + workflow_id: workflowId, + created: createdFrom, + event: "workflow_dispatch", + ...(useBranchFilter + ? { + branch: branch.branchName, + per_page: 10, + } + : { + per_page: 20, + }), + }, + async (params) => { + // https://docs.github.com/en/rest/actions/workflow-runs#list-workflow-runs-for-a-repository + return await octokit.rest.actions.listWorkflowRuns(params); + }, + ); - // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition if (response.status !== 200) { throw new Error( `Failed to fetch Workflow runs, expected 200 but received ${response.status}`, @@ -224,15 +230,20 @@ export async function fetchWorkflowRunJobSteps( runId: number, ): Promise { try { - // https://docs.github.com/en/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run - const response = await octokit.rest.actions.listJobsForWorkflowRun({ - owner: config.owner, - repo: config.repo, - run_id: runId, - filter: "latest", - }); + const response = await withEtag( + "listJobsForWorkflowRun", + { + owner: config.owner, + repo: config.repo, + run_id: runId, + filter: "latest" as const, + }, + async (params) => { + // https://docs.github.com/en/rest/actions/workflow-jobs#list-jobs-for-a-workflow-run + return await octokit.rest.actions.listJobsForWorkflowRun(params); + }, + ); - // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition if (response.status !== 200) { throw new Error( `Failed to fetch Workflow Run Jobs, expected 200 but received ${response.status}`, diff --git a/src/etags.ts b/src/etags.ts new file mode 100644 index 00000000..372f4681 --- /dev/null +++ b/src/etags.ts @@ -0,0 +1,68 @@ +import type { + RequestHeaders, + RequestParameters, + OctokitResponse, +} from "@octokit/types"; + +interface EtagStoreEntry { + etag: string; + savedResponse: OctokitResponse; +} + +const etagStore = new Map(); + +export async function withEtag( + endpoint: string, + params: P, + requester: (params: P) => Promise>, +): Promise> { + const { etag, savedResponse } = getEtag(endpoint, params) ?? {}; + + const paramsWithEtag = { ...params }; + if (etag) + paramsWithEtag.headers = { + "If-None-Match": etag, + ...(params.headers ?? {}), + } satisfies RequestHeaders; + + const response = await requester(paramsWithEtag); + + if ( + response.status === 304 && + etag && + etag === extractEtag(response) && + savedResponse !== undefined + ) { + return savedResponse; + } + + rememberEtag(endpoint, params, response); + return response; +} + +function extractEtag(response: OctokitResponse): string | undefined { + if ("string" !== typeof response.headers.etag) return; + return response.headers.etag.split('"')[1] ?? ""; +} + +function getEtag(endpoint: string, params: object): EtagStoreEntry | undefined { + return etagStore.get(JSON.stringify({ endpoint, params })); +} + +function rememberEtag( + endpoint: string, + params: object, + response: OctokitResponse, +): void { + const etag = extractEtag(response); + if (!etag) return; + + etagStore.set(JSON.stringify({ endpoint, params }), { + etag, + savedResponse: response, + }); +} + +export function clearEtags(): void { + etagStore.clear(); +}