From 0edc89d94ddc9dafea81d2f3f02389898792bbbd Mon Sep 17 00:00:00 2001 From: SilentRhetoric Date: Sun, 21 Jan 2024 17:05:30 -0500 Subject: [PATCH 1/2] Solid reactivity work --- examples/solid-ts/package.json | 2 +- examples/solid-ts/src/Connect.tsx | 38 ++++++++++-- packages/use-wallet-solid/src/useWallet.ts | 67 ++++++++++++++-------- pnpm-lock.yaml | 2 +- 4 files changed, 80 insertions(+), 29 deletions(-) diff --git a/examples/solid-ts/package.json b/examples/solid-ts/package.json index 83e34f5..11ff22d 100644 --- a/examples/solid-ts/package.json +++ b/examples/solid-ts/package.json @@ -16,7 +16,7 @@ "@txnlab/use-wallet-solid": "workspace:*", "@walletconnect/modal": "^2.6.2", "@walletconnect/sign-client": "^2.10.2", - "algosdk": "^2.6.0", + "algosdk": "^2.7.0", "solid-js": "^1.8.7" }, "devDependencies": { diff --git a/examples/solid-ts/src/Connect.tsx b/examples/solid-ts/src/Connect.tsx index ece83de..42ebb0e 100644 --- a/examples/solid-ts/src/Connect.tsx +++ b/examples/solid-ts/src/Connect.tsx @@ -1,8 +1,23 @@ +import { NetworkId } from '@txnlab/use-wallet-js' import { useWallet } from '@txnlab/use-wallet-solid' import { For, Show } from 'solid-js' +import encoding from 'algosdk' export function Connect() { - const { wallets } = useWallet() + const { + wallets, + activeNetwork, + setActiveNetwork, + activeWallet, + activeWalletId, + walletStateMap, + activeWalletAccounts, + activeWalletAddresses, + activeAccount, + activeAddress, + algodClient, + manager + } = useWallet() return (
@@ -11,7 +26,7 @@ export function Connect() {

{wallet.metadata.name}{' '} - + [active]

@@ -29,13 +44,13 @@ export function Connect() {
- 0}> + 0}>
{ @@ -62,6 +69,12 @@ export function Connect() { {(account) => } +

wallet.id: {wallet.id}

+

wallet.metadata: {wallet.metadata.name}

+ wallet.icon: + +

wallet.activeAccount: {wallet.activeAccount?.name}

+

wallet.accounts: {JSON.stringify(wallet.accounts)}

@@ -74,6 +87,7 @@ export function Connect() {

activeWallet: {activeWallet()?.metadata.name}

activeWalletAccounts: {JSON.stringify(activeWalletAccounts())}

activeWalletAddresses: {activeWalletAddresses()?.join(', ')}

+

activeWalletState: {JSON.stringify(activeWalletState())}

activeAccount: {JSON.stringify(activeAccount())}

activeAddress: {activeAddress()}

algodClient int encoding: {algodClient().getIntEncoding()}

@@ -81,7 +95,7 @@ export function Connect() { Set Int encoding

walletStateMap: {JSON.stringify(walletStateMap())}

-
manager: {JSON.stringify(manager(), null, 2)}
+ {/*
manager: {JSON.stringify(manager(), null, 2)}
*/} ) } diff --git a/packages/use-wallet-solid/package.json b/packages/use-wallet-solid/package.json index 0f584ba..cfec098 100644 --- a/packages/use-wallet-solid/package.json +++ b/packages/use-wallet-solid/package.json @@ -89,7 +89,7 @@ "devDependencies": { "@solidjs/testing-library": "^0.8.5", "algosdk": "^2.6.0", - "solid-js": "^1.8.8", + "solid-js": "^1.8.11", "tsup": "^8.0.0", "tsup-preset-solid": "^2.2.0", "typescript": "^5.2.2" diff --git a/packages/use-wallet-solid/src/useWallet.ts b/packages/use-wallet-solid/src/useWallet.ts index 37df3f7..cb77b95 100644 --- a/packages/use-wallet-solid/src/useWallet.ts +++ b/packages/use-wallet-solid/src/useWallet.ts @@ -5,11 +5,11 @@ import type { NetworkId, WalletAccount, WalletId, WalletMetadata } from '@txnlab import type algosdk from 'algosdk' export interface Wallet { - id: string - metadata: WalletMetadata - accounts: WalletAccount[] - activeAccount: WalletAccount | null - isConnected: boolean + id: () => string + metadata: () => WalletMetadata + accounts: () => WalletAccount[] + activeAccount: () => WalletAccount | null + isConnected: () => boolean isActive: () => boolean connect: () => Promise disconnect: () => Promise @@ -21,9 +21,6 @@ export function useWallet() { // Good const manager = createMemo(() => useWalletManager()) - // TODO: Not reactive when intDecoding is changed - const algodClient = createMemo(() => manager().algodClient) - // Good const walletStateMap = useStore(manager().store, (state) => { console.log('Running walletStateMap callback...', state.wallets) @@ -36,34 +33,11 @@ export function useWallet() { return state.activeWallet }) - // Showing promise but needs more testing - const wallets = createMemo(() => { - console.log('Recomputing wallets...') - - return [...manager().wallets.values()].map((wallet) => { - const walletState = walletStateMap()[wallet.id] - - const walletObject: Wallet = { - id: wallet.id, - metadata: wallet.metadata, - accounts: walletState?.accounts ?? [], - activeAccount: walletState?.activeAccount ?? null, - isConnected: !!walletState, - isActive: () => wallet.id === activeWalletId(), - connect: () => wallet.connect(), - disconnect: () => wallet.disconnect(), - setActive: () => wallet.setActive(), - setActiveAccount: (addr) => wallet.setActiveAccount(addr) - } - - return walletObject - }) - }) - // Good const activeWallet = () => activeWalletId() !== null ? manager().getWallet(activeWalletId() as WalletId) || null : null + // Good const activeWalletState = () => activeWalletId() !== null ? walletStateMap()[activeWalletId() as WalletId] || null : null @@ -86,7 +60,10 @@ export function useWallet() { // Good const setActiveNetwork = (network: NetworkId) => manager().setActiveNetwork(network) - // TODO + // TODO: Not reactive when intDecoding is changed + const algodClient = createMemo(() => manager().algodClient) + + // TODO: Needs to be set up and tested const signTransactions = ( txnGroup: algosdk.Transaction[] | algosdk.Transaction[][] | Uint8Array[] | Uint8Array[][], indexesToSign?: number[], @@ -98,7 +75,7 @@ export function useWallet() { return activeWallet()?.signTransactions(txnGroup, indexesToSign, returnGroup) } - // TODO + // TODO: Need to be set up and tested const transactionSigner = (txnGroup: algosdk.Transaction[], indexesToSign: number[]) => { if (!activeWallet) { throw new Error('No active wallet') @@ -106,15 +83,40 @@ export function useWallet() { return activeWallet()?.transactionSigner(txnGroup, indexesToSign) } + // TODO: Array doesn't react; consider removing + // const wallets = createMemo(() => { + // console.log('Recomputing wallets...') + + // return [...manager().wallets.values()].map((wallet) => { + // const walletState = walletStateMap()[wallet.id] + + // const walletObject: Wallet = { + // id: () => wallet.id, + // metadata: () => wallet.metadata, + // accounts: () => walletState?.accounts ?? [], + // activeAccount: () => walletState?.activeAccount ?? null, + // isConnected: () => !!walletState?.accounts.length, + // isActive: () => wallet.id === activeWalletId(), + // connect: () => wallet.connect(), + // disconnect: () => wallet.disconnect(), + // setActive: () => wallet.setActive(), + // setActiveAccount: (addr) => wallet.setActiveAccount(addr) + // } + + // return walletObject + // }) + // }) + return { activeWalletId, walletStateMap, - wallets, + // wallets, algodClient, activeNetwork, activeWallet, activeWalletAccounts, activeWalletAddresses, + activeWalletState, activeAccount, activeAddress, setActiveNetwork, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 247210e..09c8440 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -25,13 +25,13 @@ importers: version: 4.2.1(vite@5.0.10) '@vitejs/plugin-vue': specifier: ^5.0.2 - version: 5.0.2(vite@5.0.10)(vue@3.4.4) + version: 5.0.2(vite@5.0.10)(vue@3.4.15) '@vitejs/plugin-vue-jsx': specifier: ^3.1.0 - version: 3.1.0(vite@5.0.10)(vue@3.4.4) + version: 3.1.0(vite@5.0.10)(vue@3.4.15) '@vue/test-utils': specifier: ^2.4.3 - version: 2.4.3(vue@3.4.4) + version: 2.4.3(vue@3.4.15) eslint: specifier: ^8.50.0 version: 8.56.0 @@ -49,13 +49,13 @@ importers: version: 5.0.10 vite-plugin-solid: specifier: ^2.8.0 - version: 2.8.0(solid-js@1.8.8)(vite@5.0.10) + version: 2.8.0(solid-js@1.8.11)(vite@5.0.10) vitest: specifier: ^1.1.1 version: 1.1.1 vue-demi: specifier: ^0.14.6 - version: 0.14.6(vue@3.4.4) + version: 0.14.6(vue@3.4.15) examples/react-ts: dependencies: @@ -142,18 +142,18 @@ importers: specifier: ^2.7.0 version: 2.7.0 solid-js: - specifier: ^1.8.7 - version: 1.8.8 + specifier: ^1.8.11 + version: 1.8.11 devDependencies: typescript: specifier: ^5.2.2 version: 5.3.3 vite: - specifier: ^5.0.8 - version: 5.0.10 + specifier: ^5.0.12 + version: 5.0.12 vite-plugin-solid: - specifier: ^2.8.0 - version: 2.8.0(solid-js@1.8.8)(vite@5.0.10) + specifier: ^2.8.2 + version: 2.8.2(solid-js@1.8.11)(vite@5.0.12) examples/vanilla-ts: dependencies: @@ -325,7 +325,7 @@ importers: version: 1.3.4(algosdk@2.7.0) '@tanstack/solid-store': specifier: ^0.2.1 - version: 0.2.1(solid-js@1.8.8) + version: 0.2.1(solid-js@1.8.11) '@txnlab/use-wallet-js': specifier: workspace:* version: link:../use-wallet-js @@ -338,19 +338,19 @@ importers: devDependencies: '@solidjs/testing-library': specifier: ^0.8.5 - version: 0.8.5(@solidjs/router@0.10.5)(solid-js@1.8.8) + version: 0.8.5(@solidjs/router@0.10.9)(solid-js@1.8.11) algosdk: specifier: ^2.6.0 version: 2.7.0 solid-js: - specifier: ^1.8.8 - version: 1.8.8 + specifier: ^1.8.11 + version: 1.8.11 tsup: specifier: ^8.0.0 version: 8.0.1(typescript@5.3.3) tsup-preset-solid: specifier: ^2.2.0 - version: 2.2.0(esbuild@0.19.11)(solid-js@1.8.8)(tsup@8.0.1) + version: 2.2.0(esbuild@0.19.11)(solid-js@1.8.11)(tsup@8.0.1) typescript: specifier: ^5.2.2 version: 5.3.3 @@ -1335,6 +1335,14 @@ packages: dev: true optional: true + /@rollup/rollup-android-arm-eabi@4.9.6: + resolution: {integrity: sha512-MVNXSSYN6QXOulbHpLMKYi60ppyO13W9my1qogeiAqtjb2yR4LSmfU2+POvDkLzhjYLXz9Rf9+9a3zFHW1Lecg==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-android-arm64@4.9.2: resolution: {integrity: sha512-yZ+MUbnwf3SHNWQKJyWh88ii2HbuHCFQnAYTeeO1Nb8SyEiWASEi5dQUygt3ClHWtA9My9RQAYkjvrsZ0WK8Xg==} cpu: [arm64] @@ -1343,6 +1351,14 @@ packages: dev: true optional: true + /@rollup/rollup-android-arm64@4.9.6: + resolution: {integrity: sha512-T14aNLpqJ5wzKNf5jEDpv5zgyIqcpn1MlwCrUXLrwoADr2RkWA0vOWP4XxbO9aiO3dvMCQICZdKeDrFl7UMClw==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-darwin-arm64@4.9.2: resolution: {integrity: sha512-vqJ/pAUh95FLc/G/3+xPqlSBgilPnauVf2EXOQCZzhZJCXDXt/5A8mH/OzU6iWhb3CNk5hPJrh8pqJUPldN5zw==} cpu: [arm64] @@ -1351,6 +1367,14 @@ packages: dev: true optional: true + /@rollup/rollup-darwin-arm64@4.9.6: + resolution: {integrity: sha512-CqNNAyhRkTbo8VVZ5R85X73H3R5NX9ONnKbXuHisGWC0qRbTTxnF1U4V9NafzJbgGM0sHZpdO83pLPzq8uOZFw==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-darwin-x64@4.9.2: resolution: {integrity: sha512-otPHsN5LlvedOprd3SdfrRNhOahhVBwJpepVKUN58L0RnC29vOAej1vMEaVU6DadnpjivVsNTM5eNt0CcwTahw==} cpu: [x64] @@ -1359,6 +1383,14 @@ packages: dev: true optional: true + /@rollup/rollup-darwin-x64@4.9.6: + resolution: {integrity: sha512-zRDtdJuRvA1dc9Mp6BWYqAsU5oeLixdfUvkTHuiYOHwqYuQ4YgSmi6+/lPvSsqc/I0Omw3DdICx4Tfacdzmhog==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm-gnueabihf@4.9.2: resolution: {integrity: sha512-ewG5yJSp+zYKBYQLbd1CUA7b1lSfIdo9zJShNTyc2ZP1rcPrqyZcNlsHgs7v1zhgfdS+kW0p5frc0aVqhZCiYQ==} cpu: [arm] @@ -1367,6 +1399,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-arm-gnueabihf@4.9.6: + resolution: {integrity: sha512-oNk8YXDDnNyG4qlNb6is1ojTOGL/tRhbbKeE/YuccItzerEZT68Z9gHrY3ROh7axDc974+zYAPxK5SH0j/G+QQ==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm64-gnu@4.9.2: resolution: {integrity: sha512-pL6QtV26W52aCWTG1IuFV3FMPL1m4wbsRG+qijIvgFO/VBsiXJjDPE/uiMdHBAO6YcpV4KvpKtd0v3WFbaxBtg==} cpu: [arm64] @@ -1375,6 +1415,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-arm64-gnu@4.9.6: + resolution: {integrity: sha512-Z3O60yxPtuCYobrtzjo0wlmvDdx2qZfeAWTyfOjEDqd08kthDKexLpV97KfAeUXPosENKd8uyJMRDfFMxcYkDQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-arm64-musl@4.9.2: resolution: {integrity: sha512-On+cc5EpOaTwPSNetHXBuqylDW+765G/oqB9xGmWU3npEhCh8xu0xqHGUA+4xwZLqBbIZNcBlKSIYfkBm6ko7g==} cpu: [arm64] @@ -1383,6 +1431,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-arm64-musl@4.9.6: + resolution: {integrity: sha512-gpiG0qQJNdYEVad+1iAsGAbgAnZ8j07FapmnIAQgODKcOTjLEWM9sRb+MbQyVsYCnA0Im6M6QIq6ax7liws6eQ==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-riscv64-gnu@4.9.2: resolution: {integrity: sha512-Wnx/IVMSZ31D/cO9HSsU46FjrPWHqtdF8+0eyZ1zIB5a6hXaZXghUKpRrC4D5DcRTZOjml2oBhXoqfGYyXKipw==} cpu: [riscv64] @@ -1391,6 +1447,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-riscv64-gnu@4.9.6: + resolution: {integrity: sha512-+uCOcvVmFUYvVDr27aiyun9WgZk0tXe7ThuzoUTAukZJOwS5MrGbmSlNOhx1j80GdpqbOty05XqSl5w4dQvcOA==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-x64-gnu@4.9.2: resolution: {integrity: sha512-ym5x1cj4mUAMBummxxRkI4pG5Vht1QMsJexwGP8547TZ0sox9fCLDHw9KCH9c1FO5d9GopvkaJsBIOkTKxksdw==} cpu: [x64] @@ -1399,6 +1463,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-x64-gnu@4.9.6: + resolution: {integrity: sha512-HUNqM32dGzfBKuaDUBqFB7tP6VMN74eLZ33Q9Y1TBqRDn+qDonkAUyKWwF9BR9unV7QUzffLnz9GrnKvMqC/fw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-linux-x64-musl@4.9.2: resolution: {integrity: sha512-m0hYELHGXdYx64D6IDDg/1vOJEaiV8f1G/iO+tejvRCJNSwK4jJ15e38JQy5Q6dGkn1M/9KcyEOwqmlZ2kqaZg==} cpu: [x64] @@ -1407,6 +1479,14 @@ packages: dev: true optional: true + /@rollup/rollup-linux-x64-musl@4.9.6: + resolution: {integrity: sha512-ch7M+9Tr5R4FK40FHQk8VnML0Szi2KRujUgHXd/HjuH9ifH72GUmw6lStZBo3c3GB82vHa0ZoUfjfcM7JiiMrQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-arm64-msvc@4.9.2: resolution: {integrity: sha512-x1CWburlbN5JjG+juenuNa4KdedBdXLjZMp56nHFSHTOsb/MI2DYiGzLtRGHNMyydPGffGId+VgjOMrcltOksA==} cpu: [arm64] @@ -1415,6 +1495,14 @@ packages: dev: true optional: true + /@rollup/rollup-win32-arm64-msvc@4.9.6: + resolution: {integrity: sha512-VD6qnR99dhmTQ1mJhIzXsRcTBvTjbfbGGwKAHcu+52cVl15AC/kplkhxzW/uT0Xl62Y/meBKDZvoJSJN+vTeGA==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-ia32-msvc@4.9.2: resolution: {integrity: sha512-VVzCB5yXR1QlfsH1Xw1zdzQ4Pxuzv+CPr5qpElpKhVxlxD3CRdfubAG9mJROl6/dmj5gVYDDWk8sC+j9BI9/kQ==} cpu: [ia32] @@ -1423,6 +1511,14 @@ packages: dev: true optional: true + /@rollup/rollup-win32-ia32-msvc@4.9.6: + resolution: {integrity: sha512-J9AFDq/xiRI58eR2NIDfyVmTYGyIZmRcvcAoJ48oDld/NTR8wyiPUu2X/v1navJ+N/FGg68LEbX3Ejd6l8B7MQ==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@rollup/rollup-win32-x64-msvc@4.9.2: resolution: {integrity: sha512-SYRedJi+mweatroB+6TTnJYLts0L0bosg531xnQWtklOI6dezEagx4Q0qDyvRdK+qgdA3YZpjjGuPFtxBmddBA==} cpu: [x64] @@ -1431,28 +1527,36 @@ packages: dev: true optional: true + /@rollup/rollup-win32-x64-msvc@4.9.6: + resolution: {integrity: sha512-jqzNLhNDvIZOrt69Ce4UjGRpXJBzhUBzawMwnaDAwyHriki3XollsewxWzOzz+4yOFDkuJHtTsZFwMxhYJWmLQ==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@sinclair/typebox@0.27.8: resolution: {integrity: sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==} dev: true - /@solidjs/router@0.10.5(solid-js@1.8.8): - resolution: {integrity: sha512-gxDeiyc97j8/UqzuuasZsQYA7jpmlwjkfpcay11Q2xfzoKR50eBM1AaxAPtf0MlBAdPsdPV3h/k8t5/XQCuebA==} + /@solidjs/router@0.10.9(solid-js@1.8.11): + resolution: {integrity: sha512-TmipgAI2cU7A94fBO1MOEx7j9OYoKtddoOonSFb2221w5I1xxdjLk9W4CZDdyOVdO5z80f70KGJvNq83WFX/Qg==} peerDependencies: solid-js: ^1.8.6 dependencies: - solid-js: 1.8.8 + solid-js: 1.8.11 dev: true - /@solidjs/testing-library@0.8.5(@solidjs/router@0.10.5)(solid-js@1.8.8): + /@solidjs/testing-library@0.8.5(@solidjs/router@0.10.9)(solid-js@1.8.11): resolution: {integrity: sha512-L9TowCoqdRQGB8ikODh9uHXrYTjCUZseVUG0tIVa836//qeSqXP4m0BKG66v9Zp1y1wRxok5qUW97GwrtEBMcw==} engines: {node: '>= 14'} peerDependencies: '@solidjs/router': '>=0.6.0' solid-js: '>=1.0.0' dependencies: - '@solidjs/router': 0.10.5(solid-js@1.8.8) + '@solidjs/router': 0.10.9(solid-js@1.8.11) '@testing-library/dom': 9.3.3 - solid-js: 1.8.8 + solid-js: 1.8.11 dev: true /@stablelib/aead@1.0.1: @@ -1565,13 +1669,13 @@ packages: use-sync-external-store: 1.2.0(react@18.2.0) dev: false - /@tanstack/solid-store@0.2.1(solid-js@1.8.8): + /@tanstack/solid-store@0.2.1(solid-js@1.8.11): resolution: {integrity: sha512-lyRpOaubr7OY09tlpLGoMi7/dpNal51wbG72X7RIECu1Ocbo7dVyX/JSqqbu2mdO1pg/r0GCjjOQBwd5NWi7PQ==} peerDependencies: solid-js: ^1.6.0 dependencies: '@tanstack/store': 0.1.3 - solid-js: 1.8.8 + solid-js: 1.8.11 dev: false /@tanstack/store@0.1.3: @@ -1682,6 +1786,10 @@ packages: '@babel/types': 7.23.6 dev: true + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true + /@types/json-schema@7.0.15: resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} dev: true @@ -1870,7 +1978,7 @@ packages: - supports-color dev: true - /@vitejs/plugin-vue-jsx@3.1.0(vite@5.0.10)(vue@3.4.4): + /@vitejs/plugin-vue-jsx@3.1.0(vite@5.0.10)(vue@3.4.15): resolution: {integrity: sha512-w9M6F3LSEU5kszVb9An2/MmXNxocAnUb3WhRr8bHlimhDrXNt6n6D2nJQR3UXpGlZHh/EsgouOHCsM8V3Ln+WA==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: @@ -1881,7 +1989,7 @@ packages: '@babel/plugin-transform-typescript': 7.23.6(@babel/core@7.23.7) '@vue/babel-plugin-jsx': 1.1.5(@babel/core@7.23.7) vite: 5.0.10 - vue: 3.4.4(typescript@5.3.3) + vue: 3.4.15(typescript@5.3.3) transitivePeerDependencies: - supports-color dev: true @@ -1897,7 +2005,7 @@ packages: vue: 3.4.3(typescript@5.3.3) dev: true - /@vitejs/plugin-vue@5.0.2(vite@5.0.10)(vue@3.4.4): + /@vitejs/plugin-vue@5.0.2(vite@5.0.10)(vue@3.4.15): resolution: {integrity: sha512-kEjJHrLb5ePBvjD0SPZwJlw1QTRcjjCA9sB5VyfonoXVBxTS7TMnqL6EkLt1Eu61RDeiuZ/WN9Hf6PxXhPI2uA==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: @@ -1905,7 +2013,7 @@ packages: vue: ^3.2.25 dependencies: vite: 5.0.10 - vue: 3.4.4(typescript@5.3.3) + vue: 3.4.15(typescript@5.3.3) dev: true /@vitest/expect@1.1.1: @@ -1988,23 +2096,30 @@ packages: - supports-color dev: true - /@vue/compiler-core@3.4.3: - resolution: {integrity: sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==} + /@vue/compiler-core@3.4.15: + resolution: {integrity: sha512-XcJQVOaxTKCnth1vCxEChteGuwG6wqnUHxAm1DO3gCz0+uXKaJNx8/digSz4dLALCy8n2lKq24jSUs8segoqIw==} dependencies: '@babel/parser': 7.23.6 - '@vue/shared': 3.4.3 + '@vue/shared': 3.4.15 entities: 4.5.0 estree-walker: 2.0.2 source-map-js: 1.0.2 + dev: true - /@vue/compiler-core@3.4.4: - resolution: {integrity: sha512-U5AdCN+6skzh2bSJrkMj2KZsVkUpgK8/XlxjSRYQZhNPcvt9/kmgIMpFEiTyK+Dz5E1J+8o8//BEIX+bakgVSw==} + /@vue/compiler-core@3.4.3: + resolution: {integrity: sha512-u8jzgFg0EDtSrb/hG53Wwh1bAOQFtc1ZCegBpA/glyvTlgHl+tq13o1zvRfLbegYUw/E4mSTGOiCnAJ9SJ+lsg==} dependencies: '@babel/parser': 7.23.6 - '@vue/shared': 3.4.4 + '@vue/shared': 3.4.3 entities: 4.5.0 estree-walker: 2.0.2 source-map-js: 1.0.2 + + /@vue/compiler-dom@3.4.15: + resolution: {integrity: sha512-wox0aasVV74zoXyblarOM3AZQz/Z+OunYcIHe1OsGclCHt8RsRm04DObjefaI82u6XDzv+qGWZ24tIsRAIi5MQ==} + dependencies: + '@vue/compiler-core': 3.4.15 + '@vue/shared': 3.4.15 dev: true /@vue/compiler-dom@3.4.3: @@ -2013,11 +2128,18 @@ packages: '@vue/compiler-core': 3.4.3 '@vue/shared': 3.4.3 - /@vue/compiler-dom@3.4.4: - resolution: {integrity: sha512-iSwkdDULCN+Vr8z6uwdlL044GJ/nUmECxP9vu7MzEs4Qma0FwDLYvnvRcyO0ZITuu3Os4FptGUDnhi1kOLSaGw==} + /@vue/compiler-sfc@3.4.15: + resolution: {integrity: sha512-LCn5M6QpkpFsh3GQvs2mJUOAlBQcCco8D60Bcqmf3O3w5a+KWS5GvYbrrJBkgvL1BDnTp+e8q0lXCLgHhKguBA==} dependencies: - '@vue/compiler-core': 3.4.4 - '@vue/shared': 3.4.4 + '@babel/parser': 7.23.6 + '@vue/compiler-core': 3.4.15 + '@vue/compiler-dom': 3.4.15 + '@vue/compiler-ssr': 3.4.15 + '@vue/shared': 3.4.15 + estree-walker: 2.0.2 + magic-string: 0.30.5 + postcss: 8.4.33 + source-map-js: 1.0.2 dev: true /@vue/compiler-sfc@3.4.3: @@ -2033,18 +2155,11 @@ packages: postcss: 8.4.32 source-map-js: 1.0.2 - /@vue/compiler-sfc@3.4.4: - resolution: {integrity: sha512-OTFcU6vUxUNHBcarzkp4g6d25nvcmDvFDzPRvSrIsByFFPRYN+y3b+j9HxYwt6nlWvGyFCe0roeJdJlfYxbCBg==} + /@vue/compiler-ssr@3.4.15: + resolution: {integrity: sha512-1jdeQyiGznr8gjFDadVmOJqZiLNSsMa5ZgqavkPZ8O2wjHv0tVuAEsw5hTdUoUW4232vpBbL/wJhzVW/JwY1Uw==} dependencies: - '@babel/parser': 7.23.6 - '@vue/compiler-core': 3.4.4 - '@vue/compiler-dom': 3.4.4 - '@vue/compiler-ssr': 3.4.4 - '@vue/shared': 3.4.4 - estree-walker: 2.0.2 - magic-string: 0.30.5 - postcss: 8.4.32 - source-map-js: 1.0.2 + '@vue/compiler-dom': 3.4.15 + '@vue/shared': 3.4.15 dev: true /@vue/compiler-ssr@3.4.3: @@ -2053,13 +2168,6 @@ packages: '@vue/compiler-dom': 3.4.3 '@vue/shared': 3.4.3 - /@vue/compiler-ssr@3.4.4: - resolution: {integrity: sha512-1DU9DflSSQlx/M61GEBN+NbT/anUki2ooDo9IXfTckCeKA/2IKNhY8KbG3x6zkd3KGrxzteC7de6QL88vEb41Q==} - dependencies: - '@vue/compiler-dom': 3.4.4 - '@vue/shared': 3.4.4 - dev: true - /@vue/language-core@1.8.27(typescript@5.3.3): resolution: {integrity: sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==} peerDependencies: @@ -2080,15 +2188,22 @@ packages: vue-template-compiler: 2.7.16 dev: true + /@vue/reactivity@3.4.15: + resolution: {integrity: sha512-55yJh2bsff20K5O84MxSvXKPHHt17I2EomHznvFiJCAZpJTNW8IuLj1xZWMLELRhBK3kkFV/1ErZGHJfah7i7w==} + dependencies: + '@vue/shared': 3.4.15 + dev: true + /@vue/reactivity@3.4.3: resolution: {integrity: sha512-q5f9HLDU+5aBKizXHAx0w4whkIANs1Muiq9R5YXm0HtorSlflqv9u/ohaMxuuhHWCji4xqpQ1eL04WvmAmGnFg==} dependencies: '@vue/shared': 3.4.3 - /@vue/reactivity@3.4.4: - resolution: {integrity: sha512-DFsuJBf6sfhd5SYzJmcBTUG9+EKqjF31Gsk1NJtnpJm9liSZ806XwGJUeNBVQIanax7ODV7Lmk/k17BgxXNuTg==} + /@vue/runtime-core@3.4.15: + resolution: {integrity: sha512-6E3by5m6v1AkW0McCeAyhHTw+3y17YCOKG0U0HDKDscV4Hs0kgNT5G+GCHak16jKgcCDHpI9xe5NKb8sdLCLdw==} dependencies: - '@vue/shared': 3.4.4 + '@vue/reactivity': 3.4.15 + '@vue/shared': 3.4.15 dev: true /@vue/runtime-core@3.4.3: @@ -2097,11 +2212,12 @@ packages: '@vue/reactivity': 3.4.3 '@vue/shared': 3.4.3 - /@vue/runtime-core@3.4.4: - resolution: {integrity: sha512-zWWwNQAj5JdxrmOA1xegJm+c4VtyIbDEKgQjSb4va5v7gGTCh0ZjvLI+htGFdVXaO9bs2J3C81p5p+6jrPK8Bw==} + /@vue/runtime-dom@3.4.15: + resolution: {integrity: sha512-EVW8D6vfFVq3V/yDKNPBFkZKGMFSvZrUQmx196o/v2tHKdwWdiZjYUBS+0Ez3+ohRyF8Njwy/6FH5gYJ75liUw==} dependencies: - '@vue/reactivity': 3.4.4 - '@vue/shared': 3.4.4 + '@vue/runtime-core': 3.4.15 + '@vue/shared': 3.4.15 + csstype: 3.1.3 dev: true /@vue/runtime-dom@3.4.3: @@ -2111,12 +2227,14 @@ packages: '@vue/shared': 3.4.3 csstype: 3.1.3 - /@vue/runtime-dom@3.4.4: - resolution: {integrity: sha512-Nlh2ap1J/eJQ6R0g+AIRyGNwpTJQACN0dk8I8FRLH8Ev11DSvfcPOpn4+Kbg5xAMcuq0cHB8zFYxVrOgETrrvg==} + /@vue/server-renderer@3.4.15(vue@3.4.15): + resolution: {integrity: sha512-3HYzaidu9cHjrT+qGUuDhFYvF/j643bHC6uUN9BgM11DVy+pM6ATsG6uPBLnkwOgs7BpJABReLmpL3ZPAsUaqw==} + peerDependencies: + vue: 3.4.15 dependencies: - '@vue/runtime-core': 3.4.4 - '@vue/shared': 3.4.4 - csstype: 3.1.3 + '@vue/compiler-ssr': 3.4.15 + '@vue/shared': 3.4.15 + vue: 3.4.15(typescript@5.3.3) dev: true /@vue/server-renderer@3.4.3(vue@3.4.3): @@ -2128,24 +2246,14 @@ packages: '@vue/shared': 3.4.3 vue: 3.4.3(typescript@5.3.3) - /@vue/server-renderer@3.4.4(vue@3.4.4): - resolution: {integrity: sha512-+AjoiKcC41k7SMJBYkDO9xs79/Of8DiThS9mH5l2MK+EY0to3psI0k+sElvVqQvsoZTjHMEuMz0AEgvm2T+CwA==} - peerDependencies: - vue: 3.4.4 - dependencies: - '@vue/compiler-ssr': 3.4.4 - '@vue/shared': 3.4.4 - vue: 3.4.4(typescript@5.3.3) + /@vue/shared@3.4.15: + resolution: {integrity: sha512-KzfPTxVaWfB+eGcGdbSf4CWdaXcGDqckoeXUh7SB3fZdEtzPCK2Vq9B/lRRL3yutax/LWITz+SwvgyOxz5V75g==} dev: true /@vue/shared@3.4.3: resolution: {integrity: sha512-rIwlkkP1n4uKrRzivAKPZIEkHiuwY5mmhMJ2nZKCBLz8lTUlE73rQh4n1OnnMurXt1vcUNyH4ZPfdh8QweTjpQ==} - /@vue/shared@3.4.4: - resolution: {integrity: sha512-abSgiVRhfjfl3JALR/cSuBl74hGJ3SePgf1mKzodf1eMWLwHZbfEGxT2cNJSsNiw44jEgrO7bNkhchaWA7RwNw==} - dev: true - - /@vue/test-utils@2.4.3(vue@3.4.4): + /@vue/test-utils@2.4.3(vue@3.4.15): resolution: {integrity: sha512-F4K7mF+ad++VlTrxMJVRnenKSJmO6fkQt2wpRDiKDesQMkfpniGWsqEi/JevxGBo2qEkwwjvTUAoiGJLNx++CA==} peerDependencies: '@vue/server-renderer': ^3.0.1 @@ -2155,7 +2263,7 @@ packages: optional: true dependencies: js-beautify: 1.14.11 - vue: 3.4.4(typescript@5.3.3) + vue: 3.4.15(typescript@5.3.3) vue-component-type-helpers: 1.8.27 dev: true @@ -2693,6 +2801,19 @@ packages: validate-html-nesting: 1.2.2 dev: true + /babel-plugin-jsx-dom-expressions@0.37.13(@babel/core@7.23.7): + resolution: {integrity: sha512-oAEMMIgU0h1DmHn4ZDaBBFc08nsVJciLq9pF7g0ZdpeIDKfY4zXjXr8+/oBjKhXG8nyomhnTodPjeG+/ZXcWXQ==} + peerDependencies: + '@babel/core': ^7.20.12 + dependencies: + '@babel/core': 7.23.7 + '@babel/helper-module-imports': 7.18.6 + '@babel/plugin-syntax-jsx': 7.23.3(@babel/core@7.23.7) + '@babel/types': 7.23.6 + html-entities: 2.3.3 + validate-html-nesting: 1.2.2 + dev: true + /babel-preset-solid@1.8.8(@babel/core@7.23.7): resolution: {integrity: sha512-m+sFxzriUgMiyUPz/oWxU+N6PwY2bVsZVlc4Jxx+5XhDt5lGE/meg+ZL/kLgSAZ75YuU9AJZr444Un1bO0vhJQ==} peerDependencies: @@ -2702,6 +2823,15 @@ packages: babel-plugin-jsx-dom-expressions: 0.37.11(@babel/core@7.23.7) dev: true + /babel-preset-solid@1.8.9(@babel/core@7.23.7): + resolution: {integrity: sha512-1awR1QCoryXtAdnjsrx/eVBTYz+tpHUDOdBXqG9oVV7S0ojf2MV/woR0+8BG+LMXVzIr60oKYzCZ9UZGafxmpg==} + peerDependencies: + '@babel/core': ^7.0.0 + dependencies: + '@babel/core': 7.23.7 + babel-plugin-jsx-dom-expressions: 0.37.13(@babel/core@7.23.7) + dev: true + /balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} dev: true @@ -3170,7 +3300,7 @@ packages: stop-iteration-iterator: 1.0.0 dev: true - /esbuild-plugin-solid@0.5.0(esbuild@0.19.11)(solid-js@1.8.8): + /esbuild-plugin-solid@0.5.0(esbuild@0.19.11)(solid-js@1.8.11): resolution: {integrity: sha512-ITK6n+0ayGFeDVUZWNMxX+vLsasEN1ILrg4pISsNOQ+mq4ljlJJiuXotInd+HE0MzwTcA9wExT1yzDE2hsqPsg==} peerDependencies: esbuild: '>=0.12' @@ -3180,7 +3310,7 @@ packages: '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7) babel-preset-solid: 1.8.8(@babel/core@7.23.7) esbuild: 0.19.11 - solid-js: 1.8.8 + solid-js: 1.8.11 transitivePeerDependencies: - supports-color dev: true @@ -4710,6 +4840,15 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 + /postcss@8.4.33: + resolution: {integrity: sha512-Kkpbhhdjw2qQs2O2DGX+8m5OVqEcbB9HRBvuYM9pgrjEFUg30A9LmXNlTAUj4S9kgtGyrMbTzVjH7E+s5Re2yg==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + /prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -4950,6 +5089,29 @@ packages: fsevents: 2.3.3 dev: true + /rollup@4.9.6: + resolution: {integrity: sha512-05lzkCS2uASX0CiLFybYfVkwNbKZG5NFQ6Go0VWyogFTXXbR039UVsegViTntkk4OglHBdF54ccApXRRuXRbsg==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.9.6 + '@rollup/rollup-android-arm64': 4.9.6 + '@rollup/rollup-darwin-arm64': 4.9.6 + '@rollup/rollup-darwin-x64': 4.9.6 + '@rollup/rollup-linux-arm-gnueabihf': 4.9.6 + '@rollup/rollup-linux-arm64-gnu': 4.9.6 + '@rollup/rollup-linux-arm64-musl': 4.9.6 + '@rollup/rollup-linux-riscv64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-gnu': 4.9.6 + '@rollup/rollup-linux-x64-musl': 4.9.6 + '@rollup/rollup-win32-arm64-msvc': 4.9.6 + '@rollup/rollup-win32-ia32-msvc': 4.9.6 + '@rollup/rollup-win32-x64-msvc': 4.9.6 + fsevents: 2.3.3 + dev: true + /rrweb-cssom@0.6.0: resolution: {integrity: sha512-APM0Gt1KoXBz0iIkkdB/kfvGOwC4UuJFeG/c+yV7wSc7q96cG/kJ0HiYCnzivD9SB53cLV1MlHFNfOuPaadYSw==} dev: true @@ -4996,8 +5158,16 @@ packages: lru-cache: 6.0.0 dev: true - /seroval@1.0.2: - resolution: {integrity: sha512-buswWxRzf65ZGUk8MAf3qVtBJHbe5gq6hZyPeqlJCKEIl/tEhUZze0YJg7vB7tFRGgPeneRaP083OB/vDiYLvA==} + /seroval-plugins@1.0.4(seroval@1.0.4): + resolution: {integrity: sha512-DQ2IK6oQVvy8k+c2V5x5YCtUa/GGGsUwUBNN9UqohrZ0rWdUapBFpNMYP1bCyRHoxOJjdKGl+dieacFIpU/i1A==} + engines: {node: '>=10'} + peerDependencies: + seroval: ^1.0 + dependencies: + seroval: 1.0.4 + + /seroval@1.0.4: + resolution: {integrity: sha512-qQs/N+KfJu83rmszFQaTxcoJoPn6KNUruX4KmnmyD0oZkUoiNvJ1rpdYKDf4YHM05k+HOgCxa3yvf15QbVijGg==} engines: {node: '>=10'} /set-blocking@2.0.0: @@ -5057,13 +5227,14 @@ packages: engines: {node: '>=8'} dev: true - /solid-js@1.8.8: - resolution: {integrity: sha512-9CtL5xWTYX1WWjQKqht3Tl0AJzgz4YWVQk8hoscO9TzRCgzlpAauEOexXa6bPG30W+fWLnFVE7XUiAzQFNeUKw==} + /solid-js@1.8.11: + resolution: {integrity: sha512-WdwmER+TwBJiN4rVQTVBxocg+9pKlOs41KzPYntrC86xO5sek8TzBYozPEZPL1IRWDouf2lMrvSbIs3CanlPvQ==} dependencies: csstype: 3.1.3 - seroval: 1.0.2 + seroval: 1.0.4 + seroval-plugins: 1.0.4(seroval@1.0.4) - /solid-refresh@0.5.3(solid-js@1.8.8): + /solid-refresh@0.5.3(solid-js@1.8.11): resolution: {integrity: sha512-Otg5it5sjOdZbQZJnvo99TEBAr6J7PQ5AubZLNU6szZzg3RQQ5MX04oteBIIGDs0y2Qv8aXKm9e44V8z+UnFdw==} peerDependencies: solid-js: ^1.3 @@ -5071,7 +5242,18 @@ packages: '@babel/generator': 7.23.6 '@babel/helper-module-imports': 7.22.15 '@babel/types': 7.23.6 - solid-js: 1.8.8 + solid-js: 1.8.11 + dev: true + + /solid-refresh@0.6.3(solid-js@1.8.11): + resolution: {integrity: sha512-F3aPsX6hVw9ttm5LYlth8Q15x6MlI/J3Dn+o3EQyRTtTxidepSTwAYdozt01/YA+7ObcciagGEyXIopGZzQtbA==} + peerDependencies: + solid-js: ^1.3 + dependencies: + '@babel/generator': 7.23.6 + '@babel/helper-module-imports': 7.22.15 + '@babel/types': 7.23.6 + solid-js: 1.8.11 dev: true /sonic-boom@2.8.0: @@ -5324,12 +5506,12 @@ packages: /tslib@2.6.2: resolution: {integrity: sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==} - /tsup-preset-solid@2.2.0(esbuild@0.19.11)(solid-js@1.8.8)(tsup@8.0.1): + /tsup-preset-solid@2.2.0(esbuild@0.19.11)(solid-js@1.8.11)(tsup@8.0.1): resolution: {integrity: sha512-sPAzeArmYkVAZNRN+m4tkiojdd0GzW/lCwd4+TQDKMENe8wr2uAuro1s0Z59ASmdBbkXoxLgCiNcuQMyiidMZg==} peerDependencies: tsup: ^8.0.0 dependencies: - esbuild-plugin-solid: 0.5.0(esbuild@0.19.11)(solid-js@1.8.8) + esbuild-plugin-solid: 0.5.0(esbuild@0.19.11)(solid-js@1.8.11) tsup: 8.0.1(typescript@5.3.3) transitivePeerDependencies: - esbuild @@ -5581,7 +5763,7 @@ packages: - terser dev: true - /vite-plugin-solid@2.8.0(solid-js@1.8.8)(vite@5.0.10): + /vite-plugin-solid@2.8.0(solid-js@1.8.11)(vite@5.0.10): resolution: {integrity: sha512-n5FAm7ZmTl94VWUoiJCgG7bouF2NlC9CA1wY/qbVnkFbYDWk++bFWyNoU48aLJ+lMtzNeYzJypJXOHzFKxL9xA==} peerDependencies: solid-js: ^1.7.2 @@ -5592,14 +5774,33 @@ packages: '@types/babel__core': 7.20.5 babel-preset-solid: 1.8.8(@babel/core@7.23.7) merge-anything: 5.1.7 - solid-js: 1.8.8 - solid-refresh: 0.5.3(solid-js@1.8.8) + solid-js: 1.8.11 + solid-refresh: 0.5.3(solid-js@1.8.11) vite: 5.0.10 vitefu: 0.2.5(vite@5.0.10) transitivePeerDependencies: - supports-color dev: true + /vite-plugin-solid@2.8.2(solid-js@1.8.11)(vite@5.0.12): + resolution: {integrity: sha512-HcvMs6DTxBaO4kE3psnirPQBCUUdYeQkCNKuB2TpEkJsxb6BGP6/7qkbbCSMxn25PyNdjvzVi1WXi0ou8KPgHw==} + peerDependencies: + solid-js: ^1.7.2 + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + dependencies: + '@babel/core': 7.23.7 + '@babel/preset-typescript': 7.23.3(@babel/core@7.23.7) + '@types/babel__core': 7.20.5 + babel-preset-solid: 1.8.9(@babel/core@7.23.7) + merge-anything: 5.1.7 + solid-js: 1.8.11 + solid-refresh: 0.6.3(solid-js@1.8.11) + vite: 5.0.12 + vitefu: 0.2.5(vite@5.0.12) + transitivePeerDependencies: + - supports-color + dev: true + /vite@5.0.10: resolution: {integrity: sha512-2P8J7WWgmc355HUMlFrwofacvr98DAjoE52BfdbwQtyLH06XKwaL/FMnmKM2crF0iX4MpmMKoDlNCB1ok7zHCw==} engines: {node: ^18.0.0 || >=20.0.0} @@ -5635,6 +5836,41 @@ packages: fsevents: 2.3.3 dev: true + /vite@5.0.12: + resolution: {integrity: sha512-4hsnEkG3q0N4Tzf1+t6NdN9dg/L3BM+q8SWgbSPnJvrgH2kgdyzfVJwbR1ic69/4uMJJ/3dqDZZE5/WwqW8U1w==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.19.11 + postcss: 8.4.33 + rollup: 4.9.6 + optionalDependencies: + fsevents: 2.3.3 + dev: true + /vitefu@0.2.5(vite@5.0.10): resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} peerDependencies: @@ -5646,6 +5882,17 @@ packages: vite: 5.0.10 dev: true + /vitefu@0.2.5(vite@5.0.12): + resolution: {integrity: sha512-SgHtMLoqaeeGnd2evZ849ZbACbnwQCIwRH57t18FxcXoZop0uQu0uzlIhJBlF/eWVzuce0sHeqPcDo+evVcg8Q==} + peerDependencies: + vite: ^3.0.0 || ^4.0.0 || ^5.0.0 + peerDependenciesMeta: + vite: + optional: true + dependencies: + vite: 5.0.12 + dev: true + /vitest@1.1.1: resolution: {integrity: sha512-Ry2qs4UOu/KjpXVfOCfQkTnwSXYGrqTbBZxw6reIYEFjSy1QUARRg5pxiI5BEXy+kBVntxUYNMlq4Co+2vD3fQ==} engines: {node: ^18.0.0 || >=20.0.0} @@ -5709,7 +5956,7 @@ packages: resolution: {integrity: sha512-0vOfAtI67UjeO1G6UiX5Kd76CqaQ67wrRZiOe7UAb9Jm6GzlUr/fC7CV90XfwapJRjpCMaZFhv1V0ajWRmE9Dg==} dev: true - /vue-demi@0.14.6(vue@3.4.3): + /vue-demi@0.14.6(vue@3.4.15): resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} engines: {node: '>=12'} hasBin: true @@ -5721,10 +5968,10 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.3(typescript@5.3.3) - dev: false + vue: 3.4.15(typescript@5.3.3) + dev: true - /vue-demi@0.14.6(vue@3.4.4): + /vue-demi@0.14.6(vue@3.4.3): resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} engines: {node: '>=12'} hasBin: true @@ -5736,8 +5983,8 @@ packages: '@vue/composition-api': optional: true dependencies: - vue: 3.4.4(typescript@5.3.3) - dev: true + vue: 3.4.3(typescript@5.3.3) + dev: false /vue-template-compiler@2.7.16: resolution: {integrity: sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==} @@ -5758,36 +6005,36 @@ packages: typescript: 5.3.3 dev: true - /vue@3.4.3(typescript@5.3.3): - resolution: {integrity: sha512-GjN+culMAGv/mUbkIv8zMKItno8npcj5gWlXkSxf1SPTQf8eJ4A+YfHIvQFyL1IfuJcMl3soA7SmN1fRxbf/wA==} + /vue@3.4.15(typescript@5.3.3): + resolution: {integrity: sha512-jC0GH4KkWLWJOEQjOpkqU1bQsBwf4R1rsFtw5GQJbjHVKWDzO6P0nWWBTmjp1xSemAioDFj1jdaK1qa3DnMQoQ==} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@vue/compiler-dom': 3.4.3 - '@vue/compiler-sfc': 3.4.3 - '@vue/runtime-dom': 3.4.3 - '@vue/server-renderer': 3.4.3(vue@3.4.3) - '@vue/shared': 3.4.3 + '@vue/compiler-dom': 3.4.15 + '@vue/compiler-sfc': 3.4.15 + '@vue/runtime-dom': 3.4.15 + '@vue/server-renderer': 3.4.15(vue@3.4.15) + '@vue/shared': 3.4.15 typescript: 5.3.3 + dev: true - /vue@3.4.4(typescript@5.3.3): - resolution: {integrity: sha512-suZXgDVT8lRNhKmxdkwOsR0oyUi8is7mtqI18qW97JLoyorEbE9B2Sb4Ws/mR/+0AgA/JUtsv1ytlRSH3/pDIA==} + /vue@3.4.3(typescript@5.3.3): + resolution: {integrity: sha512-GjN+culMAGv/mUbkIv8zMKItno8npcj5gWlXkSxf1SPTQf8eJ4A+YfHIvQFyL1IfuJcMl3soA7SmN1fRxbf/wA==} peerDependencies: typescript: '*' peerDependenciesMeta: typescript: optional: true dependencies: - '@vue/compiler-dom': 3.4.4 - '@vue/compiler-sfc': 3.4.4 - '@vue/runtime-dom': 3.4.4 - '@vue/server-renderer': 3.4.4(vue@3.4.4) - '@vue/shared': 3.4.4 + '@vue/compiler-dom': 3.4.3 + '@vue/compiler-sfc': 3.4.3 + '@vue/runtime-dom': 3.4.3 + '@vue/server-renderer': 3.4.3(vue@3.4.3) + '@vue/shared': 3.4.3 typescript: 5.3.3 - dev: true /w3c-xmlserializer@5.0.0: resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==}