diff --git a/.changeset/common-ghosts-share.md b/.changeset/common-ghosts-share.md new file mode 100644 index 0000000..db1c041 --- /dev/null +++ b/.changeset/common-ghosts-share.md @@ -0,0 +1,5 @@ +--- +"@yieldxyz/sdk": patch +--- + +feat: update schemas, bump deps diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..2a70856 --- /dev/null +++ b/.env.example @@ -0,0 +1,5 @@ +API_URL=https://api.yield.xyz/ +API_KEY= +MNEMONIC= +YIELD_ID=base-usdc-eusdc-1-0x0a1a3b5f2041f33522c4efc754a7d096f880ee16-4626-vault +ACTION_TYPE=enter \ No newline at end of file diff --git a/.gitignore b/.gitignore index f096de6..5ae6613 100644 --- a/.gitignore +++ b/.gitignore @@ -13,4 +13,6 @@ dist/ .idea # Typescipt -*.tsbuildinfo \ No newline at end of file +*.tsbuildinfo + +.env \ No newline at end of file diff --git a/biome.json b/biome.json index 3696ae0..3ebc399 100644 --- a/biome.json +++ b/biome.json @@ -7,7 +7,7 @@ }, "files": { "ignoreUnknown": false, - "includes": ["**", "!dist/**", "!node_modules/**", "!pnpm-lock.yaml"] + "includes": ["**", "!dist", "!node_modules", "!pnpm-lock.yaml"] }, "formatter": { "enabled": true, diff --git a/example/evm-enter-or-exit.ts b/example/evm-enter-or-exit.ts new file mode 100644 index 0000000..0ce0a38 --- /dev/null +++ b/example/evm-enter-or-exit.ts @@ -0,0 +1,104 @@ +import { sdk, type TransactionDto } from "@yieldxyz/sdk"; +import BigNumber from "bignumber.js"; +import { createWalletClient, http } from "viem"; +import { mnemonicToAccount } from "viem/accounts"; +import { base } from "viem/chains"; + +const mnemonic = process.env.MNEMONIC; +const apiKey = process.env.API_KEY; +const apiUrl = process.env.API_URL; +const yieldId = process.env.YIELD_ID; +const actionType = process.env.ACTION_TYPE; + +if ( + !mnemonic || + !apiKey || + !apiUrl || + !yieldId || + (actionType !== "enter" && actionType !== "exit") +) { + throw new Error("invalid env variables"); +} + +sdk.configure({ apiKey, baseURL: apiUrl }); + +const account = mnemonicToAccount(mnemonic); + +const client = createWalletClient({ + chain: base, + transport: http(), + account, +}); + +const transactions = await (actionType === "enter" + ? sdk.api.enterYield({ + yieldId, + address: account.address, + arguments: { amount: BigNumber("0.0001").toString() }, + }) + : sdk.api.exitYield({ + yieldId, + address: account.address, + arguments: { amount: BigNumber("0.0001").toString() }, + }) +).then((res) => + res.transactions.filter( + ( + tx, + ): tx is TransactionDto & { + status: "WAITING_FOR_SIGNATURE"; + unsignedTransaction: string; + } => + (tx.status === "WAITING_FOR_SIGNATURE" || tx.status === "CREATED") && + !!tx.unsignedTransaction, + ), +); + +const sendTransactionsResults: { + txHash: string; + explorerUrl: string | null | undefined; +}[] = []; + +for (const tx of transactions) { + const parsedTx = JSON.parse(tx.unsignedTransaction); + const preparedTx = await client.prepareTransactionRequest({ + to: parsedTx.to, + value: parsedTx.value, + data: parsedTx.data, + maxFeePerGas: parsedTx.maxFeePerGas, + maxPriorityFeePerGas: parsedTx.maxPriorityFeePerGas, + gas: parsedTx.gasLimit, + type: "eip1559", + }); + + const txHash = await client.sendTransaction(preparedTx); + await sdk.api.submitTransactionHash(tx.id, { hash: txHash }); + + let txStatusCheckTimes = 0; + + while (txStatusCheckTimes < 10) { + await new Promise((resolve) => setTimeout(resolve, 1500)); + + const txResult = await sdk.api.getTransaction(tx.id); + + if (txResult.status === "CONFIRMED") { + break; + } + + txStatusCheckTimes++; + } + + sendTransactionsResults.push({ + txHash, + explorerUrl: `${client.chain.blockExplorers.default.url}/tx/${txHash}`, + }); +} + +const positions = await sdk.api.getYieldBalances(yieldId, { + address: account.address, +}); + +console.log({ + positions: JSON.stringify(positions, null, 2), + sendTransactionsResults, +}); diff --git a/example/index.ts b/example/index.ts deleted file mode 100644 index b6af366..0000000 --- a/example/index.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { sdk } from "../src"; - -sdk.configure({ apiKey: "your-api-key" }); - -const main = async () => { - const res = await sdk.api.getYield("yieldId"); - - console.log(res); -}; - -main(); diff --git a/package.json b/package.json index 28c563f..af7b0c5 100644 --- a/package.json +++ b/package.json @@ -10,7 +10,8 @@ "generate-api": "orval --config ./orval.config.ts", "prepare": "husky", "release": "changeset publish", - "version": "changeset version" + "version": "changeset version", + "example:evm-enter-or-exit": "tsx --env-file='.env' example/evm-enter-or-exit.ts" }, "main": "./dist/index.js", "types": "./dist/src/index.d.ts", @@ -55,17 +56,19 @@ } }, "devDependencies": { - "@biomejs/biome": "2.1.0", - "@changesets/cli": "^2.29.5", + "@biomejs/biome": "2.2.0", + "@changesets/cli": "^2.29.6", "@commitlint/cli": "^19.8.1", "@commitlint/config-conventional": "^19.8.1", "@faker-js/faker": "^9.9.0", - "@rslib/core": "^0.10.5", - "@types/node": "^24.0.10", + "@rslib/core": "^0.12.2", + "@types/node": "^24.3.0", + "bignumber.js": "^9.3.1", "husky": "^9.1.7", - "msw": "^2.10.3", - "orval": "^7.10.0", - "tsx": "^4.20.3", - "typescript": "^5.8.3" + "msw": "^2.10.5", + "orval": "^7.11.2", + "tsx": "^4.20.4", + "typescript": "^5.9.2", + "viem": "^2.34.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a108d0a..8b2ebe1 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -9,14 +9,14 @@ importers: .: devDependencies: '@biomejs/biome': - specifier: 2.1.0 - version: 2.1.0 + specifier: 2.2.0 + version: 2.2.0 '@changesets/cli': - specifier: ^2.29.5 - version: 2.29.5 + specifier: ^2.29.6 + version: 2.29.6(@types/node@24.3.0) '@commitlint/cli': specifier: ^19.8.1 - version: 19.8.1(@types/node@24.0.10)(typescript@5.8.3) + version: 19.8.1(@types/node@24.3.0)(typescript@5.9.2) '@commitlint/config-conventional': specifier: ^19.8.1 version: 19.8.1 @@ -24,29 +24,38 @@ importers: specifier: ^9.9.0 version: 9.9.0 '@rslib/core': - specifier: ^0.10.5 - version: 0.10.5(typescript@5.8.3) + specifier: ^0.12.2 + version: 0.12.2(typescript@5.9.2) '@types/node': - specifier: ^24.0.10 - version: 24.0.10 + specifier: ^24.3.0 + version: 24.3.0 + bignumber.js: + specifier: ^9.3.1 + version: 9.3.1 husky: specifier: ^9.1.7 version: 9.1.7 msw: - specifier: ^2.10.3 - version: 2.10.3(@types/node@24.0.10)(typescript@5.8.3) + specifier: ^2.10.5 + version: 2.10.5(@types/node@24.3.0)(typescript@5.9.2) orval: - specifier: ^7.10.0 - version: 7.10.0(openapi-types@12.1.3) + specifier: ^7.11.2 + version: 7.11.2(openapi-types@12.1.3) tsx: - specifier: ^4.20.3 - version: 4.20.3 + specifier: ^4.20.4 + version: 4.20.4 typescript: - specifier: ^5.8.3 - version: 5.8.3 + specifier: ^5.9.2 + version: 5.9.2 + viem: + specifier: ^2.34.0 + version: 2.34.0(typescript@5.9.2) packages: + '@adraffy/ens-normalize@1.11.0': + resolution: {integrity: sha512-/3DDPKHqqIqxUULp8yP4zODUY1i+2xvVWsv8A79xGWdCAG+8sb0hRh0Rk2QyOJUnnbyPUAZYcpBuRe3nS2OIUg==} + '@apidevtools/json-schema-ref-parser@11.7.2': resolution: {integrity: sha512-4gY54eEGEstClvEkGnwVkTkrx0sqwemEFG5OSRRn3tD91XH0+Q8XIkYIfo7IwEWPpJZwILb9GUXeShtplRc/eA==} engines: {node: '>= 16'} @@ -121,8 +130,8 @@ packages: resolution: {integrity: sha512-Hb4o6h1Pf6yRUAX07DR4JVY7dmQw+RVQMW5/m55GoiAT/VRoKCWBtIUPPOnqDVhbx1Cjfil9b6EDrgJsUAujEQ==} engines: {node: '>= 10'} - '@asyncapi/specs@6.8.1': - resolution: {integrity: sha512-czHoAk3PeXTLR+X8IUaD+IpT+g+zUvkcgMDJVothBsan+oHN3jfcFcFUNdOPAAFoUCQN1hXF1dWuphWy05THlA==} + '@asyncapi/specs@6.10.0': + resolution: {integrity: sha512-vB5oKLsdrLUORIZ5BXortZTlVyGWWMC1Nud/0LtgxQ3Yn2738HigAD6EVqScvpPsDUI/bcLVsYEXN4dtXQHVng==} '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} @@ -132,59 +141,59 @@ packages: resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} engines: {node: '>=6.9.0'} - '@babel/runtime@7.27.6': - resolution: {integrity: sha512-vbavdySgbTTrmFE+EsiqUTzlOr5bzlnJtUv9PynGCAKvfQqjIXbvFdumPM/GxMDfyuGMJaJAU6TO4zc1Jf1i8Q==} + '@babel/runtime@7.28.3': + resolution: {integrity: sha512-9uIQ10o0WGdpP6GDhXcdOJPJuDgFtIDtN/9+ArJQ2NAfAmiuhTQdzkaTGR33v43GYS2UrSA0eX2pPPHoFVvpxA==} engines: {node: '>=6.9.0'} - '@biomejs/biome@2.1.0': - resolution: {integrity: sha512-K2UDr1dCiaOWegp4yQLMC4Evgl85ze1O7r+WxPeO7cNl0XrIcTshvdQGMDB23c/2afXz6RsOKYfWLErNbBbjmA==} + '@biomejs/biome@2.2.0': + resolution: {integrity: sha512-3On3RSYLsX+n9KnoSgfoYlckYBoU6VRM22cw1gB4Y0OuUVSYd/O/2saOJMrA4HFfA1Ff0eacOvMN1yAAvHtzIw==} engines: {node: '>=14.21.3'} hasBin: true - '@biomejs/cli-darwin-arm64@2.1.0': - resolution: {integrity: sha512-RDXEUGSCvUx3PKWRt95WRtwH+l01slm7r2zaotDwWERn/RITMcdet21rI5q5cYhL4XJiAvLHG8qyLNSXqIOCwQ==} + '@biomejs/cli-darwin-arm64@2.2.0': + resolution: {integrity: sha512-zKbwUUh+9uFmWfS8IFxmVD6XwqFcENjZvEyfOxHs1epjdH3wyyMQG80FGDsmauPwS2r5kXdEM0v/+dTIA9FXAg==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [darwin] - '@biomejs/cli-darwin-x64@2.1.0': - resolution: {integrity: sha512-epLFRbMjYS/Cu9Kc5gM3wzUExsKj2Z0oxIiuxlI4ZterIqm19yvTOtJoqSec8gjUXOTNvPVoEIfSSXg37yepow==} + '@biomejs/cli-darwin-x64@2.2.0': + resolution: {integrity: sha512-+OmT4dsX2eTfhD5crUOPw3RPhaR+SKVspvGVmSdZ9y9O/AgL8pla6T4hOn1q+VAFBHuHhsdxDRJgFCSC7RaMOw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [darwin] - '@biomejs/cli-linux-arm64-musl@2.1.0': - resolution: {integrity: sha512-J7z6s/M50wt5lhSkivAs2GJHPhiah3hkdg1LipM6wlK6cVC3YeIA/X6pgWBfjEwyfsFlpc3nRM+pQ17DI8FpDQ==} + '@biomejs/cli-linux-arm64-musl@2.2.0': + resolution: {integrity: sha512-egKpOa+4FL9YO+SMUMLUvf543cprjevNc3CAgDNFLcjknuNMcZ0GLJYa3EGTCR2xIkIUJDVneBV3O9OcIlCEZQ==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-arm64@2.1.0': - resolution: {integrity: sha512-HZys1/TeIH5lagwtf9yKSO+gtA+cYMJW22ckDGuKt2xIvPu7VqgTNjJtTdRcetXe0+benlMMo+KFs3xL2b/2QA==} + '@biomejs/cli-linux-arm64@2.2.0': + resolution: {integrity: sha512-6eoRdF2yW5FnW9Lpeivh7Mayhq0KDdaDMYOJnH9aT02KuSIX5V1HmWJCQQPwIQbhDh68Zrcpl8inRlTEan0SXw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - '@biomejs/cli-linux-x64-musl@2.1.0': - resolution: {integrity: sha512-uj8felYcBeXh32kznnKrAQoZ9pLqta/6qvwLJ4AZtUmY6cSUUa5c+VLnFtxMfuhvps/M4D55VGnwSINOEblPQg==} + '@biomejs/cli-linux-x64-musl@2.2.0': + resolution: {integrity: sha512-I5J85yWwUWpgJyC1CcytNSGusu2p9HjDnOPAFG4Y515hwRD0jpR9sT9/T1cKHtuCvEQ/sBvx+6zhz9l9wEJGAg==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-linux-x64@2.1.0': - resolution: {integrity: sha512-nAVAP1ov/zcXMhNq3WCbYZmlU/YTF3ZT+LeXR1CEJnDgunPC/Srp7j1LWlrIx6wxNOCDOFow8fmyfC7c/BKLig==} + '@biomejs/cli-linux-x64@2.2.0': + resolution: {integrity: sha512-5UmQx/OZAfJfi25zAnAGHUMuOd+LOsliIt119x2soA2gLggQYrVPA+2kMUxR6Mw5M1deUF/AWWP2qpxgH7Nyfw==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - '@biomejs/cli-win32-arm64@2.1.0': - resolution: {integrity: sha512-eGGqGs+8Q34n1zp/rEadFRKjzwFszpZ2+p6B1Dmi7dn1DNEYhNXoRWLcjyca+ZSTrdV7COx0scyjgF9Tg73kBw==} + '@biomejs/cli-win32-arm64@2.2.0': + resolution: {integrity: sha512-n9a1/f2CwIDmNMNkFs+JI0ZjFnMO0jdOyGNtihgUNFnlmd84yIYY2KMTBmMV58ZlVHjgmY5Y6E1hVTnSRieggA==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [win32] - '@biomejs/cli-win32-x64@2.1.0': - resolution: {integrity: sha512-pkp6jucyvE8DJSXXwSKs+Mxx1KXkMJ2d8GbBu4Lf0nAQHl40TZjjp1RuNEo9Z7NNXPQzbLACDtK6/vDalO2WRg==} + '@biomejs/cli-win32-x64@2.2.0': + resolution: {integrity: sha512-Nawu5nHjP/zPKTIryh2AavzTc/KEg4um/MxWdXW0A6P/RZOyIpa7+QSjeXwAwX/utJGaCoXRPWtF3m5U/bB3Ww==} engines: {node: '>=14.21.3'} cpu: [x64] os: [win32] @@ -207,8 +216,8 @@ packages: '@changesets/changelog-git@0.2.1': resolution: {integrity: sha512-x/xEleCFLH28c3bQeQIyeZf8lFXyDFVn1SgcBiR2Tw/r4IAWlk1fzxCEZ6NxQAjF2Nwtczoen3OA2qR+UawQ8Q==} - '@changesets/cli@2.29.5': - resolution: {integrity: sha512-0j0cPq3fgxt2dPdFsg4XvO+6L66RC0pZybT9F4dG5TBrLA3jA/1pNkdTXH9IBBVHkgsKrNKenI3n1mPyPlIydg==} + '@changesets/cli@2.29.6': + resolution: {integrity: sha512-6qCcVsIG1KQLhpQ5zE8N0PckIx4+9QlHK3z6/lwKnw7Tir71Bjw8BeOZaxA/4Jt00pcgCnCSWZnyuZf5Il05QQ==} hasBin: true '@changesets/config@3.1.1': @@ -322,167 +331,167 @@ packages: resolution: {integrity: sha512-/yCrWGCoA1SVKOks25EGadP9Pnj0oAIHGpl2wH2M2Y46dPM2ueb8wyCVOD7O3WCTkaJ0IkKvzhl1JY7+uCT2Dw==} engines: {node: '>=v18'} - '@emnapi/core@1.4.4': - resolution: {integrity: sha512-A9CnAbC6ARNMKcIcrQwq6HeHCjpcBZ5wSx4U01WXCqEKlrzB9F9315WDNHkrs2xbx7YjjSxbUYxuN6EQzpcY2g==} + '@emnapi/core@1.4.5': + resolution: {integrity: sha512-XsLw1dEOpkSX/WucdqUhPWP7hDxSvZiY+fsUC14h+FtQ2Ifni4znbBt8punRX+Uj2JG/uDb8nEHVKvrVlvdZ5Q==} - '@emnapi/runtime@1.4.4': - resolution: {integrity: sha512-hHyapA4A3gPaDCNfiqyZUStTMqIkKRshqPIuDOXv1hcBnD4U3l8cP0T1HMCfGRxQ6V64TGCcoswChANyOAwbQg==} + '@emnapi/runtime@1.4.5': + resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==} - '@emnapi/wasi-threads@1.0.3': - resolution: {integrity: sha512-8K5IFFsQqF9wQNJptGbS6FNKgUTsSRYnTqNCG1vPP8jFdjSv18n2mQfJpkt2Oibo9iBEzcDnDxNwKTzC7svlJw==} + '@emnapi/wasi-threads@1.0.4': + resolution: {integrity: sha512-PJR+bOmMOPH8AtcTGAyYNiuJ3/Fcoj2XN/gBEWzDIKh254XO+mM9XoXHk5GNEhodxeMznbg7BlRojVbKN+gC6g==} - '@esbuild/aix-ppc64@0.25.6': - resolution: {integrity: sha512-ShbM/3XxwuxjFiuVBHA+d3j5dyac0aEVVq1oluIDf71hUw0aRF59dV/efUsIwFnR6m8JNM2FjZOzmaZ8yG61kw==} + '@esbuild/aix-ppc64@0.25.9': + resolution: {integrity: sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] - '@esbuild/android-arm64@0.25.6': - resolution: {integrity: sha512-hd5zdUarsK6strW+3Wxi5qWws+rJhCCbMiC9QZyzoxfk5uHRIE8T287giQxzVpEvCwuJ9Qjg6bEjcRJcgfLqoA==} + '@esbuild/android-arm64@0.25.9': + resolution: {integrity: sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg==} engines: {node: '>=18'} cpu: [arm64] os: [android] - '@esbuild/android-arm@0.25.6': - resolution: {integrity: sha512-S8ToEOVfg++AU/bHwdksHNnyLyVM+eMVAOf6yRKFitnwnbwwPNqKr3srzFRe7nzV69RQKb5DgchIX5pt3L53xg==} + '@esbuild/android-arm@0.25.9': + resolution: {integrity: sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ==} engines: {node: '>=18'} cpu: [arm] os: [android] - '@esbuild/android-x64@0.25.6': - resolution: {integrity: sha512-0Z7KpHSr3VBIO9A/1wcT3NTy7EB4oNC4upJ5ye3R7taCc2GUdeynSLArnon5G8scPwaU866d3H4BCrE5xLW25A==} + '@esbuild/android-x64@0.25.9': + resolution: {integrity: sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw==} engines: {node: '>=18'} cpu: [x64] os: [android] - '@esbuild/darwin-arm64@0.25.6': - resolution: {integrity: sha512-FFCssz3XBavjxcFxKsGy2DYK5VSvJqa6y5HXljKzhRZ87LvEi13brPrf/wdyl/BbpbMKJNOr1Sd0jtW4Ge1pAA==} + '@esbuild/darwin-arm64@0.25.9': + resolution: {integrity: sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] - '@esbuild/darwin-x64@0.25.6': - resolution: {integrity: sha512-GfXs5kry/TkGM2vKqK2oyiLFygJRqKVhawu3+DOCk7OxLy/6jYkWXhlHwOoTb0WqGnWGAS7sooxbZowy+pK9Yg==} + '@esbuild/darwin-x64@0.25.9': + resolution: {integrity: sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ==} engines: {node: '>=18'} cpu: [x64] os: [darwin] - '@esbuild/freebsd-arm64@0.25.6': - resolution: {integrity: sha512-aoLF2c3OvDn2XDTRvn8hN6DRzVVpDlj2B/F66clWd/FHLiHaG3aVZjxQX2DYphA5y/evbdGvC6Us13tvyt4pWg==} + '@esbuild/freebsd-arm64@0.25.9': + resolution: {integrity: sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-x64@0.25.6': - resolution: {integrity: sha512-2SkqTjTSo2dYi/jzFbU9Plt1vk0+nNg8YC8rOXXea+iA3hfNJWebKYPs3xnOUf9+ZWhKAaxnQNUf2X9LOpeiMQ==} + '@esbuild/freebsd-x64@0.25.9': + resolution: {integrity: sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] - '@esbuild/linux-arm64@0.25.6': - resolution: {integrity: sha512-b967hU0gqKd9Drsh/UuAm21Khpoh6mPBSgz8mKRq4P5mVK8bpA+hQzmm/ZwGVULSNBzKdZPQBRT3+WuVavcWsQ==} + '@esbuild/linux-arm64@0.25.9': + resolution: {integrity: sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw==} engines: {node: '>=18'} cpu: [arm64] os: [linux] - '@esbuild/linux-arm@0.25.6': - resolution: {integrity: sha512-SZHQlzvqv4Du5PrKE2faN0qlbsaW/3QQfUUc6yO2EjFcA83xnwm91UbEEVx4ApZ9Z5oG8Bxz4qPE+HFwtVcfyw==} + '@esbuild/linux-arm@0.25.9': + resolution: {integrity: sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw==} engines: {node: '>=18'} cpu: [arm] os: [linux] - '@esbuild/linux-ia32@0.25.6': - resolution: {integrity: sha512-aHWdQ2AAltRkLPOsKdi3xv0mZ8fUGPdlKEjIEhxCPm5yKEThcUjHpWB1idN74lfXGnZ5SULQSgtr5Qos5B0bPw==} + '@esbuild/linux-ia32@0.25.9': + resolution: {integrity: sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A==} engines: {node: '>=18'} cpu: [ia32] os: [linux] - '@esbuild/linux-loong64@0.25.6': - resolution: {integrity: sha512-VgKCsHdXRSQ7E1+QXGdRPlQ/e08bN6WMQb27/TMfV+vPjjTImuT9PmLXupRlC90S1JeNNW5lzkAEO/McKeJ2yg==} + '@esbuild/linux-loong64@0.25.9': + resolution: {integrity: sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ==} engines: {node: '>=18'} cpu: [loong64] os: [linux] - '@esbuild/linux-mips64el@0.25.6': - resolution: {integrity: sha512-WViNlpivRKT9/py3kCmkHnn44GkGXVdXfdc4drNmRl15zVQ2+D2uFwdlGh6IuK5AAnGTo2qPB1Djppj+t78rzw==} + '@esbuild/linux-mips64el@0.25.9': + resolution: {integrity: sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] - '@esbuild/linux-ppc64@0.25.6': - resolution: {integrity: sha512-wyYKZ9NTdmAMb5730I38lBqVu6cKl4ZfYXIs31Baf8aoOtB4xSGi3THmDYt4BTFHk7/EcVixkOV2uZfwU3Q2Jw==} + '@esbuild/linux-ppc64@0.25.9': + resolution: {integrity: sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] - '@esbuild/linux-riscv64@0.25.6': - resolution: {integrity: sha512-KZh7bAGGcrinEj4qzilJ4hqTY3Dg2U82c8bv+e1xqNqZCrCyc+TL9AUEn5WGKDzm3CfC5RODE/qc96OcbIe33w==} + '@esbuild/linux-riscv64@0.25.9': + resolution: {integrity: sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] - '@esbuild/linux-s390x@0.25.6': - resolution: {integrity: sha512-9N1LsTwAuE9oj6lHMyyAM+ucxGiVnEqUdp4v7IaMmrwb06ZTEVCIs3oPPplVsnjPfyjmxwHxHMF8b6vzUVAUGw==} + '@esbuild/linux-s390x@0.25.9': + resolution: {integrity: sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA==} engines: {node: '>=18'} cpu: [s390x] os: [linux] - '@esbuild/linux-x64@0.25.6': - resolution: {integrity: sha512-A6bJB41b4lKFWRKNrWoP2LHsjVzNiaurf7wyj/XtFNTsnPuxwEBWHLty+ZE0dWBKuSK1fvKgrKaNjBS7qbFKig==} + '@esbuild/linux-x64@0.25.9': + resolution: {integrity: sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg==} engines: {node: '>=18'} cpu: [x64] os: [linux] - '@esbuild/netbsd-arm64@0.25.6': - resolution: {integrity: sha512-IjA+DcwoVpjEvyxZddDqBY+uJ2Snc6duLpjmkXm/v4xuS3H+3FkLZlDm9ZsAbF9rsfP3zeA0/ArNDORZgrxR/Q==} + '@esbuild/netbsd-arm64@0.25.9': + resolution: {integrity: sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-x64@0.25.6': - resolution: {integrity: sha512-dUXuZr5WenIDlMHdMkvDc1FAu4xdWixTCRgP7RQLBOkkGgwuuzaGSYcOpW4jFxzpzL1ejb8yF620UxAqnBrR9g==} + '@esbuild/netbsd-x64@0.25.9': + resolution: {integrity: sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] - '@esbuild/openbsd-arm64@0.25.6': - resolution: {integrity: sha512-l8ZCvXP0tbTJ3iaqdNf3pjaOSd5ex/e6/omLIQCVBLmHTlfXW3zAxQ4fnDmPLOB1x9xrcSi/xtCWFwCZRIaEwg==} + '@esbuild/openbsd-arm64@0.25.9': + resolution: {integrity: sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-x64@0.25.6': - resolution: {integrity: sha512-hKrmDa0aOFOr71KQ/19JC7az1P0GWtCN1t2ahYAf4O007DHZt/dW8ym5+CUdJhQ/qkZmI1HAF8KkJbEFtCL7gw==} + '@esbuild/openbsd-x64@0.25.9': + resolution: {integrity: sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] - '@esbuild/openharmony-arm64@0.25.6': - resolution: {integrity: sha512-+SqBcAWoB1fYKmpWoQP4pGtx+pUUC//RNYhFdbcSA16617cchuryuhOCRpPsjCblKukAckWsV+aQ3UKT/RMPcA==} + '@esbuild/openharmony-arm64@0.25.9': + resolution: {integrity: sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] - '@esbuild/sunos-x64@0.25.6': - resolution: {integrity: sha512-dyCGxv1/Br7MiSC42qinGL8KkG4kX0pEsdb0+TKhmJZgCUDBGmyo1/ArCjNGiOLiIAgdbWgmWgib4HoCi5t7kA==} + '@esbuild/sunos-x64@0.25.9': + resolution: {integrity: sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw==} engines: {node: '>=18'} cpu: [x64] os: [sunos] - '@esbuild/win32-arm64@0.25.6': - resolution: {integrity: sha512-42QOgcZeZOvXfsCBJF5Afw73t4veOId//XD3i+/9gSkhSV6Gk3VPlWncctI+JcOyERv85FUo7RxuxGy+z8A43Q==} + '@esbuild/win32-arm64@0.25.9': + resolution: {integrity: sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ==} engines: {node: '>=18'} cpu: [arm64] os: [win32] - '@esbuild/win32-ia32@0.25.6': - resolution: {integrity: sha512-4AWhgXmDuYN7rJI6ORB+uU9DHLq/erBbuMoAuB4VWJTu5KtCgcKYPynF0YI1VkBNuEfjNlLrFr9KZPJzrtLkrQ==} + '@esbuild/win32-ia32@0.25.9': + resolution: {integrity: sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww==} engines: {node: '>=18'} cpu: [ia32] os: [win32] - '@esbuild/win32-x64@0.25.6': - resolution: {integrity: sha512-NgJPHHbEpLQgDH2MjQu90pzW/5vvXIZ7KOnPyNBm92A6WgZ/7b6fJyUBjoumLqeOQQGqY2QjQxRo97ah4Sj0cA==} + '@esbuild/win32-x64@0.25.9': + resolution: {integrity: sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -494,19 +503,19 @@ packages: resolution: {integrity: sha512-OEl393iCOoo/z8bMezRlJu+GlRGlsKbUAN7jKB6LhnKoqKve5DXRpalbItIIcwnCjs1k/FOPjFzcA6Qn+H+YbA==} engines: {node: '>=18.0.0', npm: '>=9.0.0'} - '@gerrit0/mini-shiki@3.7.0': - resolution: {integrity: sha512-7iY9wg4FWXmeoFJpUL2u+tsmh0d0jcEJHAIzVxl3TG4KL493JNnisdLAILZ77zcD+z3J0keEXZ+lFzUgzQzPDg==} + '@gerrit0/mini-shiki@3.11.0': + resolution: {integrity: sha512-ooCDMAOKv71O7MszbXjSQGcI6K5T6NKlemQZOBHLq7Sv/oXCRfYbZ7UgbzFdl20lSXju6Juds4I3y30R6rHA4Q==} '@ibm-cloud/openapi-ruleset-utilities@1.9.0': resolution: {integrity: sha512-AoFbSarOqFBYH+1TZ9Ahkm2IWYSi5v0pBk88fpV+5b3qGJukypX8PwvCWADjuyIccKg48/F73a6hTTkBzDQ2UA==} engines: {node: '>=16.0.0'} - '@ibm-cloud/openapi-ruleset@1.31.1': - resolution: {integrity: sha512-3WK2FREmDA2aadCjD71PE7tx5evyvmhg80ts1kXp2IzXIA0ZJ7guGM66tj40kxaqwpMSGchwEnnfYswntav76g==} + '@ibm-cloud/openapi-ruleset@1.31.2': + resolution: {integrity: sha512-g3YYNTiX6zW7quFvDD9szu+54oHj6+4vz8g3/ikOacVsVEX072CvhjX9zRZf1WH4zDXv8KbprsxV+osZQbXPlg==} engines: {node: '>=16.0.0'} - '@inquirer/confirm@5.1.13': - resolution: {integrity: sha512-EkCtvp67ICIVVzjsquUiVSd+V5HRGOGQfsqA4E4vMWhYnB7InUL0pa0TIWt1i+OfP16Gkds8CdIu6yGZwOM1Yw==} + '@inquirer/confirm@5.1.15': + resolution: {integrity: sha512-SwHMGa8Z47LawQN0rog0sT+6JpiL0B7eW9p1Bb7iCeKDGTI5Ez25TSc2l8kw52VV7hA4sX/C78CGkMrKXfuspA==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -514,8 +523,8 @@ packages: '@types/node': optional: true - '@inquirer/core@10.1.14': - resolution: {integrity: sha512-Ma+ZpOJPewtIYl6HZHZckeX1STvDnHTCB2GVINNUlSEn2Am6LddWwfPkIGY0IUFVjUUrr/93XlBwTK6mfLjf0A==} + '@inquirer/core@10.1.15': + resolution: {integrity: sha512-8xrp836RZvKkpNbVvgWUlxjT4CraKk2q+I3Ksy+seI2zkcE+y6wNs1BVhgcv8VyImFecUhdQrYLdW32pAjwBdA==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -523,12 +532,21 @@ packages: '@types/node': optional: true - '@inquirer/figures@1.0.12': - resolution: {integrity: sha512-MJttijd8rMFcKJC8NYmprWr6hD3r9Gd9qUC0XwPNwoEPWSMVJwA2MlXxF+nhZZNMY+HXsWa+o7KY2emWYIn0jQ==} + '@inquirer/external-editor@1.0.1': + resolution: {integrity: sha512-Oau4yL24d2B5IL4ma4UpbQigkVhzPDXLoqy1ggK4gnHg/stmkffJE4oOXHXF3uz0UEpywG68KcyXsyYpA1Re/Q==} engines: {node: '>=18'} + peerDependencies: + '@types/node': '>=18' + peerDependenciesMeta: + '@types/node': + optional: true - '@inquirer/type@3.0.7': - resolution: {integrity: sha512-PfunHQcjwnju84L+ycmcMKB/pTPIngjUJvfnRhKY6FKPuYXlM4aQCb/nIdTFR6BEhMjFvngzvng/vBAJMZpLSA==} + '@inquirer/figures@1.0.13': + resolution: {integrity: sha512-lGPVU3yO9ZNqA7vTYz26jny41lE7yoQansmqdMLBEfqaGsmdg7V3W9mK9Pvb5IL4EVZ9GnSDGMO/cJXud5dMaw==} + engines: {node: '>=18'} + + '@inquirer/type@3.0.8': + resolution: {integrity: sha512-lg9Whz8onIHRthWaN1Q9EGLa/0LFJjyM8mEUbL1eTi6yMGvBf8gvyDLtxSXztQsxMvhxxNpJYrwa1YHdq+w4Jw==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' @@ -536,8 +554,8 @@ packages: '@types/node': optional: true - '@jridgewell/sourcemap-codec@1.5.4': - resolution: {integrity: sha512-VT2+G1VQs/9oz078bLrYbecdZKs912zQlkelYpuf+SXF+QvZDYJlbx/LSx+meSAwdDFnF8FVXW92AVjjkVmgFw==} + '@jridgewell/sourcemap-codec@1.5.5': + resolution: {integrity: sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==} '@jsdevtools/ono@7.1.3': resolution: {integrity: sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg==} @@ -566,30 +584,42 @@ packages: '@manypkg/get-packages@1.1.3': resolution: {integrity: sha512-fo+QhuU3qE/2TQMQmbVMqaQ6EWbMhi4ABWP+O4AM1NqPBuy0OrApV5LO6BrrgnhtAHS2NH6RrVk9OL181tTi8A==} - '@module-federation/error-codes@0.15.0': - resolution: {integrity: sha512-CFJSF+XKwTcy0PFZ2l/fSUpR4z247+Uwzp1sXVkdIfJ/ATsnqf0Q01f51qqSEA6MYdQi6FKos9FIcu3dCpQNdg==} + '@module-federation/error-codes@0.18.0': + resolution: {integrity: sha512-Woonm8ehyVIUPXChmbu80Zj6uJkC0dD9SJUZ/wOPtO8iiz/m+dkrOugAuKgoiR6qH4F+yorWila954tBz4uKsQ==} - '@module-federation/runtime-core@0.15.0': - resolution: {integrity: sha512-RYzI61fRDrhyhaEOXH3AgIGlHiot0wPFXu7F43cr+ZnTi+VlSYWLdlZ4NBuT9uV6JSmH54/c+tEZm5SXgKR2sQ==} + '@module-federation/runtime-core@0.18.0': + resolution: {integrity: sha512-ZyYhrDyVAhUzriOsVfgL6vwd+5ebYm595Y13KeMf6TKDRoUHBMTLGQ8WM4TDj8JNsy7LigncK8C03fn97of0QQ==} - '@module-federation/runtime-tools@0.15.0': - resolution: {integrity: sha512-kzFn3ObUeBp5vaEtN1WMxhTYBuYEErxugu1RzFUERD21X3BZ+b4cWwdFJuBDlsmVjctIg/QSOoZoPXRKAO0foA==} + '@module-federation/runtime-tools@0.18.0': + resolution: {integrity: sha512-fSga9o4t1UfXNV/Kh6qFvRyZpPp3EHSPRISNeyT8ZoTpzDNiYzhtw0BPUSSD8m6C6XQh2s/11rI4g80UY+d+hA==} - '@module-federation/runtime@0.15.0': - resolution: {integrity: sha512-dTPsCNum9Bhu3yPOcrPYq0YnM9eCMMMNB1wuiqf1+sFbQlNApF0vfZxooqz3ln0/MpgE0jerVvFsLVGfqvC9Ug==} + '@module-federation/runtime@0.18.0': + resolution: {integrity: sha512-+C4YtoSztM7nHwNyZl6dQKGUVJdsPrUdaf3HIKReg/GQbrt9uvOlUWo2NXMZ8vDAnf/QRrpSYAwXHmWDn9Obaw==} - '@module-federation/sdk@0.15.0': - resolution: {integrity: sha512-PWiYbGcJrKUD6JZiEPihrXhV3bgXdll4bV7rU+opV7tHaun+Z0CdcawjZ82Xnpb8MCPGmqHwa1MPFeUs66zksw==} + '@module-federation/sdk@0.18.0': + resolution: {integrity: sha512-Lo/Feq73tO2unjmpRfyyoUkTVoejhItXOk/h5C+4cistnHbTV8XHrW/13fD5e1Iu60heVdAhhelJd6F898Ve9A==} - '@module-federation/webpack-bundler-runtime@0.15.0': - resolution: {integrity: sha512-i+3wu2Ljh2TmuUpsnjwZVupOVqV50jP0ndA8PSP4gwMKlgdGeaZ4VH5KkHAXGr2eiYUxYLMrJXz1+eILJqeGDg==} + '@module-federation/webpack-bundler-runtime@0.18.0': + resolution: {integrity: sha512-TEvErbF+YQ+6IFimhUYKK3a5wapD90d90sLsNpcu2kB3QGT7t4nIluE25duXuZDVUKLz86tEPrza/oaaCWTpvQ==} - '@mswjs/interceptors@0.39.2': - resolution: {integrity: sha512-RuzCup9Ct91Y7V79xwCb146RaBRHZ7NBbrIUySumd1rpKqHL5OonaqrGIbug5hNwP/fRyxFMA6ISgw4FTtYFYg==} + '@mswjs/interceptors@0.39.6': + resolution: {integrity: sha512-bndDP83naYYkfayr/qhBHMhk0YGwS1iv6vaEGcr0SQbO0IZtbOPqjKjds/WcG+bJA+1T5vCx6kprKOzn5Bg+Vw==} engines: {node: '>=18'} - '@napi-rs/wasm-runtime@0.2.11': - resolution: {integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==} + '@napi-rs/wasm-runtime@1.0.3': + resolution: {integrity: sha512-rZxtMsLwjdXkMUGC3WwsPwLNVqVqnTJT6MNIB6e+5fhMcSCPP0AOsNWuMQ5mdCq6HNjs/ZeWAEchpqeprqBD2Q==} + + '@noble/ciphers@1.3.0': + resolution: {integrity: sha512-2I0gnIVPtfnMw9ee9h1dJG7tp81+8Ob3OJb3Mv37rx5L40/b0i7djjCVvGOVqc9AEIQyvyu1i6ypKdFw8R8gQw==} + engines: {node: ^14.21.3 || >=16} + + '@noble/curves@1.9.6': + resolution: {integrity: sha512-GIKz/j99FRthB8icyJQA51E8Uk5hXmdyThjgQXRKiv9h0zeRlzSCLIzFw6K1LotZ3XuB7yzlf76qk7uBmTdFqA==} + engines: {node: ^14.21.3 || >=16} + + '@noble/hashes@1.8.0': + resolution: {integrity: sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==} + engines: {node: ^14.21.3 || >=16} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -612,44 +642,44 @@ packages: '@open-draft/until@2.1.0': resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} - '@orval/angular@7.10.0': - resolution: {integrity: sha512-M89GKo/PibxYXvOKp9+i6BLxhEW8YsO+evwuV2kMbDGNS3RiYDwzmMBcA9SVL7m8CumeZoxNEAXsupzq96ZAXA==} + '@orval/angular@7.11.2': + resolution: {integrity: sha512-v7I3MXlc1DTFHZlCo10uqBmss/4puXi1EbYdlYGfeZ2sYQiwtRFEYAMnSIxHzMtdtI4jd7iDEH0fZRA7W6yloA==} - '@orval/axios@7.10.0': - resolution: {integrity: sha512-AB6BjEwyguIcH8olzOTFPvwUP8z63yP4Jfl3T2UoeFchK04KqWqxbUoxmDG9xVQ79uMs/uOrb0X+GFwdZ56gAg==} + '@orval/axios@7.11.2': + resolution: {integrity: sha512-X5TJTFofCeJrQcHWoH0wz/032DBhPOQuZUUOPYO3DItOnq9/nfHJYKnUfg13wtYw0LVjCxyTZpeGLUBZnY804A==} - '@orval/core@7.10.0': - resolution: {integrity: sha512-Lm7HY4Kwzehe+2HNfi+Ov/IZ+m3nj3NskVGvOyJDAqaaHB7G/xydSCtgELG32ur4G+M/XmwChAjoP4TCNVh0VA==} + '@orval/core@7.11.2': + resolution: {integrity: sha512-5k2j4ro53yZ3J+tGMu3LpLgVb2OBtxNDgyrJik8qkrFyuORBLx/a+AJRFoPYwZmtnMZzzRXoH4J/fbpW5LXIyg==} - '@orval/fetch@7.10.0': - resolution: {integrity: sha512-bWcXPmARcXhXRveBtUnkfPlkUcLEzfGaflAdqN4CtScS48LgNrXXtuyt2BV2wvEXAavCWIhnRyQvz2foTU4U8Q==} + '@orval/fetch@7.11.2': + resolution: {integrity: sha512-FuupASqk4Dn8ZET7u5Ra5djKy22KfRfec60zRR/o5+L5iQkWKEe/A5DBT1PwjTMnp9789PEGlFPQjZNwMG98Tg==} - '@orval/hono@7.10.0': - resolution: {integrity: sha512-bOxTdZxx2BpGQf7fFuCeeUe//ZYDWc6Yz9WOhj3HrnsD06xTRKFWVBi/QZ29QcAPxqwunu/VWwbqoiHHuuX3bA==} + '@orval/hono@7.11.2': + resolution: {integrity: sha512-SddhKMYMB/dJH3YQx3xi0Zd+4tfhrEkqJdqQaYLXgENJiw0aGbdaZTdY6mb/e6qP38TTK6ME2PkYOqwkl2DQ7g==} - '@orval/mcp@7.10.0': - resolution: {integrity: sha512-ztLXGOSxK7jFwPKAeYPR85BjKRh3KTClKEnM2MFmo2FHHojn72DPXRPCmy0Wbw5Ee+JOxK2kIpyx+HZi9XVxiA==} + '@orval/mcp@7.11.2': + resolution: {integrity: sha512-9kGKko8wLuCbeETp8Pd8lXLtBpLzEJfR2kl2m19AI3nAoHXE/Tnn3KgjMIg0qvCcsRXGXdYJB7wfxy2URdAxVA==} - '@orval/mock@7.10.0': - resolution: {integrity: sha512-vkEWCaKEyMfWGJF5MtxVzl+blwc9vYzwdYxMoSdjA5yS2dNBrdNlt1aLtb4+aoI1jgBgpCg/OB7VtWaL5QYidA==} + '@orval/mock@7.11.2': + resolution: {integrity: sha512-+uRq6BT6NU2z0UQtgeD6FMuLAxQ5bjJ5PZK3AsbDYFRSmAWUWoeaQcoWyF38F4t7ez779beGs3AlUg+z0Ec4rQ==} - '@orval/query@7.10.0': - resolution: {integrity: sha512-DBVg8RyKWSQKhr5Zfvxx5XICUdDUkG4MJKSd4BQCrRjUWgN6vwGunMEKyfnjpS5mFUSCkwWD/I3rTkjW6aysJA==} + '@orval/query@7.11.2': + resolution: {integrity: sha512-C/it+wNfcDtuvpB6h/78YwWU+Rjk7eU1Av8jAoGnvxMRli4nnzhSZ83HMILGhYQbE9WcfNZxQJ6OaBoTWqACPg==} - '@orval/swr@7.10.0': - resolution: {integrity: sha512-ZdApomZQhJ5ZogjJgBK+haeCOP9gUaMaGKGjTVJr86jJaygDcKn54Ok1quiDUCbX42Eye+cgmQJeKeZvqnPohA==} + '@orval/swr@7.11.2': + resolution: {integrity: sha512-95GkKLVy67xJvsiVvK4nTOsCpebWM54FvQdKQaqlJ0FGCNUbqDjVRwBKbjP6dLc/B3wTmBAWlFSLbdVmjGCTYg==} - '@orval/zod@7.10.0': - resolution: {integrity: sha512-AB/508IBMlVDBcGvlq+ASz7DvqU3nhoDnIeBCyjwNfQwhYzREU0qqiFBnH0XAW70c6SCMf9/bIcYbw8GAx/zxA==} + '@orval/zod@7.11.2': + resolution: {integrity: sha512-4MzTg5Wms8/LlM3CbYu80dvCbP88bVlQjnYsBdFXuEv0K2GYkBCAhVOrmXCVrPXE89neV6ABkvWQeuKZQpkdxQ==} - '@rsbuild/core@1.4.5': - resolution: {integrity: sha512-uNaR5/d5FoZjyr8gp39ZLLeQzCAg4folvLS6XDlqtehqwVMCRuJ4IPzQ6nDKzkzCVZI3EBJvKHMZIJOBj7Ttgw==} - engines: {node: '>=16.10.0'} + '@rsbuild/core@1.5.0-beta.4': + resolution: {integrity: sha512-h1jqpjZunalsdxTcJCbY8DovLu6F4MQgsYdZyxDjUp0xuggQayi1tpcE6MhLs3WWa077g+LZ2Am4gKt/pl/W9Q==} + engines: {node: '>=18.12.0'} hasBin: true - '@rslib/core@0.10.5': - resolution: {integrity: sha512-kThW/bkKgja++/AykW1fJaRK+TAiW3+ZSWiCKJxHHS87ZQc/PeRTxk2A0upHi7R3CyfdGgXGNcEBPoeBUj4zYw==} - engines: {node: '>=16.7.0'} + '@rslib/core@0.12.2': + resolution: {integrity: sha512-5DPVxmzzyoQlLqSt8Y/8kbYNtbJ0AEVUXd1hDFQ0Iq5Eb5XA4363PDeLdfeKJ1h93YqT7M9WZ3Cyhvosx1EimQ==} + engines: {node: '>=18.12.0'} hasBin: true peerDependencies: '@microsoft/api-extractor': ^7 @@ -660,61 +690,61 @@ packages: typescript: optional: true - '@rspack/binding-darwin-arm64@1.4.5': - resolution: {integrity: sha512-rK8mJ+85cXrGSTZvr5vqI17TDimAUWYjl0T+JEg5MTqRNbpyovbGHbrrsQyIicwaFOS1wWkaLrBolC/+/FLUeg==} + '@rspack/binding-darwin-arm64@1.5.0-beta.1': + resolution: {integrity: sha512-aXSbz9Bo480xNDK6v64SZ19I/bmMuxaOuex6V9q0S+v3qx/ZsUWL+5aUd71scq7EfAb3KkvQFsYACpt5PMZ9DQ==} cpu: [arm64] os: [darwin] - '@rspack/binding-darwin-x64@1.4.5': - resolution: {integrity: sha512-6eOhh18VD8x5+SJrs/K6XiDw+FYffzDMsI3Sz78mQW5xvHYzN3HJxIw7oG7UYXqF5I2yORmqvdxV1aAnv8Fc4g==} + '@rspack/binding-darwin-x64@1.5.0-beta.1': + resolution: {integrity: sha512-addeCT0bXtfOfvJZdVuHWBl20Cd8RmweOX03OiEH4AmQc9EgUEP/oCGpOmakBXxUCl3x/RnlrXx2nD1uDyuyLA==} cpu: [x64] os: [darwin] - '@rspack/binding-linux-arm64-gnu@1.4.5': - resolution: {integrity: sha512-vnz5OItcPREgz+hVqx14HRf0aJQ7yI/2ZEbeTC+Y1JSCbeYAcu6NXYVXDwTOgCNOp1AdMR+rmItHWiJ7goI//Q==} + '@rspack/binding-linux-arm64-gnu@1.5.0-beta.1': + resolution: {integrity: sha512-fYgOfSsA0J0rUA40ZEexrMRKyIVAUo4m0KShTm6yVaAzQHWVZ0xjjcoLFNxCVE7EvAPI7wl9fDOyr7Y8EylVfQ==} cpu: [arm64] os: [linux] - '@rspack/binding-linux-arm64-musl@1.4.5': - resolution: {integrity: sha512-E4dUEDpAsQ5jTvt8AXs0VY3vxTzSf07CM5zi797VaFzZzbcZqAoBmlAxYTSyl7/BgAxHSg8AYJS5c8l03vXM4w==} + '@rspack/binding-linux-arm64-musl@1.5.0-beta.1': + resolution: {integrity: sha512-wWlOzsoJU2HJyPxoCDScW4zt3+5WO6NI8B7jSmhVA9dfmvCYUKktt/YZpskcgMsvCgtzXTE62wDc+VTQ5ucp9A==} cpu: [arm64] os: [linux] - '@rspack/binding-linux-x64-gnu@1.4.5': - resolution: {integrity: sha512-XQxibZY+joqRfoJQwT1sfN68pRExOvJniWBUJfov6ShG/DFSVbMJ2UTwv5pbruIXA/lLnk7KblPdF8pO0WWQvw==} + '@rspack/binding-linux-x64-gnu@1.5.0-beta.1': + resolution: {integrity: sha512-OlgQIQLDLDDXvbUYBEfZmofO3uTDi0rGfIr58PXz/wTF87KdwqlU0HyjIeaeDUaQlV+lNXNysuCwvI0hl/o2tw==} cpu: [x64] os: [linux] - '@rspack/binding-linux-x64-musl@1.4.5': - resolution: {integrity: sha512-bOZmkCZamOz/+D3AA3uHII3rLIx4WtPk+KbDe3nfIVHhgxUK1nmv0vHtKzDA5iplucJ4ha/Rx9TEFyRwnBJH0A==} + '@rspack/binding-linux-x64-musl@1.5.0-beta.1': + resolution: {integrity: sha512-LkQSyfyf5Jy0UGD0tvm2Gz+0VjboawtRrYd+qYHE0Pm4h7tTJWyqnh02LRTROxOl3GrssC1VGn6J8XYTxOAWug==} cpu: [x64] os: [linux] - '@rspack/binding-wasm32-wasi@1.4.5': - resolution: {integrity: sha512-LRyln0jg2FblwFQg+0lPVc/bvDeo3A3EVWQtsTtOwjb4cjAG/Zqo5Q0VobaJTKgBOF9eAHTo9IL92SSj433+Eg==} + '@rspack/binding-wasm32-wasi@1.5.0-beta.1': + resolution: {integrity: sha512-ysnuVnqC9byoYfoAi/TsV0U5ZUxU0snnVPa/SvQEO6ew3J2GaNDq1vS1zWo0SOA4eLmwkop0/UcH8n3VXOy7NA==} cpu: [wasm32] - '@rspack/binding-win32-arm64-msvc@1.4.5': - resolution: {integrity: sha512-JWc15Mof/aC41UQSZLwa6oEsPYaYCApW0152Abhnt27qir2pfqYcT5qWt26OJvFDJoe+KzpIG1H91yJviChYYw==} + '@rspack/binding-win32-arm64-msvc@1.5.0-beta.1': + resolution: {integrity: sha512-vcMXybMchQomBODyi6aIMCur8/oQktw+iVv0dH3hiiWy0v2g8xS9VLMjWXfGZAhonhRe7YWTP12dxCPbWmQyZw==} cpu: [arm64] os: [win32] - '@rspack/binding-win32-ia32-msvc@1.4.5': - resolution: {integrity: sha512-PpyNunP8zC5AQtF3Pww7F41bwoJwmGzdJuv2lk/3l74UhjhT4Ac4/dmEaKiYeOr69PPlCtn7Des9VEFufYAZAQ==} + '@rspack/binding-win32-ia32-msvc@1.5.0-beta.1': + resolution: {integrity: sha512-fCj904xjc5iKOdUS0VLUE/LbAQZWlub/TF0ZKhzq2UK8WWwrfhA5U8ZHximU0A0LVDoMVZCM5M12rO12P0uHKw==} cpu: [ia32] os: [win32] - '@rspack/binding-win32-x64-msvc@1.4.5': - resolution: {integrity: sha512-elzpVGJW0W9DTkfJ7JyvMyi2Rbot5Q6rVBBKSh0lRWhZE/LnDJ/1WkS/9yER8XPGjO7umP1hD72ML1SoBddXmA==} + '@rspack/binding-win32-x64-msvc@1.5.0-beta.1': + resolution: {integrity: sha512-iWCoFMwP2aUea1mIp2+mTE7IKj6wp9hxMuZgOcEGWQidE7pUss5/Zp3wrOSWnnyovIeQLmK9wsQEA/W3i3MiAQ==} cpu: [x64] os: [win32] - '@rspack/binding@1.4.5': - resolution: {integrity: sha512-hO7DrZMMOyzwK7EEYfHMJmWhsNjeYLr39pEnXOWeuCCcwus6e/QNSSf2m/2mSFf0JeINwQqHkA1JvJEZ5JSj6g==} + '@rspack/binding@1.5.0-beta.1': + resolution: {integrity: sha512-qZ+cxvsNvXBOPX0NEP+KfxQlJI7TDZR2XLS8Jl+zHl2kgulEOBWsBa7Q1Dcw73YQgz2owxP3OWl3f8LWXnnC1Q==} - '@rspack/core@1.4.5': - resolution: {integrity: sha512-4OlxGQ4yPbAOYbVStMotaYrydm8r5VbLByrmQ34LNBYIDSmwaBmHQVMYGIesuGW681pr139XwInKvsoAoW6VTA==} - engines: {node: '>=16.0.0'} + '@rspack/core@1.5.0-beta.1': + resolution: {integrity: sha512-o3yQreNKldm0k96wPMpXBI9p0B03LpeK3XyV4vhk24RfLIa2p6C2LPF4xn6U2M28CFQkSbeu1vwlMHnfW4xHNg==} + engines: {node: '>=18.12.0'} peerDependencies: '@swc/helpers': '>=0.5.1' peerDependenciesMeta: @@ -725,17 +755,26 @@ packages: resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} engines: {node: '>=16.0.0'} - '@shikijs/engine-oniguruma@3.7.0': - resolution: {integrity: sha512-5BxcD6LjVWsGu4xyaBC5bu8LdNgPCVBnAkWTtOCs/CZxcB22L8rcoWfv7Hh/3WooVjBZmFtyxhgvkQFedPGnFw==} + '@scure/base@1.2.6': + resolution: {integrity: sha512-g/nm5FgUa//MCj1gV09zTJTaM6KBAHqLN907YVQqf7zC49+DcO4B1so4ZX07Ef10Twr6nuqYEH9GEggFXA4Fmg==} + + '@scure/bip32@1.7.0': + resolution: {integrity: sha512-E4FFX/N3f4B80AKWp5dP6ow+flD1LQZo/w8UnLGYZO674jS6YnYeepycOOksv+vLPSpgN35wgKgy+ybfTb2SMw==} + + '@scure/bip39@1.6.0': + resolution: {integrity: sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A==} - '@shikijs/langs@3.7.0': - resolution: {integrity: sha512-1zYtdfXLr9xDKLTGy5kb7O0zDQsxXiIsw1iIBcNOO8Yi5/Y1qDbJ+0VsFoqTlzdmneO8Ij35g7QKF8kcLyznCQ==} + '@shikijs/engine-oniguruma@3.11.0': + resolution: {integrity: sha512-4DwIjIgETK04VneKbfOE4WNm4Q7WC1wo95wv82PoHKdqX4/9qLRUwrfKlmhf0gAuvT6GHy0uc7t9cailk6Tbhw==} - '@shikijs/themes@3.7.0': - resolution: {integrity: sha512-VJx8497iZPy5zLiiCTSIaOChIcKQwR0FebwE9S3rcN0+J/GTWwQ1v/bqhTbpbY3zybPKeO8wdammqkpXc4NVjQ==} + '@shikijs/langs@3.11.0': + resolution: {integrity: sha512-Njg/nFL4HDcf/ObxcK2VeyidIq61EeLmocrwTHGGpOQx0BzrPWM1j55XtKQ1LvvDWH15cjQy7rg96aJ1/l63uw==} - '@shikijs/types@3.7.0': - resolution: {integrity: sha512-MGaLeaRlSWpnP0XSAum3kP3a8vtcTsITqoEPYdt3lQG3YCdQH4DnEhodkYcNMcU0uW0RffhoD1O3e0vG5eSBBg==} + '@shikijs/themes@3.11.0': + resolution: {integrity: sha512-BhhWRzCTEk2CtWt4S4bgsOqPJRkapvxdsifAwqP+6mk5uxboAQchc0etiJ0iIasxnMsb764qGD24DK9albcU9Q==} + + '@shikijs/types@3.11.0': + resolution: {integrity: sha512-RB7IMo2E7NZHyfkqAuaf4CofyY8bPzjWPjJRzn6SEak3b46fIQyG6Vx5fG/obqkfppQ+g8vEsiD7Uc6lqQt32Q==} '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -816,8 +855,8 @@ packages: '@swc/helpers@0.5.17': resolution: {integrity: sha512-5IKx/Y13RsYd+sauPb2x+U/xZikHjolzfuDgTAl/Tdf3Q8rslRvC19NKDLgAJQ6wsqADk10ntlv08nPFw/gO/A==} - '@tybys/wasm-util@0.9.0': - resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==} + '@tybys/wasm-util@0.10.0': + resolution: {integrity: sha512-VyyPYFlOMNylG45GoAe0xDoLwWuowvf92F9kySqzYh8vmYm7D2u4iUJKa1tOUpS70Ku13ASrOkS4ScXFsTaCNQ==} '@types/conventional-commits-parser@5.0.1': resolution: {integrity: sha512-7uz5EHdzz2TqoMfV7ee61Egf5y6NkcO4FB/1iCCQnbeiI1F3xzv3vK5dBCXUCLQgGYS+mUeigK1iKQzvED+QnQ==} @@ -837,8 +876,8 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - '@types/node@24.0.10': - resolution: {integrity: sha512-ENHwaH+JIRTDIEEbDK6QSQntAYGtbvdDXnMXnZaZ6k13Du1dPMmprkEHIL7ok2Wl2aZevetwTAb5S+7yIF+enA==} + '@types/node@24.3.0': + resolution: {integrity: sha512-aPTXCrfwnDLj4VvXrm+UUCQjNEvJgNA8s5F1cvwQU+3KNltTOkBm1j30uNLyqqPNe7gE3KFzImYoZEfLhp4Yow==} '@types/statuses@2.0.6': resolution: {integrity: sha512-xMAgYwceFhRA2zY+XbEA7mxYbA093wdiW8Vu6gZPGWy9cmOyU9XesH1tNcEWsKFd5Vzrqx5T3D38PWx1FIIXkA==} @@ -856,6 +895,17 @@ packages: resolution: {integrity: sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==} hasBin: true + abitype@1.0.8: + resolution: {integrity: sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg==} + peerDependencies: + typescript: '>=5.0.4' + zod: ^3 >=3.22.0 + peerDependenciesMeta: + typescript: + optional: true + zod: + optional: true + abort-controller@3.0.0: resolution: {integrity: sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==} engines: {node: '>=6.5'} @@ -945,6 +995,9 @@ packages: resolution: {integrity: sha512-pbnl5XzGBdrFU/wT4jqmJVPn2B6UHPBOhzMQkY/SPUPB6QtUXtmBHBIwCbXJol93mOpGMnQyP/+BB19q04xj7g==} engines: {node: '>=4'} + bignumber.js@9.3.1: + resolution: {integrity: sha512-Ko0uX15oIUS7wJ3Rb30Fs6SkVbLmPBAKdlm7q9+ak9bbIeFf0MwuBsQV6z7+X768/cHsfg+WlysDWJcmthjsjQ==} + brace-expansion@1.1.12: resolution: {integrity: sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==} @@ -986,8 +1039,8 @@ packages: resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} - chardet@0.7.0: - resolution: {integrity: sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==} + chardet@2.1.0: + resolution: {integrity: sha512-bNFETTG/pM5ryzQ9Ad0lJOTa6HWD/YsScAR3EnCPZRPlQh77JocYktSHOUHelyhm8IARL+o4c4F1bP5KVOjiRA==} chokidar@4.0.3: resolution: {integrity: sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==} @@ -1038,8 +1091,8 @@ packages: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} - core-js@3.44.0: - resolution: {integrity: sha512-aFCtd4l6GvAXwVEh3XbbVqJGHDJt0OZRa+5ePGx3LLwi12WfexqQxcsohb2wgsa/92xtl19Hd66G/L+TaAxDMw==} + core-js@3.45.0: + resolution: {integrity: sha512-c2KZL9lP4DjkN3hk/an4pWn5b5ZefhRJnAc42n6LJ19kSnbeRbdQZE5dSeE2LBol1OwJD3X1BQvFTAsa8ReeDA==} cosmiconfig-typescript-loader@6.1.0: resolution: {integrity: sha512-tJ1w35ZRUiM5FeTzT7DtYWAFFv37ZLqSRkGi2oeCK1gPhvaWjkAtfXvLmvE1pRfxxp9aQo6ba/Pvg1dKj05D4g==} @@ -1164,8 +1217,8 @@ packages: es6-promise@3.3.1: resolution: {integrity: sha512-SOp9Phqvqn7jtEUxPWdWfWoLmyt2VaJ6MpvP9Comy1MceMXqE6bxvaTu4iaxpYYPzhny28Lc+M87/c2cPK6lDg==} - esbuild@0.25.6: - resolution: {integrity: sha512-GVuzuUwtdsghE3ocJ9Bs8PNoF13HNQ5TXbEi2AhvVb8xU1Iwt9Fos9FEamfoee+u/TOsn7GUWc04lz46n2bbTg==} + esbuild@0.25.9: + resolution: {integrity: sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g==} engines: {node: '>=18'} hasBin: true @@ -1186,6 +1239,9 @@ packages: resolution: {integrity: sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==} engines: {node: '>=6'} + eventemitter3@5.0.1: + resolution: {integrity: sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA==} + execa@5.1.1: resolution: {integrity: sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==} engines: {node: '>=10'} @@ -1193,10 +1249,6 @@ packages: extendable-error@0.1.7: resolution: {integrity: sha512-UOiS2in6/Q0FK0R0q6UY9vYpQ21mr/Qn1KOnte7vsACuNJf514WvCCUHSRCPcgjPT2bAhNIJdlE6bVap1GKmeg==} - external-editor@3.1.0: - resolution: {integrity: sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==} - engines: {node: '>=4'} - fast-deep-equal@3.1.3: resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} @@ -1216,8 +1268,9 @@ packages: fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} - fdir@6.4.6: - resolution: {integrity: sha512-hiFoqpyZcfNm1yc4u8oWCf9A2c4D3QjCrks3zmoVKVxpQRzmPNar1hUJcBG2RQHvEVGDN+Jm81ZheVLAQMK6+w==} + fdir@6.5.0: + resolution: {integrity: sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==} + engines: {node: '>=12.0.0'} peerDependencies: picomatch: ^3 || ^4 peerDependenciesMeta: @@ -1244,8 +1297,8 @@ packages: resolution: {integrity: sha512-dKx12eRCVIzqCxFGplyFKJMPvLEWgmNtUrpTiJIR5u97zEhRG8ySrtboPHZXx7daLxQVrl643cTzbab2tkQjxg==} engines: {node: '>= 0.4'} - fs-extra@11.3.0: - resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==} + fs-extra@11.3.1: + resolution: {integrity: sha512-eXvGGwZ5CL17ZSwHWd3bbgk7UUpF6IFHtP57NYYakPvHOs8GDgDe5KJI36jIJzDkJ6eJjuzRA8eBQb6SkKue0g==} engines: {node: '>=14.14'} fs-extra@7.0.1: @@ -1372,8 +1425,8 @@ packages: engines: {node: '>=18'} hasBin: true - iconv-lite@0.4.24: - resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} engines: {node: '>=0.10.0'} ignore@5.3.2: @@ -1530,10 +1583,19 @@ packages: isexe@2.0.0: resolution: {integrity: sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==} + isows@1.0.7: + resolution: {integrity: sha512-I1fSfDCZL5P0v33sVqeTDSpcstAg/N+wF5HS033mogOVIp4B+oHC7oOCsA3axAbBSGTJ8QubbNmnIRN/h8U7hg==} + peerDependencies: + ws: '*' + jiti@2.4.2: resolution: {integrity: sha512-rg9zJN+G4n2nfJl5MW3BMygZX56zKPNVEYYqq7adpmMh4Jn2QNEwhvQlFy6jPVdcod7txZtKHWnyZiA3a0zP7A==} hasBin: true + jiti@2.5.1: + resolution: {integrity: sha512-twQoecYPiVA5K/h6SxtORw/Bs3ar+mLUtoPSc7iMXzQzK8d7eJ/R09wmTwAjiamETn1cXYPGfNnu7DMoHgu12w==} + hasBin: true + js-tokens@4.0.0: resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} @@ -1566,8 +1628,8 @@ packages: jsonfile@4.0.0: resolution: {integrity: sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==} - jsonfile@6.1.0: - resolution: {integrity: sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==} + jsonfile@6.2.0: + resolution: {integrity: sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==} jsonparse@1.3.1: resolution: {integrity: sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==} @@ -1716,8 +1778,8 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - msw@2.10.3: - resolution: {integrity: sha512-rpqW4wIqISJlgDfu3tiqzuWC/d6jofSuMUsBu1rwepzSwX21aQoagsd+fjahJ8sewa6FwlYhu4no+jfGVQm2IA==} + msw@2.10.5: + resolution: {integrity: sha512-0EsQCrCI1HbhpBWd89DvmxY6plmvrM96b0sCIztnvcNHQbXn5vqwm1KlXslo6u4wN9LFGLC1WFjjgljcQhe40A==} engines: {node: '>=18'} hasBin: true peerDependencies: @@ -1795,14 +1857,10 @@ packages: openapi3-ts@4.4.0: resolution: {integrity: sha512-9asTNB9IkKEzWMcHmVZE7Ts3kC9G7AFHfs8i7caD8HbI76gEjdkId4z/AkP83xdZsH7PLAnnbl47qZkXuxpArw==} - orval@7.10.0: - resolution: {integrity: sha512-R1TlDDgK82dHfTXG0IuaIXHOrk6HQ1CuGejQQpQW9mBSCQA84AInp8U4Ovxw3upjMFNhghE8OlAQqD0ES8GgHQ==} + orval@7.11.2: + resolution: {integrity: sha512-Cjc/dgnQwAOkvymzvPpFqFc2nQwZ29E+ZFWUI8yKejleHaoFKIdwvkM/b1njtLEjePDcF0hyqXXCTz2wWaXLig==} hasBin: true - os-tmpdir@1.0.2: - resolution: {integrity: sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==} - engines: {node: '>=0.10.0'} - outdent@0.5.0: resolution: {integrity: sha512-/jHxFIzoMXdqPzTaCpFzAAWhpkSjZPF4Vsn6jAfNpmbH/ymsmd7Qc6VE9BGn0L6YMj6uwpQLxCECpus4ukKS9Q==} @@ -1813,6 +1871,14 @@ packages: resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==} engines: {node: '>= 0.4'} + ox@0.8.7: + resolution: {integrity: sha512-W1f0FiMf9NZqtHPEDEAEkyzZDwbIKfmH2qmQx8NNiQ/9JhxrSblmtLJsSfTtQG5YKowLOnBlLVguCyxm/7ztxw==} + peerDependencies: + typescript: '>=5.4.0' + peerDependenciesMeta: + typescript: + optional: true + p-filter@2.1.0: resolution: {integrity: sha512-ZBxxZ5sL2HghephhpGAQdoskxplTwr7ICaehZwLIlfL6acuVgZPm8yBNuRAFBGEqtD/hmUeq9eqLg2ys9Xr/yw==} engines: {node: '>=8'} @@ -1886,8 +1952,8 @@ packages: resolution: {integrity: sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==} engines: {node: '>=8.6'} - picomatch@4.0.2: - resolution: {integrity: sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==} + picomatch@4.0.3: + resolution: {integrity: sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==} engines: {node: '>=12'} pify@4.0.1: @@ -1918,8 +1984,8 @@ packages: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} - quansync@0.2.10: - resolution: {integrity: sha512-t41VRkMYbkHyCYmOvx/6URnN80H7k4X0lLdBMGsz+maAwrJQYB1djpV6vHrQIBE0WBSGqhtEHrK9U3DWWH8v7A==} + quansync@0.2.11: + resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} @@ -1972,9 +2038,9 @@ packages: resolution: {integrity: sha512-g6QUff04oZpHs0eG5p83rFLhHeV00ug/Yf9nZM6fLeUrPguBTkTQOdpAWWspMh55TZfVQDPaN3NQJfbVRAxdIw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} - rsbuild-plugin-dts@0.10.5: - resolution: {integrity: sha512-gjngxgV0RD4T7aKDTf7kho9IUBNjHR+Y3krYwNEnUakOiuk9Fn03MxVCcASyCsPY+H7HooI8P8wXZoPhiSWSZA==} - engines: {node: '>=16.7.0'} + rsbuild-plugin-dts@0.12.2: + resolution: {integrity: sha512-qI7wwT7R6T5LzuwcBWt6dZYaS1Fv5Tg2D3OHbAX9MXYn2oJ3eJjdwXU2LcLALd1CpXUPaQCjOTHRMJzHT0++JQ==} + engines: {node: '>=18.12.0'} peerDependencies: '@microsoft/api-extractor': ^7 '@rsbuild/core': 1.x @@ -2159,10 +2225,6 @@ packages: resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} engines: {node: '>=12.0.0'} - tmp@0.0.33: - resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==} - engines: {node: '>=0.6.0'} - to-regex-range@5.0.1: resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} engines: {node: '>=8.0'} @@ -2194,8 +2256,8 @@ packages: tslib@2.8.1: resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==} - tsx@4.20.3: - resolution: {integrity: sha512-qjbnuR9Tr+FJOMBqJCW5ehvIo/buZq7vH7qD7JziU98h6l3qGy0a/yPFjwO+y0/T7GFpNgNAvEcPPVfyT8rrPQ==} + tsx@4.20.4: + resolution: {integrity: sha512-yyxBKfORQ7LuRt/BQKBXrpcq59ZvSW0XxwfjAt3w2/8PmdxaFzijtMhTawprSHhpzeM5BgU2hXHG3lklIERZXg==} engines: {node: '>=18.0.0'} hasBin: true @@ -2223,21 +2285,21 @@ packages: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} - typedoc-plugin-markdown@4.7.0: - resolution: {integrity: sha512-PitbnAps2vpcqK2gargKoiFXLWFttvwUbyns/E6zGIFG5Gz8ZQJGttHnYR9csOlcSjB/uyjd8tnoayrtsXG17w==} + typedoc-plugin-markdown@4.8.1: + resolution: {integrity: sha512-ug7fc4j0SiJxSwBGLncpSo8tLvrT9VONvPUQqQDTKPxCoFQBADLli832RGPtj6sfSVJebNSrHZQRUdEryYH/7g==} engines: {node: '>= 18'} peerDependencies: typedoc: 0.28.x - typedoc@0.28.7: - resolution: {integrity: sha512-lpz0Oxl6aidFkmS90VQDQjk/Qf2iw0IUvFqirdONBdj7jPSN9mGXhy66BcGNDxx5ZMyKKiBVAREvPEzT6Uxipw==} + typedoc@0.28.10: + resolution: {integrity: sha512-zYvpjS2bNJ30SoNYfHSRaFpBMZAsL7uwKbWwqoCNFWjcPnI3e/mPLh2SneH9mX7SJxtDpvDgvd9/iZxGbo7daw==} engines: {node: '>= 18', pnpm: '>= 10'} hasBin: true peerDependencies: - typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x + typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x || 5.8.x || 5.9.x - typescript@5.8.3: - resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + typescript@5.9.2: + resolution: {integrity: sha512-CWBzXQrc/qOkhidw1OzBTQuYRbfyxDXJMVJ1XNwUHGROVmuaeiEm3OslpZ1RV96d7SKKjZKrSJu3+t/xlw3R9A==} engines: {node: '>=14.17'} hasBin: true @@ -2248,8 +2310,8 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} - undici-types@7.8.0: - resolution: {integrity: sha512-9UJ2xGDvQ43tYyVMpuHlsgApydB8ZKfVYTsLDhXkFL/6gfkp+U8xTGdh8pMJv1SpZna0zxG1DwsKZsreLbXBxw==} + undici-types@7.10.0: + resolution: {integrity: sha512-t5Fy/nfn+14LuOc2KNYg75vZqClpAiqscVvMygNnlsHBFpSXdJaYtXMcdNLpl/Qvc3P2cB3s6lOV51nqsFq4ag==} unicorn-magic@0.1.0: resolution: {integrity: sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==} @@ -2281,6 +2343,14 @@ packages: resolution: {integrity: sha512-BgWVbCI72aIQy937xbawcs+hrVaN/CZ2UwutgaJ36hGqRrLNM+f5LUT/YPRbo8IV/ASeFzXszezV+y2+rq3l8A==} engines: {node: '>= 0.10'} + viem@2.34.0: + resolution: {integrity: sha512-HJZG9Wt0DLX042MG0PK17tpataxtdAEhpta9/Q44FqKwy3xZMI5Lx4jF+zZPuXFuYjZ68R0PXqRwlswHs6r4gA==} + peerDependencies: + typescript: '>=5.0.4' + peerDependenciesMeta: + typescript: + optional: true + webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -2316,6 +2386,18 @@ packages: resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} engines: {node: '>=10'} + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} @@ -2324,8 +2406,8 @@ packages: resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} engines: {node: '>= 6'} - yaml@2.8.0: - resolution: {integrity: sha512-4lLa/EcQCB0cJkyts+FpIRx5G/llPxfP6VQU5KByHEhLxY3IJCH0f0Hy1MHI8sClTvsIb8qwRJ6R/ZdlDJ/leQ==} + yaml@2.8.1: + resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} engines: {node: '>= 14.6'} hasBin: true @@ -2351,6 +2433,8 @@ packages: snapshots: + '@adraffy/ens-normalize@1.11.0': {} + '@apidevtools/json-schema-ref-parser@11.7.2': dependencies: '@jsdevtools/ono': 7.1.3 @@ -2411,7 +2495,7 @@ snapshots: '@ast-grep/napi-win32-ia32-msvc': 0.37.0 '@ast-grep/napi-win32-x64-msvc': 0.37.0 - '@asyncapi/specs@6.8.1': + '@asyncapi/specs@6.10.0': dependencies: '@types/json-schema': 7.0.15 @@ -2423,41 +2507,41 @@ snapshots: '@babel/helper-validator-identifier@7.27.1': {} - '@babel/runtime@7.27.6': {} + '@babel/runtime@7.28.3': {} - '@biomejs/biome@2.1.0': + '@biomejs/biome@2.2.0': optionalDependencies: - '@biomejs/cli-darwin-arm64': 2.1.0 - '@biomejs/cli-darwin-x64': 2.1.0 - '@biomejs/cli-linux-arm64': 2.1.0 - '@biomejs/cli-linux-arm64-musl': 2.1.0 - '@biomejs/cli-linux-x64': 2.1.0 - '@biomejs/cli-linux-x64-musl': 2.1.0 - '@biomejs/cli-win32-arm64': 2.1.0 - '@biomejs/cli-win32-x64': 2.1.0 - - '@biomejs/cli-darwin-arm64@2.1.0': + '@biomejs/cli-darwin-arm64': 2.2.0 + '@biomejs/cli-darwin-x64': 2.2.0 + '@biomejs/cli-linux-arm64': 2.2.0 + '@biomejs/cli-linux-arm64-musl': 2.2.0 + '@biomejs/cli-linux-x64': 2.2.0 + '@biomejs/cli-linux-x64-musl': 2.2.0 + '@biomejs/cli-win32-arm64': 2.2.0 + '@biomejs/cli-win32-x64': 2.2.0 + + '@biomejs/cli-darwin-arm64@2.2.0': optional: true - '@biomejs/cli-darwin-x64@2.1.0': + '@biomejs/cli-darwin-x64@2.2.0': optional: true - '@biomejs/cli-linux-arm64-musl@2.1.0': + '@biomejs/cli-linux-arm64-musl@2.2.0': optional: true - '@biomejs/cli-linux-arm64@2.1.0': + '@biomejs/cli-linux-arm64@2.2.0': optional: true - '@biomejs/cli-linux-x64-musl@2.1.0': + '@biomejs/cli-linux-x64-musl@2.2.0': optional: true - '@biomejs/cli-linux-x64@2.1.0': + '@biomejs/cli-linux-x64@2.2.0': optional: true - '@biomejs/cli-win32-arm64@2.1.0': + '@biomejs/cli-win32-arm64@2.2.0': optional: true - '@biomejs/cli-win32-x64@2.1.0': + '@biomejs/cli-win32-x64@2.2.0': optional: true '@bundled-es-modules/cookie@2.0.1': @@ -2502,7 +2586,7 @@ snapshots: dependencies: '@changesets/types': 6.1.0 - '@changesets/cli@2.29.5': + '@changesets/cli@2.29.6(@types/node@24.3.0)': dependencies: '@changesets/apply-release-plan': 7.0.12 '@changesets/assemble-release-plan': 6.0.9 @@ -2518,11 +2602,11 @@ snapshots: '@changesets/should-skip-package': 0.1.2 '@changesets/types': 6.1.0 '@changesets/write': 0.4.0 + '@inquirer/external-editor': 1.0.1(@types/node@24.3.0) '@manypkg/get-packages': 1.1.3 ansi-colors: 4.1.3 ci-info: 3.9.0 enquirer: 2.4.1 - external-editor: 3.1.0 fs-extra: 7.0.1 mri: 1.2.0 p-limit: 2.3.0 @@ -2532,6 +2616,8 @@ snapshots: semver: 7.7.2 spawndamnit: 3.0.1 term-size: 2.2.1 + transitivePeerDependencies: + - '@types/node' '@changesets/config@3.1.1': dependencies: @@ -2615,11 +2701,11 @@ snapshots: human-id: 4.1.1 prettier: 2.8.8 - '@commitlint/cli@19.8.1(@types/node@24.0.10)(typescript@5.8.3)': + '@commitlint/cli@19.8.1(@types/node@24.3.0)(typescript@5.9.2)': dependencies: '@commitlint/format': 19.8.1 '@commitlint/lint': 19.8.1 - '@commitlint/load': 19.8.1(@types/node@24.0.10)(typescript@5.8.3) + '@commitlint/load': 19.8.1(@types/node@24.3.0)(typescript@5.9.2) '@commitlint/read': 19.8.1 '@commitlint/types': 19.8.1 tinyexec: 1.0.1 @@ -2666,15 +2752,15 @@ snapshots: '@commitlint/rules': 19.8.1 '@commitlint/types': 19.8.1 - '@commitlint/load@19.8.1(@types/node@24.0.10)(typescript@5.8.3)': + '@commitlint/load@19.8.1(@types/node@24.3.0)(typescript@5.9.2)': dependencies: '@commitlint/config-validator': 19.8.1 '@commitlint/execute-rule': 19.8.1 '@commitlint/resolve-extends': 19.8.1 '@commitlint/types': 19.8.1 chalk: 5.4.1 - cosmiconfig: 9.0.0(typescript@5.8.3) - cosmiconfig-typescript-loader: 6.1.0(@types/node@24.0.10)(cosmiconfig@9.0.0(typescript@5.8.3))(typescript@5.8.3) + cosmiconfig: 9.0.0(typescript@5.9.2) + cosmiconfig-typescript-loader: 6.1.0(@types/node@24.3.0)(cosmiconfig@9.0.0(typescript@5.9.2))(typescript@5.9.2) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -2725,115 +2811,115 @@ snapshots: '@types/conventional-commits-parser': 5.0.1 chalk: 5.4.1 - '@emnapi/core@1.4.4': + '@emnapi/core@1.4.5': dependencies: - '@emnapi/wasi-threads': 1.0.3 + '@emnapi/wasi-threads': 1.0.4 tslib: 2.8.1 optional: true - '@emnapi/runtime@1.4.4': + '@emnapi/runtime@1.4.5': dependencies: tslib: 2.8.1 optional: true - '@emnapi/wasi-threads@1.0.3': + '@emnapi/wasi-threads@1.0.4': dependencies: tslib: 2.8.1 optional: true - '@esbuild/aix-ppc64@0.25.6': + '@esbuild/aix-ppc64@0.25.9': optional: true - '@esbuild/android-arm64@0.25.6': + '@esbuild/android-arm64@0.25.9': optional: true - '@esbuild/android-arm@0.25.6': + '@esbuild/android-arm@0.25.9': optional: true - '@esbuild/android-x64@0.25.6': + '@esbuild/android-x64@0.25.9': optional: true - '@esbuild/darwin-arm64@0.25.6': + '@esbuild/darwin-arm64@0.25.9': optional: true - '@esbuild/darwin-x64@0.25.6': + '@esbuild/darwin-x64@0.25.9': optional: true - '@esbuild/freebsd-arm64@0.25.6': + '@esbuild/freebsd-arm64@0.25.9': optional: true - '@esbuild/freebsd-x64@0.25.6': + '@esbuild/freebsd-x64@0.25.9': optional: true - '@esbuild/linux-arm64@0.25.6': + '@esbuild/linux-arm64@0.25.9': optional: true - '@esbuild/linux-arm@0.25.6': + '@esbuild/linux-arm@0.25.9': optional: true - '@esbuild/linux-ia32@0.25.6': + '@esbuild/linux-ia32@0.25.9': optional: true - '@esbuild/linux-loong64@0.25.6': + '@esbuild/linux-loong64@0.25.9': optional: true - '@esbuild/linux-mips64el@0.25.6': + '@esbuild/linux-mips64el@0.25.9': optional: true - '@esbuild/linux-ppc64@0.25.6': + '@esbuild/linux-ppc64@0.25.9': optional: true - '@esbuild/linux-riscv64@0.25.6': + '@esbuild/linux-riscv64@0.25.9': optional: true - '@esbuild/linux-s390x@0.25.6': + '@esbuild/linux-s390x@0.25.9': optional: true - '@esbuild/linux-x64@0.25.6': + '@esbuild/linux-x64@0.25.9': optional: true - '@esbuild/netbsd-arm64@0.25.6': + '@esbuild/netbsd-arm64@0.25.9': optional: true - '@esbuild/netbsd-x64@0.25.6': + '@esbuild/netbsd-x64@0.25.9': optional: true - '@esbuild/openbsd-arm64@0.25.6': + '@esbuild/openbsd-arm64@0.25.9': optional: true - '@esbuild/openbsd-x64@0.25.6': + '@esbuild/openbsd-x64@0.25.9': optional: true - '@esbuild/openharmony-arm64@0.25.6': + '@esbuild/openharmony-arm64@0.25.9': optional: true - '@esbuild/sunos-x64@0.25.6': + '@esbuild/sunos-x64@0.25.9': optional: true - '@esbuild/win32-arm64@0.25.6': + '@esbuild/win32-arm64@0.25.9': optional: true - '@esbuild/win32-ia32@0.25.6': + '@esbuild/win32-ia32@0.25.9': optional: true - '@esbuild/win32-x64@0.25.6': + '@esbuild/win32-x64@0.25.9': optional: true '@exodus/schemasafe@1.3.0': {} '@faker-js/faker@9.9.0': {} - '@gerrit0/mini-shiki@3.7.0': + '@gerrit0/mini-shiki@3.11.0': dependencies: - '@shikijs/engine-oniguruma': 3.7.0 - '@shikijs/langs': 3.7.0 - '@shikijs/themes': 3.7.0 - '@shikijs/types': 3.7.0 + '@shikijs/engine-oniguruma': 3.11.0 + '@shikijs/langs': 3.11.0 + '@shikijs/themes': 3.11.0 + '@shikijs/types': 3.11.0 '@shikijs/vscode-textmate': 10.0.2 '@ibm-cloud/openapi-ruleset-utilities@1.9.0': {} - '@ibm-cloud/openapi-ruleset@1.31.1': + '@ibm-cloud/openapi-ruleset@1.31.2': dependencies: '@ibm-cloud/openapi-ruleset-utilities': 1.9.0 '@stoplight/spectral-formats': 1.8.2 @@ -2849,17 +2935,17 @@ snapshots: transitivePeerDependencies: - encoding - '@inquirer/confirm@5.1.13(@types/node@24.0.10)': + '@inquirer/confirm@5.1.15(@types/node@24.3.0)': dependencies: - '@inquirer/core': 10.1.14(@types/node@24.0.10) - '@inquirer/type': 3.0.7(@types/node@24.0.10) + '@inquirer/core': 10.1.15(@types/node@24.3.0) + '@inquirer/type': 3.0.8(@types/node@24.3.0) optionalDependencies: - '@types/node': 24.0.10 + '@types/node': 24.3.0 - '@inquirer/core@10.1.14(@types/node@24.0.10)': + '@inquirer/core@10.1.15(@types/node@24.3.0)': dependencies: - '@inquirer/figures': 1.0.12 - '@inquirer/type': 3.0.7(@types/node@24.0.10) + '@inquirer/figures': 1.0.13 + '@inquirer/type': 3.0.8(@types/node@24.3.0) ansi-escapes: 4.3.2 cli-width: 4.1.0 mute-stream: 2.0.0 @@ -2867,15 +2953,22 @@ snapshots: wrap-ansi: 6.2.0 yoctocolors-cjs: 2.1.2 optionalDependencies: - '@types/node': 24.0.10 + '@types/node': 24.3.0 - '@inquirer/figures@1.0.12': {} + '@inquirer/external-editor@1.0.1(@types/node@24.3.0)': + dependencies: + chardet: 2.1.0 + iconv-lite: 0.6.3 + optionalDependencies: + '@types/node': 24.3.0 - '@inquirer/type@3.0.7(@types/node@24.0.10)': + '@inquirer/figures@1.0.13': {} + + '@inquirer/type@3.0.8(@types/node@24.3.0)': optionalDependencies: - '@types/node': 24.0.10 + '@types/node': 24.3.0 - '@jridgewell/sourcemap-codec@1.5.4': {} + '@jridgewell/sourcemap-codec@1.5.5': {} '@jsdevtools/ono@7.1.3': {} @@ -2893,46 +2986,46 @@ snapshots: '@manypkg/find-root@1.1.0': dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.3 '@types/node': 12.20.55 find-up: 4.1.0 fs-extra: 8.1.0 '@manypkg/get-packages@1.1.3': dependencies: - '@babel/runtime': 7.27.6 + '@babel/runtime': 7.28.3 '@changesets/types': 4.1.0 '@manypkg/find-root': 1.1.0 fs-extra: 8.1.0 globby: 11.1.0 read-yaml-file: 1.1.0 - '@module-federation/error-codes@0.15.0': {} + '@module-federation/error-codes@0.18.0': {} - '@module-federation/runtime-core@0.15.0': + '@module-federation/runtime-core@0.18.0': dependencies: - '@module-federation/error-codes': 0.15.0 - '@module-federation/sdk': 0.15.0 + '@module-federation/error-codes': 0.18.0 + '@module-federation/sdk': 0.18.0 - '@module-federation/runtime-tools@0.15.0': + '@module-federation/runtime-tools@0.18.0': dependencies: - '@module-federation/runtime': 0.15.0 - '@module-federation/webpack-bundler-runtime': 0.15.0 + '@module-federation/runtime': 0.18.0 + '@module-federation/webpack-bundler-runtime': 0.18.0 - '@module-federation/runtime@0.15.0': + '@module-federation/runtime@0.18.0': dependencies: - '@module-federation/error-codes': 0.15.0 - '@module-federation/runtime-core': 0.15.0 - '@module-federation/sdk': 0.15.0 + '@module-federation/error-codes': 0.18.0 + '@module-federation/runtime-core': 0.18.0 + '@module-federation/sdk': 0.18.0 - '@module-federation/sdk@0.15.0': {} + '@module-federation/sdk@0.18.0': {} - '@module-federation/webpack-bundler-runtime@0.15.0': + '@module-federation/webpack-bundler-runtime@0.18.0': dependencies: - '@module-federation/runtime': 0.15.0 - '@module-federation/sdk': 0.15.0 + '@module-federation/runtime': 0.18.0 + '@module-federation/sdk': 0.18.0 - '@mswjs/interceptors@0.39.2': + '@mswjs/interceptors@0.39.6': dependencies: '@open-draft/deferred-promise': 2.2.0 '@open-draft/logger': 0.3.0 @@ -2941,13 +3034,21 @@ snapshots: outvariant: 1.4.3 strict-event-emitter: 0.5.1 - '@napi-rs/wasm-runtime@0.2.11': + '@napi-rs/wasm-runtime@1.0.3': dependencies: - '@emnapi/core': 1.4.4 - '@emnapi/runtime': 1.4.4 - '@tybys/wasm-util': 0.9.0 + '@emnapi/core': 1.4.5 + '@emnapi/runtime': 1.4.5 + '@tybys/wasm-util': 0.10.0 optional: true + '@noble/ciphers@1.3.0': {} + + '@noble/curves@1.9.6': + dependencies: + '@noble/hashes': 1.8.0 + + '@noble/hashes@1.8.0': {} + '@nodelib/fs.scandir@2.1.5': dependencies: '@nodelib/fs.stat': 2.0.5 @@ -2969,34 +3070,34 @@ snapshots: '@open-draft/until@2.1.0': {} - '@orval/angular@7.10.0(openapi-types@12.1.3)': + '@orval/angular@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/axios@7.10.0(openapi-types@12.1.3)': + '@orval/axios@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/core@7.10.0(openapi-types@12.1.3)': + '@orval/core@7.11.2(openapi-types@12.1.3)': dependencies: '@apidevtools/swagger-parser': 10.1.1(openapi-types@12.1.3) - '@ibm-cloud/openapi-ruleset': 1.31.1 + '@ibm-cloud/openapi-ruleset': 1.31.2 acorn: 8.15.0 ajv: 8.17.1 chalk: 4.1.2 compare-versions: 6.1.1 debug: 4.4.1 - esbuild: 0.25.6 + esbuild: 0.25.9 esutils: 2.0.3 - fs-extra: 11.3.0 + fs-extra: 11.3.1 globby: 11.1.0 lodash.isempty: 4.4.0 lodash.uniq: 4.5.0 @@ -3010,155 +3111,169 @@ snapshots: - openapi-types - supports-color - '@orval/fetch@7.10.0(openapi-types@12.1.3)': + '@orval/fetch@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/hono@7.10.0(openapi-types@12.1.3)': + '@orval/hono@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) - '@orval/zod': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) + '@orval/zod': 7.11.2(openapi-types@12.1.3) lodash.uniq: 4.5.0 transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/mcp@7.10.0(openapi-types@12.1.3)': + '@orval/mcp@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) - '@orval/zod': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) + '@orval/fetch': 7.11.2(openapi-types@12.1.3) + '@orval/zod': 7.11.2(openapi-types@12.1.3) transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/mock@7.10.0(openapi-types@12.1.3)': + '@orval/mock@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) openapi3-ts: 4.2.2 transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/query@7.10.0(openapi-types@12.1.3)': + '@orval/query@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) - '@orval/fetch': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) + '@orval/fetch': 7.11.2(openapi-types@12.1.3) lodash.omitby: 4.6.0 transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/swr@7.10.0(openapi-types@12.1.3)': + '@orval/swr@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) - '@orval/fetch': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) + '@orval/fetch': 7.11.2(openapi-types@12.1.3) transitivePeerDependencies: - encoding - openapi-types - supports-color - '@orval/zod@7.10.0(openapi-types@12.1.3)': + '@orval/zod@7.11.2(openapi-types@12.1.3)': dependencies: - '@orval/core': 7.10.0(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) lodash.uniq: 4.5.0 transitivePeerDependencies: - encoding - openapi-types - supports-color - '@rsbuild/core@1.4.5': + '@rsbuild/core@1.5.0-beta.4': dependencies: - '@rspack/core': 1.4.5(@swc/helpers@0.5.17) + '@rspack/core': 1.5.0-beta.1(@swc/helpers@0.5.17) '@rspack/lite-tapable': 1.0.1 '@swc/helpers': 0.5.17 - core-js: 3.44.0 - jiti: 2.4.2 + core-js: 3.45.0 + jiti: 2.5.1 - '@rslib/core@0.10.5(typescript@5.8.3)': + '@rslib/core@0.12.2(typescript@5.9.2)': dependencies: - '@rsbuild/core': 1.4.5 - rsbuild-plugin-dts: 0.10.5(@rsbuild/core@1.4.5)(typescript@5.8.3) + '@rsbuild/core': 1.5.0-beta.4 + rsbuild-plugin-dts: 0.12.2(@rsbuild/core@1.5.0-beta.4)(typescript@5.9.2) tinyglobby: 0.2.14 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.2 - '@rspack/binding-darwin-arm64@1.4.5': + '@rspack/binding-darwin-arm64@1.5.0-beta.1': optional: true - '@rspack/binding-darwin-x64@1.4.5': + '@rspack/binding-darwin-x64@1.5.0-beta.1': optional: true - '@rspack/binding-linux-arm64-gnu@1.4.5': + '@rspack/binding-linux-arm64-gnu@1.5.0-beta.1': optional: true - '@rspack/binding-linux-arm64-musl@1.4.5': + '@rspack/binding-linux-arm64-musl@1.5.0-beta.1': optional: true - '@rspack/binding-linux-x64-gnu@1.4.5': + '@rspack/binding-linux-x64-gnu@1.5.0-beta.1': optional: true - '@rspack/binding-linux-x64-musl@1.4.5': + '@rspack/binding-linux-x64-musl@1.5.0-beta.1': optional: true - '@rspack/binding-wasm32-wasi@1.4.5': + '@rspack/binding-wasm32-wasi@1.5.0-beta.1': dependencies: - '@napi-rs/wasm-runtime': 0.2.11 + '@napi-rs/wasm-runtime': 1.0.3 optional: true - '@rspack/binding-win32-arm64-msvc@1.4.5': + '@rspack/binding-win32-arm64-msvc@1.5.0-beta.1': optional: true - '@rspack/binding-win32-ia32-msvc@1.4.5': + '@rspack/binding-win32-ia32-msvc@1.5.0-beta.1': optional: true - '@rspack/binding-win32-x64-msvc@1.4.5': + '@rspack/binding-win32-x64-msvc@1.5.0-beta.1': optional: true - '@rspack/binding@1.4.5': + '@rspack/binding@1.5.0-beta.1': optionalDependencies: - '@rspack/binding-darwin-arm64': 1.4.5 - '@rspack/binding-darwin-x64': 1.4.5 - '@rspack/binding-linux-arm64-gnu': 1.4.5 - '@rspack/binding-linux-arm64-musl': 1.4.5 - '@rspack/binding-linux-x64-gnu': 1.4.5 - '@rspack/binding-linux-x64-musl': 1.4.5 - '@rspack/binding-wasm32-wasi': 1.4.5 - '@rspack/binding-win32-arm64-msvc': 1.4.5 - '@rspack/binding-win32-ia32-msvc': 1.4.5 - '@rspack/binding-win32-x64-msvc': 1.4.5 - - '@rspack/core@1.4.5(@swc/helpers@0.5.17)': - dependencies: - '@module-federation/runtime-tools': 0.15.0 - '@rspack/binding': 1.4.5 + '@rspack/binding-darwin-arm64': 1.5.0-beta.1 + '@rspack/binding-darwin-x64': 1.5.0-beta.1 + '@rspack/binding-linux-arm64-gnu': 1.5.0-beta.1 + '@rspack/binding-linux-arm64-musl': 1.5.0-beta.1 + '@rspack/binding-linux-x64-gnu': 1.5.0-beta.1 + '@rspack/binding-linux-x64-musl': 1.5.0-beta.1 + '@rspack/binding-wasm32-wasi': 1.5.0-beta.1 + '@rspack/binding-win32-arm64-msvc': 1.5.0-beta.1 + '@rspack/binding-win32-ia32-msvc': 1.5.0-beta.1 + '@rspack/binding-win32-x64-msvc': 1.5.0-beta.1 + + '@rspack/core@1.5.0-beta.1(@swc/helpers@0.5.17)': + dependencies: + '@module-federation/runtime-tools': 0.18.0 + '@rspack/binding': 1.5.0-beta.1 '@rspack/lite-tapable': 1.0.1 optionalDependencies: '@swc/helpers': 0.5.17 '@rspack/lite-tapable@1.0.1': {} - '@shikijs/engine-oniguruma@3.7.0': + '@scure/base@1.2.6': {} + + '@scure/bip32@1.7.0': dependencies: - '@shikijs/types': 3.7.0 + '@noble/curves': 1.9.6 + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + '@scure/bip39@1.6.0': + dependencies: + '@noble/hashes': 1.8.0 + '@scure/base': 1.2.6 + + '@shikijs/engine-oniguruma@3.11.0': + dependencies: + '@shikijs/types': 3.11.0 '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/langs@3.7.0': + '@shikijs/langs@3.11.0': dependencies: - '@shikijs/types': 3.7.0 + '@shikijs/types': 3.11.0 - '@shikijs/themes@3.7.0': + '@shikijs/themes@3.11.0': dependencies: - '@shikijs/types': 3.7.0 + '@shikijs/types': 3.11.0 - '@shikijs/types@3.7.0': + '@shikijs/types@3.11.0': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -3182,7 +3297,7 @@ snapshots: dependencies: '@stoplight/json': 3.21.7 '@stoplight/path': 1.3.2 - '@stoplight/types': 13.6.0 + '@stoplight/types': 13.20.0 '@types/urijs': 1.19.25 dependency-graph: 0.11.0 fast-memoize: 2.5.2 @@ -3274,7 +3389,7 @@ snapshots: '@stoplight/spectral-rulesets@1.22.0': dependencies: - '@asyncapi/specs': 6.8.1 + '@asyncapi/specs': 6.10.0 '@stoplight/better-ajv-errors': 1.0.3(ajv@8.17.1) '@stoplight/json': 3.21.7 '@stoplight/spectral-core': 1.20.0 @@ -3332,20 +3447,20 @@ snapshots: dependencies: tslib: 2.8.1 - '@tybys/wasm-util@0.9.0': + '@tybys/wasm-util@0.10.0': dependencies: tslib: 2.8.1 optional: true '@types/conventional-commits-parser@5.0.1': dependencies: - '@types/node': 24.0.10 + '@types/node': 24.3.0 '@types/cookie@0.6.0': {} '@types/es-aggregate-error@1.0.6': dependencies: - '@types/node': 24.0.10 + '@types/node': 24.3.0 '@types/hast@3.0.4': dependencies: @@ -3355,9 +3470,9 @@ snapshots: '@types/node@12.20.55': {} - '@types/node@24.0.10': + '@types/node@24.3.0': dependencies: - undici-types: 7.8.0 + undici-types: 7.10.0 '@types/statuses@2.0.6': {} @@ -3372,6 +3487,10 @@ snapshots: jsonparse: 1.3.1 through: 2.3.8 + abitype@1.0.8(typescript@5.9.2): + optionalDependencies: + typescript: 5.9.2 + abort-controller@3.0.0: dependencies: event-target-shim: 5.0.1 @@ -3448,6 +3567,8 @@ snapshots: dependencies: is-windows: 1.0.2 + bignumber.js@9.3.1: {} + brace-expansion@1.1.12: dependencies: balanced-match: 1.0.2 @@ -3491,7 +3612,7 @@ snapshots: chalk@5.4.1: {} - chardet@0.7.0: {} + chardet@2.1.0: {} chokidar@4.0.3: dependencies: @@ -3539,23 +3660,23 @@ snapshots: cookie@0.7.2: {} - core-js@3.44.0: {} + core-js@3.45.0: {} - cosmiconfig-typescript-loader@6.1.0(@types/node@24.0.10)(cosmiconfig@9.0.0(typescript@5.8.3))(typescript@5.8.3): + cosmiconfig-typescript-loader@6.1.0(@types/node@24.3.0)(cosmiconfig@9.0.0(typescript@5.9.2))(typescript@5.9.2): dependencies: - '@types/node': 24.0.10 - cosmiconfig: 9.0.0(typescript@5.8.3) + '@types/node': 24.3.0 + cosmiconfig: 9.0.0(typescript@5.9.2) jiti: 2.4.2 - typescript: 5.8.3 + typescript: 5.9.2 - cosmiconfig@9.0.0(typescript@5.8.3): + cosmiconfig@9.0.0(typescript@5.9.2): dependencies: env-paths: 2.2.1 import-fresh: 3.3.1 js-yaml: 4.1.0 parse-json: 5.2.0 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.2 cross-spawn@7.0.6: dependencies: @@ -3723,34 +3844,34 @@ snapshots: es6-promise@3.3.1: {} - esbuild@0.25.6: + esbuild@0.25.9: optionalDependencies: - '@esbuild/aix-ppc64': 0.25.6 - '@esbuild/android-arm': 0.25.6 - '@esbuild/android-arm64': 0.25.6 - '@esbuild/android-x64': 0.25.6 - '@esbuild/darwin-arm64': 0.25.6 - '@esbuild/darwin-x64': 0.25.6 - '@esbuild/freebsd-arm64': 0.25.6 - '@esbuild/freebsd-x64': 0.25.6 - '@esbuild/linux-arm': 0.25.6 - '@esbuild/linux-arm64': 0.25.6 - '@esbuild/linux-ia32': 0.25.6 - '@esbuild/linux-loong64': 0.25.6 - '@esbuild/linux-mips64el': 0.25.6 - '@esbuild/linux-ppc64': 0.25.6 - '@esbuild/linux-riscv64': 0.25.6 - '@esbuild/linux-s390x': 0.25.6 - '@esbuild/linux-x64': 0.25.6 - '@esbuild/netbsd-arm64': 0.25.6 - '@esbuild/netbsd-x64': 0.25.6 - '@esbuild/openbsd-arm64': 0.25.6 - '@esbuild/openbsd-x64': 0.25.6 - '@esbuild/openharmony-arm64': 0.25.6 - '@esbuild/sunos-x64': 0.25.6 - '@esbuild/win32-arm64': 0.25.6 - '@esbuild/win32-ia32': 0.25.6 - '@esbuild/win32-x64': 0.25.6 + '@esbuild/aix-ppc64': 0.25.9 + '@esbuild/android-arm': 0.25.9 + '@esbuild/android-arm64': 0.25.9 + '@esbuild/android-x64': 0.25.9 + '@esbuild/darwin-arm64': 0.25.9 + '@esbuild/darwin-x64': 0.25.9 + '@esbuild/freebsd-arm64': 0.25.9 + '@esbuild/freebsd-x64': 0.25.9 + '@esbuild/linux-arm': 0.25.9 + '@esbuild/linux-arm64': 0.25.9 + '@esbuild/linux-ia32': 0.25.9 + '@esbuild/linux-loong64': 0.25.9 + '@esbuild/linux-mips64el': 0.25.9 + '@esbuild/linux-ppc64': 0.25.9 + '@esbuild/linux-riscv64': 0.25.9 + '@esbuild/linux-s390x': 0.25.9 + '@esbuild/linux-x64': 0.25.9 + '@esbuild/netbsd-arm64': 0.25.9 + '@esbuild/netbsd-x64': 0.25.9 + '@esbuild/openbsd-arm64': 0.25.9 + '@esbuild/openbsd-x64': 0.25.9 + '@esbuild/openharmony-arm64': 0.25.9 + '@esbuild/sunos-x64': 0.25.9 + '@esbuild/win32-arm64': 0.25.9 + '@esbuild/win32-ia32': 0.25.9 + '@esbuild/win32-x64': 0.25.9 escalade@3.2.0: {} @@ -3760,6 +3881,8 @@ snapshots: event-target-shim@5.0.1: {} + eventemitter3@5.0.1: {} + execa@5.1.1: dependencies: cross-spawn: 7.0.6 @@ -3774,12 +3897,6 @@ snapshots: extendable-error@0.1.7: {} - external-editor@3.1.0: - dependencies: - chardet: 0.7.0 - iconv-lite: 0.4.24 - tmp: 0.0.33 - fast-deep-equal@3.1.3: {} fast-glob@3.3.3: @@ -3800,9 +3917,9 @@ snapshots: dependencies: reusify: 1.1.0 - fdir@6.4.6(picomatch@4.0.2): + fdir@6.5.0(picomatch@4.0.3): optionalDependencies: - picomatch: 4.0.2 + picomatch: 4.0.3 fill-range@7.1.1: dependencies: @@ -3828,10 +3945,10 @@ snapshots: dependencies: is-callable: 1.2.7 - fs-extra@11.3.0: + fs-extra@11.3.1: dependencies: graceful-fs: 4.2.11 - jsonfile: 6.1.0 + jsonfile: 6.2.0 universalify: 2.0.1 fs-extra@7.0.1: @@ -3960,7 +4077,7 @@ snapshots: husky@9.1.7: {} - iconv-lite@0.4.24: + iconv-lite@0.6.3: dependencies: safer-buffer: 2.1.2 @@ -4110,8 +4227,14 @@ snapshots: isexe@2.0.0: {} + isows@1.0.7(ws@8.18.3): + dependencies: + ws: 8.18.3 + jiti@2.4.2: {} + jiti@2.5.1: {} + js-tokens@4.0.0: {} js-yaml@3.14.1: @@ -4137,7 +4260,7 @@ snapshots: optionalDependencies: graceful-fs: 4.2.11 - jsonfile@6.1.0: + jsonfile@6.2.0: dependencies: universalify: 2.0.1 optionalDependencies: @@ -4213,7 +4336,7 @@ snapshots: magic-string@0.30.17: dependencies: - '@jridgewell/sourcemap-codec': 1.5.4 + '@jridgewell/sourcemap-codec': 1.5.5 markdown-it@14.1.0: dependencies: @@ -4259,13 +4382,13 @@ snapshots: ms@2.1.3: {} - msw@2.10.3(@types/node@24.0.10)(typescript@5.8.3): + msw@2.10.5(@types/node@24.3.0)(typescript@5.9.2): dependencies: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.1.13(@types/node@24.0.10) - '@mswjs/interceptors': 0.39.2 + '@inquirer/confirm': 5.1.15(@types/node@24.3.0) + '@mswjs/interceptors': 0.39.6 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 @@ -4280,7 +4403,7 @@ snapshots: type-fest: 4.41.0 yargs: 17.7.2 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.2 transitivePeerDependencies: - '@types/node' @@ -4364,25 +4487,25 @@ snapshots: openapi3-ts@4.2.2: dependencies: - yaml: 2.8.0 + yaml: 2.8.1 openapi3-ts@4.4.0: dependencies: - yaml: 2.8.0 + yaml: 2.8.1 - orval@7.10.0(openapi-types@12.1.3): + orval@7.11.2(openapi-types@12.1.3): dependencies: '@apidevtools/swagger-parser': 10.1.1(openapi-types@12.1.3) - '@orval/angular': 7.10.0(openapi-types@12.1.3) - '@orval/axios': 7.10.0(openapi-types@12.1.3) - '@orval/core': 7.10.0(openapi-types@12.1.3) - '@orval/fetch': 7.10.0(openapi-types@12.1.3) - '@orval/hono': 7.10.0(openapi-types@12.1.3) - '@orval/mcp': 7.10.0(openapi-types@12.1.3) - '@orval/mock': 7.10.0(openapi-types@12.1.3) - '@orval/query': 7.10.0(openapi-types@12.1.3) - '@orval/swr': 7.10.0(openapi-types@12.1.3) - '@orval/zod': 7.10.0(openapi-types@12.1.3) + '@orval/angular': 7.11.2(openapi-types@12.1.3) + '@orval/axios': 7.11.2(openapi-types@12.1.3) + '@orval/core': 7.11.2(openapi-types@12.1.3) + '@orval/fetch': 7.11.2(openapi-types@12.1.3) + '@orval/hono': 7.11.2(openapi-types@12.1.3) + '@orval/mcp': 7.11.2(openapi-types@12.1.3) + '@orval/mock': 7.11.2(openapi-types@12.1.3) + '@orval/query': 7.11.2(openapi-types@12.1.3) + '@orval/swr': 7.11.2(openapi-types@12.1.3) + '@orval/zod': 7.11.2(openapi-types@12.1.3) ajv: 8.17.1 cac: 6.7.14 chalk: 4.1.2 @@ -4390,21 +4513,19 @@ snapshots: enquirer: 2.4.1 execa: 5.1.1 find-up: 5.0.0 - fs-extra: 11.3.0 + fs-extra: 11.3.1 lodash.uniq: 4.5.0 openapi3-ts: 4.2.2 string-argv: 0.3.2 - tsconfck: 2.1.2(typescript@5.8.3) - typedoc: 0.28.7(typescript@5.8.3) - typedoc-plugin-markdown: 4.7.0(typedoc@0.28.7(typescript@5.8.3)) - typescript: 5.8.3 + tsconfck: 2.1.2(typescript@5.9.2) + typedoc: 0.28.10(typescript@5.9.2) + typedoc-plugin-markdown: 4.8.1(typedoc@0.28.10(typescript@5.9.2)) + typescript: 5.9.2 transitivePeerDependencies: - encoding - openapi-types - supports-color - os-tmpdir@1.0.2: {} - outdent@0.5.0: {} outvariant@1.4.3: {} @@ -4415,6 +4536,21 @@ snapshots: object-keys: 1.1.1 safe-push-apply: 1.0.0 + ox@0.8.7(typescript@5.9.2): + dependencies: + '@adraffy/ens-normalize': 1.11.0 + '@noble/ciphers': 1.3.0 + '@noble/curves': 1.9.6 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.0.8(typescript@5.9.2) + eventemitter3: 5.0.1 + optionalDependencies: + typescript: 5.9.2 + transitivePeerDependencies: + - zod + p-filter@2.1.0: dependencies: p-map: 2.1.0 @@ -4449,7 +4585,7 @@ snapshots: package-manager-detector@0.2.11: dependencies: - quansync: 0.2.10 + quansync: 0.2.11 parent-module@1.0.1: dependencies: @@ -4476,7 +4612,7 @@ snapshots: picomatch@2.3.1: {} - picomatch@4.0.2: {} + picomatch@4.0.3: {} pify@4.0.1: {} @@ -4494,7 +4630,7 @@ snapshots: punycode@2.3.1: {} - quansync@0.2.10: {} + quansync@0.2.11: {} querystringify@2.2.0: {} @@ -4545,16 +4681,16 @@ snapshots: reusify@1.1.0: {} - rsbuild-plugin-dts@0.10.5(@rsbuild/core@1.4.5)(typescript@5.8.3): + rsbuild-plugin-dts@0.12.2(@rsbuild/core@1.5.0-beta.4)(typescript@5.9.2): dependencies: '@ast-grep/napi': 0.37.0 - '@rsbuild/core': 1.4.5 + '@rsbuild/core': 1.5.0-beta.4 magic-string: 0.30.17 picocolors: 1.1.1 tinyglobby: 0.2.14 tsconfig-paths: 4.2.0 optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.2 run-parallel@1.2.0: dependencies: @@ -4764,12 +4900,8 @@ snapshots: tinyglobby@0.2.14: dependencies: - fdir: 6.4.6(picomatch@4.0.2) - picomatch: 4.0.2 - - tmp@0.0.33: - dependencies: - os-tmpdir: 1.0.2 + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 to-regex-range@5.0.1: dependencies: @@ -4784,9 +4916,9 @@ snapshots: tr46@0.0.3: {} - tsconfck@2.1.2(typescript@5.8.3): + tsconfck@2.1.2(typescript@5.9.2): optionalDependencies: - typescript: 5.8.3 + typescript: 5.9.2 tsconfig-paths@4.2.0: dependencies: @@ -4798,9 +4930,9 @@ snapshots: tslib@2.8.1: {} - tsx@4.20.3: + tsx@4.20.4: dependencies: - esbuild: 0.25.6 + esbuild: 0.25.9 get-tsconfig: 4.10.1 optionalDependencies: fsevents: 2.3.3 @@ -4842,20 +4974,20 @@ snapshots: possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 - typedoc-plugin-markdown@4.7.0(typedoc@0.28.7(typescript@5.8.3)): + typedoc-plugin-markdown@4.8.1(typedoc@0.28.10(typescript@5.9.2)): dependencies: - typedoc: 0.28.7(typescript@5.8.3) + typedoc: 0.28.10(typescript@5.9.2) - typedoc@0.28.7(typescript@5.8.3): + typedoc@0.28.10(typescript@5.9.2): dependencies: - '@gerrit0/mini-shiki': 3.7.0 + '@gerrit0/mini-shiki': 3.11.0 lunr: 2.3.9 markdown-it: 14.1.0 minimatch: 9.0.5 - typescript: 5.8.3 - yaml: 2.8.0 + typescript: 5.9.2 + yaml: 2.8.1 - typescript@5.8.3: {} + typescript@5.9.2: {} uc.micro@2.1.0: {} @@ -4866,7 +4998,7 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 - undici-types@7.8.0: {} + undici-types@7.10.0: {} unicorn-magic@0.1.0: {} @@ -4887,6 +5019,23 @@ snapshots: validator@13.15.15: {} + viem@2.34.0(typescript@5.9.2): + dependencies: + '@noble/curves': 1.9.6 + '@noble/hashes': 1.8.0 + '@scure/bip32': 1.7.0 + '@scure/bip39': 1.6.0 + abitype: 1.0.8(typescript@5.9.2) + isows: 1.0.7(ws@8.18.3) + ox: 0.8.7(typescript@5.9.2) + ws: 8.18.3 + optionalDependencies: + typescript: 5.9.2 + transitivePeerDependencies: + - bufferutil + - utf-8-validate + - zod + webidl-conversions@3.0.1: {} whatwg-url@5.0.0: @@ -4951,11 +5100,13 @@ snapshots: string-width: 4.2.3 strip-ansi: 6.0.1 + ws@8.18.3: {} + y18n@5.0.8: {} yaml@1.10.2: {} - yaml@2.8.0: {} + yaml@2.8.1: {} yargs-parser@21.1.1: {} diff --git a/src/api/index.msw.ts b/src/api/index.msw.ts index 5726217..2300665 100644 --- a/src/api/index.msw.ts +++ b/src/api/index.msw.ts @@ -17,6 +17,7 @@ import type { } from "./schemas"; import { BalanceType, + ERCStandards, HealthStatus, RewardClaiming, RewardSchedule, @@ -670,19 +671,45 @@ export const getYieldsControllerGetYieldsResponseMock = statistics: faker.helpers.arrayElement([ { ...{ - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - uniqueUsers: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - averagePositionSizeUsd: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - averagePositionSize: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), + tvlUsd: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + uniqueUsers: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + null, + ]), + undefined, + ]), + averagePositionSizeUsd: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + averagePositionSize: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), }, }, undefined, @@ -701,6 +728,11 @@ export const getYieldsControllerGetYieldsResponseMock = documentation: faker.string.alpha({ length: { min: 10, max: 20 }, }), + underMaintenance: faker.datatype.boolean(), + deprecated: faker.datatype.boolean(), + supportedStandards: faker.helpers.arrayElements( + Object.values(ERCStandards), + ), }, }, mechanics: { @@ -928,9 +960,23 @@ export const getYieldsControllerGetYieldsResponseMock = { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -1011,9 +1057,23 @@ export const getYieldsControllerGetYieldsResponseMock = { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -1088,17 +1148,136 @@ export const getYieldsControllerGetYieldsResponseMock = }, undefined, ]), - manage: faker.helpers.arrayElement([{}, undefined]), - balance: faker.helpers.arrayElement([ + manage: faker.helpers.arrayElement([ { - ...{ + [faker.string.alphanumeric(5)]: { fields: Array.from( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), + type: faker.helpers.arrayElement([ + "string", + "number", + "address", + "enum", + "boolean", + ] as const), + label: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + description: faker.helpers.arrayElement([ + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + undefined, + ]), + required: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + options: faker.helpers.arrayElement([ + Array.from( + { + length: faker.number.int({ min: 1, max: 10 }), + }, + (_, i) => i + 1, + ).map(() => + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + ), + undefined, + ]), + optionsRef: faker.helpers.arrayElement([ + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + undefined, + ]), + default: faker.helpers.arrayElement([ + {}, + undefined, + ]), + placeholder: faker.helpers.arrayElement([ + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + undefined, + ]), + minimum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + null, + ]), + undefined, + ]), + maximum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + null, + ]), + undefined, + ]), + isArray: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + })), + notes: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 }, }), + undefined, + ]), + }, + }, + undefined, + ]), + balance: faker.helpers.arrayElement([ + { + ...{ + fields: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -1276,7 +1455,23 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -1464,9 +1659,18 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( { ...{ address: faker.string.alpha({ length: { min: 10, max: 20 } }), - name: faker.string.alpha({ length: { min: 10, max: 20 } }), - logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), - website: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), rewardRate: faker.helpers.arrayElement([ { ...{ @@ -1633,33 +1837,134 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( }, undefined, ]), - commission: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - votingPower: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - preferred: faker.datatype.boolean(), - minimumStake: faker.string.alpha({ length: { min: 10, max: 20 } }), - remainingPossibleStake: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - remainingSlots: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - nominatorCount: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), status: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, @@ -1668,22 +1973,55 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, ]), - }, - }, - undefined, - ]), - validators: faker.helpers.arrayElement([ - Array.from( - { length: faker.number.int({ min: 1, max: 10 }) }, - (_, i) => i + 1, - ).map(() => ({ - address: faker.string.alpha({ length: { min: 10, max: 20 } }), - name: faker.string.alpha({ length: { min: 10, max: 20 } }), - logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), - website: faker.string.alpha({ length: { min: 10, max: 20 } }), - rewardRate: faker.helpers.arrayElement([ - { - ...{ + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + undefined, + ]), + validators: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + address: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + rewardRate: faker.helpers.arrayElement([ + { + ...{ total: faker.number.float({ min: undefined, max: undefined, @@ -1845,33 +2183,132 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( }, undefined, ]), - commission: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - votingPower: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - preferred: faker.datatype.boolean(), - minimumStake: faker.string.alpha({ length: { min: 10, max: 20 } }), - remainingPossibleStake: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - remainingSlots: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - nominatorCount: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), status: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, @@ -1880,6 +2317,30 @@ export const getYieldsControllerGetAggregateBalancesResponseMock = ( faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), })), undefined, ]), @@ -2523,19 +2984,45 @@ export const getYieldsControllerGetYieldResponseMock = ( statistics: faker.helpers.arrayElement([ { ...{ - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - uniqueUsers: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - averagePositionSizeUsd: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - averagePositionSize: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), + tvlUsd: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + uniqueUsers: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + null, + ]), + undefined, + ]), + averagePositionSizeUsd: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + averagePositionSize: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), }, }, undefined, @@ -2549,6 +3036,11 @@ export const getYieldsControllerGetYieldResponseMock = ( logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), description: faker.string.alpha({ length: { min: 10, max: 20 } }), documentation: faker.string.alpha({ length: { min: 10, max: 20 } }), + underMaintenance: faker.datatype.boolean(), + deprecated: faker.datatype.boolean(), + supportedStandards: faker.helpers.arrayElements( + Object.values(ERCStandards), + ), }, }, mechanics: { @@ -2772,7 +3264,23 @@ export const getYieldsControllerGetYieldResponseMock = ( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -2839,7 +3347,23 @@ export const getYieldsControllerGetYieldResponseMock = ( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -2900,7 +3424,91 @@ export const getYieldsControllerGetYieldResponseMock = ( }, undefined, ]), - manage: faker.helpers.arrayElement([{}, undefined]), + manage: faker.helpers.arrayElement([ + { + [faker.string.alphanumeric(5)]: { + fields: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), + type: faker.helpers.arrayElement([ + "string", + "number", + "address", + "enum", + "boolean", + ] as const), + label: faker.string.alpha({ length: { min: 10, max: 20 } }), + description: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + required: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + options: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => + faker.string.alpha({ length: { min: 10, max: 20 } }), + ), + undefined, + ]), + optionsRef: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + default: faker.helpers.arrayElement([{}, undefined]), + placeholder: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + minimum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + maximum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + isArray: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + })), + notes: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + undefined, + ]), balance: faker.helpers.arrayElement([ { ...{ @@ -2908,7 +3516,23 @@ export const getYieldsControllerGetYieldResponseMock = ( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -2998,7 +3622,7 @@ export const getYieldsControllerGetYieldResponseMock = ( ...overrideResponse, }); -export const getYieldsControllerGetYieldBalancesResponseMock = ( +export const getYieldsControllerGetYieldBalancesLegacyResponseMock = ( overrideResponse: Partial = {}, ): YieldBalancesDto => ({ yieldId: faker.string.alpha({ length: { min: 10, max: 20 } }), @@ -3054,7 +3678,23 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( { length: faker.number.int({ min: 1, max: 10 }) }, (_, i) => i + 1, ).map(() => ({ - name: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), type: faker.helpers.arrayElement([ "string", "number", @@ -3242,9 +3882,18 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( { ...{ address: faker.string.alpha({ length: { min: 10, max: 20 } }), - name: faker.string.alpha({ length: { min: 10, max: 20 } }), - logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), - website: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), rewardRate: faker.helpers.arrayElement([ { ...{ @@ -3409,33 +4058,132 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( }, undefined, ]), - commission: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - votingPower: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - preferred: faker.datatype.boolean(), - minimumStake: faker.string.alpha({ length: { min: 10, max: 20 } }), - remainingPossibleStake: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - remainingSlots: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - nominatorCount: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), status: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, @@ -3444,6 +4192,30 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), }, }, undefined, @@ -3454,9 +4226,18 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( (_, i) => i + 1, ).map(() => ({ address: faker.string.alpha({ length: { min: 10, max: 20 } }), - name: faker.string.alpha({ length: { min: 10, max: 20 } }), - logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), - website: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), rewardRate: faker.helpers.arrayElement([ { ...{ @@ -3617,33 +4398,132 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( }, undefined, ]), - commission: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - votingPower: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - preferred: faker.datatype.boolean(), - minimumStake: faker.string.alpha({ length: { min: 10, max: 20 } }), - remainingPossibleStake: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - remainingSlots: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - nominatorCount: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), status: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, @@ -3652,6 +4532,30 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), })), undefined, ]), @@ -3667,16 +4571,965 @@ export const getYieldsControllerGetYieldBalancesResponseMock = ( ...overrideResponse, }); -export const getYieldsControllerGetYieldValidatorsResponseMock = - (): YieldsControllerGetYieldValidators200 => ({ - ...{ - total: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - offset: faker.number.float({ - min: undefined, +export const getYieldsControllerGetYieldBalancesResponseMock = ( + overrideResponse: Partial = {}, +): YieldBalancesDto => ({ + yieldId: faker.string.alpha({ length: { min: 10, max: 20 } }), + balances: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + address: faker.string.alpha({ length: { min: 10, max: 20 } }), + type: faker.helpers.arrayElement(Object.values(BalanceType)), + amount: faker.string.alpha({ length: { min: 10, max: 20 } }), + amountRaw: faker.string.alpha({ length: { min: 10, max: 20 } }), + date: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + `${faker.date.past().toISOString().split(".")[0]}Z`, + null, + ]), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pendingActions: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + intent: faker.helpers.arrayElement(["enter", "manage", "exit"] as const), + type: faker.helpers.arrayElement([ + "STAKE", + "UNSTAKE", + "CLAIM_REWARDS", + "RESTAKE_REWARDS", + "WITHDRAW", + "WITHDRAW_ALL", + "RESTAKE", + "CLAIM_UNSTAKED", + "UNLOCK_LOCKED", + "STAKE_LOCKED", + "VOTE", + "REVOKE", + "VOTE_LOCKED", + "REVOTE", + "REBOND", + "MIGRATE", + "VERIFY_WITHDRAW_CREDENTIALS", + "DELEGATE", + ] as const), + passthrough: faker.string.alpha({ length: { min: 10, max: 20 } }), + arguments: faker.helpers.arrayElement([ + { + ...{ + fields: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + name: faker.helpers.arrayElement([ + "amount", + "validatorAddress", + "validatorAddresses", + "providerId", + "duration", + "inputToken", + "subnetId", + "tronResource", + "feeConfigurationId", + "cosmosPubKey", + "tezosPubKey", + "cAddressBech", + "pAddressBech", + "executionMode", + "ledgerWalletApiCompatible", + ] as const), + type: faker.helpers.arrayElement([ + "string", + "number", + "address", + "enum", + "boolean", + ] as const), + label: faker.string.alpha({ length: { min: 10, max: 20 } }), + description: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + required: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + options: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => + faker.string.alpha({ length: { min: 10, max: 20 } }), + ), + undefined, + ]), + optionsRef: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + default: faker.helpers.arrayElement([{}, undefined]), + placeholder: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + minimum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + maximum: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + isArray: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + })), + notes: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + undefined, + ]), + })), + token: { + ...{ + symbol: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + decimals: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + network: faker.helpers.arrayElement([ + "ethereum", + "ethereum-goerli", + "ethereum-holesky", + "ethereum-sepolia", + "ethereum-hoodi", + "arbitrum", + "base", + "base-sepolia", + "gnosis", + "optimism", + "polygon", + "polygon-amoy", + "starknet", + "zksync", + "linea", + "unichain", + "avalanche-c", + "avalanche-c-atomic", + "avalanche-p", + "binance", + "celo", + "fantom", + "harmony", + "moonriver", + "okc", + "viction", + "core", + "sonic", + "katana", + "agoric", + "akash", + "axelar", + "band-protocol", + "bitsong", + "canto", + "chihuahua", + "comdex", + "coreum", + "cosmos", + "crescent", + "cronos", + "cudos", + "desmos", + "dydx", + "evmos", + "fetch-ai", + "gravity-bridge", + "injective", + "irisnet", + "juno", + "kava", + "ki-network", + "mars-protocol", + "nym", + "okex-chain", + "onomy", + "osmosis", + "persistence", + "quicksilver", + "regen", + "secret", + "sentinel", + "sommelier", + "stafi", + "stargaze", + "stride", + "teritori", + "tgrade", + "umee", + "sei", + "mantra", + "celestia", + "saga", + "zetachain", + "dymension", + "humansai", + "neutron", + "polkadot", + "kusama", + "westend", + "bittensor", + "binancebeacon", + "cardano", + "near", + "solana", + "solana-devnet", + "stellar", + "stellar-testnet", + "tezos", + "tron", + "ton", + "ton-testnet", + ] as const), + address: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + isPoints: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + coinGeckoId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + validator: faker.helpers.arrayElement([ + { + ...{ + address: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + rewardRate: faker.helpers.arrayElement([ + { + ...{ + total: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + rateType: faker.string.alpha({ length: { min: 10, max: 20 } }), + components: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + rate: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + rateType: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + token: { + ...{ + symbol: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + name: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + decimals: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + network: faker.helpers.arrayElement([ + "ethereum", + "ethereum-goerli", + "ethereum-holesky", + "ethereum-sepolia", + "ethereum-hoodi", + "arbitrum", + "base", + "base-sepolia", + "gnosis", + "optimism", + "polygon", + "polygon-amoy", + "starknet", + "zksync", + "linea", + "unichain", + "avalanche-c", + "avalanche-c-atomic", + "avalanche-p", + "binance", + "celo", + "fantom", + "harmony", + "moonriver", + "okc", + "viction", + "core", + "sonic", + "katana", + "agoric", + "akash", + "axelar", + "band-protocol", + "bitsong", + "canto", + "chihuahua", + "comdex", + "coreum", + "cosmos", + "crescent", + "cronos", + "cudos", + "desmos", + "dydx", + "evmos", + "fetch-ai", + "gravity-bridge", + "injective", + "irisnet", + "juno", + "kava", + "ki-network", + "mars-protocol", + "nym", + "okex-chain", + "onomy", + "osmosis", + "persistence", + "quicksilver", + "regen", + "secret", + "sentinel", + "sommelier", + "stafi", + "stargaze", + "stride", + "teritori", + "tgrade", + "umee", + "sei", + "mantra", + "celestia", + "saga", + "zetachain", + "dymension", + "humansai", + "neutron", + "polkadot", + "kusama", + "westend", + "bittensor", + "binancebeacon", + "cardano", + "near", + "solana", + "solana-devnet", + "stellar", + "stellar-testnet", + "tezos", + "tron", + "ton", + "ton-testnet", + ] as const), + address: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + isPoints: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + coinGeckoId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + yieldSource: faker.helpers.arrayElement([ + "staking", + "restaking", + "protocol_incentive", + "points", + "lending_interest", + "mev", + "real_world_asset_yield", + ] as const), + description: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + })), + }, + }, + undefined, + ]), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + status: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + undefined, + ]), + validators: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + address: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + rewardRate: faker.helpers.arrayElement([ + { + ...{ + total: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + rateType: faker.string.alpha({ length: { min: 10, max: 20 } }), + components: Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => ({ + rate: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + rateType: faker.string.alpha({ length: { min: 10, max: 20 } }), + token: { + ...{ + symbol: faker.string.alpha({ + length: { min: 10, max: 20 }, + }), + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + decimals: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + network: faker.helpers.arrayElement([ + "ethereum", + "ethereum-goerli", + "ethereum-holesky", + "ethereum-sepolia", + "ethereum-hoodi", + "arbitrum", + "base", + "base-sepolia", + "gnosis", + "optimism", + "polygon", + "polygon-amoy", + "starknet", + "zksync", + "linea", + "unichain", + "avalanche-c", + "avalanche-c-atomic", + "avalanche-p", + "binance", + "celo", + "fantom", + "harmony", + "moonriver", + "okc", + "viction", + "core", + "sonic", + "katana", + "agoric", + "akash", + "axelar", + "band-protocol", + "bitsong", + "canto", + "chihuahua", + "comdex", + "coreum", + "cosmos", + "crescent", + "cronos", + "cudos", + "desmos", + "dydx", + "evmos", + "fetch-ai", + "gravity-bridge", + "injective", + "irisnet", + "juno", + "kava", + "ki-network", + "mars-protocol", + "nym", + "okex-chain", + "onomy", + "osmosis", + "persistence", + "quicksilver", + "regen", + "secret", + "sentinel", + "sommelier", + "stafi", + "stargaze", + "stride", + "teritori", + "tgrade", + "umee", + "sei", + "mantra", + "celestia", + "saga", + "zetachain", + "dymension", + "humansai", + "neutron", + "polkadot", + "kusama", + "westend", + "bittensor", + "binancebeacon", + "cardano", + "near", + "solana", + "solana-devnet", + "stellar", + "stellar-testnet", + "tezos", + "tron", + "ton", + "ton-testnet", + ] as const), + address: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + isPoints: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + coinGeckoId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + }, + }, + yieldSource: faker.helpers.arrayElement([ + "staking", + "restaking", + "protocol_incentive", + "points", + "lending_interest", + "mev", + "real_world_asset_yield", + ] as const), + description: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + })), + }, + }, + undefined, + ]), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + status: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + })), + undefined, + ]), + amountUsd: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + isEarning: faker.datatype.boolean(), + })), + ...overrideResponse, +}); + +export const getYieldsControllerGetYieldValidatorsResponseMock = + (): YieldsControllerGetYieldValidators200 => ({ + ...{ + total: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + offset: faker.number.float({ + min: undefined, max: undefined, fractionDigits: 2, }), @@ -3693,9 +5546,18 @@ export const getYieldsControllerGetYieldValidatorsResponseMock = (_, i) => i + 1, ).map(() => ({ address: faker.string.alpha({ length: { min: 10, max: 20 } }), - name: faker.string.alpha({ length: { min: 10, max: 20 } }), - logoURI: faker.string.alpha({ length: { min: 10, max: 20 } }), - website: faker.string.alpha({ length: { min: 10, max: 20 } }), + name: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + logoURI: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + website: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), rewardRate: faker.helpers.arrayElement([ { ...{ @@ -3860,33 +5722,132 @@ export const getYieldsControllerGetYieldValidatorsResponseMock = }, undefined, ]), - commission: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - tvlUsd: faker.string.alpha({ length: { min: 10, max: 20 } }), - tvl: faker.string.alpha({ length: { min: 10, max: 20 } }), - votingPower: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - preferred: faker.datatype.boolean(), - minimumStake: faker.string.alpha({ length: { min: 10, max: 20 } }), - remainingPossibleStake: faker.string.alpha({ - length: { min: 10, max: 20 }, - }), - remainingSlots: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), - nominatorCount: faker.number.float({ - min: undefined, - max: undefined, - fractionDigits: 2, - }), + provider: faker.helpers.arrayElement([ + { + ...{ + name: faker.string.alpha({ length: { min: 10, max: 20 } }), + uniqueId: faker.string.alpha({ length: { min: 10, max: 20 } }), + website: faker.string.alpha({ length: { min: 10, max: 20 } }), + rank: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + preferred: faker.datatype.boolean(), + revshare: faker.helpers.arrayElement([ + { + ...{ + trial: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + standard: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + pro: faker.helpers.arrayElement([ + { + ...{ + minRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + maxRevShare: faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + }, + }, + undefined, + ]), + commission: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tvlUsd: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tvl: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + votingPower: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + preferred: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + minimumStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingPossibleStake: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + remainingSlots: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + nominatorCount: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), status: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, @@ -3895,6 +5856,30 @@ export const getYieldsControllerGetYieldValidatorsResponseMock = faker.string.alpha({ length: { min: 10, max: 20 } }), undefined, ]), + pricePerShare: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + subnetName: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + marketCap: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tokenSymbol: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), })), undefined, ]), @@ -4163,32 +6148,108 @@ export const getActionsControllerGetActionsResponseMock = error: faker.helpers.arrayElement([ faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), - null, + null, + ]), + undefined, + ]), + gasEstimate: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + explorerUrl: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + isMessage: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + })), + executionPattern: faker.helpers.arrayElement([ + "synchronous", + "asynchronous", + "batch", + ] as const), + rawArguments: { + ...{ + amount: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddress: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddresses: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => + faker.string.alpha({ length: { min: 10, max: 20 } }), + ), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + duration: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + inputToken: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tronResource: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["BANDWIDTH", "ENERGY"] as const), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, ]), - undefined, - ]), - gasEstimate: faker.helpers.arrayElement([ - faker.string.alpha({ length: { min: 10, max: 20 } }), - undefined, - ]), - explorerUrl: faker.helpers.arrayElement([ - faker.helpers.arrayElement([ + cosmosPubKey: faker.helpers.arrayElement([ faker.string.alpha({ length: { min: 10, max: 20 } }), - null, + undefined, ]), - undefined, - ]), - isMessage: faker.helpers.arrayElement([ - faker.datatype.boolean(), - undefined, - ]), - })), - executionPattern: faker.helpers.arrayElement([ - "synchronous", - "asynchronous", - "batch", - ] as const), - rawArguments: {}, + tezosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + executionMode: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["individual", "batched"] as const), + undefined, + ]), + ledgerWalletApiCompatible: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + }, + }, createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, completedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, @@ -4466,7 +6527,81 @@ export const getActionsControllerGetActionResponseMock = ( "asynchronous", "batch", ] as const), - rawArguments: {}, + rawArguments: { + ...{ + amount: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddress: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddresses: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => faker.string.alpha({ length: { min: 10, max: 20 } })), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + duration: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + inputToken: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tronResource: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["BANDWIDTH", "ENERGY"] as const), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cosmosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tezosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + executionMode: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["individual", "batched"] as const), + undefined, + ]), + ledgerWalletApiCompatible: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + }, + }, createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, completedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, @@ -4741,7 +6876,81 @@ export const getActionsControllerEnterYieldResponseMock = ( "asynchronous", "batch", ] as const), - rawArguments: {}, + rawArguments: { + ...{ + amount: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddress: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddresses: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => faker.string.alpha({ length: { min: 10, max: 20 } })), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + duration: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + inputToken: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tronResource: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["BANDWIDTH", "ENERGY"] as const), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cosmosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tezosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + executionMode: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["individual", "batched"] as const), + undefined, + ]), + ledgerWalletApiCompatible: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + }, + }, createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, completedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, @@ -5016,7 +7225,81 @@ export const getActionsControllerExitYieldResponseMock = ( "asynchronous", "batch", ] as const), - rawArguments: {}, + rawArguments: { + ...{ + amount: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddress: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddresses: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => faker.string.alpha({ length: { min: 10, max: 20 } })), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + duration: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + inputToken: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tronResource: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["BANDWIDTH", "ENERGY"] as const), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cosmosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tezosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + executionMode: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["individual", "batched"] as const), + undefined, + ]), + ledgerWalletApiCompatible: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + }, + }, createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, completedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, @@ -5291,7 +7574,81 @@ export const getActionsControllerManageYieldResponseMock = ( "asynchronous", "batch", ] as const), - rawArguments: {}, + rawArguments: { + ...{ + amount: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddress: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + validatorAddresses: faker.helpers.arrayElement([ + Array.from( + { length: faker.number.int({ min: 1, max: 10 }) }, + (_, i) => i + 1, + ).map(() => faker.string.alpha({ length: { min: 10, max: 20 } })), + undefined, + ]), + providerId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + duration: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + inputToken: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + subnetId: faker.helpers.arrayElement([ + faker.number.float({ + min: undefined, + max: undefined, + fractionDigits: 2, + }), + undefined, + ]), + tronResource: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["BANDWIDTH", "ENERGY"] as const), + undefined, + ]), + feeConfigurationId: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cosmosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + tezosPubKey: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + cAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + pAddressBech: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + executionMode: faker.helpers.arrayElement([ + faker.helpers.arrayElement(["individual", "batched"] as const), + undefined, + ]), + ledgerWalletApiCompatible: faker.helpers.arrayElement([ + faker.datatype.boolean(), + undefined, + ]), + }, + }, createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, completedAt: faker.helpers.arrayElement([ `${faker.date.past().toISOString().split(".")[0]}Z`, @@ -5520,6 +7877,217 @@ export const getTransactionsControllerSubmitTransactionHashResponseMock = ( ...overrideResponse, }); +export const getTransactionsControllerSubmitTransactionResponseMock = ( + overrideResponse: Partial = {}, +): TransactionDto => ({ + id: faker.string.alpha({ length: { min: 10, max: 20 } }), + title: faker.string.alpha({ length: { min: 10, max: 20 } }), + network: faker.helpers.arrayElement([ + "ethereum", + "ethereum-goerli", + "ethereum-holesky", + "ethereum-sepolia", + "ethereum-hoodi", + "arbitrum", + "base", + "base-sepolia", + "gnosis", + "optimism", + "polygon", + "polygon-amoy", + "starknet", + "zksync", + "linea", + "unichain", + "avalanche-c", + "avalanche-c-atomic", + "avalanche-p", + "binance", + "celo", + "fantom", + "harmony", + "moonriver", + "okc", + "viction", + "core", + "sonic", + "katana", + "agoric", + "akash", + "axelar", + "band-protocol", + "bitsong", + "canto", + "chihuahua", + "comdex", + "coreum", + "cosmos", + "crescent", + "cronos", + "cudos", + "desmos", + "dydx", + "evmos", + "fetch-ai", + "gravity-bridge", + "injective", + "irisnet", + "juno", + "kava", + "ki-network", + "mars-protocol", + "nym", + "okex-chain", + "onomy", + "osmosis", + "persistence", + "quicksilver", + "regen", + "secret", + "sentinel", + "sommelier", + "stafi", + "stargaze", + "stride", + "teritori", + "tgrade", + "umee", + "sei", + "mantra", + "celestia", + "saga", + "zetachain", + "dymension", + "humansai", + "neutron", + "polkadot", + "kusama", + "westend", + "bittensor", + "binancebeacon", + "cardano", + "near", + "solana", + "solana-devnet", + "stellar", + "stellar-testnet", + "tezos", + "tron", + "ton", + "ton-testnet", + ] as const), + status: faker.helpers.arrayElement([ + "NOT_FOUND", + "CREATED", + "BLOCKED", + "WAITING_FOR_SIGNATURE", + "SIGNED", + "BROADCASTED", + "PENDING", + "CONFIRMED", + "FAILED", + "SKIPPED", + ] as const), + type: faker.helpers.arrayElement([ + "SWAP", + "DEPOSIT", + "APPROVAL", + "STAKE", + "CLAIM_UNSTAKED", + "CLAIM_REWARDS", + "RESTAKE_REWARDS", + "UNSTAKE", + "SPLIT", + "MERGE", + "LOCK", + "UNLOCK", + "SUPPLY", + "BRIDGE", + "VOTE", + "REVOKE", + "RESTAKE", + "REBOND", + "WITHDRAW", + "WITHDRAW_ALL", + "CREATE_ACCOUNT", + "REVEAL", + "MIGRATE", + "DELEGATE", + "UNDELEGATE", + "UTXO_P_TO_C_IMPORT", + "UTXO_C_TO_P_IMPORT", + "WRAP", + "UNWRAP", + "UNFREEZE_LEGACY", + "UNFREEZE_LEGACY_BANDWIDTH", + "UNFREEZE_LEGACY_ENERGY", + "UNFREEZE_BANDWIDTH", + "UNFREEZE_ENERGY", + "FREEZE_BANDWIDTH", + "FREEZE_ENERGY", + "UNDELEGATE_BANDWIDTH", + "UNDELEGATE_ENERGY", + "P2P_NODE_REQUEST", + "CREATE_EIGENPOD", + "VERIFY_WITHDRAW_CREDENTIALS", + "START_CHECKPOINT", + "VERIFY_CHECKPOINT_PROOFS", + "QUEUE_WITHDRAWALS", + "COMPLETE_QUEUED_WITHDRAWALS", + "LUGANODES_PROVISION", + "LUGANODES_EXIT_REQUEST", + "INFSTONES_PROVISION", + "INFSTONES_EXIT_REQUEST", + "INFSTONES_CLAIM_REQUEST", + ] as const), + hash: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + createdAt: `${faker.date.past().toISOString().split(".")[0]}Z`, + broadcastedAt: faker.helpers.arrayElement([ + `${faker.date.past().toISOString().split(".")[0]}Z`, + null, + ]), + signedTransaction: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + unsignedTransaction: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + ]), + annotatedTransaction: faker.helpers.arrayElement([{}, undefined]), + structuredTransaction: faker.helpers.arrayElement([{}, undefined]), + stepIndex: faker.helpers.arrayElement([ + faker.number.float({ min: undefined, max: undefined, fractionDigits: 2 }), + undefined, + ]), + description: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + error: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + gasEstimate: faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + undefined, + ]), + explorerUrl: faker.helpers.arrayElement([ + faker.helpers.arrayElement([ + faker.string.alpha({ length: { min: 10, max: 20 } }), + null, + ]), + undefined, + ]), + isMessage: faker.helpers.arrayElement([faker.datatype.boolean(), undefined]), + ...overrideResponse, +}); + export const getTransactionsControllerGetTransactionResponseMock = ( overrideResponse: Partial = {}, ): TransactionDto => ({ @@ -5987,7 +8555,7 @@ export const getYieldsControllerGetYieldMockHandler = ( }); }; -export const getYieldsControllerGetYieldBalancesMockHandler = ( +export const getYieldsControllerGetYieldBalancesLegacyMockHandler = ( overrideResponse?: | YieldBalancesDto | (( @@ -5997,6 +8565,29 @@ export const getYieldsControllerGetYieldBalancesMockHandler = ( return http.get("*/v1/yields/:yieldId/balances", async (info) => { await delay(1000); + return new HttpResponse( + JSON.stringify( + overrideResponse !== undefined + ? typeof overrideResponse === "function" + ? await overrideResponse(info) + : overrideResponse + : getYieldsControllerGetYieldBalancesLegacyResponseMock(), + ), + { status: 200, headers: { "Content-Type": "application/json" } }, + ); + }); +}; + +export const getYieldsControllerGetYieldBalancesMockHandler = ( + overrideResponse?: + | YieldBalancesDto + | (( + info: Parameters[1]>[0], + ) => Promise | YieldBalancesDto), +) => { + return http.post("*/v1/yields/:yieldId/balances", async (info) => { + await delay(1000); + return new HttpResponse( JSON.stringify( overrideResponse !== undefined @@ -6178,6 +8769,29 @@ export const getTransactionsControllerSubmitTransactionHashMockHandler = ( ); }; +export const getTransactionsControllerSubmitTransactionMockHandler = ( + overrideResponse?: + | TransactionDto + | (( + info: Parameters[1]>[0], + ) => Promise | TransactionDto), +) => { + return http.post("*/v1/transactions/:transactionId/submit", async (info) => { + await delay(1000); + + return new HttpResponse( + JSON.stringify( + overrideResponse !== undefined + ? typeof overrideResponse === "function" + ? await overrideResponse(info) + : overrideResponse + : getTransactionsControllerSubmitTransactionResponseMock(), + ), + { status: 200, headers: { "Content-Type": "application/json" } }, + ); + }); +}; + export const getTransactionsControllerGetTransactionMockHandler = ( overrideResponse?: | TransactionDto @@ -6298,6 +8912,7 @@ export const getYieldXyzAPIMock = () => [ getYieldsControllerGetYieldsMockHandler(), getYieldsControllerGetAggregateBalancesMockHandler(), getYieldsControllerGetYieldMockHandler(), + getYieldsControllerGetYieldBalancesLegacyMockHandler(), getYieldsControllerGetYieldBalancesMockHandler(), getYieldsControllerGetYieldValidatorsMockHandler(), getActionsControllerGetActionsMockHandler(), @@ -6306,6 +8921,7 @@ export const getYieldXyzAPIMock = () => [ getActionsControllerExitYieldMockHandler(), getActionsControllerManageYieldMockHandler(), getTransactionsControllerSubmitTransactionHashMockHandler(), + getTransactionsControllerSubmitTransactionMockHandler(), getTransactionsControllerGetTransactionMockHandler(), getNetworksControllerGetNetworksMockHandler(), getProvidersControllerGetProvidersMockHandler(), diff --git a/src/api/index.ts b/src/api/index.ts index 7fb7001..1b5a267 100644 --- a/src/api/index.ts +++ b/src/api/index.ts @@ -13,10 +13,12 @@ import type { ProvidersControllerGetProviders200, ProvidersControllerGetProvidersParams, SubmitHashDto, + SubmitTransactionDto, TransactionDto, YieldBalancesDto, + YieldBalancesRequestDto, YieldDto, - YieldsControllerGetYieldBalancesParams, + YieldsControllerGetYieldBalancesLegacyParams, YieldsControllerGetYields200, YieldsControllerGetYieldsParams, YieldsControllerGetYieldValidators200, @@ -73,12 +75,12 @@ export const getYield = ( }; /** - * Retrieve all balances associated with a yield position for a specific wallet address, including active, pending, claimable, and withdrawable balances. The network is automatically determined from the yield configuration. - * @summary Get balances for a specific yield and address + * Retrieve all balances associated with a yield opportunity for a specific wallet address, including active, pending, claimable, and withdrawable balances. The network is automatically determined from the yield configuration. + * @summary Get balances for a specific yield */ -export const getYieldBalances = ( +export const getYieldBalancesLegacy = ( yieldId: string, - params: YieldsControllerGetYieldBalancesParams, + params: YieldsControllerGetYieldBalancesLegacyParams, options?: SecondParameter, ) => { return customFetch( @@ -87,6 +89,26 @@ export const getYieldBalances = ( ); }; +/** + * Retrieve all balances associated with a yield opportunity for a specific wallet address, including active, pending, claimable, and withdrawable balances. The network is automatically determined from the yield configuration. + * @summary Get balances for a specific yield + */ +export const getYieldBalances = ( + yieldId: string, + yieldBalancesRequestDto: YieldBalancesRequestDto, + options?: SecondParameter, +) => { + return customFetch( + { + url: `/v1/yields/${yieldId}/balances`, + method: "POST", + headers: { "Content-Type": "application/json" }, + data: yieldBalancesRequestDto, + }, + options, + ); +}; + /** * Retrieve a paginated list of validators available for staking or delegation for this yield opportunity. * @summary Get yield validators @@ -207,6 +229,26 @@ export const submitTransactionHash = ( ); }; +/** + * Submit the transaction to the blockchain. + * @summary Submit transaction + */ +export const submitTransaction = ( + transactionId: string, + submitTransactionDto: SubmitTransactionDto, + options?: SecondParameter, +) => { + return customFetch( + { + url: `/v1/transactions/${transactionId}/submit`, + method: "POST", + headers: { "Content-Type": "application/json" }, + data: submitTransactionDto, + }, + options, + ); +}; + /** * Retrieve detailed information about a specific transaction including current status, hash, and execution details. * @summary Get transaction details @@ -278,6 +320,9 @@ export type GetAggregateBalancesResult = NonNullable< Awaited> >; export type GetYieldResult = NonNullable>>; +export type GetYieldBalancesLegacyResult = NonNullable< + Awaited> +>; export type GetYieldBalancesResult = NonNullable< Awaited> >; @@ -302,6 +347,9 @@ export type ManageYieldResult = NonNullable< export type SubmitTransactionHashResult = NonNullable< Awaited> >; +export type SubmitTransactionResult = NonNullable< + Awaited> +>; export type GetTransactionResult = NonNullable< Awaited> >; diff --git a/src/api/schemas/actionArgumentsDto.ts b/src/api/schemas/actionArgumentsDto.ts new file mode 100644 index 0000000..c0fd8e8 --- /dev/null +++ b/src/api/schemas/actionArgumentsDto.ts @@ -0,0 +1,35 @@ +import type { ActionArgumentsDtoExecutionMode } from "./actionArgumentsDtoExecutionMode"; +import type { ActionArgumentsDtoTronResource } from "./actionArgumentsDtoTronResource"; + +export interface ActionArgumentsDto { + /** Amount to stake/unstake */ + amount?: string; + /** Validator address for single validator selection */ + validatorAddress?: string; + /** Multiple validator addresses */ + validatorAddresses?: string[]; + /** Provider ID for Ethereum native staking */ + providerId?: string; + /** Duration for Avalanche native staking (in seconds) */ + duration?: number; + /** Token address for ERC-20 tokens, "0x" for native token, omit for canonical token */ + inputToken?: string; + /** Subnet ID for Bittensor staking */ + subnetId?: number; + /** Tron resource type for Tron staking */ + tronResource?: ActionArgumentsDtoTronResource; + /** Fee configuration ID for custom fee settings */ + feeConfigurationId?: string; + /** Cosmos public key for Cosmos staking */ + cosmosPubKey?: string; + /** Tezos public key for Tezos staking */ + tezosPubKey?: string; + /** Avalanche C-chain address */ + cAddressBech?: string; + /** Avalanche P-chain address */ + pAddressBech?: string; + /** Transaction execution mode */ + executionMode?: ActionArgumentsDtoExecutionMode; + /** Transactions should have Ledger wallet API compatibility for hardware wallet users */ + ledgerWalletApiCompatible?: boolean; +} diff --git a/src/api/schemas/actionArgumentsDtoExecutionMode.ts b/src/api/schemas/actionArgumentsDtoExecutionMode.ts new file mode 100644 index 0000000..5dd9701 --- /dev/null +++ b/src/api/schemas/actionArgumentsDtoExecutionMode.ts @@ -0,0 +1,11 @@ +/** + * Transaction execution mode + */ +export type ActionArgumentsDtoExecutionMode = + (typeof ActionArgumentsDtoExecutionMode)[keyof typeof ActionArgumentsDtoExecutionMode]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ActionArgumentsDtoExecutionMode = { + individual: "individual", + batched: "batched", +} as const; diff --git a/src/api/schemas/actionArgumentsDtoTronResource.ts b/src/api/schemas/actionArgumentsDtoTronResource.ts new file mode 100644 index 0000000..c1706e4 --- /dev/null +++ b/src/api/schemas/actionArgumentsDtoTronResource.ts @@ -0,0 +1,11 @@ +/** + * Tron resource type for Tron staking + */ +export type ActionArgumentsDtoTronResource = + (typeof ActionArgumentsDtoTronResource)[keyof typeof ActionArgumentsDtoTronResource]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ActionArgumentsDtoTronResource = { + BANDWIDTH: "BANDWIDTH", + ENERGY: "ENERGY", +} as const; diff --git a/src/api/schemas/actionDtoRawArguments.ts b/src/api/schemas/actionDtoRawArguments.ts index a2809c4..31245fd 100644 --- a/src/api/schemas/actionDtoRawArguments.ts +++ b/src/api/schemas/actionDtoRawArguments.ts @@ -1,5 +1,7 @@ +import type { ActionArgumentsDto } from "./actionArgumentsDto"; + /** * Raw arguments exactly as submitted by the user for this action * @nullable */ -export type ActionDtoRawArguments = { [key: string]: unknown } | null; +export type ActionDtoRawArguments = ActionArgumentsDto | null; diff --git a/src/api/schemas/argumentFieldDto.ts b/src/api/schemas/argumentFieldDto.ts index d523dc0..b4c073d 100644 --- a/src/api/schemas/argumentFieldDto.ts +++ b/src/api/schemas/argumentFieldDto.ts @@ -1,9 +1,10 @@ import type { ArgumentFieldDtoDefault } from "./argumentFieldDtoDefault"; +import type { ArgumentFieldDtoName } from "./argumentFieldDtoName"; import type { ArgumentFieldDtoType } from "./argumentFieldDtoType"; export interface ArgumentFieldDto { /** Field name */ - name: string; + name: ArgumentFieldDtoName; /** Field type */ type: ArgumentFieldDtoType; /** Field label */ diff --git a/src/api/schemas/argumentFieldDtoName.ts b/src/api/schemas/argumentFieldDtoName.ts new file mode 100644 index 0000000..89977bc --- /dev/null +++ b/src/api/schemas/argumentFieldDtoName.ts @@ -0,0 +1,24 @@ +/** + * Field name + */ +export type ArgumentFieldDtoName = + (typeof ArgumentFieldDtoName)[keyof typeof ArgumentFieldDtoName]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ArgumentFieldDtoName = { + amount: "amount", + validatorAddress: "validatorAddress", + validatorAddresses: "validatorAddresses", + providerId: "providerId", + duration: "duration", + inputToken: "inputToken", + subnetId: "subnetId", + tronResource: "tronResource", + feeConfigurationId: "feeConfigurationId", + cosmosPubKey: "cosmosPubKey", + tezosPubKey: "tezosPubKey", + cAddressBech: "cAddressBech", + pAddressBech: "pAddressBech", + executionMode: "executionMode", + ledgerWalletApiCompatible: "ledgerWalletApiCompatible", +} as const; diff --git a/src/api/schemas/balancesQueryDto.ts b/src/api/schemas/balancesQueryDto.ts index 023d039..e79bb13 100644 --- a/src/api/schemas/balancesQueryDto.ts +++ b/src/api/schemas/balancesQueryDto.ts @@ -1,4 +1,4 @@ -import type { BalancesQueryDtoArguments } from "./balancesQueryDtoArguments"; +import type { GetBalancesArgumentsDto } from "./getBalancesArgumentsDto"; import type { Networks } from "./networks"; export interface BalancesQueryDto { @@ -7,6 +7,6 @@ export interface BalancesQueryDto { /** User wallet address to check balances for */ address: string; network: Networks; - /** Custom arguments for advanced or protocol-specific balance queries. Should be a JSON object with custom parameters. See the yield mechanics.arguments.balance schema for details. */ - arguments?: BalancesQueryDtoArguments; + /** Arguments for balance queries */ + arguments?: GetBalancesArgumentsDto; } diff --git a/src/api/schemas/balancesQueryDtoArguments.ts b/src/api/schemas/balancesQueryDtoArguments.ts deleted file mode 100644 index 80ebd4d..0000000 --- a/src/api/schemas/balancesQueryDtoArguments.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Custom arguments for advanced or protocol-specific balance queries. Should be a JSON object with custom parameters. See the yield mechanics.arguments.balance schema for details. - */ -export type BalancesQueryDtoArguments = { [key: string]: unknown }; diff --git a/src/api/schemas/createActionDto.ts b/src/api/schemas/createActionDto.ts index cf257c3..9449833 100644 --- a/src/api/schemas/createActionDto.ts +++ b/src/api/schemas/createActionDto.ts @@ -1,10 +1,10 @@ -import type { CreateActionDtoArguments } from "./createActionDtoArguments"; +import type { ActionArgumentsDto } from "./actionArgumentsDto"; export interface CreateActionDto { /** Yield ID to perform the action on */ yieldId: string; /** User wallet address */ address: string; - /** Arguments for the action fields */ - arguments?: CreateActionDtoArguments; + /** Arguments for the action */ + arguments?: ActionArgumentsDto; } diff --git a/src/api/schemas/createActionDtoArguments.ts b/src/api/schemas/createActionDtoArguments.ts deleted file mode 100644 index 86369c6..0000000 --- a/src/api/schemas/createActionDtoArguments.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Arguments for the action fields - */ -export type CreateActionDtoArguments = { [key: string]: unknown }; diff --git a/src/api/schemas/createManageActionDto.ts b/src/api/schemas/createManageActionDto.ts index 4fa4f5d..3b669fa 100644 --- a/src/api/schemas/createManageActionDto.ts +++ b/src/api/schemas/createManageActionDto.ts @@ -1,13 +1,13 @@ +import type { ActionArgumentsDto } from "./actionArgumentsDto"; import type { CreateManageActionDtoAction } from "./createManageActionDtoAction"; -import type { CreateManageActionDtoArguments } from "./createManageActionDtoArguments"; export interface CreateManageActionDto { /** Yield ID to perform the action on */ yieldId: string; /** User wallet address */ address: string; - /** Arguments for the action fields */ - arguments?: CreateManageActionDtoArguments; + /** Arguments for the action */ + arguments?: ActionArgumentsDto; /** Pending action type (required for manage actions) */ action: CreateManageActionDtoAction; /** Server-generated passthrough from the balances endpoint (required for manage actions) */ diff --git a/src/api/schemas/createManageActionDtoArguments.ts b/src/api/schemas/createManageActionDtoArguments.ts deleted file mode 100644 index 56f6b6e..0000000 --- a/src/api/schemas/createManageActionDtoArguments.ts +++ /dev/null @@ -1,4 +0,0 @@ -/** - * Arguments for the action fields - */ -export type CreateManageActionDtoArguments = { [key: string]: unknown }; diff --git a/src/api/schemas/eRCStandards.ts b/src/api/schemas/eRCStandards.ts new file mode 100644 index 0000000..eaa5ff1 --- /dev/null +++ b/src/api/schemas/eRCStandards.ts @@ -0,0 +1,12 @@ +/** + * Supported standards for this yield + */ +export type ERCStandards = (typeof ERCStandards)[keyof typeof ERCStandards]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const ERCStandards = { + ERC20: "ERC20", + ERC4626: "ERC4626", + ERC721: "ERC721", + ERC1155: "ERC1155", +} as const; diff --git a/src/api/schemas/getBalancesArgumentsDto.ts b/src/api/schemas/getBalancesArgumentsDto.ts new file mode 100644 index 0000000..0183d6a --- /dev/null +++ b/src/api/schemas/getBalancesArgumentsDto.ts @@ -0,0 +1,6 @@ +export interface GetBalancesArgumentsDto { + /** Avalanche C-chain address */ + cAddressBech?: string; + /** Avalanche P-chain address */ + pAddressBech?: string; +} diff --git a/src/api/schemas/index.ts b/src/api/schemas/index.ts index 9eca862..6b7bbf4 100644 --- a/src/api/schemas/index.ts +++ b/src/api/schemas/index.ts @@ -1,3 +1,6 @@ +export * from "./actionArgumentsDto"; +export * from "./actionArgumentsDtoExecutionMode"; +export * from "./actionArgumentsDtoTronResource"; export * from "./actionDto"; export * from "./actionDtoExecutionPattern"; export * from "./actionDtoIntent"; @@ -39,20 +42,20 @@ export * from "./actionsQueryDtoStatus"; export * from "./actionsQueryDtoType"; export * from "./argumentFieldDto"; export * from "./argumentFieldDtoDefault"; +export * from "./argumentFieldDtoName"; export * from "./argumentFieldDtoType"; export * from "./argumentSchemaDto"; export * from "./balanceDto"; export * from "./balanceDtoValidator"; export * from "./balancesQueryDto"; -export * from "./balancesQueryDtoArguments"; export * from "./balancesRequestDto"; export * from "./balancesResponseDto"; export * from "./balanceType"; export * from "./createActionDto"; -export * from "./createActionDtoArguments"; export * from "./createManageActionDto"; export * from "./createManageActionDtoAction"; -export * from "./createManageActionDtoArguments"; +export * from "./eRCStandards"; +export * from "./getBalancesArgumentsDto"; export * from "./healthStatus"; export * from "./healthStatusDto"; export * from "./networkDto"; @@ -84,12 +87,15 @@ export * from "./providersControllerGetProviders401"; export * from "./providersControllerGetProviders429"; export * from "./providersControllerGetProviders500"; export * from "./providersControllerGetProvidersParams"; +export * from "./revShareDetailsDto"; +export * from "./revShareTiersDto"; export * from "./rewardClaiming"; export * from "./rewardDto"; export * from "./rewardDtoYieldSource"; export * from "./rewardRateDto"; export * from "./rewardSchedule"; export * from "./submitHashDto"; +export * from "./submitTransactionDto"; export * from "./timePeriodDto"; export * from "./tokenDto"; export * from "./tokenDtoNetwork"; @@ -105,12 +111,17 @@ export * from "./transactionsControllerGetTransaction400"; export * from "./transactionsControllerGetTransaction401"; export * from "./transactionsControllerGetTransaction429"; export * from "./transactionsControllerGetTransaction500"; +export * from "./transactionsControllerSubmitTransaction401"; +export * from "./transactionsControllerSubmitTransaction429"; +export * from "./transactionsControllerSubmitTransaction500"; export * from "./transactionsControllerSubmitTransactionHash401"; export * from "./transactionsControllerSubmitTransactionHash429"; export * from "./transactionsControllerSubmitTransactionHash500"; export * from "./validatorDto"; +export * from "./validatorProviderDto"; export * from "./validatorQueryDto"; export * from "./yieldBalancesDto"; +export * from "./yieldBalancesRequestDto"; export * from "./yieldDto"; export * from "./yieldDtoNetwork"; export * from "./yieldEntryLimitsDto"; @@ -123,6 +134,7 @@ export * from "./yieldMechanicsDtoExtraTransactionFormatsSupportedItem"; export * from "./yieldMetadataDto"; export * from "./yieldQueryDto"; export * from "./yieldQueryDtoNetwork"; +export * from "./yieldQueryDtoType"; export * from "./yieldStatisticsDto"; export * from "./yieldStatusDto"; export * from "./yieldsControllerGetAggregateBalances400"; @@ -137,7 +149,11 @@ export * from "./yieldsControllerGetYieldBalances400"; export * from "./yieldsControllerGetYieldBalances401"; export * from "./yieldsControllerGetYieldBalances429"; export * from "./yieldsControllerGetYieldBalances500"; -export * from "./yieldsControllerGetYieldBalancesParams"; +export * from "./yieldsControllerGetYieldBalancesLegacy400"; +export * from "./yieldsControllerGetYieldBalancesLegacy401"; +export * from "./yieldsControllerGetYieldBalancesLegacy429"; +export * from "./yieldsControllerGetYieldBalancesLegacy500"; +export * from "./yieldsControllerGetYieldBalancesLegacyParams"; export * from "./yieldsControllerGetYields200"; export * from "./yieldsControllerGetYields200AllOf"; export * from "./yieldsControllerGetYields400"; @@ -146,6 +162,7 @@ export * from "./yieldsControllerGetYields429"; export * from "./yieldsControllerGetYields500"; export * from "./yieldsControllerGetYieldsNetwork"; export * from "./yieldsControllerGetYieldsParams"; +export * from "./yieldsControllerGetYieldsType"; export * from "./yieldsControllerGetYieldValidators200"; export * from "./yieldsControllerGetYieldValidators200AllOf"; export * from "./yieldsControllerGetYieldValidators400"; diff --git a/src/api/schemas/revShareDetailsDto.ts b/src/api/schemas/revShareDetailsDto.ts new file mode 100644 index 0000000..c6a40c2 --- /dev/null +++ b/src/api/schemas/revShareDetailsDto.ts @@ -0,0 +1,6 @@ +export interface RevShareDetailsDto { + /** Minimum revenue share percentage (0-1) */ + minRevShare: number; + /** Maximum revenue share percentage (0-1) */ + maxRevShare: number; +} diff --git a/src/api/schemas/revShareTiersDto.ts b/src/api/schemas/revShareTiersDto.ts new file mode 100644 index 0000000..0008e13 --- /dev/null +++ b/src/api/schemas/revShareTiersDto.ts @@ -0,0 +1,10 @@ +import type { RevShareDetailsDto } from "./revShareDetailsDto"; + +export interface RevShareTiersDto { + /** Trial tier revenue share details */ + trial?: RevShareDetailsDto; + /** Standard tier revenue share details */ + standard?: RevShareDetailsDto; + /** Pro tier revenue share details */ + pro?: RevShareDetailsDto; +} diff --git a/src/api/schemas/submitTransactionDto.ts b/src/api/schemas/submitTransactionDto.ts new file mode 100644 index 0000000..0193402 --- /dev/null +++ b/src/api/schemas/submitTransactionDto.ts @@ -0,0 +1,4 @@ +export interface SubmitTransactionDto { + /** Encoded signed transaction to submit to the blockchain */ + signedTransaction: string; +} diff --git a/src/api/schemas/transactionsControllerSubmitTransaction401.ts b/src/api/schemas/transactionsControllerSubmitTransaction401.ts new file mode 100644 index 0000000..40e587a --- /dev/null +++ b/src/api/schemas/transactionsControllerSubmitTransaction401.ts @@ -0,0 +1,5 @@ +export type TransactionsControllerSubmitTransaction401 = { + message?: string; + error?: string; + statusCode?: number; +}; diff --git a/src/api/schemas/transactionsControllerSubmitTransaction429.ts b/src/api/schemas/transactionsControllerSubmitTransaction429.ts new file mode 100644 index 0000000..b2509f9 --- /dev/null +++ b/src/api/schemas/transactionsControllerSubmitTransaction429.ts @@ -0,0 +1,6 @@ +export type TransactionsControllerSubmitTransaction429 = { + message?: string; + error?: string; + statusCode?: number; + retryAfter?: number; +}; diff --git a/src/api/schemas/transactionsControllerSubmitTransaction500.ts b/src/api/schemas/transactionsControllerSubmitTransaction500.ts new file mode 100644 index 0000000..31ff194 --- /dev/null +++ b/src/api/schemas/transactionsControllerSubmitTransaction500.ts @@ -0,0 +1,5 @@ +export type TransactionsControllerSubmitTransaction500 = { + message?: string; + error?: string; + statusCode?: number; +}; diff --git a/src/api/schemas/validatorDto.ts b/src/api/schemas/validatorDto.ts index cda006c..ceb78e0 100644 --- a/src/api/schemas/validatorDto.ts +++ b/src/api/schemas/validatorDto.ts @@ -1,36 +1,49 @@ import type { RewardRateDto } from "./rewardRateDto"; +import type { ValidatorProviderDto } from "./validatorProviderDto"; export interface ValidatorDto { /** Validator address or ID */ address: string; /** Validator display name */ - name: string; + name?: string; /** Validator logo URI */ - logoURI: string; + logoURI?: string; /** Link to validator website */ - website: string; + website?: string; /** Detailed reward rate breakdown by source (emissions, MEV, fees, etc.) */ rewardRate?: RewardRateDto; + /** Provider information for this validator */ + provider?: ValidatorProviderDto; /** Commission rate charged by validator */ - commission: number; + commission?: number; /** Total value locked with this validator in USD */ - tvlUsd: string; + tvlUsd?: string; /** Total value locked with this validator in native token */ - tvl: string; + tvl?: string; /** Validator's voting power share (0–1) */ - votingPower: number; + votingPower?: number; /** Whether this validator is flagged as preferred */ - preferred: boolean; + preferred?: boolean; /** Minimum stake allowed in native token */ - minimumStake: string; + minimumStake?: string; /** Maximum available stake before hitting cap in native token */ - remainingPossibleStake: string; + remainingPossibleStake?: string; /** Number of remaining nominator/delegator slots (for capped chains) */ - remainingSlots: number; + remainingSlots?: number; /** Number of current nominators */ - nominatorCount: number; + nominatorCount?: number; /** Validator status description (active, jailed, unbonding, etc.) */ status?: string; /** ID of the provider backing this validator */ providerId?: string; + /** Price per share of the validator */ + pricePerShare?: string; + /** Subnet ID */ + subnetId?: number; + /** Subnet name */ + subnetName?: string; + /** Market cap of the subnet */ + marketCap?: string; + /** Token symbol of the subnet */ + tokenSymbol?: string; } diff --git a/src/api/schemas/validatorProviderDto.ts b/src/api/schemas/validatorProviderDto.ts new file mode 100644 index 0000000..3355c67 --- /dev/null +++ b/src/api/schemas/validatorProviderDto.ts @@ -0,0 +1,16 @@ +import type { RevShareTiersDto } from "./revShareTiersDto"; + +export interface ValidatorProviderDto { + /** Provider display name */ + name: string; + /** Unique identifier for the provider */ + uniqueId: string; + /** Provider website URL */ + website: string; + /** Provider ranking (lower numbers indicate higher preference) */ + rank: number; + /** Whether this provider is marked as preferred */ + preferred: boolean; + /** Revenue sharing details by tier */ + revshare?: RevShareTiersDto; +} diff --git a/src/api/schemas/validatorQueryDto.ts b/src/api/schemas/validatorQueryDto.ts index 16716e6..89a8969 100644 --- a/src/api/schemas/validatorQueryDto.ts +++ b/src/api/schemas/validatorQueryDto.ts @@ -14,7 +14,7 @@ export interface ValidatorQueryDto { name?: string; /** Filter by validator address */ address?: string; - /** Filter by provider id */ + /** Filter by provider ID */ provider?: string; /** Filter by validator status */ status?: string; diff --git a/src/api/schemas/yieldBalancesRequestDto.ts b/src/api/schemas/yieldBalancesRequestDto.ts new file mode 100644 index 0000000..a529b80 --- /dev/null +++ b/src/api/schemas/yieldBalancesRequestDto.ts @@ -0,0 +1,8 @@ +import type { GetBalancesArgumentsDto } from "./getBalancesArgumentsDto"; + +export interface YieldBalancesRequestDto { + /** User wallet address to check balances for */ + address: string; + /** Optional arguments for advanced or protocol-specific balance queries */ + arguments?: GetBalancesArgumentsDto; +} diff --git a/src/api/schemas/yieldMechanicsArgumentsDto.ts b/src/api/schemas/yieldMechanicsArgumentsDto.ts index 68a642a..d8affd4 100644 --- a/src/api/schemas/yieldMechanicsArgumentsDto.ts +++ b/src/api/schemas/yieldMechanicsArgumentsDto.ts @@ -4,7 +4,7 @@ import type { YieldMechanicsArgumentsDtoManage } from "./yieldMechanicsArguments export interface YieldMechanicsArgumentsDto { enter?: ArgumentSchemaDto; exit?: ArgumentSchemaDto; - /** Arguments for manage sub-actions (claim, restake, etc.). Values are ArgumentSchemaDto objects. */ + /** Manage action schemas. Each yield supports different ActionTypes (CLAIM_UNSTAKED, CLAIM_REWARDS, etc.). Keys are ActionTypes enum values. */ manage?: YieldMechanicsArgumentsDtoManage; /** Arguments for the balances endpoint (e.g., alternative addresses, chain-specific fields) */ balance?: ArgumentSchemaDto; diff --git a/src/api/schemas/yieldMechanicsArgumentsDtoManage.ts b/src/api/schemas/yieldMechanicsArgumentsDtoManage.ts index 33e53de..fc14c9e 100644 --- a/src/api/schemas/yieldMechanicsArgumentsDtoManage.ts +++ b/src/api/schemas/yieldMechanicsArgumentsDtoManage.ts @@ -1,4 +1,8 @@ +import type { ArgumentSchemaDto } from "./argumentSchemaDto"; + /** - * Arguments for manage sub-actions (claim, restake, etc.). Values are ArgumentSchemaDto objects. + * Manage action schemas. Each yield supports different ActionTypes (CLAIM_UNSTAKED, CLAIM_REWARDS, etc.). Keys are ActionTypes enum values. */ -export type YieldMechanicsArgumentsDtoManage = { [key: string]: unknown }; +export type YieldMechanicsArgumentsDtoManage = { + [key: string]: ArgumentSchemaDto; +}; diff --git a/src/api/schemas/yieldMetadataDto.ts b/src/api/schemas/yieldMetadataDto.ts index b1ac514..f390174 100644 --- a/src/api/schemas/yieldMetadataDto.ts +++ b/src/api/schemas/yieldMetadataDto.ts @@ -1,3 +1,5 @@ +import type { ERCStandards } from "./eRCStandards"; + export interface YieldMetadataDto { /** Display name of the yield opportunity */ name: string; @@ -7,4 +9,9 @@ export interface YieldMetadataDto { description: string; /** Link to documentation or integration guide */ documentation: string; + /** Whether this yield is currently under maintenance */ + underMaintenance: boolean; + /** Whether this yield is deprecated and will be discontinued */ + deprecated: boolean; + supportedStandards: ERCStandards[]; } diff --git a/src/api/schemas/yieldQueryDto.ts b/src/api/schemas/yieldQueryDto.ts index 7a74f3f..0119f55 100644 --- a/src/api/schemas/yieldQueryDto.ts +++ b/src/api/schemas/yieldQueryDto.ts @@ -1,4 +1,5 @@ import type { YieldQueryDtoNetwork } from "./yieldQueryDtoNetwork"; +import type { YieldQueryDtoType } from "./yieldQueryDtoType"; export interface YieldQueryDto { /** @@ -14,10 +15,18 @@ export interface YieldQueryDto { limit?: number; /** Filter by network */ network?: YieldQueryDtoNetwork; + /** Filter by yield type */ + type?: YieldQueryDtoType; + /** Filter by cooldown period */ + hasCooldownPeriod?: boolean; + /** Filter by warmup period */ + hasWarmupPeriod?: boolean; /** Filter by token symbol or address */ token?: string; /** Filter by input token symbol or address */ inputToken?: string; - /** Filter by provider id */ + /** Filter by provider ID */ provider?: string; + /** Search by yield name */ + search?: string; } diff --git a/src/api/schemas/yieldQueryDtoType.ts b/src/api/schemas/yieldQueryDtoType.ts new file mode 100644 index 0000000..ab6eeb6 --- /dev/null +++ b/src/api/schemas/yieldQueryDtoType.ts @@ -0,0 +1,15 @@ +/** + * Filter by yield type + */ +export type YieldQueryDtoType = + (typeof YieldQueryDtoType)[keyof typeof YieldQueryDtoType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const YieldQueryDtoType = { + staking: "staking", + restaking: "restaking", + lending: "lending", + vault: "vault", + fixed_yield: "fixed_yield", + real_world_asset: "real_world_asset", +} as const; diff --git a/src/api/schemas/yieldStatisticsDto.ts b/src/api/schemas/yieldStatisticsDto.ts index 0435b4c..8dbd96d 100644 --- a/src/api/schemas/yieldStatisticsDto.ts +++ b/src/api/schemas/yieldStatisticsDto.ts @@ -1,12 +1,27 @@ export interface YieldStatisticsDto { - /** Total value locked in USD */ - tvlUsd: string; - /** Total value locked in primary underlying token */ - tvl: string; - /** Number of users with active positions in the yield */ - uniqueUsers: number; - /** Average position size in USD */ - averagePositionSizeUsd: string; - /** Average position size in primary underlying token */ - averagePositionSize: string; + /** + * Total value locked in USD + * @nullable + */ + tvlUsd?: string | null; + /** + * Total value locked in primary underlying token + * @nullable + */ + tvl?: string | null; + /** + * Number of users with active positions in the yield + * @nullable + */ + uniqueUsers?: number | null; + /** + * Average position size in USD + * @nullable + */ + averagePositionSizeUsd?: string | null; + /** + * Average position size in primary underlying token + * @nullable + */ + averagePositionSize?: string | null; } diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesLegacy400.ts b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy400.ts new file mode 100644 index 0000000..c56bcd8 --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy400.ts @@ -0,0 +1,5 @@ +export type YieldsControllerGetYieldBalancesLegacy400 = { + message?: string; + error?: string; + statusCode?: number; +}; diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesLegacy401.ts b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy401.ts new file mode 100644 index 0000000..c4fd5a3 --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy401.ts @@ -0,0 +1,5 @@ +export type YieldsControllerGetYieldBalancesLegacy401 = { + message?: string; + error?: string; + statusCode?: number; +}; diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesLegacy429.ts b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy429.ts new file mode 100644 index 0000000..4bed6e7 --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy429.ts @@ -0,0 +1,6 @@ +export type YieldsControllerGetYieldBalancesLegacy429 = { + message?: string; + error?: string; + statusCode?: number; + retryAfter?: number; +}; diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesLegacy500.ts b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy500.ts new file mode 100644 index 0000000..2143d15 --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldBalancesLegacy500.ts @@ -0,0 +1,5 @@ +export type YieldsControllerGetYieldBalancesLegacy500 = { + message?: string; + error?: string; + statusCode?: number; +}; diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesLegacyParams.ts b/src/api/schemas/yieldsControllerGetYieldBalancesLegacyParams.ts new file mode 100644 index 0000000..1ddb665 --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldBalancesLegacyParams.ts @@ -0,0 +1,10 @@ +export type YieldsControllerGetYieldBalancesLegacyParams = { + /** + * User wallet address to check balances for + */ + address: string; + /** + * Custom arguments for advanced or protocol-specific balance queries. Should be a JSON object with custom parameters. + */ + arguments?: string; +}; diff --git a/src/api/schemas/yieldsControllerGetYieldBalancesParams.ts b/src/api/schemas/yieldsControllerGetYieldBalancesParams.ts deleted file mode 100644 index 25efc76..0000000 --- a/src/api/schemas/yieldsControllerGetYieldBalancesParams.ts +++ /dev/null @@ -1,10 +0,0 @@ -export type YieldsControllerGetYieldBalancesParams = { - /** - * The user wallet address to check balances for (network is automatically determined by the yield) - */ - address: string; - /** - * Custom arguments for advanced or protocol-specific balance queries. Should be a JSON object with custom parameters. See the yield mechanics.arguments.balance schema for details. - */ - arguments?: string; -}; diff --git a/src/api/schemas/yieldsControllerGetYieldValidatorsParams.ts b/src/api/schemas/yieldsControllerGetYieldValidatorsParams.ts index a39774d..029005a 100644 --- a/src/api/schemas/yieldsControllerGetYieldValidatorsParams.ts +++ b/src/api/schemas/yieldsControllerGetYieldValidatorsParams.ts @@ -19,7 +19,7 @@ export type YieldsControllerGetYieldValidatorsParams = { */ address?: string; /** - * Filter by provider id + * Filter by provider ID */ provider?: string; /** diff --git a/src/api/schemas/yieldsControllerGetYieldsParams.ts b/src/api/schemas/yieldsControllerGetYieldsParams.ts index 191348b..8f97b48 100644 --- a/src/api/schemas/yieldsControllerGetYieldsParams.ts +++ b/src/api/schemas/yieldsControllerGetYieldsParams.ts @@ -1,4 +1,5 @@ import type { YieldsControllerGetYieldsNetwork } from "./yieldsControllerGetYieldsNetwork"; +import type { YieldsControllerGetYieldsType } from "./yieldsControllerGetYieldsType"; export type YieldsControllerGetYieldsParams = { /** @@ -16,6 +17,18 @@ export type YieldsControllerGetYieldsParams = { * Filter by network */ network?: YieldsControllerGetYieldsNetwork; + /** + * Filter by yield type + */ + type?: YieldsControllerGetYieldsType; + /** + * Filter by cooldown period + */ + hasCooldownPeriod?: boolean; + /** + * Filter by warmup period + */ + hasWarmupPeriod?: boolean; /** * Filter by token symbol or address */ @@ -25,7 +38,11 @@ export type YieldsControllerGetYieldsParams = { */ inputToken?: string; /** - * Filter by provider id + * Filter by provider ID */ provider?: string; + /** + * Search by yield name + */ + search?: string; }; diff --git a/src/api/schemas/yieldsControllerGetYieldsType.ts b/src/api/schemas/yieldsControllerGetYieldsType.ts new file mode 100644 index 0000000..edfde2b --- /dev/null +++ b/src/api/schemas/yieldsControllerGetYieldsType.ts @@ -0,0 +1,12 @@ +export type YieldsControllerGetYieldsType = + (typeof YieldsControllerGetYieldsType)[keyof typeof YieldsControllerGetYieldsType]; + +// eslint-disable-next-line @typescript-eslint/no-redeclare +export const YieldsControllerGetYieldsType = { + staking: "staking", + restaking: "restaking", + lending: "lending", + vault: "vault", + fixed_yield: "fixed_yield", + real_world_asset: "real_world_asset", +} as const; diff --git a/tsconfig.node.json b/tsconfig.node.json index d1f3343..0b10cf9 100644 --- a/tsconfig.node.json +++ b/tsconfig.node.json @@ -1,7 +1,9 @@ { "extends": "./tsconfig.base.json", "compilerOptions": { - "composite": true + "composite": true, + "noEmit": true, + "target": "es2024" }, "include": ["src", "orval.config.ts", "example"] }