From 3f8a2b96faaa629bb486075bc451d405749170ab Mon Sep 17 00:00:00 2001 From: Sakshi Shah Date: Sat, 20 Jan 2024 23:58:20 +0530 Subject: [PATCH 01/20] ui updates profile --- src/app/components/Profile/ProfileComponent.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/Profile/ProfileComponent.tsx b/src/app/components/Profile/ProfileComponent.tsx index 3e52aa9..60733b7 100644 --- a/src/app/components/Profile/ProfileComponent.tsx +++ b/src/app/components/Profile/ProfileComponent.tsx @@ -63,7 +63,7 @@ export default function ProfileComponent({ address }: ProfileComponentProps) { ) : ( -

+

Please Connect your wallet!

)} From 319635ddf9f6782def080140f3a17984523e3624 Mon Sep 17 00:00:00 2001 From: Sakshi Shah Date: Sun, 21 Jan 2024 04:05:20 +0530 Subject: [PATCH 02/20] feat:create an event integration complete --- src/app/components/Loading.tsx | 8 +- src/app/components/abis/index.ts | 2290 +++++++++-------- src/app/create/components/Form.tsx | 617 +++-- .../PreviewMap/PreviewComponent.tsx | 2 +- 4 files changed, 1652 insertions(+), 1265 deletions(-) diff --git a/src/app/components/Loading.tsx b/src/app/components/Loading.tsx index 3667072..4a40045 100644 --- a/src/app/components/Loading.tsx +++ b/src/app/components/Loading.tsx @@ -2,8 +2,8 @@ import React from 'react' import { ThreeDots } from 'react-loading-icons' const Loading = () => { - return ( -
+ return ( +
Loading... @@ -14,7 +14,7 @@ const Loading = () => {

- ) + ) } -export default Loading \ No newline at end of file +export default Loading diff --git a/src/app/components/abis/index.ts b/src/app/components/abis/index.ts index fe55ac7..ac8ace4 100644 --- a/src/app/components/abis/index.ts +++ b/src/app/components/abis/index.ts @@ -1,1485 +1,1767 @@ export const WeaveABI = [ { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_leaderboardAddress", - "type": "address" - } + internalType: 'address', + name: '_leaderboardAddress', + type: 'address', + }, ], - "stateMutability": "nonpayable", - "type": "constructor" + stateMutability: 'nonpayable', + type: 'constructor', }, { - "inputs": [], - "name": "getLeaderboardAddress", - "outputs": [ + inputs: [], + name: 'getLeaderboardAddress', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "userAddress", - "type": "address" - } + internalType: 'address', + name: 'userAddress', + type: 'address', + }, ], - "name": "getUsername", - "outputs": [ + name: 'getUsername', + outputs: [ { - "internalType": "string", - "name": "", - "type": "string" - } + internalType: 'string', + name: '', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getUsersDetails", - "outputs": [ + inputs: [], + name: 'getUsersDetails', + outputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" + internalType: 'address[]', + name: '', + type: 'address[]', }, { - "internalType": "string[]", - "name": "", - "type": "string[]" - } + internalType: 'string[]', + name: '', + type: 'string[]', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "userAddress", - "type": "address" - } + internalType: 'address', + name: 'userAddress', + type: 'address', + }, ], - "name": "isUserOnboarded", - "outputs": [ + name: 'isUserOnboarded', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "leaderboardContractAddress", - "outputs": [ + inputs: [], + name: 'leaderboardContractAddress', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_leaderboardAddress", - "type": "address" - } + internalType: 'address', + name: '_leaderboardAddress', + type: 'address', + }, ], - "name": "setLeaderboardAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'setLeaderboardAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "string", - "name": "_nickname", - "type": "string" - } + internalType: 'string', + name: '_nickname', + type: 'string', + }, ], - "name": "setUsername", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'setUsername', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "userAddresses", - "outputs": [ + name: 'userAddresses', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "name": "users", - "outputs": [ + name: 'users', + outputs: [ { - "internalType": "string", - "name": "nickname", - "type": "string" - } + internalType: 'string', + name: 'nickname', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" - } -] as const; + stateMutability: 'view', + type: 'function', + }, +] as const export const LeaderboardABI = [ { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_weaveAddress", - "type": "address" + internalType: 'address', + name: '_weaveAddress', + type: 'address', }, { - "internalType": "address", - "name": "_vaultAddress", - "type": "address" - } + internalType: 'address', + name: '_vaultAddress', + type: 'address', + }, ], - "stateMutability": "nonpayable", - "type": "constructor" + stateMutability: 'nonpayable', + type: 'constructor', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "owner", - "type": "address" - } + internalType: 'address', + name: 'owner', + type: 'address', + }, ], - "name": "OwnableInvalidOwner", - "type": "error" + name: 'OwnableInvalidOwner', + type: 'error', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "account", - "type": "address" - } + internalType: 'address', + name: 'account', + type: 'address', + }, ], - "name": "OwnableUnauthorizedAccount", - "type": "error" + name: 'OwnableUnauthorizedAccount', + type: 'error', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "userAddress", - "type": "address" + indexed: true, + internalType: 'address', + name: 'userAddress', + type: 'address', }, { - "indexed": false, - "internalType": "uint256", - "name": "points", - "type": "uint256" - } + indexed: false, + internalType: 'uint256', + name: 'points', + type: 'uint256', + }, ], - "name": "ClaimRewards", - "type": "event" + name: 'ClaimRewards', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" + indexed: true, + internalType: 'address', + name: 'previousOwner', + type: 'address', }, { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, ], - "name": "OwnershipTransferred", - "type": "event" + name: 'OwnershipTransferred', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "userAddress", - "type": "address" + indexed: true, + internalType: 'address', + name: 'userAddress', + type: 'address', }, { - "indexed": false, - "internalType": "uint256", - "name": "points", - "type": "uint256" - } + indexed: false, + internalType: 'uint256', + name: 'points', + type: 'uint256', + }, ], - "name": "UpdateLeaderboard", - "type": "event" + name: 'UpdateLeaderboard', + type: 'event', }, { - "inputs": [], - "name": "claimRewards", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + inputs: [], + name: 'claimRewards', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [], - "name": "eventsFactory", - "outputs": [ + inputs: [], + name: 'eventsFactory', + outputs: [ { - "internalType": "contract IEventsFactory", - "name": "", - "type": "address" - } + internalType: 'contract IEventsFactory', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" - } + internalType: 'address', + name: '_userAddress', + type: 'address', + }, ], - "name": "getEventsAttended", - "outputs": [ + name: 'getEventsAttended', + outputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getLeaderboard", - "outputs": [ + inputs: [], + name: 'getLeaderboard', + outputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" + internalType: 'address[]', + name: '', + type: 'address[]', }, { - "internalType": "string[]", - "name": "", - "type": "string[]" + internalType: 'string[]', + name: '', + type: 'string[]', }, { - "internalType": "uint256[]", - "name": "", - "type": "uint256[]" - } + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" - } + internalType: 'address', + name: '_userAddress', + type: 'address', + }, ], - "name": "getPoints", - "outputs": [ + name: 'getPoints', + outputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getUserAddresses", - "outputs": [ + inputs: [], + name: 'getUserAddresses', + outputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" - } + internalType: 'address[]', + name: '', + type: 'address[]', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" - } + internalType: 'address', + name: '_userAddress', + type: 'address', + }, ], - "name": "getUserEventsAttended", - "outputs": [ + name: 'getUserEventsAttended', + outputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" - } + internalType: 'address', + name: '_userAddress', + type: 'address', + }, ], - "name": "getUserNickname", - "outputs": [ + name: 'getUserNickname', + outputs: [ { - "internalType": "string", - "name": "", - "type": "string" - } + internalType: 'string', + name: '', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" - } + internalType: 'address', + name: '_userAddress', + type: 'address', + }, ], - "name": "getUserPoints", - "outputs": [ + name: 'getUserPoints', + outputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "owner", - "outputs": [ + inputs: [], + name: 'owner', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + inputs: [], + name: 'renounceOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_eventsFactoryAddress", - "type": "address" - } + internalType: 'address', + name: '_eventsFactoryAddress', + type: 'address', + }, ], - "name": "setEventsFactoryAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'setEventsFactoryAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_vaultAddress", - "type": "address" - } + internalType: 'address', + name: '_vaultAddress', + type: 'address', + }, ], - "name": "setVaultAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'setVaultAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_weaveAddress", - "type": "address" - } + internalType: 'address', + name: '_weaveAddress', + type: 'address', + }, ], - "name": "setWeaveAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'setWeaveAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "newOwner", - "type": "address" - } + internalType: 'address', + name: 'newOwner', + type: 'address', + }, ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_userAddress", - "type": "address" + internalType: 'address', + name: '_userAddress', + type: 'address', }, { - "internalType": "string", - "name": "_nickName", - "type": "string" - } + internalType: 'string', + name: '_nickName', + type: 'string', + }, ], - "name": "updateLeaderboard", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'updateLeaderboard', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "userAddresses", - "outputs": [ + name: 'userAddresses', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "name": "users", - "outputs": [ + name: 'users', + outputs: [ { - "internalType": "string", - "name": "userNickname", - "type": "string" + internalType: 'string', + name: 'userNickname', + type: 'string', }, { - "internalType": "uint256", - "name": "points", - "type": "uint256" + internalType: 'uint256', + name: 'points', + type: 'uint256', }, { - "internalType": "uint256", - "name": "eventsAttended", - "type": "uint256" - } + internalType: 'uint256', + name: 'eventsAttended', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "vault", - "outputs": [ + inputs: [], + name: 'vault', + outputs: [ { - "internalType": "contract IVault", - "name": "", - "type": "address" - } + internalType: 'contract IVault', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "vaultContractAddress", - "outputs": [ + inputs: [], + name: 'vaultContractAddress', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "weave", - "outputs": [ + inputs: [], + name: 'weave', + outputs: [ { - "internalType": "contract IWeave", - "name": "", - "type": "address" - } + internalType: 'contract IWeave', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "weaveContractAddress", - "outputs": [ + inputs: [], + name: 'weaveContractAddress', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" - } -] as const; + stateMutability: 'view', + type: 'function', + }, +] as const export const VaultABI = [ { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "lendingPool", - "type": "address" + internalType: 'address', + name: 'lendingPool', + type: 'address', }, { - "internalType": "address", - "name": "onBehalfOf", - "type": "address" + internalType: 'address', + name: 'onBehalfOf', + type: 'address', }, { - "internalType": "uint16", - "name": "referralCode", - "type": "uint16" - } + internalType: 'uint16', + name: 'referralCode', + type: 'uint16', + }, ], - "name": "depositETH", - "outputs": [], - "stateMutability": "payable", - "type": "function" - } + name: 'depositETH', + outputs: [], + stateMutability: 'payable', + type: 'function', + }, ] - - export const EventABI = [ { - "inputs": [ + inputs: [ { - "internalType": "string", - "name": "_eventName", - "type": "string" + internalType: 'string', + name: '_eventName', + type: 'string', }, { - "internalType": "string", - "name": "_eventDescription", - "type": "string" + internalType: 'string', + name: '_eventDescription', + type: 'string', }, { - "internalType": "int256", - "name": "_latitude", - "type": "int256" + internalType: 'int256', + name: '_latitude', + type: 'int256', }, { - "internalType": "int256", - "name": "_longitude", - "type": "int256" + internalType: 'int256', + name: '_longitude', + type: 'int256', }, { - "internalType": "address[]", - "name": "_eventManagers", - "type": "address[]" + internalType: 'address[]', + name: '_eventManagers', + type: 'address[]', }, { - "internalType": "uint256", - "name": "_eventRadius", - "type": "uint256" + internalType: 'uint256', + name: '_eventRadius', + type: 'uint256', }, { - "internalType": "string", - "name": "_eventRadiusColor", - "type": "string" + internalType: 'string', + name: '_eventRadiusColor', + type: 'string', }, { - "internalType": "address", - "name": "_weaveContractAddress", - "type": "address" + internalType: 'address', + name: '_weaveContractAddress', + type: 'address', }, { - "internalType": "address", - "name": "_leaderboardContractAddress", - "type": "address" - } + internalType: 'address', + name: '_leaderboardContractAddress', + type: 'address', + }, ], - "stateMutability": "nonpayable", - "type": "constructor" + stateMutability: 'nonpayable', + type: 'constructor', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "owner", - "type": "address" - } + internalType: 'address', + name: 'owner', + type: 'address', + }, ], - "name": "OwnableInvalidOwner", - "type": "error" + name: 'OwnableInvalidOwner', + type: 'error', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "account", - "type": "address" - } + internalType: 'address', + name: 'account', + type: 'address', + }, ], - "name": "OwnableUnauthorizedAccount", - "type": "error" + name: 'OwnableUnauthorizedAccount', + type: 'error', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": false, - "internalType": "string", - "name": "newEventName", - "type": "string" - } + indexed: false, + internalType: 'string', + name: 'newEventName', + type: 'string', + }, ], - "name": "EventNameUpdated", - "type": "event" + name: 'EventNameUpdated', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": false, - "internalType": "address", - "name": "newManager", - "type": "address" - } + indexed: false, + internalType: 'address', + name: 'newManager', + type: 'address', + }, ], - "name": "ManagerAdded", - "type": "event" + name: 'ManagerAdded', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": false, - "internalType": "address", - "name": "removedManager", - "type": "address" - } + indexed: false, + internalType: 'address', + name: 'removedManager', + type: 'address', + }, ], - "name": "ManagerRemoved", - "type": "event" + name: 'ManagerRemoved', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": false, - "internalType": "address[]", - "name": "newManagers", - "type": "address[]" - } + indexed: false, + internalType: 'address[]', + name: 'newManagers', + type: 'address[]', + }, ], - "name": "ManagersUpdated", - "type": "event" + name: 'ManagersUpdated', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" + indexed: true, + internalType: 'address', + name: 'previousOwner', + type: 'address', }, { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, ], - "name": "OwnershipTransferred", - "type": "event" + name: 'OwnershipTransferred', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "participant", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'participant', + type: 'address', + }, ], - "name": "ParticipantAttended", - "type": "event" + name: 'ParticipantAttended', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "participant", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'participant', + type: 'address', + }, ], - "name": "PointsClaimed", - "type": "event" + name: 'PointsClaimed', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": false, - "internalType": "uint256", - "name": "newRewardPool", - "type": "uint256" - } + indexed: false, + internalType: 'uint256', + name: 'newRewardPool', + type: 'uint256', + }, ], - "name": "RewardPoolUpdated", - "type": "event" + name: 'RewardPoolUpdated', + type: 'event', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "newManager", - "type": "address" - } + internalType: 'address', + name: 'newManager', + type: 'address', + }, ], - "name": "addManager", - "outputs": [ + name: 'addManager', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "nonpayable", - "type": "function" + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "attendedParticipants", - "outputs": [ + name: 'attendedParticipants', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "claimPoints", - "outputs": [ + inputs: [], + name: 'claimPoints', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "nonpayable", - "type": "function" + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_participantAddress", - "type": "address" - } + internalType: 'address', + name: '_participantAddress', + type: 'address', + }, ], - "name": "createAttestation", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'createAttestation', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [], - "name": "eventDescription", - "outputs": [ + inputs: [], + name: 'eventDescription', + outputs: [ { - "internalType": "string", - "name": "", - "type": "string" - } + internalType: 'string', + name: '', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "eventManagers", - "outputs": [ + name: 'eventManagers', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "eventName", - "outputs": [ + inputs: [], + name: 'eventName', + outputs: [ { - "internalType": "string", - "name": "", - "type": "string" - } + internalType: 'string', + name: '', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "eventRadius", - "outputs": [ + inputs: [], + name: 'eventRadius', + outputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "eventRadiusColor", - "outputs": [ + inputs: [], + name: 'eventRadiusColor', + outputs: [ { - "internalType": "string", - "name": "", - "type": "string" - } + internalType: 'string', + name: '', + type: 'string', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getManagers", - "outputs": [ + inputs: [], + name: 'getManagers', + outputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" - } + internalType: 'address[]', + name: '', + type: 'address[]', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getRegisteredParticipants", - "outputs": [ + inputs: [], + name: 'getRegisteredParticipants', + outputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" - } + internalType: 'address[]', + name: '', + type: 'address[]', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "name": "hasAttended", - "outputs": [ + name: 'hasAttended', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "name": "hasClaimed", - "outputs": [ + name: 'hasClaimed', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "participantAddress", - "type": "address" - } + internalType: 'address', + name: 'participantAddress', + type: 'address', + }, ], - "name": "isParticipantOnboarded", - "outputs": [ + name: 'isParticipantOnboarded', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "latitude", - "outputs": [ + inputs: [], + name: 'latitude', + outputs: [ { - "internalType": "int256", - "name": "", - "type": "int256" - } + internalType: 'int256', + name: '', + type: 'int256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "leaderboard", - "outputs": [ + inputs: [], + name: 'leaderboard', + outputs: [ { - "internalType": "contract ILeaderboard", - "name": "", - "type": "address" - } + internalType: 'contract ILeaderboard', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "longitude", - "outputs": [ + inputs: [], + name: 'longitude', + outputs: [ { - "internalType": "int256", - "name": "", - "type": "int256" - } + internalType: 'int256', + name: '', + type: 'int256', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "owner", - "outputs": [ + inputs: [], + name: 'owner', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "registeredParticipants", - "outputs": [ + name: 'registeredParticipants', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_manager", - "type": "address" - } + internalType: 'address', + name: '_manager', + type: 'address', + }, ], - "name": "removeManagerOptimized", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'removeManagerOptimized', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + inputs: [], + name: 'renounceOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "newOwner", - "type": "address" - } + internalType: 'address', + name: 'newOwner', + type: 'address', + }, ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [ { - "internalType": "string", - "name": "_newEventName", - "type": "string" - } + internalType: 'string', + name: '_newEventName', + type: 'string', + }, ], - "name": "updateEventName", - "outputs": [ + name: 'updateEventName', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + internalType: 'bool', + name: '', + type: 'bool', + }, ], - "stateMutability": "nonpayable", - "type": "function" + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [], - "name": "weave", - "outputs": [ + inputs: [], + name: 'weave', + outputs: [ { - "internalType": "contract IWeave", - "name": "", - "type": "address" - } + internalType: 'contract IWeave', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" - } -] as const; + stateMutability: 'view', + type: 'function', + }, +] as const export const EventsFactoryABI = [ { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "_vaultAddress", - "type": "address" - } + internalType: 'address', + name: '_vaultAddress', + type: 'address', + }, + { + internalType: 'address', + name: '_weaveAddress', + type: 'address', + }, + { + internalType: 'address', + name: '_leaderboardAddress', + type: 'address', + }, ], - "stateMutability": "nonpayable", - "type": "constructor" + stateMutability: 'nonpayable', + type: 'constructor', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "owner", - "type": "address" - } + internalType: 'address', + name: 'owner', + type: 'address', + }, ], - "name": "OwnableInvalidOwner", - "type": "error" + name: 'OwnableInvalidOwner', + type: 'error', }, { - "inputs": [ + inputs: [ { - "internalType": "address", - "name": "account", - "type": "address" - } + internalType: 'address', + name: 'account', + type: 'address', + }, ], - "name": "OwnableUnauthorizedAccount", - "type": "error" + name: 'OwnableUnauthorizedAccount', + type: 'error', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "eventAddress", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'eventAddress', + type: 'address', + }, ], - "name": "EventCreated", - "type": "event" + name: 'EventCreated', + type: 'event', }, { - "anonymous": false, - "inputs": [ + anonymous: false, + inputs: [ { - "indexed": true, - "internalType": "address", - "name": "previousOwner", - "type": "address" + indexed: true, + internalType: 'address', + name: 'previousOwner', + type: 'address', }, { - "indexed": true, - "internalType": "address", - "name": "newOwner", - "type": "address" - } + indexed: true, + internalType: 'address', + name: 'newOwner', + type: 'address', + }, ], - "name": "OwnershipTransferred", - "type": "event" + name: 'OwnershipTransferred', + type: 'event', }, { - "inputs": [ + inputs: [ { - "internalType": "uint256", - "name": "", - "type": "uint256" - } + internalType: 'uint256', + name: '', + type: 'uint256', + }, ], - "name": "allEvents", - "outputs": [ + name: 'allEvents', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + internalType: 'address', + name: '', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + inputs: [ + { + internalType: 'string', + name: '_eventName', + type: 'string', + }, + { + internalType: 'string', + name: '_eventDescription', + type: 'string', + }, { - "internalType": "string", - "name": "_eventName", - "type": "string" + internalType: 'uint256', + name: '_eventStartDate', + type: 'uint256', }, { - "internalType": "string", - "name": "_eventDescription", - "type": "string" + internalType: 'uint256', + name: '_eventEndDate', + type: 'uint256', }, { - "internalType": "int256", - "name": "_latitude", - "type": "int256" + internalType: 'int256', + name: '_latitude', + type: 'int256', }, { - "internalType": "int256", - "name": "_longitude", - "type": "int256" + internalType: 'int256', + name: '_longitude', + type: 'int256', }, { - "internalType": "address[]", - "name": "_eventManagers", - "type": "address[]" + internalType: 'address[]', + name: '_eventManagers', + type: 'address[]', }, { - "internalType": "uint256", - "name": "_eventRadius", - "type": "uint256" + internalType: 'uint256', + name: '_eventRadius', + type: 'uint256', }, { - "internalType": "string", - "name": "_eventRadiusColor", - "type": "string" + internalType: 'string', + name: '_eventRadiusColor', + type: 'string', }, { - "internalType": "contract IERC20", - "name": "_eventToken", - "type": "address" + internalType: 'contract IERC20', + name: '_eventToken', + type: 'address', }, { - "internalType": "uint256", - "name": "_amount", - "type": "uint256" - } + internalType: 'uint256', + name: '_amount', + type: 'uint256', + }, ], - "name": "createEvent", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'createEvent', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + inputs: [], + name: 'getAllEvents', + outputs: [ { - "internalType": "string", - "name": "_eventName", - "type": "string" + internalType: 'address[]', + name: '', + type: 'address[]', }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'getAllEventsDetails', + outputs: [ { - "internalType": "string", - "name": "_eventDescription", - "type": "string" + internalType: 'address[]', + name: '', + type: 'address[]', }, { - "internalType": "int256", - "name": "_latitude", - "type": "int256" + internalType: 'string[]', + name: '', + type: 'string[]', }, { - "internalType": "int256", - "name": "_longitude", - "type": "int256" + internalType: 'string[]', + name: '', + type: 'string[]', }, { - "internalType": "address[]", - "name": "_eventManagers", - "type": "address[]" + internalType: 'uint256[]', + name: '', + type: 'uint256[]', }, { - "internalType": "uint256", - "name": "_eventRadius", - "type": "uint256" + internalType: 'uint256[]', + name: '', + type: 'uint256[]', }, { - "internalType": "string", - "name": "_eventRadiusColor", - "type": "string" - } + internalType: 'uint256[]', + name: '', + type: 'uint256[]', + }, + { internalType: 'uint256[]', name: '', type: 'uint256[]' }, ], - "name": "createEventWithNativeTokens", - "outputs": [], - "stateMutability": "payable", - "type": "function" + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "getAllEvents", - "outputs": [ + inputs: [ { - "internalType": "address[]", - "name": "", - "type": "address[]" - } + internalType: 'address', + name: '_user', + type: 'address', + }, ], - "stateMutability": "view", - "type": "function" + name: 'getEventsCreatedByUserDetails', + outputs: [ + { + internalType: 'address[]', + name: '', + type: 'address[]', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_eventAddress', + type: 'address', + }, + ], + name: 'isContractAnEvent', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_user', + type: 'address', + }, + ], + name: 'isUserHasAlreadyCreatedEvent', + outputs: [ + { + internalType: 'bool', + name: '', + type: 'bool', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'leaderboardContractAddress', + outputs: [ + { + internalType: 'contract ILeaderboard', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'owner', + outputs: [ + { + internalType: 'address', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'renounceOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_leaderboardAddress', + type: 'address', + }, + ], + name: 'setLeaderboardAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_vaultAddress', + type: 'address', + }, + ], + name: 'setVaultAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: '_weaveAddress', + type: 'address', + }, + ], + name: 'setWeaveAddress', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [ + { + internalType: 'address', + name: 'newOwner', + type: 'address', + }, + ], + name: 'transferOwnership', + outputs: [], + stateMutability: 'nonpayable', + type: 'function', + }, + { + inputs: [], + name: 'vaultContractAddress', + outputs: [ + { + internalType: 'contract IVault', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', + }, + { + inputs: [], + name: 'weaveContractAddress', + outputs: [ + { + internalType: 'contract IWeave', + name: '', + type: 'address', + }, + ], + stateMutability: 'view', + type: 'function', }, +] as const + +export const ERC20ABI = [ { - "inputs": [ + constant: true, + inputs: [], + name: 'name', + outputs: [ { - "internalType": "address", - "name": "_eventAddress", - "type": "address" - } + name: '', + type: 'string', + }, ], - "name": "isContractAnEvent", - "outputs": [ + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + name: '_spender', + type: 'address', + }, + { + name: '_value', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + name: 'approve', + outputs: [ + { + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + constant: true, + inputs: [], + name: 'totalSupply', + outputs: [ { - "internalType": "address", - "name": "_user", - "type": "address" - } + name: '', + type: 'uint256', + }, ], - "name": "isUserHasAlreadyCreatedEvent", - "outputs": [ + payable: false, + stateMutability: 'view', + type: 'function', + }, + { + constant: false, + inputs: [ + { + name: '_from', + type: 'address', + }, + { + name: '_to', + type: 'address', + }, + { + name: '_value', + type: 'uint256', + }, + ], + name: 'transferFrom', + outputs: [ { - "internalType": "bool", - "name": "", - "type": "bool" - } + name: '', + type: 'bool', + }, ], - "stateMutability": "view", - "type": "function" + payable: false, + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [], - "name": "leaderboardContractAddress", - "outputs": [ + constant: true, + inputs: [], + name: 'decimals', + outputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + name: '', + type: 'uint8', + }, ], - "stateMutability": "view", - "type": "function" + payable: false, + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "owner", - "outputs": [ + constant: true, + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + name: '_owner', + type: 'address', + }, + ], + name: 'balanceOf', + outputs: [ + { + name: 'balance', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + payable: false, + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "renounceOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + constant: true, + inputs: [], + name: 'symbol', + outputs: [ + { + name: '', + type: 'string', + }, + ], + payable: false, + stateMutability: 'view', + type: 'function', }, { - "inputs": [ + constant: false, + inputs: [ + { + name: '_to', + type: 'address', + }, { - "internalType": "address", - "name": "_vaultAddress", - "type": "address" - } + name: '_value', + type: 'uint256', + }, ], - "name": "setVaultAddress", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + name: 'transfer', + outputs: [ + { + name: '', + type: 'bool', + }, + ], + payable: false, + stateMutability: 'nonpayable', + type: 'function', }, { - "inputs": [ + constant: true, + inputs: [ + { + name: '_owner', + type: 'address', + }, { - "internalType": "address", - "name": "newOwner", - "type": "address" - } + name: '_spender', + type: 'address', + }, + ], + name: 'allowance', + outputs: [ + { + name: '', + type: 'uint256', + }, ], - "name": "transferOwnership", - "outputs": [], - "stateMutability": "nonpayable", - "type": "function" + payable: false, + stateMutability: 'view', + type: 'function', }, { - "inputs": [], - "name": "vaultContractAddress", - "outputs": [ + payable: true, + stateMutability: 'payable', + type: 'fallback', + }, + { + anonymous: false, + inputs: [ + { + indexed: true, + name: 'owner', + type: 'address', + }, { - "internalType": "address", - "name": "", - "type": "address" - } + indexed: true, + name: 'spender', + type: 'address', + }, + { + indexed: false, + name: 'value', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" + name: 'Approval', + type: 'event', }, { - "inputs": [], - "name": "weaveContractAddress", - "outputs": [ + anonymous: false, + inputs: [ { - "internalType": "address", - "name": "", - "type": "address" - } + indexed: true, + name: 'from', + type: 'address', + }, + { + indexed: true, + name: 'to', + type: 'address', + }, + { + indexed: false, + name: 'value', + type: 'uint256', + }, ], - "stateMutability": "view", - "type": "function" - } -] as const; \ No newline at end of file + name: 'Transfer', + type: 'event', + }, +] diff --git a/src/app/create/components/Form.tsx b/src/app/create/components/Form.tsx index d5ea770..220f7af 100644 --- a/src/app/create/components/Form.tsx +++ b/src/app/create/components/Form.tsx @@ -1,6 +1,6 @@ 'use client' import Image from 'next/image' -import { ChangeEvent, useState } from 'react' +import { parseEther } from 'ethers' import GHO from '@/app/assets/GHO.svg' import ETH from '@/app/assets/ETH.svg' import Radio from '@mui/material/Radio' @@ -8,15 +8,19 @@ import USDC from '@/app/assets/USDC.svg' import EURS from '@/app/assets/EURS.svg' import Select from '@mui/material/Select' import Button from '@mui/material/Button' +import { LatLngExpression } from 'leaflet' +import { ChangeEvent, useState } from 'react' import MenuItem from '@mui/material/MenuItem' +import Loading from '@/app/components/Loading' import TextField from '@mui/material/TextField' import RadioGroup from '@mui/material/RadioGroup' +import DynamicPreviewMap from './DynamicPreviewMap' import { SelectChangeEvent } from '@mui/material/Select' import TextareaAutosize from '@mui/material/TextareaAutosize' import FormControlLabel from '@mui/material/FormControlLabel' +import { ERC20ABI, EventsFactoryABI } from '@/app/components/abis' import { Card, CardContent, ThemeProvider, createTheme, useMediaQuery } from '@mui/material' -import DynamicPreviewMap from './DynamicPreviewMap' -import { LatLngExpression } from 'leaflet' +import { useAccount, useContractRead, useContractWrite, usePrepareContractWrite, useWaitForTransaction } from 'wagmi' interface RadioCardProps { value: string @@ -26,9 +30,33 @@ interface RadioCardProps { image: any } -type AcceptedCurrency = "GHO" | "ETH" | "USDC" | "EURS"; -type CercleColor = "red" | "blue" | "green" | "yellow" | "purple" | "orange" | "grey"; +type AcceptedCurrency = 'GHO' | 'ETH' | 'USDC' | 'EURS' +type CercleColor = 'red' | 'blue' | 'green' | 'yellow' | 'purple' | 'orange' | 'grey' +interface CurrencyAddressMapping { + [currency: string]: string +} +type EventArguments = + | readonly [ + string, + string, + bigint, + bigint, + bigint, + bigint, + readonly `0x${string}`[], + bigint, + string, + `0x${string}`, + bigint + ] + | undefined +const currencyToAddressMapping: CurrencyAddressMapping = { + GHO: '0xc4bF5CbDaBE595361438F8c6a187bDc330539c60', + ETH: '0xC558DBdd856501FCd9aaF1E62eae57A9F0629a3c', + USDC: '0x94a9D9AC8a22534E3FaCa9F4e7F2E2cf85d5E4C8', + EURS: '0x6d906e526a4e2Ca02097BA9d0caA3c382F52278E', +} const Form = () => { const theme = createTheme({ components: { @@ -59,60 +87,134 @@ const Form = () => { }, }) - const [price, setPrice] = useState(0); - const [startDate, setStartDate] = useState(); - const [endDate, setEndDate] = useState(); - const [currency, setCurrency] = useState("GHO"); - const [address, setAddress] = useState(""); - const [mapPosition, setMapPosition] = useState<[number, number]>([51.505, -0.09]); - const [description, setDescription] = useState(""); - const [website, setWebsite] = useState(""); - const [event, setEvent] = useState(""); - const [logo, setLogo] = useState(); - const [radius, setRadius] = useState(200); - const [color, setColor] = useState("red"); - + const [price, setPrice] = useState(0) + const [startDate, setStartDate] = useState() + const [endDate, setEndDate] = useState() + const [currency, setCurrency] = useState('GHO') + const [address, setAddress] = useState('') + const [mapPosition, setMapPosition] = useState<[number, number]>([51, 2]) + const [website, setWebsite] = useState('') + const [description, setDescription] = useState('') + const [eventManagers, setEventManagers] = useState() + const [event, setEvent] = useState('') + const [logo, setLogo] = useState() + const [radius, setRadius] = useState(200) + const [color, setColor] = useState('red') + const { address: userAddress, isConnected } = useAccount() const onChange = (e: ChangeEvent) => { - setCurrency(e.target.value as AcceptedCurrency); + setCurrency(e.target.value as AcceptedCurrency) } // Price* = ((basePrice + dailyRate) * _numberOfDays) + (Date difference (Today - Start of event)) const calculatePrice = (_endDate: number, _startDate: number) => { if (!_endDate || !_startDate) { - return; + return } if (_endDate < _startDate) { - return; + return } if (_endDate === _startDate) { - return; + return } - const basePrice = 5; - const dailyRate = 7; - const numberOfDays = (_endDate - _startDate) / 86400; - const dateDifference = (_startDate - Math.round(new Date().getTime() / 1000)) / 86400; - const price = ((basePrice + dailyRate) * numberOfDays) + dateDifference; - setPrice(price); + const basePrice = 5 + const dailyRate = 7 + const numberOfDays = (_endDate - _startDate) / 86400 + const dateDifference = (_startDate - Math.round(new Date().getTime() / 1000)) / 86400 + const price = (basePrice + dailyRate) * numberOfDays + dateDifference + setPrice(price) } const onChangeLogo = (e: React.ChangeEvent) => { if (e.target.files && e.target.files[0]) { - setLogo(e.target.files[0]); + setLogo(e.target.files[0]) } } + let startDateObject + let endDateObject + if (startDate && endDate) { + startDateObject = new Date(startDate) + endDateObject = new Date(endDate) + } + const { + data: allowance, + refetch, + error: allowanceError, + } = useContractRead({ + address: currencyToAddressMapping[currency].toString() as `0x${string}`, + abi: ERC20ABI, + functionName: 'allowance', + args: userAddress && [userAddress, '0x3A9AeBbF8CBDcBcE7246C30DFE29277197c8046E'], + }) + console.log('Allowance data', Number(allowance), allowanceError) + // 2. (Only if no allowance): Write to ERC20, approve 0x Exchange Proxy to spend max integer + const { config: approveConfig } = usePrepareContractWrite({ + address: currencyToAddressMapping[currency].toString() as `0x${string}`, + abi: ERC20ABI, + functionName: 'approve', + args: ['0x3A9AeBbF8CBDcBcE7246C30DFE29277197c8046E', parseEther('9999')], + }) + + const { + data: writeContractResult, + writeAsync: approveAsync, + error, + isSuccess: approvalSuccess, + } = useContractWrite(approveConfig) + console.log('Approval data:', writeContractResult) + const { isLoading: isApproving } = useWaitForTransaction({ + hash: writeContractResult ? writeContractResult.hash : undefined, + onSuccess(data) { + refetch() + }, + }) + const args: EventArguments = + event && description && startDateObject && endDateObject && eventManagers && currency && mapPosition + ? [ + event?.toString(), + description?.toString(), + BigInt(startDateObject.getTime()), + BigInt(endDateObject.getTime()), + BigInt(Math.round(mapPosition[0])), + BigInt(Math.round(mapPosition[1])), + eventManagers as readonly `0x${string}`[], + BigInt(radius), + color.toString() as `0x${string}`, + currencyToAddressMapping[currency].toString() as `0x${string}`, + BigInt(20), + ] + : undefined + const { config } = usePrepareContractWrite({ + address: '0x3A9AeBbF8CBDcBcE7246C30DFE29277197c8046E', + abi: EventsFactoryABI, + functionName: 'createEvent', + args: args, + }) + const { data: formData, isLoading: contractWriteLoading, isSuccess, write: formWrite } = useContractWrite(config) + console.log(formData) const handleSubmit = (e: React.FormEvent) => { - e.preventDefault(); + e.preventDefault() try { - getLatLng(address); + getLatLng(address) + if (isConnected) { + setEventManagers([userAddress as `0x${string}`]) + if (currency) { + if (Number(allowance) == 0) { + approveAsync?.() + formWrite?.() + } else { + formWrite?.() + } + } + } } catch (error) { - console.error("Error submitting form:", error); + console.error('Error submitting form:', error) } - + console.log('Form submitted with data:', { price, startDate, @@ -121,50 +223,47 @@ const Form = () => { address, mapPosition, description, - website, + eventManagers, event, logo, radius, color, - }); - calculatePrice(endDate as number, startDate as number); - }; + }) + calculatePrice(endDate as number, startDate as number) + } const convertDateToUnix = (date: Date) => { - return Math.round(date.getTime() / 1000); + return Math.round(date.getTime() / 1000) } const getLatLng = async (eventAddress: string) => { - console.log(eventAddress); + console.log(eventAddress) if (!eventAddress) { - return; + return } try { - const response = await fetch( - `https://geocode.maps.co/search?q=${encodeURIComponent(eventAddress)}` - ); + const response = await fetch(`https://geocode.maps.co/search?q=${encodeURIComponent(eventAddress)}`) if (!response.ok) { - throw new Error(`Failed to fetch coordinates. Status: ${response.status}`); + throw new Error(`Failed to fetch coordinates. Status: ${response.status}`) } - const data = await response.json(); + const data = await response.json() if (!data || data.length === 0) { - throw new Error(`No coordinates found for address: ${eventAddress}`); + throw new Error(`No coordinates found for address: ${eventAddress}`) } - const lat = data[0].lat; - const lng = data[0].lon; + const lat = data[0].lat + const lng = data[0].lon - setMapPosition([lat, lng]); - return [lat, lng]; + setMapPosition([lat, lng]) + return [lat, lng] } catch (error) { - console.error("Error fetching coordinates:", error); + console.error('Error fetching coordinates:', error) } - }; - + } const CustomRadioCard: React.FC = ({ value, label, checked, onChange, image }) => ( { ) return ( <> -
- {/* text Input */} -
- - -
- {/* Event Name */} - - - setEvent(e.target.value)} - fullWidth - required - /> - - {/*Event Description */} - - setDescription(e.target.value)} - className="mt-3 p-2 border rounded-md w-full text-gray-200 bg-transparent" - /> -
- {/* Start Date */} + {(contractWriteLoading || isApproving) && } + {!contractWriteLoading && !isApproving &&!isSuccess && ( +
+ + {/* text Input */} +
+ + +
+ {/* Event Name */} + + + setEvent(e.target.value)} fullWidth required /> + + {/*Event Description */} + + setDescription(e.target.value)} + className="mt-3 p-2 border rounded-md w-full text-gray-200 bg-transparent" + /> +
+ {/* Start Date */} + + + setStartDate(convertDateToUnix(new Date(e.target.value)))} + fullWidth + required + className="mt-3" + /> + + {/* End Date */} + + + setEndDate(convertDateToUnix(new Date(e.target.value)))} + fullWidth + required + className="mt-3" + /> + +
+ {/* Event Website */} + + + setWebsite(e.target.value)} + fullWidth + required + /> + + {/* Max Participtexfiletants - - {/* End Date */} - - - setEndDate(convertDateToUnix(new Date(e.target.value)))} - fullWidth - required - className="mt-3" + {/* Payment Method */} + + setCurrency(e.target.value as AcceptedCurrency)} + className="w-full flex flex-col md:flex-row mt-2 gap-5" + // style={{ flexDirection: 'row' }} + > + + + + + + {/* Event Venue Address */} + + setAddress(e.target.value)} + className="mt-3 p-2 border rounded-md w-full text-gray-200 bg-transparent" + /> +
+ {/* Event Radius */} +
+ + +
+ {/* Color */} +
+ + +
+
+ + {price > 0 ? ( +

+ Estimated cost for event : {price} {currency} +

+ ) : null} + + {/* Submit Button */} +
+ +
+ + -
-
- {/* Event Website */} - - - setWebsite(e.target.value)} - fullWidth - required - /> - - {/* Max Participtexfiletants */} - - - setPrice(Number(e.target.value))} - fullWidth - required - /> - - {/* Payment Method */} - - setCurrency(e.target.value as AcceptedCurrency)} - className="w-full flex flex-col md:flex-row mt-2 gap-5" - // style={{ flexDirection: 'row' }} - > - - - - - - {/* Event Venue Address */} - - setAddress(e.target.value)} - className="mt-3 p-2 border rounded-md w-full text-gray-200 bg-transparent" - /> -
- {/* Event Radius */} -
- -
- {/* Color */} -
- - -
-
- - { price > 0 ? ( -

- Estimated cost for event : {price} {currency} -

) : null } - - {/* Submit Button */} -
- -
- - + )} + {!contractWriteLoading && !isApproving && isSuccess && ( +

+ 🎉Event Submitted! +

+ )} ) } diff --git a/src/app/create/components/PreviewMap/PreviewComponent.tsx b/src/app/create/components/PreviewMap/PreviewComponent.tsx index fd82fe4..bb692fb 100644 --- a/src/app/create/components/PreviewMap/PreviewComponent.tsx +++ b/src/app/create/components/PreviewMap/PreviewComponent.tsx @@ -59,7 +59,7 @@ const PreviewComponent = ({ scrollWheelZoom={false} zoomControl={false} dragging={false} - style={{ height: '400px', width: '100%' }} + style={{ height: '400px', width: '500px' }} > From 63a604902aea680e220fe5d4f7cfea139d9b53de Mon Sep 17 00:00:00 2001 From: Magicred-1 Date: Sun, 21 Jan 2024 12:28:30 +0100 Subject: [PATCH 03/20] EventFactory Abi fix --- README.md | 8 +- contracts/contracts/EventsFactory.sol | 13 + pnpm-lock.yaml | 1161 +++++++++++++---- .../Dashboard/EventsDashboardComponent.tsx | 128 +- .../Dashboard/EventsDashboardData.tsx | 39 +- .../Dashboard/EventsDashboardTable.tsx | 109 +- src/app/components/abis/index.ts | 387 +++++- 7 files changed, 1496 insertions(+), 349 deletions(-) diff --git a/README.md b/README.md index 18b2f46..f57239b 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Install dependencies pnpm i ``` -Copy `.env.example` to `.env.local` and set the NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID, NEXT_PUBLIC_INFURA_ID, SESSION_SECRET, NEXT_PUBLIC_CONTRACT_ADDRESS, NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_SECRET, NEXT_PUBLIC_PINATA_API_KEY. +Copy `.env.example` to `.env.local` and set the NEXT_PUBLIC_WALLETCONNECT_PROJECT_ID, NEXT_PUBLIC_INFURA_ID, SESSION_SECRET, NEXT_PUBLIC_CONTRACT_ADDRESS, NEXT_PUBLIC_SUPABASE_URL, NEXT_PUBLIC_SUPABASE_SECRET, NEXT_PUBLIC_PINATA_API_KEY, NEXT_PUBLIC_PINATA_SECRET_API_KEY, NEXT_WEAVE_CONTRACT_ADDRESS, NEXT_WEAVE_LEADERBOARD_CONTRACT_ADDRESS, NEXT_WEAVE_EVENTS_FACTORY_CONTRACT_ADDRESS. To get a WalletConnect project ID, go to [https://cloud.walletconnect.com/sign-in](https://cloud.walletconnect.com/sign-in) Here also the link for Infura : [https://app.infura.io/](https://app.infura.io/) @@ -36,9 +36,9 @@ openssl rand -base64 32 |------------------------|--------------------------------------------| | Weave Contract | 0x5f856baB0F63a833b311fC9d853a14c8762d583d | | Leaderboard Contract | 0x39545602B72Bd4a74FE1f4AF755c15C71C9780F0 | -| Vault Contract | 0x6a6C3b42e1af8BCd9adD11DFaDb9ab8445497914 | -| Event Factory Contract | 0x815257a8A46F2dE5F812DC3232CC0C0c24A7252a | -| Event Contract | X | +| Vault Contract | 0x4BE0E8654e9879877e8A806B839fE122fa0F880C | +| Event Factory Contract | 0x729D4b69401b651f6C868e169C42cb82d6C37F43 | +| Event Contract | 0xA225B8813a3D298b0fA5dD6357f4843B224A4678 | ## Stack diff --git a/contracts/contracts/EventsFactory.sol b/contracts/contracts/EventsFactory.sol index 3a60668..bb537c2 100644 --- a/contracts/contracts/EventsFactory.sol +++ b/contracts/contracts/EventsFactory.sol @@ -163,6 +163,19 @@ contract EventFactory is Ownable { return IEvent(_eventAddress).getManagers(); } + function getAllEventManagers() external view returns (address[] memory) { + address[] memory allEventManagers = new address[](allEvents.length * 5); + uint256 counter = 0; + for (uint256 i = 0; i < allEvents.length; i++) { + address[] memory eventManagers = IEvent(allEvents[i]).getManagers(); + for (uint256 j = 0; j < eventManagers.length; j++) { + allEventManagers[counter] = eventManagers[j]; + counter++; + } + } + return allEventManagers; + } + function calculatingPriceToCreate(uint256 _eventStartDate, uint256 _eventEndDate, uint256 _eventRadius) internal pure returns (uint256) { return ((_eventEndDate - _eventStartDate) / 86400 * 100) + (_eventRadius / 100); } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ca41b0d..528b1b3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -130,7 +130,7 @@ dependencies: version: 1.2.6(typescript@5.0.4) wagmi: specifier: ^1.3.3 - version: 1.3.3(encoding@0.1.13)(lokijs@1.5.12)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) + version: 1.3.3(@types/react@18.2.6)(encoding@0.1.13)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) devDependencies: '@types/leaflet': @@ -347,12 +347,12 @@ packages: - react-dom dev: false - /@coinbase/wallet-sdk@3.6.6(encoding@0.1.13): - resolution: {integrity: sha512-vX+epj/Ttjo7XRwlr3TFUUfW5GTRMvORpERPwiu7z2jl3DSVL4rXLmHt5y6LDPlUVreas2gumdcFbu0fLRG9Jg==} + /@coinbase/wallet-sdk@3.7.2(encoding@0.1.13): + resolution: {integrity: sha512-lIGvXMsgpsQWci/XOMQIJ2nIZ8JUy/L+bvC0wkRaYarr0YylwpXrJ2gRM3hCXPS477pkyO7N/kSiAoRgEXUdJQ==} engines: {node: '>= 10.0.0'} dependencies: '@metamask/safe-event-emitter': 2.0.0 - '@solana/web3.js': 1.76.0(encoding@0.1.13) + '@solana/web3.js': 1.89.1(encoding@0.1.13) bind-decorator: 1.0.11 bn.js: 5.2.1 buffer: 6.0.3 @@ -361,9 +361,9 @@ packages: eth-json-rpc-filters: 5.1.0 eth-rpc-errors: 4.0.2 json-rpc-engine: 6.1.0 - keccak: 3.0.3 - preact: 10.13.2 - qs: 6.11.1 + keccak: 3.0.4 + preact: 10.19.3 + qs: 6.11.2 rxjs: 6.6.7 sha.js: 2.4.11 stream-browserify: 3.0.0 @@ -942,6 +942,10 @@ packages: resolution: {integrity: sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==} dev: false + /@ioredis/commands@1.2.0: + resolution: {integrity: sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==} + dev: false + /@isaacs/cliui@8.0.2: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} @@ -981,18 +985,18 @@ packages: '@jridgewell/resolve-uri': 3.1.0 '@jridgewell/sourcemap-codec': 1.4.14 - /@ledgerhq/connect-kit-loader@1.1.0: - resolution: {integrity: sha512-HUy12FEczoWY2FPubnsm1uOA8tkVWc0j90i47suThV3C9NL2xx69ZAIEU3Ytzs2bwLek9S1Q2S1VQJvA+3Ygkg==} + /@ledgerhq/connect-kit-loader@1.1.8: + resolution: {integrity: sha512-mDJsOucVW8m3Lk2fdQst+P74SgiKebvq1iBk4sXLbADQOwhL9bWGaArvO+tW7jPJZwEfSPWBdHcHoYi11XAwZw==} dev: false - /@lit-labs/ssr-dom-shim@1.1.1: - resolution: {integrity: sha512-kXOeFbfCm4fFf2A3WwVEeQj55tMZa8c8/f9AKHMobQMkzNUfUj+antR3fRPaZJawsa1aZiP/Da3ndpZrwEe4rQ==} + /@lit-labs/ssr-dom-shim@1.1.2: + resolution: {integrity: sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==} dev: false - /@lit/reactive-element@1.6.1: - resolution: {integrity: sha512-va15kYZr7KZNNPZdxONGQzpUr+4sxVu7V/VG7a8mRfPPXUyhEYj5RzXCQmGrlP3tAh0L3HHm5AjBMFYRqlM9SA==} + /@lit/reactive-element@1.6.3: + resolution: {integrity: sha512-QuTgnG52Poic7uM1AN5yJ09QMe0O28e10XzSvWDz02TJiiKee4stsiownEIadWm8nYzyDAyT+gKzUoZmiWQtsQ==} dependencies: - '@lit-labs/ssr-dom-shim': 1.1.1 + '@lit-labs/ssr-dom-shim': 1.1.2 dev: false /@material-tailwind/react@2.1.8(react-dom@18.2.0)(react@18.2.0): @@ -1031,9 +1035,9 @@ packages: resolution: {integrity: sha512-9cIRrfkWvHblSiNDVXsjivqa9Ak0RYo/1H6tqTqTbAx+oBK2Sva0lWDHxGchOqA7bySGUJKAWSNJvH6gdHZ0gQ==} engines: {node: '>=14.0.0'} dependencies: - '@types/debug': 4.1.7 + '@types/debug': 4.1.12 debug: 4.3.4(supports-color@5.5.0) - semver: 7.5.1 + semver: 7.5.4 superstruct: 1.0.3 transitivePeerDependencies: - supports-color @@ -1048,6 +1052,15 @@ packages: tslib: 2.5.0 dev: false + /@motionone/animation@10.17.0: + resolution: {integrity: sha512-ANfIN9+iq1kGgsZxs+Nz96uiNcPLGTXwfNo2Xz/fcJXniPYpaz/Uyrfa+7I5BPLxCP82sh7quVDudf1GABqHbg==} + dependencies: + '@motionone/easing': 10.17.0 + '@motionone/types': 10.17.0 + '@motionone/utils': 10.17.0 + tslib: 2.6.2 + dev: false + /@motionone/dom@10.12.0: resolution: {integrity: sha512-UdPTtLMAktHiqV0atOczNYyDd/d8Cf5fFsd1tua03PqTwwCe/6lwhLSQ8a7TbnQ5SN0gm44N1slBfj+ORIhrqw==} dependencies: @@ -1059,15 +1072,15 @@ packages: tslib: 2.5.0 dev: false - /@motionone/dom@10.16.2: - resolution: {integrity: sha512-bnuHdNbge1FutZXv+k7xub9oPWcF0hsu8y1HTH/qg6av58YI0VufZ3ngfC7p2xhMJMnoh0LXFma2EGTgPeCkeg==} + /@motionone/dom@10.17.0: + resolution: {integrity: sha512-cMm33swRlCX/qOPHWGbIlCl0K9Uwi6X5RiL8Ma6OrlJ/TP7Q+Np5GE4xcZkFptysFjMTi4zcZzpnNQGQ5D6M0Q==} dependencies: - '@motionone/animation': 10.15.1 - '@motionone/generators': 10.15.1 - '@motionone/types': 10.15.1 - '@motionone/utils': 10.15.1 + '@motionone/animation': 10.17.0 + '@motionone/generators': 10.17.0 + '@motionone/types': 10.17.0 + '@motionone/utils': 10.17.0 hey-listen: 1.0.8 - tslib: 2.5.0 + tslib: 2.6.2 dev: false /@motionone/easing@10.15.1: @@ -1077,6 +1090,13 @@ packages: tslib: 2.5.0 dev: false + /@motionone/easing@10.17.0: + resolution: {integrity: sha512-Bxe2wSuLu/qxqW4rBFS5m9tMLOw+QBh8v5A7Z5k4Ul4sTj5jAOfZG5R0bn5ywmk+Fs92Ij1feZ5pmC4TeXA8Tg==} + dependencies: + '@motionone/utils': 10.17.0 + tslib: 2.6.2 + dev: false + /@motionone/generators@10.15.1: resolution: {integrity: sha512-67HLsvHJbw6cIbLA/o+gsm7h+6D4Sn7AUrB/GPxvujse1cGZ38F5H7DzoH7PhX+sjvtDnt2IhFYF2Zp1QTMKWQ==} dependencies: @@ -1085,17 +1105,29 @@ packages: tslib: 2.5.0 dev: false - /@motionone/svelte@10.16.2: - resolution: {integrity: sha512-38xsroKrfK+aHYhuQlE6eFcGy0EwrB43Q7RGjF73j/kRUTcLNu/LAaKiLLsN5lyqVzCgTBVt4TMT/ShWbTbc5Q==} + /@motionone/generators@10.17.0: + resolution: {integrity: sha512-T6Uo5bDHrZWhIfxG/2Aut7qyWQyJIWehk6OB4qNvr/jwA/SRmixwbd7SOrxZi1z5rH3LIeFFBKK1xHnSbGPZSQ==} dependencies: - '@motionone/dom': 10.16.2 - tslib: 2.5.0 + '@motionone/types': 10.17.0 + '@motionone/utils': 10.17.0 + tslib: 2.6.2 + dev: false + + /@motionone/svelte@10.16.4: + resolution: {integrity: sha512-zRVqk20lD1xqe+yEDZhMYgftsuHc25+9JSo+r0a0OWUJFocjSV9D/+UGhX4xgJsuwB9acPzXLr20w40VnY2PQA==} + dependencies: + '@motionone/dom': 10.17.0 + tslib: 2.6.2 dev: false /@motionone/types@10.15.1: resolution: {integrity: sha512-iIUd/EgUsRZGrvW0jqdst8st7zKTzS9EsKkP+6c6n4MPZoQHwiHuVtTQLD6Kp0bsBLhNzKIBlHXponn/SDT4hA==} dev: false + /@motionone/types@10.17.0: + resolution: {integrity: sha512-EgeeqOZVdRUTEHq95Z3t8Rsirc7chN5xFAPMYFobx8TPubkEfRSm5xihmMUkbaR2ErKJTUw3347QDPTHIW12IA==} + dev: false + /@motionone/utils@10.15.1: resolution: {integrity: sha512-p0YncgU+iklvYr/Dq4NobTRdAPv9PveRDUXabPEeOjBLSO/1FNB2phNTZxOxpi1/GZwYpAoECEa0Wam+nsmhSw==} dependencies: @@ -1104,11 +1136,20 @@ packages: tslib: 2.5.0 dev: false - /@motionone/vue@10.16.2: - resolution: {integrity: sha512-7/dEK/nWQXOkJ70bqb2KyNfSWbNvWqKKq1C8juj+0Mg/AorgD8O5wE3naddK0G+aXuNMqRuc4jlsYHHWHtIzVw==} + /@motionone/utils@10.17.0: + resolution: {integrity: sha512-bGwrki4896apMWIj9yp5rAS2m0xyhxblg6gTB/leWDPt+pb410W8lYWsxyurX+DH+gO1zsQsfx2su/c1/LtTpg==} dependencies: - '@motionone/dom': 10.16.2 - tslib: 2.5.0 + '@motionone/types': 10.17.0 + hey-listen: 1.0.8 + tslib: 2.6.2 + dev: false + + /@motionone/vue@10.16.4: + resolution: {integrity: sha512-z10PF9JV6SbjFq+/rYabM+8CVlMokgl8RFGvieSGNTmrkQanfHn+15XBrhG3BgUfvmTeSeyShfOHpG0i9zEdcg==} + deprecated: Motion One for Vue is deprecated. Use Oku Motion instead https://oku-ui.com/motion + dependencies: + '@motionone/dom': 10.17.0 + tslib: 2.6.2 dev: false /@mui/base@5.0.0-beta.31(@types/react@18.2.6)(react-dom@18.2.0)(react@18.2.0): @@ -1392,6 +1433,12 @@ packages: '@noble/hashes': 1.3.2 dev: false + /@noble/curves@1.3.0: + resolution: {integrity: sha512-t01iSXPuN+Eqzb4eBX0S5oubSqXbK/xXa1Ne18Hj8f9pStxztHCE2gfboSp/dZRLSqfuLpRK2nDXDK+W9puocA==} + dependencies: + '@noble/hashes': 1.3.3 + dev: false + /@noble/hashes@1.2.0: resolution: {integrity: sha512-FZfhjEDbT5GRswV3C6uvLPHMiVD6lQBmpoX5+eSiPaMTXte/IKqI5dykDxzZB/WBeK/CDuQRBWarPdi3FNY2zQ==} dev: true @@ -1405,6 +1452,11 @@ packages: engines: {node: '>= 16'} dev: false + /@noble/hashes@1.3.3: + resolution: {integrity: sha512-V7/fPHgl+jsVPXqqeOzT8egNj2iBIVt+ECeMMG8TdcnTikP3oaBtUVqpT/gYCR68aEBJSF+XbYUxStjbFMqIIA==} + engines: {node: '>= 16'} + dev: false + /@noble/secp256k1@1.7.1: resolution: {integrity: sha512-hOUk6AyBFmqVrv7k5WAw/LpszxVbj9gGN4JRkIX52fdFAj1UA61KXmZDvqVEm+pOyec3+fIeZB02LYa/pWOArw==} dev: true @@ -1691,6 +1743,147 @@ packages: '@nomicfoundation/solidity-analyzer-win32-x64-msvc': 0.1.1 dev: true + /@parcel/watcher-android-arm64@2.4.0: + resolution: {integrity: sha512-+fPtO/GsbYX1LJnCYCaDVT3EOBjvSFdQN9Mrzh9zWAOOfvidPWyScTrHIZHHfJBvlHzNA0Gy0U3NXFA/M7PHUA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-darwin-arm64@2.4.0: + resolution: {integrity: sha512-T/At5pansFuQ8VJLRx0C6C87cgfqIYhW2N/kBfLCUvDhCah0EnLLwaD/6MW3ux+rpgkpQAnMELOCTKlbwncwiA==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-darwin-x64@2.4.0: + resolution: {integrity: sha512-vZMv9jl+szz5YLsSqEGCMSllBl1gU1snfbRL5ysJU03MEa6gkVy9OMcvXV1j4g0++jHEcvzhs3Z3LpeEbVmY6Q==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-freebsd-x64@2.4.0: + resolution: {integrity: sha512-dHTRMIplPDT1M0+BkXjtMN+qLtqq24sLDUhmU+UxxLP2TEY2k8GIoqIJiVrGWGomdWsy5IO27aDV1vWyQ6gfHA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm-glibc@2.4.0: + resolution: {integrity: sha512-9NQXD+qk46RwATNC3/UB7HWurscY18CnAPMTFcI9Y8CTbtm63/eex1SNt+BHFinEQuLBjaZwR2Lp+n7pmEJPpQ==} + engines: {node: '>= 10.0.0'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm64-glibc@2.4.0: + resolution: {integrity: sha512-QuJTAQdsd7PFW9jNGaV9Pw+ZMWV9wKThEzzlY3Lhnnwy7iW23qtQFPql8iEaSFMCVI5StNNmONUopk+MFKpiKg==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-arm64-musl@2.4.0: + resolution: {integrity: sha512-oyN+uA9xcTDo/45bwsd6TFHa7Lc7hKujyMlvwrCLvSckvWogndCEoVYFNfZ6JJ2KNL/6fFiGPcbjp8jJmEh5Ng==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-x64-glibc@2.4.0: + resolution: {integrity: sha512-KphV8awJmxU3q52JQvJot0QMu07CIyEjV+2Tb2ZtbucEgqyRcxOBDMsqp1JNq5nuDXtcCC0uHQICeiEz38dPBQ==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-linux-x64-musl@2.4.0: + resolution: {integrity: sha512-7jzcOonpXNWcSijPpKD5IbC6xC7yTibjJw9jviVzZostYLGxbz8LDJLUnLzLzhASPlPGgpeKLtFUMjAAzM+gSA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-wasm@2.3.0: + resolution: {integrity: sha512-ejBAX8H0ZGsD8lSICDNyMbSEtPMWgDL0WFCt/0z7hyf5v8Imz4rAM8xY379mBsECkq/Wdqa5WEDLqtjZ+6NxfA==} + engines: {node: '>= 10.0.0'} + dependencies: + is-glob: 4.0.3 + micromatch: 4.0.5 + dev: false + bundledDependencies: + - napi-wasm + + /@parcel/watcher-win32-arm64@2.4.0: + resolution: {integrity: sha512-NOej2lqlq8bQNYhUMnOD0nwvNql8ToQF+1Zhi9ULZoG+XTtJ9hNnCFfyICxoZLXor4bBPTOnzs/aVVoefYnjIg==} + engines: {node: '>= 10.0.0'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-win32-ia32@2.4.0: + resolution: {integrity: sha512-IO/nM+K2YD/iwjWAfHFMBPz4Zqn6qBDqZxY4j2n9s+4+OuTSRM/y/irksnuqcspom5DjkSeF9d0YbO+qpys+JA==} + engines: {node: '>= 10.0.0'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher-win32-x64@2.4.0: + resolution: {integrity: sha512-pAUyUVjfFjWaf/pShmJpJmNxZhbMvJASUpdes9jL6bTEJ+gDxPRSpXTIemNyNsb9AtbiGXs9XduP1reThmd+dA==} + engines: {node: '>= 10.0.0'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: false + optional: true + + /@parcel/watcher@2.4.0: + resolution: {integrity: sha512-XJLGVL0DEclX5pcWa2N9SX1jCGTDd8l972biNooLFtjneuGqodupPQh6XseXIBBeVIMaaJ7bTcs3qGvXwsp4vg==} + engines: {node: '>= 10.0.0'} + dependencies: + detect-libc: 1.0.3 + is-glob: 4.0.3 + micromatch: 4.0.5 + node-addon-api: 7.1.0 + optionalDependencies: + '@parcel/watcher-android-arm64': 2.4.0 + '@parcel/watcher-darwin-arm64': 2.4.0 + '@parcel/watcher-darwin-x64': 2.4.0 + '@parcel/watcher-freebsd-x64': 2.4.0 + '@parcel/watcher-linux-arm-glibc': 2.4.0 + '@parcel/watcher-linux-arm64-glibc': 2.4.0 + '@parcel/watcher-linux-arm64-musl': 2.4.0 + '@parcel/watcher-linux-x64-glibc': 2.4.0 + '@parcel/watcher-linux-x64-musl': 2.4.0 + '@parcel/watcher-win32-arm64': 2.4.0 + '@parcel/watcher-win32-ia32': 2.4.0 + '@parcel/watcher-win32-x64': 2.4.0 + dev: false + /@peculiar/asn1-schema@2.3.6: resolution: {integrity: sha512-izNRxPoaeJeg/AyH8hER6s+H7p4itk+03QCa4sbxI3lNdseQYCuxzgsuNK8bTXChtLTjpJz6NmXKA73qLa3rCA==} dependencies: @@ -1878,38 +2071,45 @@ packages: resolution: {integrity: sha512-UY+FGM/2jjMkzQLn8pxcHGMaVLh9aEitG3zY2CiY7XHdLiz3bZOwa6oDxNqEMv7zZkV+cj5DOdz0cQ1BP5Hjgw==} dev: false - /@safe-global/safe-apps-provider@0.17.1(encoding@0.1.13)(typescript@5.0.4): + /@safe-global/safe-apps-provider@0.17.1(typescript@5.0.4): resolution: {integrity: sha512-lYfRqrbbK1aKU1/UGkYWc/X7PgySYcumXKc5FB2uuwAs2Ghj8uETuW5BrwPqyjBknRxutFbTv+gth/JzjxAhdQ==} dependencies: - '@safe-global/safe-apps-sdk': 8.0.0(encoding@0.1.13)(typescript@5.0.4) + '@safe-global/safe-apps-sdk': 8.0.0(typescript@5.0.4) events: 3.3.0 transitivePeerDependencies: - bufferutil - - encoding - typescript - utf-8-validate - zod dev: false - /@safe-global/safe-apps-sdk@8.0.0(encoding@0.1.13)(typescript@5.0.4): + /@safe-global/safe-apps-sdk@8.0.0(typescript@5.0.4): resolution: {integrity: sha512-gYw0ki/EAuV1oSyMxpqandHjnthZjYYy+YWpTAzf8BqfXM3ItcZLpjxfg+3+mXW8HIO+3jw6T9iiqEXsqHaMMw==} dependencies: - '@safe-global/safe-gateway-typescript-sdk': 3.7.3(encoding@0.1.13) + '@safe-global/safe-gateway-typescript-sdk': 3.14.0 viem: 1.2.6(typescript@5.0.4) transitivePeerDependencies: - bufferutil - - encoding - typescript - utf-8-validate - zod dev: false - /@safe-global/safe-gateway-typescript-sdk@3.7.3(encoding@0.1.13): - resolution: {integrity: sha512-O6JCgXNZWG0Vv8FnOEjKfcbsP0WxGvoPJk5ufqUrsyBlHup16It6oaLnn+25nXFLBZOHI1bz8429JlqAc2t2hg==} + /@safe-global/safe-apps-sdk@8.1.0(typescript@5.0.4): + resolution: {integrity: sha512-XJbEPuaVc7b9n23MqlF6c+ToYIS3f7P2Sel8f3cSBQ9WORE4xrSuvhMpK9fDSFqJ7by/brc+rmJR/5HViRr0/w==} dependencies: - cross-fetch: 3.1.5(encoding@0.1.13) + '@safe-global/safe-gateway-typescript-sdk': 3.14.0 + viem: 1.2.6(typescript@5.0.4) transitivePeerDependencies: - - encoding + - bufferutil + - typescript + - utf-8-validate + - zod + dev: false + + /@safe-global/safe-gateway-typescript-sdk@3.14.0: + resolution: {integrity: sha512-/dqU66RvHw50n+7x3nwnJedq8V6iLQyoWitNdjx5cFTBmae+rpP+LvHq+LqZfXJVkB1qNytMdjFjdyES0t79gQ==} + engines: {node: '>=16'} dev: false /@scure/base@1.1.1: @@ -2022,28 +2222,27 @@ packages: buffer: 6.0.3 dev: false - /@solana/web3.js@1.76.0(encoding@0.1.13): - resolution: {integrity: sha512-aJtF/nTs+9St+KtTK/wgVJ+SinfjYzn+3w1ygYIPw8ST6LH+qHBn8XkodgDTwlv/xzNkaVz1kkUDOZ8BPXyZWA==} + /@solana/web3.js@1.89.1(encoding@0.1.13): + resolution: {integrity: sha512-t9TTLtPQxtQB3SAf/5E8xPXfVDsC6WGOsgKY02l2cbe0HLymT7ynE8Hu48Lk5qynHCquj6nhISfEHcjMkYpu/A==} dependencies: '@babel/runtime': 7.23.8 - '@noble/curves': 1.0.0 - '@noble/hashes': 1.3.0 + '@noble/curves': 1.3.0 + '@noble/hashes': 1.3.3 '@solana/buffer-layout': 4.0.1 - agentkeepalive: 4.3.0 + agentkeepalive: 4.5.0 bigint-buffer: 1.1.5 bn.js: 5.2.1 borsh: 0.7.0 bs58: 4.0.1 buffer: 6.0.3 fast-stable-stringify: 1.0.0 - jayson: 3.7.0 - node-fetch: 2.6.11(encoding@0.1.13) - rpc-websockets: 7.5.1 + jayson: 4.1.0 + node-fetch: 2.7.0(encoding@0.1.13) + rpc-websockets: 7.9.0 superstruct: 0.14.2 transitivePeerDependencies: - bufferutil - encoding - - supports-color - utf-8-validate dev: false @@ -2203,7 +2402,7 @@ packages: '@supabase/node-fetch': 2.6.15 '@types/phoenix': 1.6.4 '@types/ws': 8.5.10 - ws: 8.16.0 + ws: 8.16.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) transitivePeerDependencies: - bufferutil - utf-8-validate @@ -2235,33 +2434,33 @@ packages: tslib: 2.6.2 dev: false - /@tanstack/query-core@4.29.5: - resolution: {integrity: sha512-xXIiyQ/4r9KfaJ3k6kejqcaqFXXBTzN2aOJ5H1J6aTJE9hl/nbgAdfF6oiIu0CD5xowejJEJ6bBg8TO7BN4NuQ==} + /@tanstack/query-core@4.36.1: + resolution: {integrity: sha512-DJSilV5+ytBP1FbFcEJovv4rnnm/CokuVvrBEtW/Va9DvuJ3HksbXUJEpI0aV1KtuL4ZoO9AVE6PyNLzF7tLeA==} dev: false - /@tanstack/query-persist-client-core@4.29.5: - resolution: {integrity: sha512-IjLtEZiEUnzpcFVdHoZGqtjv2g0smLK5WOWk8hP/2ndlXe5kaSbtCKWO2WFbw7yWPYVMM2m9zyglZqg5kU1DMA==} + /@tanstack/query-persist-client-core@4.36.1: + resolution: {integrity: sha512-eocgCeI7D7TRv1IUUBMfVwOI0wdSmMkBIbkKhqEdTrnUHUQEeOaYac8oeZk2cumAWJdycu6P/wB+WqGynTnzXg==} dependencies: - '@tanstack/query-core': 4.29.5 + '@tanstack/query-core': 4.36.1 dev: false - /@tanstack/query-sync-storage-persister@4.29.5: - resolution: {integrity: sha512-A5K2owrQ1z/Ipndt/thv3vMXjRPOT02jwlXM51OV5IHg4FLQ9vlXvImYWlBoHmY1MMl91x9bqRgz0gX6hnr14g==} + /@tanstack/query-sync-storage-persister@4.36.1: + resolution: {integrity: sha512-yMEt5hWe2+1eclf1agMtXHnPIkxEida0lYWkfdhR8U6KXk/lO4Vca6piJmhKI85t0NHlx3l/z6zX+t/Fn5O9NA==} dependencies: - '@tanstack/query-persist-client-core': 4.29.5 + '@tanstack/query-persist-client-core': 4.36.1 dev: false - /@tanstack/react-query-persist-client@4.29.5(@tanstack/react-query@4.29.5): - resolution: {integrity: sha512-zvQChSqO/HpRHWjCn+4L4M45Yr2eslogJcQr2HFxRw27Wj/5WlFYhnQFo5SCCR+gZh09tMnkzD+zFhN76wMEGw==} + /@tanstack/react-query-persist-client@4.36.1(@tanstack/react-query@4.36.1): + resolution: {integrity: sha512-32I5b9aAu4NCiXZ7Te/KEQLfHbYeTNriVPrKYcvEThnZ9tlW01vLcSoxpUIsMYRsembvJUUAkzYBAiZHLOd6pQ==} peerDependencies: - '@tanstack/react-query': 4.29.5 + '@tanstack/react-query': ^4.36.1 dependencies: - '@tanstack/query-persist-client-core': 4.29.5 - '@tanstack/react-query': 4.29.5(react-dom@18.2.0)(react@18.2.0) + '@tanstack/query-persist-client-core': 4.36.1 + '@tanstack/react-query': 4.36.1(react-dom@18.2.0)(react@18.2.0) dev: false - /@tanstack/react-query@4.29.5(react-dom@18.2.0)(react@18.2.0): - resolution: {integrity: sha512-F87cibC3s3eG0Q90g2O+hqntpCrudKFnR8P24qkH9uccEhXErnJxBC/AAI4cJRV2bfMO8IeGZQYf3WyYgmSg0w==} + /@tanstack/react-query@4.36.1(react-dom@18.2.0)(react@18.2.0): + resolution: {integrity: sha512-y7ySVHFyyQblPl3J3eQBWpXZkliroki3ARnBKsdJchlgt7yJLRDUcf4B8soufgiYt3pEQIkBWBx1N9/ZPIeUWw==} peerDependencies: react: ^16.8.0 || ^17.0.0 || ^18.0.0 react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 @@ -2272,7 +2471,7 @@ packages: react-native: optional: true dependencies: - '@tanstack/query-core': 4.29.5 + '@tanstack/query-core': 4.36.1 react: 18.2.0 react-dom: 18.2.0(react@18.2.0) use-sync-external-store: 1.2.0(react@18.2.0) @@ -2309,6 +2508,12 @@ packages: '@types/node': 20.1.4 dev: false + /@types/connect@3.4.38: + resolution: {integrity: sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==} + dependencies: + '@types/node': 20.1.4 + dev: false + /@types/content-disposition@0.5.5: resolution: {integrity: sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==} dev: false @@ -2326,10 +2531,10 @@ packages: '@types/node': 20.1.4 dev: false - /@types/debug@4.1.7: - resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==} + /@types/debug@4.1.12: + resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==} dependencies: - '@types/ms': 0.7.31 + '@types/ms': 0.7.34 dev: false /@types/express-serve-static-core@4.17.35: @@ -2411,8 +2616,8 @@ packages: resolution: {integrity: sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA==} dev: false - /@types/ms@0.7.31: - resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==} + /@types/ms@0.7.34: + resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} dev: false /@types/node@12.20.55: @@ -2511,8 +2716,8 @@ packages: '@types/node': 20.1.4 dev: false - /@types/trusted-types@2.0.3: - resolution: {integrity: sha512-NfQ4gyz38SL8sDNrSixxU2Os1a5xcdFxipAFxYEuLUlvU2uDwS4NUpsImcf1//SlWItCVMMLiylsxbmNMToV/g==} + /@types/trusted-types@2.0.7: + resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==} dev: false /@types/ws@7.4.7: @@ -2613,7 +2818,7 @@ packages: typescript: 5.0.4 dev: false - /@wagmi/connectors@2.6.2(@wagmi/chains@1.3.0)(encoding@0.1.13)(lokijs@1.5.12)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): + /@wagmi/connectors@2.6.2(@wagmi/chains@1.3.0)(encoding@0.1.13)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): resolution: {integrity: sha512-S6ieyh3jUmECOk70tl6ZDsknRF1zUB3jtj3LaOYc+GQmjynR24xQaG9HigjgLuHFINNsd6JEEWQ3pO+lD56c3Q==} peerDependencies: '@wagmi/chains': '>=1.3.0' @@ -2625,12 +2830,12 @@ packages: typescript: optional: true dependencies: - '@coinbase/wallet-sdk': 3.6.6(encoding@0.1.13) - '@ledgerhq/connect-kit-loader': 1.1.0 - '@safe-global/safe-apps-provider': 0.17.1(encoding@0.1.13)(typescript@5.0.4) - '@safe-global/safe-apps-sdk': 8.0.0(encoding@0.1.13)(typescript@5.0.4) + '@coinbase/wallet-sdk': 3.7.2(encoding@0.1.13) + '@ledgerhq/connect-kit-loader': 1.1.8 + '@safe-global/safe-apps-provider': 0.17.1(typescript@5.0.4) + '@safe-global/safe-apps-sdk': 8.1.0(typescript@5.0.4) '@wagmi/chains': 1.3.0(typescript@5.0.4) - '@walletconnect/ethereum-provider': 2.8.4(@walletconnect/modal@2.5.4)(encoding@0.1.13)(lokijs@1.5.12) + '@walletconnect/ethereum-provider': 2.8.4(@walletconnect/modal@2.5.4)(encoding@0.1.13) '@walletconnect/legacy-provider': 2.0.0(encoding@0.1.13) '@walletconnect/modal': 2.5.4(react@18.2.0) abitype: 0.8.7(typescript@5.0.4) @@ -2638,17 +2843,27 @@ packages: typescript: 5.0.4 viem: 1.2.6(typescript@5.0.4) transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - encoding - - lokijs - react - supports-color - utf-8-validate - zod dev: false - /@wagmi/core@1.3.3(encoding@0.1.13)(lokijs@1.5.12)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): + /@wagmi/core@1.3.3(@types/react@18.2.6)(encoding@0.1.13)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): resolution: {integrity: sha512-zjFWnPPcPKHY9t4j4aIyq4WlMTw/ucxYmmpwszK5ylHPnTbK1bWrGCtsrF0tIGWRTzEFVhJ/s3L4+qGLmoyu3A==} peerDependencies: typescript: '>=5.0.4' @@ -2658,47 +2873,69 @@ packages: optional: true dependencies: '@wagmi/chains': 1.3.0(typescript@5.0.4) - '@wagmi/connectors': 2.6.2(@wagmi/chains@1.3.0)(encoding@0.1.13)(lokijs@1.5.12)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) + '@wagmi/connectors': 2.6.2(@wagmi/chains@1.3.0)(encoding@0.1.13)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) abitype: 0.8.7(typescript@5.0.4) eventemitter3: 4.0.7 typescript: 5.0.4 viem: 1.2.6(typescript@5.0.4) - zustand: 4.3.8(react@18.2.0) + zustand: 4.4.7(@types/react@18.2.6)(react@18.2.0) transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@types/react' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - encoding - immer - - lokijs - react - supports-color - utf-8-validate - zod dev: false - /@walletconnect/core@2.8.4(lokijs@1.5.12): + /@walletconnect/core@2.8.4: resolution: {integrity: sha512-3CQHud4As0kPRvlW1w/wSWS2F3yXlAo5kSEJyRWLRPqXG+aSCVWM8cVM8ch5yoeyNIfOHhEINdsYMuJG1+yIJQ==} dependencies: '@walletconnect/heartbeat': 1.2.1 '@walletconnect/jsonrpc-provider': 1.0.13 '@walletconnect/jsonrpc-types': 1.0.3 '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/jsonrpc-ws-connection': 1.0.11 - '@walletconnect/keyvaluestorage': 1.0.2(lokijs@1.5.12) + '@walletconnect/jsonrpc-ws-connection': 1.0.14 + '@walletconnect/keyvaluestorage': 1.1.1 '@walletconnect/logger': 2.0.1 '@walletconnect/relay-api': 1.0.9 '@walletconnect/relay-auth': 1.0.4 '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.8.4(lokijs@1.5.12) - '@walletconnect/utils': 2.8.4(lokijs@1.5.12) + '@walletconnect/types': 2.8.4 + '@walletconnect/utils': 2.8.4 events: 3.3.0 lodash.isequal: 4.5.0 uint8arrays: 3.1.1 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - - lokijs + - supports-color - utf-8-validate dev: false @@ -2727,7 +2964,7 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/ethereum-provider@2.8.4(@walletconnect/modal@2.5.4)(encoding@0.1.13)(lokijs@1.5.12): + /@walletconnect/ethereum-provider@2.8.4(@walletconnect/modal@2.5.4)(encoding@0.1.13): resolution: {integrity: sha512-z7Yz4w8t3eEFv8vQ8DLCgDWPah2aIIyC0iQdwhXgJenQTVuz7JJZRrJUUntzudipHK/owA394c1qTPF0rsMSeQ==} peerDependencies: '@walletconnect/modal': '>=2' @@ -2740,16 +2977,27 @@ packages: '@walletconnect/jsonrpc-types': 1.0.3 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/modal': 2.5.4(react@18.2.0) - '@walletconnect/sign-client': 2.8.4(lokijs@1.5.12) - '@walletconnect/types': 2.8.4(lokijs@1.5.12) - '@walletconnect/universal-provider': 2.8.4(encoding@0.1.13)(lokijs@1.5.12) - '@walletconnect/utils': 2.8.4(lokijs@1.5.12) + '@walletconnect/sign-client': 2.8.4 + '@walletconnect/types': 2.8.4 + '@walletconnect/universal-provider': 2.8.4(encoding@0.1.13) + '@walletconnect/utils': 2.8.4 events: 3.3.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - encoding - - lokijs + - supports-color - utf-8-validate dev: false @@ -2773,7 +3021,7 @@ packages: dependencies: '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/safe-json': 1.0.2 - cross-fetch: 3.1.5(encoding@0.1.13) + cross-fetch: 3.1.8(encoding@0.1.13) tslib: 1.14.1 transitivePeerDependencies: - encoding @@ -2802,33 +3050,42 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/jsonrpc-ws-connection@1.0.11: - resolution: {integrity: sha512-TiFJ6saasKXD+PwGkm5ZGSw0837nc6EeFmurSPgIT/NofnOV4Tv7CVJqGQN0rQYoJUSYu21cwHNYaFkzNpUN+w==} + /@walletconnect/jsonrpc-ws-connection@1.0.14: + resolution: {integrity: sha512-Jsl6fC55AYcbkNVkwNM6Jo+ufsuCQRqViOQ8ZBPH9pRREHH9welbBiszuTLqEJiQcO/6XfFDl6bzCJIkrEi8XA==} dependencies: '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/safe-json': 1.0.2 events: 3.3.0 - tslib: 1.14.1 ws: 7.5.9 transitivePeerDependencies: - bufferutil - utf-8-validate dev: false - /@walletconnect/keyvaluestorage@1.0.2(lokijs@1.5.12): - resolution: {integrity: sha512-U/nNG+VLWoPFdwwKx0oliT4ziKQCEoQ27L5Hhw8YOFGA2Po9A9pULUYNWhDgHkrb0gYDNt//X7wABcEWWBd3FQ==} + /@walletconnect/keyvaluestorage@1.1.1: + resolution: {integrity: sha512-V7ZQq2+mSxAq7MrRqDxanTzu2RcElfK1PfNYiaVnJgJ7Q7G7hTVwF8voIBx92qsRyGHZihrwNPHuZd1aKkd0rA==} peerDependencies: '@react-native-async-storage/async-storage': 1.x - lokijs: 1.x peerDependenciesMeta: '@react-native-async-storage/async-storage': optional: true - lokijs: - optional: true dependencies: - lokijs: 1.5.12 - safe-json-utils: 1.1.1 - tslib: 1.14.1 + '@walletconnect/safe-json': 1.0.2 + idb-keyval: 6.2.1 + unstorage: 1.10.1(idb-keyval@6.2.1) + transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' + - '@upstash/redis' + - '@vercel/kv' + - supports-color dev: false /@walletconnect/legacy-client@2.0.0: @@ -2852,7 +3109,7 @@ packages: '@walletconnect/legacy-types': 2.0.0 '@walletconnect/legacy-utils': 2.0.0 copy-to-clipboard: 3.3.3 - preact: 10.13.2 + preact: 10.19.3 qrcode: 1.5.3 dev: false @@ -2957,22 +3214,33 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/sign-client@2.8.4(lokijs@1.5.12): + /@walletconnect/sign-client@2.8.4: resolution: {integrity: sha512-eRvWtKBAgzo/rbIkw+rkKco2ulSW8Wor/58UsOBsl9DKr1rIazZd4ZcUdaTjg9q8AT1476IQakCAIuv+1FvJwQ==} dependencies: - '@walletconnect/core': 2.8.4(lokijs@1.5.12) + '@walletconnect/core': 2.8.4 '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.1 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/logger': 2.0.1 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.8.4(lokijs@1.5.12) - '@walletconnect/utils': 2.8.4(lokijs@1.5.12) + '@walletconnect/types': 2.8.4 + '@walletconnect/utils': 2.8.4 events: 3.3.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - - lokijs + - supports-color - utf-8-validate dev: false @@ -2982,21 +3250,32 @@ packages: tslib: 1.14.1 dev: false - /@walletconnect/types@2.8.4(lokijs@1.5.12): + /@walletconnect/types@2.8.4: resolution: {integrity: sha512-Fgqe87R7rjMOGSvx28YPLTtXM6jj+oUOorx8cE+jEw2PfpWp5myF21aCdaMBR39h0QHij5H1Z0/W9e7gm4oC1Q==} dependencies: '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.1 '@walletconnect/jsonrpc-types': 1.0.3 - '@walletconnect/keyvaluestorage': 1.0.2(lokijs@1.5.12) + '@walletconnect/keyvaluestorage': 1.1.1 '@walletconnect/logger': 2.0.1 events: 3.3.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' - - lokijs + - '@upstash/redis' + - '@vercel/kv' + - supports-color dev: false - /@walletconnect/universal-provider@2.8.4(encoding@0.1.13)(lokijs@1.5.12): + /@walletconnect/universal-provider@2.8.4(encoding@0.1.13): resolution: {integrity: sha512-JRpOXKIciRMzd03zZxM1WDsYHo/ZS86zZrZ1aCHW1d45ZLP7SbGPRHzZgBY3xrST26yTvWIlRfTUEYn50fzB1g==} dependencies: '@walletconnect/jsonrpc-http-connection': 1.0.7(encoding@0.1.13) @@ -3004,19 +3283,30 @@ packages: '@walletconnect/jsonrpc-types': 1.0.3 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/logger': 2.0.1 - '@walletconnect/sign-client': 2.8.4(lokijs@1.5.12) - '@walletconnect/types': 2.8.4(lokijs@1.5.12) - '@walletconnect/utils': 2.8.4(lokijs@1.5.12) + '@walletconnect/sign-client': 2.8.4 + '@walletconnect/types': 2.8.4 + '@walletconnect/utils': 2.8.4 events: 3.3.0 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - encoding - - lokijs + - supports-color - utf-8-validate dev: false - /@walletconnect/utils@2.8.4(lokijs@1.5.12): + /@walletconnect/utils@2.8.4: resolution: {integrity: sha512-NGw6BINYNeT9JrQrnxldAPheO2ymRrwGrgfExZMyrkb1MShnIX4nzo4KirKInM4LtrY6AA/v0Lu3ooUdfO+xIg==} dependencies: '@stablelib/chacha20poly1305': 1.0.1 @@ -3027,15 +3317,26 @@ packages: '@walletconnect/relay-api': 1.0.9 '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.8.4(lokijs@1.5.12) + '@walletconnect/types': 2.8.4 '@walletconnect/window-getters': 1.0.1 '@walletconnect/window-metadata': 1.0.1 detect-browser: 5.3.0 query-string: 7.1.3 uint8arrays: 3.1.1 transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' - - lokijs + - '@upstash/redis' + - '@vercel/kv' + - supports-color dev: false /@walletconnect/window-getters@1.0.1: @@ -3137,6 +3438,12 @@ packages: acorn: 8.8.2 dev: false + /acorn@8.11.3: + resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} + engines: {node: '>=0.4.0'} + hasBin: true + dev: false + /acorn@8.8.2: resolution: {integrity: sha512-xjIYgE8HBrkpd/sJqOGNspf8uHG+NOHGOw6a/Urj8taM2EXfdNAH2oFcPeIFfsv3+kz/mJrS5VuMqbNLjCa2vw==} engines: {node: '>=0.4.0'} @@ -3169,15 +3476,11 @@ packages: - supports-color dev: true - /agentkeepalive@4.3.0: - resolution: {integrity: sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==} + /agentkeepalive@4.5.0: + resolution: {integrity: sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==} engines: {node: '>= 8.0.0'} dependencies: - debug: 4.3.4(supports-color@5.5.0) - depd: 2.0.0 humanize-ms: 1.2.1 - transitivePeerDependencies: - - supports-color dev: false /aggregate-error@3.1.0: @@ -3364,7 +3667,7 @@ packages: /async-mutex@0.2.6: resolution: {integrity: sha512-Hs4R+4SPgamu6rSGW8C7cV9gaWUKEHykfzCCvIRuaVv636Ju10ZdeUbvb4TBEW0INuq2DHZqXbK4Nd3yG4RaRw==} dependencies: - tslib: 2.5.0 + tslib: 2.6.2 dev: false /asynciterator.prototype@1.0.0: @@ -3603,7 +3906,7 @@ packages: engines: {node: '>=6.14.2'} requiresBuild: true dependencies: - node-gyp-build: 4.6.0 + node-gyp-build: 4.8.0 dev: false /busboy@1.6.0: @@ -3734,6 +4037,12 @@ packages: safe-buffer: 5.2.1 dev: true + /citty@0.1.5: + resolution: {integrity: sha512-AS7n5NSc0OQVMV9v6wt3ByujNIrne0/cTjiC2MYqhvao57VNfiuVksTSr2p17nVOhEr2KtqiAkGwHcgMC/qUuQ==} + dependencies: + consola: 3.2.3 + dev: false + /class-is@1.1.0: resolution: {integrity: sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw==} dev: false @@ -3769,6 +4078,15 @@ packages: resolution: {integrity: sha512-IV3Ou0jSMzZrd3pZ48nLkT9DA7Ag1pnPzaiQhpW7c3RbcqqzvzzVu+L8gfqMp/8IM2MQtSiqaCxrrcfu8I8rMA==} dev: false + /clipboardy@4.0.0: + resolution: {integrity: sha512-5mOlNS0mhX0707P2I0aZ2V/cmHUEO/fL7VFLqszkhUsxt7RwnmrInf/eEQKlf5GzvYeHIjT+Ov1HRfNmymlG0w==} + engines: {node: '>=18'} + dependencies: + execa: 8.0.1 + is-wsl: 3.1.0 + is64bit: 2.0.0 + dev: false + /cliui@6.0.0: resolution: {integrity: sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==} dependencies: @@ -3800,6 +4118,11 @@ packages: engines: {node: '>=6'} dev: false + /cluster-key-slot@1.1.2: + resolution: {integrity: sha512-RMr0FhtfXemyinomL4hrWcYJxmX6deFdCxpJzhDttxgO1+bcCnkk+9drydLVDmAMG7NE6aN/fl4F7ucU/90gAA==} + engines: {node: '>=0.10.0'} + dev: false + /color-convert@1.9.3: resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} dependencies: @@ -3867,15 +4190,24 @@ packages: resize-observer-polyfill: 1.5.1 styled-components: 5.3.10(react-dom@18.2.0)(react-is@18.2.0)(react@18.2.0) viem: 1.2.6(typescript@5.0.4) - wagmi: 1.3.3(encoding@0.1.13)(lokijs@1.5.12)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) + wagmi: 1.3.3(@types/react@18.2.6)(encoding@0.1.13)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) transitivePeerDependencies: - react-is dev: false + /consola@3.2.3: + resolution: {integrity: sha512-I5qxpzLv+sJhTVEoLYNcTW+bThDCPsit0vLNKShZx6rLtpilNpmmeTPaeqJb9ZE9dV3DGaeby6Vuhrw38WjeyQ==} + engines: {node: ^14.18.0 || >=16.10.0} + dev: false + /convert-source-map@1.9.0: resolution: {integrity: sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==} dev: false + /cookie-es@1.0.0: + resolution: {integrity: sha512-mWYvfOLrfEc996hlKcdABeIiPHUPC6DM2QYZdGGOvhOTbA3tjm2eBwqlJpoFdjC89NI4Qt6h0Pu06Mp+1Pj5OQ==} + dev: false + /cookie@0.4.2: resolution: {integrity: sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==} engines: {node: '>= 0.6'} @@ -3930,10 +4262,10 @@ packages: sha.js: 2.4.11 dev: true - /cross-fetch@3.1.5(encoding@0.1.13): - resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==} + /cross-fetch@3.1.8(encoding@0.1.13): + resolution: {integrity: sha512-cvA+JwZoU0Xq+h6WkMvAUqPEYy92Obet6UdKLfW60qn99ftItKjB5T+BkyWOFWe2pUyfQ+IJHmpOTznqk1M6Kg==} dependencies: - node-fetch: 2.6.7(encoding@0.1.13) + node-fetch: 2.7.0(encoding@0.1.13) transitivePeerDependencies: - encoding dev: false @@ -4058,6 +4390,10 @@ packages: object-keys: 1.1.1 dev: false + /defu@6.1.4: + resolution: {integrity: sha512-mEQCMmwJu317oSz8CwdIOdwf3xMif1ttiM8LTufzc3g6kR+9Pe236twL8j3IYT1F7GfRgGcW6MWxzZjLIkuHIg==} + dev: false + /delay@5.0.0: resolution: {integrity: sha512-ReEBKkIfe4ya47wlPYf/gu5ib6yUG0/Aez0JQZQz94kiWtRQvZIQbTiehsnwHvLSWJnQdhVeqYue7Id1dKr0qw==} engines: {node: '>=10'} @@ -4068,19 +4404,35 @@ packages: engines: {node: '>=0.4.0'} dev: false + /denque@2.1.0: + resolution: {integrity: sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw==} + engines: {node: '>=0.10'} + dev: false + /depd@2.0.0: resolution: {integrity: sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==} engines: {node: '>= 0.8'} + dev: true /dequal@2.0.3: resolution: {integrity: sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==} engines: {node: '>=6'} dev: false + /destr@2.0.2: + resolution: {integrity: sha512-65AlobnZMiCET00KaFFjUefxDX0khFA/E4myqZ7a6Sq1yZtR8+FVIvilVX66vF2uobSumxooYZChiRPCKNqhmg==} + dev: false + /detect-browser@5.3.0: resolution: {integrity: sha512-53rsFbGdwMwlF7qvCt0ypLM5V5/Mbl0szB7GPN8y9NCcbknYOeVVXdrXEq+90IwAfrrzt6Hd+u2E2ntakICU8w==} dev: false + /detect-libc@1.0.3: + resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} + engines: {node: '>=0.10'} + hasBin: true + dev: false + /didyoumean@1.2.2: resolution: {integrity: sha512-gxtyfqMg7GKyhQmb056K7M3xszy/myH8w+B4RT+QXBQsvAOdc3XymqDDPHx1BgPgsdAA5SIifona89YtRATDzw==} @@ -4130,7 +4482,7 @@ packages: end-of-stream: 1.4.4 inherits: 2.0.4 readable-stream: 3.6.2 - stream-shift: 1.0.1 + stream-shift: 1.0.3 dev: false /eastasianwidth@0.2.0: @@ -4758,6 +5110,21 @@ packages: safe-buffer: 5.2.1 dev: true + /execa@8.0.1: + resolution: {integrity: sha512-VyhnebXciFV2DESc+p6B+y0LjSm0krU4OgJN44qFAhBY0TJ+1V61tYD2+wHusZ6F9n5K+vl8k0sTy7PEfV4qpg==} + engines: {node: '>=16.17'} + dependencies: + cross-spawn: 7.0.3 + get-stream: 8.0.1 + human-signals: 5.0.0 + is-stream: 3.0.0 + merge-stream: 2.0.0 + npm-run-path: 5.2.0 + onetime: 6.0.0 + signal-exit: 4.1.0 + strip-final-newline: 3.0.0 + dev: false + /eyes@0.1.8: resolution: {integrity: sha512-GipyPsXO1anza0AOZdy69Im7hGFCNB7Y/NGjDlZGJ3GJJLtwNSb2vrzYrTYJRrRloVx7pl+bhUaTB8yiccPvFQ==} engines: {node: '> 0.1.90'} @@ -4789,8 +5156,8 @@ packages: resolution: {integrity: sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==} dev: false - /fast-redact@3.1.2: - resolution: {integrity: sha512-+0em+Iya9fKGfEQGcd62Yv6onjBmmhV1uh86XVfOU8VwAe6kaFdQCWI9s0/Nnugx5Vd9tdbZ7e6gE2tR9dzXdw==} + /fast-redact@3.3.0: + resolution: {integrity: sha512-6T5V1QK1u4oF+ATxs1lWUmlEk6P2T9HqJG3e2DnHOdVgZy2rFJBoEnrIedcTXlkAHU/zKC+7KETJ+KGGKwxgMQ==} engines: {node: '>=6'} dev: false @@ -5011,6 +5378,15 @@ packages: hasown: 2.0.0 dev: false + /get-port-please@3.1.2: + resolution: {integrity: sha512-Gxc29eLs1fbn6LQ4jSU4vXjlwyZhF5HsGuMAa7gqBP4Rw4yxxltyDUuF5MBclFzDTXO+ACchGQoeela4DSfzdQ==} + dev: false + + /get-stream@8.0.1: + resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} + engines: {node: '>=16'} + dev: false + /get-symbol-description@1.0.0: resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==} engines: {node: '>= 0.4'} @@ -5139,6 +5515,19 @@ packages: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} dev: false + /h3@1.10.0: + resolution: {integrity: sha512-Tw1kcIC+AeimwRmviiObaD5EB430Yt+lTgOxLJxNr96Vd/fGRu04EF7aKfOAcpwKCI+U2JlbxOLhycD86p3Ciw==} + dependencies: + cookie-es: 1.0.0 + defu: 6.1.4 + destr: 2.0.2 + iron-webcrypto: 1.0.0 + radix3: 1.1.0 + ufo: 1.3.2 + uncrypto: 0.1.3 + unenv: 1.9.0 + dev: false + /hardhat@2.19.4(typescript@5.0.4): resolution: {integrity: sha512-fTQJpqSt3Xo9Mn/WrdblNGAfcANM6XC3tAEi6YogB4s02DmTf93A8QsGb8uR0KR8TFcpcS8lgiW4ugAIYpnbrQ==} hasBin: true @@ -5310,6 +5699,11 @@ packages: toidentifier: 1.0.1 dev: true + /http-shutdown@1.2.2: + resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==} + engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} + dev: false + /https-proxy-agent@5.0.1: resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==} engines: {node: '>= 6'} @@ -5320,6 +5714,11 @@ packages: - supports-color dev: true + /human-signals@5.0.0: + resolution: {integrity: sha512-AXcZb6vzzrFAUE61HnN4mpLqd/cSIwNQjtNWR0euPm6y0iqx3G4gOXaIDdtdDwZmhwe82LA6+zinmW4UBWVePQ==} + engines: {node: '>=16.17.0'} + dev: false + /humanize-ms@1.2.1: resolution: {integrity: sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==} dependencies: @@ -5339,6 +5738,10 @@ packages: dependencies: safer-buffer: 2.1.2 + /idb-keyval@6.2.1: + resolution: {integrity: sha512-8Sb3veuYCyrZL+VBt9LJfZjLUPWVvqn8tG28VqYNFCo43KHcKuq+b4EiXGeuaLAQWL2YmyDgMp2aSpH9JHsEQg==} + dev: false + /ieee754@1.2.1: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} @@ -5402,6 +5805,23 @@ packages: fp-ts: 1.19.3 dev: true + /ioredis@5.3.2: + resolution: {integrity: sha512-1DKMMzlIHM02eBBVOFQ1+AolGjs6+xEcM4PDL7NqOS6szq7H9jSaEkIUH6/a5Hl241LzW6JLSiAbNvTQjUupUA==} + engines: {node: '>=12.22.0'} + dependencies: + '@ioredis/commands': 1.2.0 + cluster-key-slot: 1.1.2 + debug: 4.3.4(supports-color@5.5.0) + denque: 2.1.0 + lodash.defaults: 4.2.0 + lodash.isarguments: 3.1.0 + redis-errors: 1.2.0 + redis-parser: 3.0.0 + standard-as-callback: 2.1.0 + transitivePeerDependencies: + - supports-color + dev: false + /ip-regex@4.3.0: resolution: {integrity: sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==} engines: {node: '>=8'} @@ -5438,11 +5858,15 @@ packages: buffer: 6.0.3 dev: false + /iron-webcrypto@1.0.0: + resolution: {integrity: sha512-anOK1Mktt8U1Xi7fCM3RELTuYbnFikQY5VtrDj7kPgpejV7d43tWKhzgioO0zpkazLEL/j/iayRqnJhrGfqUsg==} + dev: false + /is-arguments@1.1.1: resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} engines: {node: '>= 0.4'} dependencies: - call-bind: 1.0.2 + call-bind: 1.0.5 has-tostringtag: 1.0.0 dev: false @@ -5507,6 +5931,12 @@ packages: has-tostringtag: 1.0.0 dev: false + /is-docker@3.0.0: + resolution: {integrity: sha512-eljcgEDlEns/7AXFosB5K/2nCM4P7FQPkGc/DWLy5rmFEWvZayGrik1d9/QIY5nJ4f9YsVvBkA6kJpHn9rISdQ==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + hasBin: true + dev: false + /is-extglob@2.1.1: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} @@ -5539,6 +5969,14 @@ packages: engines: {node: '>=6.5.0', npm: '>=3'} dev: true + /is-inside-container@1.0.0: + resolution: {integrity: sha512-KIYLCCJghfHZxqjYBE7rEy0OBuTd5xCHS7tHVgvCLkx7StIoaxwNW3hCALgEUjFfeRk+MG/Qxmp/vtETEF3tRA==} + engines: {node: '>=14.16'} + hasBin: true + dependencies: + is-docker: 3.0.0 + dev: false + /is-ip@3.1.0: resolution: {integrity: sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==} engines: {node: '>=8'} @@ -5605,6 +6043,11 @@ packages: call-bind: 1.0.5 dev: false + /is-stream@3.0.0: + resolution: {integrity: sha512-LnQR4bZ9IADDRSkvpqMGvt/tEJWclzklNgSw48V5EAaAeDd6qGvN8ei6k5p0tvxSR171VmGyHuTiAOfxAbr8kA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dev: false + /is-string@1.0.7: resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} engines: {node: '>= 0.4'} @@ -5619,17 +6062,6 @@ packages: has-symbols: 1.0.3 dev: false - /is-typed-array@1.1.10: - resolution: {integrity: sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - dev: false - /is-typed-array@1.1.12: resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==} engines: {node: '>= 0.4'} @@ -5663,6 +6095,20 @@ packages: get-intrinsic: 1.2.2 dev: false + /is-wsl@3.1.0: + resolution: {integrity: sha512-UcVfVfaK4Sc4m7X3dUSoHoozQGBEFeDC+zVo06t98xe8CzHSZZBekNXH+tu0NalHolcJ/QAGqS46Hef7QXBIMw==} + engines: {node: '>=16'} + dependencies: + is-inside-container: 1.0.0 + dev: false + + /is64bit@2.0.0: + resolution: {integrity: sha512-jv+8jaWCl0g2lSBkNSVXdzfBA0npK1HGC2KtWM9FumFRoGS94g3NbCCLVnCYHLjp4GrW2KZeeSTMo5ddtznmGw==} + engines: {node: '>=18'} + dependencies: + system-architecture: 0.1.0 + dev: false + /isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} dev: false @@ -5704,12 +6150,12 @@ packages: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - /jayson@3.7.0: - resolution: {integrity: sha512-tfy39KJMrrXJ+mFcMpxwBvFDetS8LAID93+rycFglIQM4kl3uNR3W4lBLE/FFhsoUCEox5Dt2adVpDm/XtebbQ==} + /jayson@4.1.0: + resolution: {integrity: sha512-R6JlbyLN53Mjku329XoRT2zJAE6ZgOQ8f91ucYdMCD4nkGCF9kZSrcGXpHIU4jeKj58zUZke2p+cdQchU7Ly7A==} engines: {node: '>=8'} hasBin: true dependencies: - '@types/connect': 3.4.35 + '@types/connect': 3.4.38 '@types/node': 12.20.55 '@types/ws': 7.4.7 JSONStream: 1.3.5 @@ -5719,7 +6165,6 @@ packages: eyes: 0.1.8 isomorphic-ws: 4.0.1(ws@7.5.9) json-stringify-safe: 5.0.1 - lodash: 4.17.21 uuid: 8.3.2 ws: 7.5.9 transitivePeerDependencies: @@ -5794,6 +6239,10 @@ packages: minimist: 1.2.8 dev: false + /jsonc-parser@3.2.0: + resolution: {integrity: sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==} + dev: false + /jsonfile@2.4.0: resolution: {integrity: sha512-PKllAqbgLgxHaj8TElYymKCAgrASebJrWpTnEkOaTowt23VKXXN0sUeriJ+eh7y6ufb/CC5ap11pz71/cM0hUw==} optionalDependencies: @@ -5829,6 +6278,17 @@ packages: node-addon-api: 2.0.2 node-gyp-build: 4.6.0 readable-stream: 3.6.2 + dev: true + + /keccak@3.0.4: + resolution: {integrity: sha512-3vKuW0jV8J3XNTzvfyicFR5qvxrSAGl7KIhvgOu5cmWwM7tZRj3fMbj/pfIf4be7aznbc+prBWGjywox/g2Y6Q==} + engines: {node: '>=10.0.0'} + requiresBuild: true + dependencies: + node-addon-api: 2.0.2 + node-gyp-build: 4.8.0 + readable-stream: 3.6.2 + dev: false /keyvaluestorage-interface@1.0.0: resolution: {integrity: sha512-8t6Q3TclQ4uZynJY9IGr2+SsIGwK9JHcO6ootkHCGA0CrQCRy+VkouYNO2xicET6b9al7QKzpebNow+gkpCL8g==} @@ -5903,26 +6363,49 @@ packages: /lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} - /lit-element@3.3.2: - resolution: {integrity: sha512-xXAeVWKGr4/njq0rGC9dethMnYCq5hpKYrgQZYTzawt9YQhMiXfD+T1RgrdY3NamOxwq2aXlb0vOI6e29CKgVQ==} + /listhen@1.5.6: + resolution: {integrity: sha512-gTpEJhT5L85L0bFgmu+Boqu5rP4DwDtEb4Exq5gdQUxWRwx4jbzdInZkmyLONo5EwIcQB0k7ZpWlpCDPdL77EQ==} + hasBin: true dependencies: - '@lit-labs/ssr-dom-shim': 1.1.1 - '@lit/reactive-element': 1.6.1 - lit-html: 2.7.4 + '@parcel/watcher': 2.4.0 + '@parcel/watcher-wasm': 2.3.0 + citty: 0.1.5 + clipboardy: 4.0.0 + consola: 3.2.3 + defu: 6.1.4 + get-port-please: 3.1.2 + h3: 1.10.0 + http-shutdown: 1.2.2 + jiti: 1.21.0 + mlly: 1.5.0 + node-forge: 1.3.1 + pathe: 1.1.2 + std-env: 3.7.0 + ufo: 1.3.2 + untun: 0.1.3 + uqr: 0.1.2 dev: false - /lit-html@2.7.4: - resolution: {integrity: sha512-/Jw+FBpeEN+z8X6PJva5n7+0MzCVAH2yypN99qHYYkq8bI+j7I39GH+68Z/MZD6rGKDK9RpzBw7CocfmHfq6+g==} + /lit-element@3.3.3: + resolution: {integrity: sha512-XbeRxmTHubXENkV4h8RIPyr8lXc+Ff28rkcQzw3G6up2xg5E8Zu1IgOWIwBLEQsu3cOVFqdYwiVi0hv0SlpqUA==} dependencies: - '@types/trusted-types': 2.0.3 + '@lit-labs/ssr-dom-shim': 1.1.2 + '@lit/reactive-element': 1.6.3 + lit-html: 2.8.0 + dev: false + + /lit-html@2.8.0: + resolution: {integrity: sha512-o9t+MQM3P4y7M7yNzqAyjp7z+mQGa4NS4CxiyLqFPyFWyc4O+nodLrkrxSaCTrla6M5YOLaT3RpbbqjszB5g3Q==} + dependencies: + '@types/trusted-types': 2.0.7 dev: false /lit@2.7.5: resolution: {integrity: sha512-i/cH7Ye6nBDUASMnfwcictBnsTN91+aBjXoTHF2xARghXScKxpD4F4WYI+VLXg9lqbMinDfvoI7VnZXjyHgdfQ==} dependencies: - '@lit/reactive-element': 1.6.1 - lit-element: 3.3.2 - lit-html: 2.7.4 + '@lit/reactive-element': 1.6.3 + lit-element: 3.3.3 + lit-html: 2.8.0 dev: false /locate-path@2.0.0: @@ -5946,6 +6429,14 @@ packages: dependencies: p-locate: 5.0.0 + /lodash.defaults@4.2.0: + resolution: {integrity: sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==} + dev: false + + /lodash.isarguments@3.1.0: + resolution: {integrity: sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==} + dev: false + /lodash.isequal@4.5.0: resolution: {integrity: sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==} dev: false @@ -5967,6 +6458,7 @@ packages: /lokijs@1.5.12: resolution: {integrity: sha512-Q5ALD6JiS6xAUWCwX3taQmgwxyveCtIIuL08+ml0nHwT3k0S/GIFJN+Hd38b1qYIMaE5X++iqsqWVksz7SYW+Q==} + dev: true /loose-envify@1.4.0: resolution: {integrity: sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==} @@ -6041,6 +6533,10 @@ packages: engines: {node: '>= 0.10.0'} dev: true + /merge-stream@2.0.0: + resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} + dev: false + /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} @@ -6064,6 +6560,17 @@ packages: mime-db: 1.52.0 dev: false + /mime@3.0.0: + resolution: {integrity: sha512-jSCU7/VB1loIWBZe14aEYHU/+1UMEHoaO7qxCOVJOw9GgH72VAWppxNcjU+x9a2k3GSIBXNKxXQFqRvvZ7vr3A==} + engines: {node: '>=10.0.0'} + hasBin: true + dev: false + + /mimic-fn@4.0.0: + resolution: {integrity: sha512-vqiC06CuhBTUdZH+RYl8sFrL096vA45Ok5ISO6sE/Mr1jRbGH4Csnhi8f3wKVl7x8mO4Au7Ir9D3Oyv1VYMFJw==} + engines: {node: '>=12'} + dev: false + /minimalistic-assert@1.0.1: resolution: {integrity: sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==} @@ -6103,6 +6610,15 @@ packages: resolution: {integrity: sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==} engines: {node: '>=16 || 14 >=14.17'} + /mlly@1.5.0: + resolution: {integrity: sha512-NPVQvAY1xr1QoVeG0cy8yUYC7FQcOx6evl/RjT1wL5FvzPnzOysoqB/jmx/DhssT2dYa8nxECLAaFI/+gVLhDQ==} + dependencies: + acorn: 8.11.3 + pathe: 1.1.2 + pkg-types: 1.0.3 + ufo: 1.3.2 + dev: false + /mnemonist@0.38.5: resolution: {integrity: sha512-bZTFT5rrPKtPJxj8KSV0WkPyNxl72vQepqqVUAW2ARUpUSF2qXMB6jZj7hW5/k7C1rtpzqbD/IIbJwLXUjCHeg==} dependencies: @@ -6149,12 +6665,17 @@ packages: /motion@10.16.2: resolution: {integrity: sha512-p+PurYqfUdcJZvtnmAqu5fJgV2kR0uLFQuBKtLeFVTrYEVllI99tiOTSefVNYuip9ELTEkepIIDftNdze76NAQ==} dependencies: - '@motionone/animation': 10.15.1 - '@motionone/dom': 10.16.2 - '@motionone/svelte': 10.16.2 - '@motionone/types': 10.15.1 - '@motionone/utils': 10.15.1 - '@motionone/vue': 10.16.2 + '@motionone/animation': 10.17.0 + '@motionone/dom': 10.17.0 + '@motionone/svelte': 10.16.4 + '@motionone/types': 10.17.0 + '@motionone/utils': 10.17.0 + '@motionone/vue': 10.16.4 + dev: false + + /mri@1.2.0: + resolution: {integrity: sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==} + engines: {node: '>=4'} dev: false /ms@2.1.2: @@ -6298,21 +6819,17 @@ packages: /node-addon-api@2.0.2: resolution: {integrity: sha512-Ntyt4AIXyaLIuMHF6IOoTakB3K+RWxwtsHNRxllEoA6vPwP9o4866g6YWDLUdnucilZhmkxiHwHr11gAENw+QA==} - /node-fetch@2.6.11(encoding@0.1.13): - resolution: {integrity: sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==} - engines: {node: 4.x || >=6.0.0} - peerDependencies: - encoding: ^0.1.0 - peerDependenciesMeta: - encoding: - optional: true - dependencies: - encoding: 0.1.13 - whatwg-url: 5.0.0 + /node-addon-api@7.1.0: + resolution: {integrity: sha512-mNcltoe1R8o7STTegSOHdnJNN7s5EUvhoS7ShnTHDyOSd+8H+UdWODq6qSv67PjC8Zc5JRT8+oLAMCr0SIXw7g==} + engines: {node: ^16 || ^18 || >= 20} + dev: false + + /node-fetch-native@1.6.1: + resolution: {integrity: sha512-bW9T/uJDPAJB2YNYEpWzE54U5O3MQidXsOyTfnbKYtTtFexRvGzb1waphBN4ZwP6EcIvYYEOwW0b72BpAqydTw==} dev: false - /node-fetch@2.6.7(encoding@0.1.13): - resolution: {integrity: sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==} + /node-fetch@2.7.0(encoding@0.1.13): + resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==} engines: {node: 4.x || >=6.0.0} peerDependencies: encoding: ^0.1.0 @@ -6324,9 +6841,20 @@ packages: whatwg-url: 5.0.0 dev: false + /node-forge@1.3.1: + resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} + engines: {node: '>= 6.13.0'} + dev: false + /node-gyp-build@4.6.0: resolution: {integrity: sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==} hasBin: true + dev: true + + /node-gyp-build@4.8.0: + resolution: {integrity: sha512-u6fs2AEUljNho3EYTJNBfImO5QTo/J/1Etd+NVdCj7qWKUSN/bSLkZwhDv7I+w/MSC6qJ4cknepkAYykDdK8og==} + hasBin: true + dev: false /node-releases@2.0.14: resolution: {integrity: sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==} @@ -6341,6 +6869,13 @@ packages: engines: {node: '>=0.10.0'} dev: false + /npm-run-path@5.2.0: + resolution: {integrity: sha512-W4/tgAXFqFA0iL7fk0+uQ3g7wkL8xJmx3XdK0VGb4cHW//eZTtKGvFBBoRKVTpY7n6ze4NL9ly7rgXcHufqXKg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + dependencies: + path-key: 4.0.0 + dev: false + /object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} engines: {node: '>=0.10.0'} @@ -6419,6 +6954,14 @@ packages: resolution: {integrity: sha512-lgHwxlxV1qIg1Eap7LgIeoBWIMFibOjbrYPIPJZcI1mmGAI2m3lNYpK12Y+GBdPQ0U1hRwSord7GIaawz962qQ==} dev: true + /ofetch@1.3.3: + resolution: {integrity: sha512-s1ZCMmQWXy4b5K/TW9i/DtiN8Ku+xCiHcjQ6/J/nDdssirrQNOoB165Zu8EqLMA2lln1JUth9a0aW9Ap2ctrUg==} + dependencies: + destr: 2.0.2 + node-fetch-native: 1.6.1 + ufo: 1.3.2 + dev: false + /on-exit-leak-free@0.2.0: resolution: {integrity: sha512-dqaz3u44QbRXQooZLTUKU41ZrzYrcvLISVgbrzbyCMxpmSLJvZ3ZamIJIZ29P6OhZIkNIQKosdeM6t1LYbA9hg==} dev: false @@ -6432,6 +6975,13 @@ packages: dependencies: wrappy: 1.0.2 + /onetime@6.0.0: + resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} + engines: {node: '>=12'} + dependencies: + mimic-fn: 4.0.0 + dev: false + /optionator@0.9.1: resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} engines: {node: '>= 0.8.0'} @@ -6540,6 +7090,11 @@ packages: resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} engines: {node: '>=8'} + /path-key@4.0.0: + resolution: {integrity: sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==} + engines: {node: '>=12'} + dev: false + /path-parse@1.0.7: resolution: {integrity: sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==} @@ -6562,6 +7117,10 @@ packages: util: 0.10.4 dev: false + /pathe@1.1.2: + resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + dev: false + /pbkdf2@3.1.2: resolution: {integrity: sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==} engines: {node: '>=0.12'} @@ -6637,7 +7196,7 @@ packages: hasBin: true dependencies: atomic-sleep: 1.0.0 - fast-redact: 3.1.2 + fast-redact: 3.3.0 on-exit-leak-free: 0.2.0 pino-abstract-transport: 0.5.0 pino-std-serializers: 4.0.0 @@ -6653,6 +7212,14 @@ packages: resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==} engines: {node: '>= 6'} + /pkg-types@1.0.3: + resolution: {integrity: sha512-nN7pYi0AQqJnoLPC9eHFQ8AcyaixBUOwvqc5TDnIKCMEE6I0y8P7OKA7fPexsXGCGxQDl/cmrLAp26LhcwxZ4A==} + dependencies: + jsonc-parser: 3.2.0 + mlly: 1.5.0 + pathe: 1.1.2 + dev: false + /pngjs@5.0.0: resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} engines: {node: '>=10.13.0'} @@ -6739,8 +7306,8 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 - /preact@10.13.2: - resolution: {integrity: sha512-q44QFLhOhty2Bd0Y46fnYW0gD/cbVM9dUVtNTDKPcdXSMA7jfY+Jpd6rk3GB0lcQss0z5s/6CmVP0Z/hV+g6pw==} + /preact@10.19.3: + resolution: {integrity: sha512-nHHTeFVBTHRGxJXKkKu5hT8C/YWBkPso4/Gad6xuj5dbptt9iF9NZr9pHbPhBrnT2klheu7mHTxTZ/LjwJiEiQ==} dev: false /prelude-ls@1.2.1: @@ -6819,8 +7386,8 @@ packages: yargs: 15.4.1 dev: false - /qs@6.11.1: - resolution: {integrity: sha512-0wsrzgTz/kAVIeuxSjnpGC56rzYtr6JT/2BwEvMaPhFIoYa1aGO8LbzuU1R0uUYQkLpWBTOj0l/CLAJB64J6nQ==} + /qs@6.11.2: + resolution: {integrity: sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==} engines: {node: '>=0.6'} dependencies: side-channel: 1.0.4 @@ -6853,6 +7420,10 @@ packages: resolution: {integrity: sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg==} dev: false + /radix3@1.1.0: + resolution: {integrity: sha512-pNsHDxbGORSvuSScqNJ+3Km6QAVqk8CfsCBIEoDgpqLrkD2f3QM4I7d1ozJJ172OmIcoUcerZaNWqtLkRXTV3A==} + dev: false + /randombytes@2.1.0: resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==} dependencies: @@ -7002,6 +7573,18 @@ packages: engines: {node: '>= 12.13.0'} dev: false + /redis-errors@1.2.0: + resolution: {integrity: sha512-1qny3OExCf0UvUV/5wpYKf2YwPcOqXzkwKKSmKHiE6ZMQs5heeE/c8eXK+PNllPvmjgAbfnsbpkGZWy8cBpn9w==} + engines: {node: '>=4'} + dev: false + + /redis-parser@3.0.0: + resolution: {integrity: sha512-DJnGAeenTdpMEH6uAJRK/uiyEIH9WVsUmoLwzudwGJUwZPp80PDBWPHXSAGNPwNvIXAbe7MSUB1zQFugFml66A==} + engines: {node: '>=4'} + dependencies: + redis-errors: 1.2.0 + dev: false + /reflect.getprototypeof@1.0.4: resolution: {integrity: sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==} engines: {node: '>= 0.4'} @@ -7108,13 +7691,13 @@ packages: bn.js: 5.2.1 dev: true - /rpc-websockets@7.5.1: - resolution: {integrity: sha512-kGFkeTsmd37pHPMaHIgN1LVKXMi0JD782v4Ds9ZKtLlwdTKjn+CxM9A9/gLT2LaOuEcEFGL98h1QWQtlOIdW0w==} + /rpc-websockets@7.9.0: + resolution: {integrity: sha512-DwKewQz1IUA5wfLvgM8wDpPRcr+nWSxuFxx5CbrI2z/MyyZ4nXLM86TvIA+cI1ZAdqC8JIBR1mZR55dzaLU+Hw==} dependencies: '@babel/runtime': 7.23.8 eventemitter3: 4.0.7 uuid: 8.3.2 - ws: 8.13.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) + ws: 8.16.0(bufferutil@4.0.8)(utf-8-validate@5.0.10) optionalDependencies: bufferutil: 4.0.8 utf-8-validate: 5.0.10 @@ -7159,10 +7742,6 @@ packages: /safe-buffer@5.2.1: resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==} - /safe-json-utils@1.1.1: - resolution: {integrity: sha512-SAJWGKDs50tAbiDXLf89PDwt9XYkWyANFWVzn4dTXl5QyI8t2o/bW5/OJl3lvc2WVU4MEpTo9Yz5NVFNsp+OJQ==} - dev: false - /safe-regex-test@1.0.2: resolution: {integrity: sha512-83S9w6eFq12BBIJYvjMux6/dkirb8+4zJRA9cxNBVb7Wq5fJBW+Xze48WqR8pxua7bDuAaaAxtVVd4Idjp1dBQ==} engines: {node: '>= 0.4'} @@ -7213,14 +7792,6 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - /semver@7.5.1: - resolution: {integrity: sha512-Wvss5ivl8TMRZXXESstBA4uR5iXgEN/VC5/sOcuXdVLzcdkz4HWetIoRfG5gb5X+ij/G9rw9YoGn3QoQ8OCSpw==} - engines: {node: '>=10'} - hasBin: true - dependencies: - lru-cache: 6.0.0 - dev: false - /semver@7.5.4: resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} engines: {node: '>=10'} @@ -7383,11 +7954,19 @@ packages: type-fest: 0.7.1 dev: true + /standard-as-callback@2.1.0: + resolution: {integrity: sha512-qoRRSyROncaz1z0mvYqIE4lCd9p2R90i6GxW3uZv5ucSu8tU7B5HXUP1gG8pVZsYNVaXjk8ClXHPttLyxAL48A==} + dev: false + /statuses@2.0.1: resolution: {integrity: sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==} engines: {node: '>= 0.8'} dev: true + /std-env@3.7.0: + resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + dev: false + /stream-browserify@3.0.0: resolution: {integrity: sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==} dependencies: @@ -7395,8 +7974,8 @@ packages: readable-stream: 3.6.2 dev: false - /stream-shift@1.0.1: - resolution: {integrity: sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==} + /stream-shift@1.0.3: + resolution: {integrity: sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==} dev: false /streamsearch@1.1.0: @@ -7486,6 +8065,11 @@ packages: engines: {node: '>=4'} dev: false + /strip-final-newline@3.0.0: + resolution: {integrity: sha512-dOESqjYr96iWYylGObzd39EuNTa5VJxyvVAEm5Jnh7KGo75V43Hk1odPQkNDyXNmUR6k+gEiDVXnjB8HJ3crXw==} + engines: {node: '>=12'} + dev: false + /strip-hex-prefix@1.0.0: resolution: {integrity: sha512-q8d4ue7JGEiVcypji1bALTos+0pWtyGlivAWyPuTkHzuTCJqrK9sWxYQZUq6Nq3cuyv3bm734IhHvHtGGURU6A==} engines: {node: '>=6.5.0', npm: '>=3'} @@ -7593,6 +8177,11 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} + /system-architecture@0.1.0: + resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} + engines: {node: '>=18'} + dev: false + /tabbable@6.2.0: resolution: {integrity: sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==} dev: false @@ -7840,6 +8429,10 @@ packages: engines: {node: '>=12.20'} hasBin: true + /ufo@1.3.2: + resolution: {integrity: sha512-o+ORpgGwaYQXgqGDwd+hkS4PuZ3QnmqMMxRuajK/a38L6fTpcE5GPIfrf+L/KemFzfUpeUQc1rRS1iDBozvnFA==} + dev: false + /uint8arrays@3.1.1: resolution: {integrity: sha512-+QJa8QRnbdXVpHYjLoTpJIdCTiw9Ir62nocClWuXIq2JIh4Uta0cQsTSpFL678p2CN8B+XSApwcU+pQEqVpKWg==} dependencies: @@ -7855,6 +8448,10 @@ packages: which-boxed-primitive: 1.0.2 dev: false + /uncrypto@0.1.3: + resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} + dev: false + /undici@5.28.2: resolution: {integrity: sha512-wh1pHJHnUeQV5Xa8/kyQhO7WFa8M34l026L5P/+2TYiakvGy5Rdc8jWZVyG7ieht/0WgJLEd3kcU5gKx+6GC8w==} engines: {node: '>=14.0'} @@ -7862,6 +8459,16 @@ packages: '@fastify/busboy': 2.1.0 dev: true + /unenv@1.9.0: + resolution: {integrity: sha512-QKnFNznRxmbOF1hDgzpqrlIf6NC5sbZ2OJ+5Wl3OX8uM+LUJXbj4TXvLJCtwbPTmbMHCLIz6JLKNinNsMShK9g==} + dependencies: + consola: 3.2.3 + defu: 6.1.4 + mime: 3.0.0 + node-fetch-native: 1.6.1 + pathe: 1.1.2 + dev: false + /universalify@0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} engines: {node: '>= 4.0.0'} @@ -7872,6 +8479,72 @@ packages: engines: {node: '>= 0.8'} dev: true + /unstorage@1.10.1(idb-keyval@6.2.1): + resolution: {integrity: sha512-rWQvLRfZNBpF+x8D3/gda5nUCQL2PgXy2jNG4U7/Rc9BGEv9+CAJd0YyGCROUBKs9v49Hg8huw3aih5Bf5TAVw==} + peerDependencies: + '@azure/app-configuration': ^1.4.1 + '@azure/cosmos': ^4.0.0 + '@azure/data-tables': ^13.2.2 + '@azure/identity': ^3.3.2 + '@azure/keyvault-secrets': ^4.7.0 + '@azure/storage-blob': ^12.16.0 + '@capacitor/preferences': ^5.0.6 + '@netlify/blobs': ^6.2.0 + '@planetscale/database': ^1.11.0 + '@upstash/redis': ^1.23.4 + '@vercel/kv': ^0.2.3 + idb-keyval: ^6.2.1 + peerDependenciesMeta: + '@azure/app-configuration': + optional: true + '@azure/cosmos': + optional: true + '@azure/data-tables': + optional: true + '@azure/identity': + optional: true + '@azure/keyvault-secrets': + optional: true + '@azure/storage-blob': + optional: true + '@capacitor/preferences': + optional: true + '@netlify/blobs': + optional: true + '@planetscale/database': + optional: true + '@upstash/redis': + optional: true + '@vercel/kv': + optional: true + idb-keyval: + optional: true + dependencies: + anymatch: 3.1.3 + chokidar: 3.5.3 + destr: 2.0.2 + h3: 1.10.0 + idb-keyval: 6.2.1 + ioredis: 5.3.2 + listhen: 1.5.6 + lru-cache: 10.1.0 + mri: 1.2.0 + node-fetch-native: 1.6.1 + ofetch: 1.3.3 + ufo: 1.3.2 + transitivePeerDependencies: + - supports-color + dev: false + + /untun@0.1.3: + resolution: {integrity: sha512-4luGP9LMYszMRZwsvyUd9MrxgEGZdZuZgpVQHEEX0lCYFESasVRvZd0EYpCkOIbJKHMuv0LskpXc/8Un+MJzEQ==} + hasBin: true + dependencies: + citty: 0.1.5 + consola: 3.2.3 + pathe: 1.1.2 + dev: false + /update-browserslist-db@1.0.13(browserslist@4.22.2): resolution: {integrity: sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==} hasBin: true @@ -7883,6 +8556,10 @@ packages: picocolors: 1.0.0 dev: false + /uqr@0.1.2: + resolution: {integrity: sha512-MJu7ypHq6QasgF5YRTjqscSzQp/W11zoUk6kvmlH+fmWEs63Y0Eib13hYFwAzagRJcVY8WVnlV+eBDUGMJ5IbA==} + dev: false + /uri-js@4.4.1: resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} dependencies: @@ -7902,7 +8579,7 @@ packages: engines: {node: '>=6.14.2'} requiresBuild: true dependencies: - node-gyp-build: 4.6.0 + node-gyp-build: 4.8.0 dev: false /util-deprecate@1.0.2: @@ -7920,8 +8597,8 @@ packages: inherits: 2.0.4 is-arguments: 1.1.1 is-generator-function: 1.0.10 - is-typed-array: 1.1.10 - which-typed-array: 1.1.9 + is-typed-array: 1.1.12 + which-typed-array: 1.1.13 dev: false /uuid@8.3.2: @@ -7971,7 +8648,7 @@ packages: - zod dev: false - /wagmi@1.3.3(encoding@0.1.13)(lokijs@1.5.12)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): + /wagmi@1.3.3(@types/react@18.2.6)(encoding@0.1.13)(react-dom@18.2.0)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6): resolution: {integrity: sha512-9xZxyH2eg4dTxgPBD1FYCLbJUL9W0SKHoIhTE8pd89fArx1D2nbuFH6kalpSi57CfH00BO0RPF2lx/5dVF93cA==} peerDependencies: react: '>=17.0.0' @@ -7981,21 +8658,32 @@ packages: typescript: optional: true dependencies: - '@tanstack/query-sync-storage-persister': 4.29.5 - '@tanstack/react-query': 4.29.5(react-dom@18.2.0)(react@18.2.0) - '@tanstack/react-query-persist-client': 4.29.5(@tanstack/react-query@4.29.5) - '@wagmi/core': 1.3.3(encoding@0.1.13)(lokijs@1.5.12)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) + '@tanstack/query-sync-storage-persister': 4.36.1 + '@tanstack/react-query': 4.36.1(react-dom@18.2.0)(react@18.2.0) + '@tanstack/react-query-persist-client': 4.36.1(@tanstack/react-query@4.36.1) + '@wagmi/core': 1.3.3(@types/react@18.2.6)(encoding@0.1.13)(react@18.2.0)(typescript@5.0.4)(viem@1.2.6) abitype: 0.8.7(typescript@5.0.4) react: 18.2.0 typescript: 5.0.4 use-sync-external-store: 1.2.0(react@18.2.0) viem: 1.2.6(typescript@5.0.4) transitivePeerDependencies: + - '@azure/app-configuration' + - '@azure/cosmos' + - '@azure/data-tables' + - '@azure/identity' + - '@azure/keyvault-secrets' + - '@azure/storage-blob' + - '@capacitor/preferences' + - '@netlify/blobs' + - '@planetscale/database' - '@react-native-async-storage/async-storage' + - '@types/react' + - '@upstash/redis' + - '@vercel/kv' - bufferutil - encoding - immer - - lokijs - react-dom - react-native - supports-color @@ -8084,18 +8772,6 @@ packages: has-tostringtag: 1.0.0 dev: false - /which-typed-array@1.1.9: - resolution: {integrity: sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA==} - engines: {node: '>= 0.4'} - dependencies: - available-typed-arrays: 1.0.5 - call-bind: 1.0.2 - for-each: 0.3.3 - gopd: 1.0.1 - has-tostringtag: 1.0.0 - is-typed-array: 1.1.10 - dev: false - /which@2.0.2: resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} engines: {node: '>= 8'} @@ -8178,8 +8854,8 @@ packages: optional: true dev: false - /ws@8.13.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): - resolution: {integrity: sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==} + /ws@8.16.0(bufferutil@4.0.8)(utf-8-validate@5.0.10): + resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -8194,19 +8870,6 @@ packages: utf-8-validate: 5.0.10 dev: false - /ws@8.16.0: - resolution: {integrity: sha512-HS0c//TP7Ina87TfiPUz1rQzMhHrl/SG2guqRcTOIUYD2q8uhUdNHZYJUaQ8aTGPzCh+c6oawMKW35nFl1dxyQ==} - engines: {node: '>=10.0.0'} - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: '>=5.0.2' - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - dev: false - /ws@8.5.0: resolution: {integrity: sha512-BWX0SWVgLPzYwF8lTzEy1egjhS4S4OEAHfsO8o65WOVsrnSRGaSiUaa9e0ggGlkMTtBlmOpEXiie9RUcBO86qg==} engines: {node: '>=10.0.0'} @@ -8308,18 +8971,22 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - /zustand@4.3.8(react@18.2.0): - resolution: {integrity: sha512-4h28KCkHg5ii/wcFFJ5Fp+k1J3gJoasaIbppdgZFO4BPJnsNxL0mQXBSFgOgAdCdBj35aDTPvdAJReTMntFPGg==} + /zustand@4.4.7(@types/react@18.2.6)(react@18.2.0): + resolution: {integrity: sha512-QFJWJMdlETcI69paJwhSMJz7PPWjVP8Sjhclxmxmxv/RYI7ZOvR5BHX+ktH0we9gTWQMxcne8q1OY8xxz604gw==} engines: {node: '>=12.7.0'} peerDependencies: + '@types/react': '>=16.8' immer: '>=9.0' react: '>=16.8' peerDependenciesMeta: + '@types/react': + optional: true immer: optional: true react: optional: true dependencies: + '@types/react': 18.2.6 react: 18.2.0 use-sync-external-store: 1.2.0(react@18.2.0) dev: false diff --git a/src/app/components/Dashboard/EventsDashboardComponent.tsx b/src/app/components/Dashboard/EventsDashboardComponent.tsx index 64cf4e1..0654a5d 100644 --- a/src/app/components/Dashboard/EventsDashboardComponent.tsx +++ b/src/app/components/Dashboard/EventsDashboardComponent.tsx @@ -2,59 +2,117 @@ import { Card } from "../ui/card"; import EventsDashboardTable from "./EventsDashboardTable"; -import EventsDashboardData from "./EventsDashboardData"; import Footer from "../Footer"; import Navbar from "../Navbar"; +import { useContractRead } from "wagmi"; +import { EventsFactoryABI } from "../abis"; +import { useEffect, useState } from "react"; + export const EventsDashboardComponent = () => { - const sampleLeaderboardData: EventsDashboardData[] = [ + +// string[] memory eventNames = new string[](allEvents.length); +// string[] memory eventDescriptions = new string[](allEvents.length); +// uint256[] memory eventStartDates = new uint256[](allEvents.length); +// uint256[] memory eventEndDates = new uint256[](allEvents.length); +// int256[] memory latitudes = new int256[](allEvents.length); +// int256[] memory longitudes = new int256[](allEvents.length); +// uint256[] memory eventRadiuses = new uint256[](allEvents.length); +// string[] memory eventRadiusColors = new string[](allEvents.length); + type EventData = { + eventName: string; + eventDescription: string; + eventStartDate: string; + eventEndDate: string; + eventLatitude: string; + eventLongitude: string; + eventRadius: number; + eventRadiusColor: string; + eventManagers: readonly ManagerData[]; + }; + + type ManagerData = { + address: `0x${string}`; + nickname?: string; + }; + + const [eventsDatas, setEventsDatas] = useState(undefined); + const [eventManagers, setEventManagers] = useState(undefined); + + + const sampleDashboardData = [ { - eventName: "Event 1", - eventContractAddress: "0x9B45ca40372dAEF77532D1C3538E68715Ba36fD7", - eventOwnerAddress: "0x8A90ca40372dAEF77532D1C3538E68715Ba36fD7", - eventOwnerNickname: "M4GIC", + eventName: "Sample Event", + eventContractAddress: "0x2134044D7d6Ddb782D3eee355d7912f55508591b", + eventOwnerAddress: "0x2134044D7d6Ddb782D3eee355d7912f55508591b", + eventOwnerNickname: "Sample Owner", eventManagers: [ { - address: "0x8A90ca40372dAEF77532D1C3538E68715Ba36fD7", - nickname: "M4GIC", - }, - { - address: "0x7A90ca40372dAEF77532D1C3538E68715Ba36fD7", - nickname: "Madhav", + address: "0x2134044D7d6Ddb782D3eee355d7912f55508591b", + nickname: "Sample Manager", }, ], - contractAddress: "0x8A90ca40372dAEF77532D1C3538E68715Ba36fD7", - actions: "Actions", + contractAddress: "0x2134044D7d6Ddb782D3eee355d7912f55508591b", + actions: "Sample Actions", }, - { - eventName: "Event 2", - eventContractAddress: "0xe8ffca40372dAEF77532D1C3538E68715Ba36fD7", - eventOwnerAddress: "0x4ffca40372dAEF77532D1C3538E68715Ba36fD7", - eventOwnerNickname: "Dhruv", - eventManagers: [ - { - address: "0x1A90ca40372dAEF77532D1C3538E68715Ba36fD7", - nickname: "Shaunak", - }, - { - address: "0x7A90ca40372dAEF77532D1C3538E68715Ba36fD7", - nickname: "Madhav", - }, - ], - contractAddress: "0x8A90ca40372dAEF77532D1C3538E68715Ba36fD7", - actions: "Actions", - } ]; + const { + data: eventsInfos, + error, + isLoading: contractReadLoading, + } = useContractRead({ + abi: EventsFactoryABI, + functionName: 'getAllEventsDetails', + address: "0x2134044D7d6Ddb782D3eee355d7912f55508591b" + }); + +// function getEventManagers(address _eventAddress) external view returns (address[] memory) { +// return IEvent(_eventAddress).getManagers(); +// } + + const { + data: managers, + error: managersError, + isLoading: managersLoading, + } = useContractRead({ + abi: EventsFactoryABI, + functionName: 'getAllEventManagers', + address: "0x2134044D7d6Ddb782D3eee355d7912f55508591b" + }); + + useEffect(() => { + if (eventsInfos && managers) { + // Update the data format to match the state types + const updatedEventsDatas: readonly EventData[] = eventsInfos as any; + const updatedEventManagers: readonly ManagerData[] = managers.map(manager => ({ + address: manager, + nickname: "" // Provide a default value for the nickname property + })); + + setEventsDatas(updatedEventsDatas); + setEventManagers(updatedEventManagers); + console.log(eventsInfos, managers); + } + }, [eventsInfos, managers]); + return (
- - - + {contractReadLoading ? ( +

Loading...

+ ) : ( + + {error ? ( + + ) : ( + + )} + + )}