diff --git a/dev/package.json b/dev/package.json index d9f6c14..6c66cac 100644 --- a/dev/package.json +++ b/dev/package.json @@ -13,14 +13,14 @@ "dayjs": "^1.11.11", "@headlessui/react": "^2.0.4", "@multiversx/sdk-core": "^13.2.1", - "@multiversx/sdk-dapp": "2.33.1", + "@multiversx/sdk-dapp": "2.33.2", "@elrondnetwork/transaction-decoder": "^1.0.0", "@peerme/extensions": "*", - "@peerme/web-ui": "^1.17.0", + "@peerme/web-ui": "^2.0.1", "axios": "^1.7.2", "collect.js": "^4.36.1", - "graphql": "^16.8.1", - "next": "14.2.3", + "graphql": "^16.8.2", + "next": "14.2.4", "react": "18.3.1", "react-dom": "18.3.1", "use-clipboard-copy": "^0.2.0" @@ -32,7 +32,7 @@ "@types/react-dom": "18.3.0", "autoprefixer": "^10.4.19", "eslint": "9.4.0", - "eslint-config-next": "14.2.3", + "eslint-config-next": "14.2.4", "postcss": "^8.4.38", "tailwindcss": "^3.4.4", "typescript": "5.4.5" diff --git a/dev/src/helpers.ts b/dev/src/helpers.ts index dcbcba2..992b18a 100644 --- a/dev/src/helpers.ts +++ b/dev/src/helpers.ts @@ -1,18 +1,22 @@ import { DevServerConfig } from './config' import { AccountType } from '@multiversx/sdk-dapp/types' -import { ProposalAction, toActionArgsTypedValue, toActionArgsBigNumber } from '@peerme/core-ts' -import { Address, ContractFunction, Interaction, SmartContract, TokenTransfer } from '@multiversx/sdk-core' +import { ProposalAction, toActionArgsBigInt } from '@peerme/core-ts' +import { Address, Interaction, SmartContract, TokenTransfer, ContractFunction } from '@multiversx/sdk-core' + +const GasLimit = 50_000_000 export const toDemoTransaction = (action: ProposalAction, account: AccountType) => { console.log('Creating transaction for action', action, 'with account', account) const sc = new SmartContract({ address: Address.fromBech32(action.destination) }) - const typedArgs = action.arguments.map(toActionArgsTypedValue) + const typedArgs = action.arguments.map(transformActionArgToTypedValue) + + console.log('Actions [serialized]', toSerializableAction(action, GasLimit)) let interaction = new Interaction(sc, new ContractFunction(action.endpoint), typedArgs) .withChainID(DevServerConfig.ChainId) .withSender(new Address(account.address)) - .withGasLimit(50_000_000) + .withGasLimit(GasLimit) .withNonce(account.nonce) .withValue(action.value) @@ -21,7 +25,7 @@ export const toDemoTransaction = (action: ProposalAction, account: AccountType) const tokenTransfer = TokenTransfer.metaEsdtFromBigInteger( payment.tokenId, payment.tokenNonce, - toActionArgsBigNumber(payment.amount), + toActionArgsBigInt(payment.amount), payment.tokenDecimals! ) const isFungible = payment.tokenNonce === 0 @@ -31,7 +35,7 @@ export const toDemoTransaction = (action: ProposalAction, account: AccountType) : interaction.withSingleESDTNFTTransfer(tokenTransfer) } else if (action.payments.length > 1) { const tokenTransfer = action.payments.map((p) => - TokenTransfer.metaEsdtFromBigInteger(p.tokenId, p.tokenNonce, toActionArgsBigNumber(p.amount), p.tokenDecimals!) + TokenTransfer.metaEsdtFromBigInteger(p.tokenId, p.tokenNonce, toActionArgsBigInt(p.amount), p.tokenDecimals!) ) interaction = interaction.withMultiESDTNFTTransfer(tokenTransfer) } diff --git a/package-lock.json b/package-lock.json index 8930998..35f74f7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -22,14 +22,14 @@ "@elrondnetwork/transaction-decoder": "^1.0.0", "@headlessui/react": "^2.0.4", "@multiversx/sdk-core": "^13.2.1", - "@multiversx/sdk-dapp": "2.33.1", + "@multiversx/sdk-dapp": "2.33.2", "@peerme/extensions": "*", - "@peerme/web-ui": "^1.17.0", + "@peerme/web-ui": "^2.0.1", "axios": "^1.7.2", "collect.js": "^4.36.1", "dayjs": "^1.11.11", - "graphql": "^16.8.1", - "next": "14.2.3", + "graphql": "^16.8.2", + "next": "14.2.4", "react": "18.3.1", "react-dom": "18.3.1", "use-clipboard-copy": "^0.2.0" @@ -41,7 +41,7 @@ "@types/react-dom": "18.3.0", "autoprefixer": "^10.4.19", "eslint": "9.4.0", - "eslint-config-next": "14.2.3", + "eslint-config-next": "14.2.4", "postcss": "^8.4.38", "tailwindcss": "^3.4.4", "typescript": "5.4.5" @@ -635,9 +635,9 @@ } }, "node_modules/@eslint/object-schema": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.3.tgz", - "integrity": "sha512-HAbhAYKfsAC2EkTqve00ibWIZlaU74Z1EHwAjYr4PXF0YU2VEA1zSIKSSpKszRLRWwHzzRZXvK632u+uXzvsvw==", + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz", + "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==", "dev": true, "engines": { "node": "^18.18.0 || ^20.9.0 || >=21.1.0" @@ -1266,9 +1266,9 @@ "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" }, "node_modules/@multiversx/sdk-dapp": { - "version": "2.33.1", - "resolved": "https://registry.npmjs.org/@multiversx/sdk-dapp/-/sdk-dapp-2.33.1.tgz", - "integrity": "sha512-Ps1HiBD6OHIzXHhnToIT1wDcBavg2PGElmnuRXRABVEBTmuobIYhEMDzGXTO/vVXMuqFwqu+q8bsKALdiO2gBQ==", + "version": "2.33.2", + "resolved": "https://registry.npmjs.org/@multiversx/sdk-dapp/-/sdk-dapp-2.33.2.tgz", + "integrity": "sha512-iAtDZfOnodBPnq9lUib8hnitnAFy8aaQcjO34KeB27+UNLdOV+4emIO7w2ogjp1YZIXacC6hF15XoqjlFr8veg==", "dependencies": { "@lifeomic/axios-fetch": "3.0.1", "@metamask/providers": "16.0.0", @@ -1379,6 +1379,29 @@ "react": ">=16.3" } }, + "node_modules/@multiversx/sdk-dapp/node_modules/protobufjs": { + "version": "7.2.6", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.6.tgz", + "integrity": "sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==", + "hasInstallScript": true, + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/@multiversx/sdk-extension-provider": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/@multiversx/sdk-extension-provider/-/sdk-extension-provider-3.0.0.tgz", @@ -1650,14 +1673,14 @@ } }, "node_modules/@next/env": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz", - "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA==" + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz", + "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg==" }, "node_modules/@next/eslint-plugin-next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz", - "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz", + "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==", "dev": true, "dependencies": { "glob": "10.3.10" @@ -1728,9 +1751,9 @@ } }, "node_modules/@next/swc-darwin-arm64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz", - "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz", + "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==", "cpu": [ "arm64" ], @@ -1743,9 +1766,9 @@ } }, "node_modules/@next/swc-darwin-x64": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz", - "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz", + "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==", "cpu": [ "x64" ], @@ -1758,9 +1781,9 @@ } }, "node_modules/@next/swc-linux-arm64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz", - "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz", + "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==", "cpu": [ "arm64" ], @@ -1773,9 +1796,9 @@ } }, "node_modules/@next/swc-linux-arm64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz", - "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz", + "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==", "cpu": [ "arm64" ], @@ -1788,9 +1811,9 @@ } }, "node_modules/@next/swc-linux-x64-gnu": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz", - "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz", + "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==", "cpu": [ "x64" ], @@ -1803,9 +1826,9 @@ } }, "node_modules/@next/swc-linux-x64-musl": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz", - "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz", + "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==", "cpu": [ "x64" ], @@ -1818,9 +1841,9 @@ } }, "node_modules/@next/swc-win32-arm64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz", - "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz", + "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==", "cpu": [ "arm64" ], @@ -1833,9 +1856,9 @@ } }, "node_modules/@next/swc-win32-ia32-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz", - "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz", + "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==", "cpu": [ "ia32" ], @@ -1848,9 +1871,9 @@ } }, "node_modules/@next/swc-win32-x64-msvc": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz", - "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz", + "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==", "cpu": [ "x64" ], @@ -2224,9 +2247,9 @@ } }, "node_modules/@peerme/core-ts": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/@peerme/core-ts/-/core-ts-1.27.0.tgz", - "integrity": "sha512-56ZQRYY//lP+JlUoIPWi+ir5d8zM4ufrc8M8PdmlFIkOMOoQEHgxz3hRR8pVysdYKD1ib+b4HNye5jnMWRnuCQ==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/@peerme/core-ts/-/core-ts-2.0.3.tgz", + "integrity": "sha512-PkYyoZNHEn9Boxc9dWOc565aYwYkvXxivZF13rH2vvx3QmIERDAsRQfdgH00zlxlvd6phmT+YQ6bwkW7fGH6sA==", "dependencies": { "@meilisearch/instant-meilisearch": "^0.18.1", "encoding": "^0.1.13", @@ -2237,7 +2260,6 @@ "@fortawesome/free-solid-svg-icons": ">=6.2.1", "@multiversx/sdk-core": ">=12.8.1", "@multiversx/sdk-network-providers": ">=2.0.0", - "bignumber.js": "^9.1.1", "react": ">=18.0.0" } }, @@ -2246,33 +2268,33 @@ "link": true }, "node_modules/@peerme/web-ui": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/@peerme/web-ui/-/web-ui-1.17.0.tgz", - "integrity": "sha512-H7/Fs4tZdBQbeKy3iD4pFc7geBBr66Y4p0gqRx5hXpOYZomKeH2Q7YbO9UXyeb1Mhjhgy2T6uygtDx4l49eKXw==", - "dependencies": { - "@tiptap/extension-character-count": "2.2.2", - "@tiptap/extension-link": "^2.2.2", - "@tiptap/extension-placeholder": "2.2.2", - "@tiptap/extension-typography": "2.2.2", - "@tiptap/pm": "^2.2.2", - "@tiptap/react": "2.2.2", - "@tiptap/starter-kit": "2.2.2", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/@peerme/web-ui/-/web-ui-2.0.1.tgz", + "integrity": "sha512-cd38Z7Ie00HGcm1FX4wjqUmU9z4j4nUppntyTkFY+e/71ivZLfi2stwZNAS+4wDd8lt0dlCCfz3oSrNzgBz51g==", + "dependencies": { + "@tiptap/extension-character-count": "2.4.0", + "@tiptap/extension-image": "^2.4.0", + "@tiptap/extension-link": "^2.4.0", + "@tiptap/extension-placeholder": "2.4.0", + "@tiptap/extension-typography": "2.4.0", + "@tiptap/pm": "^2.4.0", + "@tiptap/react": "2.4.0", + "@tiptap/starter-kit": "2.4.0", "platform": "^1.3.6", "react-dropzone": "^14.2.3", "react-paginate": "^8.2.0", "react-slider": "^2.0.6", - "react-toastify": "^10.0.4", - "react-tooltip": "^5.26.0" + "react-toastify": "^10.0.5", + "react-tooltip": "^5.26.4" }, "peerDependencies": { "@elrondnetwork/transaction-decoder": ">=1.0.0", - "@formkit/auto-animate": ">=1.0.0-beta.5", "@fortawesome/fontawesome-svg-core": ">=6.1.1", "@fortawesome/free-solid-svg-icons": ">=6.1.1", "@fortawesome/react-fontawesome": ">=0.2.0", "@headlessui/react": ">=2.0.0-alpha.4", - "@multiversx/sdk-core": ">=12.2.1", - "@multiversx/sdk-network-providers": ">=1.4.0", + "@multiversx/sdk-core": ">=13.2.1", + "@multiversx/sdk-network-providers": ">=2.4.3", "@peerme/core-ts": "*", "clsx": "^2.1.0", "collect.js": ">=4.34.3", @@ -3084,9 +3106,9 @@ } }, "node_modules/@tiptap/extension-character-count": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.2.2.tgz", - "integrity": "sha512-aObDoKXxVEi3sLaJFfaFLtKMH6e3zgKCkPhXOROUsrdapmvn/ubTuEXdVjiV9YZ7U6t57IYjlXV/jiVwDSgIjA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.4.0.tgz", + "integrity": "sha512-IA3Fubvag5N/7m2xS/T8D1nH26UyebBL9CtZ3/4de4faKgvDQLlILsSI2Hefi7j7rUCYCYzgF2S0Gny+Z76ulw==", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -3225,6 +3247,18 @@ "@tiptap/pm": "^2.0.0" } }, + "node_modules/@tiptap/extension-image": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.4.0.tgz", + "integrity": "sha512-NIVhRPMO/ONo8OywEd+8zh0Q6Q7EbFHtBxVsvfOKj9KtZkaXQfUO4MzONTyptkvAchTpj9pIzeaEY5fyU87gFA==", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.0.0" + } + }, "node_modules/@tiptap/extension-italic": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.4.0.tgz", @@ -3295,9 +3329,9 @@ } }, "node_modules/@tiptap/extension-placeholder": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.2.2.tgz", - "integrity": "sha512-dPN15nVu+HlONJSCiKjEl9n5/61CltTLSefhyRVQJeE7lmtMUGrsErUdOYMxGskehDQWIQW1VM0OiF63ln/3sA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.4.0.tgz", + "integrity": "sha512-SmWOjgWpmhFt0BPOnL65abCUH0wS5yksUJgtANn5bQoHF4HFSsyl7ETRmgf0ykxdjc7tzOg31FfpWVH4wzKSYg==", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -3332,9 +3366,9 @@ } }, "node_modules/@tiptap/extension-typography": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tiptap/extension-typography/-/extension-typography-2.2.2.tgz", - "integrity": "sha512-mMK/VZQhwes/8HK5qoNbcgfBcNLorL+bZcISCmqHdXfhW6npJuuuzXBbfF3/dJr6pjdPO+qAVyrYkiCm1rr5Ow==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/extension-typography/-/extension-typography-2.4.0.tgz", + "integrity": "sha512-RuGenfdPA6ggu5IVLdcIdhGCdRlwSvWp0lETySM3PILE6fxCrxTD54m3pxpY0Q1cg+F71YDUHdSmSipQTwQnsQ==", "funding": { "type": "github", "url": "https://github.com/sponsors/ueberdosis" @@ -3373,12 +3407,12 @@ } }, "node_modules/@tiptap/react": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tiptap/react/-/react-2.2.2.tgz", - "integrity": "sha512-9jRaY7Clrtb23itFyTGgLEo5SO0shR/kxlFN3G6Wyda6S6SduY9ERX93ffRdvzbJKcbEptcko0KqUZ/MD0eDnA==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/react/-/react-2.4.0.tgz", + "integrity": "sha512-baxnIr6Dy+5iGagOEIKFeHzdl1ZRa6Cg+SJ3GDL/BVLpO6KiCM3Mm5ymB726UKP1w7icrBiQD2fGY3Bx8KaiSA==", "dependencies": { - "@tiptap/extension-bubble-menu": "^2.2.2", - "@tiptap/extension-floating-menu": "^2.2.2" + "@tiptap/extension-bubble-menu": "^2.4.0", + "@tiptap/extension-floating-menu": "^2.4.0" }, "funding": { "type": "github", @@ -3392,29 +3426,29 @@ } }, "node_modules/@tiptap/starter-kit": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-2.2.2.tgz", - "integrity": "sha512-J8nbrVBggGJwO7CPEwdUqG6Q8btiQJjjnYWZEs+ImM9GMUfXJ8lyaGT0My3wDvTeq537N9BjTEcQ88pMtOqbOw==", - "dependencies": { - "@tiptap/core": "^2.2.2", - "@tiptap/extension-blockquote": "^2.2.2", - "@tiptap/extension-bold": "^2.2.2", - "@tiptap/extension-bullet-list": "^2.2.2", - "@tiptap/extension-code": "^2.2.2", - "@tiptap/extension-code-block": "^2.2.2", - "@tiptap/extension-document": "^2.2.2", - "@tiptap/extension-dropcursor": "^2.2.2", - "@tiptap/extension-gapcursor": "^2.2.2", - "@tiptap/extension-hard-break": "^2.2.2", - "@tiptap/extension-heading": "^2.2.2", - "@tiptap/extension-history": "^2.2.2", - "@tiptap/extension-horizontal-rule": "^2.2.2", - "@tiptap/extension-italic": "^2.2.2", - "@tiptap/extension-list-item": "^2.2.2", - "@tiptap/extension-ordered-list": "^2.2.2", - "@tiptap/extension-paragraph": "^2.2.2", - "@tiptap/extension-strike": "^2.2.2", - "@tiptap/extension-text": "^2.2.2" + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-2.4.0.tgz", + "integrity": "sha512-DYYzMZdTEnRn9oZhKOeRCcB+TjhNz5icLlvJKoHoOGL9kCbuUyEf8WRR2OSPckI0+KUIPJL3oHRqO4SqSdTjfg==", + "dependencies": { + "@tiptap/core": "^2.4.0", + "@tiptap/extension-blockquote": "^2.4.0", + "@tiptap/extension-bold": "^2.4.0", + "@tiptap/extension-bullet-list": "^2.4.0", + "@tiptap/extension-code": "^2.4.0", + "@tiptap/extension-code-block": "^2.4.0", + "@tiptap/extension-document": "^2.4.0", + "@tiptap/extension-dropcursor": "^2.4.0", + "@tiptap/extension-gapcursor": "^2.4.0", + "@tiptap/extension-hard-break": "^2.4.0", + "@tiptap/extension-heading": "^2.4.0", + "@tiptap/extension-history": "^2.4.0", + "@tiptap/extension-horizontal-rule": "^2.4.0", + "@tiptap/extension-italic": "^2.4.0", + "@tiptap/extension-list-item": "^2.4.0", + "@tiptap/extension-ordered-list": "^2.4.0", + "@tiptap/extension-paragraph": "^2.4.0", + "@tiptap/extension-strike": "^2.4.0", + "@tiptap/extension-text": "^2.4.0" }, "funding": { "type": "github", @@ -3438,6 +3472,28 @@ "@types/ms": "*" } }, + "node_modules/@types/eslint": { + "version": "8.56.10", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz", + "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==", + "dev": true, + "peer": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.7", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz", + "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, "node_modules/@types/estree": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", @@ -3588,34 +3644,6 @@ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==" }, - "node_modules/@typescript-eslint/parser": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.2.0.tgz", - "integrity": "sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==", - "dev": true, - "dependencies": { - "@typescript-eslint/scope-manager": "7.2.0", - "@typescript-eslint/types": "7.2.0", - "@typescript-eslint/typescript-estree": "7.2.0", - "@typescript-eslint/visitor-keys": "7.2.0", - "debug": "^4.3.4" - }, - "engines": { - "node": "^16.0.0 || >=18.0.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/typescript-eslint" - }, - "peerDependencies": { - "eslint": "^8.56.0" - }, - "peerDependenciesMeta": { - "typescript": { - "optional": true - } - } - }, "node_modules/@typescript-eslint/scope-manager": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-7.2.0.tgz", @@ -3763,6 +3791,24 @@ "uint8arrays": "^3.1.0" } }, + "node_modules/@walletconnect/core/node_modules/@walletconnect/keyvaluestorage": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz", + "integrity": "sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==", + "dependencies": { + "@walletconnect/safe-json": "^1.0.1", + "idb-keyval": "^6.2.1", + "unstorage": "^1.9.0" + }, + "peerDependencies": { + "@react-native-async-storage/async-storage": "1.x" + }, + "peerDependenciesMeta": { + "@react-native-async-storage/async-storage": { + "optional": true + } + } + }, "node_modules/@walletconnect/environment": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@walletconnect/environment/-/environment-1.0.1.tgz", @@ -3860,24 +3906,6 @@ "ws": "^7.5.1" } }, - "node_modules/@walletconnect/keyvaluestorage": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz", - "integrity": "sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==", - "dependencies": { - "@walletconnect/safe-json": "^1.0.1", - "idb-keyval": "^6.2.1", - "unstorage": "^1.9.0" - }, - "peerDependencies": { - "@react-native-async-storage/async-storage": "1.x" - }, - "peerDependenciesMeta": { - "@react-native-async-storage/async-storage": { - "optional": true - } - } - }, "node_modules/@walletconnect/logger": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/@walletconnect/logger/-/logger-2.1.2.tgz", @@ -3968,6 +3996,24 @@ "events": "^3.3.0" } }, + "node_modules/@walletconnect/types/node_modules/@walletconnect/keyvaluestorage": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@walletconnect/keyvaluestorage/-/keyvaluestorage-1.1.1.tgz", + "integrity": "sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==", + "dependencies": { + "@walletconnect/safe-json": "^1.0.1", + "idb-keyval": "^6.2.1", + "unstorage": "^1.9.0" + }, + "peerDependencies": { + "@react-native-async-storage/async-storage": "1.x" + }, + "peerDependenciesMeta": { + "@react-native-async-storage/async-storage": { + "optional": true + } + } + }, "node_modules/@walletconnect/utils": { "version": "2.12.2", "resolved": "https://registry.npmjs.org/@walletconnect/utils/-/utils-2.12.2.tgz", @@ -4016,6 +4062,167 @@ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, + "node_modules/@webassemblyjs/ast": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz", + "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz", + "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz", + "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz", + "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz", + "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.6", + "@webassemblyjs/helper-api-error": "1.11.6", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz", + "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz", + "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/wasm-gen": "1.12.1" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz", + "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz", + "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==", + "dev": true, + "peer": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.6", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz", + "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==", + "dev": true, + "peer": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz", + "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/helper-wasm-section": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-opt": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1", + "@webassemblyjs/wast-printer": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz", + "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz", + "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-buffer": "1.12.1", + "@webassemblyjs/wasm-gen": "1.12.1", + "@webassemblyjs/wasm-parser": "1.12.1" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz", + "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@webassemblyjs/helper-api-error": "1.11.6", + "@webassemblyjs/helper-wasm-bytecode": "1.11.6", + "@webassemblyjs/ieee754": "1.11.6", + "@webassemblyjs/leb128": "1.11.6", + "@webassemblyjs/utf8": "1.11.6" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.12.1", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz", + "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==", + "dev": true, + "peer": true, + "dependencies": { + "@webassemblyjs/ast": "1.12.1", + "@xtuc/long": "4.2.2" + } + }, "node_modules/@wry/caches": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/@wry/caches/-/caches-1.0.1.tgz", @@ -4060,6 +4267,20 @@ "node": ">=8" } }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true, + "peer": true + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", + "dev": true, + "peer": true + }, "node_modules/abstract-leveldown": { "version": "0.12.4", "resolved": "https://registry.npmjs.org/abstract-leveldown/-/abstract-leveldown-0.12.4.tgz", @@ -4089,6 +4310,16 @@ "node": ">=0.4.0" } }, + "node_modules/acorn-import-attributes": { + "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", + "dev": true, + "peer": true, + "peerDependencies": { + "acorn": "^8" + } + }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -4154,15 +4385,13 @@ "dev": true }, "node_modules/ajv-keywords": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", - "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, - "dependencies": { - "fast-deep-equal": "^3.1.3" - }, + "peer": true, "peerDependencies": { - "ajv": "^8.8.2" + "ajv": "^6.9.1" } }, "node_modules/ansi-regex": { @@ -4599,12 +4828,6 @@ "readable-stream": "~1.0.26" } }, - "node_modules/bl/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, "node_modules/bl/node_modules/readable-stream": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", @@ -4886,6 +5109,16 @@ "node": ">= 6" } }, + "node_modules/chrome-trace-event": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz", + "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.0" + } + }, "node_modules/ci-info": { "version": "3.9.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", @@ -5769,9 +6002,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.796", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.796.tgz", - "integrity": "sha512-NglN/xprcM+SHD2XCli4oC6bWe6kHoytcyLKCWXmRL854F0qhPhaYgUswUsglnPxYaNQIg2uMY4BvaomIf3kLA==", + "version": "1.4.799", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.799.tgz", + "integrity": "sha512-3D3DwWkRTzrdEpntY0hMLYwj7SeBk1138CkPE8sBDSj3WzrzOiG2rHm3luw8jucpf+WiyLBCZyU9lMHyQI9M9Q==", "dev": true }, "node_modules/emoji-regex": { @@ -5982,6 +6215,13 @@ "node": ">= 0.4" } }, + "node_modules/es-module-lexer": { + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.3.tgz", + "integrity": "sha512-i1gCgmR9dCl6Vil6UKPI/trA69s08g/syhiDK9TG0Nf1RJjjFI+AzoWW7sPufzkgYAn861skuCwJa0pIIHYxvg==", + "dev": true, + "peer": true + }, "node_modules/es-object-atoms": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", @@ -6106,12 +6346,12 @@ } }, "node_modules/eslint-config-next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz", - "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz", + "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==", "dev": true, "dependencies": { - "@next/eslint-plugin-next": "14.2.3", + "@next/eslint-plugin-next": "14.2.4", "@rushstack/eslint-patch": "^1.3.3", "@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0", "eslint-import-resolver-node": "^0.3.6", @@ -6131,39 +6371,35 @@ } } }, - "node_modules/eslint-config-turbo": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.3.tgz", - "integrity": "sha512-D1+lNOpTFEuAgPWJfRHXHjzvAfO+0TVmORfftmYQNw+uk2UIBjhelhwERBceYFy2oFJnckHsqt69dp/zIM6/0g==", + "node_modules/eslint-config-next/node_modules/@typescript-eslint/parser": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-7.2.0.tgz", + "integrity": "sha512-5FKsVcHTk6TafQKQbuIVkXq58Fnbkd2wDL4LB7AURN7RUOu1utVP+G8+6u3ZhEroW3DF6hyo3ZEXxgKgp4KeCg==", "dev": true, "dependencies": { - "eslint-plugin-turbo": "2.0.3" + "@typescript-eslint/scope-manager": "7.2.0", + "@typescript-eslint/types": "7.2.0", + "@typescript-eslint/typescript-estree": "7.2.0", + "@typescript-eslint/visitor-keys": "7.2.0", + "debug": "^4.3.4" + }, + "engines": { + "node": "^16.0.0 || >=18.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/typescript-eslint" }, "peerDependencies": { - "eslint": ">6.6.0" - } - }, - "node_modules/eslint-import-resolver-node": { - "version": "0.3.9", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", - "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", - "dev": true, - "dependencies": { - "debug": "^3.2.7", - "is-core-module": "^2.13.0", - "resolve": "^1.22.4" - } - }, - "node_modules/eslint-import-resolver-node/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" + "eslint": "^8.56.0" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } } }, - "node_modules/eslint-import-resolver-typescript": { + "node_modules/eslint-config-next/node_modules/eslint-import-resolver-typescript": { "version": "3.6.1", "resolved": "https://registry.npmjs.org/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-3.6.1.tgz", "integrity": "sha512-xgdptdoi5W3niYeuQxKmzVDTATvLYqhpwmykwsh7f6HIOStGWEIL9iqZgQDF9u9OEzrRwR8no5q2VT+bjAujTg==", @@ -6188,33 +6424,7 @@ "eslint-plugin-import": "*" } }, - "node_modules/eslint-module-utils": { - "version": "2.8.1", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", - "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", - "dev": true, - "dependencies": { - "debug": "^3.2.7" - }, - "engines": { - "node": ">=4" - }, - "peerDependenciesMeta": { - "eslint": { - "optional": true - } - } - }, - "node_modules/eslint-module-utils/node_modules/debug": { - "version": "3.2.7", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", - "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", - "dev": true, - "dependencies": { - "ms": "^2.1.1" - } - }, - "node_modules/eslint-plugin-import": { + "node_modules/eslint-config-next/node_modules/eslint-plugin-import": { "version": "2.29.1", "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.29.1.tgz", "integrity": "sha512-BbPC0cuExzhiMo4Ff1BTVwHpjjv28C5R+btTOGaCRC7UEz801up0JadwkeSk5Ued6TG34uaczuVuH6qyy5YUxw==", @@ -6245,7 +6455,7 @@ "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8" } }, - "node_modules/eslint-plugin-import/node_modules/debug": { + "node_modules/eslint-config-next/node_modules/eslint-plugin-import/node_modules/debug": { "version": "3.2.7", "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", @@ -6254,7 +6464,7 @@ "ms": "^2.1.1" } }, - "node_modules/eslint-plugin-jsx-a11y": { + "node_modules/eslint-config-next/node_modules/eslint-plugin-jsx-a11y": { "version": "6.8.0", "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.8.0.tgz", "integrity": "sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==", @@ -6284,7 +6494,7 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/eslint-plugin-react": { + "node_modules/eslint-config-next/node_modules/eslint-plugin-react": { "version": "7.34.2", "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.34.2.tgz", "integrity": "sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==", @@ -6316,7 +6526,7 @@ "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, - "node_modules/eslint-plugin-react-hooks": { + "node_modules/eslint-config-next/node_modules/eslint-plugin-react-hooks": { "version": "4.6.2", "resolved": "https://registry.npmjs.org/eslint-plugin-react-hooks/-/eslint-plugin-react-hooks-4.6.2.tgz", "integrity": "sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==", @@ -6328,21 +6538,79 @@ "eslint": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0" } }, - "node_modules/eslint-plugin-react/node_modules/resolve": { - "version": "2.0.0-next.5", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", - "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "node_modules/eslint-config-next/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-config-turbo": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/eslint-config-turbo/-/eslint-config-turbo-2.0.3.tgz", + "integrity": "sha512-D1+lNOpTFEuAgPWJfRHXHjzvAfO+0TVmORfftmYQNw+uk2UIBjhelhwERBceYFy2oFJnckHsqt69dp/zIM6/0g==", + "dev": true, + "dependencies": { + "eslint-plugin-turbo": "2.0.3" + }, + "peerDependencies": { + "eslint": ">6.6.0" + } + }, + "node_modules/eslint-import-resolver-node": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz", + "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==", + "dev": true, + "dependencies": { + "debug": "^3.2.7", + "is-core-module": "^2.13.0", + "resolve": "^1.22.4" + } + }, + "node_modules/eslint-import-resolver-node/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.8.1.tgz", + "integrity": "sha512-rXDXR3h7cs7dy9RNpUlQf80nX31XWJEyGq1tRMo+6GsO5VmTe4UTwtmonAD4ZkAsrfMVDA2wlGJ3790Ys+D49Q==", + "dev": true, + "dependencies": { + "debug": "^3.2.7" + }, + "engines": { + "node": ">=4" + }, + "peerDependenciesMeta": { + "eslint": { + "optional": true + } + } + }, + "node_modules/eslint-module-utils/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, "dependencies": { - "is-core-module": "^2.13.0", - "path-parse": "^1.0.7", - "supports-preserve-symlinks-flag": "^1.0.0" - }, - "bin": { - "resolve": "bin/resolve" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" + "ms": "^2.1.1" } }, "node_modules/eslint-plugin-turbo": { @@ -6730,9 +6998,9 @@ "dev": true }, "node_modules/foreground-child": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz", - "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz", + "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==", "dev": true, "dependencies": { "cross-spawn": "^7.0.0", @@ -6847,12 +7115,6 @@ "readable-stream": "~1.0.26-4" } }, - "node_modules/fwd-stream/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, "node_modules/fwd-stream/node_modules/readable-stream": { "version": "1.0.34", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", @@ -6995,6 +7257,13 @@ "node": ">=10.13.0" } }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true, + "peer": true + }, "node_modules/glob/node_modules/brace-expansion": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", @@ -7084,9 +7353,9 @@ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/graphql": { - "version": "16.8.1", - "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.1.tgz", - "integrity": "sha512-59LZHPdGZVh695Ud9lRzPBVTtlX9ZCV150Er2W43ro37wVof0ctenSaskPPjN7lVTIN8mSZt8PHUNKZuNQUuxw==", + "version": "16.8.2", + "resolved": "https://registry.npmjs.org/graphql/-/graphql-16.8.2.tgz", + "integrity": "sha512-cvVIBILwuoSyD54U4cF/UXDh5yAobhNV/tPygI4lZhgOIJQE/WLWC4waBRb4I6bDVYb3OVx3lfHbaQOEoUD5sg==", "engines": { "node": "^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0" } @@ -7900,9 +8169,9 @@ } }, "node_modules/isarray": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", - "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", "dev": true }, "node_modules/isbuffer": { @@ -8042,9 +8311,9 @@ } }, "node_modules/jiti": { - "version": "1.21.3", - "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.3.tgz", - "integrity": "sha512-uy2bNX5zQ+tESe+TiC7ilGRz8AtRGmnJH55NC5S0nSUjvvvM2hJHmefHErugGXN4pNv4Qx7vLsnNw9qJ9mtIsw==", + "version": "1.21.6", + "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.21.6.tgz", + "integrity": "sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==", "bin": { "jiti": "bin/jiti.js" } @@ -8100,6 +8369,13 @@ "backslash": "^0.2.0" } }, + "node_modules/json-parse-even-better-errors": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", + "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", + "dev": true, + "peer": true + }, "node_modules/json-schema-traverse": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", @@ -8208,12 +8484,6 @@ "readable-stream": "^1.0.26-4" } }, - "node_modules/level-blobs/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, "node_modules/level-blobs/node_modules/readable-stream": { "version": "1.1.14", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", @@ -8366,12 +8636,6 @@ "xtend": "~3.0.0" } }, - "node_modules/levelup/node_modules/isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==", - "dev": true - }, "node_modules/levelup/node_modules/prr": { "version": "0.0.0", "resolved": "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz", @@ -8493,6 +8757,16 @@ "listhen": "bin/listhen.mjs" } }, + "node_modules/loader-runner": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz", + "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==", + "dev": true, + "peer": true, + "engines": { + "node": ">=6.11.5" + } + }, "node_modules/loader-utils": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-3.3.1.tgz", @@ -8848,12 +9122,19 @@ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true, + "peer": true + }, "node_modules/next": { - "version": "14.2.3", - "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz", - "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==", + "version": "14.2.4", + "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz", + "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==", "dependencies": { - "@next/env": "14.2.3", + "@next/env": "14.2.4", "@swc/helpers": "0.5.5", "busboy": "1.6.0", "caniuse-lite": "^1.0.30001579", @@ -8868,15 +9149,15 @@ "node": ">=18.17.0" }, "optionalDependencies": { - "@next/swc-darwin-arm64": "14.2.3", - "@next/swc-darwin-x64": "14.2.3", - "@next/swc-linux-arm64-gnu": "14.2.3", - "@next/swc-linux-arm64-musl": "14.2.3", - "@next/swc-linux-x64-gnu": "14.2.3", - "@next/swc-linux-x64-musl": "14.2.3", - "@next/swc-win32-arm64-msvc": "14.2.3", - "@next/swc-win32-ia32-msvc": "14.2.3", - "@next/swc-win32-x64-msvc": "14.2.3" + "@next/swc-darwin-arm64": "14.2.4", + "@next/swc-darwin-x64": "14.2.4", + "@next/swc-linux-arm64-gnu": "14.2.4", + "@next/swc-linux-arm64-musl": "14.2.4", + "@next/swc-linux-x64-gnu": "14.2.4", + "@next/swc-linux-x64-musl": "14.2.4", + "@next/swc-win32-arm64-msvc": "14.2.4", + "@next/swc-win32-ia32-msvc": "14.2.4", + "@next/swc-win32-x64-msvc": "14.2.4" }, "peerDependencies": { "@opentelemetry/api": "^1.1.0", @@ -10515,9 +10796,9 @@ } }, "node_modules/prosemirror-view": { - "version": "1.33.7", - "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.33.7.tgz", - "integrity": "sha512-jo6eMQCtPRwcrA2jISBCnm0Dd2B+szS08BU1Ay+XGiozHo5EZMHfLQE8R5nO4vb1spTH2RW1woZIYXRiQsuP8g==", + "version": "1.33.8", + "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.33.8.tgz", + "integrity": "sha512-4PhMr/ufz2cdvFgpUAnZfs+0xij3RsFysreeG9V/utpwX7AJtYCDVyuRxzWoMJIEf4C7wVihuBNMPpFLPCiLQw==", "dependencies": { "prosemirror-model": "^1.20.0", "prosemirror-state": "^1.0.0", @@ -10525,10 +10806,11 @@ } }, "node_modules/protobufjs": { - "version": "7.2.6", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.6.tgz", - "integrity": "sha512-dgJaEDDL6x8ASUZ1YqWciTRrdOuYNzoOf27oHNfdyvKqHr5i0FV7FSLU+aIeFjyFgVxrpTOtQUi0BLLBymZaBw==", + "version": "7.3.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.3.2.tgz", + "integrity": "sha512-RXyHaACeqXeqAKGLDl68rQKbmObRsTIn4TYVUUug1KfS47YWCo5MacGITEryugIgZqORCvJWEk4l449POg5Txg==", "hasInstallScript": true, + "peer": true, "dependencies": { "@protobufjs/aspromise": "^1.1.2", "@protobufjs/base64": "^1.1.2", @@ -11042,37 +11324,18 @@ } }, "node_modules/rollup": { - "version": "4.18.0", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", - "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "version": "2.79.1", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.79.1.tgz", + "integrity": "sha512-uKxbd0IhMZOhjAiD5oAFp7BqvkA4Dv47qpOCtaNvng4HBwdbWtdOh8f5nZNuk2rp51PMGk3bzfWu5oayNEuYnw==", "dev": true, - "dependencies": { - "@types/estree": "1.0.5" - }, + "peer": true, "bin": { "rollup": "dist/bin/rollup" }, "engines": { - "node": ">=18.0.0", - "npm": ">=8.0.0" + "node": ">=10.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.0", - "@rollup/rollup-android-arm64": "4.18.0", - "@rollup/rollup-darwin-arm64": "4.18.0", - "@rollup/rollup-darwin-x64": "4.18.0", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", - "@rollup/rollup-linux-arm-musleabihf": "4.18.0", - "@rollup/rollup-linux-arm64-gnu": "4.18.0", - "@rollup/rollup-linux-arm64-musl": "4.18.0", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", - "@rollup/rollup-linux-riscv64-gnu": "4.18.0", - "@rollup/rollup-linux-s390x-gnu": "4.18.0", - "@rollup/rollup-linux-x64-gnu": "4.18.0", - "@rollup/rollup-linux-x64-musl": "4.18.0", - "@rollup/rollup-win32-arm64-msvc": "4.18.0", - "@rollup/rollup-win32-ia32-msvc": "4.18.0", - "@rollup/rollup-win32-x64-msvc": "4.18.0", "fsevents": "~2.3.2" } }, @@ -11328,6 +11591,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/safe-array-concat/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -11426,6 +11695,18 @@ "url": "https://github.com/sponsors/epoberezkin" } }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-5.1.0.tgz", + "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.3" + }, + "peerDependencies": { + "ajv": "^8.8.2" + } + }, "node_modules/schema-utils/node_modules/json-schema-traverse": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", @@ -12233,6 +12514,101 @@ "node": ">=10" } }, + "node_modules/terser-webpack-plugin": { + "version": "5.3.10", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz", + "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==", + "dev": true, + "peer": true, + "dependencies": { + "@jridgewell/trace-mapping": "^0.3.20", + "jest-worker": "^27.4.5", + "schema-utils": "^3.1.1", + "serialize-javascript": "^6.0.1", + "terser": "^5.26.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "esbuild": { + "optional": true + }, + "uglify-js": { + "optional": true + } + } + }, + "node_modules/terser-webpack-plugin/node_modules/jest-worker": { + "version": "27.5.1", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz", + "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz", + "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==", + "dev": true, + "peer": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/terser-webpack-plugin/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "peer": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, "node_modules/terser/node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -12823,6 +13199,20 @@ "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==" }, + "node_modules/watchpack": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.1.tgz", + "integrity": "sha512-8wrBCMtVhqcXP2Sup1ctSkga6uc2Bx0IIvKyT7yTFier5AXHooSI+QyQQAtTb7+E0IUCCKyTFmXqdqgum2XWGg==", + "dev": true, + "peer": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/webextension-polyfill": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/webextension-polyfill/-/webextension-polyfill-0.10.0.tgz", @@ -12833,6 +13223,107 @@ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==" }, + "node_modules/webpack": { + "version": "5.92.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.92.0.tgz", + "integrity": "sha512-Bsw2X39MYIgxouNATyVpCNVWBCuUwDgWtN78g6lSdPJRLaQ/PUVm/oXcaRAyY/sMFoKFQrsPeqvTizWtq7QPCA==", + "dev": true, + "peer": true, + "dependencies": { + "@types/eslint-scope": "^3.7.3", + "@types/estree": "^1.0.5", + "@webassemblyjs/ast": "^1.12.1", + "@webassemblyjs/wasm-edit": "^1.12.1", + "@webassemblyjs/wasm-parser": "^1.12.1", + "acorn": "^8.7.1", + "acorn-import-attributes": "^1.9.5", + "browserslist": "^4.21.10", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.17.0", + "es-module-lexer": "^1.2.1", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.11", + "json-parse-even-better-errors": "^2.3.1", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.2.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.3.10", + "watchpack": "^2.4.1", + "webpack-sources": "^3.2.3" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-sources": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz", + "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==", + "dev": true, + "peer": true, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dev": true, + "peer": true, + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/webpack/node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "dev": true, + "peer": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/webpack/node_modules/schema-utils": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", + "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==", + "dev": true, + "peer": true, + "dependencies": { + "@types/json-schema": "^7.0.8", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, "node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", @@ -12898,6 +13389,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, "node_modules/which-collection": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz", @@ -13241,7 +13738,7 @@ }, "src": { "name": "@peerme/extensions", - "version": "1.13.2", + "version": "2.0.4", "dependencies": { "@ashswap/ash-sdk-js": "^2.0.11" }, @@ -13255,7 +13752,7 @@ "@headlessui/react": "^2.0.4", "@multiversx/sdk-core": "13.2.1", "@multiversx/sdk-network-providers": "^2.4.3", - "@peerme/core-ts": ">=1.27.0", + "@peerme/core-ts": ">=2.0.2", "@peerme/web-ui": "*", "@rollup/plugin-commonjs": "^26.0.1", "@rollup/plugin-image": "^3.0.3", @@ -13268,7 +13765,7 @@ "babel-loader": "^9.1.3", "browserify-fs": "^1.0.0", "collect.js": "^4.36.1", - "next": "^14.2.3", + "next": "^14.2.4", "postcss": "^8.4.38", "react": "^18.3.1", "react-dom": "^18.3.1", @@ -13288,8 +13785,8 @@ "@headlessui/react": ">=1.7.15", "@multiversx/sdk-core": ">=12.0.1", "@multiversx/sdk-network-providers": ">=1.3.0", - "@peerme/core-ts": ">=1.18.10", - "@peerme/web-ui": ">=1.15.0", + "@peerme/core-ts": ">=2.0.3", + "@peerme/web-ui": ">=2.0.1", "axios": "^1.3.4", "clsx": "^2.0.0", "collect.js": "^4.36.1", @@ -13299,6 +13796,41 @@ "react": ">=18.2.0", "react-dom": ">=18.2.0" } + }, + "src/node_modules/rollup": { + "version": "4.18.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.0.tgz", + "integrity": "sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==", + "dev": true, + "dependencies": { + "@types/estree": "1.0.5" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.18.0", + "@rollup/rollup-android-arm64": "4.18.0", + "@rollup/rollup-darwin-arm64": "4.18.0", + "@rollup/rollup-darwin-x64": "4.18.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.18.0", + "@rollup/rollup-linux-arm-musleabihf": "4.18.0", + "@rollup/rollup-linux-arm64-gnu": "4.18.0", + "@rollup/rollup-linux-arm64-musl": "4.18.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.18.0", + "@rollup/rollup-linux-riscv64-gnu": "4.18.0", + "@rollup/rollup-linux-s390x-gnu": "4.18.0", + "@rollup/rollup-linux-x64-gnu": "4.18.0", + "@rollup/rollup-linux-x64-musl": "4.18.0", + "@rollup/rollup-win32-arm64-msvc": "4.18.0", + "@rollup/rollup-win32-ia32-msvc": "4.18.0", + "@rollup/rollup-win32-x64-msvc": "4.18.0", + "fsevents": "~2.3.2" + } } } } diff --git a/src/config.ts b/src/config.ts index 8075669..945c49c 100644 --- a/src/config.ts +++ b/src/config.ts @@ -1,5 +1,5 @@ import { ExtensionConfig, ExtensionInfo } from './shared/types' -import { DaoExtension } from './extensions/entity/register' +import { EntityExtension } from './extensions/entity/register' import { XBulkExtension } from './extensions/xbulk/register' import { HatomExtension } from './extensions/hatom/register' import { ItheumExtension } from './extensions/itheum/register' @@ -15,7 +15,7 @@ import { PulsarMoneyExtension } from './extensions/pulsarmoney/register' export const Config = (config: ExtensionConfig) => ({ Extensions: [ // Register at the end of the list - DaoExtension(config), + EntityExtension(config), StakingExtension(config), XExchangeExtension(config), CoindripExtension(config), diff --git a/src/extensions/_template/src/contracts.tsx b/src/extensions/_template/src/contracts.tsx index feda24b..482931a 100644 --- a/src/extensions/_template/src/contracts.tsx +++ b/src/extensions/_template/src/contracts.tsx @@ -1,6 +1,6 @@ -import { Network, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' +import { AppEnv, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' -const getContractAddress = (network: Network) => { +const getContractAddress = (network: AppEnv) => { if (network === 'devnet') return '#' if (network === 'testnet') return '#' return '#' @@ -8,7 +8,7 @@ const getContractAddress = (network: Network) => { export const Contracts = (config: ExtensionConfig): ExtensionScInfo => ({ YourCustomScEndpoint: { - Address: getContractAddress(config.network), + Address: getContractAddress(config.network.env), Endpoint: 'yourCustomScEndpoint', }, }) diff --git a/src/extensions/artcpaclub/src/config.ts b/src/extensions/artcpaclub/src/config.ts index a55d530..f954501 100644 --- a/src/extensions/artcpaclub/src/config.ts +++ b/src/extensions/artcpaclub/src/config.ts @@ -1,12 +1,12 @@ -import { Network } from '../../../shared/types' +import { AppEnv } from '../../../shared/types' export const Config = { - ApiBaseUrl: (network: Network) => { + ApiBaseUrl: (network: AppEnv) => { if (network === 'devnet') return 'https://devnet-api.artcpaclub.com/api' return 'https://api.artcpaclub.com/api' }, - MarketplaceUrl: (network: Network) => { + MarketplaceUrl: (network: AppEnv) => { if (network === 'devnet') return 'https://devnet-marketplace.artcpaclub.com' return 'https://marketplace.artcpaclub.com' }, diff --git a/src/extensions/artcpaclub/src/contracts.tsx b/src/extensions/artcpaclub/src/contracts.tsx index 70a4ebb..1a39e15 100644 --- a/src/extensions/artcpaclub/src/contracts.tsx +++ b/src/extensions/artcpaclub/src/contracts.tsx @@ -4,15 +4,15 @@ import { ProposalAction } from '@peerme/core-ts' import { StakeActionPreview } from './previews/StakeActionPreview' import { ClaimActionPreview } from './previews/ClaimActionPreview' import { UnstakeActionPreview } from './previews/UnstakeActionPreview' -import { Network, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' +import { AppEnv, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' -const getEsdtPoolContractAddress = (network: Network) => { +const getEsdtPoolContractAddress = (network: AppEnv) => { if (network === 'devnet') return 'erd1qqqqqqqqqqqqqpgqagtkct3gswr62z3p2qdqlf5l2ukseu2ql3tsjl02gh' if (network === 'testnet') return '#' return 'erd1qqqqqqqqqqqqqpgqj8exjpz38agu78sxh5rlxcp2kmxy35m6kqysscypf3' } -const getNftPoolContractAddress = (network: Network) => { +const getNftPoolContractAddress = (network: AppEnv) => { if (network === 'devnet') return 'erd1qqqqqqqqqqqqqpgqzfk3v0rvwuucjh9xg4zjt6y3jdm4g569l3tsjfey97' if (network === 'testnet') return '#' return 'erd1qqqqqqqqqqqqqpgqfken0exk7jpr85dx6f8ym3jgcagesfcqkqys0xnquf' @@ -20,42 +20,42 @@ const getNftPoolContractAddress = (network: Network) => { export const Contracts = (config: ExtensionConfig): ExtensionScInfo => ({ EsdtUserStake: { - Address: getEsdtPoolContractAddress(config.network), + Address: getEsdtPoolContractAddress(config.network.env), Endpoint: 'userStake', ActionPreview: (action: ProposalAction) => , }, EsdtUserUnstake: { - Address: getEsdtPoolContractAddress(config.network), + Address: getEsdtPoolContractAddress(config.network.env), Endpoint: 'userUnstake', ActionPreview: (action: ProposalAction) => , }, EsdtUserClaim: { - Address: getEsdtPoolContractAddress(config.network), + Address: getEsdtPoolContractAddress(config.network.env), Endpoint: 'userClaim', ActionPreview: (action: ProposalAction) => , }, EsdtViewPool: { - Address: getEsdtPoolContractAddress(config.network), + Address: getEsdtPoolContractAddress(config.network.env), Endpoint: 'viewPool', AbiUrl: Config.Abis.EsdtStaking, }, NftUserStake: { - Address: getNftPoolContractAddress(config.network), + Address: getNftPoolContractAddress(config.network.env), Endpoint: 'userStake', ActionPreview: (action: ProposalAction) => , }, NftUserUnstake: { - Address: getNftPoolContractAddress(config.network), + Address: getNftPoolContractAddress(config.network.env), Endpoint: 'userUnstake', ActionPreview: (action: ProposalAction) => , }, NftUserClaim: { - Address: getNftPoolContractAddress(config.network), + Address: getNftPoolContractAddress(config.network.env), Endpoint: 'userClaim', ActionPreview: (action: ProposalAction) => , }, NftViewPool: { - Address: getNftPoolContractAddress(config.network), + Address: getNftPoolContractAddress(config.network.env), Endpoint: 'viewPool', AbiUrl: Config.Abis.NftStaking, }, diff --git a/src/extensions/artcpaclub/src/esdt/EsdtTab.tsx b/src/extensions/artcpaclub/src/esdt/EsdtTab.tsx index 4369bce..2ad5ee6 100644 --- a/src/extensions/artcpaclub/src/esdt/EsdtTab.tsx +++ b/src/extensions/artcpaclub/src/esdt/EsdtTab.tsx @@ -17,7 +17,7 @@ export function EsdtTab() { const [poolId, setPoolId] = useState(null) const [selectedPool, setSelectedPool] = useState(null) const [selectedPoolOnChain, setSelectedPoolOnChain] = useState(null) - const poolScQuery = useScQuery(app.config.walletConfig, Contracts(app.config).EsdtViewPool) + const poolScQuery = useScQuery(app.config.network, Contracts(app.config).EsdtViewPool) useEffect(() => { if (!poolUrl) return @@ -32,7 +32,7 @@ export function EsdtTab() { useEffect(() => { if (poolId === null) return - fetch(Config.ApiBaseUrl(app.config.network) + '/tokenstaking/' + poolId).then(async (res) => { + fetch(Config.ApiBaseUrl(app.config.network.env) + '/tokenstaking/' + poolId).then(async (res) => { const data = (await res.json()) as EsdtPool setSelectedPool(data) poolScQuery.query([data.pool_id, app.config.entity.address]).then((data) => { @@ -60,7 +60,7 @@ export function EsdtTab() { <_PoolOnChainInfo app={app} pool={selectedPool} poolOnChain={selectedPoolOnChain} /> )} <_Staker pool={selectedPool} className="mb-4" /> - {!!selectedPoolOnChain && selectedPoolOnChain.user_stake_amount.isGreaterThan(0) && ( + {!!selectedPoolOnChain && selectedPoolOnChain.user_stake_amount > 0 && ( <_Unstaker pool={selectedPool} poolOnChain={selectedPoolOnChain} className="mb-4" /> )} @@ -70,7 +70,7 @@ export function EsdtTab() { function _PoolInfo(props: { app: AppContextValue; pool: EsdtPool }) { return ( {toFormattedTokenAmount(props.poolOnChain.user_reward_amount, props.pool.reward_token_decimal)} - {props.poolOnChain.user_reward_amount.isGreaterThan(0) && ( + {props.poolOnChain.user_reward_amount > 0 && ( diff --git a/src/extensions/artcpaclub/src/esdt/_Staker.tsx b/src/extensions/artcpaclub/src/esdt/_Staker.tsx index 5feea58..ed12b7c 100644 --- a/src/extensions/artcpaclub/src/esdt/_Staker.tsx +++ b/src/extensions/artcpaclub/src/esdt/_Staker.tsx @@ -19,7 +19,7 @@ export function _Staker(props: Props) { const handleSubmit = (e: SyntheticEvent) => { e.preventDefault() if (!payment) return - const value = payment.isEgld() ? payment.amountAsBigInteger : 0 + const value = payment.isEgld() ? payment.amount : 0n const tokenTransfers = payment.isEgld() ? [] : [payment] app.requestProposalAction( @@ -35,9 +35,9 @@ export function _Staker(props: Props) {
setPayment(val)} tokenIdWhitelist={['EGLD', props.pool.stake_token_id]} className="mb-8" diff --git a/src/extensions/artcpaclub/src/esdt/_Unstaker.tsx b/src/extensions/artcpaclub/src/esdt/_Unstaker.tsx index 1f54bfc..b26c354 100644 --- a/src/extensions/artcpaclub/src/esdt/_Unstaker.tsx +++ b/src/extensions/artcpaclub/src/esdt/_Unstaker.tsx @@ -1,7 +1,6 @@ -import BigNumber from 'bignumber.js' import { Contracts } from '../contracts' import { Button, Input } from '@peerme/web-ui' -import { sanitizeNumeric } from '@peerme/core-ts' +import { sanitizeNumeric, shiftBigint } from '@peerme/core-ts' import { EsdtPool, EsdtPoolOnChain } from '../types' import React, { SyntheticEvent, useState } from 'react' import { useApp } from '../../../../shared/hooks/useApp' @@ -16,15 +15,15 @@ type Props = { export function _Unstaker(props: Props) { const app = useApp() const [amount, setAmount] = useState('0') - const balanceDenominated = props.poolOnChain.user_stake_amount.shiftedBy(-props.pool.stake_token_decimal) + const balanceDenominated = shiftBigint(props.poolOnChain.user_stake_amount, -props.pool.stake_token_decimal) const handleSubmit = (e: SyntheticEvent) => { e.preventDefault() - const amountBig = new BigNumber(amount).shiftedBy(props.pool.stake_token_decimal) + const amountBig = shiftBigint(amount, props.pool.stake_token_decimal) app.requestProposalAction( Contracts(app.config).EsdtUserUnstake.Address, Contracts(app.config).EsdtUserUnstake.Endpoint, - 0, + 0n, [props.pool.pool_id, amountBig], [] ) @@ -46,7 +45,7 @@ export function _Unstaker(props: Props) { className="mb-2" autoComplete="off" /> - {+amount !== +balanceDenominated && ( + {BigInt(amount) !== balanceDenominated && (
@@ -114,9 +114,12 @@ function _PoolOnChainInfo(props: { app: AppContextValue; pool: NftPool; poolOnCh

Claimable Rewards

- {toFormattedTokenAmount(props.poolOnChain.user_reward_amount, props.pool.reward_token_decimal)} + {toFormattedTokenAmount( + BigInt(props.poolOnChain.user_reward_amount.toString()), + props.pool.reward_token_decimal + )} - {props.poolOnChain.user_reward_amount.isGreaterThan(0) && ( + {props.poolOnChain.user_reward_amount > 0 && ( diff --git a/src/extensions/artcpaclub/src/nft/_Staker.tsx b/src/extensions/artcpaclub/src/nft/_Staker.tsx index dba2d7e..d062c01 100644 --- a/src/extensions/artcpaclub/src/nft/_Staker.tsx +++ b/src/extensions/artcpaclub/src/nft/_Staker.tsx @@ -19,7 +19,7 @@ export function _Staker(props: Props) { const handleSubmit = (e: SyntheticEvent) => { e.preventDefault() if (!payment) return - const value = payment.isEgld() ? payment.amountAsBigInteger : 0 + const value = payment.isEgld() ? payment.amount : 0n const tokenTransfers = payment.isEgld() ? [] : [payment] app.requestProposalAction( @@ -35,9 +35,9 @@ export function _Staker(props: Props) { setPayment(val)} tokenIdWhitelist={['egld', props.pool.stake_token_id]} className="mb-8" diff --git a/src/extensions/artcpaclub/src/nft/_Unstaker.tsx b/src/extensions/artcpaclub/src/nft/_Unstaker.tsx index 6635a28..9e420f7 100644 --- a/src/extensions/artcpaclub/src/nft/_Unstaker.tsx +++ b/src/extensions/artcpaclub/src/nft/_Unstaker.tsx @@ -1,4 +1,3 @@ -import BigNumber from 'bignumber.js' import { Contracts } from '../contracts' import { Button, Input } from '@peerme/web-ui' import { sanitizeNumeric } from '@peerme/core-ts' @@ -35,11 +34,11 @@ export function _Unstaker(props: Props) { const handleSubmit = (e: SyntheticEvent) => { e.preventDefault() if (!unstakableInfo) return - const amountBig = new BigNumber(amount) + const amountBig = BigInt(amount) app.requestProposalAction( Contracts(app.config).NftUserUnstake.Address, Contracts(app.config).NftUserUnstake.Endpoint, - 0, + 0n, [props.pool.pool_id, unstakableInfo.nonce, amountBig], [] ) diff --git a/src/extensions/artcpaclub/src/previews/ClaimActionPreview.tsx b/src/extensions/artcpaclub/src/previews/ClaimActionPreview.tsx index 4ce310c..7f289d4 100644 --- a/src/extensions/artcpaclub/src/previews/ClaimActionPreview.tsx +++ b/src/extensions/artcpaclub/src/previews/ClaimActionPreview.tsx @@ -16,7 +16,7 @@ export function ClaimActionPreview(props: Props) { useEffect(() => { if (!poolId) return - fetch(Config.ApiBaseUrl(props.config.network) + '/tokenstaking/' + poolId).then(async (res) => { + fetch(Config.ApiBaseUrl(props.config.network.env) + '/tokenstaking/' + poolId).then(async (res) => { const data = await res.json() setSelectedPool(data) }) diff --git a/src/extensions/artcpaclub/src/previews/StakeActionPreview.tsx b/src/extensions/artcpaclub/src/previews/StakeActionPreview.tsx index f4dfb0d..87f57ea 100644 --- a/src/extensions/artcpaclub/src/previews/StakeActionPreview.tsx +++ b/src/extensions/artcpaclub/src/previews/StakeActionPreview.tsx @@ -20,13 +20,13 @@ export function StakeActionPreview(props: Props) { ? props.action.payments .map((payment) => toFormattedTokenPayment(toTokenPaymentFromProposalPayment(payment))) .join(', ') - : toFormattedTokenPayment(TokenTransfer.egldFromBigInteger(props.action.value)) + : toFormattedTokenPayment(TokenTransfer.egldFromBigInteger(props.action.value.toString())) useEffect(() => { if (!poolId) return const isNft = props.action.payments.some((p) => p.tokenNonce !== 0) const endpoint = isNft ? 'nftstaking' : 'tokenstaking' - fetch(`${Config.ApiBaseUrl(props.config.network)}/${endpoint}/${poolId}`).then(async (res) => { + fetch(`${Config.ApiBaseUrl(props.config.network.env)}/${endpoint}/${poolId}`).then(async (res) => { const data = await res.json() setSelectedPool(data) }) diff --git a/src/extensions/artcpaclub/src/previews/UnstakeActionPreview.tsx b/src/extensions/artcpaclub/src/previews/UnstakeActionPreview.tsx index 4906d5d..4589b7e 100644 --- a/src/extensions/artcpaclub/src/previews/UnstakeActionPreview.tsx +++ b/src/extensions/artcpaclub/src/previews/UnstakeActionPreview.tsx @@ -1,10 +1,9 @@ import { Config } from '../config' import { EsdtPool, NftPool } from '../types' -import BigNumber from 'bignumber.js' import React, { useEffect, useState } from 'react' import { ExtensionConfig } from '../../../../shared/types' -import { ProposalAction, toActionArgsBigNumber, toFormattedTokenAmount } from '@peerme/core-ts' import { ActionPreviewHighlight } from '../../../../shared/ui/elements' +import { ProposalAction, toActionArgsBigInt, toFormattedTokenAmount } from '@peerme/core-ts' type Props = { action: ProposalAction @@ -17,12 +16,12 @@ export function UnstakeActionPreview(props: Props) { const poolId = props.action.arguments[0] as number const nonce = (isNft ? props.action.arguments[1] : null) as number | null const optAmount = (isNft ? props.action.arguments[2] : props.action.arguments[1]) as number | null - const amountBig = optAmount ? toActionArgsBigNumber(optAmount) : new BigNumber(0) + const amountBig = optAmount ? toActionArgsBigInt(optAmount) : BigInt(0) useEffect(() => { if (!poolId) return const apiEndpoint = isNft ? 'nftstaking' : 'tokenstaking' - fetch(Config.ApiBaseUrl(props.config.network) + '/' + apiEndpoint + '/' + poolId).then(async (res) => { + fetch(Config.ApiBaseUrl(props.config.network.env) + '/' + apiEndpoint + '/' + poolId).then(async (res) => { const data = await res.json() setSelectedPool(data) }) @@ -33,7 +32,7 @@ export function UnstakeActionPreview(props: Props) { unstake{' '} - {amountBig.toNumber()} {selectedPool ? selectedPool.stake_token_id : ''} + {amountBig.toString()} {selectedPool ? selectedPool.stake_token_id : ''} {' '} with Nonce {nonce}{' '} {selectedPool ? `from pool ${selectedPool.title}` : `from pool with id ${poolId}`}. diff --git a/src/extensions/artcpaclub/src/types.ts b/src/extensions/artcpaclub/src/types.ts index cf62668..b3de70a 100644 --- a/src/extensions/artcpaclub/src/types.ts +++ b/src/extensions/artcpaclub/src/types.ts @@ -1,5 +1,3 @@ -import BigNumber from 'bignumber.js' - export type EsdtPool = { id: number pool_id: number @@ -34,8 +32,8 @@ export type EsdtPoolOnChain = { total_stake_amount: string reward_pool_size: string staker_count: string - user_stake_amount: BigNumber - user_reward_amount: BigNumber + user_stake_amount: bigint + user_reward_amount: bigint lock_time_seconds: string locked_until: string bonus_token_id: string @@ -81,8 +79,8 @@ export type NftPoolOnChain = { total_stake_amount: string reward_pool_size: string staker_count: string - user_stake_amount: BigNumber - user_reward_amount: BigNumber + user_stake_amount: bigint + user_reward_amount: bigint user_stake_amount_per_nonce: StakedNftInfo[] is_paired: boolean pair_token_id: string diff --git a/src/extensions/ashswap/src/contracts.tsx b/src/extensions/ashswap/src/contracts.tsx index feda24b..482931a 100644 --- a/src/extensions/ashswap/src/contracts.tsx +++ b/src/extensions/ashswap/src/contracts.tsx @@ -1,6 +1,6 @@ -import { Network, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' +import { AppEnv, ExtensionScInfo, ExtensionConfig } from '../../../shared/types' -const getContractAddress = (network: Network) => { +const getContractAddress = (network: AppEnv) => { if (network === 'devnet') return '#' if (network === 'testnet') return '#' return '#' @@ -8,7 +8,7 @@ const getContractAddress = (network: Network) => { export const Contracts = (config: ExtensionConfig): ExtensionScInfo => ({ YourCustomScEndpoint: { - Address: getContractAddress(config.network), + Address: getContractAddress(config.network.env), Endpoint: 'yourCustomScEndpoint', }, }) diff --git a/src/extensions/ashswap/src/helpers.ts b/src/extensions/ashswap/src/helpers.ts index e51171c..4f4bf75 100644 --- a/src/extensions/ashswap/src/helpers.ts +++ b/src/extensions/ashswap/src/helpers.ts @@ -1,7 +1,7 @@ -import { Network } from '../../../shared/types' +import { AppEnv } from '../../../shared/types' import { ChainId } from '@ashswap/ash-sdk-js/out' -export const getAshswapChainId = (network: Network): ChainId.Devnet | ChainId.Mainnet => { +export const getAshswapChainId = (network: AppEnv): ChainId.Devnet | ChainId.Mainnet => { if (network === 'devnet') return ChainId.Devnet return ChainId.Mainnet } diff --git a/src/extensions/ashswap/src/swap/SwapTab.tsx b/src/extensions/ashswap/src/swap/SwapTab.tsx index f32767a..e0c1b52 100644 --- a/src/extensions/ashswap/src/swap/SwapTab.tsx +++ b/src/extensions/ashswap/src/swap/SwapTab.tsx @@ -5,16 +5,16 @@ import { useApp } from '../../../../shared/hooks/useApp' import { AppSection } from '../../../../shared/ui/elements' import { Address, TokenTransfer } from '@multiversx/sdk-core/out' import { Button, EntityTransferSelector, Select } from '@peerme/web-ui' -import { Constants, ProposalAction, createAction } from '@peerme/core-ts' import React, { SyntheticEvent, useEffect, useMemo, useState } from 'react' +import { Constants, ProposalAction, createAction, transformTypedValueToActionArg } from '@peerme/core-ts' const DefaultSlippage = 100 // 1% = 1_000 export function SwapTab() { const app = useApp() const aggregator = useMemo( - () => new Aggregator({ chainId: getAshswapChainId(app.config.network) }), - [app.config.network] + () => new Aggregator({ chainId: getAshswapChainId(app.config.network.env) }), + [app.config.network.env] ) const [payment, setPayment] = useState(null) const [availableTokens, setAvailableTokens] = useState([]) @@ -22,7 +22,7 @@ export function SwapTab() { () => availableTokens.sort((a, b) => a.id.localeCompare(b.id)), [availableTokens] ) - const [seletedToken, setSelectedToken] = useState(Constants.EgldTokenIdentifier) + const [seletedToken, setSelectedToken] = useState(Constants.Egld.Id) const [computedAction, setComputedAction] = useState(null) useEffect(() => { @@ -52,8 +52,9 @@ export function SwapTab() { const contract = tx.getContractAddress().bech32() if (!contract) return const tokenTransfers = payment.isEgld() ? [] : [payment] + const args = tx.getArguments().map(transformTypedValueToActionArg as any) as any setComputedAction( - createAction(contract, tx.getFunction().toString(), tx.getValue().toString(), tx.getArguments() as any, tokenTransfers) + createAction(contract, tx.getFunction().toString(), BigInt(tx.getValue().toString()), args, tokenTransfers) ) } @@ -75,7 +76,7 @@ export function SwapTab() {