From bf871d27e0522a9c9c583b80d2023110085524a6 Mon Sep 17 00:00:00 2001 From: bluecco Date: Mon, 1 Jul 2024 12:12:49 +0200 Subject: [PATCH 1/7] fix: update starknetkit to be compatible with starknet-react v3 --- package.json | 8 +- pnpm-lock.yaml | 39 +++ renovate.json | 7 +- src/connectors/argentMobile/index.ts | 48 +++- src/connectors/connector.ts | 31 ++- src/connectors/injected/index.ts | 260 +++++++++--------- .../webwallet/helpers/openWebwallet.ts | 1 - src/connectors/webwallet/index.ts | 59 ++-- src/helpers/defaultConnectors.ts | 6 +- src/helpers/mapModalWallets.ts | 10 +- src/main.ts | 9 +- src/modal/ConnectorButton.svelte | 15 +- src/modal/Modal.svelte | 8 +- src/window/modal.ts | 10 +- src/window/window.ts | 4 +- 15 files changed, 316 insertions(+), 199 deletions(-) diff --git a/package.json b/package.json index 513b112..3489fa0 100644 --- a/package.json +++ b/package.json @@ -60,6 +60,8 @@ "dev": "vite build --watch" }, "dependencies": { + "@starknet-io/get-starknet": "^4.0.0", + "@starknet-io/types-js": "^0.7.7", "@trpc/client": "^10.38.1", "@trpc/server": "^10.38.1", "@walletconnect/sign-client": "^2.11.0", @@ -99,6 +101,8 @@ "prettier-plugin-import-sort": "^0.0.7", "semantic-release": "^21.1.1", "starknet-types": "^0.7.2", + "starknet4": "npm:starknet@4.22.0", + "starknet5": "npm:starknet@5.29.0", "svelte": "^4.0.0", "svelte-check": "^3.5.1", "svelte-preprocess": "^5.0.4", @@ -109,9 +113,7 @@ "vite-plugin-dts": "^3.0.0", "vitest": "^1.6.0", "ws": "^8.8.1", - "zod": "^3.20.6", - "starknet4": "npm:starknet@4.22.0", - "starknet5": "npm:starknet@5.29.0" + "zod": "^3.20.6" }, "peerDependencies": { "starknet": "^6.9.0" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index aaeedc2..eda5ec9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,12 @@ importers: .: dependencies: + '@starknet-io/get-starknet': + specifier: ^4.0.0 + version: 4.0.0 + '@starknet-io/types-js': + specifier: ^0.7.7 + version: 0.7.7 '@trpc/client': specifier: ^10.38.1 version: 10.45.2(@trpc/server@10.45.2) @@ -696,6 +702,12 @@ packages: '@microsoft/tsdoc@0.14.2': resolution: {integrity: sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==} + '@module-federation/runtime@0.1.21': + resolution: {integrity: sha512-/p4BhZ0SnjJuiL0wwu+FebFgIUJ9vM+oCY7CyprUHImyi/Y23ulI61WNWMVrKQGgdMoXQDQCL8RH4EnrVP2ZFw==} + + '@module-federation/sdk@0.1.21': + resolution: {integrity: sha512-r7xPiAm+O4e+8Zvw+8b4ToeD0D0VJD004nHmt+Y8r/l98J2eA6di72Vn1FeyjtQbCrFtiMw3ts/dlqtcmIBipw==} + '@motionone/animation@10.18.0': resolution: {integrity: sha512-9z2p5GFGCm0gBsZbi8rVMOAJCtw1WqBTIPw3ozk06gDvZInBPIsQcHgYogEJ4yuHJ+akuW8g1SEIOpTOvYs8hw==} @@ -1163,6 +1175,15 @@ packages: '@stablelib/x25519@1.0.3': resolution: {integrity: sha512-KnTbKmUhPhHavzobclVJQG5kuivH+qDLpe84iRqX3CLrKp881cF160JvXJ+hjn1aMyCwYOKeIZefIH/P5cJoRw==} + '@starknet-io/get-starknet-core@4.0.0': + resolution: {integrity: sha512-M++JTbMxZJ5wCkw1f4vAXCY3BTlRMdxFScqsIgZonLXD3GKHPyM/pFi/JqorPO1o4RKHLnFX6M7r0izZ/NWpvA==} + + '@starknet-io/get-starknet@4.0.0': + resolution: {integrity: sha512-SmnRzBewS0BVjtKzViSrWXi+SvOnSrj9hnvlx8B3ZnCq9A2NuX8pNI550lDBLl/ilIr587FH2VNAj6jdgsyhJQ==} + + '@starknet-io/types-js@0.7.7': + resolution: {integrity: sha512-WLrpK7LIaIb8Ymxu6KF/6JkGW1sso988DweWu7p5QY/3y7waBIiPvzh27D9bX5KIJNRDyOoOVoHVEKYUYWZ/RQ==} + '@sveltejs/vite-plugin-svelte-inspector@1.0.4': resolution: {integrity: sha512-zjiuZ3yydBtwpF3bj0kQNV0YXe+iKE545QGZVTaylW3eAzFr+pJ/cwK8lZEaRp4JtaJXhD5DyWAV4AxLh6DgaQ==} engines: {node: ^14.18.0 || >= 16} @@ -5427,6 +5448,12 @@ snapshots: '@microsoft/tsdoc@0.14.2': {} + '@module-federation/runtime@0.1.21': + dependencies: + '@module-federation/sdk': 0.1.21 + + '@module-federation/sdk@0.1.21': {} + '@motionone/animation@10.18.0': dependencies: '@motionone/easing': 10.18.0 @@ -5942,6 +5969,18 @@ snapshots: '@stablelib/random': 1.0.2 '@stablelib/wipe': 1.0.1 + '@starknet-io/get-starknet-core@4.0.0': + dependencies: + '@module-federation/runtime': 0.1.21 + '@starknet-io/types-js': 0.7.7 + + '@starknet-io/get-starknet@4.0.0': + dependencies: + '@starknet-io/get-starknet-core': 4.0.0 + bowser: 2.11.0 + + '@starknet-io/types-js@0.7.7': {} + '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2))': dependencies: '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)) diff --git a/renovate.json b/renovate.json index e0f7b7b..b3d4141 100644 --- a/renovate.json +++ b/renovate.json @@ -5,12 +5,15 @@ "timezone": "Europe/London", "rebaseWhen": "never", "ignoreDeps": [ - "starknet-types", + "starknet", "starknet4-deprecated", "starknet4", "starknet5", "get-starknet-core", - "get-starknet-coreV3" + "get-starknet-coreV3", + "starknet-types", + "@starknet-io/types-js", + "@starknet-io/get-starknet" ], "packageRules": [ { diff --git a/src/connectors/argentMobile/index.ts b/src/connectors/argentMobile/index.ts index 073e2ff..7bbc5d0 100644 --- a/src/connectors/argentMobile/index.ts +++ b/src/connectors/argentMobile/index.ts @@ -1,6 +1,18 @@ import { type AccountChangeEventHandler } from "get-starknet-core" -import { constants } from "starknet" -import { Permission, type StarknetWindowObject } from "starknet-types" +import { + AccountInterface, + ProviderInterface, + ProviderOptions, + WalletAccount, + constants, +} from "starknet" +import { + Permission, + RequestFnCall, + RpcMessage, + RpcTypeToMessageMap, + type StarknetWindowObject, +} from "starknet-types" import { ConnectorNotConnectedError, ConnectorNotFoundError, @@ -110,20 +122,17 @@ export class ArgentMobileConnector extends Connector { this._wallet = null } - async account(): Promise { + async account( + provider: ProviderOptions | ProviderInterface, + ): Promise { if (!this._wallet) { throw new ConnectorNotConnectedError() } - const [account] = await this._wallet.request({ - type: "wallet_requestAccounts", - params: { silent_mode: true }, - }) - - return account ?? null + return new WalletAccount(provider, this._wallet) } - async chainId(): Promise { + async chainId(): Promise { if (!this._wallet) { throw new ConnectorNotConnectedError() } @@ -132,7 +141,24 @@ export class ArgentMobileConnector extends Connector { type: "wallet_requestChainId", }) - return getStarknetChainId(chainId) + const hexChainId = getStarknetChainId(chainId) + return BigInt(hexChainId) + } + + async request( + call: RequestFnCall, + ): Promise { + this.ensureWallet() + + if (!this._wallet) { + throw new ConnectorNotConnectedError() + } + + try { + return await this._wallet.request(call) + } catch { + throw new UserRejectedRequestError() + } } // needed, methods required by starknet-react. Otherwise an exception is throwd diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts index fa38719..7fd8e9a 100644 --- a/src/connectors/connector.ts +++ b/src/connectors/connector.ts @@ -1,21 +1,21 @@ import EventEmitter from "eventemitter3" -import { constants } from "starknet" -import type { StarknetWindowObject } from "starknet-types" +import { AccountInterface, ProviderInterface, ProviderOptions } from "starknet" +import type { + RequestFnCall, + RpcMessage, + RpcTypeToMessageMap, + StarknetWindowObject, +} from "starknet-types" /** Connector icons, as base64 encoded svg. */ -export type ConnectorIcons = { - /** Dark-mode icon. */ - dark?: string - /** Light-mode icon. */ - light?: string -} +export type ConnectorIcons = StarknetWindowObject["icon"] /** Connector data. */ export type ConnectorData = { /** Connector account. */ account?: string /** Connector network. */ - chainId?: constants.StarknetChainId + chainId?: bigint } /** Connector events. */ @@ -45,9 +45,18 @@ export abstract class Connector extends EventEmitter { /** Disconnect wallet. */ abstract disconnect(): Promise /** Get current account silently. Return null if the account is not authorized */ - abstract account(): Promise + abstract account( + provider: ProviderOptions | ProviderInterface, + ): Promise /** Get current chain id. */ - abstract chainId(): Promise + abstract chainId(): Promise + /** Create request call to wallet */ + abstract request( + call: RequestFnCall, + ): Promise +} + +export abstract class StarknetkitConnector extends Connector { /** Connector StarknetWindowObject */ abstract get wallet(): StarknetWindowObject } diff --git a/src/connectors/injected/index.ts b/src/connectors/injected/index.ts index 567c3b9..004199a 100644 --- a/src/connectors/injected/index.ts +++ b/src/connectors/injected/index.ts @@ -1,5 +1,16 @@ -import { Permission, type StarknetWindowObject } from "starknet-types" -import { constants } from "starknet" +import { + AccountInterface, + ProviderInterface, + ProviderOptions, + WalletAccount, +} from "starknet" +import { + Permission, + RequestFnCall, + RpcMessage, + RpcTypeToMessageMap, + type StarknetWindowObject, +} from "starknet-types" import { ConnectorNotConnectedError, ConnectorNotFoundError, @@ -15,8 +26,6 @@ import { WALLET_NOT_FOUND_ICON_DARK, WALLET_NOT_FOUND_ICON_LIGHT, } from "./constants" -import { isString } from "lodash-es" -import { getStarknetChainId } from "../../helpers/getStarknetChainId" /** Injected connector options. */ export interface InjectedConnectorOptions { /** The wallet id. */ @@ -27,22 +36,76 @@ export interface InjectedConnectorOptions { icon?: ConnectorIcons } +export interface InjectedConnectorOptions { + /** The wallet id. */ + id: string + /** Wallet human readable name. */ + name?: string + /** Wallet icons. */ + icon?: ConnectorIcons +} + +// Icons used when the injected wallet is not installed +// Icons from media kits +const walletIcons = { + argentX: + "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjAuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA2NS4xOTUwOCA1Ny43MzU2MiIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNjUuMTk1MDggNTcuNzM1NjI7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7ZmlsbDojRkY4NzVCO30KPC9zdHlsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQwLjk4NTkyLDBIMjQuMjA4ODhjLTAuNTYsMC0xLjAxMDAxLDAuNDUxMDItMS4wMjE5NywxLjAxMjAyCgljLTAuMzM4OTksMTUuNzU1LTguNTgyMDMsMzAuNzA4OTgtMjIuNzcwMDIsNDEuMzAwOTljLTAuNDUwMDEsMC4zMzcwMS0wLjU1Mjk4LDAuOTY3OTktMC4yMjQsMS40MjNsOS44MTU5OCwxMy41NzMKCWMwLjMzNDA1LDAuNDYyMDEsMC45ODUwNSwwLjU2NTk4LDEuNDQyOTksMC4yMjY5OWM4Ljg3MTAzLTYuNTc5MDEsMTYuMDA3MDItMTQuNTE3LDIxLjE0NjA2LTIzLjMxNQoJYzUuMTM4LDguNzk4LDEyLjI3Mzk5LDE2LjczNTk5LDIxLjE0NiwyMy4zMTVjMC40NTY5NywwLjMzODk5LDEuMTA3OTcsMC4yMzUwMiwxLjQ0MTk2LTAuMjI2OTlsOS44MTYwNC0xMy41NzMKCWMwLjMyODk4LTAuNDU1MDIsMC4yMjY5OS0xLjA4Ni0wLjIyNC0xLjQyM0M1MC41ODk4NiwzMS43MjEwMSw0Mi4zNDY4OCwxNi43NjcwMyw0Mi4wMDc4OSwxLjAxMjAyCglDNDEuOTk1ODcsMC40NTEwMiw0MS41NDY4OSwwLDQwLjk4NTkyLDAiLz4KPC9zdmc+Cg==", + braavos: + "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAwIiBoZWlnaHQ9IjUwMCIgdmlld0JveD0iMCAwIDUwMCA1MDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxwYXRoIGQ9Ik0zMjMuNDQgNDEuMzg4NkMzMjQuMTk4IDQyLjY3MjggMzIzLjE5NSA0NC4yNjAzIDMyMS43MDQgNDQuMjYwM0MyOTEuNTEgNDQuMjYwMyAyNjYuOTY1IDY4LjE2NTYgMjY2LjM4OSA5Ny44NzFDMjU2LjA1IDk1Ljk0MDcgMjQ1LjMzNyA5NS43OTU2IDIzNC43NTQgOTcuNTc4N0MyMzQuMDIzIDY4LjAwOSAyMDkuNTQgNDQuMjYwMyAxNzkuNDQ1IDQ0LjI2MDNDMTc3Ljk1MyA0NC4yNjAzIDE3Ni45NDkgNDIuNjcxNiAxNzcuNzA3IDQxLjM4NjVDMTkyLjMyMyAxNi42MzMgMjE5LjQ4MyAwIDI1MC41NzMgMEMyODEuNjY0IDAgMzA4LjgyNCAxNi42MzM5IDMyMy40NCA0MS4zODg2WiIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik00MTguNzU2IDIyNi44OTRDNDI2LjM3IDIyOS4yIDQzMy41ODEgMjIyLjUxNyA0MzEuMDM2IDIxNC45NzlDNDA0LjUwNyAxMzYuNDAxIDMxNi41MzUgMTA0LjM1OCAyNTAuMTU5IDEwNC4zNThDMTgzLjY3NCAxMDQuMzU4IDkzLjczOTEgMTM3LjQxOCA2OS4zMDUxIDIxNS4zMzFDNjYuOTU3NCAyMjIuODE4IDc0LjE0NjUgMjI5LjI3NSA4MS42NDc5IDIyNi45NzdMMjQ0LjI1IDE3Ny4xNTFDMjQ3LjU2OSAxNzYuMTM0IDI1MS4xMTYgMTc2LjEyOCAyNTQuNDM5IDE3Ny4xMzVMNDE4Ljc1NiAyMjYuODk0WiIgZmlsbD0idXJsKCNwYWludDFfbGluZWFyXzIzMjRfNjE4NjkpIi8+CjxwYXRoIGQ9Ik02OS43MTY1IDIzOS40MjZMMjQ0LjM3IDE4Ni40NTZDMjQ3LjY2OSAxODUuNDU2IDI1MS4xOTEgMTg1LjQ1MyAyNTQuNDkyIDE4Ni40NDhMNDMwLjIzMiAyMzkuNDUyQzQ0NC43NiAyNDMuODMzIDQ1NC43MDEgMjU3LjIxNiA0NTQuNzAxIDI3Mi4zOVY0MzAuNDgxQzQ1NC4wMjggNDY5LjA3IDQxOS4zNjIgNTAwIDM4MC43ODYgNTAwSDMxNi43MTJDMzEwLjM3OSA1MDAgMzA1LjI1IDQ5NC44NzcgMzA1LjI1IDQ4OC41NDNWNDMzLjExNUMzMDUuMjUgNDExLjI4OSAzMTguMTY3IDM5MS41MzUgMzM4LjE1NSAzODIuNzkyQzM2NC45NDkgMzcxLjA3MSAzOTYuNjQ2IDM1NS4yMTggNDAyLjYwOCAzMjMuNDA2QzQwNC41MzIgMzEzLjEzOCAzOTcuODM3IDMwMy4yMzQgMzg3LjU5NSAzMDEuMTk4QzM2MS42OTkgMjk2LjA1MSAzMzIuOTg5IDI5OC4wMzkgMzA4LjcxMSAzMDguODk4QzI4MS4xNSAzMjEuMjI1IDI3My45NCAzNDEuNzMxIDI3MS4yNzEgMzY5LjI3TDI2OC4wMzYgMzk4LjkzOEMyNjcuMDQ3IDQwOC4wMDUgMjU4LjU0NiA0MTQuOTUyIDI0OS40MjkgNDE0Ljk1MkMyMzkuOTk4IDQxNC45NTIgMjMyLjkyNiA0MDcuNzY5IDIzMS45MDMgMzk4LjM4OEwyMjguNzI4IDM2OS4yN0MyMjYuNDQyIDM0NS42ODEgMjIyLjI5OCAzMjIuNzY3IDE5Ny45MTIgMzExLjg2QzE3MC4wOTUgMjk5LjQxOSAxNDIuMTQxIDI5NS4yODcgMTEyLjQwNCAzMDEuMTk4QzEwMi4xNjIgMzAzLjIzNCA5NS40NjcgMzEzLjEzOCA5Ny4zOTEzIDMyMy40MDZDMTAzLjQwNSAzNTUuNDk1IDEzNC44NTQgMzcwLjk4NSAxNjEuODQ0IDM4Mi43OTJDMTgxLjgzMyAzOTEuNTM1IDE5NC43NSA0MTEuMjg5IDE5NC43NSA0MzMuMTE1VjQ4OC41MzNDMTk0Ljc1IDQ5NC44NjcgMTg5LjYyMiA1MDAgMTgzLjI4OSA1MDBIMTE5LjIxNEM4MC42Mzc0IDUwMCA0NS45NzE2IDQ2OS4wNyA0NS4yOTc5IDQzMC40ODFWMjcyLjM0OUM0NS4yOTc5IDI1Ny4xOTQgNTUuMjE0MiAyNDMuODI0IDY5LjcxNjUgMjM5LjQyNloiIGZpbGw9InVybCgjcGFpbnQyX2xpbmVhcl8yMzI0XzYxODY5KSIvPgo8ZGVmcz4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDFfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPGxpbmVhckdyYWRpZW50IGlkPSJwYWludDJfbGluZWFyXzIzMjRfNjE4NjkiIHgxPSIyNDUuOTg2IiB5MT0iLTI3IiB4Mj0iNDI1LjQ5NiIgeTI9IjUwMi4zNzYiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj4KPHN0b3Agc3RvcC1jb2xvcj0iI0Y1RDQ1RSIvPgo8c3RvcCBvZmZzZXQ9IjEiIHN0b3AtY29sb3I9IiNGRjk2MDAiLz4KPC9saW5lYXJHcmFkaWVudD4KPC9kZWZzPgo8L3N2Zz4=", +} + export class InjectedConnector extends Connector { private _wallet?: StarknetWindowObject - private _options: InjectedConnectorOptions + private readonly _options: InjectedConnectorOptions constructor({ options }: { options: InjectedConnectorOptions }) { super() this._options = options } + get id(): string { + return this._options.id + } + + get name(): string { + this.ensureWallet() + return this._options.name ?? this._wallet?.name ?? this._options.id + } + + get icon(): ConnectorIcons { + this.ensureWallet() + const deafultIcon = { + dark: + walletIcons[this.id as keyof typeof walletIcons] || + WALLET_NOT_FOUND_ICON_DARK, + light: + walletIcons[this.id as keyof typeof walletIcons] || + WALLET_NOT_FOUND_ICON_LIGHT, + } + return this._options.icon || this._wallet?.icon || deafultIcon + } + available(): boolean { - // This should be awaited ideally but it would break compatibility with - // starknet-react. Do we need to make this async? Is ensureWallet needed? this.ensureWallet() return this._wallet !== undefined } + async chainId(): Promise { + this.ensureWallet() + const locked = await this.isLocked() + + if (!this._wallet || locked) { + throw new ConnectorNotConnectedError() + } + + try { + const chainIdHex = await this.request({ type: "wallet_requestChainId" }) + return BigInt(chainIdHex) + } catch { + throw new ConnectorNotFoundError() + } + } + async ready(): Promise { this.ensureWallet() @@ -50,47 +113,24 @@ export class InjectedConnector extends Connector { return false } - const permissions = await this._wallet.request({ + const permissions: Permission[] = await this.request({ type: "wallet_getPermissions", }) - return (permissions as Permission[]).includes(Permission.Accounts) + return permissions?.includes(Permission.Accounts) } - async chainId(): Promise { + async account( + provider: ProviderOptions | ProviderInterface, + ): Promise { this.ensureWallet() + const locked = await this.isLocked() - if (!this._wallet) { + if (locked || !this._wallet) { throw new ConnectorNotConnectedError() } - const chainId = await this._wallet.request({ - type: "wallet_requestChainId", - }) - return getStarknetChainId(chainId) - } - - private async onAccountsChanged(accounts?: string[]): Promise { - if (!accounts) { - return void this.emit("disconnect") - } - const account = accounts[0] - const chainId = await this.chainId() - this.emit("change", { account, chainId }) - } - - private onNetworkChanged(chainId?: string, accounts?: string[]): void { - const { SN_MAIN, SN_SEPOLIA } = constants.StarknetChainId - const account = accounts?.[0] - switch (chainId) { - case SN_MAIN: - case SN_SEPOLIA: - this.emit("change", { chainId, account }) - break - default: - this.emit("change", {}) - break - } + return new WalletAccount(provider, this._wallet) } async connect(): Promise { @@ -100,31 +140,32 @@ export class InjectedConnector extends Connector { throw new ConnectorNotFoundError() } - let accounts: string[] | null + let accounts: string[] try { - accounts = await this._wallet.request({ + accounts = await this.request({ type: "wallet_requestAccounts", - params: { silent_mode: false }, // explicit to show the modal }) } catch { - // NOTE: Argent v3.0.0 swallows the `.enable` call on reject, so this won't get hit. throw new UserRejectedRequestError() } if (!accounts) { - // NOTE: Argent v3.0.0 swallows the `.enable` call on reject, so this won't get hit. throw new UserRejectedRequestError() } - this._wallet.on("accountsChanged", this.onAccountsChanged.bind(this)) + this._wallet.on("accountsChanged", async (accounts) => { + await this.onAccountsChanged(accounts) + }) - this._wallet.on("networkChanged", this.onNetworkChanged.bind(this)) + this._wallet.on("networkChanged", (chainId, accounts) => { + this.onNetworkChanged(chainId, accounts) + }) await this.onAccountsChanged(accounts) - const account = accounts[0] - const chainId = await this.chainId() + const [account] = accounts + const chainId = await this.chainId() this.emit("connect", { account, chainId }) return { @@ -136,56 +177,74 @@ export class InjectedConnector extends Connector { async disconnect(): Promise { this.ensureWallet() removeStarknetLastConnectedWallet() - if (!this.available()) { + + if (!this._wallet) { throw new ConnectorNotFoundError() } + + this.emit("disconnect") } - async account(): Promise { + async request( + call: RequestFnCall, + ): Promise { this.ensureWallet() if (!this._wallet) { throw new ConnectorNotConnectedError() } - return this._wallet - .request({ - type: "wallet_requestAccounts", - params: { silent_mode: true }, - }) - .then((accounts) => accounts[0]) + try { + return await this._wallet.request(call) + } catch { + throw new UserRejectedRequestError() + } } - get id(): string { - return this._options.id - } + private async isLocked() { + const accounts = await this.request({ + type: "wallet_requestAccounts", + params: { silent_mode: true }, + }) - get name(): string { - if (!this._wallet) { - throw new ConnectorNotConnectedError() - } - return this._wallet.name + return accounts.length === 0 } - get icon(): ConnectorIcons { - const defaultIcons = { - dark: WALLET_NOT_FOUND_ICON_DARK, - light: WALLET_NOT_FOUND_ICON_LIGHT, - } + private ensureWallet() { + // biome-ignore lint/suspicious/noExplicitAny: any + const global_object: Record = globalThis - if (this._options.icon) { - return this._options.icon - } + const wallet: StarknetWindowObject = + global_object?.[`starknet_${this._options.id}`] - const walletIcon = this._wallet?.icon - if (walletIcon) { - const darkIcon = isString(walletIcon) ? walletIcon : walletIcon.dark - const lightIcon = isString(walletIcon) ? walletIcon : walletIcon.light + if (wallet) { + this._wallet = wallet + } + } - return { dark: darkIcon, light: lightIcon } + private async onAccountsChanged(accounts?: string[]): Promise { + if (!accounts) { + this.emit("disconnect") + } else { + const [account] = accounts + + if (account) { + const chainId = await this.chainId() + this.emit("change", { account, chainId }) + } else { + this.emit("disconnect") + } } + } - return defaultIcons + private onNetworkChanged(chainIdHex?: string, accounts?: string[]): void { + if (chainIdHex) { + const chainId = BigInt(chainIdHex) + const [account] = accounts || [] + this.emit("change", { chainId, account }) + } else { + this.emit("change", {}) + } } get wallet(): StarknetWindowObject { @@ -194,51 +253,4 @@ export class InjectedConnector extends Connector { } return this._wallet } - - private ensureWallet() { - const installed = getAvailableWallets(globalThis) - const wallet = installed.filter((w) => w.id === this._options.id)[0] - if (wallet) { - this._wallet = wallet - } - } -} - -function getAvailableWallets(obj: Record): StarknetWindowObject[] { - return Object.values( - Object.getOwnPropertyNames(obj).reduce< - Record - >((wallets, key) => { - if (key.startsWith("starknet")) { - const wallet = obj[key] - - if (isWalletObject(wallet) && !wallets[wallet.id]) { - wallets[wallet.id] = wallet as StarknetWindowObject - } - } - return wallets - }, {}), - ) -} - -// biome-ignore lint: wallet could be anything -function isWalletObject(wallet: any): boolean { - try { - return ( - wallet && - [ - // wallet's must have methods/members, see StarknetWindowObject - "request", - "on", - "off", - "version", - "id", - "name", - "icon", - ].every((key) => key in wallet) - ) - } catch (err) { - /* empty */ - } - return false } diff --git a/src/connectors/webwallet/helpers/openWebwallet.ts b/src/connectors/webwallet/helpers/openWebwallet.ts index 135bcba..f49103b 100644 --- a/src/connectors/webwallet/helpers/openWebwallet.ts +++ b/src/connectors/webwallet/helpers/openWebwallet.ts @@ -83,7 +83,6 @@ export const openWebwallet = async ( { modal, iframe }, ) return starknetWindowObject - /* } */ } else { const windowProxyClient = trpcProxyClient({}) return await getWebWalletStarknetObject( diff --git a/src/connectors/webwallet/index.ts b/src/connectors/webwallet/index.ts index 67df2dc..5b2c78a 100644 --- a/src/connectors/webwallet/index.ts +++ b/src/connectors/webwallet/index.ts @@ -1,25 +1,32 @@ +import { + AccountInterface, + ProviderInterface, + ProviderOptions, + WalletAccount, +} from "starknet" import { Permission, + RequestFnCall, + RpcMessage, + RpcTypeToMessageMap, type AccountChangeEventHandler, type StarknetWindowObject, } from "starknet-types" -import { - Connector, - type ConnectorData, - type ConnectorIcons, -} from "../connector" -import { setPopupOptions } from "./helpers/trpc" - import { ConnectorNotConnectedError, ConnectorNotFoundError, UserRejectedRequestError, } from "../../errors" +import { getStarknetChainId } from "../../helpers/getStarknetChainId" +import { removeStarknetLastConnectedWallet } from "../../helpers/lastConnected" +import { + Connector, + type ConnectorData, + type ConnectorIcons, +} from "../connector" import { DEFAULT_WEBWALLET_ICON, DEFAULT_WEBWALLET_URL } from "./constants" import { openWebwallet } from "./helpers/openWebwallet" -import { removeStarknetLastConnectedWallet } from "../../helpers/lastConnected" -import { constants } from "starknet" -import { getStarknetChainId } from "../../helpers/getStarknetChainId" +import { setPopupOptions } from "./helpers/trpc" let _wallet: StarknetWindowObject | null = null @@ -107,7 +114,7 @@ export class WebWalletConnector extends Connector { // Prevent trpc from throwing an error (closed prematurely) // this happens when 2 requests to webwallet are made in a row (trpc-browser is closing the first popup and requesting a new one right after) // won't be needed with chrome iframes will be enabled again (but still needed for other browsers) - await new Promise((r) => setTimeout(r, 100)) + await new Promise((r) => setTimeout(r, 200)) const chainId = await this.chainId() return { @@ -116,6 +123,20 @@ export class WebWalletConnector extends Connector { } } + async request( + call: RequestFnCall, + ): Promise { + if (!this._wallet) { + throw new ConnectorNotConnectedError() + } + try { + return await this._wallet.request(call) + } catch (e) { + console.error(e) + throw new UserRejectedRequestError() + } + } + async disconnect(): Promise { if (!this.available() && !this._wallet) { throw new ConnectorNotFoundError() @@ -126,22 +147,19 @@ export class WebWalletConnector extends Connector { removeStarknetLastConnectedWallet() } - async account(): Promise { + async account( + provider: ProviderOptions | ProviderInterface, + ): Promise { this._wallet = _wallet if (!this._wallet) { throw new ConnectorNotConnectedError() } - const [account] = await this._wallet.request({ - type: "wallet_requestAccounts", - params: { silent_mode: true }, - }) - - return account ?? null + return new WalletAccount(provider, this._wallet) } - async chainId(): Promise { + async chainId(): Promise { if (!this._wallet) { throw new ConnectorNotConnectedError() } @@ -150,7 +168,8 @@ export class WebWalletConnector extends Connector { type: "wallet_requestChainId", }) - return getStarknetChainId(chainId) + const hexChainId = getStarknetChainId(chainId) + return BigInt(hexChainId) } async initEventListener(accountChangeCb: AccountChangeEventHandler) { diff --git a/src/helpers/defaultConnectors.ts b/src/helpers/defaultConnectors.ts index e468e3b..85429d4 100644 --- a/src/helpers/defaultConnectors.ts +++ b/src/helpers/defaultConnectors.ts @@ -1,4 +1,4 @@ -import { type Connector } from "../connectors" +import { StarknetkitConnector } from "../connectors" import { ArgentMobileConnector, type ArgentMobileConnectorOptions, @@ -12,13 +12,13 @@ export const defaultConnectors = ({ }: { argentMobileOptions?: ArgentMobileConnectorOptions webWalletUrl?: string -}): Connector[] => { +}): StarknetkitConnector[] => { const isSafari = typeof window !== "undefined" ? /^((?!chrome|android).)*safari/i.test(navigator.userAgent) : false - const defaultConnectors: Connector[] = [] + const defaultConnectors: StarknetkitConnector[] = [] if (!isSafari) { defaultConnectors.push( diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts index 51963a0..216423d 100644 --- a/src/helpers/mapModalWallets.ts +++ b/src/helpers/mapModalWallets.ts @@ -1,12 +1,12 @@ -import { Connector } from "../connectors/connector" -import { ARGENT_X_ICON } from "../connectors/injected/constants" -import type { ModalWallet, StoreVersion } from "../window/modal" -import { isString } from "lodash-es" import { WalletProvider } from "get-starknet-core" +import { isString } from "lodash-es" import type { StarknetWindowObject } from "starknet-types" +import { StarknetkitConnector } from "../connectors/connector" +import { ARGENT_X_ICON } from "../connectors/injected/constants" +import type { ModalWallet, StoreVersion } from "../window/modal" interface SetConnectorsExpandedParams { - availableConnectors: Connector[] + availableConnectors: StarknetkitConnector[] installedWallets: StarknetWindowObject[] discoveryWallets: WalletProvider[] storeVersion: StoreVersion | null diff --git a/src/main.ts b/src/main.ts index 8b1e9df..35e5022 100644 --- a/src/main.ts +++ b/src/main.ts @@ -2,7 +2,7 @@ import type { DisconnectOptions } from "get-starknet-core" import sn from "get-starknet-core" import snV3 from "get-starknet-coreV3" import type { StarknetWindowObject } from "starknet-types" -import { ConnectorData, type Connector } from "./connectors" +import { Connector, ConnectorData, StarknetkitConnector } from "./connectors" import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants" import { defaultConnectors } from "./helpers/defaultConnectors" import { getStoreVersionFromBrowser } from "./helpers/getStoreVersionFromBrowser" @@ -15,7 +15,7 @@ import Modal from "./modal/Modal.svelte" import css from "./theme.css?inline" import type { ConnectOptions, ModalResult, ModalWallet } from "./window/modal" -let selectedConnector: Connector | null = null +let selectedConnector: StarknetkitConnector | null = null export const connect = async ({ modalMode = "canAsk", @@ -129,7 +129,7 @@ export const connect = async ({ target: getTarget(), props: { dappName, - callback: async (connector: Connector | null) => { + callback: async (connector: StarknetkitConnector | null) => { try { selectedConnector = connector const connectorData = (await connector?.connect()) ?? null @@ -183,10 +183,11 @@ export type { ConnectorData, DisconnectOptions, StarknetWindowObject, + StarknetkitConnector, defaultConnectors as starknetkitDefaultConnectors, } -export type * from "./window/modal" export * from "./window" +export type * from "./window/modal" export { useStarknetkitConnectModal } from "./hooks/useStarknetkitConnectModal" diff --git a/src/modal/ConnectorButton.svelte b/src/modal/ConnectorButton.svelte index 81cb1f4..9f2fe0b 100644 --- a/src/modal/ConnectorButton.svelte +++ b/src/modal/ConnectorButton.svelte @@ -1,12 +1,19 @@ diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte index 5bb035b..d1d85b3 100644 --- a/src/modal/Modal.svelte +++ b/src/modal/Modal.svelte @@ -2,14 +2,14 @@ import { onMount } from "svelte" import type { StarknetWindowObject } from "starknet-types" import ConnectorButton from "./ConnectorButton.svelte" - import type { ModalWallet } from "../types/modal" - import type { Connector } from "../connectors/connector" + import type { StarknetkitConnector } from "../connectors/connector" import { InjectedConnector } from "../connectors/injected" + import { ModalWallet } from "../window" export let dappName: string = window?.document.title ?? "" export let modalWallets: ModalWallet[] export let callback: ( - value: Connector | null, + value: StarknetkitConnector | null, ) => Promise = async () => {} export let theme: "light" | "dark" | null = null @@ -25,7 +25,7 @@ loadingItem = item } - let cb = async (connector: Connector | null) => { + let cb = async (connector: StarknetkitConnector | null) => { setLoadingItem(connector?.id ?? false) try { await callback(connector ?? null) diff --git a/src/window/modal.ts b/src/window/modal.ts index 202e6db..c2a3086 100644 --- a/src/window/modal.ts +++ b/src/window/modal.ts @@ -1,18 +1,18 @@ import type { GetWalletOptions } from "get-starknet-core" import { StarknetWindowObject } from "starknet-types" +import type { ArgentMobileConnectorOptions } from "../connectors/argentMobile" import type { - Connector, ConnectorData, ConnectorIcons, + StarknetkitConnector, } from "../connectors/connector" -import type { ArgentMobileConnectorOptions } from "../connectors/argentMobile" export type StoreVersion = "chrome" | "firefox" | "edge" export interface ConnectOptions extends GetWalletOptions { argentMobileOptions?: ArgentMobileConnectorOptions dappName?: string - connectors?: Connector[] + connectors?: StarknetkitConnector[] modalMode?: "alwaysAsk" | "canAsk" | "neverAsk" modalTheme?: "light" | "dark" | "system" storeVersion?: StoreVersion | null @@ -27,11 +27,11 @@ export type ModalWallet = { download?: string subtitle?: string title?: string - connector: Connector + connector: StarknetkitConnector } export type ModalResult = { - connector: Connector | null + connector: StarknetkitConnector | null connectorData: ConnectorData | null wallet?: StarknetWindowObject | null } diff --git a/src/window/window.ts b/src/window/window.ts index e26bb54..69879ec 100644 --- a/src/window/window.ts +++ b/src/window/window.ts @@ -6,7 +6,7 @@ const DECIMAL_REGEX = /^\d+$/ const shortStringSchema = z .string() - .nonempty("The short string cannot be empty") + .min(1, "The short string cannot be empty") .max(31, "The short string cannot exceed 31 characters") .refine( (value) => !HEX_REGEX.test(value), @@ -116,7 +116,7 @@ export const StarknetMethodArgumentsSchemas = { z .object({ starknetVersion: z - .union([z.literal("v3"), z.literal("v4")]) + .union([z.literal("v3"), z.literal("v4"), z.literal("v5")]) .optional(), }) .optional(), From 385c71efd690c9c8c87a6e679d18b06d0b2b8738 Mon Sep 17 00:00:00 2001 From: bluecco Date: Mon, 1 Jul 2024 12:15:26 +0200 Subject: [PATCH 2/7] chore: pr template --- .github/pull_request_template.md | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 .github/pull_request_template.md diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..c60d8e0 --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,25 @@ +### Issue / feature description + +`Quick description of the issue or the feature that is implemented in the pr ie: add new transitions between screens` + +### Changes + +`quick list regarding the related changes within the pr` + +ie: + +- add new connector +- fix injected connector +- ... + +### Checklist + +- [ ] Rebased to the last commit of the target branch (or merged) +- [ ] Code self-reviewed +- [ ] Code self-tested +- [ ] Tests updated (if needed) +- [ ] All tests are passing locally + +Please keep your pull request as small as possible. If you need to make multiple changes, please create separate pull requests for each change. Create a draft pull request if you need early feedback. This will mark the pull request as a work in progress and prevent it from being reviewed or merged until you are ready. + +Please move drafts to the ready for review (regular PR) when you are ready to start the review process and other developers will pick it up from there. From 054b0f99495424b0691fac6107a732381f53fa86 Mon Sep 17 00:00:00 2001 From: bluecco Date: Mon, 1 Jul 2024 12:29:01 +0200 Subject: [PATCH 3/7] chore: update dependencies --- package.json | 5 +- pnpm-lock.yaml | 810 ++++++++++-------- .../argentMobile/helpers/inAppBrowser.ts | 2 +- src/connectors/argentMobile/index.ts | 6 +- src/connectors/argentMobile/modal/index.ts | 2 +- .../argentMobile/modal/starknet/adapter.ts | 7 +- .../argentMobile/modal/starknet/signer.ts | 2 +- .../modal/starknet/starknet.model.ts | 2 +- src/connectors/connector.ts | 2 +- src/connectors/injected/index.ts | 4 +- .../webwallet/helpers/openWebwallet.ts | 2 +- src/connectors/webwallet/helpers/trpc.ts | 6 +- src/connectors/webwallet/index.ts | 4 +- .../argentStarknetWindowObject.ts | 2 +- src/helpers/getStarknetChainId.ts | 2 +- src/helpers/getWallets.ts | 4 +- src/helpers/mapModalWallets.ts | 4 +- src/main.ts | 11 +- src/modal/Modal.svelte | 2 +- src/window/modal.ts | 4 +- src/window/starknet.ts | 3 +- 21 files changed, 476 insertions(+), 410 deletions(-) diff --git a/package.json b/package.json index 3489fa0..6a66aa6 100644 --- a/package.json +++ b/package.json @@ -61,7 +61,8 @@ }, "dependencies": { "@starknet-io/get-starknet": "^4.0.0", - "@starknet-io/types-js": "^0.7.7", + "@starknet-io/get-starknet-core": "^4.0.0", + "@starknet-io/types-js": "^0.7.2", "@trpc/client": "^10.38.1", "@trpc/server": "^10.38.1", "@walletconnect/sign-client": "^2.11.0", @@ -69,7 +70,6 @@ "detect-browser": "^5.3.0", "eventemitter3": "^5.0.1", "events": "^3.3.0", - "get-starknet-core": "4.0.0-next.5", "get-starknet-coreV3": "npm:get-starknet-core@3.2.0", "lodash-es": "^4.17.21", "svelte-forms": "^2.3.1", @@ -100,7 +100,6 @@ "prettier": "^3.0.3", "prettier-plugin-import-sort": "^0.0.7", "semantic-release": "^21.1.1", - "starknet-types": "^0.7.2", "starknet4": "npm:starknet@4.22.0", "starknet5": "npm:starknet@5.29.0", "svelte": "^4.0.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index eda5ec9..1876cc7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -11,8 +11,11 @@ importers: '@starknet-io/get-starknet': specifier: ^4.0.0 version: 4.0.0 + '@starknet-io/get-starknet-core': + specifier: ^4.0.0 + version: 4.0.0 '@starknet-io/types-js': - specifier: ^0.7.7 + specifier: ^0.7.2 version: 0.7.7 '@trpc/client': specifier: ^10.38.1 @@ -22,7 +25,7 @@ importers: version: 10.45.2 '@walletconnect/sign-client': specifier: ^2.11.0 - version: 2.13.2 + version: 2.13.3 bowser: specifier: ^2.11.0 version: 2.11.0 @@ -35,18 +38,15 @@ importers: events: specifier: ^3.3.0 version: 3.3.0 - get-starknet-core: - specifier: 4.0.0-next.5 - version: 4.0.0-next.5 get-starknet-coreV3: specifier: npm:get-starknet-core@3.2.0 - version: get-starknet-core@3.2.0(starknet@6.9.0) + version: get-starknet-core@3.2.0(starknet@6.10.1) lodash-es: specifier: ^4.17.21 version: 4.17.21 starknet: specifier: ^6.9.0 - version: 6.9.0 + version: 6.10.1 svelte-forms: specifier: ^2.3.1 version: 2.3.1 @@ -62,10 +62,10 @@ importers: version: 17.8.1 '@semantic-release/git': specifier: ^10.0.1 - version: 10.0.1(semantic-release@21.1.2(typescript@5.4.5)) + version: 10.0.1(semantic-release@21.1.2(typescript@5.5.2)) '@sveltejs/vite-plugin-svelte': specifier: ^2.2.0 - version: 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)) + version: 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9)) '@tsconfig/svelte': specifier: ^5.0.0 version: 5.0.4 @@ -77,34 +77,34 @@ importers: version: 4.17.12 '@types/node': specifier: ^20.5.7 - version: 20.14.2 + version: 20.14.9 '@typescript-eslint/eslint-plugin': specifier: ^6.5.0 - version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5) + version: 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint@8.57.0)(typescript@5.5.2) '@walletconnect/ethereum-provider': specifier: ^2.11.0 - version: 2.13.2(react@18.3.1) + version: 2.13.3(react@18.3.1) '@walletconnect/jsonrpc-provider': specifier: ^1.0.13 version: 1.0.14 '@walletconnect/signer-connection': specifier: ^2.11.0 - version: 2.13.2 + version: 2.13.3 '@walletconnect/types': specifier: ^2.11.0 - version: 2.13.2 + version: 2.13.3 '@walletconnect/utils': specifier: ^2.11.0 - version: 2.13.2 + version: 2.13.3 autoprefixer: specifier: ^10.4.7 - version: 10.4.19(postcss@8.4.38) + version: 10.4.19(postcss@8.4.39) eslint: specifier: ^8.48.0 version: 8.57.0 eslint-config-next: specifier: ^13.4.19 - version: 13.5.6(eslint@8.57.0)(typescript@5.4.5) + version: 13.5.6(eslint@8.57.0)(typescript@5.5.2) husky: specifier: ^8.0.3 version: 8.0.3 @@ -113,10 +113,10 @@ importers: version: 14.0.1 postcss: specifier: ^8.4.21 - version: 8.4.38 + version: 8.4.39 postcss-load-config: specifier: ^4.0.1 - version: 4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)) + version: 4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)) prettier: specifier: ^3.0.3 version: 3.3.2 @@ -125,10 +125,7 @@ importers: version: 0.0.7(prettier@3.3.2) semantic-release: specifier: ^21.1.1 - version: 21.1.2(typescript@5.4.5) - starknet-types: - specifier: ^0.7.2 - version: 0.7.2 + version: 21.1.2(typescript@5.5.2) starknet4: specifier: npm:starknet@4.22.0 version: starknet@4.22.0 @@ -140,31 +137,31 @@ importers: version: 4.2.18 svelte-check: specifier: ^3.5.1 - version: 3.8.0(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)))(postcss@8.4.38)(svelte@4.2.18) + version: 3.8.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)))(postcss@8.4.39)(svelte@4.2.18) svelte-preprocess: specifier: ^5.0.4 - version: 5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)))(postcss@8.4.38)(svelte@4.2.18)(typescript@5.4.5) + version: 5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.2) tailwindcss: specifier: ^3.1.6 - version: 3.4.4(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)) + version: 3.4.4(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)) tslib: specifier: ^2.4.0 version: 2.6.3 typescript: specifier: ^5.1.6 - version: 5.4.5 + version: 5.5.2 vite: specifier: ^4.3.8 - version: 4.5.3(@types/node@20.14.2) + version: 4.5.3(@types/node@20.14.9) vite-plugin-dts: specifier: ^3.0.0 - version: 3.9.1(@types/node@20.14.2)(rollup@4.18.0)(typescript@5.4.5)(vite@4.5.3(@types/node@20.14.2)) + version: 3.9.1(@types/node@20.14.9)(rollup@4.18.0)(typescript@5.5.2)(vite@4.5.3(@types/node@20.14.9)) vitest: specifier: ^1.6.0 - version: 1.6.0(@types/node@20.14.2) + version: 1.6.0(@types/node@20.14.9) ws: specifier: ^8.8.1 - version: 8.17.0 + version: 8.17.1 zod: specifier: ^3.20.6 version: 3.23.8 @@ -254,10 +251,6 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/runtime@7.24.7': - resolution: {integrity: sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==} - engines: {node: '>=6.9.0'} - '@babel/template@7.24.7': resolution: {integrity: sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==} engines: {node: '>=6.9.0'} @@ -623,8 +616,8 @@ packages: peerDependencies: eslint: ^6.0.0 || ^7.0.0 || >=8.0.0 - '@eslint-community/regexpp@4.10.1': - resolution: {integrity: sha512-Zm2NGpWELsQAD1xsJzGQpYfvICSsFkEpU0jxBjfdC6uNEWXcHnfs9hScFWtXVDVl+rBQJGrl4g1vcKIejpH9dA==} + '@eslint-community/regexpp@4.11.0': + resolution: {integrity: sha512-G/M/tIiMrTAxEWRfLfQJMmGNX28IxBg4PBz8XqQhqUHLFI6TL2htpIB1iQCj144V5ee/JaKyT9/WZ0MGZWfA7A==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} '@eslint/eslintrc@2.1.4': @@ -1240,14 +1233,14 @@ packages: '@types/lodash-es@4.17.12': resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} - '@types/lodash@4.17.5': - resolution: {integrity: sha512-MBIOHVZqVqgfro1euRDWX7OO0fBVUUMrN6Pwm8LQsz8cWhEpihlvR70ENj3f40j58TNxZaWv2ndSkInykNBBJw==} + '@types/lodash@4.17.6': + resolution: {integrity: sha512-OpXEVoCKSS3lQqjx9GGGOapBeuW5eUboYHRlHP9urXPX25IKZ6AnP5ZRxtVf63iieUbsHxLn8NQ5Nlftc6yzAA==} '@types/minimist@1.2.5': resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==} - '@types/node@20.14.2': - resolution: {integrity: sha512-xyu6WAMVwv6AKFLB+e/7ySZVr/0zLCzOa7rSpq6jNwpqOrUbcACDWC+53d4n2QHOnDou0fbIsg8wZu/sxrnI4Q==} + '@types/node@20.14.9': + resolution: {integrity: sha512-06OCtnTXtWOZBJlRApleWndH4JsRVs1pDCc8dLSQp+7PpUpX3ePdHyeNSFTeSe7FtKyQkrlPvHwJOW3SLd8Oyg==} '@types/node@20.5.1': resolution: {integrity: sha512-4tT2UrL5LBqDwoed9wZ6N3umC4Yhz3W3FloMmiiG4JwmUJWpie0c7lcnUNd4gtMKuDEO4wRVS8B6Xa0uMRsMKg==} @@ -1352,11 +1345,11 @@ packages: '@volar/typescript@1.11.1': resolution: {integrity: sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==} - '@vue/compiler-core@3.4.27': - resolution: {integrity: sha512-E+RyqY24KnyDXsCuQrI+mlcdW3ALND6U7Gqa/+bVwbcpcR3BRRIckFoz7Qyd4TTlnugtwuI7YgjbvsLmxb+yvg==} + '@vue/compiler-core@3.4.31': + resolution: {integrity: sha512-skOiodXWTV3DxfDhB4rOf3OGalpITLlgCeOwb+Y9GJpfQ8ErigdBUHomBzvG78JoVE8MJoQsb+qhZiHfKeNeEg==} - '@vue/compiler-dom@3.4.27': - resolution: {integrity: sha512-kUTvochG/oVgE1w5ViSr3KUBh9X7CWirebA3bezTbB5ZKBQZwR2Mwj9uoSKRMFcz4gSMzzLXBPD6KpCLb9nvWw==} + '@vue/compiler-dom@3.4.31': + resolution: {integrity: sha512-wK424WMXsG1IGMyDGyLqB+TbmEBFM78hIsOJ9QwUVLGrcSk0ak6zYty7Pj8ftm7nEtdU/DGQxAXp0/lM/2cEpQ==} '@vue/language-core@1.8.27': resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==} @@ -1366,17 +1359,17 @@ packages: typescript: optional: true - '@vue/shared@3.4.27': - resolution: {integrity: sha512-DL3NmY2OFlqmYYrzp39yi3LDkKxa5vZVwxWdQ3rG0ekuWscHraeIbnI8t+aZK7qhYqEqWKTUdijadunb9pnrgA==} + '@vue/shared@3.4.31': + resolution: {integrity: sha512-Yp3wtJk//8cO4NItOPpi3QkLExAr/aLBGZMmTtW9WpdwBCJpRM6zj9WgWktXAl8IDIozwNMByT45JP3tO3ACWA==} - '@walletconnect/core@2.13.2': - resolution: {integrity: sha512-t1miHox71hh7tUrYFhLzNkm67wSS4kwVWO2jpwY5aHOoqkFpDSjb3A3nr+Adjrz4ZNxpObLJutQpApqkgwisjw==} + '@walletconnect/core@2.13.3': + resolution: {integrity: sha512-TdF+rC6rONJGyOUtt/nLkbyQWjnkwbD3kXq3ZA0Q7+tYtmSjTDE4wbArlLbHIbtf69g+9/DpEVEQimWWcEOn2g==} '@walletconnect/environment@1.0.1': resolution: {integrity: sha512-T426LLZtHj8e8rYnKfzsw1aG6+M0BT1ZxayMdv/p8yM0MU+eJDISqNY3/bccxRr4LrF9csq02Rhqt08Ibl0VRg==} - '@walletconnect/ethereum-provider@2.13.2': - resolution: {integrity: sha512-clGxTv5xb1uxTs2yLB95ePN+ap7zUEZm0KZdjl4eB9FLypVow017MvOH1RSBC/2fp0Y8iUkYXCXRD+Cr9Thszg==} + '@walletconnect/ethereum-provider@2.13.3': + resolution: {integrity: sha512-gThsYguFJ7XZp18GP23W6TooQaS6XlF4faFDXPCQVqlWjzEatkkQ2R6Hhv4a4qk4D21qNXirCFnI59Xhbj0KJQ==} '@walletconnect/events@1.0.1': resolution: {integrity: sha512-NPTqaoi0oPBVNuLv7qPaJazmGHs5JGyO8eEAk5VGKmJzDR7AHzD4k6ilox5kxk1iwiOnFopBOOMLs86Oa76HpQ==} @@ -1428,23 +1421,23 @@ packages: '@walletconnect/safe-json@1.0.2': resolution: {integrity: sha512-Ogb7I27kZ3LPC3ibn8ldyUr5544t3/STow9+lzz7Sfo808YD7SBWk7SAsdBFlYgP2zDRy2hS3sKRcuSRM0OTmA==} - '@walletconnect/sign-client@2.13.2': - resolution: {integrity: sha512-KIjAYwEkjR55uy0eZTRbKKxiLpC/hZYmjZEQf2stcTVuTOes5q3aZDlHXFHrVWn8b0pl7k0BqcDDNGklU7Xaew==} + '@walletconnect/sign-client@2.13.3': + resolution: {integrity: sha512-3Pcq6trHWdBZn5X0VUFQ3zJaaqyEbMW9WNVKcZ2SakIpQAwySd08Mztvq48G98jfucdgP3tjGPbBvzHX9vJX7w==} - '@walletconnect/signer-connection@2.13.2': - resolution: {integrity: sha512-dIwX/wuiEtSC5trOGFrdyop534cRYB5yBKqwzLdzoldf0WcIACBgGoHSrwv+yWsbFyJoFFX9OYV9vzKaS8sCfA==} + '@walletconnect/signer-connection@2.13.3': + resolution: {integrity: sha512-RzYKzq+4ajUDeoF6xFFxYN+ChLDskOmxhc4meLGQ8+OEdrgOuBhHu/ooxZqfs55SrZJcB9Rc8hjA/XVc6cbRRQ==} '@walletconnect/time@1.0.2': resolution: {integrity: sha512-uzdd9woDcJ1AaBZRhqy5rNC9laqWGErfc4dxA9a87mPdKOgWMD85mcFo9dIYIts/Jwocfwn07EC6EzclKubk/g==} - '@walletconnect/types@2.13.2': - resolution: {integrity: sha512-rcomCPp1dwslIZC/e01BLSWC6to2TFM4I1QbAo7kaqh6xTVN9rCtGfdaNi0RbtfBhCEULFvc18v33r/wR0iAPQ==} + '@walletconnect/types@2.13.3': + resolution: {integrity: sha512-9UdtLoQqwGFfepCPprUAXeUbKg9zyDarPRmEJVco51OWXHCOpvRgroWk54fQHDhCUIfDELjObY6XNAzNrmNYUA==} - '@walletconnect/universal-provider@2.13.2': - resolution: {integrity: sha512-CZEFtTCXOhqcU474MyAlj1VFsX9oCXe9V/6DWsgS0SrfYCFfqAgHQLsv2xR/zteNsQH6wid0rPwcMCnWngp2hQ==} + '@walletconnect/universal-provider@2.13.3': + resolution: {integrity: sha512-2tuV2d8AdB4Fg/uMs8IdNHrjYy1Tz1uT5kzaT8X1/wx5DHHa/oaheoY5kDZHI0L1oNIg/OlM0/ovonGIcI5ddw==} - '@walletconnect/utils@2.13.2': - resolution: {integrity: sha512-wDu+g/lWO93dVrntWgxwiX6XeuCHD9kxMWLEtyGZ7AmWHZv3U1Z8EWIU/e9kv4yBQxmHN3b0DhcrowfcMF3YOA==} + '@walletconnect/utils@2.13.3': + resolution: {integrity: sha512-hjyyNhnhTCezGNr6OCfKRzqRsiak+p+YP57iRo1Tsf222fsj/9JD++MP97YiDwc4e4xXaZp/boiLB+8hJHsCog==} '@walletconnect/window-getters@1.0.1': resolution: {integrity: sha512-vHp+HqzGxORPAN8gY03qnbTMnhqIwjeRJNOMOAzePRg4xVEEE2WvYsI9G2NMjOknA8hnuYbU3/hwLcKbjhc8+Q==} @@ -1553,6 +1546,9 @@ packages: argv-formatter@1.0.0: resolution: {integrity: sha512-F2+Hkm9xFaRg+GkaNnbwXNDV5O6pnCFEmqyhvfC/Ic5LbgOWjJh3L+mN/s91rxVL3znE7DYVpW0GJFT+4YBgWw==} + aria-query@5.1.3: + resolution: {integrity: sha512-R5iJ5lkuHybztUfuOAznmboyjWq8O6sqNqtK7CLOqdydi54VNbORp49mb14KbWgG1QD3JFO9hJdZ+y4KutfdOQ==} + aria-query@5.3.0: resolution: {integrity: sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==} @@ -1623,12 +1619,12 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axe-core@4.7.0: - resolution: {integrity: sha512-M0JtH+hlOL5pLQwHOLNYZaXuhqmvS8oExsqB1SBYgA4Dk7u/xx+YdGHXaK5pyUfed5mYXdlYiphWq3G8cRi5JQ==} + axe-core@4.9.1: + resolution: {integrity: sha512-QbUdXJVTpvUTHU7871ppZkdOLBeGUKBQWHkHrvN2V9IQWGMt61zf3B45BtzjxEJzYuj0JBjBZP/hmYS/R9pmAw==} engines: {node: '>=4'} - axobject-query@3.2.1: - resolution: {integrity: sha512-jsyHu61e6N4Vbz/v18DHwWYKK0bSWLqn47eeDSKPB7m8tqMHF9YJ+mhIk2lVteyZrY8tnSj/jHOv4YiTCuCJgg==} + axobject-query@3.1.1: + resolution: {integrity: sha512-goKlv8DZrK9hUh975fnHzhNIO4jUnFCfv/dszV5VwUGDFjI6vQ2VwoyjYjYNEbBE8AH87TduWP5uyDR1D+Iteg==} axobject-query@4.0.0: resolution: {integrity: sha512-+60uv1hiVFhHZeO+Lz0RYzsVHy5Wr1ayX0mwda9KPDVLNJgZ1T9Ny7VmFbLDzxsH0D87I86vgj3gFrjTJUYznw==} @@ -1720,8 +1716,8 @@ packages: resolution: {integrity: sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==} engines: {node: '>=6'} - caniuse-lite@1.0.30001634: - resolution: {integrity: sha512-fbBYXQ9q3+yp1q1gBk86tOFs4pyn/yxFm5ZNP18OXJDfA3txImOY9PhfxVggZ4vRHDqoU8NrKU81eN0OtzOgRA==} + caniuse-lite@1.0.30001639: + resolution: {integrity: sha512-eFHflNTBIlFwP2AIKaYuBQN/apnUoKNhBdza8ZnW/h2di4LCZ4xFqYlxUxo+LQ76KFI1PGcC1QDxMbxTZpSCAg==} cardinal@2.1.1: resolution: {integrity: sha512-JSr5eOgoEymtYHBjNWyjrMqet9Am2miJhlfKNdqLp6zoeAh0KN5dRAcxlecj5mAJrmQomgiOBj35xHLrFjqBpw==} @@ -1994,6 +1990,10 @@ packages: resolution: {integrity: sha512-SUwdGfqdKOwxCPeVYjwSyRpJ7Z+fhpwIAtmCUdZIWZ/YP5R9WAsyuSgpLVDi9bjWoN2LXHNss/dk3urXtdQxGg==} engines: {node: '>=6'} + deep-equal@2.2.3: + resolution: {integrity: sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==} + engines: {node: '>= 0.4'} + deep-extend@0.6.0: resolution: {integrity: sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==} engines: {node: '>=4.0.0'} @@ -2084,8 +2084,8 @@ packages: eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} - electron-to-chromium@1.4.802: - resolution: {integrity: sha512-TnTMUATbgNdPXVSHsxvNVSG0uEd6cSZsANjm8c9HbvflZVVn1yTRcmVXYT1Ma95/ssB/Dcd30AHweH2TE+dNpA==} + electron-to-chromium@1.4.815: + resolution: {integrity: sha512-OvpTT2ItpOXJL7IGcYakRjHCt8L5GrrN/wHCQsRB4PQa1X9fe+X9oen245mIId7s14xvArCGSTIq644yPUKKLg==} elliptic@6.5.5: resolution: {integrity: sha512-7EjbcmUm17NQFu4Pmgmq2olYMj8nwMnpcddByChSUjArp8F5DQWcIcpriwO4ZToLNAJig0yiyjswfyGNje/ixw==} @@ -2129,6 +2129,9 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} + es-get-iterator@1.1.3: + resolution: {integrity: sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==} + es-iterator-helpers@1.0.19: resolution: {integrity: sha512-zoMwbCcH5hwUkKJkT8kDIBZSz9I6mVG//+lDCinLCGov4+r7NIy0ld8o03M0cJxl2spVf6ESYVS6/gpIfq1FFw==} engines: {node: '>= 0.4'} @@ -2227,8 +2230,8 @@ packages: '@typescript-eslint/parser': optional: true - eslint-plugin-jsx-a11y@6.8.0: - resolution: {integrity: sha512-Hdh937BS3KdwwbBaKd5+PLCOmYY6U4f2h9Z2ktwtNKvIdIEu137rjYbcb9ApSbVJfWxANNuiKTD/9tOKjK9qOA==} + eslint-plugin-jsx-a11y@6.9.0: + resolution: {integrity: sha512-nOFOCaJG2pYqORjK19lqPqxMO/JpvdCZdPtNdxY3kvom3jTvkAbOvQvD8wuD0G8BYR0IGAGYDlzqWJOh/ybn2g==} engines: {node: '>=4.0'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 @@ -2239,8 +2242,8 @@ packages: peerDependencies: eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 - eslint-plugin-react@7.34.2: - resolution: {integrity: sha512-2HCmrU+/JNigDN6tg55cRDKCQWicYAPB38JGSFDQt95jDm8rrvSUo7YPkOIm5l6ts1j1zCvysNcasvfTMQzUOw==} + eslint-plugin-react@7.34.3: + resolution: {integrity: sha512-aoW4MV891jkUulwDApQbPYTVZmeuSyFrudpbTAQuj5Fv8VL+o6df2xIGpw8B0hPjAaih1/Fb0om9grCdyFYemA==} engines: {node: '>=4'} peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 @@ -2390,8 +2393,8 @@ packages: for-each@0.3.3: resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==} - foreground-child@3.2.0: - resolution: {integrity: sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==} + foreground-child@3.2.1: + resolution: {integrity: sha512-PXUUyLqrR2XCWICfv6ukppP96sdFwWbNEnfEMt7jNsISjMsvaLNinAHNDYyvkyU+SZG2BTSbT5NjG+vZslfGTA==} engines: {node: '>=14'} fraction.js@4.3.7: @@ -2453,8 +2456,8 @@ packages: peerDependencies: starknet: ^5.18.0 - get-starknet-core@4.0.0-next.5: - resolution: {integrity: sha512-zZ3i4E5UYF1f04fgkwfaVC0uj1pvdBlzsDqXEAfb4jc1WO4zM7rIm4XAUqdMwVSr4CBend5RM7U+zv166fBNYg==} + get-starknet-core@4.0.0: + resolution: {integrity: sha512-6pLmidQZkC3wZsrHY99grQHoGpuuXqkbSP65F8ov1/JsEI8DDLkhsAuLCKFzNOK56cJp+f1bWWfTJ57e9r5eqQ==} get-stream@6.0.1: resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==} @@ -2491,8 +2494,8 @@ packages: resolution: {integrity: sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==} engines: {node: '>=10.13.0'} - glob@10.4.1: - resolution: {integrity: sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==} + glob@10.4.2: + resolution: {integrity: sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==} engines: {node: '>=16 || 14 >=14.18'} hasBin: true @@ -2524,8 +2527,8 @@ packages: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} - globby@14.0.1: - resolution: {integrity: sha512-jOMLD2Z7MAhyG8aJpNOpmziMOP4rPLcc95oQPKXBazW82z+CEgPFBQvEpRUa1KeIMUJo4Wsm+q6uzO/Q/4BksQ==} + globby@14.0.2: + resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} engines: {node: '>=18'} gopd@1.0.1: @@ -2540,8 +2543,8 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - h3@1.11.1: - resolution: {integrity: sha512-AbaH6IDnZN6nmbnJOH72y3c5Wwh9P97soSVdGSBbcDACRdkC0FEWf25pzx4f/NuOCK6quHmW18yF2Wx+G4Zi1A==} + h3@1.12.0: + resolution: {integrity: sha512-Zi/CcNeWBXDrFNlV0hUBJQR9F7a96RjMeAZweW/ZWkR9fuXrMcvKnSA63f/zZ9l0GgQOZDVHGvXivNN9PWOwhA==} handlebars@4.7.8: resolution: {integrity: sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==} @@ -2618,8 +2621,8 @@ packages: resolution: {integrity: sha512-S9wWkJ/VSY9/k4qcjG318bqJNruzE4HySUhFYknwmu6LBP97KLLfwNf+n4V1BHurvFNkSKLFnK/RsuUnRTf9Vw==} engines: {iojs: '>= 1.0.0', node: '>= 0.12.0'} - https-proxy-agent@7.0.4: - resolution: {integrity: sha512-wlwpilI7YdjSkWaQ/7omYBMTliDcmCN8OLihO6I9B86g06lMyAoqgoDpV0XqoaPOKj+0DIdAvnsWfyAAhmimcg==} + https-proxy-agent@7.0.5: + resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} human-signals@2.1.0: @@ -2713,6 +2716,10 @@ packages: iron-webcrypto@1.2.1: resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} + is-arguments@1.1.1: + resolution: {integrity: sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==} + engines: {node: '>= 0.4'} + is-array-buffer@3.0.4: resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==} engines: {node: '>= 0.4'} @@ -2743,8 +2750,9 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.13.1: - resolution: {integrity: sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==} + is-core-module@2.14.0: + resolution: {integrity: sha512-a5dFJih5ZLYlRtDc0dZWP7RiKr6xIKzmn/oAYCDvdLThadVgyJwlaoQPmRtMSpz+rk0OGAgIu+TcM9HUF0fk1A==} + engines: {node: '>= 0.4'} is-data-view@1.0.1: resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} @@ -3166,8 +3174,8 @@ packages: loupe@2.3.7: resolution: {integrity: sha512-zSMINGVYkdpYSOBmLi0D1Uo7JU9nVdQKrHxC8eYlV+9YKK9WePqAlL7lSlorG/U2Fw1w0hTBmaa/jrQ3UbPHtA==} - lru-cache@10.2.2: - resolution: {integrity: sha512-9hp3Vp2/hFQUiIwKo8XCeFVnrg8Pk3TYNPIR7tJADKi5YfcF7vEaK7avFHTlSy3kOKYaJQaalfEo6YuXdceBOQ==} + lru-cache@10.3.0: + resolution: {integrity: sha512-CQl19J/g+Hbjbv4Y3mFNNXFEL/5t/KCg8POCuUqd4rMKjGG+j1ybER83hxV58zL+dFI1PTkt3GNFSHRt+d8qEQ==} engines: {node: 14 || >=16.14} lru-cache@5.1.1: @@ -3266,8 +3274,8 @@ packages: resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==} engines: {node: '>=16 || 14 >=14.17'} - minimatch@9.0.4: - resolution: {integrity: sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==} + minimatch@9.0.5: + resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} minimist-options@4.1.0: @@ -3361,8 +3369,8 @@ packages: resolution: {integrity: sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==} engines: {node: '>=10'} - normalize-package-data@6.0.1: - resolution: {integrity: sha512-6rvCfeRW+OEZagAB4lMLSNuTNYZWLVtKccK79VSTf//yTY5VOCgcpH80O+bZK8Neps7pUnd5G+QlMg1yV/2iZQ==} + normalize-package-data@6.0.2: + resolution: {integrity: sha512-V6gygoYb/5EmNI+MEGrWkC+e6+Rr7mTmfHrxDbLzxQogBkgzo76rkok0Am6thgSF7Mv2nLOajAJj5vDJZEFn7g==} engines: {node: ^16.14.0 || >=18.0.0} normalize-path@3.0.0: @@ -3469,8 +3477,13 @@ packages: resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==} engines: {node: '>= 6'} - object-inspect@1.13.1: - resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==} + object-inspect@1.13.2: + resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==} + engines: {node: '>= 0.4'} + + object-is@1.1.6: + resolution: {integrity: sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==} + engines: {node: '>= 0.4'} object-keys@1.1.1: resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} @@ -3592,6 +3605,9 @@ packages: resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} engines: {node: '>=6'} + package-json-from-dist@1.0.0: + resolution: {integrity: sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==} + pako@2.1.0: resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==} @@ -3700,8 +3716,8 @@ packages: resolution: {integrity: sha512-C+VUP+8jis7EsQZIhDYmS5qlNtjv2yP4SNtjXK9AP1ZcTRlnSfuumaTnRfYZnYgUUYVIKqL0fRvmUGDV2fmp6g==} engines: {node: '>=4'} - pkg-types@1.1.1: - resolution: {integrity: sha512-ko14TjmDuQJ14zsotODv7dBlwxKhUKQEhuhmbqo1uCi9BB0Z2alo/wAXg6q1dTR5TyuqYyWhjtfe/Tsh+X28jQ==} + pkg-types@1.1.2: + resolution: {integrity: sha512-VEGf1he2DR5yowYRl0XJhWJq5ktm9gYIsH+y8sNJpHlxch7JPDaufgrsl4vYjd9hMUY8QVjoNncKbow9I7exyA==} pngjs@5.0.0: resolution: {integrity: sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==} @@ -3748,8 +3764,8 @@ packages: postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} - postcss@8.4.38: - resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + postcss@8.4.39: + resolution: {integrity: sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==} engines: {node: ^10 || ^12 || >=14} prelude-ls@1.2.1: @@ -3876,9 +3892,6 @@ packages: resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} engines: {node: '>= 0.4'} - regenerator-runtime@0.14.1: - resolution: {integrity: sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==} - regexp.prototype.flags@1.5.2: resolution: {integrity: sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==} engines: {node: '>= 0.4'} @@ -4131,22 +4144,22 @@ packages: stackback@0.0.2: resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==} - starknet-types@0.7.2: - resolution: {integrity: sha512-r3JJ0rrK0g3FnVRGcFiLY+9YT5WZgxB4TKBfR44wYGevHtKEM6BM5B+Gn1eou1zV7xEAwz3GpmvLSQTUAzDhsw==} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. - starknet@4.22.0: resolution: {integrity: sha512-jC9Taxb6a/ht9zmS1LU/DSLfwJKpgCJnE9AktVksc5SE/+jQMpqxsq6fm7PRiqupjiqRC1DOS8N47cj+KaGv4Q==} starknet@5.29.0: resolution: {integrity: sha512-eEcd6uiYIwGvl8MtHOsXGBhREqjJk84M/qUkvPLQ3n/JAMkbKBGnygDlh+HAsvXJsGlMQfwrcVlm6KpDoPha7w==} - starknet@6.9.0: - resolution: {integrity: sha512-8860J7sGUr5UO/BDl3pjCZNUs/vgUM75wVoI93iOYLbTGF0f6MvFZsMOd73tsPKjEcG8V5BTSx6I7seDhQ9osw==} + starknet@6.10.1: + resolution: {integrity: sha512-4ydBCmChT+1kFdcgU4azhEfqlBUmHZVlrga7JG8urnzGRplPBhYmpAkQYhq5BHpOxyY3483gyFCAqwPM+9QY7w==} std-env@3.7.0: resolution: {integrity: sha512-JPbdCEQLj1w5GilpiHAx3qJvFndqybBysA3qUOnznweH4QbNYUsW/ea8QzSrnh0vNsezMMw5bcVool8lM0gwzg==} + stop-iteration-iterator@1.0.0: + resolution: {integrity: sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==} + engines: {node: '>= 0.4'} + stream-combiner2@1.1.1: resolution: {integrity: sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==} @@ -4169,6 +4182,9 @@ packages: resolution: {integrity: sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==} engines: {node: '>=12'} + string.prototype.includes@2.0.0: + resolution: {integrity: sha512-E34CkBgyeqNDcrbU76cDjL5JLcVrtSdYq0MEh/B10r17pRP4ciHLwTgnuLV8Ay6cgEMLkcBkFCKyFZ43YldYzg==} + string.prototype.matchall@4.0.11: resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==} engines: {node: '>= 0.4'} @@ -4250,8 +4266,8 @@ packages: resolution: {integrity: sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==} engines: {node: '>= 0.4'} - svelte-check@3.8.0: - resolution: {integrity: sha512-7Nxn+3X97oIvMzYJ7t27w00qUf1Y52irE2RU2dQAd5PyvfGp4E7NLhFKVhb6PV2fx7dCRMpNKDIuazmGthjpSQ==} + svelte-check@3.8.4: + resolution: {integrity: sha512-61aHMkdinWyH8BkkTX9jPLYxYzaAAz/FK/VQqdr2FiCQQ/q04WCwDlpGbHff1GdrMYTmW8chlTFvRWL9k0A8vg==} hasBin: true peerDependencies: svelte: ^3.55.0 || ^4.0.0-next.0 || ^4.0.0 || ^5.0.0-next.0 @@ -4472,8 +4488,8 @@ packages: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - type-fest@4.20.0: - resolution: {integrity: sha512-MBh+PHUHHisjXf4tlx0CFWoMdjx8zCMLJHOjnV1prABYZFHqtFOyauCIK2/7w4oIfwkF8iNhLtnJEfVY2vn3iw==} + type-fest@4.20.1: + resolution: {integrity: sha512-R6wDsVsoS9xYOpy8vgeBlqpdOyzJ12HNfQhC/aAKWM3YoCV9TtunJzh/QpkMgeDhkoynDcw5f1y+qF9yc/HHyg==} engines: {node: '>=16'} typed-array-buffer@1.0.2: @@ -4511,8 +4527,8 @@ packages: engines: {node: '>=14.17'} hasBin: true - typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} + typescript@5.5.2: + resolution: {integrity: sha512-NcRtPEOsPFFWjobJEtfihkLCZCXZt/os3zf8nTxjVH3RvTSxjrCamJpbExGvYOF+tFHc3pA65qpdwPbzjohhew==} engines: {node: '>=14.17'} hasBin: true @@ -4708,8 +4724,8 @@ packages: terser: optional: true - vite@5.3.0: - resolution: {integrity: sha512-hA6vAVK977NyW1Qw+fLvqSo7xDPej7von7C3DwwqPRmnnnK36XEBC/J3j1V5lP8fbt7y0TgTKJbpNGSwM+Bdeg==} + vite@5.3.2: + resolution: {integrity: sha512-6lA7OBHBlXUxiJxbO5aAY2fsHHzDr1q7DvXYnyZycRs2Dz+dXBWuhpWHvmljTRTpQC2uvGmUFFkSHF2vGo90MA==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -4837,8 +4853,8 @@ packages: wrappy@1.0.2: resolution: {integrity: sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==} - ws@7.5.9: - resolution: {integrity: sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==} + ws@7.5.10: + resolution: {integrity: sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==} engines: {node: '>=8.3.0'} peerDependencies: bufferutil: ^4.0.1 @@ -4849,8 +4865,8 @@ packages: utf-8-validate: optional: true - ws@8.17.0: - resolution: {integrity: sha512-uJq6108EgZMAl20KagGkzCKfMEjxmKvZHG7Tlq0Z6nOky7YF7aq4mOx6xK8TJ/i1LeK4Qus7INktacctDgY8Ow==} + ws@8.17.1: + resolution: {integrity: sha512-6XQFvXTkbfUOZOKKILFG1PDK2NDQs4azKQl26T0YS5CxqWLgXajbPZ+h4gZekJyRqFU8pvnbAbbs/3TgRPy+GQ==} engines: {node: '>=10.0.0'} peerDependencies: bufferutil: ^4.0.1 @@ -4915,8 +4931,8 @@ packages: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} - yocto-queue@1.0.0: - resolution: {integrity: sha512-9bnSc/HEW2uRy67wc+T8UwauLuPJVn28jb+GtJY16iiKWyvmYJRXVT4UamsAEGQfPohgr2q4Tq0sQbQlxTfi1g==} + yocto-queue@1.1.1: + resolution: {integrity: sha512-b4JR1PFR10y1mKjhHY9LaGo6tmrgjit7hxVIeAmyMw3jegXR4dhYqLaQF5zMXZxY7tLpMyJeLjr1C4rLmkVe8g==} engines: {node: '>=12.20'} z-schema@5.0.5: @@ -5042,10 +5058,6 @@ snapshots: dependencies: '@babel/types': 7.24.7 - '@babel/runtime@7.24.7': - dependencies: - regenerator-runtime: 0.14.1 - '@babel/template@7.24.7': dependencies: '@babel/code-frame': 7.24.7 @@ -5137,14 +5149,14 @@ snapshots: '@commitlint/types': 17.8.1 '@types/node': 20.5.1 chalk: 4.1.2 - cosmiconfig: 8.3.6(typescript@5.4.5) - cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.4.5))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5))(typescript@5.4.5) + cosmiconfig: 8.3.6(typescript@5.5.2) + cosmiconfig-typescript-loader: 4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.2))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2))(typescript@5.5.2) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 resolve-from: 5.0.0 - ts-node: 10.9.2(@types/node@20.14.2)(typescript@5.4.5) - typescript: 5.4.5 + ts-node: 10.9.2(@types/node@20.14.9)(typescript@5.5.2) + typescript: 5.5.2 transitivePeerDependencies: - '@swc/core' - '@swc/wasm' @@ -5336,7 +5348,7 @@ snapshots: eslint: 8.57.0 eslint-visitor-keys: 3.4.3 - '@eslint-community/regexpp@4.10.1': {} + '@eslint-community/regexpp@4.11.0': {} '@eslint/eslintrc@2.1.4': dependencies: @@ -5413,23 +5425,23 @@ snapshots: dependencies: '@lit-labs/ssr-dom-shim': 1.2.0 - '@microsoft/api-extractor-model@7.28.13(@types/node@20.14.2)': + '@microsoft/api-extractor-model@7.28.13(@types/node@20.14.9)': dependencies: '@microsoft/tsdoc': 0.14.2 '@microsoft/tsdoc-config': 0.16.2 - '@rushstack/node-core-library': 4.0.2(@types/node@20.14.2) + '@rushstack/node-core-library': 4.0.2(@types/node@20.14.9) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.43.0(@types/node@20.14.2)': + '@microsoft/api-extractor@7.43.0(@types/node@20.14.9)': dependencies: - '@microsoft/api-extractor-model': 7.28.13(@types/node@20.14.2) + '@microsoft/api-extractor-model': 7.28.13(@types/node@20.14.9) '@microsoft/tsdoc': 0.14.2 '@microsoft/tsdoc-config': 0.16.2 - '@rushstack/node-core-library': 4.0.2(@types/node@20.14.2) + '@rushstack/node-core-library': 4.0.2(@types/node@20.14.9) '@rushstack/rig-package': 0.5.2 - '@rushstack/terminal': 0.10.0(@types/node@20.14.2) - '@rushstack/ts-command-line': 4.19.1(@types/node@20.14.2) + '@rushstack/terminal': 0.10.0(@types/node@20.14.9) + '@rushstack/ts-command-line': 4.19.1(@types/node@20.14.9) lodash: 4.17.21 minimatch: 3.0.8 resolve: 1.22.8 @@ -5749,7 +5761,7 @@ snapshots: '@rushstack/eslint-patch@1.10.3': {} - '@rushstack/node-core-library@4.0.2(@types/node@20.14.2)': + '@rushstack/node-core-library@4.0.2(@types/node@20.14.9)': dependencies: fs-extra: 7.0.1 import-lazy: 4.0.0 @@ -5758,23 +5770,23 @@ snapshots: semver: 7.5.4 z-schema: 5.0.5 optionalDependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.9 '@rushstack/rig-package@0.5.2': dependencies: resolve: 1.22.8 strip-json-comments: 3.1.1 - '@rushstack/terminal@0.10.0(@types/node@20.14.2)': + '@rushstack/terminal@0.10.0(@types/node@20.14.9)': dependencies: - '@rushstack/node-core-library': 4.0.2(@types/node@20.14.2) + '@rushstack/node-core-library': 4.0.2(@types/node@20.14.9) supports-color: 8.1.1 optionalDependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.9 - '@rushstack/ts-command-line@4.19.1(@types/node@20.14.2)': + '@rushstack/ts-command-line@4.19.1(@types/node@20.14.9)': dependencies: - '@rushstack/terminal': 0.10.0(@types/node@20.14.2) + '@rushstack/terminal': 0.10.0(@types/node@20.14.9) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -5799,7 +5811,7 @@ snapshots: '@noble/curves': 1.3.0 '@noble/hashes': 1.3.3 - '@semantic-release/commit-analyzer@10.0.4(semantic-release@21.1.2(typescript@5.4.5))': + '@semantic-release/commit-analyzer@10.0.4(semantic-release@21.1.2(typescript@5.5.2))': dependencies: conventional-changelog-angular: 6.0.0 conventional-commits-filter: 3.0.0 @@ -5808,7 +5820,7 @@ snapshots: import-from: 4.0.0 lodash-es: 4.17.21 micromatch: 4.0.7 - semantic-release: 21.1.2(typescript@5.4.5) + semantic-release: 21.1.2(typescript@5.5.2) transitivePeerDependencies: - supports-color @@ -5816,7 +5828,7 @@ snapshots: '@semantic-release/error@4.0.0': {} - '@semantic-release/git@10.0.1(semantic-release@21.1.2(typescript@5.4.5))': + '@semantic-release/git@10.0.1(semantic-release@21.1.2(typescript@5.5.2))': dependencies: '@semantic-release/error': 3.0.0 aggregate-error: 3.1.0 @@ -5826,11 +5838,11 @@ snapshots: lodash: 4.17.21 micromatch: 4.0.7 p-reduce: 2.1.0 - semantic-release: 21.1.2(typescript@5.4.5) + semantic-release: 21.1.2(typescript@5.5.2) transitivePeerDependencies: - supports-color - '@semantic-release/github@9.2.6(semantic-release@21.1.2(typescript@5.4.5))': + '@semantic-release/github@9.2.6(semantic-release@21.1.2(typescript@5.5.2))': dependencies: '@octokit/core': 5.2.0 '@octokit/plugin-paginate-rest': 9.2.1(@octokit/core@5.2.0) @@ -5840,19 +5852,19 @@ snapshots: aggregate-error: 5.0.0 debug: 4.3.5 dir-glob: 3.0.1 - globby: 14.0.1 + globby: 14.0.2 http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.4 + https-proxy-agent: 7.0.5 issue-parser: 6.0.0 lodash-es: 4.17.21 mime: 4.0.3 p-filter: 4.1.0 - semantic-release: 21.1.2(typescript@5.4.5) + semantic-release: 21.1.2(typescript@5.5.2) url-join: 5.0.0 transitivePeerDependencies: - supports-color - '@semantic-release/npm@10.0.6(semantic-release@21.1.2(typescript@5.4.5))': + '@semantic-release/npm@10.0.6(semantic-release@21.1.2(typescript@5.5.2))': dependencies: '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 @@ -5865,11 +5877,11 @@ snapshots: rc: 1.2.8 read-pkg: 8.1.0 registry-auth-token: 5.0.2 - semantic-release: 21.1.2(typescript@5.4.5) + semantic-release: 21.1.2(typescript@5.5.2) semver: 7.6.2 tempy: 3.1.0 - '@semantic-release/release-notes-generator@11.0.7(semantic-release@21.1.2(typescript@5.4.5))': + '@semantic-release/release-notes-generator@11.0.7(semantic-release@21.1.2(typescript@5.5.2))': dependencies: conventional-changelog-angular: 6.0.0 conventional-changelog-writer: 6.0.1 @@ -5881,7 +5893,7 @@ snapshots: into-stream: 7.0.0 lodash-es: 4.17.21 read-pkg-up: 10.1.0 - semantic-release: 21.1.2(typescript@5.4.5) + semantic-release: 21.1.2(typescript@5.5.2) transitivePeerDependencies: - supports-color @@ -5981,26 +5993,26 @@ snapshots: '@starknet-io/types-js@0.7.7': {} - '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2))': + '@sveltejs/vite-plugin-svelte-inspector@1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9))': dependencies: - '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)) + '@sveltejs/vite-plugin-svelte': 2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9)) debug: 4.3.5 svelte: 4.2.18 - vite: 4.5.3(@types/node@20.14.2) + vite: 4.5.3(@types/node@20.14.9) transitivePeerDependencies: - supports-color - '@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2))': + '@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9))': dependencies: - '@sveltejs/vite-plugin-svelte-inspector': 1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.2)) + '@sveltejs/vite-plugin-svelte-inspector': 1.0.4(@sveltejs/vite-plugin-svelte@2.5.3(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9)))(svelte@4.2.18)(vite@4.5.3(@types/node@20.14.9)) debug: 4.3.5 deepmerge: 4.3.1 kleur: 4.1.5 magic-string: 0.30.10 svelte: 4.2.18 svelte-hmr: 0.15.3(svelte@4.2.18) - vite: 4.5.3(@types/node@20.14.2) - vitefu: 0.2.5(vite@4.5.3(@types/node@20.14.2)) + vite: 4.5.3(@types/node@20.14.9) + vitefu: 0.2.5(vite@4.5.3(@types/node@20.14.9)) transitivePeerDependencies: - supports-color @@ -6034,13 +6046,13 @@ snapshots: '@types/lodash-es@4.17.12': dependencies: - '@types/lodash': 4.17.5 + '@types/lodash': 4.17.6 - '@types/lodash@4.17.5': {} + '@types/lodash@4.17.6': {} '@types/minimist@1.2.5': {} - '@types/node@20.14.2': + '@types/node@20.14.9': dependencies: undici-types: 5.26.5 @@ -6056,13 +6068,13 @@ snapshots: '@types/trusted-types@2.0.7': {} - '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint@8.57.0)(typescript@5.4.5)': + '@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint@8.57.0)(typescript@5.5.2)': dependencies: - '@eslint-community/regexpp': 4.10.1 - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@eslint-community/regexpp': 4.11.0 + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.2) '@typescript-eslint/scope-manager': 6.21.0 - '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/type-utils': 6.21.0(eslint@8.57.0)(typescript@5.5.2) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.2) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.5 eslint: 8.57.0 @@ -6070,22 +6082,22 @@ snapshots: ignore: 5.3.1 natural-compare: 1.4.0 semver: 7.6.2 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.5.2) optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5)': + '@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2)': dependencies: '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.2) '@typescript-eslint/visitor-keys': 6.21.0 debug: 4.3.5 eslint: 8.57.0 optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 transitivePeerDependencies: - supports-color @@ -6094,21 +6106,21 @@ snapshots: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 - '@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.4.5)': + '@typescript-eslint/type-utils@6.21.0(eslint@8.57.0)(typescript@5.5.2)': dependencies: - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) - '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.2) + '@typescript-eslint/utils': 6.21.0(eslint@8.57.0)(typescript@5.5.2) debug: 4.3.5 eslint: 8.57.0 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.5.2) optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 transitivePeerDependencies: - supports-color '@typescript-eslint/types@6.21.0': {} - '@typescript-eslint/typescript-estree@6.21.0(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@6.21.0(typescript@5.5.2)': dependencies: '@typescript-eslint/types': 6.21.0 '@typescript-eslint/visitor-keys': 6.21.0 @@ -6117,20 +6129,20 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.3 semver: 7.6.2 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.5.2) optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.4.5)': + '@typescript-eslint/utils@6.21.0(eslint@8.57.0)(typescript@5.5.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) '@types/json-schema': 7.0.15 '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 6.21.0 '@typescript-eslint/types': 6.21.0 - '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 6.21.0(typescript@5.5.2) eslint: 8.57.0 semver: 7.6.2 transitivePeerDependencies: @@ -6186,36 +6198,36 @@ snapshots: '@volar/language-core': 1.11.1 path-browserify: 1.0.1 - '@vue/compiler-core@3.4.27': + '@vue/compiler-core@3.4.31': dependencies: '@babel/parser': 7.24.7 - '@vue/shared': 3.4.27 + '@vue/shared': 3.4.31 entities: 4.5.0 estree-walker: 2.0.2 source-map-js: 1.2.0 - '@vue/compiler-dom@3.4.27': + '@vue/compiler-dom@3.4.31': dependencies: - '@vue/compiler-core': 3.4.27 - '@vue/shared': 3.4.27 + '@vue/compiler-core': 3.4.31 + '@vue/shared': 3.4.31 - '@vue/language-core@1.8.27(typescript@5.4.5)': + '@vue/language-core@1.8.27(typescript@5.5.2)': dependencies: '@volar/language-core': 1.11.1 '@volar/source-map': 1.11.1 - '@vue/compiler-dom': 3.4.27 - '@vue/shared': 3.4.27 + '@vue/compiler-dom': 3.4.31 + '@vue/shared': 3.4.31 computeds: 0.0.1 - minimatch: 9.0.4 + minimatch: 9.0.5 muggle-string: 0.3.1 path-browserify: 1.0.1 vue-template-compiler: 2.7.16 optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 - '@vue/shared@3.4.27': {} + '@vue/shared@3.4.31': {} - '@walletconnect/core@2.13.2': + '@walletconnect/core@2.13.3': dependencies: '@walletconnect/heartbeat': 1.2.2 '@walletconnect/jsonrpc-provider': 1.0.14 @@ -6228,8 +6240,8 @@ snapshots: '@walletconnect/relay-auth': 1.0.4 '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.13.2 - '@walletconnect/utils': 2.13.2 + '@walletconnect/types': 2.13.3 + '@walletconnect/utils': 2.13.3 events: 3.3.0 isomorphic-unfetch: 3.1.0 lodash.isequal: 4.5.0 @@ -6257,17 +6269,17 @@ snapshots: dependencies: tslib: 1.14.1 - '@walletconnect/ethereum-provider@2.13.2(react@18.3.1)': + '@walletconnect/ethereum-provider@2.13.3(react@18.3.1)': dependencies: '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 '@walletconnect/jsonrpc-types': 1.0.4 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/modal': 2.6.2(react@18.3.1) - '@walletconnect/sign-client': 2.13.2 - '@walletconnect/types': 2.13.2 - '@walletconnect/universal-provider': 2.13.2 - '@walletconnect/utils': 2.13.2 + '@walletconnect/sign-client': 2.13.3 + '@walletconnect/types': 2.13.3 + '@walletconnect/universal-provider': 2.13.3 + '@walletconnect/utils': 2.13.3 events: 3.3.0 transitivePeerDependencies: - '@azure/app-configuration' @@ -6332,7 +6344,7 @@ snapshots: '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/safe-json': 1.0.2 events: 3.3.0 - ws: 7.5.9 + ws: 7.5.10 transitivePeerDependencies: - bufferutil - utf-8-validate @@ -6404,16 +6416,16 @@ snapshots: dependencies: tslib: 1.14.1 - '@walletconnect/sign-client@2.13.2': + '@walletconnect/sign-client@2.13.3': dependencies: - '@walletconnect/core': 2.13.2 + '@walletconnect/core': 2.13.3 '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/logger': 2.1.2 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.13.2 - '@walletconnect/utils': 2.13.2 + '@walletconnect/types': 2.13.3 + '@walletconnect/utils': 2.13.3 events: 3.3.0 transitivePeerDependencies: - '@azure/app-configuration' @@ -6434,13 +6446,13 @@ snapshots: - uWebSockets.js - utf-8-validate - '@walletconnect/signer-connection@2.13.2': + '@walletconnect/signer-connection@2.13.3': dependencies: '@walletconnect/jsonrpc-types': 1.0.4 '@walletconnect/jsonrpc-utils': 1.0.8 - '@walletconnect/sign-client': 2.13.2 - '@walletconnect/types': 2.13.2 - '@walletconnect/utils': 2.13.2 + '@walletconnect/sign-client': 2.13.3 + '@walletconnect/types': 2.13.3 + '@walletconnect/utils': 2.13.3 events: 3.3.0 uint8arrays: 3.1.0 transitivePeerDependencies: @@ -6466,7 +6478,7 @@ snapshots: dependencies: tslib: 1.14.1 - '@walletconnect/types@2.13.2': + '@walletconnect/types@2.13.3': dependencies: '@walletconnect/events': 1.0.1 '@walletconnect/heartbeat': 1.2.2 @@ -6490,16 +6502,16 @@ snapshots: - ioredis - uWebSockets.js - '@walletconnect/universal-provider@2.13.2': + '@walletconnect/universal-provider@2.13.3': dependencies: '@walletconnect/jsonrpc-http-connection': 1.0.8 '@walletconnect/jsonrpc-provider': 1.0.14 '@walletconnect/jsonrpc-types': 1.0.4 '@walletconnect/jsonrpc-utils': 1.0.8 '@walletconnect/logger': 2.1.2 - '@walletconnect/sign-client': 2.13.2 - '@walletconnect/types': 2.13.2 - '@walletconnect/utils': 2.13.2 + '@walletconnect/sign-client': 2.13.3 + '@walletconnect/types': 2.13.3 + '@walletconnect/utils': 2.13.3 events: 3.3.0 transitivePeerDependencies: - '@azure/app-configuration' @@ -6520,7 +6532,7 @@ snapshots: - uWebSockets.js - utf-8-validate - '@walletconnect/utils@2.13.2': + '@walletconnect/utils@2.13.3': dependencies: '@stablelib/chacha20poly1305': 1.0.1 '@stablelib/hkdf': 1.0.1 @@ -6530,7 +6542,7 @@ snapshots: '@walletconnect/relay-api': 1.0.10 '@walletconnect/safe-json': 1.0.2 '@walletconnect/time': 1.0.2 - '@walletconnect/types': 2.13.2 + '@walletconnect/types': 2.13.3 '@walletconnect/window-getters': 1.0.1 '@walletconnect/window-metadata': 1.0.1 detect-browser: 5.3.0 @@ -6663,6 +6675,10 @@ snapshots: argv-formatter@1.0.0: {} + aria-query@5.1.3: + dependencies: + deep-equal: 2.2.3 + aria-query@5.3.0: dependencies: dequal: 2.0.3 @@ -6751,25 +6767,25 @@ snapshots: atomic-sleep@1.0.0: {} - autoprefixer@10.4.19(postcss@8.4.38): + autoprefixer@10.4.19(postcss@8.4.39): dependencies: browserslist: 4.23.1 - caniuse-lite: 1.0.30001634 + caniuse-lite: 1.0.30001639 fraction.js: 4.3.7 normalize-range: 0.1.2 picocolors: 1.0.1 - postcss: 8.4.38 + postcss: 8.4.39 postcss-value-parser: 4.2.0 available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.0.0 - axe-core@4.7.0: {} + axe-core@4.9.1: {} - axobject-query@3.2.1: + axobject-query@3.1.1: dependencies: - dequal: 2.0.3 + deep-equal: 2.2.3 axobject-query@4.0.0: dependencies: @@ -6808,8 +6824,8 @@ snapshots: browserslist@4.23.1: dependencies: - caniuse-lite: 1.0.30001634 - electron-to-chromium: 1.4.802 + caniuse-lite: 1.0.30001639 + electron-to-chromium: 1.4.815 node-releases: 2.0.14 update-browserslist-db: 1.0.16(browserslist@4.23.1) @@ -6849,7 +6865,7 @@ snapshots: camelcase@5.3.1: {} - caniuse-lite@1.0.30001634: {} + caniuse-lite@1.0.30001639: {} cardinal@2.1.1: dependencies: @@ -7030,12 +7046,12 @@ snapshots: core-util-is@1.0.3: {} - cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.4.5))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5))(typescript@5.4.5): + cosmiconfig-typescript-loader@4.4.0(@types/node@20.5.1)(cosmiconfig@8.3.6(typescript@5.5.2))(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2))(typescript@5.5.2): dependencies: '@types/node': 20.5.1 - cosmiconfig: 8.3.6(typescript@5.4.5) - ts-node: 10.9.2(@types/node@20.14.2)(typescript@5.4.5) - typescript: 5.4.5 + cosmiconfig: 8.3.6(typescript@5.5.2) + ts-node: 10.9.2(@types/node@20.14.9)(typescript@5.5.2) + typescript: 5.5.2 cosmiconfig@5.2.1: dependencies: @@ -7044,14 +7060,14 @@ snapshots: js-yaml: 3.14.1 parse-json: 4.0.0 - cosmiconfig@8.3.6(typescript@5.4.5): + cosmiconfig@8.3.6(typescript@5.5.2): dependencies: import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 path-type: 4.0.0 optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 create-require@1.1.1: {} @@ -7131,6 +7147,27 @@ snapshots: dependencies: type-detect: 4.0.8 + deep-equal@2.2.3: + dependencies: + array-buffer-byte-length: 1.0.1 + call-bind: 1.0.7 + es-get-iterator: 1.1.3 + get-intrinsic: 1.2.4 + is-arguments: 1.1.1 + is-array-buffer: 3.0.4 + is-date-object: 1.0.5 + is-regex: 1.1.4 + is-shared-array-buffer: 1.0.3 + isarray: 2.0.5 + object-is: 1.1.6 + object-keys: 1.1.1 + object.assign: 4.1.5 + regexp.prototype.flags: 1.5.2 + side-channel: 1.0.6 + which-boxed-primitive: 1.0.2 + which-collection: 1.0.2 + which-typed-array: 1.1.15 + deep-extend@0.6.0: {} deep-is@0.1.4: {} @@ -7204,7 +7241,7 @@ snapshots: eastasianwidth@0.2.0: {} - electron-to-chromium@1.4.802: {} + electron-to-chromium@1.4.815: {} elliptic@6.5.5: dependencies: @@ -7275,7 +7312,7 @@ snapshots: is-string: 1.0.7 is-typed-array: 1.1.13 is-weakref: 1.0.2 - object-inspect: 1.13.1 + object-inspect: 1.13.2 object-keys: 1.1.1 object.assign: 4.1.5 regexp.prototype.flags: 1.5.2 @@ -7297,6 +7334,18 @@ snapshots: es-errors@1.3.0: {} + es-get-iterator@1.1.3: + dependencies: + call-bind: 1.0.7 + get-intrinsic: 1.2.4 + has-symbols: 1.0.3 + is-arguments: 1.1.1 + is-map: 2.0.3 + is-set: 2.0.3 + is-string: 1.0.7 + isarray: 2.0.5 + stop-iteration-iterator: 1.0.0 + es-iterator-helpers@1.0.19: dependencies: call-bind: 1.0.7 @@ -7395,20 +7444,20 @@ snapshots: escape-string-regexp@5.0.0: {} - eslint-config-next@13.5.6(eslint@8.57.0)(typescript@5.4.5): + eslint-config-next@13.5.6(eslint@8.57.0)(typescript@5.5.2): dependencies: '@next/eslint-plugin-next': 13.5.6 '@rushstack/eslint-patch': 1.10.3 - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.2) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) - eslint-plugin-jsx-a11y: 6.8.0(eslint@8.57.0) - eslint-plugin-react: 7.34.2(eslint@8.57.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + eslint-plugin-jsx-a11y: 6.9.0(eslint@8.57.0) + eslint-plugin-react: 7.34.3(eslint@8.57.0) eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) optionalDependencies: - typescript: 5.4.5 + typescript: 5.5.2 transitivePeerDependencies: - eslint-import-resolver-webpack - supports-color @@ -7416,21 +7465,21 @@ snapshots: eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 - is-core-module: 2.13.1 + is-core-module: 2.14.0 resolve: 1.22.8 transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0): dependencies: debug: 4.3.5 enhanced-resolve: 5.17.0 eslint: 8.57.0 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0) fast-glob: 3.3.2 get-tsconfig: 4.7.5 - is-core-module: 2.13.1 + is-core-module: 2.14.0 is-glob: 4.0.3 transitivePeerDependencies: - '@typescript-eslint/parser' @@ -7438,18 +7487,18 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.2) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0) transitivePeerDependencies: - supports-color - eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-typescript@3.6.1)(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -7459,9 +7508,9 @@ snapshots: doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@6.21.0(eslint@8.57.0)(typescript@5.5.2))(eslint-import-resolver-node@0.3.9)(eslint-plugin-import@2.29.1)(eslint@8.57.0))(eslint@8.57.0) hasown: 2.0.2 - is-core-module: 2.13.1 + is-core-module: 2.14.0 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 @@ -7470,21 +7519,20 @@ snapshots: semver: 6.3.1 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.4.5) + '@typescript-eslint/parser': 6.21.0(eslint@8.57.0)(typescript@5.5.2) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-jsx-a11y@6.8.0(eslint@8.57.0): + eslint-plugin-jsx-a11y@6.9.0(eslint@8.57.0): dependencies: - '@babel/runtime': 7.24.7 - aria-query: 5.3.0 + aria-query: 5.1.3 array-includes: 3.1.8 array.prototype.flatmap: 1.3.2 ast-types-flow: 0.0.8 - axe-core: 4.7.0 - axobject-query: 3.2.1 + axe-core: 4.9.1 + axobject-query: 3.1.1 damerau-levenshtein: 1.0.8 emoji-regex: 9.2.2 es-iterator-helpers: 1.0.19 @@ -7493,14 +7541,15 @@ snapshots: jsx-ast-utils: 3.3.5 language-tags: 1.0.9 minimatch: 3.1.2 - object.entries: 1.1.8 object.fromentries: 2.0.8 + safe-regex-test: 1.0.3 + string.prototype.includes: 2.0.0 eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): dependencies: eslint: 8.57.0 - eslint-plugin-react@7.34.2(eslint@8.57.0): + eslint-plugin-react@7.34.3(eslint@8.57.0): dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 @@ -7532,7 +7581,7 @@ snapshots: eslint@8.57.0: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - '@eslint-community/regexpp': 4.10.1 + '@eslint-community/regexpp': 4.11.0 '@eslint/eslintrc': 2.1.4 '@eslint/js': 8.57.0 '@humanwhocodes/config-array': 0.11.14 @@ -7728,7 +7777,7 @@ snapshots: dependencies: is-callable: 1.2.7 - foreground-child@3.2.0: + foreground-child@3.2.1: dependencies: cross-spawn: 7.0.3 signal-exit: 4.1.0 @@ -7790,13 +7839,13 @@ snapshots: get-port-please@3.1.2: {} - get-starknet-core@3.2.0(starknet@6.9.0): + get-starknet-core@3.2.0(starknet@6.10.1): dependencies: - starknet: 6.9.0 + starknet: 6.10.1 - get-starknet-core@4.0.0-next.5: + get-starknet-core@4.0.0: dependencies: - starknet-types: 0.7.2 + '@starknet-io/types-js': 0.7.7 get-stream@6.0.1: {} @@ -7839,12 +7888,13 @@ snapshots: dependencies: is-glob: 4.0.3 - glob@10.4.1: + glob@10.4.2: dependencies: - foreground-child: 3.2.0 + foreground-child: 3.2.1 jackspeak: 3.4.0 - minimatch: 9.0.4 + minimatch: 9.0.5 minipass: 7.1.2 + package-json-from-dist: 1.0.0 path-scurry: 1.11.1 glob@7.1.7: @@ -7889,7 +7939,7 @@ snapshots: merge2: 1.4.1 slash: 3.0.0 - globby@14.0.1: + globby@14.0.2: dependencies: '@sindresorhus/merge-streams': 2.3.0 fast-glob: 3.3.2 @@ -7908,7 +7958,7 @@ snapshots: graphemer@1.4.0: {} - h3@1.11.1: + h3@1.12.0: dependencies: cookie-es: 1.1.0 crossws: 0.2.4 @@ -7981,7 +8031,7 @@ snapshots: hosted-git-info@7.0.2: dependencies: - lru-cache: 10.2.2 + lru-cache: 10.3.0 http-proxy-agent@7.0.2: dependencies: @@ -7992,7 +8042,7 @@ snapshots: http-shutdown@1.2.2: {} - https-proxy-agent@7.0.4: + https-proxy-agent@7.0.5: dependencies: agent-base: 7.1.1 debug: 4.3.5 @@ -8086,6 +8136,11 @@ snapshots: iron-webcrypto@1.2.1: {} + is-arguments@1.1.1: + dependencies: + call-bind: 1.0.7 + has-tostringtag: 1.0.2 + is-array-buffer@3.0.4: dependencies: call-bind: 1.0.7 @@ -8116,7 +8171,7 @@ snapshots: is-callable@1.2.7: {} - is-core-module@2.13.1: + is-core-module@2.14.0: dependencies: hasown: 2.0.2 @@ -8397,7 +8452,7 @@ snapshots: crossws: 0.2.4 defu: 6.1.4 get-port-please: 3.1.2 - h3: 1.11.1 + h3: 1.12.0 http-shutdown: 1.2.2 jiti: 1.21.6 mlly: 1.7.1 @@ -8445,7 +8500,7 @@ snapshots: local-pkg@0.5.0: dependencies: mlly: 1.7.1 - pkg-types: 1.1.1 + pkg-types: 1.1.2 locate-character@3.0.0: {} @@ -8524,7 +8579,7 @@ snapshots: dependencies: get-func-name: 2.0.2 - lru-cache@10.2.2: {} + lru-cache@10.3.0: {} lru-cache@5.1.1: dependencies: @@ -8614,7 +8669,7 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimatch@9.0.4: + minimatch@9.0.5: dependencies: brace-expansion: 2.0.1 @@ -8636,7 +8691,7 @@ snapshots: dependencies: acorn: 8.12.0 pathe: 1.1.2 - pkg-types: 1.1.1 + pkg-types: 1.1.2 ufo: 1.5.3 modify-values@1.0.1: {} @@ -8700,14 +8755,13 @@ snapshots: normalize-package-data@3.0.3: dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.13.1 + is-core-module: 2.14.0 semver: 7.6.2 validate-npm-package-license: 3.0.4 - normalize-package-data@6.0.1: + normalize-package-data@6.0.2: dependencies: hosted-git-info: 7.0.2 - is-core-module: 2.13.1 semver: 7.6.2 validate-npm-package-license: 3.0.4 @@ -8731,7 +8785,12 @@ snapshots: object-hash@3.0.0: {} - object-inspect@1.13.1: {} + object-inspect@1.13.2: {} + + object-is@1.1.6: + dependencies: + call-bind: 1.0.7 + define-properties: 1.2.1 object-keys@1.1.1: {} @@ -8826,11 +8885,11 @@ snapshots: p-limit@4.0.0: dependencies: - yocto-queue: 1.0.0 + yocto-queue: 1.1.1 p-limit@5.0.0: dependencies: - yocto-queue: 1.0.0 + yocto-queue: 1.1.1 p-locate@2.0.0: dependencies: @@ -8858,6 +8917,8 @@ snapshots: p-try@2.2.0: {} + package-json-from-dist@1.0.0: {} + pako@2.1.0: {} parent-module@1.0.1: @@ -8902,7 +8963,7 @@ snapshots: path-scurry@1.11.1: dependencies: - lru-cache: 10.2.2 + lru-cache: 10.3.0 minipass: 7.1.2 path-type@4.0.0: {} @@ -8957,7 +9018,7 @@ snapshots: find-up: 2.1.0 load-json-file: 4.0.0 - pkg-types@1.1.1: + pkg-types@1.1.2: dependencies: confbox: 0.1.7 mlly: 1.7.1 @@ -8967,29 +9028,29 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-import@15.1.0(postcss@8.4.38): + postcss-import@15.1.0(postcss@8.4.39): dependencies: - postcss: 8.4.38 + postcss: 8.4.39 postcss-value-parser: 4.2.0 read-cache: 1.0.0 resolve: 1.22.8 - postcss-js@4.0.1(postcss@8.4.38): + postcss-js@4.0.1(postcss@8.4.39): dependencies: camelcase-css: 2.0.1 - postcss: 8.4.38 + postcss: 8.4.39 - postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)): + postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)): dependencies: lilconfig: 3.1.2 yaml: 2.4.5 optionalDependencies: - postcss: 8.4.38 - ts-node: 10.9.2(@types/node@20.14.2)(typescript@5.4.5) + postcss: 8.4.39 + ts-node: 10.9.2(@types/node@20.14.9)(typescript@5.5.2) - postcss-nested@6.0.1(postcss@8.4.38): + postcss-nested@6.0.1(postcss@8.4.39): dependencies: - postcss: 8.4.38 + postcss: 8.4.39 postcss-selector-parser: 6.1.0 postcss-selector-parser@6.1.0: @@ -8999,7 +9060,7 @@ snapshots: postcss-value-parser@4.2.0: {} - postcss@8.4.38: + postcss@8.4.39: dependencies: nanoid: 3.3.7 picocolors: 1.0.1 @@ -9090,7 +9151,7 @@ snapshots: dependencies: find-up: 6.3.0 read-pkg: 8.1.0 - type-fest: 4.20.0 + type-fest: 4.20.1 read-pkg-up@7.0.1: dependencies: @@ -9108,9 +9169,9 @@ snapshots: read-pkg@8.1.0: dependencies: '@types/normalize-package-data': 2.4.4 - normalize-package-data: 6.0.1 + normalize-package-data: 6.0.2 parse-json: 7.1.1 - type-fest: 4.20.0 + type-fest: 4.20.1 readable-stream@2.3.8: dependencies: @@ -9153,8 +9214,6 @@ snapshots: globalthis: 1.0.4 which-builtin-type: 1.1.3 - regenerator-runtime@0.14.1: {} - regexp.prototype.flags@1.5.2: dependencies: call-bind: 1.0.7 @@ -9188,18 +9247,18 @@ snapshots: resolve@1.19.0: dependencies: - is-core-module: 2.13.1 + is-core-module: 2.14.0 path-parse: 1.0.7 resolve@1.22.8: dependencies: - is-core-module: 2.13.1 + is-core-module: 2.14.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@2.0.0-next.5: dependencies: - is-core-module: 2.13.1 + is-core-module: 2.14.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -9289,15 +9348,15 @@ snapshots: mkdirp: 0.5.6 rimraf: 2.7.1 - semantic-release@21.1.2(typescript@5.4.5): + semantic-release@21.1.2(typescript@5.5.2): dependencies: - '@semantic-release/commit-analyzer': 10.0.4(semantic-release@21.1.2(typescript@5.4.5)) + '@semantic-release/commit-analyzer': 10.0.4(semantic-release@21.1.2(typescript@5.5.2)) '@semantic-release/error': 4.0.0 - '@semantic-release/github': 9.2.6(semantic-release@21.1.2(typescript@5.4.5)) - '@semantic-release/npm': 10.0.6(semantic-release@21.1.2(typescript@5.4.5)) - '@semantic-release/release-notes-generator': 11.0.7(semantic-release@21.1.2(typescript@5.4.5)) + '@semantic-release/github': 9.2.6(semantic-release@21.1.2(typescript@5.5.2)) + '@semantic-release/npm': 10.0.6(semantic-release@21.1.2(typescript@5.5.2)) + '@semantic-release/release-notes-generator': 11.0.7(semantic-release@21.1.2(typescript@5.5.2)) aggregate-error: 5.0.0 - cosmiconfig: 8.3.6(typescript@5.4.5) + cosmiconfig: 8.3.6(typescript@5.5.2) debug: 4.3.5 env-ci: 9.1.1 execa: 8.0.1 @@ -9370,7 +9429,7 @@ snapshots: call-bind: 1.0.7 es-errors: 1.3.0 get-intrinsic: 1.2.4 - object-inspect: 1.13.1 + object-inspect: 1.13.2 siginfo@2.0.0: {} @@ -9444,8 +9503,6 @@ snapshots: stackback@0.0.2: {} - starknet-types@0.7.2: {} - starknet@4.22.0: dependencies: '@ethersproject/bytes': 5.7.0 @@ -9476,7 +9533,7 @@ snapshots: transitivePeerDependencies: - encoding - starknet@6.9.0: + starknet@6.10.1: dependencies: '@noble/curves': 1.4.0 '@noble/hashes': 1.4.0 @@ -9484,11 +9541,11 @@ snapshots: '@scure/starknet': 1.0.0 abi-wan-kanabi: 2.2.2 fetch-cookie: 3.0.1 - get-starknet-core: 4.0.0-next.5 + get-starknet-core: 4.0.0 isomorphic-fetch: 3.0.0 lossless-json: 4.0.1 pako: 2.1.0 - starknet-types-07: starknet-types@0.7.2 + starknet-types-07: '@starknet-io/types-js@0.7.7' ts-mixer: 6.0.4 url-join: 4.0.1 transitivePeerDependencies: @@ -9496,6 +9553,10 @@ snapshots: std-env@3.7.0: {} + stop-iteration-iterator@1.0.0: + dependencies: + internal-slot: 1.0.7 + stream-combiner2@1.1.1: dependencies: duplexer2: 0.1.4 @@ -9519,6 +9580,11 @@ snapshots: emoji-regex: 9.2.2 strip-ansi: 7.1.0 + string.prototype.includes@2.0.0: + dependencies: + define-properties: 1.2.1 + es-abstract: 1.23.3 + string.prototype.matchall@4.0.11: dependencies: call-bind: 1.0.7 @@ -9591,7 +9657,7 @@ snapshots: dependencies: '@jridgewell/gen-mapping': 0.3.5 commander: 4.1.1 - glob: 10.4.1 + glob: 10.4.2 lines-and-columns: 1.2.4 mz: 2.7.0 pirates: 4.0.6 @@ -9616,17 +9682,15 @@ snapshots: supports-preserve-symlinks-flag@1.0.0: {} - svelte-check@3.8.0(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)))(postcss@8.4.38)(svelte@4.2.18): + svelte-check@3.8.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)))(postcss@8.4.39)(svelte@4.2.18): dependencies: '@jridgewell/trace-mapping': 0.3.25 chokidar: 3.6.0 - fast-glob: 3.3.2 - import-fresh: 3.3.0 picocolors: 1.0.1 sade: 1.8.1 svelte: 4.2.18 - svelte-preprocess: 5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)))(postcss@8.4.38)(svelte@4.2.18)(typescript@5.4.5) - typescript: 5.4.5 + svelte-preprocess: 5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.2) + typescript: 5.5.2 transitivePeerDependencies: - '@babel/core' - coffeescript @@ -9646,7 +9710,7 @@ snapshots: dependencies: svelte: 4.2.18 - svelte-preprocess@5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)))(postcss@8.4.38)(svelte@4.2.18)(typescript@5.4.5): + svelte-preprocess@5.1.4(@babel/core@7.24.7)(postcss-load-config@4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)))(postcss@8.4.39)(svelte@4.2.18)(typescript@5.5.2): dependencies: '@types/pug': 2.0.10 detect-indent: 6.1.0 @@ -9656,9 +9720,9 @@ snapshots: svelte: 4.2.18 optionalDependencies: '@babel/core': 7.24.7 - postcss: 8.4.38 - postcss-load-config: 4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)) - typescript: 5.4.5 + postcss: 8.4.39 + postcss-load-config: 4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)) + typescript: 5.5.2 svelte@4.2.18: dependencies: @@ -9679,7 +9743,7 @@ snapshots: system-architecture@0.1.0: {} - tailwindcss@3.4.4(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)): + tailwindcss@3.4.4(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -9695,11 +9759,11 @@ snapshots: normalize-path: 3.0.0 object-hash: 3.0.0 picocolors: 1.0.1 - postcss: 8.4.38 - postcss-import: 15.1.0(postcss@8.4.38) - postcss-js: 4.0.1(postcss@8.4.38) - postcss-load-config: 4.0.2(postcss@8.4.38)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.4.5)) - postcss-nested: 6.0.1(postcss@8.4.38) + postcss: 8.4.39 + postcss-import: 15.1.0(postcss@8.4.39) + postcss-js: 4.0.1(postcss@8.4.39) + postcss-load-config: 4.0.2(postcss@8.4.39)(ts-node@10.9.2(@types/node@20.5.1)(typescript@5.5.2)) + postcss-nested: 6.0.1(postcss@8.4.39) postcss-selector-parser: 6.1.0 resolve: 1.22.8 sucrase: 3.35.0 @@ -9780,9 +9844,9 @@ snapshots: '@trpc/client': 10.45.2(@trpc/server@10.45.2) '@trpc/server': 10.45.2 - ts-api-utils@1.3.0(typescript@5.4.5): + ts-api-utils@1.3.0(typescript@5.5.2): dependencies: - typescript: 5.4.5 + typescript: 5.5.2 ts-custom-error@3.3.1: {} @@ -9790,21 +9854,21 @@ snapshots: ts-mixer@6.0.4: {} - ts-node@10.9.2(@types/node@20.14.2)(typescript@5.4.5): + ts-node@10.9.2(@types/node@20.14.9)(typescript@5.5.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.14.2 + '@types/node': 20.14.9 acorn: 8.12.0 acorn-walk: 8.3.3 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.2 make-error: 1.3.6 - typescript: 5.4.5 + typescript: 5.5.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 @@ -9839,7 +9903,7 @@ snapshots: type-fest@3.13.1: {} - type-fest@4.20.0: {} + type-fest@4.20.1: {} typed-array-buffer@1.0.2: dependencies: @@ -9888,7 +9952,7 @@ snapshots: typescript@5.4.2: {} - typescript@5.4.5: {} + typescript@5.5.2: {} ufo@1.5.3: {} @@ -9939,9 +10003,9 @@ snapshots: anymatch: 3.1.3 chokidar: 3.6.0 destr: 2.0.3 - h3: 1.11.1 + h3: 1.12.0 listhen: 1.7.2 - lru-cache: 10.2.2 + lru-cache: 10.3.0 mri: 1.2.0 node-fetch-native: 1.6.4 ofetch: 1.3.4 @@ -10000,13 +10064,13 @@ snapshots: optionalDependencies: react: 18.3.1 - vite-node@1.6.0(@types/node@20.14.2): + vite-node@1.6.0(@types/node@20.14.9): dependencies: cac: 6.7.14 debug: 4.3.5 pathe: 1.1.2 picocolors: 1.0.1 - vite: 5.3.0(@types/node@20.14.2) + vite: 5.3.2(@types/node@20.14.9) transitivePeerDependencies: - '@types/node' - less @@ -10017,46 +10081,46 @@ snapshots: - supports-color - terser - vite-plugin-dts@3.9.1(@types/node@20.14.2)(rollup@4.18.0)(typescript@5.4.5)(vite@4.5.3(@types/node@20.14.2)): + vite-plugin-dts@3.9.1(@types/node@20.14.9)(rollup@4.18.0)(typescript@5.5.2)(vite@4.5.3(@types/node@20.14.9)): dependencies: - '@microsoft/api-extractor': 7.43.0(@types/node@20.14.2) + '@microsoft/api-extractor': 7.43.0(@types/node@20.14.9) '@rollup/pluginutils': 5.1.0(rollup@4.18.0) - '@vue/language-core': 1.8.27(typescript@5.4.5) + '@vue/language-core': 1.8.27(typescript@5.5.2) debug: 4.3.5 kolorist: 1.8.0 magic-string: 0.30.10 - typescript: 5.4.5 - vue-tsc: 1.8.27(typescript@5.4.5) + typescript: 5.5.2 + vue-tsc: 1.8.27(typescript@5.5.2) optionalDependencies: - vite: 4.5.3(@types/node@20.14.2) + vite: 4.5.3(@types/node@20.14.9) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite@4.5.3(@types/node@20.14.2): + vite@4.5.3(@types/node@20.14.9): dependencies: esbuild: 0.18.20 - postcss: 8.4.38 + postcss: 8.4.39 rollup: 3.29.4 optionalDependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.9 fsevents: 2.3.3 - vite@5.3.0(@types/node@20.14.2): + vite@5.3.2(@types/node@20.14.9): dependencies: esbuild: 0.21.5 - postcss: 8.4.38 + postcss: 8.4.39 rollup: 4.18.0 optionalDependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.9 fsevents: 2.3.3 - vitefu@0.2.5(vite@4.5.3(@types/node@20.14.2)): + vitefu@0.2.5(vite@4.5.3(@types/node@20.14.9)): optionalDependencies: - vite: 4.5.3(@types/node@20.14.2) + vite: 4.5.3(@types/node@20.14.9) - vitest@1.6.0(@types/node@20.14.2): + vitest@1.6.0(@types/node@20.14.9): dependencies: '@vitest/expect': 1.6.0 '@vitest/runner': 1.6.0 @@ -10075,11 +10139,11 @@ snapshots: strip-literal: 2.1.0 tinybench: 2.8.0 tinypool: 0.8.4 - vite: 5.3.0(@types/node@20.14.2) - vite-node: 1.6.0(@types/node@20.14.2) + vite: 5.3.2(@types/node@20.14.9) + vite-node: 1.6.0(@types/node@20.14.9) why-is-node-running: 2.2.2 optionalDependencies: - '@types/node': 20.14.2 + '@types/node': 20.14.9 transitivePeerDependencies: - less - lightningcss @@ -10094,12 +10158,12 @@ snapshots: de-indent: 1.0.2 he: 1.2.0 - vue-tsc@1.8.27(typescript@5.4.5): + vue-tsc@1.8.27(typescript@5.5.2): dependencies: '@volar/typescript': 1.11.1 - '@vue/language-core': 1.8.27(typescript@5.4.5) + '@vue/language-core': 1.8.27(typescript@5.5.2) semver: 7.6.2 - typescript: 5.4.5 + typescript: 5.5.2 webidl-conversions@3.0.1: {} @@ -10183,9 +10247,9 @@ snapshots: wrappy@1.0.2: {} - ws@7.5.9: {} + ws@7.5.10: {} - ws@8.17.0: {} + ws@8.17.1: {} xtend@4.0.2: {} @@ -10238,7 +10302,7 @@ snapshots: yocto-queue@0.1.0: {} - yocto-queue@1.0.0: {} + yocto-queue@1.1.1: {} z-schema@5.0.5: dependencies: diff --git a/src/connectors/argentMobile/helpers/inAppBrowser.ts b/src/connectors/argentMobile/helpers/inAppBrowser.ts index 9aa3233..172ebc3 100644 --- a/src/connectors/argentMobile/helpers/inAppBrowser.ts +++ b/src/connectors/argentMobile/helpers/inAppBrowser.ts @@ -1,4 +1,4 @@ -import type { StarknetWindowObject } from "starknet-types" +import type { StarknetWindowObject } from "@starknet-io/types-js" export const isInArgentMobileAppBrowser = (): boolean => { if (!window?.starknet_argentX) { diff --git a/src/connectors/argentMobile/index.ts b/src/connectors/argentMobile/index.ts index 7bbc5d0..951d090 100644 --- a/src/connectors/argentMobile/index.ts +++ b/src/connectors/argentMobile/index.ts @@ -1,4 +1,4 @@ -import { type AccountChangeEventHandler } from "get-starknet-core" +import { type AccountChangeEventHandler } from "@starknet-io/get-starknet-core" import { AccountInterface, ProviderInterface, @@ -12,7 +12,7 @@ import { RpcMessage, RpcTypeToMessageMap, type StarknetWindowObject, -} from "starknet-types" +} from "@starknet-io/types-js" import { ConnectorNotConnectedError, ConnectorNotFoundError, @@ -65,7 +65,7 @@ export class ArgentMobileConnector extends Connector { type: "wallet_getPermissions", }) - return (permissions as Permission[]).includes(Permission.Accounts) + return (permissions as Permission[]).includes(Permission.ACCOUNTS) } get id(): string { diff --git a/src/connectors/argentMobile/modal/index.ts b/src/connectors/argentMobile/modal/index.ts index 320bd84..299e2c8 100644 --- a/src/connectors/argentMobile/modal/index.ts +++ b/src/connectors/argentMobile/modal/index.ts @@ -1,4 +1,4 @@ -import type { StarknetWindowObject } from "starknet-types" +import type { StarknetWindowObject } from "@starknet-io/types-js" import { login } from "./login" import type { IArgentLoginOptions } from "./login" import { StarknetAdapter } from "./starknet/adapter" diff --git a/src/connectors/argentMobile/modal/starknet/adapter.ts b/src/connectors/argentMobile/modal/starknet/adapter.ts index 3d80a8a..37ecee9 100644 --- a/src/connectors/argentMobile/modal/starknet/adapter.ts +++ b/src/connectors/argentMobile/modal/starknet/adapter.ts @@ -13,8 +13,8 @@ import { AddInvokeTransactionParameters, RequestFn, TypedData, -} from "get-starknet-core" -import type { StarknetWindowObject } from "starknet-types" +} from "@starknet-io/get-starknet-core" +import type { StarknetWindowObject } from "@starknet-io/types-js" import type { NamespaceAdapterOptions } from "../adapter" import { NamespaceAdapter } from "../adapter" import { argentModal } from "../argentModal" @@ -103,6 +103,9 @@ export class StarknetAdapter starknet_addInvokeTransaction: this.handleAddInvokeTransaction, starknet_signTypedData: this.handleSignTypedData, starknet_supportedSpecs: this.handleSupportedSpecs, + wallet_addInvokeTransaction: this.handleAddInvokeTransaction, + wallet_signTypedData: this.handleSignTypedData, + wallet_supportedSpecs: this.handleSupportedSpecs, }) } diff --git a/src/connectors/argentMobile/modal/starknet/signer.ts b/src/connectors/argentMobile/modal/starknet/signer.ts index 5815f16..24e4383 100644 --- a/src/connectors/argentMobile/modal/starknet/signer.ts +++ b/src/connectors/argentMobile/modal/starknet/signer.ts @@ -7,7 +7,7 @@ import type { Signature, SignerInterface, } from "starknet" -import { TypedData } from "starknet-types" +import { TypedData } from "@starknet-io/types-js" import type { IStarknetRpc } from "./starknet.model" export class StarknetRemoteSigner implements SignerInterface { diff --git a/src/connectors/argentMobile/modal/starknet/starknet.model.ts b/src/connectors/argentMobile/modal/starknet/starknet.model.ts index daabc3f..e5659ab 100644 --- a/src/connectors/argentMobile/modal/starknet/starknet.model.ts +++ b/src/connectors/argentMobile/modal/starknet/starknet.model.ts @@ -5,7 +5,7 @@ import type { InvokeFunctionResponse, Signature, } from "starknet" -import { TypedData } from "starknet-types" +import { TypedData } from "@starknet-io/types-js" // see https://github.com/WalletConnect/walletconnect-docs/pull/288/files export interface IStarknetRpc { diff --git a/src/connectors/connector.ts b/src/connectors/connector.ts index 7fd8e9a..36198d8 100644 --- a/src/connectors/connector.ts +++ b/src/connectors/connector.ts @@ -5,7 +5,7 @@ import type { RpcMessage, RpcTypeToMessageMap, StarknetWindowObject, -} from "starknet-types" +} from "@starknet-io/types-js" /** Connector icons, as base64 encoded svg. */ export type ConnectorIcons = StarknetWindowObject["icon"] diff --git a/src/connectors/injected/index.ts b/src/connectors/injected/index.ts index 004199a..26d7143 100644 --- a/src/connectors/injected/index.ts +++ b/src/connectors/injected/index.ts @@ -10,7 +10,7 @@ import { RpcMessage, RpcTypeToMessageMap, type StarknetWindowObject, -} from "starknet-types" +} from "@starknet-io/types-js" import { ConnectorNotConnectedError, ConnectorNotFoundError, @@ -117,7 +117,7 @@ export class InjectedConnector extends Connector { type: "wallet_getPermissions", }) - return permissions?.includes(Permission.Accounts) + return permissions?.includes(Permission.ACCOUNTS) } async account( diff --git a/src/connectors/webwallet/helpers/openWebwallet.ts b/src/connectors/webwallet/helpers/openWebwallet.ts index f49103b..d3b1d22 100644 --- a/src/connectors/webwallet/helpers/openWebwallet.ts +++ b/src/connectors/webwallet/helpers/openWebwallet.ts @@ -1,4 +1,4 @@ -import type { StarknetWindowObject } from "starknet-types" +import type { StarknetWindowObject } from "@starknet-io/types-js" import { mapTargetUrlToNetworkId } from "../../../helpers/mapTargetUrlToNetworkId" import { getWebWalletStarknetObject } from "../starknetWindowObject/getWebWalletStarknetObject" import { createModal } from "../starknetWindowObject/wormhole" diff --git a/src/connectors/webwallet/helpers/trpc.ts b/src/connectors/webwallet/helpers/trpc.ts index 3bbdd5f..7f32ec3 100644 --- a/src/connectors/webwallet/helpers/trpc.ts +++ b/src/connectors/webwallet/helpers/trpc.ts @@ -10,7 +10,7 @@ import { deployAccountContractSchema, } from "../../../window/window" import { DEFAULT_WEBWALLET_URL } from "../constants" -import { Permission } from "get-starknet-core" +import { Permission } from "@starknet-io/types-js" const t = initTRPC.create({ isServer: false, @@ -95,9 +95,9 @@ const appRouter = t.router({ .output(z.string().array()) .mutation(async () => []), getPermissions: t.procedure - .output(z.array(z.enum([Permission.Accounts]))) + .output(z.array(z.enum([Permission.ACCOUNTS]))) .mutation(async () => { - return [Permission.Accounts] + return [Permission.ACCOUNTS] }), addInvokeTransaction: t.procedure .input(RpcCallSchema.or(RpcCallsArraySchema)) diff --git a/src/connectors/webwallet/index.ts b/src/connectors/webwallet/index.ts index 5b2c78a..d736db4 100644 --- a/src/connectors/webwallet/index.ts +++ b/src/connectors/webwallet/index.ts @@ -11,7 +11,7 @@ import { RpcTypeToMessageMap, type AccountChangeEventHandler, type StarknetWindowObject, -} from "starknet-types" +} from "@starknet-io/types-js" import { ConnectorNotConnectedError, ConnectorNotFoundError, @@ -58,7 +58,7 @@ export class WebWalletConnector extends Connector { type: "wallet_getPermissions", }) - return (permissions as Permission[]).includes(Permission.Accounts) + return (permissions as Permission[]).includes(Permission.ACCOUNTS) } get id(): string { diff --git a/src/connectors/webwallet/starknetWindowObject/argentStarknetWindowObject.ts b/src/connectors/webwallet/starknetWindowObject/argentStarknetWindowObject.ts index 416ce1e..998cf1f 100644 --- a/src/connectors/webwallet/starknetWindowObject/argentStarknetWindowObject.ts +++ b/src/connectors/webwallet/starknetWindowObject/argentStarknetWindowObject.ts @@ -6,7 +6,7 @@ import type { RpcTypeToMessageMap, StarknetWindowObject, WalletEvents, -} from "starknet-types" +} from "@starknet-io/types-js" import { EXECUTE_POPUP_HEIGHT, EXECUTE_POPUP_WIDTH, diff --git a/src/helpers/getStarknetChainId.ts b/src/helpers/getStarknetChainId.ts index 2ad9561..47384fe 100644 --- a/src/helpers/getStarknetChainId.ts +++ b/src/helpers/getStarknetChainId.ts @@ -1,5 +1,5 @@ import { constants } from "starknet" -import { ChainId } from "starknet-types" +import { ChainId } from "@starknet-io/types-js" export const getStarknetChainId = ( chainId: ChainId, diff --git a/src/helpers/getWallets.ts b/src/helpers/getWallets.ts index 074e29c..30108bd 100644 --- a/src/helpers/getWallets.ts +++ b/src/helpers/getWallets.ts @@ -1,5 +1,5 @@ -import type { WalletProvider } from "get-starknet-core" -import type { StarknetWindowObject } from "starknet-types" +import type { WalletProvider } from "@starknet-io/get-starknet-core" +import type { StarknetWindowObject } from "@starknet-io/types-js" import { ARGENT_X_ICON } from "../connectors/injected/constants" export const replaceArgentXIcon = async ( diff --git a/src/helpers/mapModalWallets.ts b/src/helpers/mapModalWallets.ts index 216423d..3cd85f7 100644 --- a/src/helpers/mapModalWallets.ts +++ b/src/helpers/mapModalWallets.ts @@ -1,6 +1,6 @@ -import { WalletProvider } from "get-starknet-core" +import { WalletProvider } from "@starknet-io/get-starknet-core" import { isString } from "lodash-es" -import type { StarknetWindowObject } from "starknet-types" +import type { StarknetWindowObject } from "@starknet-io/types-js" import { StarknetkitConnector } from "../connectors/connector" import { ARGENT_X_ICON } from "../connectors/injected/constants" import type { ModalWallet, StoreVersion } from "../window/modal" diff --git a/src/main.ts b/src/main.ts index 35e5022..bc7348c 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,7 +1,6 @@ -import type { DisconnectOptions } from "get-starknet-core" -import sn from "get-starknet-core" -import snV3 from "get-starknet-coreV3" -import type { StarknetWindowObject } from "starknet-types" +import type { DisconnectOptions } from "@starknet-io/get-starknet" +import sn from "@starknet-io/get-starknet-core" +import type { StarknetWindowObject } from "@starknet-io/types-js" import { Connector, ConnectorData, StarknetkitConnector } from "./connectors" import { DEFAULT_WEBWALLET_URL } from "./connectors/webwallet/constants" import { defaultConnectors } from "./helpers/defaultConnectors" @@ -96,7 +95,7 @@ export const connect = async ({ const modalWallets: ModalWallet[] = mapModalWallets({ availableConnectors, installedWallets, - discoveryWallets: await snV3.getDiscoveryWallets(restOptions), + discoveryWallets: await sn.getDiscoveryWallets(restOptions), storeVersion, }) @@ -175,7 +174,7 @@ export const disconnect = async (options: DisconnectOptions = {}) => { } selectedConnector = null - return snV3.disconnect(options) + return sn.disconnect(options) } export type { diff --git a/src/modal/Modal.svelte b/src/modal/Modal.svelte index d1d85b3..359fca5 100644 --- a/src/modal/Modal.svelte +++ b/src/modal/Modal.svelte @@ -1,6 +1,6 @@